diff --git a/src/cmdstan/command.hpp b/src/cmdstan/command.hpp index acc659cba0..bc7f1ba54f 100644 --- a/src/cmdstan/command.hpp +++ b/src/cmdstan/command.hpp @@ -206,9 +206,6 @@ context_vector get_vec_var_context(const std::string &file, size_t num_chains) { return context_vector(num_chains, std::make_shared(dump(stream))); } -static constexpr int hmc_fixed_cols - = 7; // hmc sampler outputs columns __lp + 6 - namespace internal { /** @@ -571,25 +568,31 @@ int command(int argc, const char *argv[]) { stream.close(); std::vector param_names; model.constrained_param_names(param_names, false, false); + size_t meta_cols = 0; + for (auto col_name : fitted_params.header) { + if (boost::algorithm::ends_with(col_name, "__")) { + meta_cols++; + } else { + break; + } + } size_t num_cols = param_names.size(); size_t num_rows = fitted_params.samples.rows(); // check that all parameter names are in sample, in order - if (num_cols + hmc_fixed_cols > fitted_params.header.size()) { + if (num_cols + meta_cols > fitted_params.header.size()) { msg << "Mismatch between model and fitted_parameters csv file \"" << fname << "\"" << std::endl; throw std::invalid_argument(msg.str()); } for (size_t i = 0; i < num_cols; ++i) { - if (param_names[i].compare(fitted_params.header[i + hmc_fixed_cols]) - != 0) { + if (param_names[i].compare(fitted_params.header[i + meta_cols]) != 0) { msg << "Mismatch between model and fitted_parameters csv file \"" << fname << "\"" << std::endl; throw std::invalid_argument(msg.str()); } } return_code = stan::services::standalone_generate( - model, - fitted_params.samples.block(0, hmc_fixed_cols, num_rows, num_cols), + model, fitted_params.samples.block(0, meta_cols, num_rows, num_cols), random_seed, interrupt, logger, sample_writers[0]); } else if (user_method->arg("diagnose")) { list_argument *test = dynamic_cast( diff --git a/src/test/interface/generated_quantities_test.cpp b/src/test/interface/generated_quantities_test.cpp index d65788d2c5..3fadfa7d9e 100644 --- a/src/test/interface/generated_quantities_test.cpp +++ b/src/test/interface/generated_quantities_test.cpp @@ -20,6 +20,10 @@ class CmdStan : public testing::Test { = {"src", "test", "test-models", "bern_fitted_params.csv"}; bern_fitted_params_warmup = {"src", "test", "test-models", "bern_fitted_params_warmup.csv"}; + bern_optimized_params + = {"src", "test", "test-models", "bern_optimized_params.csv"}; + bern_variational_params + = {"src", "test", "test-models", "bern_optimized_params.csv"}; bern_fitted_params_thin = {"src", "test", "test-models", "bern_fitted_params_thin.csv"}; default_file_path = {"src", "test", "test-models", "output.csv"}; @@ -34,6 +38,8 @@ class CmdStan : public testing::Test { std::vector bern_data; std::vector bern_fitted_params; std::vector bern_fitted_params_warmup; + std::vector bern_optimized_params; + std::vector bern_variational_params; std::vector bern_fitted_params_thin; std::vector default_file_path; std::vector dev_null_path; @@ -160,6 +166,84 @@ TEST_F(CmdStan, generate_quantities_warmup) { ASSERT_EQ(fitted_params.samples.rows(), gq_output.samples.rows()); } +TEST_F(CmdStan, generate_quantities_after_optimization) { + std::stringstream ss; + ss << convert_model_path(bern_gq_model) + << " data file=" << convert_model_path(bern_data) + << " output file=" << convert_model_path(default_file_path) + << " method=generate_quantities fitted_params=" + << convert_model_path(bern_optimized_params); + std::string cmd = ss.str(); + run_command_output out = run_command(cmd); + ASSERT_FALSE(out.hasError); + + std::stringstream msg; + std::string fp_path = convert_model_path(bern_optimized_params); + std::string gq_output_path = convert_model_path(default_file_path); + + std::ifstream fp_stream(fp_path.c_str()); + stan::io::stan_csv fitted_params; + stan::io::stan_csv_reader::read_metadata(fp_stream, fitted_params.metadata, + &msg); + stan::io::stan_csv_reader::read_header(fp_stream, fitted_params.header, &msg, + false); + stan::io::stan_csv_reader::read_samples(fp_stream, fitted_params.samples, + fitted_params.timing, &msg); + fp_stream.close(); + + std::ifstream gq_stream(gq_output_path.c_str()); + stan::io::stan_csv gq_output; + stan::io::stan_csv_reader::read_samples(gq_stream, gq_output.samples, + gq_output.timing, &msg); + stan::io::stan_csv_reader::read_metadata(gq_stream, gq_output.metadata, &msg); + stan::io::stan_csv_reader::read_header(gq_stream, gq_output.header, &msg, + false); + stan::io::stan_csv_reader::read_samples(gq_stream, gq_output.samples, + gq_output.timing, &msg); + gq_stream.close(); + + ASSERT_EQ(fitted_params.samples.rows(), gq_output.samples.rows()); +} + +TEST_F(CmdStan, generate_quantities_after_vb) { + std::stringstream ss; + ss << convert_model_path(bern_gq_model) + << " data file=" << convert_model_path(bern_data) + << " output file=" << convert_model_path(default_file_path) + << " method=generate_quantities fitted_params=" + << convert_model_path(bern_variational_params); + std::string cmd = ss.str(); + run_command_output out = run_command(cmd); + ASSERT_FALSE(out.hasError); + + std::stringstream msg; + std::string fp_path = convert_model_path(bern_variational_params); + std::string gq_output_path = convert_model_path(default_file_path); + + std::ifstream fp_stream(fp_path.c_str()); + stan::io::stan_csv fitted_params; + stan::io::stan_csv_reader::read_metadata(fp_stream, fitted_params.metadata, + &msg); + stan::io::stan_csv_reader::read_header(fp_stream, fitted_params.header, &msg, + false); + stan::io::stan_csv_reader::read_samples(fp_stream, fitted_params.samples, + fitted_params.timing, &msg); + fp_stream.close(); + + std::ifstream gq_stream(gq_output_path.c_str()); + stan::io::stan_csv gq_output; + stan::io::stan_csv_reader::read_samples(gq_stream, gq_output.samples, + gq_output.timing, &msg); + stan::io::stan_csv_reader::read_metadata(gq_stream, gq_output.metadata, &msg); + stan::io::stan_csv_reader::read_header(gq_stream, gq_output.header, &msg, + false); + stan::io::stan_csv_reader::read_samples(gq_stream, gq_output.samples, + gq_output.timing, &msg); + gq_stream.close(); + + ASSERT_EQ(fitted_params.samples.rows(), gq_output.samples.rows()); +} + TEST_F(CmdStan, generate_quantities_thin) { std::stringstream ss; ss << convert_model_path(bern_gq_model) diff --git a/src/test/test-models/bern_optimized_params.csv b/src/test/test-models/bern_optimized_params.csv new file mode 100644 index 0000000000..af5a16d698 --- /dev/null +++ b/src/test/test-models/bern_optimized_params.csv @@ -0,0 +1,35 @@ +# stan_version_major = 2 +# stan_version_minor = 30 +# stan_version_patch = 0 +# model = bernoulli_model +# start_datetime = 2022-07-06 18:18:41 UTC +# method = optimize +# optimize +# algorithm = lbfgs (Default) +# lbfgs +# init_alpha = 0.001 (Default) +# tol_obj = 9.9999999999999998e-13 (Default) +# tol_rel_obj = 10000 (Default) +# tol_grad = 1e-08 (Default) +# tol_rel_grad = 10000000 (Default) +# tol_param = 1e-08 (Default) +# history_size = 5 (Default) +# iter = 2000 (Default) +# save_iterations = 0 (Default) +# id = 1 (Default) +# data +# file = bernoulli.data.json +# init = 2 (Default) +# random +# seed = 3689276984 (Default) +# output +# file = output.csv (Default) +# diagnostic_file = (Default) +# refresh = 100 (Default) +# sig_figs = -1 (Default) +# profile_file = profile.csv (Default) +# num_threads = 1 (Default) +# stanc_version = %%NAME%%3 %%VERSION%% +# stancflags = +lp__,theta +-5.00402,0.2 diff --git a/src/test/test-models/bern_variational_params.csv b/src/test/test-models/bern_variational_params.csv new file mode 100644 index 0000000000..b0cc6da836 --- /dev/null +++ b/src/test/test-models/bern_variational_params.csv @@ -0,0 +1,1038 @@ +# stan_version_major = 2 +# stan_version_minor = 30 +# stan_version_patch = 0 +# model = bernoulli_model +# start_datetime = 2022-07-06 18:19:33 UTC +# method = variational +# variational +# algorithm = meanfield (Default) +# meanfield +# iter = 10000 (Default) +# grad_samples = 1 (Default) +# elbo_samples = 100 (Default) +# eta = 1 (Default) +# adapt +# engaged = 1 (Default) +# iter = 50 (Default) +# tol_rel_obj = 0.01 (Default) +# eval_elbo = 100 (Default) +# output_samples = 1000 (Default) +# id = 1 (Default) +# data +# file = bernoulli.data.json +# init = 2 (Default) +# random +# seed = 3689328985 (Default) +# output +# file = output.csv (Default) +# diagnostic_file = (Default) +# refresh = 100 (Default) +# sig_figs = -1 (Default) +# profile_file = profile.csv (Default) +# num_threads = 1 (Default) +# stanc_version = %%NAME%%3 %%VERSION%% +# stancflags = +lp__,log_p__,log_g__,theta +# Stepsize adaptation complete. +# eta = 0.1 +0,0,0,0.230025 +0,-7.69124,-0.751596,0.10881 +0,-6.90682,-0.211496,0.324423 +0,-6.99911,-0.30038,0.344681 +0,-9.08138,-1.93756,0.556876 +0,-6.75321,-0.00159645,0.23741 +0,-6.9696,-0.116784,0.17352 +0,-7.45049,-0.691267,0.413371 +0,-6.98431,-0.127476,0.171267 +0,-6.78576,-0.00549765,0.216751 +0,-6.95071,-0.254494,0.33459 +0,-7.68902,-0.749396,0.108937 +0,-6.97988,-0.124235,0.171937 +0,-7.12851,-0.239274,0.15277 +0,-6.82014,-0.0209388,0.204643 +0,-7.30152,-0.385915,0.13595 +0,-6.74968,-0.0205048,0.257237 +0,-7.28064,-0.367623,0.137767 +0,-6.82009,-0.120097,0.299329 +0,-7.30544,-0.57051,0.394462 +0,-8.03798,-1.10986,0.0914962 +0,-6.7565,-0.0359739,0.266508 +0,-6.83492,-0.136637,0.304352 +0,-6.74949,-0.0198883,0.25681 +0,-6.75024,-0.0221992,0.258382 +0,-6.89039,-0.194973,0.320291 +0,-7.32157,-0.403619,0.134251 +0,-6.75232,-0.0274646,0.261705 +0,-7.31268,-0.395752,0.134999 +0,-7.99409,-1.06296,0.0934447 +0,-7.21952,-0.497253,0.382166 +0,-7.61986,-0.681467,0.113027 +0,-7.95809,-1.09511,0.468021 +0,-7.33661,-0.416986,0.133004 +0,-6.74845,-0.00761844,0.246367 +0,-7.16093,-0.265847,0.149271 +0,-7.45538,-0.69528,0.413974 +0,-8.37692,-1.48613,0.0782484 +0,-8.32237,-1.42392,0.0801897 +0,-8.81854,-2.01224,0.0646302 +0,-6.8108,-0.0162634,0.207544 +0,-7.32513,-0.406776,0.133954 +0,-7.59945,-0.661661,0.114283 +0,-6.81979,-0.0207601,0.204747 +0,-8.05196,-1.1676,0.476787 +0,-6.88912,-0.0615588,0.187818 +0,-9.9622,-2.57622,0.610266 +0,-6.81821,-0.0199486,0.205226 +0,-7.84197,-1.00466,0.456694 +0,-7.38913,-0.640577,0.405618 +0,-6.98612,-0.128805,0.170995 +0,-8.36244,-1.40399,0.503695 +0,-6.77805,-0.0688449,0.281433 +0,-7.02339,-0.156601,0.165673 +0,-9.12643,-1.97054,0.559877 +0,-8.20237,-1.28927,0.0847032 +0,-10.1043,-3.7611,0.0387984 +0,-6.77424,-0.00191047,0.222132 +0,-6.81954,-0.119469,0.299133 +0,-7.78969,-0.850418,0.103404 +0,-9.32093,-2.11245,0.572468 +0,-10.1073,-3.76556,0.0387541 +0,-7.33432,-0.594822,0.398395 +0,-9.10469,-2.37391,0.0574107 +0,-7.3341,-0.594638,0.398365 +0,-6.76761,-0.054117,0.275265 +0,-6.79694,-0.0929484,0.290387 +0,-7.47088,-0.707992,0.415875 +0,-7.5505,-0.772821,0.425352 +0,-6.86157,-0.0443226,0.193807 +0,-6.83749,-0.0302802,0.199764 +0,-7.28999,-0.557448,0.39232 +0,-7.32524,-0.406874,0.133945 +0,-6.75339,-0.02983,0.263101 +0,-6.74898,-0.006057,0.244559 +0,-8.08123,-1.15649,0.0896345 +0,-7.45109,-0.69176,0.413445 +0,-6.92193,-0.0833149,0.18152 +0,-6.81917,-0.119051,0.299002 +0,-7.36392,-0.441447,0.130798 +0,-7.37895,-0.455012,0.129614 +0,-7.01305,-0.313367,0.347419 +0,-7.29259,-0.378072,0.136721 +0,-6.81514,-0.0184001,0.206169 +0,-7.95862,-1.02539,0.0950648 +0,-12.2207,-4.19136,0.711945 +0,-8.28162,-1.3429,0.496969 +0,-7.28491,-0.553138,0.391608 +0,-6.97786,-0.280405,0.340372 +0,-7.24966,-0.340761,0.140558 +0,-6.92567,-0.0858728,0.180846 +0,-6.98154,-0.125453,0.171684 +0,-7.41519,-0.662173,0.408952 +0,-11.1255,-3.40899,0.667625 +0,-6.78357,-0.0761468,0.284273 +0,-8.5765,-1.719,0.0716657 +0,-6.77032,-0.0580892,0.276995 +0,-7.20111,-0.299385,0.145182 +0,-7.68489,-0.880673,0.440386 +0,-7.28071,-0.367681,0.137761 +0,-7.01901,-0.318887,0.348569 +0,-8.41207,-1.44138,0.507738 +0,-6.90059,-0.205265,0.322881 +0,-6.82025,-0.0209956,0.20461 +0,-6.75152,-0.0255775,0.260551 +0,-6.96855,-0.116024,0.173685 +0,-6.77296,-0.0618472,0.278584 +0,-8.14384,-1.23805,0.485064 +0,-7.6623,-0.723006,0.110487 +0,-7.89453,-1.04571,0.461891 +0,-6.89608,-0.066071,0.186416 +0,-6.74971,-0.0206145,0.257313 +0,-8.07696,-1.15187,0.0898156 +0,-9.71322,-3.19572,0.0450779 +0,-7.84397,-1.00623,0.456894 +0,-6.75155,-0.00266509,0.239597 +0,-8.25203,-1.34463,0.0827931 +0,-7.04067,-0.169786,0.163358 +0,-7.99814,-1.12611,0.471802 +0,-6.77836,-0.0030508,0.220083 +0,-6.90488,-0.209564,0.323947 +0,-6.76635,-0.000356487,0.226591 +0,-6.90148,-0.0696119,0.185354 +0,-7.05888,-0.35543,0.355982 +0,-6.83128,-0.132635,0.303162 +0,-6.77245,-0.00147905,0.22307 +0,-7.4757,-0.543972,0.122453 +0,-6.794,-0.0893386,0.289117 +0,-6.99393,-0.134551,0.16984 +0,-6.83142,-0.132789,0.303208 +0,-7.35062,-0.429503,0.131863 +0,-7.65103,-0.853674,0.436702 +0,-6.76717,-0.000469601,0.226087 +0,-6.76102,-1.1164e-06,0.230218 +0,-6.82623,-0.0241285,0.202863 +0,-6.82343,-0.022648,0.203673 +0,-6.7515,-0.0027042,0.239668 +0,-7.18798,-0.469964,0.377395 +0,-8.97273,-2.20512,0.060607 +0,-6.7819,-0.00416516,0.21844 +0,-6.75153,-0.00268012,0.239624 +0,-7.4376,-0.5086,0.125183 +0,-6.89124,-0.062924,0.187388 +0,-7.03583,-0.334389,0.351754 +0,-6.76097,-0.0437692,0.270469 +0,-6.97066,-0.117548,0.173355 +0,-7.82761,-0.889105,0.101436 +0,-6.78294,-0.00451129,0.217977 +0,-6.90092,-0.0692478,0.185462 +0,-6.97534,-0.278011,0.339848 +0,-6.96487,-0.268061,0.337647 +0,-8.38451,-1.49483,0.0779834 +0,-7.03281,-0.163768,0.1644 +0,-7.17292,-0.275782,0.148024 +0,-6.92305,-0.0840793,0.181317 +0,-7.61815,-0.679801,0.113131 +0,-7.78246,-0.957922,0.450659 +0,-6.75603,-0.0351019,0.266041 +0,-7.72158,-0.90982,0.444308 +0,-6.95589,-0.25947,0.335719 +0,-6.76141,-2.81035e-07,0.229928 +0,-8.1662,-1.24929,0.0861339 +0,-8.61777,-1.59532,0.523844 +0,-7.94825,-1.01446,0.0955464 +0,-6.84966,-0.152616,0.308964 +0,-7.86073,-0.923177,0.0997642 +0,-7.2726,-0.360616,0.13848 +0,-7.20951,-0.306479,0.144358 +0,-6.97197,-0.118497,0.173151 +0,-7.69982,-0.892552,0.441991 +0,-6.82781,-0.0249699,0.202416 +0,-6.74804,-0.0103758,0.249171 +0,-6.74803,-0.0118499,0.250524 +0,-7.24289,-0.517329,0.385606 +0,-6.8907,-0.0625755,0.187497 +0,-7.64095,-0.70205,0.111753 +0,-6.74887,-0.0176199,0.255181 +0,-7.58387,-0.646614,0.115259 +0,-7.42391,-0.495998,0.126192 +0,-7.05978,-0.184565,0.160896 +0,-8.53797,-1.6734,0.0728771 +0,-8.12761,-1.20695,0.0876986 +0,-7.43385,-0.505143,0.125458 +0,-6.88666,-0.0599754,0.188324 +0,-7.04388,-0.172258,0.162937 +0,-6.79999,-0.0112463,0.211214 +0,-6.76724,-0.000480452,0.226042 +0,-6.78331,-0.00463947,0.21781 +0,-9.54272,-2.95831,0.0481824 +0,-6.90507,-0.209749,0.323993 +0,-6.95893,-0.109127,0.175213 +0,-8.57715,-1.71977,0.0716455 +0,-6.8885,-0.193051,0.319801 +0,-6.92453,-0.229027,0.328663 +0,-9.01739,-1.89065,0.552553 +0,-7.09273,-0.210506,0.156868 +0,-6.94429,-0.0987691,0.177622 +0,-7.68265,-0.878896,0.440145 +0,-6.74822,-0.00870702,0.247524 +0,-6.76419,-0.000125718,0.227981 +0,-7.70489,-0.765149,0.108033 +0,-7.35874,-0.615269,0.401651 +0,-6.7485,-0.0158928,0.253874 +0,-6.76903,-0.000773221,0.224981 +0,-6.88714,-0.191665,0.319446 +0,-6.90641,-0.0728781,0.184402 +0,-7.21717,-0.495226,0.381815 +0,-6.80051,-0.0972711,0.291879 +0,-6.88991,-0.0620655,0.187658 +0,-7.12229,-0.412314,0.366924 +0,-6.76781,-0.000567033,0.225701 +0,-6.75035,-0.00383662,0.241542 +0,-8.13454,-1.23095,0.484239 +0,-6.78173,-0.00410717,0.218519 +0,-8.27721,-1.37288,0.081848 +0,-6.7512,-0.0247707,0.260046 +0,-6.79426,-0.0896659,0.289233 +0,-6.84547,-0.034807,0.1977 +0,-6.9745,-0.120323,0.172761 +0,-6.79845,-0.0105694,0.211771 +0,-9.31385,-2.10729,0.57202 +0,-6.74805,-0.0123772,0.250989 +0,-6.99257,-0.133551,0.170039 +0,-6.8551,-0.158403,0.310584 +0,-7.25987,-0.349575,0.139625 +0,-7.77085,-0.94877,0.449462 +0,-8.25784,-1.35114,0.0825735 +0,-9.67113,-3.13661,0.0458217 +0,-6.83318,-0.134731,0.303787 +0,-6.82779,-0.0249617,0.20242 +0,-7.16982,-0.273213,0.148343 +0,-9.23821,-2.05218,0.567185 +0,-7.1554,-0.441524,0.3723 +0,-6.76861,-0.000700469,0.225222 +0,-7.4469,-0.517199,0.124506 +0,-6.96983,-0.272785,0.338696 +0,-7.04189,-0.170725,0.163197 +0,-7.60479,-0.666828,0.113952 +0,-8.41492,-1.44352,0.507968 +0,-8.60276,-1.58414,0.522702 +0,-6.75184,-0.0263483,0.261027 +0,-7.5253,-0.752385,0.422403 +0,-6.75096,-0.00318342,0.2405 +0,-9.28932,-2.08944,0.570462 +0,-6.76032,-0.0426867,0.269939 +0,-7.30983,-0.393237,0.135241 +0,-7.13604,-0.424487,0.369183 +0,-6.77676,-0.00258737,0.220858 +0,-6.80826,-0.106467,0.294963 +0,-6.91761,-0.080386,0.182306 +0,-6.8226,-0.0222126,0.203916 +0,-7.16841,-0.272035,0.14849 +0,-6.99491,-0.296458,0.343845 +0,-7.2141,-0.310375,0.143911 +0,-6.78291,-0.0752923,0.283947 +0,-6.9252,-0.229693,0.328822 +0,-6.87715,-0.181442,0.316797 +0,-7.64168,-0.702769,0.111709 +0,-7.76579,-0.944784,0.448939 +0,-7.46394,-0.702304,0.415026 +0,-7.45071,-0.520724,0.124231 +0,-8.29368,-1.39144,0.0812378 +0,-8.26757,-1.36205,0.0822078 +0,-6.80916,-0.107521,0.295309 +0,-6.84957,-0.0371844,0.196677 +0,-6.99736,-0.137093,0.169339 +0,-6.92579,-0.230266,0.328958 +0,-8.70695,-1.66161,0.530526 +0,-6.75918,-7.80378e-05,0.231643 +0,-6.9054,-0.21008,0.324075 +0,-6.89986,-0.068546,0.18567 +0,-7.10461,-0.219992,0.155478 +0,-6.77897,-0.00323389,0.219794 +0,-7.22409,-0.318862,0.142952 +0,-6.75425,-0.0316178,0.264123 +0,-6.7486,-0.0070712,0.245755 +0,-7.01005,-0.146547,0.167524 +0,-7.01603,-0.15104,0.166687 +0,-7.23047,-0.506674,0.383787 +0,-8.07031,-1.18171,0.478464 +0,-6.89017,-0.194752,0.320235 +0,-6.78814,-0.0820134,0.286469 +0,-7.66789,-0.728508,0.11016 +0,-6.7552,-0.0335054,0.265174 +0,-8.53463,-1.66946,0.0729834 +0,-6.88723,-0.0603418,0.188207 +0,-6.84714,-0.149907,0.308197 +0,-7.12594,-0.237184,0.153056 +0,-7.97049,-1.10472,0.469198 +0,-7.35162,-0.430395,0.131783 +0,-9.56235,-2.98536,0.0478124 +0,-7.45915,-0.52855,0.123626 +0,-7.25223,-0.525319,0.38696 +0,-7.06724,-0.363012,0.35748 +0,-6.7986,-0.0106349,0.211717 +0,-6.91688,-0.221497,0.326859 +0,-6.93364,-0.237948,0.330769 +0,-6.83121,-0.0268125,0.201463 +0,-6.82967,-0.0259729,0.201892 +0,-6.75699,-0.0368737,0.266984 +0,-6.79183,-0.007806,0.214273 +0,-7.30531,-0.389247,0.135626 +0,-6.93104,-0.0895586,0.179897 +0,-7.06653,-0.362365,0.357353 +0,-7.42842,-0.673092,0.41062 +0,-6.75018,-0.00404336,0.241854 +0,-9.48337,-2.23046,0.582552 +0,-6.75424,-0.00113121,0.23623 +0,-7.34309,-0.60218,0.399572 +0,-6.80713,-0.014508,0.208748 +0,-6.79508,-0.00913512,0.21302 +0,-7.07155,-0.193766,0.159427 +0,-6.91481,-0.078499,0.182822 +0,-7.91119,-1.05869,0.463514 +0,-7.44036,-0.511151,0.124982 +0,-6.80717,-0.0145244,0.208736 +0,-7.4889,-0.556319,0.121533 +0,-8.56167,-1.55348,0.51955 +0,-6.88787,-0.19241,0.319637 +0,-6.98459,-0.286753,0.341755 +0,-6.74805,-0.01035,0.249146 +0,-7.86346,-1.02147,0.458833 +0,-7.05089,-0.177663,0.162029 +0,-7.19614,-0.477048,0.378644 +0,-7.674,-0.734533,0.109804 +0,-6.75391,-0.00126804,0.236599 +0,-6.79865,-0.0106582,0.211697 +0,-6.80166,-0.0986492,0.292349 +0,-7.9367,-1.07852,0.465977 +0,-7.41309,-0.486078,0.126999 +0,-6.91551,-0.0789653,0.182694 +0,-6.78765,-0.00619127,0.215957 +0,-7.97134,-1.03884,0.0944787 +0,-8.17335,-1.25718,0.0858481 +0,-6.86902,-0.0488754,0.192111 +0,-7.81076,-0.871875,0.102302 +0,-6.92914,-0.0882485,0.180232 +0,-6.88623,-0.190742,0.319209 +0,-7.9355,-1.07759,0.465862 +0,-6.76631,-0.000351275,0.226616 +0,-6.81719,-0.1168,0.298294 +0,-6.74812,-0.00940604,0.24823 +0,-8.65682,-1.81501,0.0692249 +0,-6.74809,-0.00973398,0.248553 +0,-7.71105,-0.771291,0.107685 +0,-7.46328,-0.701768,0.414946 +0,-6.82871,-0.0254571,0.20216 +0,-6.94907,-0.102129,0.176825 +0,-6.81653,-0.116047,0.298055 +0,-10.7702,-3.15525,0.651394 +0,-6.77243,-0.0610919,0.278268 +0,-6.74824,-0.00857842,0.247391 +0,-11.3758,-5.79908,0.0242774 +0,-6.87208,-0.176205,0.315415 +0,-7.56743,-0.63081,0.116303 +0,-7.78244,-0.957908,0.450657 +0,-7.09222,-0.2101,0.156929 +0,-6.85371,-0.156931,0.310174 +0,-7.86963,-1.02629,0.459445 +0,-8.03294,-1.15296,0.475038 +0,-6.92256,-0.227097,0.328203 +0,-6.7734,-0.0624663,0.278842 +0,-7.32984,-0.410958,0.133563 +0,-7.67619,-0.7367,0.109677 +0,-7.94843,-1.01465,0.0955378 +0,-6.80107,-0.0117261,0.210829 +0,-7.5433,-0.766994,0.424515 +0,-6.75842,-0.000150117,0.232272 +0,-7.25035,-0.341362,0.140494 +0,-6.83946,-0.0313835,0.199246 +0,-7.77085,-0.831323,0.104404 +0,-9.1778,-2.46887,0.05573 +0,-7.2093,-0.306307,0.144378 +0,-6.9316,-0.0899437,0.179799 +0,-9.98986,-3.59269,0.0405246 +0,-8.53679,-1.67201,0.0729146 +0,-7.81899,-0.88028,0.101878 +0,-6.96753,-0.115288,0.173845 +0,-6.96111,-0.264474,0.336845 +0,-9.19833,-2.02308,0.564601 +0,-6.75159,-0.00263705,0.239546 +0,-7.02228,-0.155766,0.165824 +0,-6.79503,-0.00911249,0.21304 +0,-7.2106,-0.489562,0.380833 +0,-6.97797,-0.12285,0.172227 +0,-6.74929,-0.00541304,0.243749 +0,-8.06418,-1.177,0.477905 +0,-6.75376,-0.00133288,0.236766 +0,-6.78,-0.00355088,0.219313 +0,-6.98521,-0.128133,0.171132 +0,-10.7267,-3.12411,0.649332 +0,-6.75657,-0.0361097,0.26658 +0,-9.11148,-2.38268,0.0572522 +0,-7.00707,-0.307806,0.346252 +0,-7.5423,-0.606785,0.117933 +0,-7.51103,-0.577135,0.120018 +0,-6.86384,-0.167621,0.313112 +0,-6.89721,-0.0668119,0.186191 +0,-7.02862,-0.160576,0.164962 +0,-7.74219,-0.802441,0.105956 +0,-6.90257,-0.0703301,0.185143 +0,-6.83465,-0.136344,0.304266 +0,-7.6033,-0.665388,0.114044 +0,-7.50959,-0.575782,0.120115 +0,-6.85847,-0.0424567,0.19453 +0,-6.75013,-0.00410367,0.241943 +0,-6.88152,-0.185927,0.317967 +0,-6.76575,-0.0513186,0.274012 +0,-7.61399,-0.824008,0.432595 +0,-6.88167,-0.0567923,0.189366 +0,-9.27949,-2.08227,0.569834 +0,-8.2682,-1.36275,0.0821845 +0,-10.7383,-3.13239,0.649882 +0,-6.76912,-0.000789063,0.22493 +0,-6.74802,-0.0113781,0.2501 +0,-6.78577,-0.00550067,0.216748 +0,-7.17294,-0.2758,0.148022 +0,-6.97806,-0.280589,0.340413 +0,-7.14393,-0.251853,0.151082 +0,-7.60463,-0.816489,0.431543 +0,-6.92396,-0.0847023,0.181153 +0,-6.78627,-0.0796259,0.285584 +0,-7.8078,-0.977857,0.453249 +0,-7.52574,-0.591049,0.119029 +0,-8.27371,-1.36895,0.0819783 +0,-7.25598,-0.528527,0.387501 +0,-7.52414,-0.589533,0.119136 +0,-7.03846,-0.168089,0.163649 +0,-7.25268,-0.343369,0.14028 +0,-9.83558,-2.48505,0.603209 +0,-6.90647,-0.0729166,0.184391 +0,-7.82391,-0.885321,0.101625 +0,-7.19685,-0.295797,0.145603 +0,-6.89953,-0.204202,0.322616 +0,-6.75523,-0.000789142,0.2352 +0,-6.82012,-0.0209288,0.204649 +0,-7.12044,-0.410681,0.366619 +0,-8.07712,-1.15204,0.089809 +0,-7.1664,-0.270372,0.148699 +0,-6.99208,-0.133189,0.170111 +0,-6.75074,-0.0235774,0.259284 +0,-7.65015,-0.852969,0.436605 +0,-7.85081,-0.912946,0.10026 +0,-7.68187,-0.742315,0.109348 +0,-6.77214,-0.0606884,0.278099 +0,-6.90359,-0.071006,0.184945 +0,-7.51545,-0.744382,0.421239 +0,-12.3892,-4.312,0.718098 +0,-6.82787,-0.0250051,0.202397 +0,-7.00309,-0.141352,0.168512 +0,-6.75502,-0.0331456,0.264975 +0,-7.45406,-0.694201,0.413812 +0,-7.06142,-0.185841,0.160689 +0,-6.90514,-0.209819,0.32401 +0,-7.43202,-0.503458,0.125592 +0,-7.03122,-0.162553,0.164613 +0,-6.78107,-0.0728748,0.283016 +0,-7.09575,-0.212905,0.156513 +0,-7.64288,-0.703939,0.111637 +0,-8.5827,-1.56918,0.521168 +0,-7.6683,-0.867462,0.43859 +0,-6.91053,-0.215198,0.325331 +0,-7.19322,-0.292748,0.145965 +0,-6.75029,-0.0223393,0.258475 +0,-6.98349,-0.285722,0.341531 +0,-7.39379,-0.468471,0.128465 +0,-7.76257,-0.942242,0.448605 +0,-7.28929,-0.375178,0.137009 +0,-7.03088,-0.329835,0.350825 +0,-7.10101,-0.217109,0.155896 +0,-6.75347,-0.00146767,0.237102 +0,-6.8238,-0.0228433,0.203564 +0,-7.02342,-0.322962,0.349412 +0,-7.12156,-0.41167,0.366804 +0,-7.134,-0.243741,0.152164 +0,-6.77896,-0.00323012,0.2198 +0,-7.06222,-0.358459,0.356582 +0,-6.78665,-0.00582009,0.216376 +0,-6.74817,-0.0137739,0.252176 +0,-7.42442,-0.496468,0.126154 +0,-7.24481,-0.518976,0.385886 +0,-7.07857,-0.37324,0.35948 +0,-6.89101,-0.195604,0.320451 +0,-6.75089,-0.00325569,0.24062 +0,-6.83497,-0.0288748,0.200439 +0,-6.78249,-0.0043599,0.218177 +0,-6.84362,-0.0337493,0.198168 +0,-7.19716,-0.477935,0.3788 +0,-6.74898,-0.00605745,0.244559 +0,-7.26042,-0.532316,0.388139 +0,-7.36575,-0.443095,0.130653 +0,-6.84281,-0.0332843,0.198377 +0,-6.80745,-0.0146564,0.208643 +0,-7.24722,-0.338661,0.140783 +0,-6.86765,-0.0480328,0.192418 +0,-6.91926,-0.0815068,0.182003 +0,-6.74804,-0.0120022,0.250659 +0,-6.74847,-0.00752697,0.246266 +0,-6.91554,-0.220169,0.326539 +0,-7.55658,-0.620416,0.117002 +0,-7.26549,-0.536634,0.388863 +0,-8.45001,-1.46989,0.510786 +0,-6.80871,-0.106999,0.295138 +0,-6.8028,-0.0125023,0.210224 +0,-7.54339,-0.607826,0.117861 +0,-7.48994,-0.723584,0.418187 +0,-6.92206,-0.0834041,0.181496 +0,-8.67495,-1.63785,0.528148 +0,-6.77251,-0.00149282,0.223038 +0,-6.92471,-0.0852119,0.181019 +0,-7.30031,-0.384843,0.136055 +0,-6.86243,-0.0448466,0.193607 +0,-7.54579,-0.610113,0.117704 +0,-7.01272,-0.313055,0.347354 +0,-7.01492,-0.150208,0.166841 +0,-6.87906,-0.18341,0.317311 +0,-6.83292,-0.134437,0.3037 +0,-7.69206,-0.752405,0.108763 +0,-7.10032,-0.216558,0.155977 +0,-7.05523,-0.181032,0.161472 +0,-7.78033,-0.956245,0.45044 +0,-9.44807,-2.82891,0.0500152 +0,-6.75813,-0.000183447,0.23251 +0,-6.82201,-0.0219048,0.20409 +0,-7.3079,-0.391528,0.135405 +0,-7.93646,-1.07833,0.465953 +0,-6.94913,-0.102172,0.176815 +0,-7.91614,-0.980761,0.0970617 +0,-6.8904,-0.194981,0.320293 +0,-6.74806,-0.0101697,0.248975 +0,-6.75775,-0.000235587,0.232842 +0,-6.7528,-0.0285446,0.262349 +0,-7.00294,-0.14124,0.168533 +0,-7.14349,-0.251494,0.15113 +0,-7.02156,-0.321242,0.349056 +0,-7.91236,-0.97681,0.0972424 +0,-8.12787,-1.20723,0.0876879 +0,-6.96745,-0.115234,0.173857 +0,-6.99418,-0.134736,0.169803 +0,-6.77206,-0.0605711,0.27805 +0,-6.863,-0.166744,0.312874 +0,-6.98701,-0.129458,0.170862 +0,-6.76351,-7.52061e-05,0.228443 +0,-6.75436,-0.0318289,0.264242 +0,-6.83841,-0.140461,0.305476 +0,-7.4844,-0.719055,0.417518 +0,-6.74802,-0.0115306,0.250238 +0,-6.77875,-0.0697911,0.281808 +0,-6.75358,-0.00141588,0.236975 +0,-7.5027,-0.569285,0.120584 +0,-7.65043,-0.853195,0.436636 +0,-7.49379,-0.560908,0.121195 +0,-6.77356,-0.00174311,0.222482 +0,-6.89116,-0.0628724,0.187404 +0,-7.88486,-0.948174,0.0985728 +0,-6.89038,-0.0623721,0.187561 +0,-8.95518,-1.84494,0.548282 +0,-6.90824,-0.212914,0.324772 +0,-6.82901,-0.130116,0.302405 +0,-7.56045,-0.624118,0.116752 +0,-7.44103,-0.511765,0.124933 +0,-8.17241,-1.25987,0.487581 +0,-6.80734,-0.105392,0.294608 +0,-6.74858,-0.0163288,0.25421 +0,-7.02786,-0.327054,0.350255 +0,-8.59627,-1.7425,0.0710546 +0,-6.77902,-0.00325005,0.219769 +0,-7.34615,-0.425497,0.132226 +0,-7.25688,-0.346995,0.139896 +0,-9.00295,-2.24347,0.0598559 +0,-7.11386,-0.404829,0.365522 +0,-7.22681,-0.321183,0.142693 +0,-7.03391,-0.332622,0.351394 +0,-7.49007,-0.72369,0.418203 +0,-6.78995,-0.0842981,0.287305 +0,-6.9673,-0.115127,0.17388 +0,-7.80066,-0.861569,0.102828 +0,-6.8867,-0.0600011,0.188316 +0,-6.89499,-0.199624,0.321468 +0,-8.9607,-1.84901,0.548665 +0,-6.75227,-0.0273644,0.261645 +0,-6.84025,-0.0318298,0.199039 +0,-6.75523,-0.000789088,0.2352 +0,-6.77314,-0.0620933,0.278687 +0,-8.64444,-1.80012,0.069594 +0,-6.74804,-0.0104694,0.249259 +0,-7.10935,-0.400819,0.364766 +0,-6.85326,-0.156457,0.310042 +0,-6.77301,-0.00161008,0.222772 +0,-6.80565,-0.0138147,0.209245 +0,-7.49375,-0.56087,0.121198 +0,-6.86106,-0.0440164,0.193924 +0,-7.00008,-0.301289,0.344874 +0,-8.19616,-1.27798,0.489653 +0,-6.75199,-0.0267022,0.261243 +0,-6.79264,-0.0876544,0.288517 +0,-7.68927,-0.884164,0.440859 +0,-7.43661,-0.679849,0.411646 +0,-7.22343,-0.318303,0.143015 +0,-6.74896,-0.0179895,0.255453 +0,-6.77779,-0.0684989,0.281295 +0,-6.97524,-0.120863,0.172646 +0,-6.75519,-0.000799253,0.235233 +0,-9.18903,-2.48355,0.0554772 +0,-6.77065,-0.00108509,0.224058 +0,-7.25851,-0.348403,0.139748 +0,-6.82177,-0.0217813,0.20416 +0,-7.00739,-0.144556,0.1679 +0,-6.75819,-0.0390283,0.268102 +0,-7.7336,-0.793817,0.106429 +0,-6.90299,-0.207674,0.32348 +0,-7.67482,-0.735348,0.109756 +0,-8.93743,-1.83189,0.547052 +0,-7.99242,-1.06119,0.0935198 +0,-9.12688,-2.40263,0.056894 +0,-7.71885,-0.779064,0.107248 +0,-7.45402,-0.694165,0.413807 +0,-9.0238,-2.27004,0.0593443 +0,-6.92312,-0.227642,0.328334 +0,-6.92777,-0.087311,0.180473 +0,-7.71575,-0.775973,0.107422 +0,-6.81443,-0.018047,0.20639 +0,-7.22152,-0.316678,0.143197 +0,-7.30982,-0.393228,0.135242 +0,-6.75623,-0.000518575,0.234214 +0,-8.35422,-1.46017,0.0790482 +0,-7.86334,-0.925879,0.099634 +0,-6.77756,-0.00281434,0.220471 +0,-6.78191,-0.00416673,0.218437 +0,-6.79972,-0.0111263,0.211311 +0,-7.17745,-0.279554,0.147559 +0,-6.76395,-0.0485505,0.272742 +0,-6.95715,-0.107855,0.175501 +0,-7.77224,-0.832723,0.10433 +0,-7.52197,-0.749683,0.422011 +0,-7.23514,-0.510685,0.384474 +0,-7.30431,-0.569556,0.394306 +0,-6.77166,-0.0600088,0.277812 +0,-7.11752,-0.23037,0.154002 +0,-6.76255,-0.0463241,0.271697 +0,-6.81613,-0.0188987,0.205861 +0,-6.84465,-0.0343393,0.197906 +0,-6.7869,-0.0804368,0.285886 +0,-7.17816,-0.280145,0.147486 +0,-6.79737,-0.0934687,0.290568 +0,-6.78664,-0.0801066,0.285763 +0,-6.75243,-0.00204414,0.238393 +0,-6.75736,-0.00029521,0.23318 +0,-7.50361,-0.570142,0.120522 +0,-7.07596,-0.197233,0.158886 +0,-6.7866,-0.00580448,0.216394 +0,-6.81892,-0.118772,0.298915 +0,-8.65827,-1.62546,0.5269 +0,-7.37756,-0.630963,0.404119 +0,-6.946,-0.099969,0.177336 +0,-6.74898,-0.0180332,0.255485 +0,-6.75863,-0.0398009,0.268497 +0,-6.85862,-0.162132,0.311614 +0,-6.81936,-0.0205359,0.204879 +0,-7.23537,-0.510881,0.384507 +0,-7.08797,-0.381694,0.361117 +0,-10.0152,-3.62981,0.0401344 +0,-6.74854,-0.00727569,0.245986 +0,-7.27943,-0.54849,0.390839 +0,-7.00306,-0.141323,0.168517 +0,-8.04614,-1.16312,0.476253 +0,-6.76533,-0.0506842,0.273724 +0,-7.44219,-0.684437,0.412341 +0,-7.22597,-0.320462,0.142773 +0,-7.53623,-0.761261,0.423688 +0,-6.87155,-0.0504379,0.19155 +0,-6.94569,-0.0997531,0.177387 +0,-7.73317,-0.793394,0.106452 +0,-6.77385,-0.0630881,0.279099 +0,-6.75241,-0.0276625,0.261824 +0,-8.37504,-1.48398,0.0783141 +0,-7.55805,-0.62182,0.116907 +0,-6.75511,-0.000824165,0.235314 +0,-6.75223,-0.0272531,0.261577 +0,-7.39605,-0.646319,0.406509 +0,-6.90814,-0.0740285,0.184073 +0,-6.83445,-0.0285903,0.200578 +0,-6.8296,-0.0259378,0.201911 +0,-7.19611,-0.295176,0.145677 +0,-6.90354,-0.208225,0.323616 +0,-6.7879,-0.00628492,0.215854 +0,-6.75789,-0.0384884,0.267825 +0,-7.54441,-0.608793,0.117795 +0,-7.09782,-0.390527,0.362811 +0,-10.5332,-4.41452,0.033031 +0,-7.37233,-0.626605,0.403436 +0,-6.90758,-0.0736542,0.18418 +0,-7.43182,-0.503274,0.125607 +0,-6.75137,-0.00281044,0.239858 +0,-6.79536,-0.0910186,0.28971 +0,-6.74862,-0.0165177,0.254354 +0,-7.90781,-1.05606,0.463186 +0,-6.75972,-0.0416724,0.269437 +0,-6.75831,-0.0392313,0.268206 +0,-7.24415,-0.336021,0.141067 +0,-8.27992,-1.34161,0.496826 +0,-6.88291,-0.187351,0.318335 +0,-6.86593,-0.0469772,0.192807 +0,-6.84825,-0.0364182,0.197002 +0,-7.88346,-1.03709,0.460807 +0,-6.81627,-0.115741,0.297958 +0,-6.98979,-0.131496,0.17045 +0,-8.1815,-1.26617,0.0855243 +0,-7.07084,-0.193207,0.159515 +0,-7.70227,-0.894494,0.442253 +0,-7.7084,-0.768647,0.107835 +0,-6.86546,-0.0466913,0.192913 +0,-7.12464,-0.414403,0.367314 +0,-7.38117,-0.457017,0.129441 +0,-7.15298,-0.259283,0.150112 +0,-6.76217,-1.26549e-05,0.229375 +0,-7.00668,-0.144027,0.168 +0,-7.13549,-0.244955,0.152001 +0,-7.45671,-0.526289,0.1238 +0,-7.699,-0.759301,0.108367 +0,-6.82186,-0.0218305,0.204132 +0,-7.08989,-0.383418,0.361449 +0,-6.98139,-0.125342,0.171707 +0,-8.04009,-1.15846,0.475697 +0,-6.8681,-0.0483082,0.192318 +0,-6.75989,-0.0419633,0.269582 +0,-6.79978,-0.0111502,0.211292 +0,-6.74946,-0.00510093,0.243339 +0,-7.14968,-0.256575,0.150463 +0,-6.83564,-0.137434,0.304588 +0,-6.75843,-0.000149061,0.232264 +0,-7.09727,-0.214121,0.156334 +0,-7.65913,-0.719883,0.110674 +0,-6.8189,-0.118743,0.298906 +0,-8.09656,-1.17311,0.0889879 +0,-7.88786,-0.95129,0.0984263 +0,-6.9616,-0.264934,0.336948 +0,-6.83758,-0.0303275,0.199741 +0,-6.87007,-0.174117,0.314859 +0,-7.01885,-0.318735,0.348537 +0,-9.0911,-2.35637,0.05773 +0,-7.84654,-0.908548,0.100475 +0,-7.34233,-0.60154,0.39947 +0,-6.75855,-0.000135427,0.232159 +0,-6.97743,-0.122455,0.17231 +0,-6.83007,-0.026191,0.20178 +0,-7.41236,-0.485411,0.127054 +0,-6.79633,-0.00966256,0.212549 +0,-7.20357,-0.301462,0.144939 +0,-6.944,-0.248008,0.333105 +0,-7.76998,-0.83044,0.104451 +0,-6.79708,-0.00998161,0.212271 +0,-6.90544,-0.210124,0.324086 +0,-6.96113,-0.110697,0.17486 +0,-7.3825,-0.635071,0.404761 +0,-7.20148,-0.481677,0.379457 +0,-6.76812,-0.000617441,0.225514 +0,-6.90265,-0.207332,0.323395 +0,-6.8522,-0.155329,0.309727 +0,-6.77347,-0.0017189,0.222533 +0,-6.83442,-0.0285727,0.200586 +0,-6.87603,-0.0532353,0.19057 +0,-7.26137,-0.533123,0.388274 +0,-8.35539,-1.39868,0.503116 +0,-6.92131,-0.0828953,0.181631 +0,-9.19978,-2.49763,0.0552364 +0,-7.92529,-0.990346,0.0966258 +0,-6.82018,-0.0209564,0.204633 +0,-8.32596,-1.42799,0.08006 +0,-7.25319,-0.34381,0.140233 +0,-6.81585,-0.115264,0.297807 +0,-7.03235,-0.163419,0.164461 +0,-7.92615,-0.991246,0.0965851 +0,-7.6859,-0.746301,0.109116 +0,-7.07467,-0.196218,0.159044 +0,-6.75009,-0.00415227,0.242015 +0,-7.59194,-0.654397,0.114752 +0,-7.1229,-0.234721,0.153396 +0,-14.3111,-5.70013,0.778335 +0,-7.28808,-0.374123,0.137114 +0,-7.1646,-0.449579,0.373757 +0,-6.74822,-0.00872363,0.247541 +0,-6.76502,-0.0502055,0.273505 +0,-6.75077,-0.0236575,0.259336 +0,-6.7521,-0.0269718,0.261407 +0,-6.9783,-0.123086,0.172177 +0,-6.91517,-0.219802,0.32645 +0,-6.8354,-0.137164,0.304508 +0,-7.16705,-0.270915,0.148631 +0,-6.74898,-0.018036,0.255487 +0,-6.76151,-8.90895e-07,0.229852 +0,-9.60816,-2.32085,0.590052 +0,-7.20803,-0.305228,0.144502 +0,-6.78277,-0.00445526,0.218051 +0,-6.76958,-0.057024,0.276537 +0,-6.86422,-0.0459358,0.193195 +0,-7.03308,-0.331857,0.351238 +0,-6.79062,-0.0851391,0.287611 +0,-6.87816,-0.0545705,0.190113 +0,-9.88599,-3.44194,0.0421686 +0,-7.09977,-0.392268,0.363143 +0,-7.44396,-0.685893,0.412561 +0,-7.37722,-0.630677,0.404074 +0,-6.75093,-0.0240863,0.259611 +0,-6.97801,-0.122873,0.172222 +0,-9.31665,-2.65208,0.0527006 +0,-7.87658,-0.939582,0.0989791 +0,-7.67143,-0.731999,0.109954 +0,-7.06925,-0.191964,0.159711 +0,-7.00998,-0.310515,0.346822 +0,-6.9247,-0.229198,0.328704 +0,-6.77172,-0.00131365,0.223466 +0,-6.75401,-0.00122608,0.236488 +0,-6.75768,-0.000245008,0.232898 +0,-6.76261,-0.0464184,0.271742 +0,-6.75257,-0.00195471,0.238206 +0,-7.52229,-0.749941,0.422048 +0,-7.20705,-0.3044,0.144598 +0,-7.18012,-0.463131,0.376183 +0,-6.78795,-0.00630367,0.215833 +0,-6.96388,-0.112667,0.174421 +0,-7.15695,-0.262558,0.14969 +0,-7.3572,-0.613982,0.401447 +0,-7.03552,-0.334097,0.351694 +0,-6.77189,-0.0603284,0.277947 +0,-6.94919,-0.102216,0.176804 +0,-8.25017,-1.34254,0.0828636 +0,-7.07992,-0.200353,0.158404 +0,-7.41985,-0.666023,0.409541 +0,-7.84943,-0.911526,0.100329 +0,-8.07395,-1.14861,0.0899439 +0,-6.78806,-0.00634564,0.215787 +0,-6.82284,-0.0223382,0.203845 +0,-7.34116,-0.42104,0.132632 +0,-6.80227,-0.0122635,0.210408 +0,-7.14238,-0.430077,0.370211 +0,-6.75742,-0.000285187,0.233126 +0,-9.40637,-2.77244,0.050849 +0,-6.82068,-0.120769,0.299539 +0,-6.88711,-0.0602646,0.188231 +0,-8.04808,-1.16462,0.476432 +0,-8.53637,-1.53458,0.517591 +0,-7.14167,-0.250001,0.151327 +0,-6.75999,-0.042135,0.269667 +0,-7.04135,-0.170308,0.163268 +0,-7.785,-0.959921,0.45092 +0,-6.7876,-0.00617108,0.21598 +0,-7.50455,-0.735506,0.419941 +0,-7.74549,-0.805757,0.105776 +0,-6.74917,-0.0187932,0.256035 +0,-7.34519,-0.424642,0.132303 +0,-7.54139,-0.765444,0.424292 +0,-7.59697,-0.659259,0.114438 +0,-8.48788,-1.61458,0.0744929 +0,-6.80908,-0.0154331,0.208104 +0,-7.56737,-0.786468,0.427303 +0,-6.88214,-0.186562,0.318131 +0,-7.2628,-0.534343,0.388479 +0,-6.77898,-0.0700934,0.281928 +0,-7.07647,-0.197632,0.158824 +0,-7.45389,-0.523668,0.124003 +0,-6.81149,-0.0165963,0.207323 +0,-7.53938,-0.604009,0.118125 +0,-6.75668,-0.000420134,0.233793 +0,-6.74853,-0.0073048,0.246019 +0,-9.94874,-3.53278,0.0411663 +0,-6.74821,-0.0140688,0.252419 +0,-7.82749,-0.993313,0.455241 +0,-6.83106,-0.026731,0.201504 +0,-7.31278,-0.395833,0.134991 +0,-6.99619,-0.297649,0.344099 +0,-6.75488,-0.000901181,0.235558 +0,-6.79712,-0.0931716,0.290464 +0,-6.88766,-0.0606197,0.188117 +0,-6.77963,-0.0709641,0.282271 +0,-7.3086,-0.392144,0.135346 +0,-7.60898,-0.670898,0.113693 +0,-6.75324,-0.0015801,0.237371 +0,-7.23311,-0.508945,0.384176 +0,-6.9059,-0.210583,0.324199 +0,-6.80141,-0.0118776,0.210709 +0,-7.75105,-0.811346,0.105473 +0,-8.56319,-1.70321,0.0720811 +0,-8.38313,-1.49326,0.0780312 +0,-6.81833,-0.0200128,0.205188 +0,-6.7526,-0.00193973,0.238174 +0,-6.86226,-0.0447444,0.193646 +0,-6.7592,-0.0407759,0.268989 +0,-6.77616,-0.00242038,0.221155 +0,-7.51566,-0.581514,0.119705 +0,-6.83793,-0.139934,0.305322 +0,-6.75516,-0.000808599,0.235264 +0,-7.80497,-0.865969,0.102603 +0,-6.77134,-0.0595589,0.277622 +0,-7.73933,-0.799567,0.106113 +0,-6.9206,-0.225169,0.327742 +0,-6.76307,-0.047152,0.272088 +0,-6.86525,-0.169099,0.313512 +0,-7.73741,-0.92236,0.445978 +0,-7.31815,-0.400583,0.134538 +0,-7.81958,-0.880884,0.101847 +0,-8.36075,-1.40272,0.503557 +0,-7.81384,-0.875019,0.102143 +0,-7.40946,-0.657434,0.408224 +0,-6.75172,-0.026065,0.260853 +0,-7.07733,-0.198313,0.158718 +0,-7.97625,-1.04404,0.094254 +0,-6.83691,-0.138825,0.304997 +0,-6.95725,-0.107929,0.175484 +0,-8.23108,-1.3212,0.0835915 +0,-7.32663,-0.408105,0.133829 +0,-6.82052,-0.0211343,0.20453 +0,-6.83494,-0.028859,0.200446 +0,-6.87301,-0.177166,0.31567 +0,-7.77143,-0.831903,0.104373 +0,-7.97288,-1.04047,0.0944082 +0,-6.8643,-0.1681,0.313242 +0,-6.81042,-0.0160773,0.207668 +0,-7.35409,-0.432613,0.131584 +0,-7.35832,-0.436412,0.131244 +0,-6.75176,-0.0261475,0.260904 +0,-7.46815,-0.536927,0.122986 +0,-7.1746,-0.458319,0.375325 +0,-7.54199,-0.765929,0.424362 +0,-7.39762,-0.471956,0.128171 +0,-6.89714,-0.201797,0.322015 +0,-8.3563,-1.39936,0.503191 +0,-7.62169,-0.683248,0.112915 +0,-7.26622,-0.35508,0.139051 +0,-6.89001,-0.0621338,0.187636 +0,-9.84449,-3.38228,0.042847 +0,-7.58464,-0.647356,0.11521 +0,-7.4849,-0.552576,0.12181 +0,-6.90925,-0.213921,0.325018 +0,-6.98382,-0.127119,0.17134 +0,-6.76565,-0.0511705,0.273945 +0,-7.68526,-0.74567,0.109153 +0,-7.41027,-0.658104,0.408327 +0,-6.7577,-0.000242448,0.232883 +0,-7.12202,-0.412078,0.36688 +0,-7.05799,-0.183175,0.161122 +0,-8.6091,-1.75781,0.0706615 +0,-6.90404,-0.0713034,0.184858 +0,-7.23298,-0.326451,0.142109 +0,-6.75781,-0.000226989,0.23279 +0,-7.2359,-0.328944,0.141836 +0,-7.27514,-0.362826,0.138254 +0,-6.93897,-0.24314,0.33198 +0,-6.79441,-0.0088545,0.213276 +0,-8.58821,-1.73291,0.071303 +0,-7.05416,-0.351138,0.355128 +0,-7.3706,-0.447463,0.130269 +0,-7.10429,-0.219735,0.155515 +0,-8.63115,-1.78418,0.0699929 +0,-6.96743,-0.115215,0.173861 +0,-7.31657,-0.399191,0.134671 +0,-6.79315,-0.0882912,0.288744 +0,-6.79449,-0.0899462,0.289332 +0,-6.77931,-0.0033375,0.219634 +0,-6.79624,-0.092098,0.290089 +0,-6.78869,-0.00658131,0.215531 +0,-7.87835,-0.941412,0.0988923 +0,-6.94563,-0.24959,0.333469 +0,-7.82064,-0.881971,0.101793 +0,-7.22087,-0.316123,0.14326 +0,-6.77223,-0.0608105,0.27815 +0,-6.75235,-0.00208935,0.238487 +0,-7.44303,-0.68513,0.412445 +0,-8.21507,-1.30338,0.0842089 +0,-7.71596,-0.776177,0.10741 +0,-6.76802,-0.000600953,0.225574 +0,-6.95094,-0.254714,0.33464 +0,-7.15885,-0.264126,0.14949 +0,-6.89566,-0.0657985,0.186499 +0,-6.76082,-0.0435177,0.270347 +0,-6.7482,-0.0139845,0.25235 +0,-7.53048,-0.595542,0.118714 +0,-7.13191,-0.242039,0.152394 +0,-7.96724,-1.1022,0.46889 +0,-6.79306,-0.00830419,0.213791 +0,-6.82486,-0.0233995,0.203258 +0,-7.50557,-0.736331,0.420062 +0,-6.87487,-0.179091,0.316178 +0,-6.85542,-0.158748,0.310679 +0,-6.79392,-0.0086537,0.213462 +0,-7.16817,-0.4527,0.374318 +0,-6.76005,-2.59508e-05,0.230957 +0,-7.86403,-0.926589,0.0995999 +0,-6.9611,-0.264456,0.336841 +0,-8.19105,-1.27409,0.489209 +0,-7.13893,-0.427032,0.369652 +0,-6.80168,-0.0119988,0.210614 +0,-6.75176,-0.0261473,0.260903 +0,-6.77912,-0.00327937,0.219724 +0,-6.76842,-0.0553233,0.275796 +0,-6.92747,-0.0871064,0.180526 +0,-8.43866,-1.55729,0.0761277 +0,-7.1616,-0.446953,0.373283 +0,-7.19905,-0.297656,0.145384 +0,-8.14519,-1.23909,0.485184 +0,-7.62829,-0.689681,0.112514