diff --git a/.nfs0000000000442600000007e3 b/.nfs0000000000442600000007e3
new file mode 100755
index 0000000000000000000000000000000000000000..bfec6feaebe0ea98461c0680322a0070a5bc3727
Binary files /dev/null and b/.nfs0000000000442600000007e3 differ
diff --git a/.nfs0000000000442602000007e4 b/.nfs0000000000442602000007e4
new file mode 100755
index 0000000000000000000000000000000000000000..3067bd5474d70681a81d0fb0a4515e5179b14b7c
Binary files /dev/null and b/.nfs0000000000442602000007e4 differ
diff --git a/.nfs00000000004426d600000806 b/.nfs00000000004426d600000806
new file mode 100755
index 0000000000000000000000000000000000000000..986bd9cd6783aa24745537df3536fa580ae0469d
Binary files /dev/null and b/.nfs00000000004426d600000806 differ
diff --git a/.nfs0000000000442714000007e5 b/.nfs0000000000442714000007e5
new file mode 100755
index 0000000000000000000000000000000000000000..6ca9a45207a9fe2783b28f6db4566711d8ba8c10
Binary files /dev/null and b/.nfs0000000000442714000007e5 differ
diff --git a/cvxgen/solver.c b/cvxgen/solver.c
new file mode 100644
index 0000000000000000000000000000000000000000..7ff93b0c4a8ed5235de38041a529fed4956cdbc7
--- /dev/null
+++ b/cvxgen/solver.c
@@ -0,0 +1,692 @@
+/* Produced by CVXGEN, 2016-01-17 08:15:52 -0500.  */
+/* CVXGEN is Copyright (C) 2006-2012 Jacob Mattingley, jem@cvxgen.com. */
+/* The code in this file is Copyright (C) 2006-2012 Jacob Mattingley. */
+/* CVXGEN, or solvers produced by CVXGEN, cannot be used for commercial */
+/* applications without prior written permission from Jacob Mattingley. */
+
+/* Filename: solver.c. */
+/* Description: Main solver file. */
+#include "solver.h"
+double eval_gap(void) {
+  int i;
+  double gap;
+  gap = 0;
+  for (i = 0; i < 0; i++)
+    gap += work.z[i]*work.s[i];
+  return gap;
+}
+void set_defaults(void) {
+  settings.resid_tol = 1e-6;
+  settings.eps = 1e-4;
+  settings.max_iters = 25;
+  settings.refine_steps = 1;
+  settings.s_init = 1;
+  settings.z_init = 1;
+  settings.debug = 0;
+  settings.verbose = 1;
+  settings.verbose_refinement = 0;
+  settings.better_start = 1;
+  settings.kkt_reg = 1e-7;
+}
+void setup_pointers(void) {
+  work.y = work.x + 198;
+  work.s = work.x + 298;
+  work.z = work.x + 298;
+  vars.x_1 = work.x + 98;
+  vars.x_2 = work.x + 99;
+  vars.x_3 = work.x + 100;
+  vars.x_4 = work.x + 101;
+  vars.x_5 = work.x + 102;
+  vars.x_6 = work.x + 103;
+  vars.x_7 = work.x + 104;
+  vars.x_8 = work.x + 105;
+  vars.x_9 = work.x + 106;
+  vars.x_10 = work.x + 107;
+  vars.x_11 = work.x + 108;
+  vars.x_12 = work.x + 109;
+  vars.x_13 = work.x + 110;
+  vars.x_14 = work.x + 111;
+  vars.x_15 = work.x + 112;
+  vars.x_16 = work.x + 113;
+  vars.x_17 = work.x + 114;
+  vars.x_18 = work.x + 115;
+  vars.x_19 = work.x + 116;
+  vars.x_20 = work.x + 117;
+  vars.x_21 = work.x + 118;
+  vars.x_22 = work.x + 119;
+  vars.x_23 = work.x + 120;
+  vars.x_24 = work.x + 121;
+  vars.x_25 = work.x + 122;
+  vars.x_26 = work.x + 123;
+  vars.x_27 = work.x + 124;
+  vars.x_28 = work.x + 125;
+  vars.x_29 = work.x + 126;
+  vars.x_30 = work.x + 127;
+  vars.x_31 = work.x + 128;
+  vars.x_32 = work.x + 129;
+  vars.x_33 = work.x + 130;
+  vars.x_34 = work.x + 131;
+  vars.x_35 = work.x + 132;
+  vars.x_36 = work.x + 133;
+  vars.x_37 = work.x + 134;
+  vars.x_38 = work.x + 135;
+  vars.x_39 = work.x + 136;
+  vars.x_40 = work.x + 137;
+  vars.x_41 = work.x + 138;
+  vars.x_42 = work.x + 139;
+  vars.x_43 = work.x + 140;
+  vars.x_44 = work.x + 141;
+  vars.x_45 = work.x + 142;
+  vars.x_46 = work.x + 143;
+  vars.x_47 = work.x + 144;
+  vars.x_48 = work.x + 145;
+  vars.x_49 = work.x + 146;
+  vars.x_50 = work.x + 147;
+  vars.x_51 = work.x + 148;
+  vars.x_52 = work.x + 149;
+  vars.x_53 = work.x + 150;
+  vars.x_54 = work.x + 151;
+  vars.x_55 = work.x + 152;
+  vars.x_56 = work.x + 153;
+  vars.x_57 = work.x + 154;
+  vars.x_58 = work.x + 155;
+  vars.x_59 = work.x + 156;
+  vars.x_60 = work.x + 157;
+  vars.x_61 = work.x + 158;
+  vars.x_62 = work.x + 159;
+  vars.x_63 = work.x + 160;
+  vars.x_64 = work.x + 161;
+  vars.x_65 = work.x + 162;
+  vars.x_66 = work.x + 163;
+  vars.x_67 = work.x + 164;
+  vars.x_68 = work.x + 165;
+  vars.x_69 = work.x + 166;
+  vars.x_70 = work.x + 167;
+  vars.x_71 = work.x + 168;
+  vars.x_72 = work.x + 169;
+  vars.x_73 = work.x + 170;
+  vars.x_74 = work.x + 171;
+  vars.x_75 = work.x + 172;
+  vars.x_76 = work.x + 173;
+  vars.x_77 = work.x + 174;
+  vars.x_78 = work.x + 175;
+  vars.x_79 = work.x + 176;
+  vars.x_80 = work.x + 177;
+  vars.x_81 = work.x + 178;
+  vars.x_82 = work.x + 179;
+  vars.x_83 = work.x + 180;
+  vars.x_84 = work.x + 181;
+  vars.x_85 = work.x + 182;
+  vars.x_86 = work.x + 183;
+  vars.x_87 = work.x + 184;
+  vars.x_88 = work.x + 185;
+  vars.x_89 = work.x + 186;
+  vars.x_90 = work.x + 187;
+  vars.x_91 = work.x + 188;
+  vars.x_92 = work.x + 189;
+  vars.x_93 = work.x + 190;
+  vars.x_94 = work.x + 191;
+  vars.x_95 = work.x + 192;
+  vars.x_96 = work.x + 193;
+  vars.x_97 = work.x + 194;
+  vars.x_98 = work.x + 195;
+  vars.x_99 = work.x + 196;
+  vars.x_100 = work.x + 197;
+}
+void setup_indexed_params(void) {
+  /* In CVXGEN, you can say */
+  /*   parameters */
+  /*     A[i] (5,3), i=1..4 */
+  /*   end */
+  /* This function sets up A[2] to be a pointer to A_2, which is a length-15 */
+  /* vector of doubles. */
+  /* If you access parameters that you haven't defined in CVXGEN, the result */
+  /* is undefined. */
+  params.traj1[1] = params.traj1_1;
+  params.traj1[2] = params.traj1_2;
+  params.traj1[3] = params.traj1_3;
+  params.traj1[4] = params.traj1_4;
+  params.traj1[5] = params.traj1_5;
+  params.traj1[6] = params.traj1_6;
+  params.traj1[7] = params.traj1_7;
+  params.traj1[8] = params.traj1_8;
+  params.traj1[9] = params.traj1_9;
+  params.traj1[10] = params.traj1_10;
+  params.traj1[11] = params.traj1_11;
+  params.traj1[12] = params.traj1_12;
+  params.traj1[13] = params.traj1_13;
+  params.traj1[14] = params.traj1_14;
+  params.traj1[15] = params.traj1_15;
+  params.traj1[16] = params.traj1_16;
+  params.traj1[17] = params.traj1_17;
+  params.traj1[18] = params.traj1_18;
+  params.traj1[19] = params.traj1_19;
+  params.traj1[20] = params.traj1_20;
+  params.traj1[21] = params.traj1_21;
+  params.traj1[22] = params.traj1_22;
+  params.traj1[23] = params.traj1_23;
+  params.traj1[24] = params.traj1_24;
+  params.traj1[25] = params.traj1_25;
+  params.traj1[26] = params.traj1_26;
+  params.traj1[27] = params.traj1_27;
+  params.traj1[28] = params.traj1_28;
+  params.traj1[29] = params.traj1_29;
+  params.traj1[30] = params.traj1_30;
+  params.traj1[31] = params.traj1_31;
+  params.traj1[32] = params.traj1_32;
+  params.traj1[33] = params.traj1_33;
+  params.traj1[34] = params.traj1_34;
+  params.traj1[35] = params.traj1_35;
+  params.traj1[36] = params.traj1_36;
+  params.traj1[37] = params.traj1_37;
+  params.traj1[38] = params.traj1_38;
+  params.traj1[39] = params.traj1_39;
+  params.traj1[40] = params.traj1_40;
+  params.traj1[41] = params.traj1_41;
+  params.traj1[42] = params.traj1_42;
+  params.traj1[43] = params.traj1_43;
+  params.traj1[44] = params.traj1_44;
+  params.traj1[45] = params.traj1_45;
+  params.traj1[46] = params.traj1_46;
+  params.traj1[47] = params.traj1_47;
+  params.traj1[48] = params.traj1_48;
+  params.traj1[49] = params.traj1_49;
+  params.traj1[50] = params.traj1_50;
+  params.traj1[51] = params.traj1_51;
+  params.traj1[52] = params.traj1_52;
+  params.traj1[53] = params.traj1_53;
+  params.traj1[54] = params.traj1_54;
+  params.traj1[55] = params.traj1_55;
+  params.traj1[56] = params.traj1_56;
+  params.traj1[57] = params.traj1_57;
+  params.traj1[58] = params.traj1_58;
+  params.traj1[59] = params.traj1_59;
+  params.traj1[60] = params.traj1_60;
+  params.traj1[61] = params.traj1_61;
+  params.traj1[62] = params.traj1_62;
+  params.traj1[63] = params.traj1_63;
+  params.traj1[64] = params.traj1_64;
+  params.traj1[65] = params.traj1_65;
+  params.traj1[66] = params.traj1_66;
+  params.traj1[67] = params.traj1_67;
+  params.traj1[68] = params.traj1_68;
+  params.traj1[69] = params.traj1_69;
+  params.traj1[70] = params.traj1_70;
+  params.traj1[71] = params.traj1_71;
+  params.traj1[72] = params.traj1_72;
+  params.traj1[73] = params.traj1_73;
+  params.traj1[74] = params.traj1_74;
+  params.traj1[75] = params.traj1_75;
+  params.traj1[76] = params.traj1_76;
+  params.traj1[77] = params.traj1_77;
+  params.traj1[78] = params.traj1_78;
+  params.traj1[79] = params.traj1_79;
+  params.traj1[80] = params.traj1_80;
+  params.traj1[81] = params.traj1_81;
+  params.traj1[82] = params.traj1_82;
+  params.traj1[83] = params.traj1_83;
+  params.traj1[84] = params.traj1_84;
+  params.traj1[85] = params.traj1_85;
+  params.traj1[86] = params.traj1_86;
+  params.traj1[87] = params.traj1_87;
+  params.traj1[88] = params.traj1_88;
+  params.traj1[89] = params.traj1_89;
+  params.traj1[90] = params.traj1_90;
+  params.traj1[91] = params.traj1_91;
+  params.traj1[92] = params.traj1_92;
+  params.traj1[93] = params.traj1_93;
+  params.traj1[94] = params.traj1_94;
+  params.traj1[95] = params.traj1_95;
+  params.traj1[96] = params.traj1_96;
+  params.traj1[97] = params.traj1_97;
+  params.traj1[98] = params.traj1_98;
+  params.traj1[99] = params.traj1_99;
+  params.traj1[100] = params.traj1_100;
+}
+void setup_indexed_optvars(void) {
+  /* In CVXGEN, you can say */
+  /*   variables */
+  /*     x[i] (5), i=2..4 */
+  /*   end */
+  /* This function sets up x[3] to be a pointer to x_3, which is a length-5 */
+  /* vector of doubles. */
+  /* If you access variables that you haven't defined in CVXGEN, the result */
+  /* is undefined. */
+  vars.x[1] = vars.x_1;
+  vars.x[2] = vars.x_2;
+  vars.x[3] = vars.x_3;
+  vars.x[4] = vars.x_4;
+  vars.x[5] = vars.x_5;
+  vars.x[6] = vars.x_6;
+  vars.x[7] = vars.x_7;
+  vars.x[8] = vars.x_8;
+  vars.x[9] = vars.x_9;
+  vars.x[10] = vars.x_10;
+  vars.x[11] = vars.x_11;
+  vars.x[12] = vars.x_12;
+  vars.x[13] = vars.x_13;
+  vars.x[14] = vars.x_14;
+  vars.x[15] = vars.x_15;
+  vars.x[16] = vars.x_16;
+  vars.x[17] = vars.x_17;
+  vars.x[18] = vars.x_18;
+  vars.x[19] = vars.x_19;
+  vars.x[20] = vars.x_20;
+  vars.x[21] = vars.x_21;
+  vars.x[22] = vars.x_22;
+  vars.x[23] = vars.x_23;
+  vars.x[24] = vars.x_24;
+  vars.x[25] = vars.x_25;
+  vars.x[26] = vars.x_26;
+  vars.x[27] = vars.x_27;
+  vars.x[28] = vars.x_28;
+  vars.x[29] = vars.x_29;
+  vars.x[30] = vars.x_30;
+  vars.x[31] = vars.x_31;
+  vars.x[32] = vars.x_32;
+  vars.x[33] = vars.x_33;
+  vars.x[34] = vars.x_34;
+  vars.x[35] = vars.x_35;
+  vars.x[36] = vars.x_36;
+  vars.x[37] = vars.x_37;
+  vars.x[38] = vars.x_38;
+  vars.x[39] = vars.x_39;
+  vars.x[40] = vars.x_40;
+  vars.x[41] = vars.x_41;
+  vars.x[42] = vars.x_42;
+  vars.x[43] = vars.x_43;
+  vars.x[44] = vars.x_44;
+  vars.x[45] = vars.x_45;
+  vars.x[46] = vars.x_46;
+  vars.x[47] = vars.x_47;
+  vars.x[48] = vars.x_48;
+  vars.x[49] = vars.x_49;
+  vars.x[50] = vars.x_50;
+  vars.x[51] = vars.x_51;
+  vars.x[52] = vars.x_52;
+  vars.x[53] = vars.x_53;
+  vars.x[54] = vars.x_54;
+  vars.x[55] = vars.x_55;
+  vars.x[56] = vars.x_56;
+  vars.x[57] = vars.x_57;
+  vars.x[58] = vars.x_58;
+  vars.x[59] = vars.x_59;
+  vars.x[60] = vars.x_60;
+  vars.x[61] = vars.x_61;
+  vars.x[62] = vars.x_62;
+  vars.x[63] = vars.x_63;
+  vars.x[64] = vars.x_64;
+  vars.x[65] = vars.x_65;
+  vars.x[66] = vars.x_66;
+  vars.x[67] = vars.x_67;
+  vars.x[68] = vars.x_68;
+  vars.x[69] = vars.x_69;
+  vars.x[70] = vars.x_70;
+  vars.x[71] = vars.x_71;
+  vars.x[72] = vars.x_72;
+  vars.x[73] = vars.x_73;
+  vars.x[74] = vars.x_74;
+  vars.x[75] = vars.x_75;
+  vars.x[76] = vars.x_76;
+  vars.x[77] = vars.x_77;
+  vars.x[78] = vars.x_78;
+  vars.x[79] = vars.x_79;
+  vars.x[80] = vars.x_80;
+  vars.x[81] = vars.x_81;
+  vars.x[82] = vars.x_82;
+  vars.x[83] = vars.x_83;
+  vars.x[84] = vars.x_84;
+  vars.x[85] = vars.x_85;
+  vars.x[86] = vars.x_86;
+  vars.x[87] = vars.x_87;
+  vars.x[88] = vars.x_88;
+  vars.x[89] = vars.x_89;
+  vars.x[90] = vars.x_90;
+  vars.x[91] = vars.x_91;
+  vars.x[92] = vars.x_92;
+  vars.x[93] = vars.x_93;
+  vars.x[94] = vars.x_94;
+  vars.x[95] = vars.x_95;
+  vars.x[96] = vars.x_96;
+  vars.x[97] = vars.x_97;
+  vars.x[98] = vars.x_98;
+  vars.x[99] = vars.x_99;
+  vars.x[100] = vars.x_100;
+}
+void setup_indexing(void) {
+  setup_pointers();
+  setup_indexed_params();
+  setup_indexed_optvars();
+}
+void set_start(void) {
+  int i;
+  for (i = 0; i < 198; i++)
+    work.x[i] = 0;
+  for (i = 0; i < 100; i++)
+    work.y[i] = 0;
+  for (i = 0; i < 0; i++)
+    work.s[i] = (work.h[i] > 0) ? work.h[i] : settings.s_init;
+  for (i = 0; i < 0; i++)
+    work.z[i] = settings.z_init;
+}
+double eval_objv(void) {
+  int i;
+  double objv;
+  /* Borrow space in work.rhs. */
+  multbyP(work.rhs, work.x);
+  objv = 0;
+  for (i = 0; i < 198; i++)
+    objv += work.x[i]*work.rhs[i];
+  objv *= 0.5;
+  for (i = 0; i < 198; i++)
+    objv += work.q[i]*work.x[i];
+  objv += work.quad_309377593344[0]+work.quad_170383695872[0]+work.quad_112192413696[0]+work.quad_271369404416[0]+work.quad_974379421696[0]+work.quad_880958541824[0]+work.quad_572094451712[0]+work.quad_789148684288[0]+work.quad_448304680960[0]+work.quad_196635672576[0]+work.quad_489733091328[0]+work.quad_802233995264[0]+work.quad_865562517504[0]+work.quad_910621253632[0]+work.quad_321513025536[0]+work.quad_997344780288[0]+work.quad_448780910592[0]+work.quad_115901485056[0]+work.quad_782888361984[0]+work.quad_609463140352[0]+work.quad_88437858304[0]+work.quad_984663347200[0]+work.quad_230162866176[0]+work.quad_416382242816[0]+work.quad_380873158656[0]+work.quad_556464291840[0]+work.quad_266292043776[0]+work.quad_970572640256[0]+work.quad_39497891840[0]+work.quad_701607514112[0]+work.quad_181586403328[0]+work.quad_260463075328[0]+work.quad_382856859648[0]+work.quad_199224414208[0]+work.quad_511656841216[0]+work.quad_171214155776[0]+work.quad_70639910912[0]+work.quad_463249276928[0]+work.quad_244412502016[0]+work.quad_258282409984[0]+work.quad_321028120576[0]+work.quad_30674518016[0]+work.quad_824505257984[0]+work.quad_484111179776[0]+work.quad_675570683904[0]+work.quad_386911121408[0]+work.quad_932702867456[0]+work.quad_274526810112[0]+work.quad_96616189952[0]+work.quad_711864590336[0]+work.quad_200392192000[0]+work.quad_150270558208[0]+work.quad_598460686336[0]+work.quad_831592636416[0]+work.quad_874189471744[0]+work.quad_632352092160[0]+work.quad_969116119040[0]+work.quad_610911072256[0]+work.quad_606707699712[0]+work.quad_449159319552[0]+work.quad_700922720256[0]+work.quad_911067136000[0]+work.quad_304706789376[0]+work.quad_530900680704[0]+work.quad_307691851776[0]+work.quad_875119529984[0]+work.quad_330167877632[0]+work.quad_106008100864[0]+work.quad_586821791744[0]+work.quad_62270459904[0]+work.quad_705160380416[0]+work.quad_566627430400[0]+work.quad_833211822080[0]+work.quad_28799266816[0]+work.quad_442252132352[0]+work.quad_713742774272[0]+work.quad_447903891456[0]+work.quad_655034785792[0]+work.quad_576686788608[0]+work.quad_288749699072[0]+work.quad_866096066560[0]+work.quad_345799389184[0]+work.quad_335292588032[0]+work.quad_292534816768[0]+work.quad_832380674048[0]+work.quad_934938374144[0]+work.quad_265476059136[0]+work.quad_478224822272[0]+work.quad_901249572864[0]+work.quad_216942473216[0]+work.quad_227493912576[0]+work.quad_458072092672[0]+work.quad_912331198464[0]+work.quad_307004768256[0]+work.quad_284125421568[0]+work.quad_704038281216[0]+work.quad_401987686400[0]+work.quad_592084643840[0]+work.quad_8875266048[0]+work.quad_270270570496[0];
+  return objv;
+}
+void fillrhs_aff(void) {
+  int i;
+  double *r1, *r2, *r3, *r4;
+  r1 = work.rhs;
+  r2 = work.rhs + 198;
+  r3 = work.rhs + 198;
+  r4 = work.rhs + 198;
+  /* r1 = -A^Ty - G^Tz - Px - q. */
+  multbymAT(r1, work.y);
+  multbymGT(work.buffer, work.z);
+  for (i = 0; i < 198; i++)
+    r1[i] += work.buffer[i];
+  multbyP(work.buffer, work.x);
+  for (i = 0; i < 198; i++)
+    r1[i] -= work.buffer[i] + work.q[i];
+  /* r2 = -z. */
+  for (i = 0; i < 0; i++)
+    r2[i] = -work.z[i];
+  /* r3 = -Gx - s + h. */
+  multbymG(r3, work.x);
+  for (i = 0; i < 0; i++)
+    r3[i] += -work.s[i] + work.h[i];
+  /* r4 = -Ax + b. */
+  multbymA(r4, work.x);
+  for (i = 0; i < 100; i++)
+    r4[i] += work.b[i];
+}
+void fillrhs_cc(void) {
+  int i;
+  double *r2;
+  double *ds_aff, *dz_aff;
+  double mu;
+  double alpha;
+  double sigma;
+  double smu;
+  double minval;
+  r2 = work.rhs + 198;
+  ds_aff = work.lhs_aff + 198;
+  dz_aff = work.lhs_aff + 198;
+  mu = 0;
+  for (i = 0; i < 0; i++)
+    mu += work.s[i]*work.z[i];
+  /* Don't finish calculating mu quite yet. */
+  /* Find min(min(ds./s), min(dz./z)). */
+  minval = 0;
+  for (i = 0; i < 0; i++)
+    if (ds_aff[i] < minval*work.s[i])
+      minval = ds_aff[i]/work.s[i];
+  for (i = 0; i < 0; i++)
+    if (dz_aff[i] < minval*work.z[i])
+      minval = dz_aff[i]/work.z[i];
+  /* Find alpha. */
+  if (-1 < minval)
+      alpha = 1;
+  else
+      alpha = -1/minval;
+  sigma = 0;
+  for (i = 0; i < 0; i++)
+    sigma += (work.s[i] + alpha*ds_aff[i])*
+      (work.z[i] + alpha*dz_aff[i]);
+  sigma /= mu;
+  sigma = sigma*sigma*sigma;
+  /* Finish calculating mu now. */
+  smu = sigma*mu;
+  /* Fill-in the rhs. */
+  for (i = 0; i < 198; i++)
+    work.rhs[i] = 0;
+  for (i = 198; i < 298; i++)
+    work.rhs[i] = 0;
+  for (i = 0; i < 0; i++)
+    r2[i] = work.s_inv[i]*(smu - ds_aff[i]*dz_aff[i]);
+}
+void refine(double *target, double *var) {
+  int i, j;
+  double *residual = work.buffer;
+  double norm2;
+  double *new_var = work.buffer2;
+  for (j = 0; j < settings.refine_steps; j++) {
+    norm2 = 0;
+    matrix_multiply(residual, var);
+    for (i = 0; i < 298; i++) {
+      residual[i] = residual[i] - target[i];
+      norm2 += residual[i]*residual[i];
+    }
+#ifndef ZERO_LIBRARY_MODE
+    if (settings.verbose_refinement) {
+      if (j == 0)
+        printf("Initial residual before refinement has norm squared %.6g.\n", norm2);
+      else
+        printf("After refinement we get squared norm %.6g.\n", norm2);
+    }
+#endif
+    /* Solve to find new_var = KKT \ (target - A*var). */
+    ldl_solve(residual, new_var);
+    /* Update var += new_var, or var += KKT \ (target - A*var). */
+    for (i = 0; i < 298; i++) {
+      var[i] -= new_var[i];
+    }
+  }
+#ifndef ZERO_LIBRARY_MODE
+  if (settings.verbose_refinement) {
+    /* Check the residual once more, but only if we're reporting it, since */
+    /* it's expensive. */
+    norm2 = 0;
+    matrix_multiply(residual, var);
+    for (i = 0; i < 298; i++) {
+      residual[i] = residual[i] - target[i];
+      norm2 += residual[i]*residual[i];
+    }
+    if (j == 0)
+      printf("Initial residual before refinement has norm squared %.6g.\n", norm2);
+    else
+      printf("After refinement we get squared norm %.6g.\n", norm2);
+  }
+#endif
+}
+double calc_ineq_resid_squared(void) {
+  /* Calculates the norm ||-Gx - s + h||. */
+  double norm2_squared;
+  int i;
+  /* Find -Gx. */
+  multbymG(work.buffer, work.x);
+  /* Add -s + h. */
+  for (i = 0; i < 0; i++)
+    work.buffer[i] += -work.s[i] + work.h[i];
+  /* Now find the squared norm. */
+  norm2_squared = 0;
+  for (i = 0; i < 0; i++)
+    norm2_squared += work.buffer[i]*work.buffer[i];
+  return norm2_squared;
+}
+double calc_eq_resid_squared(void) {
+  /* Calculates the norm ||-Ax + b||. */
+  double norm2_squared;
+  int i;
+  /* Find -Ax. */
+  multbymA(work.buffer, work.x);
+  /* Add +b. */
+  for (i = 0; i < 100; i++)
+    work.buffer[i] += work.b[i];
+  /* Now find the squared norm. */
+  norm2_squared = 0;
+  for (i = 0; i < 100; i++)
+    norm2_squared += work.buffer[i]*work.buffer[i];
+  return norm2_squared;
+}
+void better_start(void) {
+  /* Calculates a better starting point, using a similar approach to CVXOPT. */
+  /* Not yet speed optimized. */
+  int i;
+  double *x, *s, *z, *y;
+  double alpha;
+  work.block_33[0] = -1;
+  /* Make sure sinvz is 1 to make hijacked KKT system ok. */
+  for (i = 0; i < 0; i++)
+    work.s_inv_z[i] = 1;
+  fill_KKT();
+  ldl_factor();
+  fillrhs_start();
+  /* Borrow work.lhs_aff for the solution. */
+  ldl_solve(work.rhs, work.lhs_aff);
+  /* Don't do any refinement for now. Precision doesn't matter too much. */
+  x = work.lhs_aff;
+  s = work.lhs_aff + 198;
+  z = work.lhs_aff + 198;
+  y = work.lhs_aff + 198;
+  /* Just set x and y as is. */
+  for (i = 0; i < 198; i++)
+    work.x[i] = x[i];
+  for (i = 0; i < 100; i++)
+    work.y[i] = y[i];
+  /* Now complete the initialization. Start with s. */
+  /* Must have alpha > max(z). */
+  alpha = -1e99;
+  for (i = 0; i < 0; i++)
+    if (alpha < z[i])
+      alpha = z[i];
+  if (alpha < 0) {
+    for (i = 0; i < 0; i++)
+      work.s[i] = -z[i];
+  } else {
+    alpha += 1;
+    for (i = 0; i < 0; i++)
+      work.s[i] = -z[i] + alpha;
+  }
+  /* Now initialize z. */
+  /* Now must have alpha > max(-z). */
+  alpha = -1e99;
+  for (i = 0; i < 0; i++)
+    if (alpha < -z[i])
+      alpha = -z[i];
+  if (alpha < 0) {
+    for (i = 0; i < 0; i++)
+      work.z[i] = z[i];
+  } else {
+    alpha += 1;
+    for (i = 0; i < 0; i++)
+      work.z[i] = z[i] + alpha;
+  }
+}
+void fillrhs_start(void) {
+  /* Fill rhs with (-q, 0, h, b). */
+  int i;
+  double *r1, *r2, *r3, *r4;
+  r1 = work.rhs;
+  r2 = work.rhs + 198;
+  r3 = work.rhs + 198;
+  r4 = work.rhs + 198;
+  for (i = 0; i < 198; i++)
+    r1[i] = -work.q[i];
+  for (i = 0; i < 0; i++)
+    r2[i] = 0;
+  for (i = 0; i < 0; i++)
+    r3[i] = work.h[i];
+  for (i = 0; i < 100; i++)
+    r4[i] = work.b[i];
+}
+long solve(void) {
+  int i;
+  int iter;
+  double *dx, *ds, *dy, *dz;
+  double minval;
+  double alpha;
+  work.converged = 0;
+  setup_pointers();
+  pre_ops();
+#ifndef ZERO_LIBRARY_MODE
+  if (0)
+    printf("iter     objv        gap       |Ax-b|    |Gx+s-h|    step\n");
+#endif
+  fillq();
+  fillh();
+  fillb();
+  if (settings.better_start)
+    better_start();
+  else
+    set_start();
+  for (iter = 0; iter < settings.max_iters; iter++) {
+    for (i = 0; i < 0; i++) {
+      work.s_inv[i] = 1.0 / work.s[i];
+      work.s_inv_z[i] = work.s_inv[i]*work.z[i];
+    }
+    work.block_33[0] = 0;
+    fill_KKT();
+    ldl_factor();
+    /* Affine scaling directions. */
+    fillrhs_aff();
+    ldl_solve(work.rhs, work.lhs_aff);
+    refine(work.rhs, work.lhs_aff);
+    /* Centering plus corrector directions. */
+    fillrhs_cc();
+    ldl_solve(work.rhs, work.lhs_cc);
+    refine(work.rhs, work.lhs_cc);
+    /* Add the two together and store in aff. */
+    for (i = 0; i < 298; i++)
+      work.lhs_aff[i] += work.lhs_cc[i];
+    /* Rename aff to reflect its new meaning. */
+    dx = work.lhs_aff;
+    ds = work.lhs_aff + 198;
+    dz = work.lhs_aff + 198;
+    dy = work.lhs_aff + 198;
+    /* Find min(min(ds./s), min(dz./z)). */
+    minval = 0;
+    for (i = 0; i < 0; i++)
+      if (ds[i] < minval*work.s[i])
+        minval = ds[i]/work.s[i];
+    for (i = 0; i < 0; i++)
+      if (dz[i] < minval*work.z[i])
+        minval = dz[i]/work.z[i];
+    /* Find alpha. */
+    if (-0.99 < minval)
+      alpha = 1;
+    else
+      alpha = -0.99/minval;
+    /* Update the primal and dual variables. */
+    for (i = 0; i < 198; i++)
+      work.x[i] += alpha*dx[i];
+    for (i = 0; i < 0; i++)
+      work.s[i] += alpha*ds[i];
+    for (i = 0; i < 0; i++)
+      work.z[i] += alpha*dz[i];
+    for (i = 0; i < 100; i++)
+      work.y[i] += alpha*dy[i];
+    work.gap = eval_gap();
+    work.eq_resid_squared = calc_eq_resid_squared();
+    work.ineq_resid_squared = calc_ineq_resid_squared();
+#ifndef ZERO_LIBRARY_MODE
+    if (0) {
+      work.optval = eval_objv();
+      printf("%3d   %10.3e  %9.2e  %9.2e  %9.2e  % 6.4f\n",
+          iter+1, work.optval, work.gap, sqrt(work.eq_resid_squared),
+          sqrt(work.ineq_resid_squared), alpha);
+    }
+#endif
+    /* Test termination conditions. Requires optimality, and satisfied */
+    /* constraints. */
+    if (   (work.gap < settings.eps)
+        && (work.eq_resid_squared <= settings.resid_tol*settings.resid_tol)
+        && (work.ineq_resid_squared <= settings.resid_tol*settings.resid_tol)
+       ) {
+      work.converged = 1;
+      work.optval = eval_objv();
+      return iter+1;
+    }
+  }
+  return iter;
+}
diff --git a/cvxgen/solver.h b/cvxgen/solver.h
new file mode 100644
index 0000000000000000000000000000000000000000..56b08df97f6adb69d57563020c7357ea567db650
--- /dev/null
+++ b/cvxgen/solver.h
@@ -0,0 +1,540 @@
+/* Produced by CVXGEN, 2016-01-17 08:15:56 -0500.  */
+/* CVXGEN is Copyright (C) 2006-2012 Jacob Mattingley, jem@cvxgen.com. */
+/* The code in this file is Copyright (C) 2006-2012 Jacob Mattingley. */
+/* CVXGEN, or solvers produced by CVXGEN, cannot be used for commercial */
+/* applications without prior written permission from Jacob Mattingley. */
+
+/* Filename: solver.h. */
+/* Description: Header file with relevant definitions. */
+#ifndef SOLVER_H
+#define SOLVER_H
+/* Uncomment the next line to remove all library dependencies. */
+/*#define ZERO_LIBRARY_MODE */
+#ifdef MATLAB_MEX_FILE
+/* Matlab functions. MATLAB_MEX_FILE will be defined by the mex compiler. */
+/* If you are not using the mex compiler, this functionality will not intrude, */
+/* as it will be completely disabled at compile-time. */
+#include "mex.h"
+#else
+#ifndef ZERO_LIBRARY_MODE
+#include <stdio.h>
+#endif
+#endif
+/* Space must be allocated somewhere (testsolver.c, csolve.c or your own */
+/* program) for the global variables vars, params, work and settings. */
+/* At the bottom of this file, they are externed. */
+#ifndef ZERO_LIBRARY_MODE
+#include <math.h>
+#define pm(A, m, n) printmatrix(#A, A, m, n, 1)
+#endif
+
+#include <armadillo>
+using namespace arma;
+typedef struct Params_t {
+  double traj1_1[1];
+  double traj1_2[1];
+  double traj1_3[1];
+  double traj1_4[1];
+  double traj1_5[1];
+  double traj1_6[1];
+  double traj1_7[1];
+  double traj1_8[1];
+  double traj1_9[1];
+  double traj1_10[1];
+  double traj1_11[1];
+  double traj1_12[1];
+  double traj1_13[1];
+  double traj1_14[1];
+  double traj1_15[1];
+  double traj1_16[1];
+  double traj1_17[1];
+  double traj1_18[1];
+  double traj1_19[1];
+  double traj1_20[1];
+  double traj1_21[1];
+  double traj1_22[1];
+  double traj1_23[1];
+  double traj1_24[1];
+  double traj1_25[1];
+  double traj1_26[1];
+  double traj1_27[1];
+  double traj1_28[1];
+  double traj1_29[1];
+  double traj1_30[1];
+  double traj1_31[1];
+  double traj1_32[1];
+  double traj1_33[1];
+  double traj1_34[1];
+  double traj1_35[1];
+  double traj1_36[1];
+  double traj1_37[1];
+  double traj1_38[1];
+  double traj1_39[1];
+  double traj1_40[1];
+  double traj1_41[1];
+  double traj1_42[1];
+  double traj1_43[1];
+  double traj1_44[1];
+  double traj1_45[1];
+  double traj1_46[1];
+  double traj1_47[1];
+  double traj1_48[1];
+  double traj1_49[1];
+  double traj1_50[1];
+  double traj1_51[1];
+  double traj1_52[1];
+  double traj1_53[1];
+  double traj1_54[1];
+  double traj1_55[1];
+  double traj1_56[1];
+  double traj1_57[1];
+  double traj1_58[1];
+  double traj1_59[1];
+  double traj1_60[1];
+  double traj1_61[1];
+  double traj1_62[1];
+  double traj1_63[1];
+  double traj1_64[1];
+  double traj1_65[1];
+  double traj1_66[1];
+  double traj1_67[1];
+  double traj1_68[1];
+  double traj1_69[1];
+  double traj1_70[1];
+  double traj1_71[1];
+  double traj1_72[1];
+  double traj1_73[1];
+  double traj1_74[1];
+  double traj1_75[1];
+  double traj1_76[1];
+  double traj1_77[1];
+  double traj1_78[1];
+  double traj1_79[1];
+  double traj1_80[1];
+  double traj1_81[1];
+  double traj1_82[1];
+  double traj1_83[1];
+  double traj1_84[1];
+  double traj1_85[1];
+  double traj1_86[1];
+  double traj1_87[1];
+  double traj1_88[1];
+  double traj1_89[1];
+  double traj1_90[1];
+  double traj1_91[1];
+  double traj1_92[1];
+  double traj1_93[1];
+  double traj1_94[1];
+  double traj1_95[1];
+  double traj1_96[1];
+  double traj1_97[1];
+  double traj1_98[1];
+  double traj1_99[1];
+  double traj1_100[1];
+  double lambda[1];
+  double traj2_first[1];
+  double traj2_second[1];
+  double *traj1[101];
+} Params;
+typedef struct Vars_t {
+  double *x_1; /* 1 rows. */
+  double *x_2; /* 1 rows. */
+  double *x_3; /* 1 rows. */
+  double *x_4; /* 1 rows. */
+  double *x_5; /* 1 rows. */
+  double *x_6; /* 1 rows. */
+  double *x_7; /* 1 rows. */
+  double *x_8; /* 1 rows. */
+  double *x_9; /* 1 rows. */
+  double *x_10; /* 1 rows. */
+  double *x_11; /* 1 rows. */
+  double *x_12; /* 1 rows. */
+  double *x_13; /* 1 rows. */
+  double *x_14; /* 1 rows. */
+  double *x_15; /* 1 rows. */
+  double *x_16; /* 1 rows. */
+  double *x_17; /* 1 rows. */
+  double *x_18; /* 1 rows. */
+  double *x_19; /* 1 rows. */
+  double *x_20; /* 1 rows. */
+  double *x_21; /* 1 rows. */
+  double *x_22; /* 1 rows. */
+  double *x_23; /* 1 rows. */
+  double *x_24; /* 1 rows. */
+  double *x_25; /* 1 rows. */
+  double *x_26; /* 1 rows. */
+  double *x_27; /* 1 rows. */
+  double *x_28; /* 1 rows. */
+  double *x_29; /* 1 rows. */
+  double *x_30; /* 1 rows. */
+  double *x_31; /* 1 rows. */
+  double *x_32; /* 1 rows. */
+  double *x_33; /* 1 rows. */
+  double *x_34; /* 1 rows. */
+  double *x_35; /* 1 rows. */
+  double *x_36; /* 1 rows. */
+  double *x_37; /* 1 rows. */
+  double *x_38; /* 1 rows. */
+  double *x_39; /* 1 rows. */
+  double *x_40; /* 1 rows. */
+  double *x_41; /* 1 rows. */
+  double *x_42; /* 1 rows. */
+  double *x_43; /* 1 rows. */
+  double *x_44; /* 1 rows. */
+  double *x_45; /* 1 rows. */
+  double *x_46; /* 1 rows. */
+  double *x_47; /* 1 rows. */
+  double *x_48; /* 1 rows. */
+  double *x_49; /* 1 rows. */
+  double *x_50; /* 1 rows. */
+  double *x_51; /* 1 rows. */
+  double *x_52; /* 1 rows. */
+  double *x_53; /* 1 rows. */
+  double *x_54; /* 1 rows. */
+  double *x_55; /* 1 rows. */
+  double *x_56; /* 1 rows. */
+  double *x_57; /* 1 rows. */
+  double *x_58; /* 1 rows. */
+  double *x_59; /* 1 rows. */
+  double *x_60; /* 1 rows. */
+  double *x_61; /* 1 rows. */
+  double *x_62; /* 1 rows. */
+  double *x_63; /* 1 rows. */
+  double *x_64; /* 1 rows. */
+  double *x_65; /* 1 rows. */
+  double *x_66; /* 1 rows. */
+  double *x_67; /* 1 rows. */
+  double *x_68; /* 1 rows. */
+  double *x_69; /* 1 rows. */
+  double *x_70; /* 1 rows. */
+  double *x_71; /* 1 rows. */
+  double *x_72; /* 1 rows. */
+  double *x_73; /* 1 rows. */
+  double *x_74; /* 1 rows. */
+  double *x_75; /* 1 rows. */
+  double *x_76; /* 1 rows. */
+  double *x_77; /* 1 rows. */
+  double *x_78; /* 1 rows. */
+  double *x_79; /* 1 rows. */
+  double *x_80; /* 1 rows. */
+  double *x_81; /* 1 rows. */
+  double *x_82; /* 1 rows. */
+  double *x_83; /* 1 rows. */
+  double *x_84; /* 1 rows. */
+  double *x_85; /* 1 rows. */
+  double *x_86; /* 1 rows. */
+  double *x_87; /* 1 rows. */
+  double *x_88; /* 1 rows. */
+  double *x_89; /* 1 rows. */
+  double *x_90; /* 1 rows. */
+  double *x_91; /* 1 rows. */
+  double *x_92; /* 1 rows. */
+  double *x_93; /* 1 rows. */
+  double *x_94; /* 1 rows. */
+  double *x_95; /* 1 rows. */
+  double *x_96; /* 1 rows. */
+  double *x_97; /* 1 rows. */
+  double *x_98; /* 1 rows. */
+  double *x_99; /* 1 rows. */
+  double *x_100; /* 1 rows. */
+  double *t_01; /* 1 rows. */
+  double *t_02; /* 1 rows. */
+  double *t_03; /* 1 rows. */
+  double *t_04; /* 1 rows. */
+  double *t_05; /* 1 rows. */
+  double *t_06; /* 1 rows. */
+  double *t_07; /* 1 rows. */
+  double *t_08; /* 1 rows. */
+  double *t_09; /* 1 rows. */
+  double *t_10; /* 1 rows. */
+  double *t_11; /* 1 rows. */
+  double *t_12; /* 1 rows. */
+  double *t_13; /* 1 rows. */
+  double *t_14; /* 1 rows. */
+  double *t_15; /* 1 rows. */
+  double *t_16; /* 1 rows. */
+  double *t_17; /* 1 rows. */
+  double *t_18; /* 1 rows. */
+  double *t_19; /* 1 rows. */
+  double *t_20; /* 1 rows. */
+  double *t_21; /* 1 rows. */
+  double *t_22; /* 1 rows. */
+  double *t_23; /* 1 rows. */
+  double *t_24; /* 1 rows. */
+  double *t_25; /* 1 rows. */
+  double *t_26; /* 1 rows. */
+  double *t_27; /* 1 rows. */
+  double *t_28; /* 1 rows. */
+  double *t_29; /* 1 rows. */
+  double *t_30; /* 1 rows. */
+  double *t_31; /* 1 rows. */
+  double *t_32; /* 1 rows. */
+  double *t_33; /* 1 rows. */
+  double *t_34; /* 1 rows. */
+  double *t_35; /* 1 rows. */
+  double *t_36; /* 1 rows. */
+  double *t_37; /* 1 rows. */
+  double *t_38; /* 1 rows. */
+  double *t_39; /* 1 rows. */
+  double *t_40; /* 1 rows. */
+  double *t_41; /* 1 rows. */
+  double *t_42; /* 1 rows. */
+  double *t_43; /* 1 rows. */
+  double *t_44; /* 1 rows. */
+  double *t_45; /* 1 rows. */
+  double *t_46; /* 1 rows. */
+  double *t_47; /* 1 rows. */
+  double *t_48; /* 1 rows. */
+  double *t_49; /* 1 rows. */
+  double *t_50; /* 1 rows. */
+  double *t_51; /* 1 rows. */
+  double *t_52; /* 1 rows. */
+  double *t_53; /* 1 rows. */
+  double *t_54; /* 1 rows. */
+  double *t_55; /* 1 rows. */
+  double *t_56; /* 1 rows. */
+  double *t_57; /* 1 rows. */
+  double *t_58; /* 1 rows. */
+  double *t_59; /* 1 rows. */
+  double *t_60; /* 1 rows. */
+  double *t_61; /* 1 rows. */
+  double *t_62; /* 1 rows. */
+  double *t_63; /* 1 rows. */
+  double *t_64; /* 1 rows. */
+  double *t_65; /* 1 rows. */
+  double *t_66; /* 1 rows. */
+  double *t_67; /* 1 rows. */
+  double *t_68; /* 1 rows. */
+  double *t_69; /* 1 rows. */
+  double *t_70; /* 1 rows. */
+  double *t_71; /* 1 rows. */
+  double *t_72; /* 1 rows. */
+  double *t_73; /* 1 rows. */
+  double *t_74; /* 1 rows. */
+  double *t_75; /* 1 rows. */
+  double *t_76; /* 1 rows. */
+  double *t_77; /* 1 rows. */
+  double *t_78; /* 1 rows. */
+  double *t_79; /* 1 rows. */
+  double *t_80; /* 1 rows. */
+  double *t_81; /* 1 rows. */
+  double *t_82; /* 1 rows. */
+  double *t_83; /* 1 rows. */
+  double *t_84; /* 1 rows. */
+  double *t_85; /* 1 rows. */
+  double *t_86; /* 1 rows. */
+  double *t_87; /* 1 rows. */
+  double *t_88; /* 1 rows. */
+  double *t_89; /* 1 rows. */
+  double *t_90; /* 1 rows. */
+  double *t_91; /* 1 rows. */
+  double *t_92; /* 1 rows. */
+  double *t_93; /* 1 rows. */
+  double *t_94; /* 1 rows. */
+  double *t_95; /* 1 rows. */
+  double *t_96; /* 1 rows. */
+  double *t_97; /* 1 rows. */
+  double *t_98; /* 1 rows. */
+  double *x[101];
+} Vars;
+typedef struct Workspace_t {
+  double *h;
+  double *s_inv;
+  double *s_inv_z;
+  double b[100];
+  double q[198];
+  double rhs[298];
+  double x[298];
+  double *s;
+  double *z;
+  double *y;
+  double lhs_aff[298];
+  double lhs_cc[298];
+  double buffer[298];
+  double buffer2[298];
+  double KKT[593];
+  double L[493];
+  double d[298];
+  double v[298];
+  double d_inv[298];
+  double gap;
+  double optval;
+  double ineq_resid_squared;
+  double eq_resid_squared;
+  double block_33[1];
+  /* Pre-op symbols. */
+  double quad_309377593344[1];
+  double quad_170383695872[1];
+  double quad_112192413696[1];
+  double quad_271369404416[1];
+  double quad_974379421696[1];
+  double quad_880958541824[1];
+  double quad_572094451712[1];
+  double quad_789148684288[1];
+  double quad_448304680960[1];
+  double quad_196635672576[1];
+  double quad_489733091328[1];
+  double quad_802233995264[1];
+  double quad_865562517504[1];
+  double quad_910621253632[1];
+  double quad_321513025536[1];
+  double quad_997344780288[1];
+  double quad_448780910592[1];
+  double quad_115901485056[1];
+  double quad_782888361984[1];
+  double quad_609463140352[1];
+  double quad_88437858304[1];
+  double quad_984663347200[1];
+  double quad_230162866176[1];
+  double quad_416382242816[1];
+  double quad_380873158656[1];
+  double quad_556464291840[1];
+  double quad_266292043776[1];
+  double quad_970572640256[1];
+  double quad_39497891840[1];
+  double quad_701607514112[1];
+  double quad_181586403328[1];
+  double quad_260463075328[1];
+  double quad_382856859648[1];
+  double quad_199224414208[1];
+  double quad_511656841216[1];
+  double quad_171214155776[1];
+  double quad_70639910912[1];
+  double quad_463249276928[1];
+  double quad_244412502016[1];
+  double quad_258282409984[1];
+  double quad_321028120576[1];
+  double quad_30674518016[1];
+  double quad_824505257984[1];
+  double quad_484111179776[1];
+  double quad_675570683904[1];
+  double quad_386911121408[1];
+  double quad_932702867456[1];
+  double quad_274526810112[1];
+  double quad_96616189952[1];
+  double quad_711864590336[1];
+  double quad_200392192000[1];
+  double quad_150270558208[1];
+  double quad_598460686336[1];
+  double quad_831592636416[1];
+  double quad_874189471744[1];
+  double quad_632352092160[1];
+  double quad_969116119040[1];
+  double quad_610911072256[1];
+  double quad_606707699712[1];
+  double quad_449159319552[1];
+  double quad_700922720256[1];
+  double quad_911067136000[1];
+  double quad_304706789376[1];
+  double quad_530900680704[1];
+  double quad_307691851776[1];
+  double quad_875119529984[1];
+  double quad_330167877632[1];
+  double quad_106008100864[1];
+  double quad_586821791744[1];
+  double quad_62270459904[1];
+  double quad_705160380416[1];
+  double quad_566627430400[1];
+  double quad_833211822080[1];
+  double quad_28799266816[1];
+  double quad_442252132352[1];
+  double quad_713742774272[1];
+  double quad_447903891456[1];
+  double quad_655034785792[1];
+  double quad_576686788608[1];
+  double quad_288749699072[1];
+  double quad_866096066560[1];
+  double quad_345799389184[1];
+  double quad_335292588032[1];
+  double quad_292534816768[1];
+  double quad_832380674048[1];
+  double quad_934938374144[1];
+  double quad_265476059136[1];
+  double quad_478224822272[1];
+  double quad_901249572864[1];
+  double quad_216942473216[1];
+  double quad_227493912576[1];
+  double quad_458072092672[1];
+  double quad_912331198464[1];
+  double quad_307004768256[1];
+  double quad_284125421568[1];
+  double quad_704038281216[1];
+  double quad_401987686400[1];
+  double quad_592084643840[1];
+  double quad_8875266048[1];
+  double quad_270270570496[1];
+  int converged;
+} Workspace;
+typedef struct Settings_t {
+  double resid_tol;
+  double eps;
+  int max_iters;
+  int refine_steps;
+  int better_start;
+  /* Better start obviates the need for s_init and z_init. */
+  double s_init;
+  double z_init;
+  int verbose;
+  /* Show extra details of the iterative refinement steps. */
+  int verbose_refinement;
+  int debug;
+  /* For regularization. Minimum value of abs(D_ii) in the kkt D factor. */
+  double kkt_reg;
+} Settings;
+extern Vars vars;
+extern Params params;
+extern Workspace work;
+extern Settings settings;
+/* Function definitions in ldl.c: */
+void ldl_solve(double *target, double *var);
+void ldl_factor(void);
+double check_factorization(void);
+void matrix_multiply(double *result, double *source);
+double check_residual(double *target, double *multiplicand);
+void fill_KKT(void);
+
+/* Function definitions in matrix_support.c: */
+void multbymA(double *lhs, double *rhs);
+void multbymAT(double *lhs, double *rhs);
+void multbymG(double *lhs, double *rhs);
+void multbymGT(double *lhs, double *rhs);
+void multbyP(double *lhs, double *rhs);
+void fillq(void);
+void fillh(void);
+void fillb(void);
+void pre_ops(void);
+
+/* Function definitions in solver.c: */
+double eval_gap(void);
+void set_defaults(void);
+void setup_pointers(void);
+void setup_indexed_params(void);
+void setup_indexed_optvars(void);
+void setup_indexing(void);
+void set_start(void);
+double eval_objv(void);
+void fillrhs_aff(void);
+void fillrhs_cc(void);
+void refine(double *target, double *var);
+double calc_ineq_resid_squared(void);
+double calc_eq_resid_squared(void);
+void better_start(void);
+void fillrhs_start(void);
+long solve(void);
+
+/* Function definitions in testsolver.c: */
+int main(int argc, char **argv);
+void load_default_data(const mat& traj1, const mat& traj2);
+
+/* Function definitions in util.c: */
+void tic(void);
+float toc(void);
+float tocq(void);
+void printmatrix(char *name, double *A, int m, int n, int sparse);
+double unif(double lower, double upper);
+float ran1(long*idum, int reset);
+float randn_internal(long *idum, int reset);
+double randn(void);
+void reset_rand(void);
+
+#endif
diff --git a/plotMat3.cc b/plotMat3.cc
new file mode 100644
index 0000000000000000000000000000000000000000..ca1c5790e70fe066e2019424c1cbd25377df1745
--- /dev/null
+++ b/plotMat3.cc
@@ -0,0 +1,30 @@
+#include "plotMat3.h"
+#include "plotgnu3.h"
+#include <string>
+using namespace std;
+using namespace arma;
+
+
+
+void plotMat3(const arma::mat& traj, const string& labelname) {
+	
+	vector<double> x;
+	for (int i = 0; i < traj.n_rows; ++i) {
+		x.push_back(traj(i,0));
+	}
+	vector<double> y;
+	for (int i = 0; i < traj.n_rows; ++i) {
+		y.push_back(traj(i,1));
+	}
+	
+	vector<double> z;
+	for (int i = 0; i < traj.n_rows; ++i) {
+		z.push_back(traj(i,2));
+	}
+	
+	plotgnu3(x,y,z,labelname);
+	
+
+	
+}
+
diff --git a/plotMat3.h b/plotMat3.h
new file mode 100644
index 0000000000000000000000000000000000000000..2e68a1d6f34a9317213bf59993ef49838b7e9370
--- /dev/null
+++ b/plotMat3.h
@@ -0,0 +1,13 @@
+#include <armadillo>
+#include <vector>
+#include <string>
+using namespace std;
+using namespace arma;
+
+
+#ifndef plotMat3_H
+#define plotMat3_H
+
+
+void plotMat3(const arma::mat& traj, const string& labelname);
+#endif
diff --git a/plotgnu3.cc b/plotgnu3.cc
new file mode 100644
index 0000000000000000000000000000000000000000..dd02c2b4c0f11556c4a9b7a26e69f449e97c5a5d
--- /dev/null
+++ b/plotgnu3.cc
@@ -0,0 +1,33 @@
+#include "plotgnu3.h"
+#include "gnuplot-cpp/gnuplot_i.hpp" //Gnuplot class handles POSIX-Pipe-communikation with Gnuplot
+
+
+using namespace std;
+
+void wait_for_key ()
+{
+#if defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__TOS_WIN__)  // every keypress registered, also arrow keys
+    cout << endl << "Press any key to continue..." << endl;
+
+    FlushConsoleInputBuffer(GetStdHandle(STD_INPUT_HANDLE));
+    _getch();
+#elif defined(unix) || defined(__unix) || defined(__unix__) || defined(__APPLE__)
+    cout << endl << "Press ENTER to continue..." << endl;
+
+    std::cin.clear();
+    std::cin.ignore(std::cin.rdbuf()->in_avail());
+    std::cin.get();
+#endif
+    return;
+}
+
+void plotgnu3(const vector<double>& x, const vector<double>& y, const vector<double>& z, const string& labelname) {
+	static Gnuplot g1("lines");
+	//g1.reset_plot();
+	//g1.unset_grid();
+	
+	
+	g1.plot_xyz(x, y, z,labelname);
+	g1.showonscreen();
+	wait_for_key();
+}
diff --git a/plotgnu3.h b/plotgnu3.h
new file mode 100644
index 0000000000000000000000000000000000000000..af4cb4197d8e606f0f592eafc2d76b93728cf2e2
--- /dev/null
+++ b/plotgnu3.h
@@ -0,0 +1,10 @@
+#include <vector>
+#include <string>
+using namespace std;
+
+#ifndef PLOTGNU3_H
+#define PLOTGNU3_H
+
+
+void plotgnu3(const vector<double>& x, const vector<double>& y, const vector<double>& z, const string& labelname);
+#endif
diff --git a/yMod.txt b/yMod.txt
new file mode 100644
index 0000000000000000000000000000000000000000..01fb0bec3ca8cd5fcca262267bdcebfd4e1ec5a3
--- /dev/null
+++ b/yMod.txt
@@ -0,0 +1,100 @@
+   3.152363611412e+02  -1.918230521602e+02  -1.065352010224e+02
+   3.163109250976e+02  -1.900483623986e+02  -1.070775632292e+02
+   3.173858567719e+02  -1.882732184828e+02  -1.076204422149e+02
+   3.184617857328e+02  -1.864968790468e+02  -1.081648231518e+02
+   3.195395061126e+02  -1.847184635219e+02  -1.087121132816e+02
+   3.206199134857e+02  -1.829370694807e+02  -1.092640669860e+02
+   3.217039753788e+02  -1.811518655388e+02  -1.098226786122e+02
+   3.227927189348e+02  -1.793621592628e+02  -1.103900726086e+02
+   3.238872130167e+02  -1.775674528690e+02  -1.109684163070e+02
+   3.249885397241e+02  -1.757674886213e+02  -1.115598607186e+02
+   3.260977675630e+02  -1.739622725884e+02  -1.121665032848e+02
+   3.272159367499e+02  -1.721520649889e+02  -1.127903637158e+02
+   3.283440553328e+02  -1.703373356642e+02  -1.134333638555e+02
+   3.294830978601e+02  -1.685187154841e+02  -1.140973101717e+02
+   3.306339976305e+02  -1.666969591002e+02  -1.147838715022e+02
+   3.317976371025e+02  -1.648729230796e+02  -1.154945636878e+02
+   3.329748380925e+02  -1.630475421512e+02  -1.162307466995e+02
+   3.341663479044e+02  -1.612218138478e+02  -1.169936572667e+02
+   3.353728383584e+02  -1.593967772390e+02  -1.177844509772e+02
+   3.365949162042e+02  -1.575734851833e+02  -1.186042390519e+02
+   3.378331391440e+02  -1.557529737665e+02  -1.194541059517e+02
+   3.390880341411e+02  -1.539362328383e+02  -1.203351230656e+02
+   3.403601163143e+02  -1.521241806679e+02  -1.212483694124e+02
+   3.416499020476e+02  -1.503176501697e+02  -1.221949506280e+02
+   3.429579070018e+02  -1.485173916489e+02  -1.231760116875e+02
+   3.442846308078e+02  -1.467240766037e+02  -1.241927376371e+02
+   3.456305345911e+02  -1.449383051096e+02  -1.252463344828e+02
+   3.469960121037e+02  -1.431606051322e+02  -1.263379921427e+02
+   3.483813534938e+02  -1.413914256276e+02  -1.274688323914e+02
+   3.497867099191e+02  -1.396311387488e+02  -1.286398448907e+02
+   3.512120604633e+02  -1.378800509510e+02  -1.298518347601e+02
+   3.526571808638e+02  -1.361384049186e+02  -1.311053858316e+02
+   3.541216213551e+02  -1.344063883621e+02  -1.324008347291e+02
+   3.556047001176e+02  -1.326841573469e+02  -1.337382573192e+02
+   3.571055158545e+02  -1.309718671150e+02  -1.351174704950e+02
+   3.586229724114e+02  -1.292697039430e+02  -1.365380464279e+02
+   3.601558025619e+02  -1.275779158056e+02  -1.379993330213e+02
+   3.617025899163e+02  -1.258968391442e+02  -1.395004810926e+02
+   3.632617844422e+02  -1.242269204871e+02  -1.410404890958e+02
+   3.648317101636e+02  -1.225687136151e+02  -1.426182267944e+02
+   3.664106050033e+02  -1.209228880012e+02  -1.442324750490e+02
+   3.679966619192e+02  -1.192901919478e+02  -1.458819442894e+02
+   3.695880643319e+02  -1.176714302968e+02  -1.475652852039e+02
+   3.711830142180e+02  -1.160674360179e+02  -1.492810877438e+02
+   3.727797535828e+02  -1.144790656399e+02  -1.510278843128e+02
+   3.743765747878e+02  -1.129072141495e+02  -1.528041500756e+02
+   3.759718207679e+02  -1.113528374818e+02  -1.546082922802e+02
+   3.775638828823e+02  -1.098169745994e+02  -1.564386256907e+02
+   3.791512002035e+02  -1.083007538916e+02  -1.582933333478e+02
+   3.807322560858e+02  -1.068053715631e+02  -1.601704184762e+02
+   3.823055719401e+02  -1.053320472253e+02  -1.620676508903e+02
+   3.838697113367e+02  -1.038819925057e+02  -1.639825303555e+02
+   3.854232930914e+02  -1.024563682357e+02  -1.659122868121e+02
+   3.869649920440e+02  -1.010562495330e+02  -1.678539004481e+02
+   3.884935396649e+02  -9.968260988370e+01  -1.698041468857e+02
+   3.900077450788e+02  -9.833630997044e+01  -1.717596464146e+02
+   3.915065173472e+02  -9.701809183180e+01  -1.737169183661e+02
+   3.929888807948e+02  -9.572858419495e+01  -1.756724515192e+02
+   3.944539908677e+02  -9.446830737010e+01  -1.776227944101e+02
+   3.959011562639e+02  -9.323767098522e+01  -1.795646378141e+02
+   3.973298609302e+02  -9.203697150681e+01  -1.814948554898e+02
+   3.987397787013e+02  -9.086639309226e+01  -1.834105089478e+02
+   4.001307849034e+02  -8.972601083370e+01  -1.853088434051e+02
+   4.015029517597e+02  -8.861579971838e+01  -1.871872644843e+02
+   4.028565257808e+02  -8.753567932914e+01  -1.890433212958e+02
+   4.041918980998e+02  -8.648559542314e+01  -1.908747166956e+02
+   4.055095786592e+02  -8.546560556717e+01  -1.926793138267e+02
+   4.068101653200e+02  -8.447595144825e+01  -1.944551288562e+02
+   4.080943051532e+02  -8.351711762618e+01  -1.962003194500e+02
+   4.093626508655e+02  -8.258987342310e+01  -1.979131767076e+02
+   4.106158193758e+02  -8.169529193429e+01  -1.995921152088e+02
+   4.118543578090e+02  -8.083473734957e+01  -2.012356525814e+02
+   4.130787187456e+02  -8.000982435178e+01  -2.028423856812e+02
+   4.142892448971e+02  -7.922237787544e+01  -2.044109745872e+02
+   4.154861611450e+02  -7.847442089234e+01  -2.059401281971e+02
+   4.166695668695e+02  -7.776817105083e+01  -2.074285984874e+02
+   4.178394180106e+02  -7.710601692127e+01  -2.088751590056e+02
+   4.189954842950e+02  -7.649047721890e+01  -2.102785606507e+02
+   4.201373183271e+02  -7.592409852034e+01  -2.116374704775e+02
+   4.212642341080e+02  -7.540931346494e+01  -2.129504067747e+02
+   4.223752855395e+02  -7.494829779056e+01  -2.142156809260e+02
+   4.234692411481e+02  -7.454284639903e+01  -2.154313532795e+02
+   4.245445584641e+02  -7.419427300871e+01  -2.165952260197e+02
+   4.255993575267e+02  -7.390333352302e+01  -2.177048759806e+02
+   4.266313883272e+02  -7.367017375573e+01  -2.187577004798e+02
+   4.276379902730e+02  -7.349429905558e+01  -2.197509518723e+02
+   4.286160473368e+02  -7.337455570326e+01  -2.206817633168e+02
+   4.295619427323e+02  -7.330911063479e+01  -2.215471772987e+02
+   4.304715218026e+02  -7.329542737767e+01  -2.223441912889e+02
+   4.313400748232e+02  -7.333025389017e+01  -2.230698185112e+02
+   4.321623276676e+02  -7.340962375020e+01  -2.237211501588e+02
+   4.329324197656e+02  -7.352884580162e+01  -2.242954160567e+02
+   4.336438707026e+02  -7.368248192280e+01  -2.247900283003e+02
+   4.342895594658e+02  -7.386431361043e+01  -2.252025884597e+02
+   4.348617333487e+02  -7.406730338621e+01  -2.255308751806e+02
+   4.353520241127e+02  -7.428355583117e+01  -2.257728356904e+02
+   4.357514582980e+02  -7.450430274481e+01  -2.259265963781e+02
+   4.360504678506e+02  -7.471993105307e+01  -2.259905013836e+02
+   4.362388999991e+02  -7.492003900016e+01  -2.259631799990e+02
+   4.363060300000e+02  -7.509350599999e+01  -2.258436300000e+02
diff --git a/yRes1.txt b/yRes1.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f88f5ce12571dce9e5a93612b710b66c9dc0e6dd
--- /dev/null
+++ b/yRes1.txt
@@ -0,0 +1,501 @@
+   3.189135400000e+02  -1.872815100000e+02  -1.117029900000e+02
+   3.189135400000e+02  -1.872815100000e+02  -1.117029900000e+02
+   3.189135400000e+02  -1.872815100000e+02  -1.117029900000e+02
+   3.190634023728e+02  -1.870987692883e+02  -1.118203956939e+02
+   3.193745946187e+02  -1.866939423348e+02  -1.120460618483e+02
+   3.198059647255e+02  -1.860878900612e+02  -1.123268741796e+02
+   3.203054442717e+02  -1.853210267457e+02  -1.126057948956e+02
+   3.208299441479e+02  -1.844337230274e+02  -1.128408646914e+02
+   3.213526580114e+02  -1.834580297140e+02  -1.130113831855e+02
+   3.218602649503e+02  -1.824170631237e+02  -1.131126628814e+02
+   3.223453393978e+02  -1.813282348414e+02  -1.131455063329e+02
+   3.228035524945e+02  -1.802046760170e+02  -1.131125339168e+02
+   3.232355372530e+02  -1.790545050359e+02  -1.130208727566e+02
+   3.236472743401e+02  -1.778810957418e+02  -1.128830589654e+02
+   3.240480235767e+02  -1.766847646184e+02  -1.127147988063e+02
+   3.244480686349e+02  -1.754643921905e+02  -1.125323640101e+02
+   3.248577137007e+02  -1.742180525273e+02  -1.123513924160e+02
+   3.252872246058e+02  -1.729430110689e+02  -1.121868251295e+02
+   3.257466235205e+02  -1.716360375113e+02  -1.120528049055e+02
+   3.262448636986e+02  -1.702943635553e+02  -1.119619774325e+02
+   3.267890054309e+02  -1.689165750064e+02  -1.119247643029e+02
+   3.273841500076e+02  -1.675026453894e+02  -1.119493464002e+02
+   3.280341104093e+02  -1.660531518555e+02  -1.120423465375e+02
+   3.287422053746e+02  -1.645683807737e+02  -1.122096196311e+02
+   3.295115146613e+02  -1.630481453437e+02  -1.124565082926e+02
+   3.303444241342e+02  -1.614925413771e+02  -1.127874052048e+02
+   3.312420606670e+02  -1.599028090865e+02  -1.132052279350e+02
+   3.322042747304e+02  -1.582813576169e+02  -1.137114748764e+02
+   3.332301628097e+02  -1.566309398085e+02  -1.143068706721e+02
+   3.343187182748e+02  -1.549536006940e+02  -1.149921607199e+02
+   3.354691467969e+02  -1.532502341085e+02  -1.157684453378e+02
+   3.366805598861e+02  -1.515213383336e+02  -1.166366122824e+02
+   3.379513771579e+02  -1.497683258254e+02  -1.175963648335e+02
+   3.392791040225e+02  -1.479940116302e+02  -1.186459103005e+02
+   3.406606363419e+02  -1.462019330604e+02  -1.197825990990e+02
+   3.420927905770e+02  -1.443951205774e+02  -1.210040423121e+02
+   3.435726971352e+02  -1.425751984001e+02  -1.223089319413e+02
+   3.450977256147e+02  -1.407427587258e+02  -1.236966296479e+02
+   3.466649970926e+02  -1.388988944991e+02  -1.251656224199e+02
+   3.482710554067e+02  -1.370462556747e+02  -1.267125007757e+02
+   3.499120187805e+02  -1.351886953551e+02  -1.283324464071e+02
+   3.515840299880e+02  -1.333300402397e+02  -1.300207292840e+02
+   3.532837024870e+02  -1.314728628976e+02  -1.317742396014e+02
+   3.550082016997e+02  -1.296182611080e+02  -1.335916864918e+02
+   3.567547814632e+02  -1.277671365015e+02  -1.354717169457e+02
+   3.585202627933e+02  -1.259216480137e+02  -1.374108143408e+02
+   3.603010163867e+02  -1.240853358137e+02  -1.394031451925e+02
+   3.620933930959e+02  -1.222621124425e+02  -1.414420971675e+02
+   3.638942901413e+02  -1.204549665121e+02  -1.435222836857e+02
+   3.657014481725e+02  -1.186652711649e+02  -1.456406261049e+02
+   3.675130450097e+02  -1.168935474238e+02  -1.477951320287e+02
+   3.693268964131e+02  -1.151410412758e+02  -1.499823741180e+02
+   3.711401681733e+02  -1.134103444959e+02  -1.521965020958e+02
+   3.729498147726e+02  -1.117047079472e+02  -1.544303427121e+02
+   3.747533901988e+02  -1.100268013666e+02  -1.566773631901e+02
+   3.765497278741e+02  -1.083777154853e+02  -1.589332497877e+02
+   3.783386895739e+02  -1.067571901362e+02  -1.611956282561e+02
+   3.801198739310e+02  -1.051651596300e+02  -1.634618076099e+02
+   3.818916958964e+02  -1.036029062869e+02  -1.657271204626e+02
+   3.836517287578e+02  -1.020728353851e+02  -1.679853706024e+02
+   3.853978930437e+02  -1.005775053844e+02  -1.702304982090e+02
+   3.871297922509e+02  -9.911866250661e+01  -1.724583082607e+02
+   3.888490113218e+02  -9.769692959739e+01  -1.746669551578e+02
+   3.905574066848e+02  -9.631254987685e+01  -1.768552518470e+02
+   3.922550249849e+02  -9.496636885831e+01  -1.790205485501e+02
+   3.939398735941e+02  -9.366008330170e+01  -1.811584329849e+02
+   3.956093121943e+02  -9.239604495024e+01  -1.832639205780e+02
+   3.972619695159e+02  -9.117719437063e+01  -1.853329839763e+02
+   3.988989316969e+02  -9.000704617060e+01  -1.873634766924e+02
+   4.005225737433e+02  -8.888913422843e+01  -1.893544628889e+02
+   4.021337988945e+02  -8.782603683415e+01  -1.913044978332e+02
+   4.037308214224e+02  -8.681901612208e+01  -1.932108139094e+02
+   4.053101255282e+02  -8.586864216402e+01  -1.950697097240e+02
+   4.068682243780e+02  -8.497610361506e+01  -1.968771842477e+02
+   4.084031201875e+02  -8.414451726473e+01  -1.986293274451e+02
+   4.099143301118e+02  -8.337856355454e+01  -2.003225612508e+02
+   4.114012369391e+02  -8.268183775910e+01  -2.019539065883e+02
+   4.128617057405e+02  -8.205476053347e+01  -2.035211106539e+02
+   4.142920564647e+02  -8.149494539315e+01  -2.050223260115e+02
+   4.156874042155e+02  -8.099893917552e+01  -2.064551345019e+02
+   4.170415740457e+02  -8.056405655701e+01  -2.078150602462e+02
+   4.183471141280e+02  -8.018911614120e+01  -2.090950463522e+02
+   4.195964288237e+02  -7.987306503602e+01  -2.102877592386e+02
+   4.207832141935e+02  -7.961294534819e+01  -2.113887291238e+02
+   4.219025902781e+02  -7.940339210846e+01  -2.123969295986e+02
+   4.229503018597e+02  -7.923735599418e+01  -2.133134097239e+02
+   4.239221907200e+02  -7.910701512247e+01  -2.141400164135e+02
+   4.248145370011e+02  -7.900457334852e+01  -2.148790424917e+02
+   4.256250631431e+02  -7.892294026658e+01  -2.155336092198e+02
+   4.263538409615e+02  -7.885619442184e+01  -2.161081398289e+02
+   4.270034939672e+02  -7.879972793226e+01  -2.166084280323e+02
+   4.275787202299e+02  -7.875012277884e+01  -2.170412831906e+02
+   4.280855356756e+02  -7.870490557599e+01  -2.174140108400e+02
+   4.285305724660e+02  -7.866229980174e+01  -2.177339483553e+02
+   4.289205647662e+02  -7.862102683448e+01  -2.180081389600e+02
+   4.292620221155e+02  -7.858016217226e+01  -2.182431388578e+02
+   4.295610448279e+02  -7.853903614693e+01  -2.184449228565e+02
+   4.298232340481e+02  -7.849716613743e+01  -2.186188540919e+02
+   4.300536605249e+02  -7.845420986642e+01  -2.187696922387e+02
+   4.302568680156e+02  -7.840993253697e+01  -2.189016232578e+02
+   4.304368961056e+02  -7.836418306815e+01  -2.190183001150e+02
+   4.305973131327e+02  -7.831687640008e+01  -2.191228881133e+02
+   4.307412536285e+02  -7.826797994220e+01  -2.192181111108e+02
+   4.308714569768e+02  -7.821750293058e+01  -2.193062965064e+02
+   4.309903053844e+02  -7.816548789193e+01  -2.193894178425e+02
+   4.310998601021e+02  -7.811200368132e+01  -2.194691344562e+02
+   4.312018953454e+02  -7.805713973091e+01  -2.195468279554e+02
+   4.312979296707e+02  -7.800100125573e+01  -2.196236354972e+02
+   4.313892547487e+02  -7.794370523331e+01  -2.197004799664e+02
+   4.314769615840e+02  -7.788537702105e+01  -2.197780972116e+02
+   4.315619642913e+02  -7.782614750731e+01  -2.198570605321e+02
+   4.316450215744e+02  -7.776615071412e+01  -2.199378026214e+02
+   4.317267560665e+02  -7.770552178586e+01  -2.200206351731e+02
+   4.318076716962e+02  -7.764439530957e+01  -2.201057663507e+02
+   4.318881692424e+02  -7.758290392168e+01  -2.201933163131e+02
+   4.319685602337e+02  -7.752117716258e+01  -2.202833309762e+02
+   4.320490793400e+02  -7.745934054630e+01  -2.203757941784e+02
+   4.321298953957e+02  -7.739751481651e+01  -2.204706384050e+02
+   4.322111211835e+02  -7.733581536425e+01  -2.205677542149e+02
+   4.322928220961e+02  -7.727435178549e+01  -2.206669985003e+02
+   4.323750237877e+02  -7.721322755948e+01  -2.207682016987e+02
+   4.324577189143e+02  -7.715253983113e+01  -2.208711740662e+02
+   4.325408730545e+02  -7.709237928259e+01  -2.209757111129e+02
+   4.326244298954e+02  -7.703283008088e+01  -2.210815982875e+02
+   4.327083157589e+02  -7.697396989015e+01  -2.211886149957e+02
+   4.327924435381e+02  -7.691586993835e+01  -2.212965380244e+02
+   4.328767161072e+02  -7.685859512933e+01  -2.214051444393e+02
+   4.329610292605e+02  -7.680220419245e+01  -2.215142140161e+02
+   4.330452742335e+02  -7.674674986289e+01  -2.216235312596e+02
+   4.331293398518e+02  -7.669227908641e+01  -2.217328870596e+02
+   4.332131143506e+02  -7.663883324332e+01  -2.218420800280e+02
+   4.332964869018e+02  -7.658644838707e+01  -2.219509175561e+02
+   4.333793488842e+02  -7.653515549331e+01  -2.220592166280e+02
+   4.334615949264e+02  -7.648498071598e+01  -2.221668044219e+02
+   4.335431237503e+02  -7.643594564741e+01  -2.222735187271e+02
+   4.336238388411e+02  -7.638806757990e+01  -2.223792082032e+02
+   4.337036489639e+02  -7.634135976638e+01  -2.224837325025e+02
+   4.337824685495e+02  -7.629583167856e+01  -2.225869622776e+02
+   4.338602179642e+02  -7.625148926076e+01  -2.226887790902e+02
+   4.339368236824e+02  -7.620833517824e+01  -2.227890752389e+02
+   4.340122183738e+02  -7.616636905895e+01  -2.228877535179e+02
+   4.340863409190e+02  -7.612558772776e+01  -2.229847269202e+02
+   4.341591363645e+02  -7.608598543264e+01  -2.230799182968e+02
+   4.342305558264e+02  -7.604755406206e+01  -2.231732599795e+02
+   4.343005563525e+02  -7.601028335344e+01  -2.232646933771e+02
+   4.343691007491e+02  -7.597416109225e+01  -2.233541685522e+02
+   4.344361573813e+02  -7.593917330157e+01  -2.234416437840e+02
+   4.345016999499e+02  -7.590530442223e+01  -2.235270851234e+02
+   4.345657072531e+02  -7.587253748333e+01  -2.236104659448e+02
+   4.346281629353e+02  -7.584085426333e+01  -2.236917664985e+02
+   4.346890552278e+02  -7.581023544179e+01  -2.237709734671e+02
+   4.347483766846e+02  -7.578066074199e+01  -2.238480795282e+02
+   4.348061239159e+02  -7.575210906457e+01  -2.239230829280e+02
+   4.348622973231e+02  -7.572455861253e+01  -2.239959870638e+02
+   4.349169008349e+02  -7.569798700775e+01  -2.240668000810e+02
+   4.349699416486e+02  -7.567237139943e+01  -2.241355344836e+02
+   4.350214299768e+02  -7.564768856467e+01  -2.242022067588e+02
+   4.350713788013e+02  -7.562391500158e+01  -2.242668370187e+02
+   4.351198036342e+02  -7.560102701516e+01  -2.243294486569e+02
+   4.351667222884e+02  -7.557900079638e+01  -2.243900680220e+02
+   4.352121546568e+02  -7.555781249466e+01  -2.244487241079e+02
+   4.352561225011e+02  -7.553743828424e+01  -2.245054482599e+02
+   4.352986492507e+02  -7.551785442459e+01  -2.245602738984e+02
+   4.353397598114e+02  -7.549903731535e+01  -2.246132362576e+02
+   4.353794803848e+02  -7.548096354591e+01  -2.246643721407e+02
+   4.354178382969e+02  -7.546360994018e+01  -2.247137196909e+02
+   4.354548618374e+02  -7.544695359663e+01  -2.247613181771e+02
+   4.354905801088e+02  -7.543097192401e+01  -2.248072077942e+02
+   4.355250228850e+02  -7.541564267298e+01  -2.248514294776e+02
+   4.355582204795e+02  -7.540094396398e+01  -2.248940247317e+02
+   4.355902036225e+02  -7.538685431146e+01  -2.249350354709e+02
+   4.356210033474e+02  -7.537335264490e+01  -2.249745038730e+02
+   4.356506508851e+02  -7.536041832671e+01  -2.250124722453e+02
+   4.356791775672e+02  -7.534803116726e+01  -2.250489829010e+02
+   4.357066147367e+02  -7.533617143737e+01  -2.250840780468e+02
+   4.357329936662e+02  -7.532481987831e+01  -2.251177996811e+02
+   4.357583454833e+02  -7.531395770952e+01  -2.251501895009e+02
+   4.357827011030e+02  -7.530356663440e+01  -2.251812888184e+02
+   4.358060911659e+02  -7.529362884415e+01  -2.252111384861e+02
+   4.358285459834e+02  -7.528412701985e+01  -2.252397788295e+02
+   4.358500954877e+02  -7.527504433308e+01  -2.252672495879e+02
+   4.358707691880e+02  -7.526636444503e+01  -2.252935898617e+02
+   4.358905961310e+02  -7.525807150438e+01  -2.253188380663e+02
+   4.359096048666e+02  -7.525015014400e+01  -2.253430318927e+02
+   4.359278234180e+02  -7.524258547662e+01  -2.253662082728e+02
+   4.359452792559e+02  -7.523536308955e+01  -2.253884033507e+02
+   4.359619992763e+02  -7.522846903859e+01  -2.254096524588e+02
+   4.359780097823e+02  -7.522188984124e+01  -2.254299900978e+02
+   4.359933364686e+02  -7.521561246917e+01  -2.254494499219e+02
+   4.360080044100e+02  -7.520962434028e+01  -2.254680647264e+02
+   4.360220380515e+02  -7.520391331011e+01  -2.254858664404e+02
+   4.360354612019e+02  -7.519846766300e+01  -2.255028861211e+02
+   4.360482970294e+02  -7.519327610279e+01  -2.255191539522e+02
+   4.360605680597e+02  -7.518832774326e+01  -2.255346992445e+02
+   4.360722961753e+02  -7.518361209838e+01  -2.255495504389e+02
+   4.360835026177e+02  -7.517911907232e+01  -2.255637351111e+02
+   4.360942079902e+02  -7.517483894941e+01  -2.255772799796e+02
+   4.361044322627e+02  -7.517076238387e+01  -2.255902109136e+02
+   4.361141947779e+02  -7.516688038966e+01  -2.256025529441e+02
+   4.361235142583e+02  -7.516318433013e+01  -2.256143302752e+02
+   4.361324088146e+02  -7.515966590788e+01  -2.256255662974e+02
+   4.361408959546e+02  -7.515631715447e+01  -2.256362836014e+02
+   4.361489925934e+02  -7.515313042032e+01  -2.256465039931e+02
+   4.361567150640e+02  -7.515009836465e+01  -2.256562485095e+02
+   4.361640791286e+02  -7.514721394558e+01  -2.256655374345e+02
+   4.361710999904e+02  -7.514447041027e+01  -2.256743903167e+02
+   4.361777923058e+02  -7.514186128530e+01  -2.256828259860e+02
+   4.361841701969e+02  -7.513938036714e+01  -2.256908625717e+02
+   4.361902472647e+02  -7.513702171281e+01  -2.256985175202e+02
+   4.361960366019e+02  -7.513477963077e+01  -2.257058076138e+02
+   4.362015508061e+02  -7.513264867190e+01  -2.257127489881e+02
+   4.362068019936e+02  -7.513062362075e+01  -2.257193571510e+02
+   4.362118018122e+02  -7.512869948700e+01  -2.257256470010e+02
+   4.362165614554e+02  -7.512687149708e+01  -2.257316328449e+02
+   4.362210916751e+02  -7.512513508601e+01  -2.257373284169e+02
+   4.362254027955e+02  -7.512348588950e+01  -2.257427468955e+02
+   4.362295047259e+02  -7.512191973623e+01  -2.257479009225e+02
+   4.362334069743e+02  -7.512043264031e+01  -2.257528026196e+02
+   4.362371186600e+02  -7.511902079406e+01  -2.257574636064e+02
+   4.362406485268e+02  -7.511768056089e+01  -2.257618950172e+02
+   4.362440049553e+02  -7.511640846849e+01  -2.257661075179e+02
+   4.362471959753e+02  -7.511520120217e+01  -2.257701113222e+02
+   4.362502292785e+02  -7.511405559847e+01  -2.257739162081e+02
+   4.362531122296e+02  -7.511296863890e+01  -2.257775315334e+02
+   4.362558518789e+02  -7.511193744396e+01  -2.257809662512e+02
+   4.362584549730e+02  -7.511095926737e+01  -2.257842289250e+02
+   4.362609279664e+02  -7.511003149039e+01  -2.257873277433e+02
+   4.362632770323e+02  -7.510915161648e+01  -2.257902705336e+02
+   4.362655080732e+02  -7.510831726608e+01  -2.257930647769e+02
+   4.362676267311e+02  -7.510752617154e+01  -2.257957176205e+02
+   4.362696383978e+02  -7.510677617233e+01  -2.257982358918e+02
+   4.362715482246e+02  -7.510606521036e+01  -2.258006261105e+02
+   4.362733611317e+02  -7.510539132547e+01  -2.258028945011e+02
+   4.362750818173e+02  -7.510475265117e+01  -2.258050470048e+02
+   4.362767147668e+02  -7.510414741042e+01  -2.258070892912e+02
+   4.362782642614e+02  -7.510357391171e+01  -2.258090267694e+02
+   4.362797343860e+02  -7.510303054519e+01  -2.258108645988e+02
+   4.362811290380e+02  -7.510251577900e+01  -2.258126076995e+02
+   4.362824519344e+02  -7.510202815572e+01  -2.258142607625e+02
+   4.362837066201e+02  -7.510156628903e+01  -2.258158282594e+02
+   4.362848964744e+02  -7.510112886040e+01  -2.258173144517e+02
+   4.362860247185e+02  -7.510071461603e+01  -2.258187233999e+02
+   4.362870944224e+02  -7.510032236382e+01  -2.258200589722e+02
+   4.362881085109e+02  -7.509995097052e+01  -2.258213248530e+02
+   4.362890697703e+02  -7.509959935900e+01  -2.258225245509e+02
+   4.362899808544e+02  -7.509926650563e+01  -2.258236614062e+02
+   4.362908442904e+02  -7.509895143772e+01  -2.258247385990e+02
+   4.362916624841e+02  -7.509865323118e+01  -2.258257591557e+02
+   4.362924377257e+02  -7.509837100818e+01  -2.258267259562e+02
+   4.362931721950e+02  -7.509810393497e+01  -2.258276417407e+02
+   4.362938679659e+02  -7.509785121974e+01  -2.258285091155e+02
+   4.362945270118e+02  -7.509761211068e+01  -2.258293305599e+02
+   4.362951512097e+02  -7.509738589397e+01  -2.258301084313e+02
+   4.362957423449e+02  -7.509717189203e+01  -2.258308449710e+02
+   4.362963021148e+02  -7.509696946170e+01  -2.258315423100e+02
+   4.362968321336e+02  -7.509677799262e+01  -2.258322024735e+02
+   4.362973339355e+02  -7.509659690557e+01  -2.258328273863e+02
+   4.362978089789e+02  -7.509642565104e+01  -2.258334188774e+02
+   4.362982586497e+02  -7.509626370766e+01  -2.258339786843e+02
+   4.362986842647e+02  -7.509611058092e+01  -2.258345084576e+02
+   4.362990870750e+02  -7.509596580176e+01  -2.258350097651e+02
+   4.362994682689e+02  -7.509582892536e+01  -2.258354840955e+02
+   4.362998289751e+02  -7.509569952994e+01  -2.258359328624e+02
+   4.363001702656e+02  -7.509557721557e+01  -2.258363574080e+02
+   4.363004931579e+02  -7.509546160313e+01  -2.258367590063e+02
+   4.363007986184e+02  -7.509535233323e+01  -2.258371388665e+02
+   4.363010875642e+02  -7.509524906522e+01  -2.258374981362e+02
+   4.363013608658e+02  -7.509515147629e+01  -2.258378379043e+02
+   4.363016193493e+02  -7.509505926052e+01  -2.258381592040e+02
+   4.363018637985e+02  -7.509497212804e+01  -2.258384630153e+02
+   4.363020949573e+02  -7.509488980425e+01  -2.258387502681e+02
+   4.363023135311e+02  -7.509481202898e+01  -2.258390218439e+02
+   4.363025201891e+02  -7.509473855581e+01  -2.258392785791e+02
+   4.363027155660e+02  -7.509466915134e+01  -2.258395212663e+02
+   4.363029002637e+02  -7.509460359453e+01  -2.258397506575e+02
+   4.363030748529e+02  -7.509454167606e+01  -2.258399674651e+02
+   4.363032398746e+02  -7.509448319774e+01  -2.258401723647e+02
+   4.363033958417e+02  -7.509442797194e+01  -2.258403659964e+02
+   4.363035432405e+02  -7.509437582101e+01  -2.258405489669e+02
+   4.363036825316e+02  -7.509432657679e+01  -2.258407218512e+02
+   4.363038141517e+02  -7.509428008014e+01  -2.258408851940e+02
+   4.363039385147e+02  -7.509423618041e+01  -2.258410395113e+02
+   4.363040560124e+02  -7.509419473505e+01  -2.258411852918e+02
+   4.363041670163e+02  -7.509415560918e+01  -2.258413229988e+02
+   4.363042718783e+02  -7.509411867516e+01  -2.258414530705e+02
+   4.363043709314e+02  -7.509408381223e+01  -2.258415759224e+02
+   4.363044644913e+02  -7.509405090617e+01  -2.258416919476e+02
+   4.363045528569e+02  -7.509401984891e+01  -2.258418015184e+02
+   4.363046363110e+02  -7.509399053824e+01  -2.258419049874e+02
+   4.363047151216e+02  -7.509396287749e+01  -2.258420026881e+02
+   4.363047895424e+02  -7.509393677524e+01  -2.258420949363e+02
+   4.363048598135e+02  -7.509391214503e+01  -2.258421820311e+02
+   4.363049261620e+02  -7.509388890513e+01  -2.258422642553e+02
+   4.363049888032e+02  -7.509386697823e+01  -2.258423418765e+02
+   4.363050479404e+02  -7.509384629126e+01  -2.258424151480e+02
+   4.363051037665e+02  -7.509382677515e+01  -2.258424843096e+02
+   4.363051564635e+02  -7.509380836459e+01  -2.258425495878e+02
+   4.363052062040e+02  -7.509379099787e+01  -2.258426111972e+02
+   4.363052531511e+02  -7.509377461664e+01  -2.258426693406e+02
+   4.363052974590e+02  -7.509375916578e+01  -2.258427242099e+02
+   4.363053392738e+02  -7.509374459318e+01  -2.258427759865e+02
+   4.363053787334e+02  -7.509373084961e+01  -2.258428248420e+02
+   4.363054159684e+02  -7.509371788857e+01  -2.258428709386e+02
+   4.363054511023e+02  -7.509370566609e+01  -2.258429144299e+02
+   4.363054842517e+02  -7.509369414065e+01  -2.258429554607e+02
+   4.363055155271e+02  -7.509368327303e+01  -2.258429941682e+02
+   4.363055450329e+02  -7.509367302619e+01  -2.258430306820e+02
+   4.363055728675e+02  -7.509366336511e+01  -2.258430651246e+02
+   4.363055991244e+02  -7.509365425674e+01  -2.258430976118e+02
+   4.363056238915e+02  -7.509364566988e+01  -2.258431282530e+02
+   4.363056472523e+02  -7.509363757503e+01  -2.258431571517e+02
+   4.363056692854e+02  -7.509362994435e+01  -2.258431844054e+02
+   4.363056900652e+02  -7.509362275156e+01  -2.258432101067e+02
+   4.363057096620e+02  -7.509361597184e+01  -2.258432343426e+02
+   4.363057281422e+02  -7.509360958175e+01  -2.258432571957e+02
+   4.363057455686e+02  -7.509360355917e+01  -2.258432787437e+02
+   4.363057620005e+02  -7.509359788321e+01  -2.258432990602e+02
+   4.363057774938e+02  -7.509359253415e+01  -2.258433182146e+02
+   4.363057921015e+02  -7.509358749340e+01  -2.258433362726e+02
+   4.363058058734e+02  -7.509358274338e+01  -2.258433532961e+02
+   4.363058188569e+02  -7.509357826752e+01  -2.258433693436e+02
+   4.363058310964e+02  -7.509357405017e+01  -2.258433844703e+02
+   4.363058426341e+02  -7.509357007657e+01  -2.258433987286e+02
+   4.363058535096e+02  -7.509356633279e+01  -2.258434121675e+02
+   4.363058637606e+02  -7.509356280567e+01  -2.258434248335e+02
+   4.363058734224e+02  -7.509355948283e+01  -2.258434367707e+02
+   4.363058825285e+02  -7.509355635255e+01  -2.258434480205e+02
+   4.363058911105e+02  -7.509355340380e+01  -2.258434586219e+02
+   4.363058991981e+02  -7.509355062615e+01  -2.258434686119e+02
+   4.363059068195e+02  -7.509354800979e+01  -2.258434780253e+02
+   4.363059140013e+02  -7.509354554545e+01  -2.258434868951e+02
+   4.363059207686e+02  -7.509354322439e+01  -2.258434952522e+02
+   4.363059271449e+02  -7.509354103835e+01  -2.258435031260e+02
+   4.363059331526e+02  -7.509353897957e+01  -2.258435105441e+02
+   4.363059388129e+02  -7.509353704071e+01  -2.258435175327e+02
+   4.363059441454e+02  -7.509353521485e+01  -2.258435241162e+02
+   4.363059491691e+02  -7.509353349548e+01  -2.258435303179e+02
+   4.363059539016e+02  -7.509353187644e+01  -2.258435361597e+02
+   4.363059583596e+02  -7.509353035194e+01  -2.258435416624e+02
+   4.363059625588e+02  -7.509352891650e+01  -2.258435468452e+02
+   4.363059665142e+02  -7.509352756498e+01  -2.258435517268e+02
+   4.363059702397e+02  -7.509352629251e+01  -2.258435563243e+02
+   4.363059737485e+02  -7.509352509452e+01  -2.258435606542e+02
+   4.363059770532e+02  -7.509352396668e+01  -2.258435647318e+02
+   4.363059801654e+02  -7.509352290492e+01  -2.258435685718e+02
+   4.363059830963e+02  -7.509352190542e+01  -2.258435721878e+02
+   4.363059858563e+02  -7.509352096454e+01  -2.258435755928e+02
+   4.363059884553e+02  -7.509352007889e+01  -2.258435787989e+02
+   4.363059909026e+02  -7.509351924525e+01  -2.258435818177e+02
+   4.363059932070e+02  -7.509351846058e+01  -2.258435846599e+02
+   4.363059953767e+02  -7.509351772205e+01  -2.258435873359e+02
+   4.363059974195e+02  -7.509351702696e+01  -2.258435898553e+02
+   4.363059993427e+02  -7.509351637278e+01  -2.258435922271e+02
+   4.363060011534e+02  -7.509351575712e+01  -2.258435944599e+02
+   4.363060028580e+02  -7.509351517773e+01  -2.258435965618e+02
+   4.363060044627e+02  -7.509351463249e+01  -2.258435985403e+02
+   4.363060059733e+02  -7.509351411941e+01  -2.258436004027e+02
+   4.363060073952e+02  -7.509351363660e+01  -2.258436021558e+02
+   4.363060087336e+02  -7.509351318230e+01  -2.258436038058e+02
+   4.363060099935e+02  -7.509351275483e+01  -2.258436053587e+02
+   4.363060111792e+02  -7.509351235263e+01  -2.258436068203e+02
+   4.363060122952e+02  -7.509351197420e+01  -2.258436081959e+02
+   4.363060133456e+02  -7.509351161816e+01  -2.258436094904e+02
+   4.363060143341e+02  -7.509351128319e+01  -2.258436107087e+02
+   4.363060152644e+02  -7.509351096806e+01  -2.258436118551e+02
+   4.363060161398e+02  -7.509351067159e+01  -2.258436129339e+02
+   4.363060169636e+02  -7.509351039270e+01  -2.258436139491e+02
+   4.363060177389e+02  -7.509351013035e+01  -2.258436149043e+02
+   4.363060184683e+02  -7.509350988356e+01  -2.258436158030e+02
+   4.363060191547e+02  -7.509350965142e+01  -2.258436166486e+02
+   4.363060198005e+02  -7.509350943306e+01  -2.258436174442e+02
+   4.363060204081e+02  -7.509350922768e+01  -2.258436181928e+02
+   4.363060209798e+02  -7.509350903450e+01  -2.258436188970e+02
+   4.363060215176e+02  -7.509350885281e+01  -2.258436195595e+02
+   4.363060220236e+02  -7.509350868193e+01  -2.258436201828e+02
+   4.363060224997e+02  -7.509350852122e+01  -2.258436207690e+02
+   4.363060229475e+02  -7.509350837008e+01  -2.258436213206e+02
+   4.363060233687e+02  -7.509350822795e+01  -2.258436218394e+02
+   4.363060237650e+02  -7.509350809428e+01  -2.258436223273e+02
+   4.363060241377e+02  -7.509350796859e+01  -2.258436227863e+02
+   4.363060244883e+02  -7.509350785039e+01  -2.258436232181e+02
+   4.363060248181e+02  -7.509350773925e+01  -2.258436236241e+02
+   4.363060251283e+02  -7.509350763474e+01  -2.258436240060e+02
+   4.363060254200e+02  -7.509350753647e+01  -2.258436243652e+02
+   4.363060256944e+02  -7.509350744408e+01  -2.258436247030e+02
+   4.363060259524e+02  -7.509350735721e+01  -2.258436250206e+02
+   4.363060261951e+02  -7.509350727553e+01  -2.258436253194e+02
+   4.363060264233e+02  -7.509350719874e+01  -2.258436256003e+02
+   4.363060266379e+02  -7.509350712655e+01  -2.258436258644e+02
+   4.363060268398e+02  -7.509350705868e+01  -2.258436261128e+02
+   4.363060270295e+02  -7.509350699487e+01  -2.258436263464e+02
+   4.363060272080e+02  -7.509350693489e+01  -2.258436265660e+02
+   4.363060273758e+02  -7.509350687851e+01  -2.258436267725e+02
+   4.363060275336e+02  -7.509350682550e+01  -2.258436269667e+02
+   4.363060276819e+02  -7.509350677568e+01  -2.258436271492e+02
+   4.363060278214e+02  -7.509350672884e+01  -2.258436273209e+02
+   4.363060279525e+02  -7.509350668482e+01  -2.258436274822e+02
+   4.363060280758e+02  -7.509350664345e+01  -2.258436276339e+02
+   4.363060281917e+02  -7.509350660456e+01  -2.258436277765e+02
+   4.363060283007e+02  -7.509350656800e+01  -2.258436279106e+02
+   4.363060284031e+02  -7.509350653365e+01  -2.258436280366e+02
+   4.363060284994e+02  -7.509350650136e+01  -2.258436281551e+02
+   4.363060285899e+02  -7.509350647102e+01  -2.258436282664e+02
+   4.363060286750e+02  -7.509350644250e+01  -2.258436283711e+02
+   4.363060287550e+02  -7.509350641570e+01  -2.258436284695e+02
+   4.363060288302e+02  -7.509350639051e+01  -2.258436285620e+02
+   4.363060289009e+02  -7.509350636685e+01  -2.258436286489e+02
+   4.363060289673e+02  -7.509350634461e+01  -2.258436287306e+02
+   4.363060290297e+02  -7.509350632371e+01  -2.258436288074e+02
+   4.363060290884e+02  -7.509350630407e+01  -2.258436288795e+02
+   4.363060291435e+02  -7.509350628562e+01  -2.258436289474e+02
+   4.363060291954e+02  -7.509350626828e+01  -2.258436290111e+02
+   4.363060292441e+02  -7.509350625199e+01  -2.258436290710e+02
+   4.363060292899e+02  -7.509350623668e+01  -2.258436291273e+02
+   4.363060293329e+02  -7.509350622230e+01  -2.258436291802e+02
+   4.363060293733e+02  -7.509350620879e+01  -2.258436292299e+02
+   4.363060294113e+02  -7.509350619609e+01  -2.258436292766e+02
+   4.363060294470e+02  -7.509350618417e+01  -2.258436293205e+02
+   4.363060294805e+02  -7.509350617296e+01  -2.258436293617e+02
+   4.363060295121e+02  -7.509350616244e+01  -2.258436294005e+02
+   4.363060295417e+02  -7.509350615255e+01  -2.258436294369e+02
+   4.363060295695e+02  -7.509350614326e+01  -2.258436294711e+02
+   4.363060295956e+02  -7.509350613453e+01  -2.258436295032e+02
+   4.363060296202e+02  -7.509350612633e+01  -2.258436295334e+02
+   4.363060296433e+02  -7.509350611863e+01  -2.258436295618e+02
+   4.363060296650e+02  -7.509350611140e+01  -2.258436295884e+02
+   4.363060296854e+02  -7.509350610461e+01  -2.258436296135e+02
+   4.363060297045e+02  -7.509350609822e+01  -2.258436296370e+02
+   4.363060297225e+02  -7.509350609223e+01  -2.258436296591e+02
+   4.363060297394e+02  -7.509350608660e+01  -2.258436296799e+02
+   4.363060297552e+02  -7.509350608131e+01  -2.258436296994e+02
+   4.363060297701e+02  -7.509350607635e+01  -2.258436297177e+02
+   4.363060297841e+02  -7.509350607168e+01  -2.258436297349e+02
+   4.363060297973e+02  -7.509350606730e+01  -2.258436297511e+02
+   4.363060298097e+02  -7.509350606319e+01  -2.258436297662e+02
+   4.363060298213e+02  -7.509350605932e+01  -2.258436297805e+02
+   4.363060298322e+02  -7.509350605569e+01  -2.258436297939e+02
+   4.363060298424e+02  -7.509350605229e+01  -2.258436298065e+02
+   4.363060298520e+02  -7.509350604909e+01  -2.258436298183e+02
+   4.363060298611e+02  -7.509350604608e+01  -2.258436298294e+02
+   4.363060298695e+02  -7.509350604326e+01  -2.258436298398e+02
+   4.363060298775e+02  -7.509350604061e+01  -2.258436298496e+02
+   4.363060298850e+02  -7.509350603812e+01  -2.258436298588e+02
+   4.363060298920e+02  -7.509350603579e+01  -2.258436298674e+02
+   4.363060298986e+02  -7.509350603359e+01  -2.258436298755e+02
+   4.363060299048e+02  -7.509350603153e+01  -2.258436298831e+02
+   4.363060299106e+02  -7.509350602960e+01  -2.258436298903e+02
+   4.363060299161e+02  -7.509350602778e+01  -2.258436298970e+02
+   4.363060299212e+02  -7.509350602608e+01  -2.258436299033e+02
+   4.363060299261e+02  -7.509350602448e+01  -2.258436299092e+02
+   4.363060299306e+02  -7.509350602297e+01  -2.258436299148e+02
+   4.363060299348e+02  -7.509350602156e+01  -2.258436299200e+02
+   4.363060299388e+02  -7.509350602024e+01  -2.258436299249e+02
+   4.363060299426e+02  -7.509350601899e+01  -2.258436299295e+02
+   4.363060299461e+02  -7.509350601783e+01  -2.258436299338e+02
+   4.363060299494e+02  -7.509350601673e+01  -2.258436299379e+02
+   4.363060299525e+02  -7.509350601570e+01  -2.258436299417e+02
+   4.363060299554e+02  -7.509350601473e+01  -2.258436299453e+02
+   4.363060299581e+02  -7.509350601383e+01  -2.258436299486e+02
+   4.363060299607e+02  -7.509350601298e+01  -2.258436299518e+02
+   4.363060299631e+02  -7.509350601218e+01  -2.258436299548e+02
+   4.363060299654e+02  -7.509350601143e+01  -2.258436299575e+02
+   4.363060299675e+02  -7.509350601072e+01  -2.258436299601e+02
+   4.363060299695e+02  -7.509350601006e+01  -2.258436299626e+02
+   4.363060299714e+02  -7.509350600944e+01  -2.258436299649e+02
+   4.363060299731e+02  -7.509350600886e+01  -2.258436299670e+02
+   4.363060299748e+02  -7.509350600831e+01  -2.258436299691e+02
+   4.363060299763e+02  -7.509350600780e+01  -2.258436299710e+02
+   4.363060299778e+02  -7.509350600732e+01  -2.258436299728e+02
+   4.363060299792e+02  -7.509350600687e+01  -2.258436299744e+02
+   4.363060299804e+02  -7.509350600644e+01  -2.258436299760e+02
+   4.363060299816e+02  -7.509350600604e+01  -2.258436299775e+02
+   4.363060299828e+02  -7.509350600567e+01  -2.258436299789e+02
+   4.363060299838e+02  -7.509350600532e+01  -2.258436299802e+02
+   4.363060299848e+02  -7.509350600499e+01  -2.258436299814e+02
+   4.363060299858e+02  -7.509350600468e+01  -2.258436299825e+02
+   4.363060299866e+02  -7.509350600439e+01  -2.258436299836e+02
+   4.363060299875e+02  -7.509350600412e+01  -2.258436299846e+02
+   4.363060299882e+02  -7.509350600387e+01  -2.258436299856e+02
+   4.363060299890e+02  -7.509350600363e+01  -2.258436299865e+02
+   4.363060299896e+02  -7.509350600340e+01  -2.258436299873e+02
+   4.363060299903e+02  -7.509350600319e+01  -2.258436299881e+02
+   4.363060299909e+02  -7.509350600299e+01  -2.258436299888e+02
+   4.363060299914e+02  -7.509350600281e+01  -2.258436299895e+02
+   4.363060299920e+02  -7.509350600263e+01  -2.258436299901e+02
+   4.363060299925e+02  -7.509350600247e+01  -2.258436299908e+02
+   4.363060299929e+02  -7.509350600232e+01  -2.258436299913e+02
+   4.363060299934e+02  -7.509350600217e+01  -2.258436299919e+02
+   4.363060299938e+02  -7.509350600204e+01  -2.258436299924e+02
+   4.363060299941e+02  -7.509350600191e+01  -2.258436299928e+02
+   4.363060299945e+02  -7.509350600179e+01  -2.258436299933e+02
+   4.363060299948e+02  -7.509350600168e+01  -2.258436299937e+02
+   4.363060299952e+02  -7.509350600158e+01  -2.258436299941e+02
+   4.363060299955e+02  -7.509350600148e+01  -2.258436299944e+02
+   4.363060299957e+02  -7.509350600139e+01  -2.258436299948e+02
+   4.363060299960e+02  -7.509350600130e+01  -2.258436299951e+02
+   4.363060299962e+02  -7.509350600122e+01  -2.258436299954e+02
+   4.363060299965e+02  -7.509350600114e+01  -2.258436299957e+02
+   4.363060299967e+02  -7.509350600107e+01  -2.258436299960e+02
+   4.363060299969e+02  -7.509350600100e+01  -2.258436299962e+02
+   4.363060299971e+02  -7.509350600094e+01  -2.258436299964e+02