Repository: garrickbrazil/M3D-RPN Branch: master Commit: bf204e3f95f6 Files: 70 Total size: 1.9 MB Directory structure: gitextract_uv27bso4/ ├── LICENSE ├── data/ │ ├── kitti_split1/ │ │ ├── devkit/ │ │ │ ├── cpp/ │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── build.sh │ │ │ │ ├── evaluate_object.cpp │ │ │ │ └── mail.h │ │ │ ├── mapping/ │ │ │ │ ├── train_mapping.txt │ │ │ │ └── train_rand.txt │ │ │ ├── matlab/ │ │ │ │ ├── computeBox3D.m │ │ │ │ ├── computeOrientation3D.m │ │ │ │ ├── drawBox2D.m │ │ │ │ ├── drawBox3D.m │ │ │ │ ├── projectToImage.m │ │ │ │ ├── readCalibration.m │ │ │ │ ├── readLabels.m │ │ │ │ ├── run_demo.m │ │ │ │ ├── run_readWriteDemo.m │ │ │ │ ├── run_statistics.m │ │ │ │ ├── visualization.m │ │ │ │ └── writeLabels.m │ │ │ └── readme.txt │ │ ├── setup_split.py │ │ ├── test.txt │ │ ├── train.txt │ │ ├── trainval.txt │ │ └── val.txt │ └── kitti_split2/ │ ├── devkit/ │ │ ├── cpp/ │ │ │ ├── CMakeLists.txt │ │ │ ├── build.sh │ │ │ ├── evaluate_object.cpp │ │ │ └── mail.h │ │ ├── mapping/ │ │ │ ├── train_mapping.txt │ │ │ └── train_rand.txt │ │ ├── matlab/ │ │ │ ├── computeBox3D.m │ │ │ ├── computeOrientation3D.m │ │ │ ├── drawBox2D.m │ │ │ ├── drawBox3D.m │ │ │ ├── projectToImage.m │ │ │ ├── readCalibration.m │ │ │ ├── readLabels.m │ │ │ ├── run_demo.m │ │ │ ├── run_readWriteDemo.m │ │ │ ├── run_statistics.m │ │ │ ├── visualization.m │ │ │ └── writeLabels.m │ │ └── readme.txt │ ├── kitti_ids_new.mat │ └── setup_split.py ├── lib/ │ ├── augmentations.py │ ├── core.py │ ├── imdb_util.py │ ├── loss/ │ │ └── rpn_3d.py │ ├── nms/ │ │ ├── Makefile │ │ ├── cpu_nms.c │ │ ├── cpu_nms.pyx │ │ ├── gpu_nms.cpp │ │ ├── gpu_nms.hpp │ │ ├── gpu_nms.pyx │ │ ├── nms_kernel.cu │ │ ├── py_cpu_nms.py │ │ └── setup.py │ ├── rpn_util.py │ └── util.py ├── models/ │ ├── densenet121_3d_dilate.py │ └── densenet121_3d_dilate_depth_aware.py ├── python_packages.txt ├── readme.md ├── scripts/ │ ├── config/ │ │ ├── kitti_3d_multi_main.py │ │ └── kitti_3d_multi_warmup.py │ ├── test_rpn_3d.py │ └── train_rpn_3d.py └── setup.md ================================================ FILE CONTENTS ================================================ ================================================ FILE: LICENSE ================================================ MIT License Copyright (c) 2020 Garrick Brazil Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: data/kitti_split1/devkit/cpp/CMakeLists.txt ================================================ cmake_minimum_required (VERSION 2.6) project(devkit_object) add_executable(evaluate_object evaluate_object.cpp) ================================================ FILE: data/kitti_split1/devkit/cpp/build.sh ================================================ cd data/kitti_split1/devkit/cpp/ g++ -O3 -DNDEBUG -o evaluate_object evaluate_object.cpp cd ../../../../ ================================================ FILE: data/kitti_split1/devkit/cpp/evaluate_object.cpp ================================================ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "mail.h" BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian) typedef boost::geometry::model::polygon > Polygon; using namespace std; /*======================================================================= STATIC EVALUATION PARAMETERS =======================================================================*/ // holds the number of test images on the server //const int32_t N_TESTIMAGES = 7518; //const int32_t N_TESTIMAGES = 7480; const int32_t N_TESTIMAGES = 3769; //const int32_t N_TESTIMAGES = 3712; // easy, moderate and hard evaluation level enum DIFFICULTY{EASY=0, MODERATE=1, HARD=2}; // evaluation metrics: image, ground or 3D enum METRIC{IMAGE=0, GROUND=1, BOX3D=2}; // evaluation parameter const int32_t MIN_HEIGHT[3] = {40, 25, 25}; // minimum height for evaluated groundtruth/detections const int32_t MAX_OCCLUSION[3] = {0, 1, 2}; // maximum occlusion level of the groundtruth used for evaluation const double MAX_TRUNCATION[3] = {0.15, 0.3, 0.5}; // maximum truncation level of the groundtruth used for evaluation // evaluated object classes enum CLASSES{CAR=0, PEDESTRIAN=1, CYCLIST=2}; const int NUM_CLASS = 3; // parameters varying per class vector CLASS_NAMES; vector CLASS_NAMES_CAP; // the minimum overlap required for 2D evaluation on the image/ground plane and 3D evaluation const double MIN_OVERLAP[3][3] = {{0.7, 0.5, 0.5}, {0.7, 0.5, 0.5}, {0.7, 0.5, 0.5}}; // no. of recall steps that should be evaluated (discretized) const double N_SAMPLE_PTS = 41; // initialize class names void initGlobals () { CLASS_NAMES.push_back("car"); CLASS_NAMES.push_back("pedestrian"); CLASS_NAMES.push_back("cyclist"); CLASS_NAMES_CAP.push_back("Car"); CLASS_NAMES_CAP.push_back("Pedestrian"); CLASS_NAMES_CAP.push_back("Cyclist"); } /*======================================================================= DATA TYPES FOR EVALUATION =======================================================================*/ // holding data needed for precision-recall and precision-aos struct tPrData { vector v; // detection score for computing score thresholds double similarity; // orientation similarity int32_t tp; // true positives int32_t fp; // false positives int32_t fn; // false negatives tPrData () : similarity(0), tp(0), fp(0), fn(0) {} }; // holding bounding boxes for ground truth and detections struct tBox { string type; // object type as car, pedestrian or cyclist,... double x1; // left corner double y1; // top corner double x2; // right corner double y2; // bottom corner double alpha; // image orientation tBox (string type, double x1,double y1,double x2,double y2,double alpha) : type(type),x1(x1),y1(y1),x2(x2),y2(y2),alpha(alpha) {} }; // holding ground truth data struct tGroundtruth { tBox box; // object type, box, orientation double truncation; // truncation 0..1 int32_t occlusion; // occlusion 0,1,2 (non, partly, fully) double ry; double t1, t2, t3; double h, w, l; tGroundtruth () : box(tBox("invalild",-1,-1,-1,-1,-10)),truncation(-1),occlusion(-1) {} tGroundtruth (tBox box,double truncation,int32_t occlusion) : box(box),truncation(truncation),occlusion(occlusion) {} tGroundtruth (string type,double x1,double y1,double x2,double y2,double alpha,double truncation,int32_t occlusion) : box(tBox(type,x1,y1,x2,y2,alpha)),truncation(truncation),occlusion(occlusion) {} }; // holding detection data struct tDetection { tBox box; // object type, box, orientation double thresh; // detection score double ry; double t1, t2, t3; double h, w, l; tDetection (): box(tBox("invalid",-1,-1,-1,-1,-10)),thresh(-1000) {} tDetection (tBox box,double thresh) : box(box),thresh(thresh) {} tDetection (string type,double x1,double y1,double x2,double y2,double alpha,double thresh) : box(tBox(type,x1,y1,x2,y2,alpha)),thresh(thresh) {} }; /*======================================================================= FUNCTIONS TO LOAD DETECTION AND GROUND TRUTH DATA ONCE, SAVE RESULTS =======================================================================*/ vector loadDetections(string file_name, bool &compute_aos, vector &eval_image, vector &eval_ground, vector &eval_3d, bool &success) { // holds all detections (ignored detections are indicated by an index vector vector detections; FILE *fp = fopen(file_name.c_str(),"r"); if (!fp) { success = false; return detections; } while (!feof(fp)) { tDetection d; double trash; char str[255]; if (fscanf(fp, "%s %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf", str, &trash, &trash, &d.box.alpha, &d.box.x1, &d.box.y1, &d.box.x2, &d.box.y2, &d.h, &d.w, &d.l, &d.t1, &d.t2, &d.t3, &d.ry, &d.thresh)==16) { // d.thresh = 1; d.box.type = str; detections.push_back(d); // orientation=-10 is invalid, AOS is not evaluated if at least one orientation is invalid if(d.box.alpha == -10) compute_aos = false; // a class is only evaluated if it is detected at least once for (int c = 0; c < NUM_CLASS; c++) { if (!strcasecmp(d.box.type.c_str(), CLASS_NAMES[c].c_str()) || !strcasecmp(d.box.type.c_str(), CLASS_NAMES_CAP[c].c_str())) { if (!eval_image[c] && d.box.x1 >= 0) eval_image[c] = true; if (!eval_ground[c] && d.t1 != -1000 && d.t3 != -1000 && d.w > 0 && d.l > 0) eval_ground[c] = true; if (!eval_3d[c] && d.t1 != -1000 && d.t2 != -1000 && d.t3 != -1000 && d.h > 0 && d.w > 0 && d.l > 0) eval_3d[c] = true; break; } } } } fclose(fp); success = true; return detections; } vector loadGroundtruth(string file_name,bool &success) { // holds all ground truth (ignored ground truth is indicated by an index vector vector groundtruth; FILE *fp = fopen(file_name.c_str(),"r"); if (!fp) { success = false; return groundtruth; } while (!feof(fp)) { tGroundtruth g; char str[255]; if (fscanf(fp, "%s %lf %d %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf", str, &g.truncation, &g.occlusion, &g.box.alpha, &g.box.x1, &g.box.y1, &g.box.x2, &g.box.y2, &g.h, &g.w, &g.l, &g.t1, &g.t2, &g.t3, &g.ry )==15) { g.box.type = str; groundtruth.push_back(g); } } fclose(fp); success = true; return groundtruth; } void saveStats (const vector &precision, const vector &aos, FILE *fp_det, FILE *fp_ori) { // save precision to file if(precision.empty()) return; for (int32_t i=0; i Polygon toPolygon(const T& g) { using namespace boost::numeric::ublas; using namespace boost::geometry; matrix mref(2, 2); mref(0, 0) = cos(g.ry); mref(0, 1) = sin(g.ry); mref(1, 0) = -sin(g.ry); mref(1, 1) = cos(g.ry); static int count = 0; matrix corners(2, 4); double data[] = {g.l / 2, g.l / 2, -g.l / 2, -g.l / 2, g.w / 2, -g.w / 2, -g.w / 2, g.w / 2}; std::copy(data, data + 8, corners.data().begin()); matrix gc = prod(mref, corners); for (int i = 0; i < 4; ++i) { gc(0, i) += g.t1; gc(1, i) += g.t3; } double points[][2] = {{gc(0, 0), gc(1, 0)},{gc(0, 1), gc(1, 1)},{gc(0, 2), gc(1, 2)},{gc(0, 3), gc(1, 3)},{gc(0, 0), gc(1, 0)}}; Polygon poly; append(poly, points); return poly; } // measure overlap between bird's eye view bounding boxes, parametrized by (ry, l, w, tx, tz) inline double groundBoxOverlap(tDetection d, tGroundtruth g, int32_t criterion = -1) { using namespace boost::geometry; Polygon gp = toPolygon(g); Polygon dp = toPolygon(d); std::vector in, un; intersection(gp, dp, in); union_(gp, dp, un); double inter_area = in.empty() ? 0 : area(in.front()); double union_area = area(un.front()); double o; if(criterion==-1) // union o = inter_area / union_area; else if(criterion==0) // bbox_a o = inter_area / area(dp); else if(criterion==1) // bbox_b o = inter_area / area(gp); return o; } // measure overlap between 3D bounding boxes, parametrized by (ry, h, w, l, tx, ty, tz) inline double box3DOverlap(tDetection d, tGroundtruth g, int32_t criterion = -1) { using namespace boost::geometry; Polygon gp = toPolygon(g); Polygon dp = toPolygon(d); std::vector in, un; intersection(gp, dp, in); union_(gp, dp, un); double ymax = min(d.t2, g.t2); double ymin = max(d.t2 - d.h, g.t2 - g.h); double inter_area = in.empty() ? 0 : area(in.front()); double inter_vol = inter_area * max(0.0, ymax - ymin); double det_vol = d.h * d.l * d.w; double gt_vol = g.h * g.l * g.w; double o; if(criterion==-1) // union o = inter_vol / (det_vol + gt_vol - inter_vol); else if(criterion==0) // bbox_a o = inter_vol / det_vol; else if(criterion==1) // bbox_b o = inter_vol / gt_vol; return o; } vector getThresholds(vector &v, double n_groundtruth){ // holds scores needed to compute N_SAMPLE_PTS recall values vector t; // sort scores in descending order // (highest score is assumed to give best/most confident detections) sort(v.begin(), v.end(), greater()); // get scores for linearly spaced recall double current_recall = 0; for(int32_t i=0; i >, const vector &det, vector &ignored_gt, vector &dc, vector &ignored_det, int32_t &n_gt, DIFFICULTY difficulty){ // extract ground truth bounding boxes for current evaluation class for(int32_t i=0;iMAX_OCCLUSION[difficulty] || gt[i].truncation>MAX_TRUNCATION[difficulty] || height<=MIN_HEIGHT[difficulty]) ignore = true; // set ignored vector for ground truth // current class and not ignored (total no. of ground truth is detected for recall denominator) if(valid_class==1 && !ignore){ ignored_gt.push_back(0); n_gt++; } // neighboring class, or current class but ignored else if(valid_class==0 || (ignore && valid_class==1)) ignored_gt.push_back(1); // all other classes which are FN in the evaluation else ignored_gt.push_back(-1); } // extract dontcare areas for(int32_t i=0;i >, const vector &det, const vector &dc, const vector &ignored_gt, const vector &ignored_det, bool compute_fp, double (*boxoverlap)(tDetection, tGroundtruth, int32_t), METRIC metric, bool compute_aos=false, double thresh=0, bool debug=false){ tPrData stat = tPrData(); const double NO_DETECTION = -10000000; vector delta; // holds angular difference for TPs (needed for AOS evaluation) vector assigned_detection; // holds wether a detection was assigned to a valid or ignored ground truth assigned_detection.assign(det.size(), false); vector ignored_threshold; ignored_threshold.assign(det.size(), false); // holds detections with a threshold lower than thresh if FP are computed // detections with a low score are ignored for computing precision (needs FP) if(compute_fp) for(int32_t i=0; i 0.5) (logical len(det)) =======================================================================*/ int32_t det_idx = -1; double valid_detection = NO_DETECTION; double max_overlap = 0; // search for a possible detection bool assigned_ignored_det = false; for(int32_t j=0; jMIN_OVERLAP[metric][current_class] && det[j].thresh>valid_detection){ det_idx = j; valid_detection = det[j].thresh; } // for computing pr curve values, the candidate with the greatest overlap is considered // if the greatest overlap is an ignored detection (min_height), the overlapping detection is used else if(compute_fp && overlap>MIN_OVERLAP[metric][current_class] && (overlap>max_overlap || assigned_ignored_det) && ignored_det[j]==0){ max_overlap = overlap; det_idx = j; valid_detection = 1; assigned_ignored_det = false; } else if(compute_fp && overlap>MIN_OVERLAP[metric][current_class] && valid_detection==NO_DETECTION && ignored_det[j]==1){ det_idx = j; valid_detection = 1; assigned_ignored_det = true; } } /*======================================================================= compute TP, FP and FN =======================================================================*/ // nothing was assigned to this valid ground truth if(valid_detection==NO_DETECTION && ignored_gt[i]==0) { stat.fn++; } // only evaluate valid ground truth <=> detection assignments (considering difficulty level) else if(valid_detection!=NO_DETECTION && (ignored_gt[i]==1 || ignored_det[det_idx]==1)) assigned_detection[det_idx] = true; // found a valid true positive else if(valid_detection!=NO_DETECTION){ // write highest score to threshold vector stat.tp++; stat.v.push_back(det[det_idx].thresh); // compute angular difference of detection and ground truth if valid detection orientation was provided if(compute_aos) delta.push_back(gt[i].box.alpha - det[det_idx].box.alpha); // clean up assigned_detection[det_idx] = true; } } // if FP are requested, consider stuff area if(compute_fp){ // count fp for(int32_t i=0; iMIN_OVERLAP[metric][current_class]){ assigned_detection[j] = true; nstuff++; } } } // FP = no. of all not to ground truth assigned detections - detections assigned to stuff areas stat.fp -= nstuff; // if all orientation values are valid, the AOS is computed if(compute_aos){ vector tmp; // FP have a similarity of 0, for all TP compute AOS tmp.assign(stat.fp, 0); for(int32_t i=0; i0 || stat.fp>0) stat.similarity = accumulate(tmp.begin(), tmp.end(), 0.0); // there was neither a FP nor a TP, so the similarity is ignored in the evaluation else stat.similarity = -1; } } return stat; } /*======================================================================= EVALUATE CLASS-WISE =======================================================================*/ bool eval_class (FILE *fp_det, FILE *fp_ori, CLASSES current_class, const vector< vector > &groundtruth, const vector< vector > &detections, bool compute_aos, double (*boxoverlap)(tDetection, tGroundtruth, int32_t), vector &precision, vector &aos, DIFFICULTY difficulty, METRIC metric) { assert(groundtruth.size() == detections.size()); // init int32_t n_gt=0; // total no. of gt (denominator of recall) vector v, thresholds; // detection scores, evaluated for recall discretization vector< vector > ignored_gt, ignored_det; // index of ignored gt detection for current class/difficulty vector< vector > dontcare; // index of dontcare areas, included in ground truth // for all test images do for (int32_t i=0; i i_gt, i_det; vector dc; // only evaluate objects of current class and ignore occluded, truncated objects cleanData(current_class, groundtruth[i], detections[i], i_gt, dc, i_det, n_gt, difficulty); ignored_gt.push_back(i_gt); ignored_det.push_back(i_det); dontcare.push_back(dc); // compute statistics to get recall values tPrData pr_tmp = tPrData(); pr_tmp = computeStatistics(current_class, groundtruth[i], detections[i], dc, i_gt, i_det, false, boxoverlap, metric); // add detection scores to vector over all images for(int32_t j=0; j pr; pr.assign(thresholds.size(),tPrData()); for (int32_t i=0; i recall; precision.assign(N_SAMPLE_PTS, 0); if(compute_aos) aos.assign(N_SAMPLE_PTS, 0); double r=0; for (int32_t i=0; i vals[],bool is_aos){ char command[1024]; // save plot data to file FILE *fp = fopen((dir_name + "/" + file_name + ".txt").c_str(),"w"); printf("save %s\n", (dir_name + "/" + file_name + ".txt").c_str()); for (int32_t i=0; i<(int)N_SAMPLE_PTS; i++) fprintf(fp,"%f %f %f %f\n",(double)i/(N_SAMPLE_PTS-1.0),vals[0][i],vals[1][i],vals[2][i]); fclose(fp); // create png + eps for (int32_t j=0; j<2; j++) { // open file FILE *fp = fopen((dir_name + "/" + file_name + ".gp").c_str(),"w"); // save gnuplot instructions if (j==0) { fprintf(fp,"set term png size 450,315 font \"Helvetica\" 11\n"); fprintf(fp,"set output \"%s.png\"\n",file_name.c_str()); } else { fprintf(fp,"set term postscript eps enhanced color font \"Helvetica\" 20\n"); fprintf(fp,"set output \"%s.eps\"\n",file_name.c_str()); } // set labels and ranges fprintf(fp,"set size ratio 0.7\n"); fprintf(fp,"set xrange [0:1]\n"); fprintf(fp,"set yrange [0:1]\n"); fprintf(fp,"set xlabel \"Recall\"\n"); if (!is_aos) fprintf(fp,"set ylabel \"Precision\"\n"); else fprintf(fp,"set ylabel \"Orientation Similarity\"\n"); obj_type[0] = toupper(obj_type[0]); fprintf(fp,"set title \"%s\"\n",obj_type.c_str()); // line width int32_t lw = 5; if (j==0) lw = 3; // plot error curve fprintf(fp,"plot "); fprintf(fp,"\"%s.txt\" using 1:2 title 'Easy' with lines ls 1 lw %d,",file_name.c_str(),lw); fprintf(fp,"\"%s.txt\" using 1:3 title 'Moderate' with lines ls 2 lw %d,",file_name.c_str(),lw); fprintf(fp,"\"%s.txt\" using 1:4 title 'Hard' with lines ls 3 lw %d",file_name.c_str(),lw); // close file fclose(fp); // run gnuplot => create png + eps sprintf(command,"cd %s; gnuplot %s",dir_name.c_str(),(file_name + ".gp").c_str()); system(command); } // create pdf and crop sprintf(command,"cd %s; ps2pdf %s.eps %s_large.pdf",dir_name.c_str(),file_name.c_str(),file_name.c_str()); system(command); sprintf(command,"cd %s; pdfcrop %s_large.pdf %s.pdf",dir_name.c_str(),file_name.c_str(),file_name.c_str()); system(command); sprintf(command,"cd %s; rm %s_large.pdf",dir_name.c_str(),file_name.c_str()); system(command); } bool eval(string result_sha,Mail* mail){ // set some global parameters initGlobals(); // ground truth and result directories string gt_dir = "data/kitti_split1/validation/label_2"; string result_dir = result_sha; string plot_dir = result_dir + "/plot"; // create output directories system(("mkdir " + plot_dir).c_str()); // hold detections and ground truth in memory vector< vector > groundtruth; vector< vector > detections; // holds wether orientation similarity shall be computed (might be set to false while loading detections) // and which labels where provided by this submission bool compute_aos=true; vector eval_image(NUM_CLASS, false); vector eval_ground(NUM_CLASS, false); vector eval_3d(NUM_CLASS, false); // for all images read groundtruth and detections mail->msg("Loading detections..."); for (int32_t i=0; i gt = loadGroundtruth(gt_dir + "/" + file_name,gt_success); vector det = loadDetections(result_dir + "/data/" + file_name, compute_aos, eval_image, eval_ground, eval_3d, det_success); groundtruth.push_back(gt); detections.push_back(det); // check for errors if (!gt_success) { mail->msg("ERROR: Couldn't read: %s of ground truth. Please write me an email!", file_name); return false; } if (!det_success) { mail->msg("ERROR: Couldn't read: %s", file_name); return false; } } mail->msg(" done."); // holds pointers for result files FILE *fp_det=0, *fp_ori=0; // eval image 2D bounding boxes for (int c = 0; c < NUM_CLASS; c++) { CLASSES cls = (CLASSES)c; //mail->msg("Checking 2D evaluation (%s) ...", CLASS_NAMES[c].c_str()); if (eval_image[c]) { mail->msg("Starting 2D evaluation (%s) ...", CLASS_NAMES[c].c_str()); fp_det = fopen((result_dir + "/stats_" + CLASS_NAMES[c] + "_detection.txt").c_str(), "w"); if(compute_aos) fp_ori = fopen((result_dir + "/stats_" + CLASS_NAMES[c] + "_orientation.txt").c_str(),"w"); vector precision[3], aos[3]; if( !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, imageBoxOverlap, precision[0], aos[0], EASY, IMAGE) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, imageBoxOverlap, precision[1], aos[1], MODERATE, IMAGE) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, imageBoxOverlap, precision[2], aos[2], HARD, IMAGE)) { mail->msg("%s evaluation failed.", CLASS_NAMES[c].c_str()); return false; } fclose(fp_det); saveAndPlotPlots(plot_dir, CLASS_NAMES[c] + "_detection", CLASS_NAMES[c], precision, 0); if(compute_aos){ saveAndPlotPlots(plot_dir, CLASS_NAMES[c] + "_orientation", CLASS_NAMES[c], aos, 1); fclose(fp_ori); } mail->msg(" done."); } } // don't evaluate AOS for birdview boxes and 3D boxes compute_aos = false; // eval bird's eye view bounding boxes for (int c = 0; c < NUM_CLASS; c++) { CLASSES cls = (CLASSES)c; //mail->msg("Checking bird's eye evaluation (%s) ...", CLASS_NAMES[c].c_str()); if (eval_ground[c]) { mail->msg("Starting bird's eye evaluation (%s) ...", CLASS_NAMES[c].c_str()); fp_det = fopen((result_dir + "/stats_" + CLASS_NAMES[c] + "_detection_ground.txt").c_str(), "w"); vector precision[3], aos[3]; if( !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, groundBoxOverlap, precision[0], aos[0], EASY, GROUND) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, groundBoxOverlap, precision[1], aos[1], MODERATE, GROUND) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, groundBoxOverlap, precision[2], aos[2], HARD, GROUND)) { mail->msg("%s evaluation failed.", CLASS_NAMES[c].c_str()); return false; } fclose(fp_det); saveAndPlotPlots(plot_dir, CLASS_NAMES[c] + "_detection_ground", CLASS_NAMES[c], precision, 0); mail->msg(" done."); } } // eval 3D bounding boxes for (int c = 0; c < NUM_CLASS; c++) { CLASSES cls = (CLASSES)c; //mail->msg("Checking 3D evaluation (%s) ...", CLASS_NAMES[c].c_str()); if (eval_3d[c]) { mail->msg("Starting 3D evaluation (%s) ...", CLASS_NAMES[c].c_str()); fp_det = fopen((result_dir + "/stats_" + CLASS_NAMES[c] + "_detection_3d.txt").c_str(), "w"); vector precision[3], aos[3]; if( !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, box3DOverlap, precision[0], aos[0], EASY, BOX3D) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, box3DOverlap, precision[1], aos[1], MODERATE, BOX3D) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, box3DOverlap, precision[2], aos[2], HARD, BOX3D)) { mail->msg("%s evaluation failed.", CLASS_NAMES[c].c_str()); return false; } fclose(fp_det); saveAndPlotPlots(plot_dir, CLASS_NAMES[c] + "_detection_3d", CLASS_NAMES[c], precision, 0); mail->msg(" done."); } } // success return true; } int32_t main (int32_t argc,char *argv[]) { // we need 2 or 4 arguments! if (argc!=2 && argc!=4) { cout << "Usage: ./eval_detection result_sha [user_sha email]" << endl; return 1; } // read arguments string result_sha = argv[1]; // init notification mail Mail *mail; if (argc==4) mail = new Mail(argv[3]); else mail = new Mail(); mail->msg("Thank you for participating in our evaluation!"); // run evaluation if (eval(result_sha,mail)) { mail->msg("Your evaluation results are available at:"); mail->msg("http://www.cvlibs.net/datasets/kitti/user_submit_check_login.php?benchmark=object&user=%s&result=%s",argv[2], result_sha.c_str()); } else { system(("rm -r results/" + result_sha).c_str()); mail->msg("An error occured while processing your results."); mail->msg("Please make sure that the data in your zip archive has the right format!"); } // send mail and exit delete mail; return 0; } ================================================ FILE: data/kitti_split1/devkit/cpp/mail.h ================================================ #ifndef MAIL_H #define MAIL_H #include #include #include class Mail { public: Mail (std::string email = "") { if (email.compare("")) { mail = popen("/usr/lib/sendmail -t -f noreply@cvlibs.net","w"); fprintf(mail,"To: %s\n", email.c_str()); fprintf(mail,"From: noreply@cvlibs.net\n"); fprintf(mail,"Subject: KITTI Evaluation Benchmark\n"); fprintf(mail,"\n\n"); } else { mail = 0; } } ~Mail() { if (mail) { pclose(mail); } } void msg (const char *format, ...) { va_list args; va_start(args,format); if (mail) { vfprintf(mail,format,args); fprintf(mail,"\n"); } vprintf(format,args); printf("\n"); va_end(args); } private: FILE *mail; }; #endif ================================================ FILE: data/kitti_split1/devkit/mapping/train_mapping.txt ================================================ 2011_09_26 2011_09_26_drive_0005_sync 0000000109 2011_09_26 2011_09_26_drive_0005_sync 0000000125 2011_09_26 2011_09_26_drive_0005_sync 0000000127 2011_09_26 2011_09_26_drive_0005_sync 0000000130 2011_09_26 2011_09_26_drive_0005_sync 0000000133 2011_09_26 2011_09_26_drive_0005_sync 0000000136 2011_09_26 2011_09_26_drive_0005_sync 0000000139 2011_09_26 2011_09_26_drive_0005_sync 0000000142 2011_09_26 2011_09_26_drive_0005_sync 0000000145 2011_09_26 2011_09_26_drive_0005_sync 0000000151 2011_09_26 2011_09_26_drive_0009_sync 0000000001 2011_09_26 2011_09_26_drive_0009_sync 0000000002 2011_09_26 2011_09_26_drive_0009_sync 0000000003 2011_09_26 2011_09_26_drive_0009_sync 0000000004 2011_09_26 2011_09_26_drive_0009_sync 0000000005 2011_09_26 2011_09_26_drive_0009_sync 0000000006 2011_09_26 2011_09_26_drive_0009_sync 0000000007 2011_09_26 2011_09_26_drive_0009_sync 0000000008 2011_09_26 2011_09_26_drive_0009_sync 0000000009 2011_09_26 2011_09_26_drive_0009_sync 0000000010 2011_09_26 2011_09_26_drive_0009_sync 0000000011 2011_09_26 2011_09_26_drive_0009_sync 0000000012 2011_09_26 2011_09_26_drive_0009_sync 0000000013 2011_09_26 2011_09_26_drive_0009_sync 0000000014 2011_09_26 2011_09_26_drive_0009_sync 0000000015 2011_09_26 2011_09_26_drive_0009_sync 0000000016 2011_09_26 2011_09_26_drive_0009_sync 0000000017 2011_09_26 2011_09_26_drive_0009_sync 0000000018 2011_09_26 2011_09_26_drive_0009_sync 0000000019 2011_09_26 2011_09_26_drive_0009_sync 0000000020 2011_09_26 2011_09_26_drive_0009_sync 0000000021 2011_09_26 2011_09_26_drive_0009_sync 0000000022 2011_09_26 2011_09_26_drive_0009_sync 0000000023 2011_09_26 2011_09_26_drive_0009_sync 0000000024 2011_09_26 2011_09_26_drive_0009_sync 0000000025 2011_09_26 2011_09_26_drive_0009_sync 0000000026 2011_09_26 2011_09_26_drive_0009_sync 0000000027 2011_09_26 2011_09_26_drive_0009_sync 0000000028 2011_09_26 2011_09_26_drive_0009_sync 0000000029 2011_09_26 2011_09_26_drive_0009_sync 0000000030 2011_09_26 2011_09_26_drive_0009_sync 0000000031 2011_09_26 2011_09_26_drive_0009_sync 0000000032 2011_09_26 2011_09_26_drive_0009_sync 0000000033 2011_09_26 2011_09_26_drive_0009_sync 0000000034 2011_09_26 2011_09_26_drive_0009_sync 0000000035 2011_09_26 2011_09_26_drive_0009_sync 0000000036 2011_09_26 2011_09_26_drive_0009_sync 0000000037 2011_09_26 2011_09_26_drive_0009_sync 0000000038 2011_09_26 2011_09_26_drive_0009_sync 0000000039 2011_09_26 2011_09_26_drive_0009_sync 0000000040 2011_09_26 2011_09_26_drive_0009_sync 0000000041 2011_09_26 2011_09_26_drive_0009_sync 0000000042 2011_09_26 2011_09_26_drive_0009_sync 0000000043 2011_09_26 2011_09_26_drive_0009_sync 0000000044 2011_09_26 2011_09_26_drive_0009_sync 0000000045 2011_09_26 2011_09_26_drive_0009_sync 0000000046 2011_09_26 2011_09_26_drive_0009_sync 0000000047 2011_09_26 2011_09_26_drive_0009_sync 0000000048 2011_09_26 2011_09_26_drive_0009_sync 0000000049 2011_09_26 2011_09_26_drive_0009_sync 0000000050 2011_09_26 2011_09_26_drive_0009_sync 0000000051 2011_09_26 2011_09_26_drive_0009_sync 0000000052 2011_09_26 2011_09_26_drive_0009_sync 0000000053 2011_09_26 2011_09_26_drive_0009_sync 0000000054 2011_09_26 2011_09_26_drive_0009_sync 0000000055 2011_09_26 2011_09_26_drive_0009_sync 0000000056 2011_09_26 2011_09_26_drive_0009_sync 0000000057 2011_09_26 2011_09_26_drive_0009_sync 0000000058 2011_09_26 2011_09_26_drive_0009_sync 0000000059 2011_09_26 2011_09_26_drive_0009_sync 0000000060 2011_09_26 2011_09_26_drive_0009_sync 0000000061 2011_09_26 2011_09_26_drive_0009_sync 0000000062 2011_09_26 2011_09_26_drive_0009_sync 0000000063 2011_09_26 2011_09_26_drive_0009_sync 0000000064 2011_09_26 2011_09_26_drive_0009_sync 0000000065 2011_09_26 2011_09_26_drive_0009_sync 0000000066 2011_09_26 2011_09_26_drive_0009_sync 0000000067 2011_09_26 2011_09_26_drive_0009_sync 0000000068 2011_09_26 2011_09_26_drive_0009_sync 0000000069 2011_09_26 2011_09_26_drive_0009_sync 0000000070 2011_09_26 2011_09_26_drive_0009_sync 0000000071 2011_09_26 2011_09_26_drive_0009_sync 0000000072 2011_09_26 2011_09_26_drive_0009_sync 0000000073 2011_09_26 2011_09_26_drive_0009_sync 0000000074 2011_09_26 2011_09_26_drive_0009_sync 0000000075 2011_09_26 2011_09_26_drive_0009_sync 0000000076 2011_09_26 2011_09_26_drive_0009_sync 0000000077 2011_09_26 2011_09_26_drive_0009_sync 0000000081 2011_09_26 2011_09_26_drive_0009_sync 0000000085 2011_09_26 2011_09_26_drive_0009_sync 0000000086 2011_09_26 2011_09_26_drive_0009_sync 0000000087 2011_09_26 2011_09_26_drive_0009_sync 0000000088 2011_09_26 2011_09_26_drive_0009_sync 0000000089 2011_09_26 2011_09_26_drive_0009_sync 0000000090 2011_09_26 2011_09_26_drive_0009_sync 0000000091 2011_09_26 2011_09_26_drive_0009_sync 0000000095 2011_09_26 2011_09_26_drive_0009_sync 0000000096 2011_09_26 2011_09_26_drive_0009_sync 0000000097 2011_09_26 2011_09_26_drive_0009_sync 0000000098 2011_09_26 2011_09_26_drive_0009_sync 0000000099 2011_09_26 2011_09_26_drive_0009_sync 0000000100 2011_09_26 2011_09_26_drive_0009_sync 0000000101 2011_09_26 2011_09_26_drive_0009_sync 0000000102 2011_09_26 2011_09_26_drive_0009_sync 0000000103 2011_09_26 2011_09_26_drive_0009_sync 0000000104 2011_09_26 2011_09_26_drive_0009_sync 0000000107 2011_09_26 2011_09_26_drive_0009_sync 0000000110 2011_09_26 2011_09_26_drive_0009_sync 0000000111 2011_09_26 2011_09_26_drive_0009_sync 0000000112 2011_09_26 2011_09_26_drive_0009_sync 0000000113 2011_09_26 2011_09_26_drive_0009_sync 0000000114 2011_09_26 2011_09_26_drive_0009_sync 0000000115 2011_09_26 2011_09_26_drive_0009_sync 0000000116 2011_09_26 2011_09_26_drive_0009_sync 0000000117 2011_09_26 2011_09_26_drive_0009_sync 0000000118 2011_09_26 2011_09_26_drive_0009_sync 0000000119 2011_09_26 2011_09_26_drive_0009_sync 0000000120 2011_09_26 2011_09_26_drive_0009_sync 0000000121 2011_09_26 2011_09_26_drive_0009_sync 0000000122 2011_09_26 2011_09_26_drive_0009_sync 0000000123 2011_09_26 2011_09_26_drive_0009_sync 0000000124 2011_09_26 2011_09_26_drive_0009_sync 0000000125 2011_09_26 2011_09_26_drive_0009_sync 0000000126 2011_09_26 2011_09_26_drive_0009_sync 0000000127 2011_09_26 2011_09_26_drive_0009_sync 0000000128 2011_09_26 2011_09_26_drive_0009_sync 0000000129 2011_09_26 2011_09_26_drive_0009_sync 0000000130 2011_09_26 2011_09_26_drive_0009_sync 0000000131 2011_09_26 2011_09_26_drive_0009_sync 0000000132 2011_09_26 2011_09_26_drive_0009_sync 0000000133 2011_09_26 2011_09_26_drive_0009_sync 0000000134 2011_09_26 2011_09_26_drive_0009_sync 0000000135 2011_09_26 2011_09_26_drive_0009_sync 0000000137 2011_09_26 2011_09_26_drive_0009_sync 0000000139 2011_09_26 2011_09_26_drive_0009_sync 0000000140 2011_09_26 2011_09_26_drive_0009_sync 0000000142 2011_09_26 2011_09_26_drive_0009_sync 0000000144 2011_09_26 2011_09_26_drive_0009_sync 0000000146 2011_09_26 2011_09_26_drive_0009_sync 0000000148 2011_09_26 2011_09_26_drive_0009_sync 0000000150 2011_09_26 2011_09_26_drive_0009_sync 0000000156 2011_09_26 2011_09_26_drive_0009_sync 0000000158 2011_09_26 2011_09_26_drive_0009_sync 0000000160 2011_09_26 2011_09_26_drive_0009_sync 0000000162 2011_09_26 2011_09_26_drive_0009_sync 0000000164 2011_09_26 2011_09_26_drive_0009_sync 0000000166 2011_09_26 2011_09_26_drive_0009_sync 0000000168 2011_09_26 2011_09_26_drive_0009_sync 0000000170 2011_09_26 2011_09_26_drive_0009_sync 0000000181 2011_09_26 2011_09_26_drive_0009_sync 0000000185 2011_09_26 2011_09_26_drive_0009_sync 0000000190 2011_09_26 2011_09_26_drive_0009_sync 0000000195 2011_09_26 2011_09_26_drive_0009_sync 0000000199 2011_09_26 2011_09_26_drive_0009_sync 0000000202 2011_09_26 2011_09_26_drive_0009_sync 0000000205 2011_09_26 2011_09_26_drive_0009_sync 0000000207 2011_09_26 2011_09_26_drive_0009_sync 0000000209 2011_09_26 2011_09_26_drive_0009_sync 0000000211 2011_09_26 2011_09_26_drive_0009_sync 0000000213 2011_09_26 2011_09_26_drive_0009_sync 0000000215 2011_09_26 2011_09_26_drive_0009_sync 0000000217 2011_09_26 2011_09_26_drive_0009_sync 0000000218 2011_09_26 2011_09_26_drive_0009_sync 0000000219 2011_09_26 2011_09_26_drive_0009_sync 0000000220 2011_09_26 2011_09_26_drive_0009_sync 0000000221 2011_09_26 2011_09_26_drive_0009_sync 0000000222 2011_09_26 2011_09_26_drive_0009_sync 0000000223 2011_09_26 2011_09_26_drive_0009_sync 0000000224 2011_09_26 2011_09_26_drive_0009_sync 0000000225 2011_09_26 2011_09_26_drive_0009_sync 0000000226 2011_09_26 2011_09_26_drive_0009_sync 0000000227 2011_09_26 2011_09_26_drive_0009_sync 0000000228 2011_09_26 2011_09_26_drive_0009_sync 0000000229 2011_09_26 2011_09_26_drive_0009_sync 0000000230 2011_09_26 2011_09_26_drive_0009_sync 0000000231 2011_09_26 2011_09_26_drive_0009_sync 0000000232 2011_09_26 2011_09_26_drive_0009_sync 0000000234 2011_09_26 2011_09_26_drive_0009_sync 0000000235 2011_09_26 2011_09_26_drive_0009_sync 0000000236 2011_09_26 2011_09_26_drive_0009_sync 0000000238 2011_09_26 2011_09_26_drive_0009_sync 0000000240 2011_09_26 2011_09_26_drive_0009_sync 0000000242 2011_09_26 2011_09_26_drive_0009_sync 0000000244 2011_09_26 2011_09_26_drive_0009_sync 0000000246 2011_09_26 2011_09_26_drive_0009_sync 0000000248 2011_09_26 2011_09_26_drive_0009_sync 0000000250 2011_09_26 2011_09_26_drive_0009_sync 0000000252 2011_09_26 2011_09_26_drive_0009_sync 0000000254 2011_09_26 2011_09_26_drive_0009_sync 0000000256 2011_09_26 2011_09_26_drive_0009_sync 0000000258 2011_09_26 2011_09_26_drive_0009_sync 0000000260 2011_09_26 2011_09_26_drive_0009_sync 0000000262 2011_09_26 2011_09_26_drive_0009_sync 0000000264 2011_09_26 2011_09_26_drive_0009_sync 0000000266 2011_09_26 2011_09_26_drive_0009_sync 0000000268 2011_09_26 2011_09_26_drive_0009_sync 0000000270 2011_09_26 2011_09_26_drive_0009_sync 0000000272 2011_09_26 2011_09_26_drive_0009_sync 0000000273 2011_09_26 2011_09_26_drive_0009_sync 0000000274 2011_09_26 2011_09_26_drive_0009_sync 0000000276 2011_09_26 2011_09_26_drive_0009_sync 0000000277 2011_09_26 2011_09_26_drive_0009_sync 0000000278 2011_09_26 2011_09_26_drive_0009_sync 0000000279 2011_09_26 2011_09_26_drive_0009_sync 0000000280 2011_09_26 2011_09_26_drive_0009_sync 0000000281 2011_09_26 2011_09_26_drive_0009_sync 0000000282 2011_09_26 2011_09_26_drive_0009_sync 0000000283 2011_09_26 2011_09_26_drive_0009_sync 0000000284 2011_09_26 2011_09_26_drive_0009_sync 0000000285 2011_09_26 2011_09_26_drive_0009_sync 0000000286 2011_09_26 2011_09_26_drive_0009_sync 0000000287 2011_09_26 2011_09_26_drive_0009_sync 0000000288 2011_09_26 2011_09_26_drive_0009_sync 0000000289 2011_09_26 2011_09_26_drive_0009_sync 0000000290 2011_09_26 2011_09_26_drive_0009_sync 0000000291 2011_09_26 2011_09_26_drive_0009_sync 0000000292 2011_09_26 2011_09_26_drive_0009_sync 0000000293 2011_09_26 2011_09_26_drive_0009_sync 0000000294 2011_09_26 2011_09_26_drive_0009_sync 0000000295 2011_09_26 2011_09_26_drive_0009_sync 0000000296 2011_09_26 2011_09_26_drive_0009_sync 0000000297 2011_09_26 2011_09_26_drive_0009_sync 0000000298 2011_09_26 2011_09_26_drive_0009_sync 0000000299 2011_09_26 2011_09_26_drive_0009_sync 0000000300 2011_09_26 2011_09_26_drive_0009_sync 0000000301 2011_09_26 2011_09_26_drive_0009_sync 0000000302 2011_09_26 2011_09_26_drive_0009_sync 0000000303 2011_09_26 2011_09_26_drive_0009_sync 0000000304 2011_09_26 2011_09_26_drive_0009_sync 0000000305 2011_09_26 2011_09_26_drive_0009_sync 0000000306 2011_09_26 2011_09_26_drive_0009_sync 0000000307 2011_09_26 2011_09_26_drive_0009_sync 0000000308 2011_09_26 2011_09_26_drive_0009_sync 0000000309 2011_09_26 2011_09_26_drive_0009_sync 0000000310 2011_09_26 2011_09_26_drive_0009_sync 0000000311 2011_09_26 2011_09_26_drive_0009_sync 0000000312 2011_09_26 2011_09_26_drive_0009_sync 0000000313 2011_09_26 2011_09_26_drive_0009_sync 0000000314 2011_09_26 2011_09_26_drive_0009_sync 0000000315 2011_09_26 2011_09_26_drive_0009_sync 0000000317 2011_09_26 2011_09_26_drive_0009_sync 0000000318 2011_09_26 2011_09_26_drive_0009_sync 0000000319 2011_09_26 2011_09_26_drive_0009_sync 0000000320 2011_09_26 2011_09_26_drive_0009_sync 0000000322 2011_09_26 2011_09_26_drive_0009_sync 0000000323 2011_09_26 2011_09_26_drive_0009_sync 0000000325 2011_09_26 2011_09_26_drive_0009_sync 0000000327 2011_09_26 2011_09_26_drive_0009_sync 0000000329 2011_09_26 2011_09_26_drive_0009_sync 0000000331 2011_09_26 2011_09_26_drive_0009_sync 0000000333 2011_09_26 2011_09_26_drive_0009_sync 0000000335 2011_09_26 2011_09_26_drive_0009_sync 0000000336 2011_09_26 2011_09_26_drive_0009_sync 0000000337 2011_09_26 2011_09_26_drive_0009_sync 0000000338 2011_09_26 2011_09_26_drive_0009_sync 0000000339 2011_09_26 2011_09_26_drive_0009_sync 0000000340 2011_09_26 2011_09_26_drive_0009_sync 0000000341 2011_09_26 2011_09_26_drive_0009_sync 0000000342 2011_09_26 2011_09_26_drive_0009_sync 0000000343 2011_09_26 2011_09_26_drive_0009_sync 0000000344 2011_09_26 2011_09_26_drive_0009_sync 0000000345 2011_09_26 2011_09_26_drive_0009_sync 0000000346 2011_09_26 2011_09_26_drive_0009_sync 0000000347 2011_09_26 2011_09_26_drive_0009_sync 0000000348 2011_09_26 2011_09_26_drive_0009_sync 0000000349 2011_09_26 2011_09_26_drive_0009_sync 0000000350 2011_09_26 2011_09_26_drive_0009_sync 0000000351 2011_09_26 2011_09_26_drive_0009_sync 0000000352 2011_09_26 2011_09_26_drive_0009_sync 0000000353 2011_09_26 2011_09_26_drive_0009_sync 0000000354 2011_09_26 2011_09_26_drive_0009_sync 0000000355 2011_09_26 2011_09_26_drive_0009_sync 0000000356 2011_09_26 2011_09_26_drive_0009_sync 0000000357 2011_09_26 2011_09_26_drive_0009_sync 0000000358 2011_09_26 2011_09_26_drive_0009_sync 0000000359 2011_09_26 2011_09_26_drive_0009_sync 0000000361 2011_09_26 2011_09_26_drive_0009_sync 0000000362 2011_09_26 2011_09_26_drive_0009_sync 0000000363 2011_09_26 2011_09_26_drive_0009_sync 0000000364 2011_09_26 2011_09_26_drive_0009_sync 0000000366 2011_09_26 2011_09_26_drive_0009_sync 0000000368 2011_09_26 2011_09_26_drive_0009_sync 0000000370 2011_09_26 2011_09_26_drive_0009_sync 0000000372 2011_09_26 2011_09_26_drive_0009_sync 0000000374 2011_09_26 2011_09_26_drive_0009_sync 0000000377 2011_09_26 2011_09_26_drive_0009_sync 0000000379 2011_09_26 2011_09_26_drive_0009_sync 0000000381 2011_09_26 2011_09_26_drive_0009_sync 0000000383 2011_09_26 2011_09_26_drive_0009_sync 0000000386 2011_09_26 2011_09_26_drive_0009_sync 0000000389 2011_09_26 2011_09_26_drive_0009_sync 0000000392 2011_09_26 2011_09_26_drive_0009_sync 0000000395 2011_09_26 2011_09_26_drive_0009_sync 0000000397 2011_09_26 2011_09_26_drive_0009_sync 0000000399 2011_09_26 2011_09_26_drive_0009_sync 0000000401 2011_09_26 2011_09_26_drive_0009_sync 0000000415 2011_09_26 2011_09_26_drive_0009_sync 0000000417 2011_09_26 2011_09_26_drive_0011_sync 0000000001 2011_09_26 2011_09_26_drive_0011_sync 0000000002 2011_09_26 2011_09_26_drive_0011_sync 0000000003 2011_09_26 2011_09_26_drive_0011_sync 0000000004 2011_09_26 2011_09_26_drive_0011_sync 0000000005 2011_09_26 2011_09_26_drive_0011_sync 0000000006 2011_09_26 2011_09_26_drive_0011_sync 0000000007 2011_09_26 2011_09_26_drive_0011_sync 0000000025 2011_09_26 2011_09_26_drive_0011_sync 0000000026 2011_09_26 2011_09_26_drive_0011_sync 0000000027 2011_09_26 2011_09_26_drive_0011_sync 0000000028 2011_09_26 2011_09_26_drive_0011_sync 0000000029 2011_09_26 2011_09_26_drive_0011_sync 0000000030 2011_09_26 2011_09_26_drive_0011_sync 0000000031 2011_09_26 2011_09_26_drive_0011_sync 0000000032 2011_09_26 2011_09_26_drive_0011_sync 0000000033 2011_09_26 2011_09_26_drive_0011_sync 0000000034 2011_09_26 2011_09_26_drive_0011_sync 0000000035 2011_09_26 2011_09_26_drive_0011_sync 0000000036 2011_09_26 2011_09_26_drive_0011_sync 0000000037 2011_09_26 2011_09_26_drive_0011_sync 0000000038 2011_09_26 2011_09_26_drive_0011_sync 0000000039 2011_09_26 2011_09_26_drive_0011_sync 0000000040 2011_09_26 2011_09_26_drive_0011_sync 0000000041 2011_09_26 2011_09_26_drive_0011_sync 0000000042 2011_09_26 2011_09_26_drive_0011_sync 0000000043 2011_09_26 2011_09_26_drive_0011_sync 0000000044 2011_09_26 2011_09_26_drive_0011_sync 0000000045 2011_09_26 2011_09_26_drive_0011_sync 0000000046 2011_09_26 2011_09_26_drive_0011_sync 0000000047 2011_09_26 2011_09_26_drive_0011_sync 0000000048 2011_09_26 2011_09_26_drive_0011_sync 0000000049 2011_09_26 2011_09_26_drive_0011_sync 0000000050 2011_09_26 2011_09_26_drive_0011_sync 0000000051 2011_09_26 2011_09_26_drive_0011_sync 0000000052 2011_09_26 2011_09_26_drive_0011_sync 0000000053 2011_09_26 2011_09_26_drive_0011_sync 0000000054 2011_09_26 2011_09_26_drive_0011_sync 0000000055 2011_09_26 2011_09_26_drive_0011_sync 0000000056 2011_09_26 2011_09_26_drive_0011_sync 0000000057 2011_09_26 2011_09_26_drive_0011_sync 0000000058 2011_09_26 2011_09_26_drive_0011_sync 0000000059 2011_09_26 2011_09_26_drive_0011_sync 0000000060 2011_09_26 2011_09_26_drive_0011_sync 0000000061 2011_09_26 2011_09_26_drive_0011_sync 0000000062 2011_09_26 2011_09_26_drive_0011_sync 0000000063 2011_09_26 2011_09_26_drive_0011_sync 0000000064 2011_09_26 2011_09_26_drive_0011_sync 0000000065 2011_09_26 2011_09_26_drive_0011_sync 0000000066 2011_09_26 2011_09_26_drive_0011_sync 0000000067 2011_09_26 2011_09_26_drive_0011_sync 0000000068 2011_09_26 2011_09_26_drive_0011_sync 0000000070 2011_09_26 2011_09_26_drive_0011_sync 0000000072 2011_09_26 2011_09_26_drive_0011_sync 0000000074 2011_09_26 2011_09_26_drive_0011_sync 0000000076 2011_09_26 2011_09_26_drive_0011_sync 0000000078 2011_09_26 2011_09_26_drive_0011_sync 0000000080 2011_09_26 2011_09_26_drive_0011_sync 0000000082 2011_09_26 2011_09_26_drive_0011_sync 0000000084 2011_09_26 2011_09_26_drive_0011_sync 0000000086 2011_09_26 2011_09_26_drive_0011_sync 0000000088 2011_09_26 2011_09_26_drive_0011_sync 0000000090 2011_09_26 2011_09_26_drive_0011_sync 0000000092 2011_09_26 2011_09_26_drive_0011_sync 0000000094 2011_09_26 2011_09_26_drive_0011_sync 0000000096 2011_09_26 2011_09_26_drive_0011_sync 0000000098 2011_09_26 2011_09_26_drive_0011_sync 0000000100 2011_09_26 2011_09_26_drive_0011_sync 0000000102 2011_09_26 2011_09_26_drive_0011_sync 0000000105 2011_09_26 2011_09_26_drive_0011_sync 0000000108 2011_09_26 2011_09_26_drive_0011_sync 0000000111 2011_09_26 2011_09_26_drive_0011_sync 0000000114 2011_09_26 2011_09_26_drive_0011_sync 0000000118 2011_09_26 2011_09_26_drive_0011_sync 0000000123 2011_09_26 2011_09_26_drive_0011_sync 0000000126 2011_09_26 2011_09_26_drive_0011_sync 0000000131 2011_09_26 2011_09_26_drive_0011_sync 0000000136 2011_09_26 2011_09_26_drive_0011_sync 0000000141 2011_09_26 2011_09_26_drive_0011_sync 0000000146 2011_09_26 2011_09_26_drive_0011_sync 0000000150 2011_09_26 2011_09_26_drive_0011_sync 0000000154 2011_09_26 2011_09_26_drive_0011_sync 0000000159 2011_09_26 2011_09_26_drive_0011_sync 0000000164 2011_09_26 2011_09_26_drive_0011_sync 0000000169 2011_09_26 2011_09_26_drive_0011_sync 0000000179 2011_09_26 2011_09_26_drive_0011_sync 0000000189 2011_09_26 2011_09_26_drive_0011_sync 0000000197 2011_09_26 2011_09_26_drive_0011_sync 0000000206 2011_09_26 2011_09_26_drive_0011_sync 0000000215 2011_09_26 2011_09_26_drive_0013_sync 0000000007 2011_09_26 2011_09_26_drive_0013_sync 0000000011 2011_09_26 2011_09_26_drive_0013_sync 0000000029 2011_09_26 2011_09_26_drive_0013_sync 0000000032 2011_09_26 2011_09_26_drive_0013_sync 0000000035 2011_09_26 2011_09_26_drive_0013_sync 0000000038 2011_09_26 2011_09_26_drive_0013_sync 0000000041 2011_09_26 2011_09_26_drive_0013_sync 0000000044 2011_09_26 2011_09_26_drive_0013_sync 0000000047 2011_09_26 2011_09_26_drive_0013_sync 0000000050 2011_09_26 2011_09_26_drive_0013_sync 0000000053 2011_09_26 2011_09_26_drive_0013_sync 0000000056 2011_09_26 2011_09_26_drive_0013_sync 0000000059 2011_09_26 2011_09_26_drive_0013_sync 0000000062 2011_09_26 2011_09_26_drive_0013_sync 0000000065 2011_09_26 2011_09_26_drive_0013_sync 0000000089 2011_09_26 2011_09_26_drive_0013_sync 0000000093 2011_09_26 2011_09_26_drive_0013_sync 0000000097 2011_09_26 2011_09_26_drive_0013_sync 0000000101 2011_09_26 2011_09_26_drive_0013_sync 0000000105 2011_09_26 2011_09_26_drive_0013_sync 0000000108 2011_09_26 2011_09_26_drive_0013_sync 0000000111 2011_09_26 2011_09_26_drive_0013_sync 0000000137 2011_09_26 2011_09_26_drive_0014_sync 0000000002 2011_09_26 2011_09_26_drive_0014_sync 0000000004 2011_09_26 2011_09_26_drive_0014_sync 0000000006 2011_09_26 2011_09_26_drive_0014_sync 0000000008 2011_09_26 2011_09_26_drive_0014_sync 0000000014 2011_09_26 2011_09_26_drive_0014_sync 0000000016 2011_09_26 2011_09_26_drive_0014_sync 0000000018 2011_09_26 2011_09_26_drive_0014_sync 0000000020 2011_09_26 2011_09_26_drive_0014_sync 0000000021 2011_09_26 2011_09_26_drive_0014_sync 0000000022 2011_09_26 2011_09_26_drive_0014_sync 0000000023 2011_09_26 2011_09_26_drive_0014_sync 0000000024 2011_09_26 2011_09_26_drive_0014_sync 0000000028 2011_09_26 2011_09_26_drive_0014_sync 0000000029 2011_09_26 2011_09_26_drive_0014_sync 0000000030 2011_09_26 2011_09_26_drive_0014_sync 0000000031 2011_09_26 2011_09_26_drive_0014_sync 0000000032 2011_09_26 2011_09_26_drive_0014_sync 0000000033 2011_09_26 2011_09_26_drive_0014_sync 0000000034 2011_09_26 2011_09_26_drive_0014_sync 0000000035 2011_09_26 2011_09_26_drive_0014_sync 0000000036 2011_09_26 2011_09_26_drive_0014_sync 0000000037 2011_09_26 2011_09_26_drive_0014_sync 0000000038 2011_09_26 2011_09_26_drive_0014_sync 0000000039 2011_09_26 2011_09_26_drive_0014_sync 0000000041 2011_09_26 2011_09_26_drive_0014_sync 0000000043 2011_09_26 2011_09_26_drive_0014_sync 0000000045 2011_09_26 2011_09_26_drive_0014_sync 0000000046 2011_09_26 2011_09_26_drive_0014_sync 0000000048 2011_09_26 2011_09_26_drive_0014_sync 0000000050 2011_09_26 2011_09_26_drive_0014_sync 0000000052 2011_09_26 2011_09_26_drive_0014_sync 0000000053 2011_09_26 2011_09_26_drive_0014_sync 0000000055 2011_09_26 2011_09_26_drive_0014_sync 0000000057 2011_09_26 2011_09_26_drive_0014_sync 0000000058 2011_09_26 2011_09_26_drive_0014_sync 0000000059 2011_09_26 2011_09_26_drive_0014_sync 0000000061 2011_09_26 2011_09_26_drive_0014_sync 0000000063 2011_09_26 2011_09_26_drive_0014_sync 0000000065 2011_09_26 2011_09_26_drive_0014_sync 0000000067 2011_09_26 2011_09_26_drive_0014_sync 0000000068 2011_09_26 2011_09_26_drive_0014_sync 0000000069 2011_09_26 2011_09_26_drive_0014_sync 0000000070 2011_09_26 2011_09_26_drive_0014_sync 0000000071 2011_09_26 2011_09_26_drive_0014_sync 0000000072 2011_09_26 2011_09_26_drive_0014_sync 0000000073 2011_09_26 2011_09_26_drive_0014_sync 0000000074 2011_09_26 2011_09_26_drive_0014_sync 0000000075 2011_09_26 2011_09_26_drive_0014_sync 0000000077 2011_09_26 2011_09_26_drive_0014_sync 0000000078 2011_09_26 2011_09_26_drive_0014_sync 0000000079 2011_09_26 2011_09_26_drive_0014_sync 0000000080 2011_09_26 2011_09_26_drive_0014_sync 0000000081 2011_09_26 2011_09_26_drive_0014_sync 0000000082 2011_09_26 2011_09_26_drive_0014_sync 0000000083 2011_09_26 2011_09_26_drive_0014_sync 0000000084 2011_09_26 2011_09_26_drive_0014_sync 0000000085 2011_09_26 2011_09_26_drive_0014_sync 0000000086 2011_09_26 2011_09_26_drive_0014_sync 0000000087 2011_09_26 2011_09_26_drive_0014_sync 0000000088 2011_09_26 2011_09_26_drive_0014_sync 0000000089 2011_09_26 2011_09_26_drive_0014_sync 0000000090 2011_09_26 2011_09_26_drive_0014_sync 0000000091 2011_09_26 2011_09_26_drive_0014_sync 0000000092 2011_09_26 2011_09_26_drive_0014_sync 0000000093 2011_09_26 2011_09_26_drive_0014_sync 0000000094 2011_09_26 2011_09_26_drive_0014_sync 0000000095 2011_09_26 2011_09_26_drive_0014_sync 0000000096 2011_09_26 2011_09_26_drive_0014_sync 0000000097 2011_09_26 2011_09_26_drive_0014_sync 0000000098 2011_09_26 2011_09_26_drive_0014_sync 0000000099 2011_09_26 2011_09_26_drive_0014_sync 0000000100 2011_09_26 2011_09_26_drive_0014_sync 0000000101 2011_09_26 2011_09_26_drive_0014_sync 0000000102 2011_09_26 2011_09_26_drive_0014_sync 0000000103 2011_09_26 2011_09_26_drive_0014_sync 0000000104 2011_09_26 2011_09_26_drive_0014_sync 0000000105 2011_09_26 2011_09_26_drive_0014_sync 0000000106 2011_09_26 2011_09_26_drive_0014_sync 0000000107 2011_09_26 2011_09_26_drive_0014_sync 0000000108 2011_09_26 2011_09_26_drive_0014_sync 0000000109 2011_09_26 2011_09_26_drive_0014_sync 0000000110 2011_09_26 2011_09_26_drive_0014_sync 0000000111 2011_09_26 2011_09_26_drive_0014_sync 0000000112 2011_09_26 2011_09_26_drive_0014_sync 0000000113 2011_09_26 2011_09_26_drive_0014_sync 0000000114 2011_09_26 2011_09_26_drive_0014_sync 0000000115 2011_09_26 2011_09_26_drive_0014_sync 0000000116 2011_09_26 2011_09_26_drive_0014_sync 0000000117 2011_09_26 2011_09_26_drive_0014_sync 0000000118 2011_09_26 2011_09_26_drive_0014_sync 0000000119 2011_09_26 2011_09_26_drive_0014_sync 0000000120 2011_09_26 2011_09_26_drive_0014_sync 0000000121 2011_09_26 2011_09_26_drive_0014_sync 0000000122 2011_09_26 2011_09_26_drive_0014_sync 0000000123 2011_09_26 2011_09_26_drive_0014_sync 0000000124 2011_09_26 2011_09_26_drive_0014_sync 0000000125 2011_09_26 2011_09_26_drive_0014_sync 0000000126 2011_09_26 2011_09_26_drive_0014_sync 0000000127 2011_09_26 2011_09_26_drive_0014_sync 0000000128 2011_09_26 2011_09_26_drive_0014_sync 0000000129 2011_09_26 2011_09_26_drive_0014_sync 0000000130 2011_09_26 2011_09_26_drive_0014_sync 0000000131 2011_09_26 2011_09_26_drive_0014_sync 0000000132 2011_09_26 2011_09_26_drive_0014_sync 0000000133 2011_09_26 2011_09_26_drive_0014_sync 0000000134 2011_09_26 2011_09_26_drive_0014_sync 0000000135 2011_09_26 2011_09_26_drive_0014_sync 0000000136 2011_09_26 2011_09_26_drive_0014_sync 0000000137 2011_09_26 2011_09_26_drive_0014_sync 0000000138 2011_09_26 2011_09_26_drive_0014_sync 0000000139 2011_09_26 2011_09_26_drive_0014_sync 0000000140 2011_09_26 2011_09_26_drive_0014_sync 0000000141 2011_09_26 2011_09_26_drive_0014_sync 0000000142 2011_09_26 2011_09_26_drive_0014_sync 0000000143 2011_09_26 2011_09_26_drive_0014_sync 0000000144 2011_09_26 2011_09_26_drive_0014_sync 0000000145 2011_09_26 2011_09_26_drive_0014_sync 0000000146 2011_09_26 2011_09_26_drive_0014_sync 0000000147 2011_09_26 2011_09_26_drive_0014_sync 0000000148 2011_09_26 2011_09_26_drive_0014_sync 0000000149 2011_09_26 2011_09_26_drive_0014_sync 0000000150 2011_09_26 2011_09_26_drive_0014_sync 0000000151 2011_09_26 2011_09_26_drive_0014_sync 0000000152 2011_09_26 2011_09_26_drive_0014_sync 0000000153 2011_09_26 2011_09_26_drive_0014_sync 0000000154 2011_09_26 2011_09_26_drive_0014_sync 0000000155 2011_09_26 2011_09_26_drive_0014_sync 0000000156 2011_09_26 2011_09_26_drive_0014_sync 0000000157 2011_09_26 2011_09_26_drive_0014_sync 0000000158 2011_09_26 2011_09_26_drive_0014_sync 0000000159 2011_09_26 2011_09_26_drive_0014_sync 0000000160 2011_09_26 2011_09_26_drive_0014_sync 0000000161 2011_09_26 2011_09_26_drive_0014_sync 0000000162 2011_09_26 2011_09_26_drive_0014_sync 0000000163 2011_09_26 2011_09_26_drive_0014_sync 0000000164 2011_09_26 2011_09_26_drive_0014_sync 0000000165 2011_09_26 2011_09_26_drive_0014_sync 0000000166 2011_09_26 2011_09_26_drive_0014_sync 0000000167 2011_09_26 2011_09_26_drive_0014_sync 0000000168 2011_09_26 2011_09_26_drive_0014_sync 0000000169 2011_09_26 2011_09_26_drive_0014_sync 0000000170 2011_09_26 2011_09_26_drive_0014_sync 0000000171 2011_09_26 2011_09_26_drive_0014_sync 0000000172 2011_09_26 2011_09_26_drive_0014_sync 0000000173 2011_09_26 2011_09_26_drive_0014_sync 0000000174 2011_09_26 2011_09_26_drive_0014_sync 0000000175 2011_09_26 2011_09_26_drive_0014_sync 0000000176 2011_09_26 2011_09_26_drive_0014_sync 0000000177 2011_09_26 2011_09_26_drive_0014_sync 0000000178 2011_09_26 2011_09_26_drive_0014_sync 0000000179 2011_09_26 2011_09_26_drive_0014_sync 0000000180 2011_09_26 2011_09_26_drive_0014_sync 0000000181 2011_09_26 2011_09_26_drive_0014_sync 0000000182 2011_09_26 2011_09_26_drive_0014_sync 0000000183 2011_09_26 2011_09_26_drive_0014_sync 0000000184 2011_09_26 2011_09_26_drive_0014_sync 0000000185 2011_09_26 2011_09_26_drive_0014_sync 0000000186 2011_09_26 2011_09_26_drive_0014_sync 0000000187 2011_09_26 2011_09_26_drive_0014_sync 0000000188 2011_09_26 2011_09_26_drive_0014_sync 0000000189 2011_09_26 2011_09_26_drive_0014_sync 0000000190 2011_09_26 2011_09_26_drive_0014_sync 0000000191 2011_09_26 2011_09_26_drive_0014_sync 0000000192 2011_09_26 2011_09_26_drive_0014_sync 0000000193 2011_09_26 2011_09_26_drive_0014_sync 0000000194 2011_09_26 2011_09_26_drive_0014_sync 0000000195 2011_09_26 2011_09_26_drive_0014_sync 0000000196 2011_09_26 2011_09_26_drive_0014_sync 0000000197 2011_09_26 2011_09_26_drive_0014_sync 0000000198 2011_09_26 2011_09_26_drive_0014_sync 0000000199 2011_09_26 2011_09_26_drive_0014_sync 0000000200 2011_09_26 2011_09_26_drive_0014_sync 0000000201 2011_09_26 2011_09_26_drive_0014_sync 0000000202 2011_09_26 2011_09_26_drive_0014_sync 0000000203 2011_09_26 2011_09_26_drive_0014_sync 0000000204 2011_09_26 2011_09_26_drive_0014_sync 0000000205 2011_09_26 2011_09_26_drive_0014_sync 0000000206 2011_09_26 2011_09_26_drive_0014_sync 0000000207 2011_09_26 2011_09_26_drive_0014_sync 0000000208 2011_09_26 2011_09_26_drive_0014_sync 0000000209 2011_09_26 2011_09_26_drive_0014_sync 0000000210 2011_09_26 2011_09_26_drive_0014_sync 0000000211 2011_09_26 2011_09_26_drive_0014_sync 0000000212 2011_09_26 2011_09_26_drive_0014_sync 0000000213 2011_09_26 2011_09_26_drive_0014_sync 0000000214 2011_09_26 2011_09_26_drive_0014_sync 0000000215 2011_09_26 2011_09_26_drive_0014_sync 0000000216 2011_09_26 2011_09_26_drive_0014_sync 0000000217 2011_09_26 2011_09_26_drive_0014_sync 0000000218 2011_09_26 2011_09_26_drive_0014_sync 0000000219 2011_09_26 2011_09_26_drive_0014_sync 0000000220 2011_09_26 2011_09_26_drive_0014_sync 0000000221 2011_09_26 2011_09_26_drive_0014_sync 0000000222 2011_09_26 2011_09_26_drive_0014_sync 0000000223 2011_09_26 2011_09_26_drive_0014_sync 0000000224 2011_09_26 2011_09_26_drive_0014_sync 0000000225 2011_09_26 2011_09_26_drive_0014_sync 0000000226 2011_09_26 2011_09_26_drive_0014_sync 0000000227 2011_09_26 2011_09_26_drive_0014_sync 0000000228 2011_09_26 2011_09_26_drive_0014_sync 0000000229 2011_09_26 2011_09_26_drive_0014_sync 0000000230 2011_09_26 2011_09_26_drive_0014_sync 0000000231 2011_09_26 2011_09_26_drive_0014_sync 0000000232 2011_09_26 2011_09_26_drive_0014_sync 0000000233 2011_09_26 2011_09_26_drive_0014_sync 0000000234 2011_09_26 2011_09_26_drive_0014_sync 0000000235 2011_09_26 2011_09_26_drive_0014_sync 0000000236 2011_09_26 2011_09_26_drive_0014_sync 0000000237 2011_09_26 2011_09_26_drive_0014_sync 0000000238 2011_09_26 2011_09_26_drive_0014_sync 0000000239 2011_09_26 2011_09_26_drive_0014_sync 0000000240 2011_09_26 2011_09_26_drive_0014_sync 0000000241 2011_09_26 2011_09_26_drive_0014_sync 0000000242 2011_09_26 2011_09_26_drive_0014_sync 0000000243 2011_09_26 2011_09_26_drive_0014_sync 0000000244 2011_09_26 2011_09_26_drive_0014_sync 0000000245 2011_09_26 2011_09_26_drive_0014_sync 0000000246 2011_09_26 2011_09_26_drive_0014_sync 0000000247 2011_09_26 2011_09_26_drive_0014_sync 0000000248 2011_09_26 2011_09_26_drive_0014_sync 0000000249 2011_09_26 2011_09_26_drive_0014_sync 0000000250 2011_09_26 2011_09_26_drive_0014_sync 0000000257 2011_09_26 2011_09_26_drive_0014_sync 0000000263 2011_09_26 2011_09_26_drive_0014_sync 0000000269 2011_09_26 2011_09_26_drive_0014_sync 0000000276 2011_09_26 2011_09_26_drive_0014_sync 0000000292 2011_09_26 2011_09_26_drive_0014_sync 0000000294 2011_09_26 2011_09_26_drive_0014_sync 0000000296 2011_09_26 2011_09_26_drive_0014_sync 0000000298 2011_09_26 2011_09_26_drive_0014_sync 0000000300 2011_09_26 2011_09_26_drive_0014_sync 0000000302 2011_09_26 2011_09_26_drive_0014_sync 0000000304 2011_09_26 2011_09_26_drive_0014_sync 0000000306 2011_09_26 2011_09_26_drive_0014_sync 0000000308 2011_09_26 2011_09_26_drive_0015_sync 0000000001 2011_09_26 2011_09_26_drive_0015_sync 0000000002 2011_09_26 2011_09_26_drive_0015_sync 0000000003 2011_09_26 2011_09_26_drive_0015_sync 0000000004 2011_09_26 2011_09_26_drive_0015_sync 0000000005 2011_09_26 2011_09_26_drive_0015_sync 0000000006 2011_09_26 2011_09_26_drive_0015_sync 0000000007 2011_09_26 2011_09_26_drive_0015_sync 0000000008 2011_09_26 2011_09_26_drive_0015_sync 0000000009 2011_09_26 2011_09_26_drive_0015_sync 0000000010 2011_09_26 2011_09_26_drive_0015_sync 0000000011 2011_09_26 2011_09_26_drive_0015_sync 0000000012 2011_09_26 2011_09_26_drive_0015_sync 0000000013 2011_09_26 2011_09_26_drive_0015_sync 0000000014 2011_09_26 2011_09_26_drive_0015_sync 0000000015 2011_09_26 2011_09_26_drive_0015_sync 0000000016 2011_09_26 2011_09_26_drive_0015_sync 0000000017 2011_09_26 2011_09_26_drive_0015_sync 0000000018 2011_09_26 2011_09_26_drive_0015_sync 0000000019 2011_09_26 2011_09_26_drive_0015_sync 0000000020 2011_09_26 2011_09_26_drive_0015_sync 0000000021 2011_09_26 2011_09_26_drive_0015_sync 0000000022 2011_09_26 2011_09_26_drive_0015_sync 0000000023 2011_09_26 2011_09_26_drive_0015_sync 0000000025 2011_09_26 2011_09_26_drive_0015_sync 0000000027 2011_09_26 2011_09_26_drive_0015_sync 0000000028 2011_09_26 2011_09_26_drive_0015_sync 0000000029 2011_09_26 2011_09_26_drive_0015_sync 0000000030 2011_09_26 2011_09_26_drive_0015_sync 0000000031 2011_09_26 2011_09_26_drive_0015_sync 0000000032 2011_09_26 2011_09_26_drive_0015_sync 0000000033 2011_09_26 2011_09_26_drive_0015_sync 0000000034 2011_09_26 2011_09_26_drive_0015_sync 0000000035 2011_09_26 2011_09_26_drive_0015_sync 0000000036 2011_09_26 2011_09_26_drive_0015_sync 0000000037 2011_09_26 2011_09_26_drive_0015_sync 0000000038 2011_09_26 2011_09_26_drive_0015_sync 0000000039 2011_09_26 2011_09_26_drive_0015_sync 0000000040 2011_09_26 2011_09_26_drive_0015_sync 0000000041 2011_09_26 2011_09_26_drive_0015_sync 0000000042 2011_09_26 2011_09_26_drive_0015_sync 0000000044 2011_09_26 2011_09_26_drive_0015_sync 0000000045 2011_09_26 2011_09_26_drive_0015_sync 0000000046 2011_09_26 2011_09_26_drive_0015_sync 0000000047 2011_09_26 2011_09_26_drive_0015_sync 0000000049 2011_09_26 2011_09_26_drive_0015_sync 0000000050 2011_09_26 2011_09_26_drive_0015_sync 0000000051 2011_09_26 2011_09_26_drive_0015_sync 0000000052 2011_09_26 2011_09_26_drive_0015_sync 0000000053 2011_09_26 2011_09_26_drive_0015_sync 0000000054 2011_09_26 2011_09_26_drive_0015_sync 0000000055 2011_09_26 2011_09_26_drive_0015_sync 0000000056 2011_09_26 2011_09_26_drive_0015_sync 0000000057 2011_09_26 2011_09_26_drive_0015_sync 0000000058 2011_09_26 2011_09_26_drive_0015_sync 0000000060 2011_09_26 2011_09_26_drive_0015_sync 0000000062 2011_09_26 2011_09_26_drive_0015_sync 0000000064 2011_09_26 2011_09_26_drive_0015_sync 0000000066 2011_09_26 2011_09_26_drive_0015_sync 0000000068 2011_09_26 2011_09_26_drive_0015_sync 0000000070 2011_09_26 2011_09_26_drive_0015_sync 0000000072 2011_09_26 2011_09_26_drive_0015_sync 0000000074 2011_09_26 2011_09_26_drive_0015_sync 0000000076 2011_09_26 2011_09_26_drive_0015_sync 0000000078 2011_09_26 2011_09_26_drive_0015_sync 0000000080 2011_09_26 2011_09_26_drive_0015_sync 0000000082 2011_09_26 2011_09_26_drive_0015_sync 0000000084 2011_09_26 2011_09_26_drive_0015_sync 0000000086 2011_09_26 2011_09_26_drive_0015_sync 0000000088 2011_09_26 2011_09_26_drive_0015_sync 0000000090 2011_09_26 2011_09_26_drive_0015_sync 0000000092 2011_09_26 2011_09_26_drive_0015_sync 0000000094 2011_09_26 2011_09_26_drive_0015_sync 0000000096 2011_09_26 2011_09_26_drive_0015_sync 0000000098 2011_09_26 2011_09_26_drive_0015_sync 0000000100 2011_09_26 2011_09_26_drive_0015_sync 0000000103 2011_09_26 2011_09_26_drive_0015_sync 0000000106 2011_09_26 2011_09_26_drive_0015_sync 0000000109 2011_09_26 2011_09_26_drive_0015_sync 0000000112 2011_09_26 2011_09_26_drive_0015_sync 0000000116 2011_09_26 2011_09_26_drive_0015_sync 0000000124 2011_09_26 2011_09_26_drive_0015_sync 0000000133 2011_09_26 2011_09_26_drive_0015_sync 0000000140 2011_09_26 2011_09_26_drive_0015_sync 0000000142 2011_09_26 2011_09_26_drive_0015_sync 0000000144 2011_09_26 2011_09_26_drive_0015_sync 0000000146 2011_09_26 2011_09_26_drive_0015_sync 0000000148 2011_09_26 2011_09_26_drive_0015_sync 0000000150 2011_09_26 2011_09_26_drive_0015_sync 0000000152 2011_09_26 2011_09_26_drive_0015_sync 0000000154 2011_09_26 2011_09_26_drive_0015_sync 0000000156 2011_09_26 2011_09_26_drive_0015_sync 0000000158 2011_09_26 2011_09_26_drive_0015_sync 0000000160 2011_09_26 2011_09_26_drive_0015_sync 0000000162 2011_09_26 2011_09_26_drive_0015_sync 0000000164 2011_09_26 2011_09_26_drive_0015_sync 0000000166 2011_09_26 2011_09_26_drive_0015_sync 0000000167 2011_09_26 2011_09_26_drive_0015_sync 0000000168 2011_09_26 2011_09_26_drive_0015_sync 0000000169 2011_09_26 2011_09_26_drive_0015_sync 0000000170 2011_09_26 2011_09_26_drive_0015_sync 0000000172 2011_09_26 2011_09_26_drive_0015_sync 0000000174 2011_09_26 2011_09_26_drive_0015_sync 0000000176 2011_09_26 2011_09_26_drive_0015_sync 0000000178 2011_09_26 2011_09_26_drive_0015_sync 0000000180 2011_09_26 2011_09_26_drive_0015_sync 0000000182 2011_09_26 2011_09_26_drive_0015_sync 0000000183 2011_09_26 2011_09_26_drive_0015_sync 0000000184 2011_09_26 2011_09_26_drive_0015_sync 0000000185 2011_09_26 2011_09_26_drive_0015_sync 0000000186 2011_09_26 2011_09_26_drive_0015_sync 0000000187 2011_09_26 2011_09_26_drive_0015_sync 0000000188 2011_09_26 2011_09_26_drive_0015_sync 0000000189 2011_09_26 2011_09_26_drive_0015_sync 0000000190 2011_09_26 2011_09_26_drive_0015_sync 0000000191 2011_09_26 2011_09_26_drive_0015_sync 0000000192 2011_09_26 2011_09_26_drive_0015_sync 0000000193 2011_09_26 2011_09_26_drive_0015_sync 0000000194 2011_09_26 2011_09_26_drive_0015_sync 0000000195 2011_09_26 2011_09_26_drive_0015_sync 0000000196 2011_09_26 2011_09_26_drive_0015_sync 0000000197 2011_09_26 2011_09_26_drive_0015_sync 0000000198 2011_09_26 2011_09_26_drive_0015_sync 0000000199 2011_09_26 2011_09_26_drive_0015_sync 0000000200 2011_09_26 2011_09_26_drive_0015_sync 0000000201 2011_09_26 2011_09_26_drive_0015_sync 0000000202 2011_09_26 2011_09_26_drive_0015_sync 0000000203 2011_09_26 2011_09_26_drive_0015_sync 0000000204 2011_09_26 2011_09_26_drive_0015_sync 0000000205 2011_09_26 2011_09_26_drive_0015_sync 0000000206 2011_09_26 2011_09_26_drive_0015_sync 0000000207 2011_09_26 2011_09_26_drive_0015_sync 0000000208 2011_09_26 2011_09_26_drive_0015_sync 0000000209 2011_09_26 2011_09_26_drive_0015_sync 0000000210 2011_09_26 2011_09_26_drive_0015_sync 0000000211 2011_09_26 2011_09_26_drive_0015_sync 0000000212 2011_09_26 2011_09_26_drive_0015_sync 0000000213 2011_09_26 2011_09_26_drive_0015_sync 0000000214 2011_09_26 2011_09_26_drive_0015_sync 0000000215 2011_09_26 2011_09_26_drive_0015_sync 0000000216 2011_09_26 2011_09_26_drive_0015_sync 0000000217 2011_09_26 2011_09_26_drive_0015_sync 0000000218 2011_09_26 2011_09_26_drive_0015_sync 0000000219 2011_09_26 2011_09_26_drive_0015_sync 0000000220 2011_09_26 2011_09_26_drive_0015_sync 0000000221 2011_09_26 2011_09_26_drive_0015_sync 0000000222 2011_09_26 2011_09_26_drive_0015_sync 0000000223 2011_09_26 2011_09_26_drive_0015_sync 0000000224 2011_09_26 2011_09_26_drive_0015_sync 0000000225 2011_09_26 2011_09_26_drive_0015_sync 0000000226 2011_09_26 2011_09_26_drive_0015_sync 0000000227 2011_09_26 2011_09_26_drive_0015_sync 0000000228 2011_09_26 2011_09_26_drive_0015_sync 0000000229 2011_09_26 2011_09_26_drive_0015_sync 0000000230 2011_09_26 2011_09_26_drive_0015_sync 0000000231 2011_09_26 2011_09_26_drive_0015_sync 0000000232 2011_09_26 2011_09_26_drive_0015_sync 0000000233 2011_09_26 2011_09_26_drive_0015_sync 0000000234 2011_09_26 2011_09_26_drive_0015_sync 0000000235 2011_09_26 2011_09_26_drive_0015_sync 0000000236 2011_09_26 2011_09_26_drive_0015_sync 0000000237 2011_09_26 2011_09_26_drive_0015_sync 0000000238 2011_09_26 2011_09_26_drive_0015_sync 0000000239 2011_09_26 2011_09_26_drive_0015_sync 0000000240 2011_09_26 2011_09_26_drive_0015_sync 0000000241 2011_09_26 2011_09_26_drive_0015_sync 0000000242 2011_09_26 2011_09_26_drive_0015_sync 0000000243 2011_09_26 2011_09_26_drive_0015_sync 0000000244 2011_09_26 2011_09_26_drive_0015_sync 0000000245 2011_09_26 2011_09_26_drive_0015_sync 0000000246 2011_09_26 2011_09_26_drive_0015_sync 0000000247 2011_09_26 2011_09_26_drive_0015_sync 0000000248 2011_09_26 2011_09_26_drive_0015_sync 0000000249 2011_09_26 2011_09_26_drive_0015_sync 0000000250 2011_09_26 2011_09_26_drive_0015_sync 0000000251 2011_09_26 2011_09_26_drive_0015_sync 0000000252 2011_09_26 2011_09_26_drive_0015_sync 0000000253 2011_09_26 2011_09_26_drive_0015_sync 0000000254 2011_09_26 2011_09_26_drive_0015_sync 0000000255 2011_09_26 2011_09_26_drive_0015_sync 0000000256 2011_09_26 2011_09_26_drive_0015_sync 0000000257 2011_09_26 2011_09_26_drive_0015_sync 0000000258 2011_09_26 2011_09_26_drive_0015_sync 0000000259 2011_09_26 2011_09_26_drive_0015_sync 0000000260 2011_09_26 2011_09_26_drive_0015_sync 0000000261 2011_09_26 2011_09_26_drive_0015_sync 0000000262 2011_09_26 2011_09_26_drive_0015_sync 0000000263 2011_09_26 2011_09_26_drive_0015_sync 0000000264 2011_09_26 2011_09_26_drive_0015_sync 0000000265 2011_09_26 2011_09_26_drive_0015_sync 0000000266 2011_09_26 2011_09_26_drive_0015_sync 0000000267 2011_09_26 2011_09_26_drive_0015_sync 0000000268 2011_09_26 2011_09_26_drive_0015_sync 0000000269 2011_09_26 2011_09_26_drive_0015_sync 0000000270 2011_09_26 2011_09_26_drive_0015_sync 0000000271 2011_09_26 2011_09_26_drive_0015_sync 0000000272 2011_09_26 2011_09_26_drive_0015_sync 0000000273 2011_09_26 2011_09_26_drive_0015_sync 0000000274 2011_09_26 2011_09_26_drive_0015_sync 0000000275 2011_09_26 2011_09_26_drive_0015_sync 0000000276 2011_09_26 2011_09_26_drive_0015_sync 0000000277 2011_09_26 2011_09_26_drive_0015_sync 0000000278 2011_09_26 2011_09_26_drive_0015_sync 0000000279 2011_09_26 2011_09_26_drive_0015_sync 0000000280 2011_09_26 2011_09_26_drive_0015_sync 0000000281 2011_09_26 2011_09_26_drive_0015_sync 0000000282 2011_09_26 2011_09_26_drive_0015_sync 0000000283 2011_09_26 2011_09_26_drive_0015_sync 0000000284 2011_09_26 2011_09_26_drive_0015_sync 0000000285 2011_09_26 2011_09_26_drive_0015_sync 0000000286 2011_09_26 2011_09_26_drive_0015_sync 0000000287 2011_09_26 2011_09_26_drive_0015_sync 0000000288 2011_09_26 2011_09_26_drive_0015_sync 0000000289 2011_09_26 2011_09_26_drive_0015_sync 0000000290 2011_09_26 2011_09_26_drive_0015_sync 0000000291 2011_09_26 2011_09_26_drive_0018_sync 0000000002 2011_09_26 2011_09_26_drive_0018_sync 0000000007 2011_09_26 2011_09_26_drive_0018_sync 0000000008 2011_09_26 2011_09_26_drive_0018_sync 0000000009 2011_09_26 2011_09_26_drive_0018_sync 0000000010 2011_09_26 2011_09_26_drive_0018_sync 0000000011 2011_09_26 2011_09_26_drive_0018_sync 0000000012 2011_09_26 2011_09_26_drive_0018_sync 0000000013 2011_09_26 2011_09_26_drive_0018_sync 0000000017 2011_09_26 2011_09_26_drive_0018_sync 0000000018 2011_09_26 2011_09_26_drive_0018_sync 0000000019 2011_09_26 2011_09_26_drive_0018_sync 0000000020 2011_09_26 2011_09_26_drive_0018_sync 0000000021 2011_09_26 2011_09_26_drive_0018_sync 0000000022 2011_09_26 2011_09_26_drive_0018_sync 0000000023 2011_09_26 2011_09_26_drive_0018_sync 0000000024 2011_09_26 2011_09_26_drive_0018_sync 0000000025 2011_09_26 2011_09_26_drive_0018_sync 0000000026 2011_09_26 2011_09_26_drive_0018_sync 0000000027 2011_09_26 2011_09_26_drive_0018_sync 0000000028 2011_09_26 2011_09_26_drive_0018_sync 0000000029 2011_09_26 2011_09_26_drive_0018_sync 0000000030 2011_09_26 2011_09_26_drive_0018_sync 0000000031 2011_09_26 2011_09_26_drive_0018_sync 0000000032 2011_09_26 2011_09_26_drive_0018_sync 0000000033 2011_09_26 2011_09_26_drive_0018_sync 0000000034 2011_09_26 2011_09_26_drive_0018_sync 0000000035 2011_09_26 2011_09_26_drive_0018_sync 0000000037 2011_09_26 2011_09_26_drive_0018_sync 0000000039 2011_09_26 2011_09_26_drive_0018_sync 0000000040 2011_09_26 2011_09_26_drive_0018_sync 0000000041 2011_09_26 2011_09_26_drive_0018_sync 0000000043 2011_09_26 2011_09_26_drive_0018_sync 0000000045 2011_09_26 2011_09_26_drive_0018_sync 0000000046 2011_09_26 2011_09_26_drive_0018_sync 0000000048 2011_09_26 2011_09_26_drive_0018_sync 0000000050 2011_09_26 2011_09_26_drive_0018_sync 0000000052 2011_09_26 2011_09_26_drive_0018_sync 0000000054 2011_09_26 2011_09_26_drive_0018_sync 0000000056 2011_09_26 2011_09_26_drive_0018_sync 0000000058 2011_09_26 2011_09_26_drive_0018_sync 0000000060 2011_09_26 2011_09_26_drive_0018_sync 0000000062 2011_09_26 2011_09_26_drive_0018_sync 0000000063 2011_09_26 2011_09_26_drive_0018_sync 0000000064 2011_09_26 2011_09_26_drive_0018_sync 0000000065 2011_09_26 2011_09_26_drive_0018_sync 0000000066 2011_09_26 2011_09_26_drive_0018_sync 0000000067 2011_09_26 2011_09_26_drive_0018_sync 0000000068 2011_09_26 2011_09_26_drive_0018_sync 0000000069 2011_09_26 2011_09_26_drive_0018_sync 0000000071 2011_09_26 2011_09_26_drive_0018_sync 0000000072 2011_09_26 2011_09_26_drive_0018_sync 0000000073 2011_09_26 2011_09_26_drive_0018_sync 0000000074 2011_09_26 2011_09_26_drive_0018_sync 0000000075 2011_09_26 2011_09_26_drive_0018_sync 0000000076 2011_09_26 2011_09_26_drive_0018_sync 0000000077 2011_09_26 2011_09_26_drive_0018_sync 0000000078 2011_09_26 2011_09_26_drive_0018_sync 0000000079 2011_09_26 2011_09_26_drive_0018_sync 0000000080 2011_09_26 2011_09_26_drive_0018_sync 0000000081 2011_09_26 2011_09_26_drive_0018_sync 0000000082 2011_09_26 2011_09_26_drive_0018_sync 0000000083 2011_09_26 2011_09_26_drive_0018_sync 0000000084 2011_09_26 2011_09_26_drive_0018_sync 0000000085 2011_09_26 2011_09_26_drive_0018_sync 0000000087 2011_09_26 2011_09_26_drive_0018_sync 0000000088 2011_09_26 2011_09_26_drive_0018_sync 0000000089 2011_09_26 2011_09_26_drive_0018_sync 0000000090 2011_09_26 2011_09_26_drive_0018_sync 0000000091 2011_09_26 2011_09_26_drive_0018_sync 0000000092 2011_09_26 2011_09_26_drive_0018_sync 0000000093 2011_09_26 2011_09_26_drive_0018_sync 0000000094 2011_09_26 2011_09_26_drive_0018_sync 0000000095 2011_09_26 2011_09_26_drive_0018_sync 0000000096 2011_09_26 2011_09_26_drive_0018_sync 0000000097 2011_09_26 2011_09_26_drive_0018_sync 0000000098 2011_09_26 2011_09_26_drive_0018_sync 0000000099 2011_09_26 2011_09_26_drive_0018_sync 0000000100 2011_09_26 2011_09_26_drive_0018_sync 0000000101 2011_09_26 2011_09_26_drive_0018_sync 0000000103 2011_09_26 2011_09_26_drive_0018_sync 0000000104 2011_09_26 2011_09_26_drive_0018_sync 0000000105 2011_09_26 2011_09_26_drive_0018_sync 0000000106 2011_09_26 2011_09_26_drive_0018_sync 0000000107 2011_09_26 2011_09_26_drive_0018_sync 0000000108 2011_09_26 2011_09_26_drive_0018_sync 0000000109 2011_09_26 2011_09_26_drive_0018_sync 0000000110 2011_09_26 2011_09_26_drive_0018_sync 0000000111 2011_09_26 2011_09_26_drive_0018_sync 0000000112 2011_09_26 2011_09_26_drive_0018_sync 0000000113 2011_09_26 2011_09_26_drive_0018_sync 0000000114 2011_09_26 2011_09_26_drive_0018_sync 0000000116 2011_09_26 2011_09_26_drive_0018_sync 0000000117 2011_09_26 2011_09_26_drive_0018_sync 0000000118 2011_09_26 2011_09_26_drive_0018_sync 0000000119 2011_09_26 2011_09_26_drive_0018_sync 0000000120 2011_09_26 2011_09_26_drive_0018_sync 0000000121 2011_09_26 2011_09_26_drive_0018_sync 0000000122 2011_09_26 2011_09_26_drive_0018_sync 0000000124 2011_09_26 2011_09_26_drive_0018_sync 0000000125 2011_09_26 2011_09_26_drive_0018_sync 0000000126 2011_09_26 2011_09_26_drive_0018_sync 0000000127 2011_09_26 2011_09_26_drive_0018_sync 0000000128 2011_09_26 2011_09_26_drive_0018_sync 0000000129 2011_09_26 2011_09_26_drive_0018_sync 0000000130 2011_09_26 2011_09_26_drive_0018_sync 0000000131 2011_09_26 2011_09_26_drive_0018_sync 0000000132 2011_09_26 2011_09_26_drive_0018_sync 0000000133 2011_09_26 2011_09_26_drive_0018_sync 0000000134 2011_09_26 2011_09_26_drive_0018_sync 0000000135 2011_09_26 2011_09_26_drive_0018_sync 0000000136 2011_09_26 2011_09_26_drive_0018_sync 0000000137 2011_09_26 2011_09_26_drive_0018_sync 0000000138 2011_09_26 2011_09_26_drive_0018_sync 0000000139 2011_09_26 2011_09_26_drive_0018_sync 0000000140 2011_09_26 2011_09_26_drive_0018_sync 0000000141 2011_09_26 2011_09_26_drive_0018_sync 0000000142 2011_09_26 2011_09_26_drive_0018_sync 0000000143 2011_09_26 2011_09_26_drive_0018_sync 0000000144 2011_09_26 2011_09_26_drive_0018_sync 0000000146 2011_09_26 2011_09_26_drive_0018_sync 0000000148 2011_09_26 2011_09_26_drive_0018_sync 0000000150 2011_09_26 2011_09_26_drive_0018_sync 0000000152 2011_09_26 2011_09_26_drive_0018_sync 0000000154 2011_09_26 2011_09_26_drive_0018_sync 0000000156 2011_09_26 2011_09_26_drive_0018_sync 0000000158 2011_09_26 2011_09_26_drive_0018_sync 0000000160 2011_09_26 2011_09_26_drive_0018_sync 0000000162 2011_09_26 2011_09_26_drive_0018_sync 0000000164 2011_09_26 2011_09_26_drive_0018_sync 0000000166 2011_09_26 2011_09_26_drive_0018_sync 0000000168 2011_09_26 2011_09_26_drive_0018_sync 0000000170 2011_09_26 2011_09_26_drive_0018_sync 0000000172 2011_09_26 2011_09_26_drive_0018_sync 0000000174 2011_09_26 2011_09_26_drive_0018_sync 0000000176 2011_09_26 2011_09_26_drive_0018_sync 0000000178 2011_09_26 2011_09_26_drive_0018_sync 0000000180 2011_09_26 2011_09_26_drive_0018_sync 0000000182 2011_09_26 2011_09_26_drive_0018_sync 0000000185 2011_09_26 2011_09_26_drive_0018_sync 0000000190 2011_09_26 2011_09_26_drive_0018_sync 0000000194 2011_09_26 2011_09_26_drive_0018_sync 0000000198 2011_09_26 2011_09_26_drive_0018_sync 0000000201 2011_09_26 2011_09_26_drive_0018_sync 0000000204 2011_09_26 2011_09_26_drive_0018_sync 0000000207 2011_09_26 2011_09_26_drive_0018_sync 0000000209 2011_09_26 2011_09_26_drive_0018_sync 0000000211 2011_09_26 2011_09_26_drive_0018_sync 0000000213 2011_09_26 2011_09_26_drive_0018_sync 0000000215 2011_09_26 2011_09_26_drive_0018_sync 0000000216 2011_09_26 2011_09_26_drive_0018_sync 0000000217 2011_09_26 2011_09_26_drive_0018_sync 0000000218 2011_09_26 2011_09_26_drive_0018_sync 0000000219 2011_09_26 2011_09_26_drive_0018_sync 0000000220 2011_09_26 2011_09_26_drive_0028_sync 0000000057 2011_09_26 2011_09_26_drive_0028_sync 0000000058 2011_09_26 2011_09_26_drive_0028_sync 0000000059 2011_09_26 2011_09_26_drive_0028_sync 0000000060 2011_09_26 2011_09_26_drive_0028_sync 0000000061 2011_09_26 2011_09_26_drive_0028_sync 0000000062 2011_09_26 2011_09_26_drive_0028_sync 0000000063 2011_09_26 2011_09_26_drive_0028_sync 0000000064 2011_09_26 2011_09_26_drive_0028_sync 0000000065 2011_09_26 2011_09_26_drive_0028_sync 0000000066 2011_09_26 2011_09_26_drive_0028_sync 0000000067 2011_09_26 2011_09_26_drive_0028_sync 0000000068 2011_09_26 2011_09_26_drive_0028_sync 0000000069 2011_09_26 2011_09_26_drive_0028_sync 0000000070 2011_09_26 2011_09_26_drive_0028_sync 0000000071 2011_09_26 2011_09_26_drive_0028_sync 0000000072 2011_09_26 2011_09_26_drive_0028_sync 0000000073 2011_09_26 2011_09_26_drive_0028_sync 0000000074 2011_09_26 2011_09_26_drive_0028_sync 0000000102 2011_09_26 2011_09_26_drive_0028_sync 0000000103 2011_09_26 2011_09_26_drive_0028_sync 0000000104 2011_09_26 2011_09_26_drive_0028_sync 0000000105 2011_09_26 2011_09_26_drive_0028_sync 0000000106 2011_09_26 2011_09_26_drive_0028_sync 0000000107 2011_09_26 2011_09_26_drive_0028_sync 0000000108 2011_09_26 2011_09_26_drive_0028_sync 0000000109 2011_09_26 2011_09_26_drive_0028_sync 0000000110 2011_09_26 2011_09_26_drive_0028_sync 0000000111 2011_09_26 2011_09_26_drive_0028_sync 0000000112 2011_09_26 2011_09_26_drive_0028_sync 0000000113 2011_09_26 2011_09_26_drive_0028_sync 0000000114 2011_09_26 2011_09_26_drive_0028_sync 0000000115 2011_09_26 2011_09_26_drive_0028_sync 0000000116 2011_09_26 2011_09_26_drive_0028_sync 0000000117 2011_09_26 2011_09_26_drive_0028_sync 0000000118 2011_09_26 2011_09_26_drive_0028_sync 0000000119 2011_09_26 2011_09_26_drive_0028_sync 0000000120 2011_09_26 2011_09_26_drive_0028_sync 0000000216 2011_09_26 2011_09_26_drive_0028_sync 0000000217 2011_09_26 2011_09_26_drive_0028_sync 0000000218 2011_09_26 2011_09_26_drive_0028_sync 0000000219 2011_09_26 2011_09_26_drive_0028_sync 0000000220 2011_09_26 2011_09_26_drive_0028_sync 0000000221 2011_09_26 2011_09_26_drive_0028_sync 0000000222 2011_09_26 2011_09_26_drive_0028_sync 0000000223 2011_09_26 2011_09_26_drive_0028_sync 0000000224 2011_09_26 2011_09_26_drive_0028_sync 0000000225 2011_09_26 2011_09_26_drive_0028_sync 0000000226 2011_09_26 2011_09_26_drive_0028_sync 0000000227 2011_09_26 2011_09_26_drive_0028_sync 0000000228 2011_09_26 2011_09_26_drive_0028_sync 0000000229 2011_09_26 2011_09_26_drive_0028_sync 0000000230 2011_09_26 2011_09_26_drive_0028_sync 0000000231 2011_09_26 2011_09_26_drive_0028_sync 0000000232 2011_09_26 2011_09_26_drive_0028_sync 0000000233 2011_09_26 2011_09_26_drive_0028_sync 0000000255 2011_09_26 2011_09_26_drive_0028_sync 0000000256 2011_09_26 2011_09_26_drive_0028_sync 0000000257 2011_09_26 2011_09_26_drive_0028_sync 0000000258 2011_09_26 2011_09_26_drive_0028_sync 0000000259 2011_09_26 2011_09_26_drive_0028_sync 0000000260 2011_09_26 2011_09_26_drive_0028_sync 0000000261 2011_09_26 2011_09_26_drive_0028_sync 0000000262 2011_09_26 2011_09_26_drive_0028_sync 0000000263 2011_09_26 2011_09_26_drive_0028_sync 0000000264 2011_09_26 2011_09_26_drive_0028_sync 0000000265 2011_09_26 2011_09_26_drive_0028_sync 0000000266 2011_09_26 2011_09_26_drive_0028_sync 0000000267 2011_09_26 2011_09_26_drive_0028_sync 0000000268 2011_09_26 2011_09_26_drive_0028_sync 0000000269 2011_09_26 2011_09_26_drive_0028_sync 0000000270 2011_09_26 2011_09_26_drive_0028_sync 0000000271 2011_09_26 2011_09_26_drive_0028_sync 0000000272 2011_09_26 2011_09_26_drive_0028_sync 0000000273 2011_09_26 2011_09_26_drive_0028_sync 0000000274 2011_09_26 2011_09_26_drive_0028_sync 0000000275 2011_09_26 2011_09_26_drive_0028_sync 0000000276 2011_09_26 2011_09_26_drive_0028_sync 0000000277 2011_09_26 2011_09_26_drive_0028_sync 0000000278 2011_09_26 2011_09_26_drive_0028_sync 0000000279 2011_09_26 2011_09_26_drive_0028_sync 0000000280 2011_09_26 2011_09_26_drive_0028_sync 0000000281 2011_09_26 2011_09_26_drive_0028_sync 0000000282 2011_09_26 2011_09_26_drive_0028_sync 0000000283 2011_09_26 2011_09_26_drive_0028_sync 0000000284 2011_09_26 2011_09_26_drive_0028_sync 0000000285 2011_09_26 2011_09_26_drive_0028_sync 0000000286 2011_09_26 2011_09_26_drive_0028_sync 0000000287 2011_09_26 2011_09_26_drive_0028_sync 0000000288 2011_09_26 2011_09_26_drive_0028_sync 0000000289 2011_09_26 2011_09_26_drive_0028_sync 0000000290 2011_09_26 2011_09_26_drive_0028_sync 0000000291 2011_09_26 2011_09_26_drive_0028_sync 0000000292 2011_09_26 2011_09_26_drive_0028_sync 0000000293 2011_09_26 2011_09_26_drive_0028_sync 0000000294 2011_09_26 2011_09_26_drive_0028_sync 0000000295 2011_09_26 2011_09_26_drive_0028_sync 0000000296 2011_09_26 2011_09_26_drive_0028_sync 0000000297 2011_09_26 2011_09_26_drive_0028_sync 0000000298 2011_09_26 2011_09_26_drive_0028_sync 0000000299 2011_09_26 2011_09_26_drive_0028_sync 0000000300 2011_09_26 2011_09_26_drive_0028_sync 0000000301 2011_09_26 2011_09_26_drive_0028_sync 0000000302 2011_09_26 2011_09_26_drive_0028_sync 0000000303 2011_09_26 2011_09_26_drive_0028_sync 0000000304 2011_09_26 2011_09_26_drive_0028_sync 0000000305 2011_09_26 2011_09_26_drive_0028_sync 0000000306 2011_09_26 2011_09_26_drive_0028_sync 0000000307 2011_09_26 2011_09_26_drive_0028_sync 0000000308 2011_09_26 2011_09_26_drive_0028_sync 0000000309 2011_09_26 2011_09_26_drive_0028_sync 0000000310 2011_09_26 2011_09_26_drive_0028_sync 0000000311 2011_09_26 2011_09_26_drive_0028_sync 0000000312 2011_09_26 2011_09_26_drive_0028_sync 0000000313 2011_09_26 2011_09_26_drive_0028_sync 0000000314 2011_09_26 2011_09_26_drive_0028_sync 0000000365 2011_09_26 2011_09_26_drive_0028_sync 0000000366 2011_09_26 2011_09_26_drive_0028_sync 0000000367 2011_09_26 2011_09_26_drive_0028_sync 0000000368 2011_09_26 2011_09_26_drive_0028_sync 0000000369 2011_09_26 2011_09_26_drive_0028_sync 0000000370 2011_09_26 2011_09_26_drive_0028_sync 0000000371 2011_09_26 2011_09_26_drive_0028_sync 0000000372 2011_09_26 2011_09_26_drive_0028_sync 0000000373 2011_09_26 2011_09_26_drive_0028_sync 0000000374 2011_09_26 2011_09_26_drive_0028_sync 0000000375 2011_09_26 2011_09_26_drive_0028_sync 0000000376 2011_09_26 2011_09_26_drive_0028_sync 0000000377 2011_09_26 2011_09_26_drive_0028_sync 0000000378 2011_09_26 2011_09_26_drive_0028_sync 0000000379 2011_09_26 2011_09_26_drive_0028_sync 0000000380 2011_09_26 2011_09_26_drive_0032_sync 0000000002 2011_09_26 2011_09_26_drive_0032_sync 0000000003 2011_09_26 2011_09_26_drive_0032_sync 0000000004 2011_09_26 2011_09_26_drive_0032_sync 0000000005 2011_09_26 2011_09_26_drive_0032_sync 0000000006 2011_09_26 2011_09_26_drive_0032_sync 0000000007 2011_09_26 2011_09_26_drive_0032_sync 0000000008 2011_09_26 2011_09_26_drive_0032_sync 0000000009 2011_09_26 2011_09_26_drive_0032_sync 0000000010 2011_09_26 2011_09_26_drive_0032_sync 0000000011 2011_09_26 2011_09_26_drive_0032_sync 0000000012 2011_09_26 2011_09_26_drive_0032_sync 0000000013 2011_09_26 2011_09_26_drive_0032_sync 0000000014 2011_09_26 2011_09_26_drive_0032_sync 0000000015 2011_09_26 2011_09_26_drive_0032_sync 0000000016 2011_09_26 2011_09_26_drive_0032_sync 0000000017 2011_09_26 2011_09_26_drive_0032_sync 0000000018 2011_09_26 2011_09_26_drive_0032_sync 0000000019 2011_09_26 2011_09_26_drive_0032_sync 0000000020 2011_09_26 2011_09_26_drive_0032_sync 0000000021 2011_09_26 2011_09_26_drive_0032_sync 0000000022 2011_09_26 2011_09_26_drive_0032_sync 0000000023 2011_09_26 2011_09_26_drive_0032_sync 0000000025 2011_09_26 2011_09_26_drive_0032_sync 0000000027 2011_09_26 2011_09_26_drive_0032_sync 0000000029 2011_09_26 2011_09_26_drive_0032_sync 0000000031 2011_09_26 2011_09_26_drive_0032_sync 0000000033 2011_09_26 2011_09_26_drive_0032_sync 0000000035 2011_09_26 2011_09_26_drive_0032_sync 0000000037 2011_09_26 2011_09_26_drive_0032_sync 0000000039 2011_09_26 2011_09_26_drive_0032_sync 0000000041 2011_09_26 2011_09_26_drive_0032_sync 0000000043 2011_09_26 2011_09_26_drive_0032_sync 0000000045 2011_09_26 2011_09_26_drive_0032_sync 0000000047 2011_09_26 2011_09_26_drive_0032_sync 0000000049 2011_09_26 2011_09_26_drive_0032_sync 0000000051 2011_09_26 2011_09_26_drive_0032_sync 0000000053 2011_09_26 2011_09_26_drive_0032_sync 0000000055 2011_09_26 2011_09_26_drive_0032_sync 0000000057 2011_09_26 2011_09_26_drive_0032_sync 0000000063 2011_09_26 2011_09_26_drive_0032_sync 0000000071 2011_09_26 2011_09_26_drive_0032_sync 0000000080 2011_09_26 2011_09_26_drive_0032_sync 0000000081 2011_09_26 2011_09_26_drive_0032_sync 0000000082 2011_09_26 2011_09_26_drive_0032_sync 0000000083 2011_09_26 2011_09_26_drive_0032_sync 0000000084 2011_09_26 2011_09_26_drive_0032_sync 0000000085 2011_09_26 2011_09_26_drive_0032_sync 0000000086 2011_09_26 2011_09_26_drive_0032_sync 0000000087 2011_09_26 2011_09_26_drive_0032_sync 0000000088 2011_09_26 2011_09_26_drive_0032_sync 0000000089 2011_09_26 2011_09_26_drive_0032_sync 0000000090 2011_09_26 2011_09_26_drive_0032_sync 0000000091 2011_09_26 2011_09_26_drive_0032_sync 0000000092 2011_09_26 2011_09_26_drive_0032_sync 0000000093 2011_09_26 2011_09_26_drive_0032_sync 0000000094 2011_09_26 2011_09_26_drive_0032_sync 0000000095 2011_09_26 2011_09_26_drive_0032_sync 0000000096 2011_09_26 2011_09_26_drive_0032_sync 0000000097 2011_09_26 2011_09_26_drive_0032_sync 0000000098 2011_09_26 2011_09_26_drive_0032_sync 0000000099 2011_09_26 2011_09_26_drive_0032_sync 0000000100 2011_09_26 2011_09_26_drive_0032_sync 0000000101 2011_09_26 2011_09_26_drive_0032_sync 0000000102 2011_09_26 2011_09_26_drive_0032_sync 0000000103 2011_09_26 2011_09_26_drive_0032_sync 0000000104 2011_09_26 2011_09_26_drive_0032_sync 0000000105 2011_09_26 2011_09_26_drive_0032_sync 0000000106 2011_09_26 2011_09_26_drive_0032_sync 0000000107 2011_09_26 2011_09_26_drive_0032_sync 0000000108 2011_09_26 2011_09_26_drive_0032_sync 0000000109 2011_09_26 2011_09_26_drive_0032_sync 0000000110 2011_09_26 2011_09_26_drive_0032_sync 0000000111 2011_09_26 2011_09_26_drive_0032_sync 0000000112 2011_09_26 2011_09_26_drive_0032_sync 0000000113 2011_09_26 2011_09_26_drive_0032_sync 0000000114 2011_09_26 2011_09_26_drive_0032_sync 0000000115 2011_09_26 2011_09_26_drive_0032_sync 0000000116 2011_09_26 2011_09_26_drive_0032_sync 0000000117 2011_09_26 2011_09_26_drive_0032_sync 0000000118 2011_09_26 2011_09_26_drive_0032_sync 0000000119 2011_09_26 2011_09_26_drive_0032_sync 0000000120 2011_09_26 2011_09_26_drive_0032_sync 0000000121 2011_09_26 2011_09_26_drive_0032_sync 0000000122 2011_09_26 2011_09_26_drive_0032_sync 0000000123 2011_09_26 2011_09_26_drive_0032_sync 0000000124 2011_09_26 2011_09_26_drive_0032_sync 0000000125 2011_09_26 2011_09_26_drive_0032_sync 0000000126 2011_09_26 2011_09_26_drive_0032_sync 0000000127 2011_09_26 2011_09_26_drive_0032_sync 0000000128 2011_09_26 2011_09_26_drive_0032_sync 0000000130 2011_09_26 2011_09_26_drive_0032_sync 0000000132 2011_09_26 2011_09_26_drive_0032_sync 0000000134 2011_09_26 2011_09_26_drive_0032_sync 0000000136 2011_09_26 2011_09_26_drive_0032_sync 0000000138 2011_09_26 2011_09_26_drive_0032_sync 0000000140 2011_09_26 2011_09_26_drive_0032_sync 0000000142 2011_09_26 2011_09_26_drive_0032_sync 0000000144 2011_09_26 2011_09_26_drive_0032_sync 0000000146 2011_09_26 2011_09_26_drive_0032_sync 0000000148 2011_09_26 2011_09_26_drive_0032_sync 0000000150 2011_09_26 2011_09_26_drive_0032_sync 0000000152 2011_09_26 2011_09_26_drive_0032_sync 0000000154 2011_09_26 2011_09_26_drive_0032_sync 0000000156 2011_09_26 2011_09_26_drive_0032_sync 0000000158 2011_09_26 2011_09_26_drive_0032_sync 0000000160 2011_09_26 2011_09_26_drive_0032_sync 0000000162 2011_09_26 2011_09_26_drive_0032_sync 0000000164 2011_09_26 2011_09_26_drive_0032_sync 0000000166 2011_09_26 2011_09_26_drive_0032_sync 0000000168 2011_09_26 2011_09_26_drive_0032_sync 0000000171 2011_09_26 2011_09_26_drive_0032_sync 0000000174 2011_09_26 2011_09_26_drive_0032_sync 0000000177 2011_09_26 2011_09_26_drive_0032_sync 0000000180 2011_09_26 2011_09_26_drive_0032_sync 0000000183 2011_09_26 2011_09_26_drive_0032_sync 0000000186 2011_09_26 2011_09_26_drive_0032_sync 0000000189 2011_09_26 2011_09_26_drive_0032_sync 0000000192 2011_09_26 2011_09_26_drive_0032_sync 0000000196 2011_09_26 2011_09_26_drive_0032_sync 0000000200 2011_09_26 2011_09_26_drive_0032_sync 0000000203 2011_09_26 2011_09_26_drive_0032_sync 0000000204 2011_09_26 2011_09_26_drive_0032_sync 0000000205 2011_09_26 2011_09_26_drive_0032_sync 0000000206 2011_09_26 2011_09_26_drive_0032_sync 0000000207 2011_09_26 2011_09_26_drive_0032_sync 0000000208 2011_09_26 2011_09_26_drive_0032_sync 0000000210 2011_09_26 2011_09_26_drive_0032_sync 0000000212 2011_09_26 2011_09_26_drive_0032_sync 0000000214 2011_09_26 2011_09_26_drive_0032_sync 0000000216 2011_09_26 2011_09_26_drive_0032_sync 0000000217 2011_09_26 2011_09_26_drive_0032_sync 0000000218 2011_09_26 2011_09_26_drive_0032_sync 0000000220 2011_09_26 2011_09_26_drive_0032_sync 0000000222 2011_09_26 2011_09_26_drive_0032_sync 0000000224 2011_09_26 2011_09_26_drive_0032_sync 0000000226 2011_09_26 2011_09_26_drive_0032_sync 0000000227 2011_09_26 2011_09_26_drive_0032_sync 0000000228 2011_09_26 2011_09_26_drive_0032_sync 0000000229 2011_09_26 2011_09_26_drive_0032_sync 0000000230 2011_09_26 2011_09_26_drive_0032_sync 0000000231 2011_09_26 2011_09_26_drive_0032_sync 0000000232 2011_09_26 2011_09_26_drive_0032_sync 0000000233 2011_09_26 2011_09_26_drive_0032_sync 0000000235 2011_09_26 2011_09_26_drive_0032_sync 0000000237 2011_09_26 2011_09_26_drive_0032_sync 0000000239 2011_09_26 2011_09_26_drive_0032_sync 0000000244 2011_09_26 2011_09_26_drive_0032_sync 0000000249 2011_09_26 2011_09_26_drive_0032_sync 0000000253 2011_09_26 2011_09_26_drive_0032_sync 0000000258 2011_09_26 2011_09_26_drive_0032_sync 0000000262 2011_09_26 2011_09_26_drive_0032_sync 0000000265 2011_09_26 2011_09_26_drive_0032_sync 0000000270 2011_09_26 2011_09_26_drive_0032_sync 0000000275 2011_09_26 2011_09_26_drive_0032_sync 0000000279 2011_09_26 2011_09_26_drive_0032_sync 0000000285 2011_09_26 2011_09_26_drive_0032_sync 0000000291 2011_09_26 2011_09_26_drive_0032_sync 0000000293 2011_09_26 2011_09_26_drive_0032_sync 0000000295 2011_09_26 2011_09_26_drive_0032_sync 0000000297 2011_09_26 2011_09_26_drive_0032_sync 0000000298 2011_09_26 2011_09_26_drive_0032_sync 0000000299 2011_09_26 2011_09_26_drive_0032_sync 0000000300 2011_09_26 2011_09_26_drive_0032_sync 0000000301 2011_09_26 2011_09_26_drive_0032_sync 0000000302 2011_09_26 2011_09_26_drive_0032_sync 0000000303 2011_09_26 2011_09_26_drive_0032_sync 0000000304 2011_09_26 2011_09_26_drive_0032_sync 0000000305 2011_09_26 2011_09_26_drive_0032_sync 0000000306 2011_09_26 2011_09_26_drive_0032_sync 0000000307 2011_09_26 2011_09_26_drive_0032_sync 0000000321 2011_09_26 2011_09_26_drive_0032_sync 0000000329 2011_09_26 2011_09_26_drive_0032_sync 0000000336 2011_09_26 2011_09_26_drive_0032_sync 0000000338 2011_09_26 2011_09_26_drive_0032_sync 0000000340 2011_09_26 2011_09_26_drive_0032_sync 0000000348 2011_09_26 2011_09_26_drive_0032_sync 0000000350 2011_09_26 2011_09_26_drive_0032_sync 0000000352 2011_09_26 2011_09_26_drive_0032_sync 0000000355 2011_09_26 2011_09_26_drive_0032_sync 0000000361 2011_09_26 2011_09_26_drive_0032_sync 0000000367 2011_09_26 2011_09_26_drive_0032_sync 0000000371 2011_09_26 2011_09_26_drive_0032_sync 0000000374 2011_09_26 2011_09_26_drive_0032_sync 0000000377 2011_09_26 2011_09_26_drive_0032_sync 0000000385 2011_09_26 2011_09_26_drive_0032_sync 0000000387 2011_09_26 2011_09_26_drive_0032_sync 0000000389 2011_09_26 2011_09_26_drive_0051_sync 0000000001 2011_09_26 2011_09_26_drive_0051_sync 0000000002 2011_09_26 2011_09_26_drive_0051_sync 0000000003 2011_09_26 2011_09_26_drive_0051_sync 0000000004 2011_09_26 2011_09_26_drive_0051_sync 0000000005 2011_09_26 2011_09_26_drive_0051_sync 0000000006 2011_09_26 2011_09_26_drive_0051_sync 0000000007 2011_09_26 2011_09_26_drive_0051_sync 0000000008 2011_09_26 2011_09_26_drive_0051_sync 0000000009 2011_09_26 2011_09_26_drive_0051_sync 0000000010 2011_09_26 2011_09_26_drive_0051_sync 0000000011 2011_09_26 2011_09_26_drive_0051_sync 0000000012 2011_09_26 2011_09_26_drive_0051_sync 0000000013 2011_09_26 2011_09_26_drive_0051_sync 0000000014 2011_09_26 2011_09_26_drive_0051_sync 0000000015 2011_09_26 2011_09_26_drive_0051_sync 0000000016 2011_09_26 2011_09_26_drive_0051_sync 0000000017 2011_09_26 2011_09_26_drive_0051_sync 0000000018 2011_09_26 2011_09_26_drive_0051_sync 0000000019 2011_09_26 2011_09_26_drive_0051_sync 0000000020 2011_09_26 2011_09_26_drive_0051_sync 0000000021 2011_09_26 2011_09_26_drive_0051_sync 0000000022 2011_09_26 2011_09_26_drive_0051_sync 0000000023 2011_09_26 2011_09_26_drive_0051_sync 0000000024 2011_09_26 2011_09_26_drive_0051_sync 0000000025 2011_09_26 2011_09_26_drive_0051_sync 0000000039 2011_09_26 2011_09_26_drive_0051_sync 0000000040 2011_09_26 2011_09_26_drive_0051_sync 0000000041 2011_09_26 2011_09_26_drive_0051_sync 0000000042 2011_09_26 2011_09_26_drive_0051_sync 0000000057 2011_09_26 2011_09_26_drive_0051_sync 0000000058 2011_09_26 2011_09_26_drive_0051_sync 0000000059 2011_09_26 2011_09_26_drive_0051_sync 0000000064 2011_09_26 2011_09_26_drive_0051_sync 0000000065 2011_09_26 2011_09_26_drive_0051_sync 0000000066 2011_09_26 2011_09_26_drive_0051_sync 0000000113 2011_09_26 2011_09_26_drive_0051_sync 0000000121 2011_09_26 2011_09_26_drive_0051_sync 0000000122 2011_09_26 2011_09_26_drive_0051_sync 0000000124 2011_09_26 2011_09_26_drive_0051_sync 0000000127 2011_09_26 2011_09_26_drive_0051_sync 0000000131 2011_09_26 2011_09_26_drive_0051_sync 0000000137 2011_09_26 2011_09_26_drive_0051_sync 0000000139 2011_09_26 2011_09_26_drive_0051_sync 0000000141 2011_09_26 2011_09_26_drive_0051_sync 0000000143 2011_09_26 2011_09_26_drive_0051_sync 0000000145 2011_09_26 2011_09_26_drive_0051_sync 0000000146 2011_09_26 2011_09_26_drive_0051_sync 0000000148 2011_09_26 2011_09_26_drive_0051_sync 0000000153 2011_09_26 2011_09_26_drive_0051_sync 0000000156 2011_09_26 2011_09_26_drive_0051_sync 0000000158 2011_09_26 2011_09_26_drive_0051_sync 0000000164 2011_09_26 2011_09_26_drive_0051_sync 0000000167 2011_09_26 2011_09_26_drive_0051_sync 0000000171 2011_09_26 2011_09_26_drive_0051_sync 0000000176 2011_09_26 2011_09_26_drive_0051_sync 0000000180 2011_09_26 2011_09_26_drive_0051_sync 0000000184 2011_09_26 2011_09_26_drive_0051_sync 0000000186 2011_09_26 2011_09_26_drive_0051_sync 0000000190 2011_09_26 2011_09_26_drive_0051_sync 0000000197 2011_09_26 2011_09_26_drive_0051_sync 0000000213 2011_09_26 2011_09_26_drive_0051_sync 0000000216 2011_09_26 2011_09_26_drive_0051_sync 0000000221 2011_09_26 2011_09_26_drive_0051_sync 0000000223 2011_09_26 2011_09_26_drive_0051_sync 0000000225 2011_09_26 2011_09_26_drive_0051_sync 0000000233 2011_09_26 2011_09_26_drive_0051_sync 0000000235 2011_09_26 2011_09_26_drive_0051_sync 0000000238 2011_09_26 2011_09_26_drive_0051_sync 0000000249 2011_09_26 2011_09_26_drive_0051_sync 0000000251 2011_09_26 2011_09_26_drive_0051_sync 0000000252 2011_09_26 2011_09_26_drive_0051_sync 0000000253 2011_09_26 2011_09_26_drive_0051_sync 0000000258 2011_09_26 2011_09_26_drive_0051_sync 0000000260 2011_09_26 2011_09_26_drive_0051_sync 0000000262 2011_09_26 2011_09_26_drive_0051_sync 0000000267 2011_09_26 2011_09_26_drive_0051_sync 0000000273 2011_09_26 2011_09_26_drive_0051_sync 0000000277 2011_09_26 2011_09_26_drive_0051_sync 0000000281 2011_09_26 2011_09_26_drive_0051_sync 0000000283 2011_09_26 2011_09_26_drive_0051_sync 0000000285 2011_09_26 2011_09_26_drive_0051_sync 0000000286 2011_09_26 2011_09_26_drive_0051_sync 0000000288 2011_09_26 2011_09_26_drive_0051_sync 0000000290 2011_09_26 2011_09_26_drive_0051_sync 0000000292 2011_09_26 2011_09_26_drive_0051_sync 0000000296 2011_09_26 2011_09_26_drive_0051_sync 0000000299 2011_09_26 2011_09_26_drive_0051_sync 0000000300 2011_09_26 2011_09_26_drive_0051_sync 0000000301 2011_09_26 2011_09_26_drive_0051_sync 0000000302 2011_09_26 2011_09_26_drive_0051_sync 0000000304 2011_09_26 2011_09_26_drive_0051_sync 0000000308 2011_09_26 2011_09_26_drive_0051_sync 0000000310 2011_09_26 2011_09_26_drive_0051_sync 0000000320 2011_09_26 2011_09_26_drive_0051_sync 0000000324 2011_09_26 2011_09_26_drive_0051_sync 0000000326 2011_09_26 2011_09_26_drive_0051_sync 0000000328 2011_09_26 2011_09_26_drive_0051_sync 0000000333 2011_09_26 2011_09_26_drive_0051_sync 0000000343 2011_09_26 2011_09_26_drive_0051_sync 0000000347 2011_09_26 2011_09_26_drive_0051_sync 0000000383 2011_09_26 2011_09_26_drive_0051_sync 0000000384 2011_09_26 2011_09_26_drive_0051_sync 0000000386 2011_09_26 2011_09_26_drive_0051_sync 0000000388 2011_09_26 2011_09_26_drive_0051_sync 0000000390 2011_09_26 2011_09_26_drive_0051_sync 0000000392 2011_09_26 2011_09_26_drive_0051_sync 0000000394 2011_09_26 2011_09_26_drive_0051_sync 0000000396 2011_09_26 2011_09_26_drive_0051_sync 0000000398 2011_09_26 2011_09_26_drive_0051_sync 0000000402 2011_09_26 2011_09_26_drive_0051_sync 0000000405 2011_09_26 2011_09_26_drive_0051_sync 0000000411 2011_09_26 2011_09_26_drive_0056_sync 0000000001 2011_09_26 2011_09_26_drive_0056_sync 0000000002 2011_09_26 2011_09_26_drive_0056_sync 0000000003 2011_09_26 2011_09_26_drive_0056_sync 0000000004 2011_09_26 2011_09_26_drive_0056_sync 0000000005 2011_09_26 2011_09_26_drive_0056_sync 0000000006 2011_09_26 2011_09_26_drive_0056_sync 0000000007 2011_09_26 2011_09_26_drive_0056_sync 0000000008 2011_09_26 2011_09_26_drive_0056_sync 0000000009 2011_09_26 2011_09_26_drive_0056_sync 0000000010 2011_09_26 2011_09_26_drive_0056_sync 0000000011 2011_09_26 2011_09_26_drive_0056_sync 0000000012 2011_09_26 2011_09_26_drive_0056_sync 0000000028 2011_09_26 2011_09_26_drive_0056_sync 0000000041 2011_09_26 2011_09_26_drive_0056_sync 0000000053 2011_09_26 2011_09_26_drive_0056_sync 0000000062 2011_09_26 2011_09_26_drive_0056_sync 0000000063 2011_09_26 2011_09_26_drive_0056_sync 0000000064 2011_09_26 2011_09_26_drive_0056_sync 0000000068 2011_09_26 2011_09_26_drive_0056_sync 0000000069 2011_09_26 2011_09_26_drive_0056_sync 0000000070 2011_09_26 2011_09_26_drive_0056_sync 0000000071 2011_09_26 2011_09_26_drive_0056_sync 0000000072 2011_09_26 2011_09_26_drive_0056_sync 0000000073 2011_09_26 2011_09_26_drive_0056_sync 0000000074 2011_09_26 2011_09_26_drive_0056_sync 0000000075 2011_09_26 2011_09_26_drive_0056_sync 0000000076 2011_09_26 2011_09_26_drive_0056_sync 0000000077 2011_09_26 2011_09_26_drive_0056_sync 0000000078 2011_09_26 2011_09_26_drive_0056_sync 0000000079 2011_09_26 2011_09_26_drive_0056_sync 0000000080 2011_09_26 2011_09_26_drive_0056_sync 0000000081 2011_09_26 2011_09_26_drive_0056_sync 0000000082 2011_09_26 2011_09_26_drive_0056_sync 0000000083 2011_09_26 2011_09_26_drive_0056_sync 0000000084 2011_09_26 2011_09_26_drive_0056_sync 0000000085 2011_09_26 2011_09_26_drive_0056_sync 0000000086 2011_09_26 2011_09_26_drive_0056_sync 0000000087 2011_09_26 2011_09_26_drive_0056_sync 0000000088 2011_09_26 2011_09_26_drive_0056_sync 0000000089 2011_09_26 2011_09_26_drive_0056_sync 0000000090 2011_09_26 2011_09_26_drive_0056_sync 0000000091 2011_09_26 2011_09_26_drive_0056_sync 0000000092 2011_09_26 2011_09_26_drive_0056_sync 0000000093 2011_09_26 2011_09_26_drive_0056_sync 0000000094 2011_09_26 2011_09_26_drive_0056_sync 0000000095 2011_09_26 2011_09_26_drive_0056_sync 0000000096 2011_09_26 2011_09_26_drive_0056_sync 0000000097 2011_09_26 2011_09_26_drive_0056_sync 0000000098 2011_09_26 2011_09_26_drive_0056_sync 0000000099 2011_09_26 2011_09_26_drive_0056_sync 0000000100 2011_09_26 2011_09_26_drive_0056_sync 0000000101 2011_09_26 2011_09_26_drive_0056_sync 0000000102 2011_09_26 2011_09_26_drive_0056_sync 0000000103 2011_09_26 2011_09_26_drive_0056_sync 0000000104 2011_09_26 2011_09_26_drive_0056_sync 0000000105 2011_09_26 2011_09_26_drive_0056_sync 0000000106 2011_09_26 2011_09_26_drive_0056_sync 0000000107 2011_09_26 2011_09_26_drive_0056_sync 0000000108 2011_09_26 2011_09_26_drive_0056_sync 0000000109 2011_09_26 2011_09_26_drive_0056_sync 0000000110 2011_09_26 2011_09_26_drive_0056_sync 0000000111 2011_09_26 2011_09_26_drive_0056_sync 0000000112 2011_09_26 2011_09_26_drive_0056_sync 0000000113 2011_09_26 2011_09_26_drive_0056_sync 0000000114 2011_09_26 2011_09_26_drive_0056_sync 0000000115 2011_09_26 2011_09_26_drive_0056_sync 0000000116 2011_09_26 2011_09_26_drive_0056_sync 0000000117 2011_09_26 2011_09_26_drive_0056_sync 0000000118 2011_09_26 2011_09_26_drive_0056_sync 0000000119 2011_09_26 2011_09_26_drive_0056_sync 0000000120 2011_09_26 2011_09_26_drive_0056_sync 0000000121 2011_09_26 2011_09_26_drive_0056_sync 0000000122 2011_09_26 2011_09_26_drive_0056_sync 0000000123 2011_09_26 2011_09_26_drive_0056_sync 0000000124 2011_09_26 2011_09_26_drive_0056_sync 0000000125 2011_09_26 2011_09_26_drive_0056_sync 0000000126 2011_09_26 2011_09_26_drive_0056_sync 0000000127 2011_09_26 2011_09_26_drive_0056_sync 0000000128 2011_09_26 2011_09_26_drive_0056_sync 0000000129 2011_09_26 2011_09_26_drive_0056_sync 0000000130 2011_09_26 2011_09_26_drive_0056_sync 0000000131 2011_09_26 2011_09_26_drive_0056_sync 0000000132 2011_09_26 2011_09_26_drive_0056_sync 0000000133 2011_09_26 2011_09_26_drive_0056_sync 0000000134 2011_09_26 2011_09_26_drive_0056_sync 0000000135 2011_09_26 2011_09_26_drive_0056_sync 0000000136 2011_09_26 2011_09_26_drive_0056_sync 0000000137 2011_09_26 2011_09_26_drive_0056_sync 0000000138 2011_09_26 2011_09_26_drive_0056_sync 0000000139 2011_09_26 2011_09_26_drive_0056_sync 0000000140 2011_09_26 2011_09_26_drive_0056_sync 0000000141 2011_09_26 2011_09_26_drive_0056_sync 0000000142 2011_09_26 2011_09_26_drive_0056_sync 0000000143 2011_09_26 2011_09_26_drive_0056_sync 0000000144 2011_09_26 2011_09_26_drive_0056_sync 0000000145 2011_09_26 2011_09_26_drive_0056_sync 0000000146 2011_09_26 2011_09_26_drive_0056_sync 0000000147 2011_09_26 2011_09_26_drive_0056_sync 0000000148 2011_09_26 2011_09_26_drive_0056_sync 0000000149 2011_09_26 2011_09_26_drive_0056_sync 0000000150 2011_09_26 2011_09_26_drive_0056_sync 0000000151 2011_09_26 2011_09_26_drive_0056_sync 0000000152 2011_09_26 2011_09_26_drive_0056_sync 0000000153 2011_09_26 2011_09_26_drive_0056_sync 0000000154 2011_09_26 2011_09_26_drive_0056_sync 0000000155 2011_09_26 2011_09_26_drive_0056_sync 0000000156 2011_09_26 2011_09_26_drive_0056_sync 0000000157 2011_09_26 2011_09_26_drive_0056_sync 0000000158 2011_09_26 2011_09_26_drive_0056_sync 0000000159 2011_09_26 2011_09_26_drive_0056_sync 0000000160 2011_09_26 2011_09_26_drive_0056_sync 0000000161 2011_09_26 2011_09_26_drive_0056_sync 0000000162 2011_09_26 2011_09_26_drive_0056_sync 0000000163 2011_09_26 2011_09_26_drive_0056_sync 0000000164 2011_09_26 2011_09_26_drive_0056_sync 0000000165 2011_09_26 2011_09_26_drive_0056_sync 0000000166 2011_09_26 2011_09_26_drive_0056_sync 0000000167 2011_09_26 2011_09_26_drive_0056_sync 0000000168 2011_09_26 2011_09_26_drive_0056_sync 0000000169 2011_09_26 2011_09_26_drive_0056_sync 0000000170 2011_09_26 2011_09_26_drive_0056_sync 0000000172 2011_09_26 2011_09_26_drive_0056_sync 0000000174 2011_09_26 2011_09_26_drive_0056_sync 0000000185 2011_09_26 2011_09_26_drive_0056_sync 0000000194 2011_09_26 2011_09_26_drive_0056_sync 0000000195 2011_09_26 2011_09_26_drive_0056_sync 0000000196 2011_09_26 2011_09_26_drive_0056_sync 0000000197 2011_09_26 2011_09_26_drive_0056_sync 0000000198 2011_09_26 2011_09_26_drive_0056_sync 0000000199 2011_09_26 2011_09_26_drive_0056_sync 0000000200 2011_09_26 2011_09_26_drive_0056_sync 0000000201 2011_09_26 2011_09_26_drive_0056_sync 0000000202 2011_09_26 2011_09_26_drive_0056_sync 0000000203 2011_09_26 2011_09_26_drive_0056_sync 0000000204 2011_09_26 2011_09_26_drive_0056_sync 0000000205 2011_09_26 2011_09_26_drive_0056_sync 0000000206 2011_09_26 2011_09_26_drive_0056_sync 0000000207 2011_09_26 2011_09_26_drive_0056_sync 0000000208 2011_09_26 2011_09_26_drive_0056_sync 0000000209 2011_09_26 2011_09_26_drive_0056_sync 0000000210 2011_09_26 2011_09_26_drive_0056_sync 0000000211 2011_09_26 2011_09_26_drive_0056_sync 0000000212 2011_09_26 2011_09_26_drive_0056_sync 0000000213 2011_09_26 2011_09_26_drive_0056_sync 0000000214 2011_09_26 2011_09_26_drive_0056_sync 0000000215 2011_09_26 2011_09_26_drive_0056_sync 0000000216 2011_09_26 2011_09_26_drive_0056_sync 0000000217 2011_09_26 2011_09_26_drive_0056_sync 0000000218 2011_09_26 2011_09_26_drive_0056_sync 0000000219 2011_09_26 2011_09_26_drive_0056_sync 0000000220 2011_09_26 2011_09_26_drive_0056_sync 0000000221 2011_09_26 2011_09_26_drive_0056_sync 0000000222 2011_09_26 2011_09_26_drive_0056_sync 0000000223 2011_09_26 2011_09_26_drive_0056_sync 0000000224 2011_09_26 2011_09_26_drive_0056_sync 0000000225 2011_09_26 2011_09_26_drive_0056_sync 0000000226 2011_09_26 2011_09_26_drive_0056_sync 0000000227 2011_09_26 2011_09_26_drive_0056_sync 0000000228 2011_09_26 2011_09_26_drive_0056_sync 0000000229 2011_09_26 2011_09_26_drive_0056_sync 0000000230 2011_09_26 2011_09_26_drive_0056_sync 0000000231 2011_09_26 2011_09_26_drive_0056_sync 0000000232 2011_09_26 2011_09_26_drive_0056_sync 0000000233 2011_09_26 2011_09_26_drive_0056_sync 0000000234 2011_09_26 2011_09_26_drive_0056_sync 0000000235 2011_09_26 2011_09_26_drive_0056_sync 0000000236 2011_09_26 2011_09_26_drive_0056_sync 0000000237 2011_09_26 2011_09_26_drive_0056_sync 0000000238 2011_09_26 2011_09_26_drive_0056_sync 0000000239 2011_09_26 2011_09_26_drive_0056_sync 0000000240 2011_09_26 2011_09_26_drive_0056_sync 0000000241 2011_09_26 2011_09_26_drive_0056_sync 0000000242 2011_09_26 2011_09_26_drive_0056_sync 0000000259 2011_09_26 2011_09_26_drive_0056_sync 0000000265 2011_09_26 2011_09_26_drive_0056_sync 0000000266 2011_09_26 2011_09_26_drive_0056_sync 0000000267 2011_09_26 2011_09_26_drive_0056_sync 0000000268 2011_09_26 2011_09_26_drive_0056_sync 0000000269 2011_09_26 2011_09_26_drive_0056_sync 0000000270 2011_09_26 2011_09_26_drive_0056_sync 0000000271 2011_09_26 2011_09_26_drive_0056_sync 0000000272 2011_09_26 2011_09_26_drive_0056_sync 0000000273 2011_09_26 2011_09_26_drive_0056_sync 0000000274 2011_09_26 2011_09_26_drive_0056_sync 0000000275 2011_09_26 2011_09_26_drive_0056_sync 0000000276 2011_09_26 2011_09_26_drive_0056_sync 0000000277 2011_09_26 2011_09_26_drive_0056_sync 0000000278 2011_09_26 2011_09_26_drive_0056_sync 0000000279 2011_09_26 2011_09_26_drive_0056_sync 0000000280 2011_09_26 2011_09_26_drive_0056_sync 0000000281 2011_09_26 2011_09_26_drive_0056_sync 0000000282 2011_09_26 2011_09_26_drive_0056_sync 0000000283 2011_09_26 2011_09_26_drive_0056_sync 0000000284 2011_09_26 2011_09_26_drive_0056_sync 0000000285 2011_09_26 2011_09_26_drive_0056_sync 0000000286 2011_09_26 2011_09_26_drive_0056_sync 0000000287 2011_09_26 2011_09_26_drive_0057_sync 0000000003 2011_09_26 2011_09_26_drive_0057_sync 0000000005 2011_09_26 2011_09_26_drive_0057_sync 0000000007 2011_09_26 2011_09_26_drive_0057_sync 0000000009 2011_09_26 2011_09_26_drive_0057_sync 0000000011 2011_09_26 2011_09_26_drive_0057_sync 0000000013 2011_09_26 2011_09_26_drive_0057_sync 0000000015 2011_09_26 2011_09_26_drive_0057_sync 0000000017 2011_09_26 2011_09_26_drive_0057_sync 0000000020 2011_09_26 2011_09_26_drive_0057_sync 0000000023 2011_09_26 2011_09_26_drive_0057_sync 0000000028 2011_09_26 2011_09_26_drive_0057_sync 0000000033 2011_09_26 2011_09_26_drive_0057_sync 0000000038 2011_09_26 2011_09_26_drive_0057_sync 0000000052 2011_09_26 2011_09_26_drive_0057_sync 0000000061 2011_09_26 2011_09_26_drive_0057_sync 0000000066 2011_09_26 2011_09_26_drive_0057_sync 0000000070 2011_09_26 2011_09_26_drive_0057_sync 0000000073 2011_09_26 2011_09_26_drive_0057_sync 0000000076 2011_09_26 2011_09_26_drive_0057_sync 0000000080 2011_09_26 2011_09_26_drive_0057_sync 0000000087 2011_09_26 2011_09_26_drive_0057_sync 0000000095 2011_09_26 2011_09_26_drive_0057_sync 0000000102 2011_09_26 2011_09_26_drive_0057_sync 0000000106 2011_09_26 2011_09_26_drive_0057_sync 0000000110 2011_09_26 2011_09_26_drive_0057_sync 0000000118 2011_09_26 2011_09_26_drive_0057_sync 0000000120 2011_09_26 2011_09_26_drive_0057_sync 0000000122 2011_09_26 2011_09_26_drive_0057_sync 0000000124 2011_09_26 2011_09_26_drive_0057_sync 0000000130 2011_09_26 2011_09_26_drive_0057_sync 0000000135 2011_09_26 2011_09_26_drive_0057_sync 0000000137 2011_09_26 2011_09_26_drive_0057_sync 0000000140 2011_09_26 2011_09_26_drive_0057_sync 0000000143 2011_09_26 2011_09_26_drive_0057_sync 0000000150 2011_09_26 2011_09_26_drive_0057_sync 0000000152 2011_09_26 2011_09_26_drive_0057_sync 0000000163 2011_09_26 2011_09_26_drive_0057_sync 0000000167 2011_09_26 2011_09_26_drive_0057_sync 0000000170 2011_09_26 2011_09_26_drive_0057_sync 0000000172 2011_09_26 2011_09_26_drive_0057_sync 0000000175 2011_09_26 2011_09_26_drive_0057_sync 0000000178 2011_09_26 2011_09_26_drive_0057_sync 0000000181 2011_09_26 2011_09_26_drive_0057_sync 0000000184 2011_09_26 2011_09_26_drive_0057_sync 0000000188 2011_09_26 2011_09_26_drive_0057_sync 0000000202 2011_09_26 2011_09_26_drive_0057_sync 0000000219 2011_09_26 2011_09_26_drive_0057_sync 0000000221 2011_09_26 2011_09_26_drive_0057_sync 0000000224 2011_09_26 2011_09_26_drive_0057_sync 0000000228 2011_09_26 2011_09_26_drive_0057_sync 0000000269 2011_09_26 2011_09_26_drive_0057_sync 0000000291 2011_09_26 2011_09_26_drive_0057_sync 0000000296 2011_09_26 2011_09_26_drive_0057_sync 0000000299 2011_09_26 2011_09_26_drive_0057_sync 0000000302 2011_09_26 2011_09_26_drive_0057_sync 0000000305 2011_09_26 2011_09_26_drive_0057_sync 0000000307 2011_09_26 2011_09_26_drive_0057_sync 0000000309 2011_09_26 2011_09_26_drive_0057_sync 0000000311 2011_09_26 2011_09_26_drive_0057_sync 0000000313 2011_09_26 2011_09_26_drive_0057_sync 0000000315 2011_09_26 2011_09_26_drive_0057_sync 0000000317 2011_09_26 2011_09_26_drive_0057_sync 0000000319 2011_09_26 2011_09_26_drive_0057_sync 0000000321 2011_09_26 2011_09_26_drive_0057_sync 0000000323 2011_09_26 2011_09_26_drive_0057_sync 0000000325 2011_09_26 2011_09_26_drive_0057_sync 0000000327 2011_09_26 2011_09_26_drive_0057_sync 0000000329 2011_09_26 2011_09_26_drive_0057_sync 0000000331 2011_09_26 2011_09_26_drive_0057_sync 0000000332 2011_09_26 2011_09_26_drive_0057_sync 0000000333 2011_09_26 2011_09_26_drive_0057_sync 0000000334 2011_09_26 2011_09_26_drive_0057_sync 0000000335 2011_09_26 2011_09_26_drive_0057_sync 0000000336 2011_09_26 2011_09_26_drive_0057_sync 0000000338 2011_09_26 2011_09_26_drive_0057_sync 0000000339 2011_09_26 2011_09_26_drive_0057_sync 0000000341 2011_09_26 2011_09_26_drive_0057_sync 0000000343 2011_09_26 2011_09_26_drive_0057_sync 0000000350 2011_09_26 2011_09_26_drive_0057_sync 0000000356 2011_09_26 2011_09_26_drive_0059_sync 0000000003 2011_09_26 2011_09_26_drive_0059_sync 0000000005 2011_09_26 2011_09_26_drive_0059_sync 0000000007 2011_09_26 2011_09_26_drive_0059_sync 0000000009 2011_09_26 2011_09_26_drive_0059_sync 0000000011 2011_09_26 2011_09_26_drive_0059_sync 0000000013 2011_09_26 2011_09_26_drive_0059_sync 0000000015 2011_09_26 2011_09_26_drive_0059_sync 0000000017 2011_09_26 2011_09_26_drive_0059_sync 0000000019 2011_09_26 2011_09_26_drive_0059_sync 0000000021 2011_09_26 2011_09_26_drive_0059_sync 0000000024 2011_09_26 2011_09_26_drive_0059_sync 0000000027 2011_09_26 2011_09_26_drive_0059_sync 0000000030 2011_09_26 2011_09_26_drive_0059_sync 0000000033 2011_09_26 2011_09_26_drive_0059_sync 0000000036 2011_09_26 2011_09_26_drive_0059_sync 0000000039 2011_09_26 2011_09_26_drive_0059_sync 0000000042 2011_09_26 2011_09_26_drive_0059_sync 0000000045 2011_09_26 2011_09_26_drive_0059_sync 0000000047 2011_09_26 2011_09_26_drive_0059_sync 0000000049 2011_09_26 2011_09_26_drive_0059_sync 0000000051 2011_09_26 2011_09_26_drive_0059_sync 0000000053 2011_09_26 2011_09_26_drive_0059_sync 0000000055 2011_09_26 2011_09_26_drive_0059_sync 0000000057 2011_09_26 2011_09_26_drive_0059_sync 0000000060 2011_09_26 2011_09_26_drive_0059_sync 0000000062 2011_09_26 2011_09_26_drive_0059_sync 0000000064 2011_09_26 2011_09_26_drive_0059_sync 0000000066 2011_09_26 2011_09_26_drive_0059_sync 0000000068 2011_09_26 2011_09_26_drive_0059_sync 0000000070 2011_09_26 2011_09_26_drive_0059_sync 0000000072 2011_09_26 2011_09_26_drive_0059_sync 0000000074 2011_09_26 2011_09_26_drive_0059_sync 0000000076 2011_09_26 2011_09_26_drive_0059_sync 0000000078 2011_09_26 2011_09_26_drive_0059_sync 0000000080 2011_09_26 2011_09_26_drive_0059_sync 0000000082 2011_09_26 2011_09_26_drive_0059_sync 0000000084 2011_09_26 2011_09_26_drive_0059_sync 0000000086 2011_09_26 2011_09_26_drive_0059_sync 0000000088 2011_09_26 2011_09_26_drive_0059_sync 0000000090 2011_09_26 2011_09_26_drive_0059_sync 0000000092 2011_09_26 2011_09_26_drive_0059_sync 0000000094 2011_09_26 2011_09_26_drive_0059_sync 0000000096 2011_09_26 2011_09_26_drive_0059_sync 0000000098 2011_09_26 2011_09_26_drive_0059_sync 0000000100 2011_09_26 2011_09_26_drive_0059_sync 0000000102 2011_09_26 2011_09_26_drive_0059_sync 0000000104 2011_09_26 2011_09_26_drive_0059_sync 0000000106 2011_09_26 2011_09_26_drive_0059_sync 0000000108 2011_09_26 2011_09_26_drive_0059_sync 0000000110 2011_09_26 2011_09_26_drive_0059_sync 0000000111 2011_09_26 2011_09_26_drive_0059_sync 0000000112 2011_09_26 2011_09_26_drive_0059_sync 0000000113 2011_09_26 2011_09_26_drive_0059_sync 0000000114 2011_09_26 2011_09_26_drive_0059_sync 0000000115 2011_09_26 2011_09_26_drive_0059_sync 0000000116 2011_09_26 2011_09_26_drive_0059_sync 0000000117 2011_09_26 2011_09_26_drive_0059_sync 0000000118 2011_09_26 2011_09_26_drive_0059_sync 0000000119 2011_09_26 2011_09_26_drive_0059_sync 0000000120 2011_09_26 2011_09_26_drive_0059_sync 0000000121 2011_09_26 2011_09_26_drive_0059_sync 0000000122 2011_09_26 2011_09_26_drive_0059_sync 0000000123 2011_09_26 2011_09_26_drive_0059_sync 0000000124 2011_09_26 2011_09_26_drive_0059_sync 0000000125 2011_09_26 2011_09_26_drive_0059_sync 0000000126 2011_09_26 2011_09_26_drive_0059_sync 0000000127 2011_09_26 2011_09_26_drive_0059_sync 0000000128 2011_09_26 2011_09_26_drive_0059_sync 0000000129 2011_09_26 2011_09_26_drive_0059_sync 0000000130 2011_09_26 2011_09_26_drive_0059_sync 0000000131 2011_09_26 2011_09_26_drive_0059_sync 0000000132 2011_09_26 2011_09_26_drive_0059_sync 0000000133 2011_09_26 2011_09_26_drive_0059_sync 0000000134 2011_09_26 2011_09_26_drive_0059_sync 0000000135 2011_09_26 2011_09_26_drive_0059_sync 0000000136 2011_09_26 2011_09_26_drive_0059_sync 0000000137 2011_09_26 2011_09_26_drive_0059_sync 0000000138 2011_09_26 2011_09_26_drive_0059_sync 0000000139 2011_09_26 2011_09_26_drive_0059_sync 0000000140 2011_09_26 2011_09_26_drive_0059_sync 0000000141 2011_09_26 2011_09_26_drive_0059_sync 0000000142 2011_09_26 2011_09_26_drive_0059_sync 0000000143 2011_09_26 2011_09_26_drive_0059_sync 0000000144 2011_09_26 2011_09_26_drive_0059_sync 0000000145 2011_09_26 2011_09_26_drive_0059_sync 0000000146 2011_09_26 2011_09_26_drive_0059_sync 0000000147 2011_09_26 2011_09_26_drive_0059_sync 0000000148 2011_09_26 2011_09_26_drive_0059_sync 0000000149 2011_09_26 2011_09_26_drive_0059_sync 0000000150 2011_09_26 2011_09_26_drive_0059_sync 0000000151 2011_09_26 2011_09_26_drive_0059_sync 0000000152 2011_09_26 2011_09_26_drive_0059_sync 0000000153 2011_09_26 2011_09_26_drive_0059_sync 0000000154 2011_09_26 2011_09_26_drive_0059_sync 0000000155 2011_09_26 2011_09_26_drive_0059_sync 0000000157 2011_09_26 2011_09_26_drive_0059_sync 0000000158 2011_09_26 2011_09_26_drive_0059_sync 0000000159 2011_09_26 2011_09_26_drive_0059_sync 0000000160 2011_09_26 2011_09_26_drive_0059_sync 0000000162 2011_09_26 2011_09_26_drive_0059_sync 0000000164 2011_09_26 2011_09_26_drive_0059_sync 0000000166 2011_09_26 2011_09_26_drive_0059_sync 0000000168 2011_09_26 2011_09_26_drive_0059_sync 0000000170 2011_09_26 2011_09_26_drive_0059_sync 0000000172 2011_09_26 2011_09_26_drive_0059_sync 0000000174 2011_09_26 2011_09_26_drive_0059_sync 0000000176 2011_09_26 2011_09_26_drive_0059_sync 0000000178 2011_09_26 2011_09_26_drive_0059_sync 0000000180 2011_09_26 2011_09_26_drive_0059_sync 0000000182 2011_09_26 2011_09_26_drive_0059_sync 0000000185 2011_09_26 2011_09_26_drive_0059_sync 0000000188 2011_09_26 2011_09_26_drive_0059_sync 0000000191 2011_09_26 2011_09_26_drive_0059_sync 0000000195 2011_09_26 2011_09_26_drive_0059_sync 0000000199 2011_09_26 2011_09_26_drive_0059_sync 0000000203 2011_09_26 2011_09_26_drive_0059_sync 0000000208 2011_09_26 2011_09_26_drive_0059_sync 0000000213 2011_09_26 2011_09_26_drive_0059_sync 0000000217 2011_09_26 2011_09_26_drive_0059_sync 0000000222 2011_09_26 2011_09_26_drive_0059_sync 0000000228 2011_09_26 2011_09_26_drive_0059_sync 0000000233 2011_09_26 2011_09_26_drive_0059_sync 0000000238 2011_09_26 2011_09_26_drive_0059_sync 0000000243 2011_09_26 2011_09_26_drive_0059_sync 0000000248 2011_09_26 2011_09_26_drive_0059_sync 0000000252 2011_09_26 2011_09_26_drive_0059_sync 0000000256 2011_09_26 2011_09_26_drive_0059_sync 0000000259 2011_09_26 2011_09_26_drive_0059_sync 0000000262 2011_09_26 2011_09_26_drive_0059_sync 0000000264 2011_09_26 2011_09_26_drive_0059_sync 0000000266 2011_09_26 2011_09_26_drive_0059_sync 0000000268 2011_09_26 2011_09_26_drive_0059_sync 0000000270 2011_09_26 2011_09_26_drive_0059_sync 0000000272 2011_09_26 2011_09_26_drive_0059_sync 0000000274 2011_09_26 2011_09_26_drive_0059_sync 0000000276 2011_09_26 2011_09_26_drive_0059_sync 0000000278 2011_09_26 2011_09_26_drive_0059_sync 0000000280 2011_09_26 2011_09_26_drive_0059_sync 0000000282 2011_09_26 2011_09_26_drive_0059_sync 0000000284 2011_09_26 2011_09_26_drive_0059_sync 0000000286 2011_09_26 2011_09_26_drive_0059_sync 0000000288 2011_09_26 2011_09_26_drive_0059_sync 0000000290 2011_09_26 2011_09_26_drive_0059_sync 0000000292 2011_09_26 2011_09_26_drive_0059_sync 0000000294 2011_09_26 2011_09_26_drive_0059_sync 0000000296 2011_09_26 2011_09_26_drive_0059_sync 0000000298 2011_09_26 2011_09_26_drive_0059_sync 0000000300 2011_09_26 2011_09_26_drive_0059_sync 0000000302 2011_09_26 2011_09_26_drive_0059_sync 0000000304 2011_09_26 2011_09_26_drive_0059_sync 0000000306 2011_09_26 2011_09_26_drive_0059_sync 0000000308 2011_09_26 2011_09_26_drive_0059_sync 0000000310 2011_09_26 2011_09_26_drive_0059_sync 0000000312 2011_09_26 2011_09_26_drive_0059_sync 0000000314 2011_09_26 2011_09_26_drive_0059_sync 0000000316 2011_09_26 2011_09_26_drive_0059_sync 0000000318 2011_09_26 2011_09_26_drive_0059_sync 0000000320 2011_09_26 2011_09_26_drive_0059_sync 0000000322 2011_09_26 2011_09_26_drive_0059_sync 0000000324 2011_09_26 2011_09_26_drive_0059_sync 0000000326 2011_09_26 2011_09_26_drive_0059_sync 0000000328 2011_09_26 2011_09_26_drive_0059_sync 0000000330 2011_09_26 2011_09_26_drive_0059_sync 0000000332 2011_09_26 2011_09_26_drive_0059_sync 0000000334 2011_09_26 2011_09_26_drive_0059_sync 0000000336 2011_09_26 2011_09_26_drive_0059_sync 0000000338 2011_09_26 2011_09_26_drive_0059_sync 0000000343 2011_09_26 2011_09_26_drive_0059_sync 0000000351 2011_09_26 2011_09_26_drive_0059_sync 0000000356 2011_09_26 2011_09_26_drive_0059_sync 0000000358 2011_09_26 2011_09_26_drive_0059_sync 0000000360 2011_09_26 2011_09_26_drive_0059_sync 0000000362 2011_09_26 2011_09_26_drive_0059_sync 0000000364 2011_09_26 2011_09_26_drive_0059_sync 0000000366 2011_09_26 2011_09_26_drive_0059_sync 0000000368 2011_09_26 2011_09_26_drive_0059_sync 0000000370 2011_09_26 2011_09_26_drive_0059_sync 0000000372 2011_09_26 2011_09_26_drive_0084_sync 0000000007 2011_09_26 2011_09_26_drive_0084_sync 0000000052 2011_09_26 2011_09_26_drive_0084_sync 0000000061 2011_09_26 2011_09_26_drive_0084_sync 0000000066 2011_09_26 2011_09_26_drive_0084_sync 0000000069 2011_09_26 2011_09_26_drive_0084_sync 0000000072 2011_09_26 2011_09_26_drive_0084_sync 0000000074 2011_09_26 2011_09_26_drive_0084_sync 0000000076 2011_09_26 2011_09_26_drive_0084_sync 0000000078 2011_09_26 2011_09_26_drive_0084_sync 0000000080 2011_09_26 2011_09_26_drive_0084_sync 0000000082 2011_09_26 2011_09_26_drive_0084_sync 0000000084 2011_09_26 2011_09_26_drive_0084_sync 0000000086 2011_09_26 2011_09_26_drive_0084_sync 0000000087 2011_09_26 2011_09_26_drive_0084_sync 0000000088 2011_09_26 2011_09_26_drive_0084_sync 0000000089 2011_09_26 2011_09_26_drive_0084_sync 0000000091 2011_09_26 2011_09_26_drive_0084_sync 0000000092 2011_09_26 2011_09_26_drive_0084_sync 0000000093 2011_09_26 2011_09_26_drive_0084_sync 0000000094 2011_09_26 2011_09_26_drive_0084_sync 0000000095 2011_09_26 2011_09_26_drive_0084_sync 0000000096 2011_09_26 2011_09_26_drive_0084_sync 0000000097 2011_09_26 2011_09_26_drive_0084_sync 0000000098 2011_09_26 2011_09_26_drive_0084_sync 0000000099 2011_09_26 2011_09_26_drive_0084_sync 0000000100 2011_09_26 2011_09_26_drive_0084_sync 0000000101 2011_09_26 2011_09_26_drive_0084_sync 0000000102 2011_09_26 2011_09_26_drive_0084_sync 0000000103 2011_09_26 2011_09_26_drive_0084_sync 0000000104 2011_09_26 2011_09_26_drive_0084_sync 0000000105 2011_09_26 2011_09_26_drive_0084_sync 0000000106 2011_09_26 2011_09_26_drive_0084_sync 0000000107 2011_09_26 2011_09_26_drive_0084_sync 0000000108 2011_09_26 2011_09_26_drive_0084_sync 0000000109 2011_09_26 2011_09_26_drive_0084_sync 0000000110 2011_09_26 2011_09_26_drive_0084_sync 0000000111 2011_09_26 2011_09_26_drive_0084_sync 0000000113 2011_09_26 2011_09_26_drive_0084_sync 0000000115 2011_09_26 2011_09_26_drive_0084_sync 0000000117 2011_09_26 2011_09_26_drive_0084_sync 0000000119 2011_09_26 2011_09_26_drive_0084_sync 0000000121 2011_09_26 2011_09_26_drive_0084_sync 0000000123 2011_09_26 2011_09_26_drive_0084_sync 0000000125 2011_09_26 2011_09_26_drive_0084_sync 0000000127 2011_09_26 2011_09_26_drive_0084_sync 0000000129 2011_09_26 2011_09_26_drive_0084_sync 0000000131 2011_09_26 2011_09_26_drive_0084_sync 0000000133 2011_09_26 2011_09_26_drive_0084_sync 0000000135 2011_09_26 2011_09_26_drive_0084_sync 0000000137 2011_09_26 2011_09_26_drive_0084_sync 0000000139 2011_09_26 2011_09_26_drive_0084_sync 0000000141 2011_09_26 2011_09_26_drive_0084_sync 0000000143 2011_09_26 2011_09_26_drive_0084_sync 0000000145 2011_09_26 2011_09_26_drive_0084_sync 0000000147 2011_09_26 2011_09_26_drive_0084_sync 0000000149 2011_09_26 2011_09_26_drive_0084_sync 0000000151 2011_09_26 2011_09_26_drive_0084_sync 0000000153 2011_09_26 2011_09_26_drive_0084_sync 0000000155 2011_09_26 2011_09_26_drive_0084_sync 0000000157 2011_09_26 2011_09_26_drive_0084_sync 0000000159 2011_09_26 2011_09_26_drive_0084_sync 0000000161 2011_09_26 2011_09_26_drive_0084_sync 0000000163 2011_09_26 2011_09_26_drive_0084_sync 0000000165 2011_09_26 2011_09_26_drive_0084_sync 0000000167 2011_09_26 2011_09_26_drive_0084_sync 0000000169 2011_09_26 2011_09_26_drive_0084_sync 0000000171 2011_09_26 2011_09_26_drive_0084_sync 0000000173 2011_09_26 2011_09_26_drive_0084_sync 0000000175 2011_09_26 2011_09_26_drive_0084_sync 0000000177 2011_09_26 2011_09_26_drive_0084_sync 0000000179 2011_09_26 2011_09_26_drive_0084_sync 0000000181 2011_09_26 2011_09_26_drive_0084_sync 0000000183 2011_09_26 2011_09_26_drive_0084_sync 0000000185 2011_09_26 2011_09_26_drive_0084_sync 0000000187 2011_09_26 2011_09_26_drive_0084_sync 0000000189 2011_09_26 2011_09_26_drive_0084_sync 0000000192 2011_09_26 2011_09_26_drive_0084_sync 0000000194 2011_09_26 2011_09_26_drive_0084_sync 0000000196 2011_09_26 2011_09_26_drive_0084_sync 0000000198 2011_09_26 2011_09_26_drive_0084_sync 0000000200 2011_09_26 2011_09_26_drive_0084_sync 0000000202 2011_09_26 2011_09_26_drive_0084_sync 0000000204 2011_09_26 2011_09_26_drive_0084_sync 0000000206 2011_09_26 2011_09_26_drive_0084_sync 0000000208 2011_09_26 2011_09_26_drive_0084_sync 0000000210 2011_09_26 2011_09_26_drive_0084_sync 0000000212 2011_09_26 2011_09_26_drive_0084_sync 0000000214 2011_09_26 2011_09_26_drive_0084_sync 0000000216 2011_09_26 2011_09_26_drive_0084_sync 0000000217 2011_09_26 2011_09_26_drive_0084_sync 0000000218 2011_09_26 2011_09_26_drive_0084_sync 0000000219 2011_09_26 2011_09_26_drive_0084_sync 0000000220 2011_09_26 2011_09_26_drive_0084_sync 0000000221 2011_09_26 2011_09_26_drive_0084_sync 0000000222 2011_09_26 2011_09_26_drive_0084_sync 0000000223 2011_09_26 2011_09_26_drive_0084_sync 0000000224 2011_09_26 2011_09_26_drive_0084_sync 0000000225 2011_09_26 2011_09_26_drive_0084_sync 0000000226 2011_09_26 2011_09_26_drive_0084_sync 0000000227 2011_09_26 2011_09_26_drive_0084_sync 0000000228 2011_09_26 2011_09_26_drive_0084_sync 0000000229 2011_09_26 2011_09_26_drive_0084_sync 0000000230 2011_09_26 2011_09_26_drive_0084_sync 0000000231 2011_09_26 2011_09_26_drive_0084_sync 0000000232 2011_09_26 2011_09_26_drive_0084_sync 0000000233 2011_09_26 2011_09_26_drive_0084_sync 0000000234 2011_09_26 2011_09_26_drive_0084_sync 0000000235 2011_09_26 2011_09_26_drive_0084_sync 0000000236 2011_09_26 2011_09_26_drive_0084_sync 0000000237 2011_09_26 2011_09_26_drive_0084_sync 0000000238 2011_09_26 2011_09_26_drive_0084_sync 0000000239 2011_09_26 2011_09_26_drive_0084_sync 0000000240 2011_09_26 2011_09_26_drive_0084_sync 0000000241 2011_09_26 2011_09_26_drive_0084_sync 0000000242 2011_09_26 2011_09_26_drive_0084_sync 0000000243 2011_09_26 2011_09_26_drive_0084_sync 0000000244 2011_09_26 2011_09_26_drive_0084_sync 0000000245 2011_09_26 2011_09_26_drive_0084_sync 0000000246 2011_09_26 2011_09_26_drive_0084_sync 0000000248 2011_09_26 2011_09_26_drive_0084_sync 0000000250 2011_09_26 2011_09_26_drive_0084_sync 0000000252 2011_09_26 2011_09_26_drive_0084_sync 0000000254 2011_09_26 2011_09_26_drive_0084_sync 0000000256 2011_09_26 2011_09_26_drive_0084_sync 0000000258 2011_09_26 2011_09_26_drive_0084_sync 0000000260 2011_09_26 2011_09_26_drive_0084_sync 0000000262 2011_09_26 2011_09_26_drive_0084_sync 0000000264 2011_09_26 2011_09_26_drive_0084_sync 0000000265 2011_09_26 2011_09_26_drive_0084_sync 0000000266 2011_09_26 2011_09_26_drive_0084_sync 0000000268 2011_09_26 2011_09_26_drive_0084_sync 0000000270 2011_09_26 2011_09_26_drive_0084_sync 0000000272 2011_09_26 2011_09_26_drive_0084_sync 0000000274 2011_09_26 2011_09_26_drive_0084_sync 0000000276 2011_09_26 2011_09_26_drive_0084_sync 0000000278 2011_09_26 2011_09_26_drive_0084_sync 0000000280 2011_09_26 2011_09_26_drive_0084_sync 0000000282 2011_09_26 2011_09_26_drive_0084_sync 0000000284 2011_09_26 2011_09_26_drive_0084_sync 0000000286 2011_09_26 2011_09_26_drive_0084_sync 0000000288 2011_09_26 2011_09_26_drive_0084_sync 0000000290 2011_09_26 2011_09_26_drive_0084_sync 0000000292 2011_09_26 2011_09_26_drive_0084_sync 0000000294 2011_09_26 2011_09_26_drive_0084_sync 0000000296 2011_09_26 2011_09_26_drive_0084_sync 0000000298 2011_09_26 2011_09_26_drive_0084_sync 0000000300 2011_09_26 2011_09_26_drive_0084_sync 0000000302 2011_09_26 2011_09_26_drive_0084_sync 0000000304 2011_09_26 2011_09_26_drive_0084_sync 0000000306 2011_09_26 2011_09_26_drive_0084_sync 0000000308 2011_09_26 2011_09_26_drive_0084_sync 0000000310 2011_09_26 2011_09_26_drive_0084_sync 0000000312 2011_09_26 2011_09_26_drive_0084_sync 0000000315 2011_09_26 2011_09_26_drive_0084_sync 0000000317 2011_09_26 2011_09_26_drive_0084_sync 0000000319 2011_09_26 2011_09_26_drive_0084_sync 0000000321 2011_09_26 2011_09_26_drive_0084_sync 0000000323 2011_09_26 2011_09_26_drive_0084_sync 0000000325 2011_09_26 2011_09_26_drive_0084_sync 0000000327 2011_09_26 2011_09_26_drive_0084_sync 0000000329 2011_09_26 2011_09_26_drive_0084_sync 0000000331 2011_09_26 2011_09_26_drive_0084_sync 0000000333 2011_09_26 2011_09_26_drive_0084_sync 0000000335 2011_09_26 2011_09_26_drive_0084_sync 0000000337 2011_09_26 2011_09_26_drive_0084_sync 0000000339 2011_09_26 2011_09_26_drive_0084_sync 0000000341 2011_09_26 2011_09_26_drive_0084_sync 0000000343 2011_09_26 2011_09_26_drive_0084_sync 0000000346 2011_09_26 2011_09_26_drive_0084_sync 0000000349 2011_09_26 2011_09_26_drive_0084_sync 0000000352 2011_09_26 2011_09_26_drive_0084_sync 0000000355 2011_09_26 2011_09_26_drive_0084_sync 0000000359 2011_09_26 2011_09_26_drive_0084_sync 0000000364 2011_09_26 2011_09_26_drive_0084_sync 0000000373 2011_09_26 2011_09_26_drive_0091_sync 0000000005 2011_09_26 2011_09_26_drive_0091_sync 0000000007 2011_09_26 2011_09_26_drive_0091_sync 0000000009 2011_09_26 2011_09_26_drive_0091_sync 0000000011 2011_09_26 2011_09_26_drive_0091_sync 0000000013 2011_09_26 2011_09_26_drive_0091_sync 0000000015 2011_09_26 2011_09_26_drive_0091_sync 0000000017 2011_09_26 2011_09_26_drive_0091_sync 0000000019 2011_09_26 2011_09_26_drive_0091_sync 0000000021 2011_09_26 2011_09_26_drive_0091_sync 0000000023 2011_09_26 2011_09_26_drive_0091_sync 0000000025 2011_09_26 2011_09_26_drive_0091_sync 0000000027 2011_09_26 2011_09_26_drive_0091_sync 0000000029 2011_09_26 2011_09_26_drive_0091_sync 0000000031 2011_09_26 2011_09_26_drive_0091_sync 0000000033 2011_09_26 2011_09_26_drive_0091_sync 0000000035 2011_09_26 2011_09_26_drive_0091_sync 0000000037 2011_09_26 2011_09_26_drive_0091_sync 0000000039 2011_09_26 2011_09_26_drive_0091_sync 0000000041 2011_09_26 2011_09_26_drive_0091_sync 0000000043 2011_09_26 2011_09_26_drive_0091_sync 0000000045 2011_09_26 2011_09_26_drive_0091_sync 0000000047 2011_09_26 2011_09_26_drive_0091_sync 0000000049 2011_09_26 2011_09_26_drive_0091_sync 0000000051 2011_09_26 2011_09_26_drive_0091_sync 0000000053 2011_09_26 2011_09_26_drive_0091_sync 0000000055 2011_09_26 2011_09_26_drive_0091_sync 0000000057 2011_09_26 2011_09_26_drive_0091_sync 0000000059 2011_09_26 2011_09_26_drive_0091_sync 0000000061 2011_09_26 2011_09_26_drive_0091_sync 0000000063 2011_09_26 2011_09_26_drive_0091_sync 0000000065 2011_09_26 2011_09_26_drive_0091_sync 0000000067 2011_09_26 2011_09_26_drive_0091_sync 0000000069 2011_09_26 2011_09_26_drive_0091_sync 0000000071 2011_09_26 2011_09_26_drive_0091_sync 0000000073 2011_09_26 2011_09_26_drive_0091_sync 0000000075 2011_09_26 2011_09_26_drive_0091_sync 0000000077 2011_09_26 2011_09_26_drive_0091_sync 0000000079 2011_09_26 2011_09_26_drive_0091_sync 0000000081 2011_09_26 2011_09_26_drive_0091_sync 0000000083 2011_09_26 2011_09_26_drive_0091_sync 0000000085 2011_09_26 2011_09_26_drive_0091_sync 0000000087 2011_09_26 2011_09_26_drive_0091_sync 0000000089 2011_09_26 2011_09_26_drive_0091_sync 0000000091 2011_09_26 2011_09_26_drive_0091_sync 0000000093 2011_09_26 2011_09_26_drive_0091_sync 0000000095 2011_09_26 2011_09_26_drive_0091_sync 0000000097 2011_09_26 2011_09_26_drive_0091_sync 0000000099 2011_09_26 2011_09_26_drive_0091_sync 0000000101 2011_09_26 2011_09_26_drive_0091_sync 0000000103 2011_09_26 2011_09_26_drive_0091_sync 0000000105 2011_09_26 2011_09_26_drive_0091_sync 0000000107 2011_09_26 2011_09_26_drive_0091_sync 0000000109 2011_09_26 2011_09_26_drive_0091_sync 0000000111 2011_09_26 2011_09_26_drive_0091_sync 0000000113 2011_09_26 2011_09_26_drive_0091_sync 0000000115 2011_09_26 2011_09_26_drive_0091_sync 0000000117 2011_09_26 2011_09_26_drive_0091_sync 0000000119 2011_09_26 2011_09_26_drive_0091_sync 0000000122 2011_09_26 2011_09_26_drive_0091_sync 0000000125 2011_09_26 2011_09_26_drive_0091_sync 0000000127 2011_09_26 2011_09_26_drive_0091_sync 0000000130 2011_09_26 2011_09_26_drive_0091_sync 0000000207 2011_09_26 2011_09_26_drive_0091_sync 0000000210 2011_09_26 2011_09_26_drive_0091_sync 0000000213 2011_09_26 2011_09_26_drive_0091_sync 0000000215 2011_09_26 2011_09_26_drive_0091_sync 0000000217 2011_09_26 2011_09_26_drive_0091_sync 0000000219 2011_09_26 2011_09_26_drive_0091_sync 0000000221 2011_09_26 2011_09_26_drive_0091_sync 0000000223 2011_09_26 2011_09_26_drive_0091_sync 0000000225 2011_09_26 2011_09_26_drive_0091_sync 0000000227 2011_09_26 2011_09_26_drive_0091_sync 0000000229 2011_09_26 2011_09_26_drive_0091_sync 0000000231 2011_09_26 2011_09_26_drive_0091_sync 0000000233 2011_09_26 2011_09_26_drive_0091_sync 0000000235 2011_09_26 2011_09_26_drive_0091_sync 0000000237 2011_09_26 2011_09_26_drive_0091_sync 0000000239 2011_09_26 2011_09_26_drive_0091_sync 0000000241 2011_09_26 2011_09_26_drive_0091_sync 0000000243 2011_09_26 2011_09_26_drive_0091_sync 0000000245 2011_09_26 2011_09_26_drive_0091_sync 0000000247 2011_09_26 2011_09_26_drive_0091_sync 0000000249 2011_09_26 2011_09_26_drive_0091_sync 0000000251 2011_09_26 2011_09_26_drive_0091_sync 0000000253 2011_09_26 2011_09_26_drive_0091_sync 0000000255 2011_09_26 2011_09_26_drive_0091_sync 0000000257 2011_09_26 2011_09_26_drive_0091_sync 0000000259 2011_09_26 2011_09_26_drive_0091_sync 0000000261 2011_09_26 2011_09_26_drive_0091_sync 0000000263 2011_09_26 2011_09_26_drive_0091_sync 0000000265 2011_09_26 2011_09_26_drive_0091_sync 0000000267 2011_09_26 2011_09_26_drive_0091_sync 0000000269 2011_09_26 2011_09_26_drive_0091_sync 0000000271 2011_09_26 2011_09_26_drive_0091_sync 0000000273 2011_09_26 2011_09_26_drive_0091_sync 0000000275 2011_09_26 2011_09_26_drive_0091_sync 0000000277 2011_09_26 2011_09_26_drive_0091_sync 0000000279 2011_09_26 2011_09_26_drive_0091_sync 0000000281 2011_09_26 2011_09_26_drive_0091_sync 0000000283 2011_09_26 2011_09_26_drive_0091_sync 0000000285 2011_09_26 2011_09_26_drive_0091_sync 0000000287 2011_09_26 2011_09_26_drive_0091_sync 0000000289 2011_09_26 2011_09_26_drive_0091_sync 0000000291 2011_09_26 2011_09_26_drive_0091_sync 0000000293 2011_09_26 2011_09_26_drive_0091_sync 0000000295 2011_09_26 2011_09_26_drive_0091_sync 0000000297 2011_09_26 2011_09_26_drive_0091_sync 0000000299 2011_09_26 2011_09_26_drive_0091_sync 0000000301 2011_09_26 2011_09_26_drive_0091_sync 0000000303 2011_09_26 2011_09_26_drive_0091_sync 0000000305 2011_09_26 2011_09_26_drive_0091_sync 0000000307 2011_09_26 2011_09_26_drive_0091_sync 0000000309 2011_09_26 2011_09_26_drive_0091_sync 0000000311 2011_09_26 2011_09_26_drive_0091_sync 0000000313 2011_09_26 2011_09_26_drive_0091_sync 0000000315 2011_09_26 2011_09_26_drive_0091_sync 0000000317 2011_09_26 2011_09_26_drive_0091_sync 0000000319 2011_09_26 2011_09_26_drive_0091_sync 0000000321 2011_09_26 2011_09_26_drive_0091_sync 0000000323 2011_09_26 2011_09_26_drive_0091_sync 0000000325 2011_09_26 2011_09_26_drive_0091_sync 0000000327 2011_09_26 2011_09_26_drive_0091_sync 0000000329 2011_09_26 2011_09_26_drive_0091_sync 0000000331 2011_09_26 2011_09_26_drive_0091_sync 0000000333 2011_09_26 2011_09_26_drive_0091_sync 0000000335 2011_09_26 2011_09_26_drive_0091_sync 0000000337 2011_09_26 2011_09_26_drive_0091_sync 0000000339 2011_09_26 2011_09_26_drive_0101_sync 0000000001 2011_09_26 2011_09_26_drive_0101_sync 0000000003 2011_09_26 2011_09_26_drive_0101_sync 0000000005 2011_09_26 2011_09_26_drive_0101_sync 0000000007 2011_09_26 2011_09_26_drive_0101_sync 0000000009 2011_09_26 2011_09_26_drive_0101_sync 0000000011 2011_09_26 2011_09_26_drive_0101_sync 0000000013 2011_09_26 2011_09_26_drive_0101_sync 0000000015 2011_09_26 2011_09_26_drive_0101_sync 0000000017 2011_09_26 2011_09_26_drive_0101_sync 0000000019 2011_09_26 2011_09_26_drive_0101_sync 0000000023 2011_09_26 2011_09_26_drive_0101_sync 0000000025 2011_09_26 2011_09_26_drive_0101_sync 0000000027 2011_09_26 2011_09_26_drive_0101_sync 0000000031 2011_09_26 2011_09_26_drive_0101_sync 0000000035 2011_09_26 2011_09_26_drive_0101_sync 0000000039 2011_09_26 2011_09_26_drive_0101_sync 0000000042 2011_09_26 2011_09_26_drive_0101_sync 0000000045 2011_09_26 2011_09_26_drive_0101_sync 0000000048 2011_09_26 2011_09_26_drive_0101_sync 0000000051 2011_09_26 2011_09_26_drive_0101_sync 0000000054 2011_09_26 2011_09_26_drive_0101_sync 0000000057 2011_09_26 2011_09_26_drive_0101_sync 0000000060 2011_09_26 2011_09_26_drive_0101_sync 0000000063 2011_09_26 2011_09_26_drive_0101_sync 0000000066 2011_09_26 2011_09_26_drive_0101_sync 0000000069 2011_09_26 2011_09_26_drive_0101_sync 0000000072 2011_09_26 2011_09_26_drive_0101_sync 0000000076 2011_09_26 2011_09_26_drive_0101_sync 0000000080 2011_09_26 2011_09_26_drive_0101_sync 0000000084 2011_09_26 2011_09_26_drive_0101_sync 0000000087 2011_09_26 2011_09_26_drive_0101_sync 0000000089 2011_09_26 2011_09_26_drive_0101_sync 0000000091 2011_09_26 2011_09_26_drive_0101_sync 0000000093 2011_09_26 2011_09_26_drive_0101_sync 0000000095 2011_09_26 2011_09_26_drive_0101_sync 0000000097 2011_09_26 2011_09_26_drive_0101_sync 0000000099 2011_09_26 2011_09_26_drive_0101_sync 0000000101 2011_09_26 2011_09_26_drive_0101_sync 0000000103 2011_09_26 2011_09_26_drive_0101_sync 0000000105 2011_09_26 2011_09_26_drive_0101_sync 0000000107 2011_09_26 2011_09_26_drive_0101_sync 0000000109 2011_09_26 2011_09_26_drive_0101_sync 0000000111 2011_09_26 2011_09_26_drive_0101_sync 0000000113 2011_09_26 2011_09_26_drive_0101_sync 0000000115 2011_09_26 2011_09_26_drive_0101_sync 0000000117 2011_09_26 2011_09_26_drive_0101_sync 0000000119 2011_09_26 2011_09_26_drive_0101_sync 0000000121 2011_09_26 2011_09_26_drive_0101_sync 0000000124 2011_09_26 2011_09_26_drive_0101_sync 0000000127 2011_09_26 2011_09_26_drive_0101_sync 0000000130 2011_09_26 2011_09_26_drive_0101_sync 0000000134 2011_09_26 2011_09_26_drive_0101_sync 0000000138 2011_09_26 2011_09_26_drive_0101_sync 0000000143 2011_09_26 2011_09_26_drive_0101_sync 0000000149 2011_09_26 2011_09_26_drive_0101_sync 0000000152 2011_09_26 2011_09_26_drive_0101_sync 0000000154 2011_09_26 2011_09_26_drive_0101_sync 0000000158 2011_09_26 2011_09_26_drive_0101_sync 0000000160 2011_09_26 2011_09_26_drive_0101_sync 0000000162 2011_09_26 2011_09_26_drive_0101_sync 0000000164 2011_09_26 2011_09_26_drive_0101_sync 0000000166 2011_09_26 2011_09_26_drive_0101_sync 0000000167 2011_09_26 2011_09_26_drive_0101_sync 0000000168 2011_09_26 2011_09_26_drive_0101_sync 0000000169 2011_09_26 2011_09_26_drive_0101_sync 0000000170 2011_09_26 2011_09_26_drive_0101_sync 0000000171 2011_09_26 2011_09_26_drive_0101_sync 0000000172 2011_09_26 2011_09_26_drive_0101_sync 0000000173 2011_09_26 2011_09_26_drive_0101_sync 0000000174 2011_09_26 2011_09_26_drive_0101_sync 0000000175 2011_09_26 2011_09_26_drive_0101_sync 0000000177 2011_09_26 2011_09_26_drive_0101_sync 0000000179 2011_09_26 2011_09_26_drive_0101_sync 0000000181 2011_09_26 2011_09_26_drive_0101_sync 0000000184 2011_09_26 2011_09_26_drive_0101_sync 0000000187 2011_09_26 2011_09_26_drive_0101_sync 0000000190 2011_09_26 2011_09_26_drive_0101_sync 0000000194 2011_09_26 2011_09_26_drive_0101_sync 0000000197 2011_09_26 2011_09_26_drive_0101_sync 0000000199 2011_09_26 2011_09_26_drive_0101_sync 0000000201 2011_09_26 2011_09_26_drive_0101_sync 0000000202 2011_09_26 2011_09_26_drive_0101_sync 0000000203 2011_09_26 2011_09_26_drive_0101_sync 0000000204 2011_09_26 2011_09_26_drive_0101_sync 0000000205 2011_09_26 2011_09_26_drive_0101_sync 0000000206 2011_09_26 2011_09_26_drive_0101_sync 0000000207 2011_09_26 2011_09_26_drive_0101_sync 0000000208 2011_09_26 2011_09_26_drive_0101_sync 0000000209 2011_09_26 2011_09_26_drive_0101_sync 0000000210 2011_09_26 2011_09_26_drive_0101_sync 0000000211 2011_09_26 2011_09_26_drive_0101_sync 0000000212 2011_09_26 2011_09_26_drive_0101_sync 0000000213 2011_09_26 2011_09_26_drive_0101_sync 0000000214 2011_09_26 2011_09_26_drive_0101_sync 0000000215 2011_09_26 2011_09_26_drive_0101_sync 0000000216 2011_09_26 2011_09_26_drive_0101_sync 0000000217 2011_09_26 2011_09_26_drive_0101_sync 0000000218 2011_09_26 2011_09_26_drive_0101_sync 0000000219 2011_09_26 2011_09_26_drive_0101_sync 0000000220 2011_09_26 2011_09_26_drive_0101_sync 0000000221 2011_09_26 2011_09_26_drive_0101_sync 0000000222 2011_09_26 2011_09_26_drive_0101_sync 0000000223 2011_09_26 2011_09_26_drive_0101_sync 0000000224 2011_09_26 2011_09_26_drive_0101_sync 0000000225 2011_09_26 2011_09_26_drive_0101_sync 0000000226 2011_09_26 2011_09_26_drive_0101_sync 0000000227 2011_09_26 2011_09_26_drive_0101_sync 0000000228 2011_09_26 2011_09_26_drive_0101_sync 0000000229 2011_09_26 2011_09_26_drive_0101_sync 0000000230 2011_09_26 2011_09_26_drive_0101_sync 0000000231 2011_09_26 2011_09_26_drive_0101_sync 0000000232 2011_09_26 2011_09_26_drive_0101_sync 0000000233 2011_09_26 2011_09_26_drive_0101_sync 0000000234 2011_09_26 2011_09_26_drive_0101_sync 0000000235 2011_09_26 2011_09_26_drive_0101_sync 0000000236 2011_09_26 2011_09_26_drive_0101_sync 0000000237 2011_09_26 2011_09_26_drive_0101_sync 0000000238 2011_09_26 2011_09_26_drive_0101_sync 0000000239 2011_09_26 2011_09_26_drive_0101_sync 0000000240 2011_09_26 2011_09_26_drive_0101_sync 0000000241 2011_09_26 2011_09_26_drive_0101_sync 0000000242 2011_09_26 2011_09_26_drive_0101_sync 0000000243 2011_09_26 2011_09_26_drive_0101_sync 0000000244 2011_09_26 2011_09_26_drive_0101_sync 0000000245 2011_09_26 2011_09_26_drive_0101_sync 0000000246 2011_09_26 2011_09_26_drive_0101_sync 0000000247 2011_09_26 2011_09_26_drive_0101_sync 0000000248 2011_09_26 2011_09_26_drive_0101_sync 0000000249 2011_09_26 2011_09_26_drive_0101_sync 0000000250 2011_09_26 2011_09_26_drive_0101_sync 0000000251 2011_09_26 2011_09_26_drive_0101_sync 0000000252 2011_09_26 2011_09_26_drive_0101_sync 0000000253 2011_09_26 2011_09_26_drive_0101_sync 0000000254 2011_09_26 2011_09_26_drive_0101_sync 0000000255 2011_09_26 2011_09_26_drive_0101_sync 0000000256 2011_09_26 2011_09_26_drive_0101_sync 0000000257 2011_09_26 2011_09_26_drive_0101_sync 0000000259 2011_09_26 2011_09_26_drive_0101_sync 0000000261 2011_09_26 2011_09_26_drive_0101_sync 0000000263 2011_09_26 2011_09_26_drive_0101_sync 0000000265 2011_09_26 2011_09_26_drive_0101_sync 0000000266 2011_09_26 2011_09_26_drive_0101_sync 0000000269 2011_09_26 2011_09_26_drive_0101_sync 0000000272 2011_09_26 2011_09_26_drive_0101_sync 0000000275 2011_09_26 2011_09_26_drive_0101_sync 0000000278 2011_09_26 2011_09_26_drive_0101_sync 0000000280 2011_09_26 2011_09_26_drive_0101_sync 0000000282 2011_09_26 2011_09_26_drive_0101_sync 0000000284 2011_09_26 2011_09_26_drive_0101_sync 0000000286 2011_09_26 2011_09_26_drive_0101_sync 0000000288 2011_09_26 2011_09_26_drive_0101_sync 0000000290 2011_09_26 2011_09_26_drive_0101_sync 0000000292 2011_09_26 2011_09_26_drive_0101_sync 0000000293 2011_09_26 2011_09_26_drive_0101_sync 0000000294 2011_09_26 2011_09_26_drive_0101_sync 0000000295 2011_09_26 2011_09_26_drive_0101_sync 0000000296 2011_09_26 2011_09_26_drive_0101_sync 0000000297 2011_09_26 2011_09_26_drive_0101_sync 0000000298 2011_09_26 2011_09_26_drive_0101_sync 0000000299 2011_09_26 2011_09_26_drive_0101_sync 0000000300 2011_09_26 2011_09_26_drive_0101_sync 0000000301 2011_09_26 2011_09_26_drive_0101_sync 0000000302 2011_09_26 2011_09_26_drive_0101_sync 0000000303 2011_09_26 2011_09_26_drive_0101_sync 0000000304 2011_09_26 2011_09_26_drive_0101_sync 0000000305 2011_09_26 2011_09_26_drive_0101_sync 0000000306 2011_09_26 2011_09_26_drive_0101_sync 0000000307 2011_09_26 2011_09_26_drive_0101_sync 0000000308 2011_09_26 2011_09_26_drive_0101_sync 0000000309 2011_09_26 2011_09_26_drive_0101_sync 0000000310 2011_09_26 2011_09_26_drive_0101_sync 0000000312 2011_09_26 2011_09_26_drive_0101_sync 0000000314 2011_09_26 2011_09_26_drive_0101_sync 0000000315 2011_09_26 2011_09_26_drive_0101_sync 0000000316 2011_09_26 2011_09_26_drive_0101_sync 0000000317 2011_09_26 2011_09_26_drive_0101_sync 0000000318 2011_09_26 2011_09_26_drive_0101_sync 0000000319 2011_09_26 2011_09_26_drive_0101_sync 0000000320 2011_09_26 2011_09_26_drive_0101_sync 0000000321 2011_09_26 2011_09_26_drive_0101_sync 0000000322 2011_09_26 2011_09_26_drive_0101_sync 0000000323 2011_09_26 2011_09_26_drive_0101_sync 0000000324 2011_09_26 2011_09_26_drive_0101_sync 0000000325 2011_09_26 2011_09_26_drive_0101_sync 0000000326 2011_09_26 2011_09_26_drive_0101_sync 0000000327 2011_09_26 2011_09_26_drive_0101_sync 0000000328 2011_09_26 2011_09_26_drive_0101_sync 0000000329 2011_09_26 2011_09_26_drive_0101_sync 0000000330 2011_09_26 2011_09_26_drive_0101_sync 0000000331 2011_09_26 2011_09_26_drive_0101_sync 0000000332 2011_09_26 2011_09_26_drive_0101_sync 0000000333 2011_09_26 2011_09_26_drive_0101_sync 0000000338 2011_09_26 2011_09_26_drive_0101_sync 0000000342 2011_09_26 2011_09_26_drive_0101_sync 0000000347 2011_09_26 2011_09_26_drive_0101_sync 0000000351 2011_09_26 2011_09_26_drive_0101_sync 0000000354 2011_09_26 2011_09_26_drive_0101_sync 0000000357 2011_09_26 2011_09_26_drive_0101_sync 0000000360 2011_09_26 2011_09_26_drive_0101_sync 0000000363 2011_09_26 2011_09_26_drive_0101_sync 0000000366 2011_09_26 2011_09_26_drive_0101_sync 0000000369 2011_09_26 2011_09_26_drive_0101_sync 0000000372 2011_09_26 2011_09_26_drive_0101_sync 0000000375 2011_09_26 2011_09_26_drive_0101_sync 0000000378 2011_09_26 2011_09_26_drive_0101_sync 0000000381 2011_09_26 2011_09_26_drive_0101_sync 0000000384 2011_09_26 2011_09_26_drive_0101_sync 0000000386 2011_09_26 2011_09_26_drive_0101_sync 0000000388 2011_09_26 2011_09_26_drive_0101_sync 0000000390 2011_09_26 2011_09_26_drive_0101_sync 0000000392 2011_09_26 2011_09_26_drive_0101_sync 0000000394 2011_09_26 2011_09_26_drive_0101_sync 0000000396 2011_09_26 2011_09_26_drive_0101_sync 0000000398 2011_09_26 2011_09_26_drive_0101_sync 0000000401 2011_09_26 2011_09_26_drive_0101_sync 0000000410 2011_09_26 2011_09_26_drive_0101_sync 0000000411 2011_09_26 2011_09_26_drive_0101_sync 0000000412 2011_09_26 2011_09_26_drive_0101_sync 0000000413 2011_09_26 2011_09_26_drive_0101_sync 0000000414 2011_09_26 2011_09_26_drive_0101_sync 0000000415 2011_09_26 2011_09_26_drive_0101_sync 0000000418 2011_09_26 2011_09_26_drive_0101_sync 0000000419 2011_09_26 2011_09_26_drive_0101_sync 0000000420 2011_09_26 2011_09_26_drive_0101_sync 0000000421 2011_09_26 2011_09_26_drive_0101_sync 0000000422 2011_09_26 2011_09_26_drive_0101_sync 0000000423 2011_09_26 2011_09_26_drive_0101_sync 0000000424 2011_09_26 2011_09_26_drive_0101_sync 0000000425 2011_09_26 2011_09_26_drive_0101_sync 0000000426 2011_09_26 2011_09_26_drive_0101_sync 0000000427 2011_09_26 2011_09_26_drive_0101_sync 0000000429 2011_09_26 2011_09_26_drive_0101_sync 0000000430 2011_09_26 2011_09_26_drive_0101_sync 0000000431 2011_09_26 2011_09_26_drive_0101_sync 0000000432 2011_09_26 2011_09_26_drive_0101_sync 0000000433 2011_09_26 2011_09_26_drive_0101_sync 0000000434 2011_09_26 2011_09_26_drive_0101_sync 0000000435 2011_09_26 2011_09_26_drive_0101_sync 0000000436 2011_09_26 2011_09_26_drive_0101_sync 0000000437 2011_09_26 2011_09_26_drive_0101_sync 0000000438 2011_09_26 2011_09_26_drive_0101_sync 0000000439 2011_09_26 2011_09_26_drive_0101_sync 0000000440 2011_09_26 2011_09_26_drive_0101_sync 0000000441 2011_09_26 2011_09_26_drive_0101_sync 0000000442 2011_09_26 2011_09_26_drive_0101_sync 0000000443 2011_09_26 2011_09_26_drive_0101_sync 0000000444 2011_09_26 2011_09_26_drive_0101_sync 0000000445 2011_09_26 2011_09_26_drive_0101_sync 0000000446 2011_09_26 2011_09_26_drive_0101_sync 0000000447 2011_09_26 2011_09_26_drive_0101_sync 0000000448 2011_09_26 2011_09_26_drive_0101_sync 0000000449 2011_09_26 2011_09_26_drive_0101_sync 0000000450 2011_09_26 2011_09_26_drive_0101_sync 0000000451 2011_09_26 2011_09_26_drive_0101_sync 0000000452 2011_09_26 2011_09_26_drive_0101_sync 0000000453 2011_09_26 2011_09_26_drive_0101_sync 0000000454 2011_09_26 2011_09_26_drive_0101_sync 0000000455 2011_09_26 2011_09_26_drive_0101_sync 0000000456 2011_09_26 2011_09_26_drive_0101_sync 0000000459 2011_09_26 2011_09_26_drive_0101_sync 0000000495 2011_09_26 2011_09_26_drive_0101_sync 0000000496 2011_09_26 2011_09_26_drive_0101_sync 0000000497 2011_09_26 2011_09_26_drive_0101_sync 0000000498 2011_09_26 2011_09_26_drive_0101_sync 0000000499 2011_09_26 2011_09_26_drive_0101_sync 0000000500 2011_09_26 2011_09_26_drive_0101_sync 0000000501 2011_09_26 2011_09_26_drive_0101_sync 0000000502 2011_09_26 2011_09_26_drive_0101_sync 0000000503 2011_09_26 2011_09_26_drive_0101_sync 0000000504 2011_09_26 2011_09_26_drive_0101_sync 0000000505 2011_09_26 2011_09_26_drive_0101_sync 0000000506 2011_09_26 2011_09_26_drive_0101_sync 0000000507 2011_09_26 2011_09_26_drive_0101_sync 0000000524 2011_09_26 2011_09_26_drive_0101_sync 0000000525 2011_09_26 2011_09_26_drive_0101_sync 0000000526 2011_09_26 2011_09_26_drive_0101_sync 0000000527 2011_09_26 2011_09_26_drive_0101_sync 0000000528 2011_09_26 2011_09_26_drive_0101_sync 0000000529 2011_09_26 2011_09_26_drive_0101_sync 0000000530 2011_09_26 2011_09_26_drive_0101_sync 0000000531 2011_09_26 2011_09_26_drive_0101_sync 0000000532 2011_09_26 2011_09_26_drive_0101_sync 0000000533 2011_09_26 2011_09_26_drive_0101_sync 0000000534 2011_09_26 2011_09_26_drive_0101_sync 0000000535 2011_09_26 2011_09_26_drive_0101_sync 0000000536 2011_09_26 2011_09_26_drive_0101_sync 0000000537 2011_09_26 2011_09_26_drive_0101_sync 0000000538 2011_09_26 2011_09_26_drive_0101_sync 0000000539 2011_09_26 2011_09_26_drive_0101_sync 0000000540 2011_09_26 2011_09_26_drive_0101_sync 0000000541 2011_09_26 2011_09_26_drive_0101_sync 0000000542 2011_09_26 2011_09_26_drive_0101_sync 0000000543 2011_09_26 2011_09_26_drive_0101_sync 0000000544 2011_09_26 2011_09_26_drive_0101_sync 0000000545 2011_09_26 2011_09_26_drive_0101_sync 0000000546 2011_09_26 2011_09_26_drive_0101_sync 0000000547 2011_09_26 2011_09_26_drive_0101_sync 0000000548 2011_09_26 2011_09_26_drive_0101_sync 0000000549 2011_09_26 2011_09_26_drive_0101_sync 0000000550 2011_09_26 2011_09_26_drive_0101_sync 0000000551 2011_09_26 2011_09_26_drive_0101_sync 0000000552 2011_09_26 2011_09_26_drive_0101_sync 0000000553 2011_09_26 2011_09_26_drive_0101_sync 0000000554 2011_09_26 2011_09_26_drive_0101_sync 0000000555 2011_09_26 2011_09_26_drive_0101_sync 0000000556 2011_09_26 2011_09_26_drive_0101_sync 0000000557 2011_09_26 2011_09_26_drive_0101_sync 0000000558 2011_09_26 2011_09_26_drive_0101_sync 0000000559 2011_09_26 2011_09_26_drive_0101_sync 0000000560 2011_09_26 2011_09_26_drive_0101_sync 0000000561 2011_09_26 2011_09_26_drive_0101_sync 0000000562 2011_09_26 2011_09_26_drive_0101_sync 0000000563 2011_09_26 2011_09_26_drive_0101_sync 0000000564 2011_09_26 2011_09_26_drive_0101_sync 0000000565 2011_09_26 2011_09_26_drive_0101_sync 0000000566 2011_09_26 2011_09_26_drive_0101_sync 0000000567 2011_09_26 2011_09_26_drive_0101_sync 0000000568 2011_09_26 2011_09_26_drive_0101_sync 0000000569 2011_09_26 2011_09_26_drive_0101_sync 0000000570 2011_09_26 2011_09_26_drive_0101_sync 0000000571 2011_09_26 2011_09_26_drive_0101_sync 0000000572 2011_09_26 2011_09_26_drive_0101_sync 0000000573 2011_09_26 2011_09_26_drive_0101_sync 0000000574 2011_09_26 2011_09_26_drive_0101_sync 0000000575 2011_09_26 2011_09_26_drive_0101_sync 0000000576 2011_09_26 2011_09_26_drive_0101_sync 0000000577 2011_09_26 2011_09_26_drive_0101_sync 0000000578 2011_09_26 2011_09_26_drive_0101_sync 0000000579 2011_09_26 2011_09_26_drive_0101_sync 0000000580 2011_09_26 2011_09_26_drive_0101_sync 0000000581 2011_09_26 2011_09_26_drive_0101_sync 0000000582 2011_09_26 2011_09_26_drive_0101_sync 0000000583 2011_09_26 2011_09_26_drive_0101_sync 0000000584 2011_09_26 2011_09_26_drive_0101_sync 0000000585 2011_09_26 2011_09_26_drive_0101_sync 0000000586 2011_09_26 2011_09_26_drive_0101_sync 0000000587 2011_09_26 2011_09_26_drive_0101_sync 0000000588 2011_09_26 2011_09_26_drive_0101_sync 0000000589 2011_09_26 2011_09_26_drive_0101_sync 0000000590 2011_09_26 2011_09_26_drive_0101_sync 0000000591 2011_09_26 2011_09_26_drive_0101_sync 0000000592 2011_09_26 2011_09_26_drive_0101_sync 0000000593 2011_09_26 2011_09_26_drive_0101_sync 0000000594 2011_09_26 2011_09_26_drive_0101_sync 0000000595 2011_09_26 2011_09_26_drive_0101_sync 0000000596 2011_09_26 2011_09_26_drive_0101_sync 0000000597 2011_09_26 2011_09_26_drive_0101_sync 0000000598 2011_09_26 2011_09_26_drive_0101_sync 0000000599 2011_09_26 2011_09_26_drive_0101_sync 0000000600 2011_09_26 2011_09_26_drive_0101_sync 0000000601 2011_09_26 2011_09_26_drive_0101_sync 0000000602 2011_09_26 2011_09_26_drive_0101_sync 0000000603 2011_09_26 2011_09_26_drive_0101_sync 0000000604 2011_09_26 2011_09_26_drive_0101_sync 0000000605 2011_09_26 2011_09_26_drive_0101_sync 0000000606 2011_09_26 2011_09_26_drive_0101_sync 0000000607 2011_09_26 2011_09_26_drive_0101_sync 0000000608 2011_09_26 2011_09_26_drive_0101_sync 0000000609 2011_09_26 2011_09_26_drive_0101_sync 0000000620 2011_09_26 2011_09_26_drive_0101_sync 0000000621 2011_09_26 2011_09_26_drive_0101_sync 0000000622 2011_09_26 2011_09_26_drive_0101_sync 0000000623 2011_09_26 2011_09_26_drive_0101_sync 0000000624 2011_09_26 2011_09_26_drive_0101_sync 0000000625 2011_09_26 2011_09_26_drive_0101_sync 0000000626 2011_09_26 2011_09_26_drive_0101_sync 0000000627 2011_09_26 2011_09_26_drive_0101_sync 0000000628 2011_09_26 2011_09_26_drive_0101_sync 0000000629 2011_09_26 2011_09_26_drive_0101_sync 0000000630 2011_09_26 2011_09_26_drive_0101_sync 0000000631 2011_09_26 2011_09_26_drive_0101_sync 0000000632 2011_09_26 2011_09_26_drive_0101_sync 0000000633 2011_09_26 2011_09_26_drive_0101_sync 0000000634 2011_09_26 2011_09_26_drive_0101_sync 0000000635 2011_09_26 2011_09_26_drive_0101_sync 0000000636 2011_09_26 2011_09_26_drive_0101_sync 0000000637 2011_09_26 2011_09_26_drive_0101_sync 0000000649 2011_09_26 2011_09_26_drive_0101_sync 0000000650 2011_09_26 2011_09_26_drive_0101_sync 0000000651 2011_09_26 2011_09_26_drive_0101_sync 0000000652 2011_09_26 2011_09_26_drive_0101_sync 0000000653 2011_09_26 2011_09_26_drive_0101_sync 0000000654 2011_09_26 2011_09_26_drive_0101_sync 0000000655 2011_09_26 2011_09_26_drive_0101_sync 0000000656 2011_09_26 2011_09_26_drive_0101_sync 0000000657 2011_09_26 2011_09_26_drive_0101_sync 0000000658 2011_09_26 2011_09_26_drive_0101_sync 0000000659 2011_09_26 2011_09_26_drive_0101_sync 0000000660 2011_09_26 2011_09_26_drive_0101_sync 0000000661 2011_09_26 2011_09_26_drive_0101_sync 0000000687 2011_09_26 2011_09_26_drive_0101_sync 0000000688 2011_09_26 2011_09_26_drive_0101_sync 0000000689 2011_09_26 2011_09_26_drive_0101_sync 0000000690 2011_09_26 2011_09_26_drive_0101_sync 0000000691 2011_09_26 2011_09_26_drive_0101_sync 0000000692 2011_09_26 2011_09_26_drive_0101_sync 0000000693 2011_09_26 2011_09_26_drive_0101_sync 0000000694 2011_09_26 2011_09_26_drive_0101_sync 0000000695 2011_09_26 2011_09_26_drive_0101_sync 0000000696 2011_09_26 2011_09_26_drive_0101_sync 0000000697 2011_09_26 2011_09_26_drive_0101_sync 0000000698 2011_09_26 2011_09_26_drive_0101_sync 0000000699 2011_09_26 2011_09_26_drive_0101_sync 0000000700 2011_09_26 2011_09_26_drive_0101_sync 0000000701 2011_09_26 2011_09_26_drive_0101_sync 0000000702 2011_09_26 2011_09_26_drive_0101_sync 0000000709 2011_09_26 2011_09_26_drive_0101_sync 0000000710 2011_09_26 2011_09_26_drive_0101_sync 0000000711 2011_09_26 2011_09_26_drive_0101_sync 0000000712 2011_09_26 2011_09_26_drive_0101_sync 0000000713 2011_09_26 2011_09_26_drive_0101_sync 0000000714 2011_09_26 2011_09_26_drive_0101_sync 0000000715 2011_09_26 2011_09_26_drive_0101_sync 0000000716 2011_09_26 2011_09_26_drive_0101_sync 0000000717 2011_09_26 2011_09_26_drive_0101_sync 0000000718 2011_09_26 2011_09_26_drive_0101_sync 0000000719 2011_09_26 2011_09_26_drive_0101_sync 0000000720 2011_09_26 2011_09_26_drive_0101_sync 0000000721 2011_09_26 2011_09_26_drive_0101_sync 0000000722 2011_09_26 2011_09_26_drive_0101_sync 0000000723 2011_09_26 2011_09_26_drive_0101_sync 0000000724 2011_09_26 2011_09_26_drive_0101_sync 0000000725 2011_09_26 2011_09_26_drive_0101_sync 0000000726 2011_09_26 2011_09_26_drive_0101_sync 0000000727 2011_09_26 2011_09_26_drive_0101_sync 0000000728 2011_09_26 2011_09_26_drive_0101_sync 0000000729 2011_09_26 2011_09_26_drive_0101_sync 0000000730 2011_09_26 2011_09_26_drive_0101_sync 0000000731 2011_09_26 2011_09_26_drive_0101_sync 0000000732 2011_09_26 2011_09_26_drive_0101_sync 0000000733 2011_09_26 2011_09_26_drive_0101_sync 0000000734 2011_09_26 2011_09_26_drive_0101_sync 0000000735 2011_09_26 2011_09_26_drive_0101_sync 0000000736 2011_09_26 2011_09_26_drive_0101_sync 0000000737 2011_09_26 2011_09_26_drive_0101_sync 0000000738 2011_09_26 2011_09_26_drive_0101_sync 0000000739 2011_09_26 2011_09_26_drive_0101_sync 0000000740 2011_09_26 2011_09_26_drive_0101_sync 0000000741 2011_09_26 2011_09_26_drive_0101_sync 0000000742 2011_09_26 2011_09_26_drive_0101_sync 0000000743 2011_09_26 2011_09_26_drive_0101_sync 0000000744 2011_09_26 2011_09_26_drive_0101_sync 0000000745 2011_09_26 2011_09_26_drive_0101_sync 0000000746 2011_09_26 2011_09_26_drive_0101_sync 0000000747 2011_09_26 2011_09_26_drive_0101_sync 0000000748 2011_09_26 2011_09_26_drive_0101_sync 0000000749 2011_09_26 2011_09_26_drive_0101_sync 0000000755 2011_09_26 2011_09_26_drive_0101_sync 0000000756 2011_09_26 2011_09_26_drive_0101_sync 0000000757 2011_09_26 2011_09_26_drive_0101_sync 0000000758 2011_09_26 2011_09_26_drive_0101_sync 0000000759 2011_09_26 2011_09_26_drive_0101_sync 0000000760 2011_09_26 2011_09_26_drive_0101_sync 0000000761 2011_09_26 2011_09_26_drive_0101_sync 0000000762 2011_09_26 2011_09_26_drive_0101_sync 0000000763 2011_09_26 2011_09_26_drive_0101_sync 0000000764 2011_09_26 2011_09_26_drive_0101_sync 0000000765 2011_09_26 2011_09_26_drive_0101_sync 0000000766 2011_09_26 2011_09_26_drive_0101_sync 0000000767 2011_09_26 2011_09_26_drive_0101_sync 0000000768 2011_09_26 2011_09_26_drive_0101_sync 0000000769 2011_09_26 2011_09_26_drive_0101_sync 0000000770 2011_09_26 2011_09_26_drive_0101_sync 0000000771 2011_09_26 2011_09_26_drive_0101_sync 0000000772 2011_09_26 2011_09_26_drive_0101_sync 0000000773 2011_09_26 2011_09_26_drive_0101_sync 0000000774 2011_09_26 2011_09_26_drive_0101_sync 0000000775 2011_09_26 2011_09_26_drive_0101_sync 0000000776 2011_09_26 2011_09_26_drive_0101_sync 0000000777 2011_09_26 2011_09_26_drive_0101_sync 0000000778 2011_09_26 2011_09_26_drive_0101_sync 0000000779 2011_09_26 2011_09_26_drive_0101_sync 0000000780 2011_09_26 2011_09_26_drive_0101_sync 0000000781 2011_09_26 2011_09_26_drive_0101_sync 0000000786 2011_09_26 2011_09_26_drive_0101_sync 0000000787 2011_09_26 2011_09_26_drive_0101_sync 0000000788 2011_09_26 2011_09_26_drive_0101_sync 0000000789 2011_09_26 2011_09_26_drive_0101_sync 0000000790 2011_09_26 2011_09_26_drive_0101_sync 0000000791 2011_09_26 2011_09_26_drive_0101_sync 0000000792 2011_09_26 2011_09_26_drive_0101_sync 0000000793 2011_09_26 2011_09_26_drive_0101_sync 0000000794 2011_09_26 2011_09_26_drive_0101_sync 0000000795 2011_09_26 2011_09_26_drive_0101_sync 0000000796 2011_09_26 2011_09_26_drive_0101_sync 0000000797 2011_09_26 2011_09_26_drive_0101_sync 0000000798 2011_09_26 2011_09_26_drive_0101_sync 0000000799 2011_09_26 2011_09_26_drive_0101_sync 0000000800 2011_09_26 2011_09_26_drive_0101_sync 0000000801 2011_09_26 2011_09_26_drive_0101_sync 0000000802 2011_09_26 2011_09_26_drive_0101_sync 0000000803 2011_09_26 2011_09_26_drive_0101_sync 0000000804 2011_09_26 2011_09_26_drive_0101_sync 0000000805 2011_09_26 2011_09_26_drive_0101_sync 0000000806 2011_09_26 2011_09_26_drive_0101_sync 0000000807 2011_09_26 2011_09_26_drive_0101_sync 0000000808 2011_09_26 2011_09_26_drive_0101_sync 0000000809 2011_09_26 2011_09_26_drive_0101_sync 0000000810 2011_09_26 2011_09_26_drive_0101_sync 0000000811 2011_09_26 2011_09_26_drive_0101_sync 0000000812 2011_09_26 2011_09_26_drive_0101_sync 0000000813 2011_09_26 2011_09_26_drive_0101_sync 0000000814 2011_09_26 2011_09_26_drive_0101_sync 0000000815 2011_09_26 2011_09_26_drive_0101_sync 0000000816 2011_09_26 2011_09_26_drive_0101_sync 0000000817 2011_09_26 2011_09_26_drive_0101_sync 0000000818 2011_09_26 2011_09_26_drive_0101_sync 0000000819 2011_09_26 2011_09_26_drive_0101_sync 0000000820 2011_09_26 2011_09_26_drive_0101_sync 0000000821 2011_09_26 2011_09_26_drive_0101_sync 0000000822 2011_09_26 2011_09_26_drive_0101_sync 0000000823 2011_09_26 2011_09_26_drive_0101_sync 0000000824 2011_09_26 2011_09_26_drive_0101_sync 0000000825 2011_09_26 2011_09_26_drive_0101_sync 0000000826 2011_09_26 2011_09_26_drive_0101_sync 0000000827 2011_09_26 2011_09_26_drive_0101_sync 0000000828 2011_09_26 2011_09_26_drive_0101_sync 0000000829 2011_09_26 2011_09_26_drive_0101_sync 0000000830 2011_09_26 2011_09_26_drive_0101_sync 0000000831 2011_09_26 2011_09_26_drive_0101_sync 0000000833 2011_09_26 2011_09_26_drive_0101_sync 0000000841 2011_09_26 2011_09_26_drive_0101_sync 0000000843 2011_09_26 2011_09_26_drive_0101_sync 0000000844 2011_09_26 2011_09_26_drive_0101_sync 0000000845 2011_09_26 2011_09_26_drive_0101_sync 0000000846 2011_09_26 2011_09_26_drive_0101_sync 0000000847 2011_09_26 2011_09_26_drive_0101_sync 0000000848 2011_09_26 2011_09_26_drive_0101_sync 0000000849 2011_09_26 2011_09_26_drive_0101_sync 0000000850 2011_09_26 2011_09_26_drive_0101_sync 0000000851 2011_09_26 2011_09_26_drive_0101_sync 0000000852 2011_09_26 2011_09_26_drive_0101_sync 0000000853 2011_09_26 2011_09_26_drive_0101_sync 0000000854 2011_09_26 2011_09_26_drive_0101_sync 0000000880 2011_09_26 2011_09_26_drive_0101_sync 0000000883 2011_09_26 2011_09_26_drive_0101_sync 0000000884 2011_09_26 2011_09_26_drive_0101_sync 0000000885 2011_09_26 2011_09_26_drive_0101_sync 0000000887 2011_09_26 2011_09_26_drive_0101_sync 0000000888 2011_09_26 2011_09_26_drive_0101_sync 0000000889 2011_09_26 2011_09_26_drive_0101_sync 0000000893 2011_09_26 2011_09_26_drive_0101_sync 0000000894 2011_09_26 2011_09_26_drive_0101_sync 0000000895 2011_09_26 2011_09_26_drive_0101_sync 0000000896 2011_09_26 2011_09_26_drive_0101_sync 0000000897 2011_09_26 2011_09_26_drive_0101_sync 0000000898 2011_09_26 2011_09_26_drive_0101_sync 0000000899 2011_09_26 2011_09_26_drive_0101_sync 0000000900 2011_09_26 2011_09_26_drive_0101_sync 0000000901 2011_09_26 2011_09_26_drive_0101_sync 0000000902 2011_09_26 2011_09_26_drive_0101_sync 0000000903 2011_09_26 2011_09_26_drive_0101_sync 0000000904 2011_09_26 2011_09_26_drive_0101_sync 0000000906 2011_09_26 2011_09_26_drive_0101_sync 0000000907 2011_09_26 2011_09_26_drive_0101_sync 0000000908 2011_09_26 2011_09_26_drive_0101_sync 0000000909 2011_09_26 2011_09_26_drive_0101_sync 0000000910 2011_09_26 2011_09_26_drive_0101_sync 0000000911 2011_09_26 2011_09_26_drive_0101_sync 0000000912 2011_09_26 2011_09_26_drive_0101_sync 0000000914 2011_09_26 2011_09_26_drive_0101_sync 0000000915 2011_09_26 2011_09_26_drive_0101_sync 0000000916 2011_09_26 2011_09_26_drive_0101_sync 0000000917 2011_09_26 2011_09_26_drive_0101_sync 0000000919 2011_09_26 2011_09_26_drive_0101_sync 0000000923 2011_09_26 2011_09_26_drive_0101_sync 0000000924 2011_09_26 2011_09_26_drive_0101_sync 0000000926 2011_09_26 2011_09_26_drive_0101_sync 0000000927 2011_09_26 2011_09_26_drive_0101_sync 0000000928 2011_09_26 2011_09_26_drive_0101_sync 0000000929 2011_09_26 2011_09_26_drive_0101_sync 0000000930 2011_09_26 2011_09_26_drive_0101_sync 0000000931 2011_09_26 2011_09_26_drive_0101_sync 0000000932 2011_09_26 2011_09_26_drive_0101_sync 0000000933 2011_09_26 2011_09_26_drive_0101_sync 0000000934 2011_09_26 2011_09_26_drive_0101_sync 0000000935 2011_09_26 2011_09_26_drive_0104_sync 0000000002 2011_09_26 2011_09_26_drive_0104_sync 0000000004 2011_09_26 2011_09_26_drive_0104_sync 0000000006 2011_09_26 2011_09_26_drive_0104_sync 0000000008 2011_09_26 2011_09_26_drive_0104_sync 0000000010 2011_09_26 2011_09_26_drive_0104_sync 0000000012 2011_09_26 2011_09_26_drive_0104_sync 0000000014 2011_09_26 2011_09_26_drive_0104_sync 0000000016 2011_09_26 2011_09_26_drive_0104_sync 0000000018 2011_09_26 2011_09_26_drive_0104_sync 0000000020 2011_09_26 2011_09_26_drive_0104_sync 0000000022 2011_09_26 2011_09_26_drive_0104_sync 0000000024 2011_09_26 2011_09_26_drive_0104_sync 0000000026 2011_09_26 2011_09_26_drive_0104_sync 0000000028 2011_09_26 2011_09_26_drive_0104_sync 0000000030 2011_09_26 2011_09_26_drive_0104_sync 0000000032 2011_09_26 2011_09_26_drive_0104_sync 0000000034 2011_09_26 2011_09_26_drive_0104_sync 0000000036 2011_09_26 2011_09_26_drive_0104_sync 0000000038 2011_09_26 2011_09_26_drive_0104_sync 0000000040 2011_09_26 2011_09_26_drive_0104_sync 0000000042 2011_09_26 2011_09_26_drive_0104_sync 0000000044 2011_09_26 2011_09_26_drive_0104_sync 0000000046 2011_09_26 2011_09_26_drive_0104_sync 0000000048 2011_09_26 2011_09_26_drive_0104_sync 0000000050 2011_09_26 2011_09_26_drive_0104_sync 0000000052 2011_09_26 2011_09_26_drive_0104_sync 0000000054 2011_09_26 2011_09_26_drive_0104_sync 0000000056 2011_09_26 2011_09_26_drive_0104_sync 0000000058 2011_09_26 2011_09_26_drive_0104_sync 0000000060 2011_09_26 2011_09_26_drive_0104_sync 0000000062 2011_09_26 2011_09_26_drive_0104_sync 0000000064 2011_09_26 2011_09_26_drive_0104_sync 0000000066 2011_09_26 2011_09_26_drive_0104_sync 0000000068 2011_09_26 2011_09_26_drive_0104_sync 0000000070 2011_09_26 2011_09_26_drive_0104_sync 0000000072 2011_09_26 2011_09_26_drive_0104_sync 0000000074 2011_09_26 2011_09_26_drive_0104_sync 0000000076 2011_09_26 2011_09_26_drive_0104_sync 0000000078 2011_09_26 2011_09_26_drive_0104_sync 0000000080 2011_09_26 2011_09_26_drive_0104_sync 0000000082 2011_09_26 2011_09_26_drive_0104_sync 0000000084 2011_09_26 2011_09_26_drive_0104_sync 0000000086 2011_09_26 2011_09_26_drive_0104_sync 0000000088 2011_09_26 2011_09_26_drive_0104_sync 0000000090 2011_09_26 2011_09_26_drive_0104_sync 0000000092 2011_09_26 2011_09_26_drive_0104_sync 0000000094 2011_09_26 2011_09_26_drive_0104_sync 0000000096 2011_09_26 2011_09_26_drive_0104_sync 0000000098 2011_09_26 2011_09_26_drive_0104_sync 0000000100 2011_09_26 2011_09_26_drive_0104_sync 0000000102 2011_09_26 2011_09_26_drive_0104_sync 0000000104 2011_09_26 2011_09_26_drive_0104_sync 0000000106 2011_09_26 2011_09_26_drive_0104_sync 0000000108 2011_09_26 2011_09_26_drive_0104_sync 0000000110 2011_09_26 2011_09_26_drive_0104_sync 0000000112 2011_09_26 2011_09_26_drive_0104_sync 0000000114 2011_09_26 2011_09_26_drive_0104_sync 0000000118 2011_09_26 2011_09_26_drive_0104_sync 0000000120 2011_09_26 2011_09_26_drive_0104_sync 0000000122 2011_09_26 2011_09_26_drive_0104_sync 0000000124 2011_09_26 2011_09_26_drive_0104_sync 0000000126 2011_09_26 2011_09_26_drive_0104_sync 0000000128 2011_09_26 2011_09_26_drive_0104_sync 0000000130 2011_09_26 2011_09_26_drive_0104_sync 0000000132 2011_09_26 2011_09_26_drive_0104_sync 0000000134 2011_09_26 2011_09_26_drive_0104_sync 0000000136 2011_09_26 2011_09_26_drive_0104_sync 0000000138 2011_09_26 2011_09_26_drive_0104_sync 0000000140 2011_09_26 2011_09_26_drive_0104_sync 0000000142 2011_09_26 2011_09_26_drive_0104_sync 0000000144 2011_09_26 2011_09_26_drive_0104_sync 0000000146 2011_09_26 2011_09_26_drive_0104_sync 0000000148 2011_09_26 2011_09_26_drive_0104_sync 0000000150 2011_09_26 2011_09_26_drive_0104_sync 0000000152 2011_09_26 2011_09_26_drive_0104_sync 0000000154 2011_09_26 2011_09_26_drive_0104_sync 0000000156 2011_09_26 2011_09_26_drive_0104_sync 0000000158 2011_09_26 2011_09_26_drive_0104_sync 0000000160 2011_09_26 2011_09_26_drive_0104_sync 0000000162 2011_09_26 2011_09_26_drive_0104_sync 0000000164 2011_09_26 2011_09_26_drive_0104_sync 0000000166 2011_09_26 2011_09_26_drive_0104_sync 0000000168 2011_09_26 2011_09_26_drive_0104_sync 0000000170 2011_09_26 2011_09_26_drive_0104_sync 0000000172 2011_09_26 2011_09_26_drive_0104_sync 0000000174 2011_09_26 2011_09_26_drive_0104_sync 0000000176 2011_09_26 2011_09_26_drive_0104_sync 0000000178 2011_09_26 2011_09_26_drive_0104_sync 0000000180 2011_09_26 2011_09_26_drive_0104_sync 0000000182 2011_09_26 2011_09_26_drive_0104_sync 0000000184 2011_09_26 2011_09_26_drive_0104_sync 0000000186 2011_09_26 2011_09_26_drive_0104_sync 0000000188 2011_09_26 2011_09_26_drive_0104_sync 0000000190 2011_09_26 2011_09_26_drive_0104_sync 0000000192 2011_09_26 2011_09_26_drive_0104_sync 0000000194 2011_09_26 2011_09_26_drive_0104_sync 0000000196 2011_09_26 2011_09_26_drive_0104_sync 0000000198 2011_09_26 2011_09_26_drive_0104_sync 0000000200 2011_09_26 2011_09_26_drive_0104_sync 0000000202 2011_09_26 2011_09_26_drive_0104_sync 0000000204 2011_09_26 2011_09_26_drive_0104_sync 0000000206 2011_09_26 2011_09_26_drive_0104_sync 0000000208 2011_09_26 2011_09_26_drive_0104_sync 0000000210 2011_09_26 2011_09_26_drive_0104_sync 0000000212 2011_09_26 2011_09_26_drive_0104_sync 0000000214 2011_09_26 2011_09_26_drive_0104_sync 0000000216 2011_09_26 2011_09_26_drive_0104_sync 0000000218 2011_09_26 2011_09_26_drive_0104_sync 0000000220 2011_09_26 2011_09_26_drive_0104_sync 0000000222 2011_09_26 2011_09_26_drive_0104_sync 0000000224 2011_09_26 2011_09_26_drive_0104_sync 0000000226 2011_09_26 2011_09_26_drive_0104_sync 0000000228 2011_09_26 2011_09_26_drive_0104_sync 0000000230 2011_09_26 2011_09_26_drive_0104_sync 0000000232 2011_09_26 2011_09_26_drive_0104_sync 0000000234 2011_09_26 2011_09_26_drive_0104_sync 0000000236 2011_09_26 2011_09_26_drive_0104_sync 0000000238 2011_09_26 2011_09_26_drive_0104_sync 0000000240 2011_09_26 2011_09_26_drive_0104_sync 0000000242 2011_09_26 2011_09_26_drive_0104_sync 0000000244 2011_09_26 2011_09_26_drive_0104_sync 0000000246 2011_09_26 2011_09_26_drive_0104_sync 0000000248 2011_09_26 2011_09_26_drive_0104_sync 0000000250 2011_09_26 2011_09_26_drive_0104_sync 0000000252 2011_09_26 2011_09_26_drive_0104_sync 0000000254 2011_09_26 2011_09_26_drive_0104_sync 0000000256 2011_09_26 2011_09_26_drive_0104_sync 0000000258 2011_09_26 2011_09_26_drive_0104_sync 0000000260 2011_09_26 2011_09_26_drive_0104_sync 0000000262 2011_09_26 2011_09_26_drive_0104_sync 0000000266 2011_09_26 2011_09_26_drive_0104_sync 0000000268 2011_09_26 2011_09_26_drive_0104_sync 0000000272 2011_09_26 2011_09_26_drive_0104_sync 0000000274 2011_09_26 2011_09_26_drive_0104_sync 0000000276 2011_09_26 2011_09_26_drive_0104_sync 0000000278 2011_09_26 2011_09_26_drive_0104_sync 0000000280 2011_09_26 2011_09_26_drive_0104_sync 0000000282 2011_09_26 2011_09_26_drive_0104_sync 0000000284 2011_09_26 2011_09_26_drive_0104_sync 0000000286 2011_09_26 2011_09_26_drive_0104_sync 0000000288 2011_09_26 2011_09_26_drive_0104_sync 0000000290 2011_09_26 2011_09_26_drive_0104_sync 0000000292 2011_09_26 2011_09_26_drive_0104_sync 0000000294 2011_09_26 2011_09_26_drive_0104_sync 0000000296 2011_09_26 2011_09_26_drive_0104_sync 0000000298 2011_09_26 2011_09_26_drive_0104_sync 0000000300 2011_09_26 2011_09_26_drive_0104_sync 0000000302 2011_09_26 2011_09_26_drive_0104_sync 0000000304 2011_09_26 2011_09_26_drive_0104_sync 0000000306 2011_09_26 2011_09_26_drive_0104_sync 0000000308 2011_09_26 2011_09_26_drive_0104_sync 0000000310 2011_09_28 2011_09_28_drive_0002_sync 0000000003 2011_09_28 2011_09_28_drive_0002_sync 0000000004 2011_09_28 2011_09_28_drive_0002_sync 0000000005 2011_09_28 2011_09_28_drive_0002_sync 0000000006 2011_09_28 2011_09_28_drive_0002_sync 0000000007 2011_09_28 2011_09_28_drive_0002_sync 0000000008 2011_09_28 2011_09_28_drive_0002_sync 0000000009 2011_09_28 2011_09_28_drive_0002_sync 0000000010 2011_09_28 2011_09_28_drive_0002_sync 0000000011 2011_09_28 2011_09_28_drive_0002_sync 0000000012 2011_09_28 2011_09_28_drive_0002_sync 0000000013 2011_09_28 2011_09_28_drive_0002_sync 0000000014 2011_09_28 2011_09_28_drive_0002_sync 0000000015 2011_09_28 2011_09_28_drive_0002_sync 0000000016 2011_09_28 2011_09_28_drive_0002_sync 0000000017 2011_09_28 2011_09_28_drive_0002_sync 0000000018 2011_09_28 2011_09_28_drive_0002_sync 0000000019 2011_09_28 2011_09_28_drive_0002_sync 0000000020 2011_09_28 2011_09_28_drive_0002_sync 0000000021 2011_09_28 2011_09_28_drive_0002_sync 0000000022 2011_09_28 2011_09_28_drive_0002_sync 0000000023 2011_09_28 2011_09_28_drive_0002_sync 0000000024 2011_09_28 2011_09_28_drive_0002_sync 0000000025 2011_09_28 2011_09_28_drive_0002_sync 0000000026 2011_09_28 2011_09_28_drive_0002_sync 0000000027 2011_09_28 2011_09_28_drive_0002_sync 0000000028 2011_09_28 2011_09_28_drive_0002_sync 0000000029 2011_09_28 2011_09_28_drive_0002_sync 0000000030 2011_09_28 2011_09_28_drive_0002_sync 0000000031 2011_09_28 2011_09_28_drive_0002_sync 0000000032 2011_09_28 2011_09_28_drive_0002_sync 0000000033 2011_09_28 2011_09_28_drive_0002_sync 0000000034 2011_09_28 2011_09_28_drive_0002_sync 0000000035 2011_09_28 2011_09_28_drive_0002_sync 0000000036 2011_09_28 2011_09_28_drive_0002_sync 0000000037 2011_09_28 2011_09_28_drive_0002_sync 0000000038 2011_09_28 2011_09_28_drive_0002_sync 0000000039 2011_09_28 2011_09_28_drive_0002_sync 0000000041 2011_09_28 2011_09_28_drive_0002_sync 0000000043 2011_09_28 2011_09_28_drive_0002_sync 0000000045 2011_09_28 2011_09_28_drive_0002_sync 0000000047 2011_09_28 2011_09_28_drive_0002_sync 0000000049 2011_09_28 2011_09_28_drive_0002_sync 0000000051 2011_09_28 2011_09_28_drive_0002_sync 0000000053 2011_09_28 2011_09_28_drive_0002_sync 0000000055 2011_09_28 2011_09_28_drive_0002_sync 0000000057 2011_09_28 2011_09_28_drive_0002_sync 0000000059 2011_09_28 2011_09_28_drive_0002_sync 0000000061 2011_09_28 2011_09_28_drive_0002_sync 0000000063 2011_09_28 2011_09_28_drive_0002_sync 0000000065 2011_09_28 2011_09_28_drive_0002_sync 0000000068 2011_09_28 2011_09_28_drive_0002_sync 0000000071 2011_09_28 2011_09_28_drive_0002_sync 0000000074 2011_09_28 2011_09_28_drive_0002_sync 0000000078 2011_09_28 2011_09_28_drive_0002_sync 0000000083 2011_09_28 2011_09_28_drive_0002_sync 0000000096 2011_09_28 2011_09_28_drive_0002_sync 0000000112 2011_09_28 2011_09_28_drive_0002_sync 0000000123 2011_09_28 2011_09_28_drive_0002_sync 0000000130 2011_09_28 2011_09_28_drive_0002_sync 0000000137 2011_09_28 2011_09_28_drive_0002_sync 0000000144 2011_09_28 2011_09_28_drive_0002_sync 0000000151 2011_09_28 2011_09_28_drive_0002_sync 0000000163 2011_09_28 2011_09_28_drive_0002_sync 0000000175 2011_09_28 2011_09_28_drive_0002_sync 0000000184 2011_09_28 2011_09_28_drive_0002_sync 0000000193 2011_09_28 2011_09_28_drive_0002_sync 0000000199 2011_09_28 2011_09_28_drive_0002_sync 0000000207 2011_09_28 2011_09_28_drive_0002_sync 0000000215 2011_09_28 2011_09_28_drive_0002_sync 0000000222 2011_09_28 2011_09_28_drive_0002_sync 0000000229 2011_09_28 2011_09_28_drive_0002_sync 0000000235 2011_09_28 2011_09_28_drive_0002_sync 0000000240 2011_09_28 2011_09_28_drive_0002_sync 0000000245 2011_09_28 2011_09_28_drive_0002_sync 0000000279 2011_09_28 2011_09_28_drive_0002_sync 0000000282 2011_09_28 2011_09_28_drive_0002_sync 0000000285 2011_09_28 2011_09_28_drive_0002_sync 0000000288 2011_09_28 2011_09_28_drive_0002_sync 0000000291 2011_09_28 2011_09_28_drive_0002_sync 0000000294 2011_09_28 2011_09_28_drive_0002_sync 0000000296 2011_09_28 2011_09_28_drive_0002_sync 0000000298 2011_09_28 2011_09_28_drive_0002_sync 0000000300 2011_09_28 2011_09_28_drive_0002_sync 0000000303 2011_09_28 2011_09_28_drive_0002_sync 0000000306 2011_09_28 2011_09_28_drive_0002_sync 0000000309 2011_09_28 2011_09_28_drive_0002_sync 0000000312 2011_09_28 2011_09_28_drive_0002_sync 0000000315 2011_09_28 2011_09_28_drive_0002_sync 0000000318 2011_09_28 2011_09_28_drive_0002_sync 0000000321 2011_09_28 2011_09_28_drive_0002_sync 0000000324 2011_09_28 2011_09_28_drive_0002_sync 0000000326 2011_09_28 2011_09_28_drive_0002_sync 0000000328 2011_09_28 2011_09_28_drive_0002_sync 0000000330 2011_09_28 2011_09_28_drive_0002_sync 0000000332 2011_09_28 2011_09_28_drive_0002_sync 0000000334 2011_09_28 2011_09_28_drive_0002_sync 0000000336 2011_09_28 2011_09_28_drive_0002_sync 0000000338 2011_09_28 2011_09_28_drive_0002_sync 0000000341 2011_09_28 2011_09_28_drive_0002_sync 0000000343 2011_09_28 2011_09_28_drive_0002_sync 0000000345 2011_09_28 2011_09_28_drive_0002_sync 0000000348 2011_09_28 2011_09_28_drive_0002_sync 0000000353 2011_09_28 2011_09_28_drive_0002_sync 0000000358 2011_09_28 2011_09_28_drive_0002_sync 0000000363 2011_09_28 2011_09_28_drive_0002_sync 0000000367 2011_09_28 2011_09_28_drive_0002_sync 0000000371 2011_09_28 2011_09_28_drive_0016_sync 0000000015 2011_09_28 2011_09_28_drive_0016_sync 0000000028 2011_09_28 2011_09_28_drive_0016_sync 0000000053 2011_09_28 2011_09_28_drive_0016_sync 0000000088 2011_09_28 2011_09_28_drive_0016_sync 0000000112 2011_09_28 2011_09_28_drive_0016_sync 0000000134 2011_09_28 2011_09_28_drive_0016_sync 0000000156 2011_09_28 2011_09_28_drive_0016_sync 0000000168 2011_09_28 2011_09_28_drive_0016_sync 0000000179 2011_09_28 2011_09_28_drive_0021_sync 0000000009 2011_09_28 2011_09_28_drive_0021_sync 0000000020 2011_09_28 2011_09_28_drive_0021_sync 0000000030 2011_09_28 2011_09_28_drive_0021_sync 0000000040 2011_09_28 2011_09_28_drive_0021_sync 0000000050 2011_09_28 2011_09_28_drive_0021_sync 0000000061 2011_09_28 2011_09_28_drive_0021_sync 0000000072 2011_09_28 2011_09_28_drive_0021_sync 0000000081 2011_09_28 2011_09_28_drive_0021_sync 0000000090 2011_09_28 2011_09_28_drive_0021_sync 0000000101 2011_09_28 2011_09_28_drive_0021_sync 0000000111 2011_09_28 2011_09_28_drive_0021_sync 0000000120 2011_09_28 2011_09_28_drive_0021_sync 0000000127 2011_09_28 2011_09_28_drive_0021_sync 0000000134 2011_09_28 2011_09_28_drive_0021_sync 0000000141 2011_09_28 2011_09_28_drive_0021_sync 0000000149 2011_09_28 2011_09_28_drive_0021_sync 0000000157 2011_09_28 2011_09_28_drive_0021_sync 0000000166 2011_09_28 2011_09_28_drive_0021_sync 0000000174 2011_09_28 2011_09_28_drive_0021_sync 0000000186 2011_09_28 2011_09_28_drive_0039_sync 0000000013 2011_09_28 2011_09_28_drive_0039_sync 0000000031 2011_09_28 2011_09_28_drive_0039_sync 0000000053 2011_09_28 2011_09_28_drive_0039_sync 0000000072 2011_09_28 2011_09_28_drive_0039_sync 0000000090 2011_09_28 2011_09_28_drive_0039_sync 0000000104 2011_09_28 2011_09_28_drive_0039_sync 0000000115 2011_09_28 2011_09_28_drive_0039_sync 0000000125 2011_09_28 2011_09_28_drive_0039_sync 0000000136 2011_09_28 2011_09_28_drive_0039_sync 0000000146 2011_09_28 2011_09_28_drive_0039_sync 0000000157 2011_09_28 2011_09_28_drive_0039_sync 0000000168 2011_09_28 2011_09_28_drive_0039_sync 0000000179 2011_09_28 2011_09_28_drive_0039_sync 0000000191 2011_09_28 2011_09_28_drive_0039_sync 0000000204 2011_09_28 2011_09_28_drive_0039_sync 0000000215 2011_09_28 2011_09_28_drive_0039_sync 0000000226 2011_09_28 2011_09_28_drive_0039_sync 0000000236 2011_09_28 2011_09_28_drive_0039_sync 0000000247 2011_09_28 2011_09_28_drive_0039_sync 0000000257 2011_09_28 2011_09_28_drive_0039_sync 0000000268 2011_09_28 2011_09_28_drive_0039_sync 0000000282 2011_09_28 2011_09_28_drive_0039_sync 0000000297 2011_09_28 2011_09_28_drive_0039_sync 0000000320 2011_09_29 2011_09_29_drive_0071_sync 0000000005 2011_09_29 2011_09_29_drive_0071_sync 0000000011 2011_09_29 2011_09_29_drive_0071_sync 0000000017 2011_09_29 2011_09_29_drive_0071_sync 0000000022 2011_09_29 2011_09_29_drive_0071_sync 0000000026 2011_09_29 2011_09_29_drive_0071_sync 0000000029 2011_09_29 2011_09_29_drive_0071_sync 0000000032 2011_09_29 2011_09_29_drive_0071_sync 0000000035 2011_09_29 2011_09_29_drive_0071_sync 0000000038 2011_09_29 2011_09_29_drive_0071_sync 0000000041 2011_09_29 2011_09_29_drive_0071_sync 0000000043 2011_09_29 2011_09_29_drive_0071_sync 0000000045 2011_09_29 2011_09_29_drive_0071_sync 0000000047 2011_09_29 2011_09_29_drive_0071_sync 0000000049 2011_09_29 2011_09_29_drive_0071_sync 0000000051 2011_09_29 2011_09_29_drive_0071_sync 0000000053 2011_09_29 2011_09_29_drive_0071_sync 0000000055 2011_09_29 2011_09_29_drive_0071_sync 0000000058 2011_09_29 2011_09_29_drive_0071_sync 0000000061 2011_09_29 2011_09_29_drive_0071_sync 0000000063 2011_09_29 2011_09_29_drive_0071_sync 0000000065 2011_09_29 2011_09_29_drive_0071_sync 0000000067 2011_09_29 2011_09_29_drive_0071_sync 0000000070 2011_09_29 2011_09_29_drive_0071_sync 0000000074 2011_09_29 2011_09_29_drive_0071_sync 0000000080 2011_09_29 2011_09_29_drive_0071_sync 0000000088 2011_09_29 2011_09_29_drive_0071_sync 0000000094 2011_09_29 2011_09_29_drive_0071_sync 0000000099 2011_09_29 2011_09_29_drive_0071_sync 0000000103 2011_09_29 2011_09_29_drive_0071_sync 0000000107 2011_09_29 2011_09_29_drive_0071_sync 0000000111 2011_09_29 2011_09_29_drive_0071_sync 0000000114 2011_09_29 2011_09_29_drive_0071_sync 0000000117 2011_09_29 2011_09_29_drive_0071_sync 0000000120 2011_09_29 2011_09_29_drive_0071_sync 0000000123 2011_09_29 2011_09_29_drive_0071_sync 0000000126 2011_09_29 2011_09_29_drive_0071_sync 0000000129 2011_09_29 2011_09_29_drive_0071_sync 0000000132 2011_09_29 2011_09_29_drive_0071_sync 0000000135 2011_09_29 2011_09_29_drive_0071_sync 0000000138 2011_09_29 2011_09_29_drive_0071_sync 0000000141 2011_09_29 2011_09_29_drive_0071_sync 0000000144 2011_09_29 2011_09_29_drive_0071_sync 0000000147 2011_09_29 2011_09_29_drive_0071_sync 0000000150 2011_09_29 2011_09_29_drive_0071_sync 0000000153 2011_09_29 2011_09_29_drive_0071_sync 0000000156 2011_09_29 2011_09_29_drive_0071_sync 0000000159 2011_09_29 2011_09_29_drive_0071_sync 0000000162 2011_09_29 2011_09_29_drive_0071_sync 0000000165 2011_09_29 2011_09_29_drive_0071_sync 0000000168 2011_09_29 2011_09_29_drive_0071_sync 0000000171 2011_09_29 2011_09_29_drive_0071_sync 0000000174 2011_09_29 2011_09_29_drive_0071_sync 0000000177 2011_09_29 2011_09_29_drive_0071_sync 0000000180 2011_09_29 2011_09_29_drive_0071_sync 0000000184 2011_09_29 2011_09_29_drive_0071_sync 0000000187 2011_09_29 2011_09_29_drive_0071_sync 0000000191 2011_09_29 2011_09_29_drive_0071_sync 0000000195 2011_09_29 2011_09_29_drive_0071_sync 0000000199 2011_09_29 2011_09_29_drive_0071_sync 0000000204 2011_09_29 2011_09_29_drive_0071_sync 0000000209 2011_09_29 2011_09_29_drive_0071_sync 0000000214 2011_09_29 2011_09_29_drive_0071_sync 0000000219 2011_09_29 2011_09_29_drive_0071_sync 0000000224 2011_09_29 2011_09_29_drive_0071_sync 0000000229 2011_09_29 2011_09_29_drive_0071_sync 0000000234 2011_09_29 2011_09_29_drive_0071_sync 0000000239 2011_09_29 2011_09_29_drive_0071_sync 0000000244 2011_09_29 2011_09_29_drive_0071_sync 0000000249 2011_09_29 2011_09_29_drive_0071_sync 0000000254 2011_09_29 2011_09_29_drive_0071_sync 0000000259 2011_09_29 2011_09_29_drive_0071_sync 0000000264 2011_09_29 2011_09_29_drive_0071_sync 0000000269 2011_09_29 2011_09_29_drive_0071_sync 0000000274 2011_09_29 2011_09_29_drive_0071_sync 0000000278 2011_09_29 2011_09_29_drive_0071_sync 0000000282 2011_09_29 2011_09_29_drive_0071_sync 0000000286 2011_09_29 2011_09_29_drive_0071_sync 0000000292 2011_09_29 2011_09_29_drive_0071_sync 0000000301 2011_09_29 2011_09_29_drive_0071_sync 0000000311 2011_09_29 2011_09_29_drive_0071_sync 0000000327 2011_09_29 2011_09_29_drive_0071_sync 0000000338 2011_09_29 2011_09_29_drive_0071_sync 0000000348 2011_09_29 2011_09_29_drive_0071_sync 0000000356 2011_09_29 2011_09_29_drive_0071_sync 0000000364 2011_09_29 2011_09_29_drive_0071_sync 0000000373 2011_09_29 2011_09_29_drive_0071_sync 0000000379 2011_09_29 2011_09_29_drive_0071_sync 0000000384 2011_09_29 2011_09_29_drive_0071_sync 0000000388 2011_09_29 2011_09_29_drive_0071_sync 0000000392 2011_09_29 2011_09_29_drive_0071_sync 0000000396 2011_09_29 2011_09_29_drive_0071_sync 0000000400 2011_09_29 2011_09_29_drive_0071_sync 0000000404 2011_09_29 2011_09_29_drive_0071_sync 0000000408 2011_09_29 2011_09_29_drive_0071_sync 0000000411 2011_09_29 2011_09_29_drive_0071_sync 0000000414 2011_09_29 2011_09_29_drive_0071_sync 0000000417 2011_09_29 2011_09_29_drive_0071_sync 0000000421 2011_09_29 2011_09_29_drive_0071_sync 0000000426 2011_09_29 2011_09_29_drive_0071_sync 0000000431 2011_09_29 2011_09_29_drive_0071_sync 0000000436 2011_09_29 2011_09_29_drive_0071_sync 0000000440 2011_09_29 2011_09_29_drive_0071_sync 0000000444 2011_09_29 2011_09_29_drive_0071_sync 0000000448 2011_09_29 2011_09_29_drive_0071_sync 0000000451 2011_09_29 2011_09_29_drive_0071_sync 0000000454 2011_09_29 2011_09_29_drive_0071_sync 0000000457 2011_09_29 2011_09_29_drive_0071_sync 0000000460 2011_09_29 2011_09_29_drive_0071_sync 0000000463 2011_09_29 2011_09_29_drive_0071_sync 0000000466 2011_09_29 2011_09_29_drive_0071_sync 0000000469 2011_09_29 2011_09_29_drive_0071_sync 0000000472 2011_09_29 2011_09_29_drive_0071_sync 0000000475 2011_09_29 2011_09_29_drive_0071_sync 0000000478 2011_09_29 2011_09_29_drive_0071_sync 0000000481 2011_09_29 2011_09_29_drive_0071_sync 0000000484 2011_09_29 2011_09_29_drive_0071_sync 0000000487 2011_09_29 2011_09_29_drive_0071_sync 0000000490 2011_09_29 2011_09_29_drive_0071_sync 0000000494 2011_09_29 2011_09_29_drive_0071_sync 0000000498 2011_09_29 2011_09_29_drive_0071_sync 0000000503 2011_09_29 2011_09_29_drive_0071_sync 0000000508 2011_09_29 2011_09_29_drive_0071_sync 0000000516 2011_09_29 2011_09_29_drive_0071_sync 0000000523 2011_09_29 2011_09_29_drive_0071_sync 0000000529 2011_09_29 2011_09_29_drive_0071_sync 0000000536 2011_09_29 2011_09_29_drive_0071_sync 0000000552 2011_09_29 2011_09_29_drive_0071_sync 0000000567 2011_09_29 2011_09_29_drive_0071_sync 0000000580 2011_09_29 2011_09_29_drive_0071_sync 0000000588 2011_09_29 2011_09_29_drive_0071_sync 0000000596 2011_09_29 2011_09_29_drive_0071_sync 0000000604 2011_09_29 2011_09_29_drive_0071_sync 0000000614 2011_09_29 2011_09_29_drive_0071_sync 0000000637 2011_09_29 2011_09_29_drive_0071_sync 0000000652 2011_09_29 2011_09_29_drive_0071_sync 0000000664 2011_09_29 2011_09_29_drive_0071_sync 0000000676 2011_09_29 2011_09_29_drive_0071_sync 0000000692 2011_09_29 2011_09_29_drive_0071_sync 0000000709 2011_09_29 2011_09_29_drive_0071_sync 0000000719 2011_09_29 2011_09_29_drive_0071_sync 0000000725 2011_09_29 2011_09_29_drive_0071_sync 0000000730 2011_09_29 2011_09_29_drive_0071_sync 0000000737 2011_09_29 2011_09_29_drive_0071_sync 0000000743 2011_09_29 2011_09_29_drive_0071_sync 0000000748 2011_09_29 2011_09_29_drive_0071_sync 0000000752 2011_09_29 2011_09_29_drive_0071_sync 0000000756 2011_09_29 2011_09_29_drive_0071_sync 0000000760 2011_09_29 2011_09_29_drive_0071_sync 0000000764 2011_09_29 2011_09_29_drive_0071_sync 0000000768 2011_09_29 2011_09_29_drive_0071_sync 0000000772 2011_09_29 2011_09_29_drive_0071_sync 0000000775 2011_09_29 2011_09_29_drive_0071_sync 0000000783 2011_09_29 2011_09_29_drive_0071_sync 0000000786 2011_09_29 2011_09_29_drive_0071_sync 0000000792 2011_09_29 2011_09_29_drive_0071_sync 0000000803 2011_09_29 2011_09_29_drive_0071_sync 0000000805 2011_09_29 2011_09_29_drive_0071_sync 0000000807 2011_09_29 2011_09_29_drive_0071_sync 0000000809 2011_09_29 2011_09_29_drive_0071_sync 0000000812 2011_09_29 2011_09_29_drive_0071_sync 0000000815 2011_09_29 2011_09_29_drive_0071_sync 0000000817 2011_09_29 2011_09_29_drive_0071_sync 0000000820 2011_09_29 2011_09_29_drive_0071_sync 0000000828 2011_09_29 2011_09_29_drive_0071_sync 0000000830 2011_09_29 2011_09_29_drive_0071_sync 0000000832 2011_09_29 2011_09_29_drive_0071_sync 0000000834 2011_09_29 2011_09_29_drive_0071_sync 0000000836 2011_09_29 2011_09_29_drive_0071_sync 0000000838 2011_09_29 2011_09_29_drive_0071_sync 0000000840 2011_09_29 2011_09_29_drive_0071_sync 0000000842 2011_09_29 2011_09_29_drive_0071_sync 0000000844 2011_09_29 2011_09_29_drive_0071_sync 0000000846 2011_09_29 2011_09_29_drive_0071_sync 0000000849 2011_09_29 2011_09_29_drive_0071_sync 0000000856 2011_09_29 2011_09_29_drive_0071_sync 0000000859 2011_09_29 2011_09_29_drive_0071_sync 0000000862 2011_09_29 2011_09_29_drive_0071_sync 0000000865 2011_09_29 2011_09_29_drive_0071_sync 0000000868 2011_09_29 2011_09_29_drive_0071_sync 0000000871 2011_09_29 2011_09_29_drive_0071_sync 0000000874 2011_09_29 2011_09_29_drive_0071_sync 0000000877 2011_09_29 2011_09_29_drive_0071_sync 0000000880 2011_09_29 2011_09_29_drive_0071_sync 0000000883 2011_09_29 2011_09_29_drive_0071_sync 0000000886 2011_09_29 2011_09_29_drive_0071_sync 0000000889 2011_09_29 2011_09_29_drive_0071_sync 0000000892 2011_09_29 2011_09_29_drive_0071_sync 0000000895 2011_09_29 2011_09_29_drive_0071_sync 0000000898 2011_09_29 2011_09_29_drive_0071_sync 0000000901 2011_09_29 2011_09_29_drive_0071_sync 0000000908 2011_09_29 2011_09_29_drive_0071_sync 0000000912 2011_09_29 2011_09_29_drive_0071_sync 0000000916 2011_09_29 2011_09_29_drive_0071_sync 0000000920 2011_09_29 2011_09_29_drive_0071_sync 0000000926 2011_09_29 2011_09_29_drive_0071_sync 0000000934 2011_09_29 2011_09_29_drive_0071_sync 0000000939 2011_09_29 2011_09_29_drive_0071_sync 0000000947 2011_09_29 2011_09_29_drive_0071_sync 0000000958 2011_09_29 2011_09_29_drive_0071_sync 0000000968 2011_09_29 2011_09_29_drive_0071_sync 0000000981 2011_09_29 2011_09_29_drive_0071_sync 0000000986 2011_09_29 2011_09_29_drive_0071_sync 0000000992 2011_09_29 2011_09_29_drive_0071_sync 0000001001 2011_09_29 2011_09_29_drive_0071_sync 0000001008 2011_09_29 2011_09_29_drive_0071_sync 0000001019 2011_09_29 2011_09_29_drive_0071_sync 0000001033 2011_09_29 2011_09_29_drive_0071_sync 0000001046 2011_10_03 2011_10_03_drive_0047_sync 0000000025 2011_10_03 2011_10_03_drive_0047_sync 0000000033 2011_10_03 2011_10_03_drive_0047_sync 0000000038 2011_10_03 2011_10_03_drive_0047_sync 0000000043 2011_10_03 2011_10_03_drive_0047_sync 0000000057 2011_10_03 2011_10_03_drive_0047_sync 0000000064 2011_10_03 2011_10_03_drive_0047_sync 0000000070 2011_10_03 2011_10_03_drive_0047_sync 0000000076 2011_10_03 2011_10_03_drive_0047_sync 0000000083 2011_10_03 2011_10_03_drive_0047_sync 0000000091 2011_10_03 2011_10_03_drive_0047_sync 0000000097 2011_10_03 2011_10_03_drive_0047_sync 0000000107 2011_10_03 2011_10_03_drive_0047_sync 0000000128 2011_10_03 2011_10_03_drive_0047_sync 0000000155 2011_10_03 2011_10_03_drive_0047_sync 0000000163 2011_10_03 2011_10_03_drive_0047_sync 0000000167 2011_10_03 2011_10_03_drive_0047_sync 0000000171 2011_10_03 2011_10_03_drive_0047_sync 0000000174 2011_10_03 2011_10_03_drive_0047_sync 0000000177 2011_10_03 2011_10_03_drive_0047_sync 0000000180 2011_10_03 2011_10_03_drive_0047_sync 0000000183 2011_10_03 2011_10_03_drive_0047_sync 0000000186 2011_10_03 2011_10_03_drive_0047_sync 0000000189 2011_10_03 2011_10_03_drive_0047_sync 0000000192 2011_10_03 2011_10_03_drive_0047_sync 0000000195 2011_10_03 2011_10_03_drive_0047_sync 0000000198 2011_10_03 2011_10_03_drive_0047_sync 0000000201 2011_10_03 2011_10_03_drive_0047_sync 0000000203 2011_10_03 2011_10_03_drive_0047_sync 0000000205 2011_10_03 2011_10_03_drive_0047_sync 0000000208 2011_10_03 2011_10_03_drive_0047_sync 0000000211 2011_10_03 2011_10_03_drive_0047_sync 0000000214 2011_10_03 2011_10_03_drive_0047_sync 0000000217 2011_10_03 2011_10_03_drive_0047_sync 0000000220 2011_10_03 2011_10_03_drive_0047_sync 0000000223 2011_10_03 2011_10_03_drive_0047_sync 0000000225 2011_10_03 2011_10_03_drive_0047_sync 0000000227 2011_10_03 2011_10_03_drive_0047_sync 0000000229 2011_10_03 2011_10_03_drive_0047_sync 0000000231 2011_10_03 2011_10_03_drive_0047_sync 0000000233 2011_10_03 2011_10_03_drive_0047_sync 0000000235 2011_10_03 2011_10_03_drive_0047_sync 0000000237 2011_10_03 2011_10_03_drive_0047_sync 0000000239 2011_10_03 2011_10_03_drive_0047_sync 0000000241 2011_10_03 2011_10_03_drive_0047_sync 0000000243 2011_10_03 2011_10_03_drive_0047_sync 0000000245 2011_10_03 2011_10_03_drive_0047_sync 0000000247 2011_10_03 2011_10_03_drive_0047_sync 0000000249 2011_10_03 2011_10_03_drive_0047_sync 0000000251 2011_10_03 2011_10_03_drive_0047_sync 0000000253 2011_10_03 2011_10_03_drive_0047_sync 0000000255 2011_10_03 2011_10_03_drive_0047_sync 0000000257 2011_10_03 2011_10_03_drive_0047_sync 0000000259 2011_10_03 2011_10_03_drive_0047_sync 0000000261 2011_10_03 2011_10_03_drive_0047_sync 0000000263 2011_10_03 2011_10_03_drive_0047_sync 0000000265 2011_10_03 2011_10_03_drive_0047_sync 0000000267 2011_10_03 2011_10_03_drive_0047_sync 0000000269 2011_10_03 2011_10_03_drive_0047_sync 0000000271 2011_10_03 2011_10_03_drive_0047_sync 0000000273 2011_10_03 2011_10_03_drive_0047_sync 0000000275 2011_10_03 2011_10_03_drive_0047_sync 0000000277 2011_10_03 2011_10_03_drive_0047_sync 0000000279 2011_10_03 2011_10_03_drive_0047_sync 0000000281 2011_10_03 2011_10_03_drive_0047_sync 0000000283 2011_10_03 2011_10_03_drive_0047_sync 0000000285 2011_10_03 2011_10_03_drive_0047_sync 0000000287 2011_10_03 2011_10_03_drive_0047_sync 0000000289 2011_10_03 2011_10_03_drive_0047_sync 0000000291 2011_10_03 2011_10_03_drive_0047_sync 0000000294 2011_10_03 2011_10_03_drive_0047_sync 0000000297 2011_10_03 2011_10_03_drive_0047_sync 0000000300 2011_10_03 2011_10_03_drive_0047_sync 0000000303 2011_10_03 2011_10_03_drive_0047_sync 0000000306 2011_10_03 2011_10_03_drive_0047_sync 0000000309 2011_10_03 2011_10_03_drive_0047_sync 0000000312 2011_10_03 2011_10_03_drive_0047_sync 0000000315 2011_10_03 2011_10_03_drive_0047_sync 0000000318 2011_10_03 2011_10_03_drive_0047_sync 0000000321 2011_10_03 2011_10_03_drive_0047_sync 0000000324 2011_10_03 2011_10_03_drive_0047_sync 0000000327 2011_10_03 2011_10_03_drive_0047_sync 0000000330 2011_10_03 2011_10_03_drive_0047_sync 0000000333 2011_10_03 2011_10_03_drive_0047_sync 0000000336 2011_10_03 2011_10_03_drive_0047_sync 0000000339 2011_10_03 2011_10_03_drive_0047_sync 0000000342 2011_10_03 2011_10_03_drive_0047_sync 0000000345 2011_10_03 2011_10_03_drive_0047_sync 0000000348 2011_10_03 2011_10_03_drive_0047_sync 0000000351 2011_10_03 2011_10_03_drive_0047_sync 0000000354 2011_10_03 2011_10_03_drive_0047_sync 0000000357 2011_10_03 2011_10_03_drive_0047_sync 0000000360 2011_10_03 2011_10_03_drive_0047_sync 0000000363 2011_10_03 2011_10_03_drive_0047_sync 0000000366 2011_10_03 2011_10_03_drive_0047_sync 0000000369 2011_10_03 2011_10_03_drive_0047_sync 0000000372 2011_10_03 2011_10_03_drive_0047_sync 0000000374 2011_10_03 2011_10_03_drive_0047_sync 0000000376 2011_10_03 2011_10_03_drive_0047_sync 0000000379 2011_10_03 2011_10_03_drive_0047_sync 0000000382 2011_10_03 2011_10_03_drive_0047_sync 0000000385 2011_10_03 2011_10_03_drive_0047_sync 0000000387 2011_10_03 2011_10_03_drive_0047_sync 0000000389 2011_10_03 2011_10_03_drive_0047_sync 0000000391 2011_10_03 2011_10_03_drive_0047_sync 0000000393 2011_10_03 2011_10_03_drive_0047_sync 0000000396 2011_10_03 2011_10_03_drive_0047_sync 0000000398 2011_10_03 2011_10_03_drive_0047_sync 0000000400 2011_10_03 2011_10_03_drive_0047_sync 0000000402 2011_10_03 2011_10_03_drive_0047_sync 0000000404 2011_10_03 2011_10_03_drive_0047_sync 0000000406 2011_10_03 2011_10_03_drive_0047_sync 0000000408 2011_10_03 2011_10_03_drive_0047_sync 0000000410 2011_10_03 2011_10_03_drive_0047_sync 0000000412 2011_10_03 2011_10_03_drive_0047_sync 0000000414 2011_10_03 2011_10_03_drive_0047_sync 0000000416 2011_10_03 2011_10_03_drive_0047_sync 0000000418 2011_10_03 2011_10_03_drive_0047_sync 0000000420 2011_10_03 2011_10_03_drive_0047_sync 0000000422 2011_10_03 2011_10_03_drive_0047_sync 0000000424 2011_10_03 2011_10_03_drive_0047_sync 0000000426 2011_10_03 2011_10_03_drive_0047_sync 0000000428 2011_10_03 2011_10_03_drive_0047_sync 0000000430 2011_10_03 2011_10_03_drive_0047_sync 0000000432 2011_10_03 2011_10_03_drive_0047_sync 0000000434 2011_10_03 2011_10_03_drive_0047_sync 0000000436 2011_10_03 2011_10_03_drive_0047_sync 0000000438 2011_10_03 2011_10_03_drive_0047_sync 0000000440 2011_10_03 2011_10_03_drive_0047_sync 0000000441 2011_10_03 2011_10_03_drive_0047_sync 0000000442 2011_10_03 2011_10_03_drive_0047_sync 0000000443 2011_10_03 2011_10_03_drive_0047_sync 0000000444 2011_10_03 2011_10_03_drive_0047_sync 0000000445 2011_10_03 2011_10_03_drive_0047_sync 0000000446 2011_10_03 2011_10_03_drive_0047_sync 0000000447 2011_10_03 2011_10_03_drive_0047_sync 0000000448 2011_10_03 2011_10_03_drive_0047_sync 0000000449 2011_10_03 2011_10_03_drive_0047_sync 0000000450 2011_10_03 2011_10_03_drive_0047_sync 0000000451 2011_10_03 2011_10_03_drive_0047_sync 0000000452 2011_10_03 2011_10_03_drive_0047_sync 0000000453 2011_10_03 2011_10_03_drive_0047_sync 0000000454 2011_10_03 2011_10_03_drive_0047_sync 0000000455 2011_10_03 2011_10_03_drive_0047_sync 0000000456 2011_10_03 2011_10_03_drive_0047_sync 0000000457 2011_10_03 2011_10_03_drive_0047_sync 0000000458 2011_10_03 2011_10_03_drive_0047_sync 0000000459 2011_10_03 2011_10_03_drive_0047_sync 0000000460 2011_10_03 2011_10_03_drive_0047_sync 0000000461 2011_10_03 2011_10_03_drive_0047_sync 0000000462 2011_10_03 2011_10_03_drive_0047_sync 0000000463 2011_10_03 2011_10_03_drive_0047_sync 0000000464 2011_10_03 2011_10_03_drive_0047_sync 0000000465 2011_10_03 2011_10_03_drive_0047_sync 0000000466 2011_10_03 2011_10_03_drive_0047_sync 0000000467 2011_10_03 2011_10_03_drive_0047_sync 0000000468 2011_10_03 2011_10_03_drive_0047_sync 0000000469 2011_10_03 2011_10_03_drive_0047_sync 0000000470 2011_10_03 2011_10_03_drive_0047_sync 0000000471 2011_10_03 2011_10_03_drive_0047_sync 0000000472 2011_10_03 2011_10_03_drive_0047_sync 0000000473 2011_10_03 2011_10_03_drive_0047_sync 0000000474 2011_10_03 2011_10_03_drive_0047_sync 0000000475 2011_10_03 2011_10_03_drive_0047_sync 0000000476 2011_10_03 2011_10_03_drive_0047_sync 0000000477 2011_10_03 2011_10_03_drive_0047_sync 0000000478 2011_10_03 2011_10_03_drive_0047_sync 0000000479 2011_10_03 2011_10_03_drive_0047_sync 0000000480 2011_10_03 2011_10_03_drive_0047_sync 0000000481 2011_10_03 2011_10_03_drive_0047_sync 0000000482 2011_10_03 2011_10_03_drive_0047_sync 0000000483 2011_10_03 2011_10_03_drive_0047_sync 0000000484 2011_10_03 2011_10_03_drive_0047_sync 0000000485 2011_10_03 2011_10_03_drive_0047_sync 0000000486 2011_10_03 2011_10_03_drive_0047_sync 0000000487 2011_10_03 2011_10_03_drive_0047_sync 0000000488 2011_10_03 2011_10_03_drive_0047_sync 0000000489 2011_10_03 2011_10_03_drive_0047_sync 0000000490 2011_10_03 2011_10_03_drive_0047_sync 0000000491 2011_10_03 2011_10_03_drive_0047_sync 0000000492 2011_10_03 2011_10_03_drive_0047_sync 0000000493 2011_10_03 2011_10_03_drive_0047_sync 0000000494 2011_10_03 2011_10_03_drive_0047_sync 0000000495 2011_10_03 2011_10_03_drive_0047_sync 0000000496 2011_10_03 2011_10_03_drive_0047_sync 0000000497 2011_10_03 2011_10_03_drive_0047_sync 0000000498 2011_10_03 2011_10_03_drive_0047_sync 0000000499 2011_10_03 2011_10_03_drive_0047_sync 0000000500 2011_10_03 2011_10_03_drive_0047_sync 0000000501 2011_10_03 2011_10_03_drive_0047_sync 0000000502 2011_10_03 2011_10_03_drive_0047_sync 0000000503 2011_10_03 2011_10_03_drive_0047_sync 0000000504 2011_10_03 2011_10_03_drive_0047_sync 0000000505 2011_10_03 2011_10_03_drive_0047_sync 0000000506 2011_10_03 2011_10_03_drive_0047_sync 0000000507 2011_10_03 2011_10_03_drive_0047_sync 0000000508 2011_10_03 2011_10_03_drive_0047_sync 0000000509 2011_10_03 2011_10_03_drive_0047_sync 0000000510 2011_10_03 2011_10_03_drive_0047_sync 0000000511 2011_10_03 2011_10_03_drive_0047_sync 0000000512 2011_10_03 2011_10_03_drive_0047_sync 0000000514 2011_10_03 2011_10_03_drive_0047_sync 0000000516 2011_10_03 2011_10_03_drive_0047_sync 0000000518 2011_10_03 2011_10_03_drive_0047_sync 0000000520 2011_10_03 2011_10_03_drive_0047_sync 0000000522 2011_10_03 2011_10_03_drive_0047_sync 0000000524 2011_10_03 2011_10_03_drive_0047_sync 0000000526 2011_10_03 2011_10_03_drive_0047_sync 0000000528 2011_10_03 2011_10_03_drive_0047_sync 0000000530 2011_10_03 2011_10_03_drive_0047_sync 0000000532 2011_10_03 2011_10_03_drive_0047_sync 0000000534 2011_10_03 2011_10_03_drive_0047_sync 0000000536 2011_10_03 2011_10_03_drive_0047_sync 0000000538 2011_10_03 2011_10_03_drive_0047_sync 0000000540 2011_10_03 2011_10_03_drive_0047_sync 0000000542 2011_10_03 2011_10_03_drive_0047_sync 0000000544 2011_10_03 2011_10_03_drive_0047_sync 0000000546 2011_10_03 2011_10_03_drive_0047_sync 0000000548 2011_10_03 2011_10_03_drive_0047_sync 0000000550 2011_10_03 2011_10_03_drive_0047_sync 0000000552 2011_10_03 2011_10_03_drive_0047_sync 0000000554 2011_10_03 2011_10_03_drive_0047_sync 0000000556 2011_10_03 2011_10_03_drive_0047_sync 0000000558 2011_10_03 2011_10_03_drive_0047_sync 0000000560 2011_10_03 2011_10_03_drive_0047_sync 0000000562 2011_10_03 2011_10_03_drive_0047_sync 0000000564 2011_10_03 2011_10_03_drive_0047_sync 0000000566 2011_10_03 2011_10_03_drive_0047_sync 0000000568 2011_10_03 2011_10_03_drive_0047_sync 0000000570 2011_10_03 2011_10_03_drive_0047_sync 0000000572 2011_10_03 2011_10_03_drive_0047_sync 0000000574 2011_10_03 2011_10_03_drive_0047_sync 0000000576 2011_10_03 2011_10_03_drive_0047_sync 0000000578 2011_10_03 2011_10_03_drive_0047_sync 0000000580 2011_10_03 2011_10_03_drive_0047_sync 0000000582 2011_10_03 2011_10_03_drive_0047_sync 0000000585 2011_10_03 2011_10_03_drive_0047_sync 0000000588 2011_10_03 2011_10_03_drive_0047_sync 0000000591 2011_10_03 2011_10_03_drive_0047_sync 0000000594 2011_10_03 2011_10_03_drive_0047_sync 0000000597 2011_10_03 2011_10_03_drive_0047_sync 0000000600 2011_10_03 2011_10_03_drive_0047_sync 0000000603 2011_10_03 2011_10_03_drive_0047_sync 0000000605 2011_10_03 2011_10_03_drive_0047_sync 0000000607 2011_10_03 2011_10_03_drive_0047_sync 0000000609 2011_10_03 2011_10_03_drive_0047_sync 0000000611 2011_10_03 2011_10_03_drive_0047_sync 0000000613 2011_10_03 2011_10_03_drive_0047_sync 0000000615 2011_10_03 2011_10_03_drive_0047_sync 0000000617 2011_10_03 2011_10_03_drive_0047_sync 0000000619 2011_10_03 2011_10_03_drive_0047_sync 0000000621 2011_10_03 2011_10_03_drive_0047_sync 0000000623 2011_10_03 2011_10_03_drive_0047_sync 0000000625 2011_10_03 2011_10_03_drive_0047_sync 0000000627 2011_10_03 2011_10_03_drive_0047_sync 0000000629 2011_10_03 2011_10_03_drive_0047_sync 0000000631 2011_10_03 2011_10_03_drive_0047_sync 0000000633 2011_10_03 2011_10_03_drive_0047_sync 0000000635 2011_10_03 2011_10_03_drive_0047_sync 0000000640 2011_10_03 2011_10_03_drive_0047_sync 0000000646 2011_10_03 2011_10_03_drive_0047_sync 0000000651 2011_10_03 2011_10_03_drive_0047_sync 0000000655 2011_10_03 2011_10_03_drive_0047_sync 0000000658 2011_10_03 2011_10_03_drive_0047_sync 0000000661 2011_10_03 2011_10_03_drive_0047_sync 0000000663 2011_10_03 2011_10_03_drive_0047_sync 0000000665 2011_10_03 2011_10_03_drive_0047_sync 0000000667 2011_10_03 2011_10_03_drive_0047_sync 0000000670 2011_10_03 2011_10_03_drive_0047_sync 0000000673 2011_10_03 2011_10_03_drive_0047_sync 0000000676 2011_10_03 2011_10_03_drive_0047_sync 0000000679 2011_10_03 2011_10_03_drive_0047_sync 0000000682 2011_10_03 2011_10_03_drive_0047_sync 0000000685 2011_10_03 2011_10_03_drive_0047_sync 0000000689 2011_10_03 2011_10_03_drive_0047_sync 0000000694 2011_10_03 2011_10_03_drive_0047_sync 0000000701 2011_10_03 2011_10_03_drive_0047_sync 0000000710 2011_10_03 2011_10_03_drive_0047_sync 0000000716 2011_10_03 2011_10_03_drive_0047_sync 0000000720 2011_10_03 2011_10_03_drive_0047_sync 0000000723 2011_10_03 2011_10_03_drive_0047_sync 0000000726 2011_10_03 2011_10_03_drive_0047_sync 0000000729 2011_10_03 2011_10_03_drive_0047_sync 0000000731 2011_10_03 2011_10_03_drive_0047_sync 0000000733 2011_10_03 2011_10_03_drive_0047_sync 0000000735 2011_10_03 2011_10_03_drive_0047_sync 0000000737 2011_10_03 2011_10_03_drive_0047_sync 0000000740 2011_10_03 2011_10_03_drive_0047_sync 0000000744 2011_10_03 2011_10_03_drive_0047_sync 0000000752 2011_10_03 2011_10_03_drive_0047_sync 0000000761 2011_10_03 2011_10_03_drive_0047_sync 0000000770 2011_10_03 2011_10_03_drive_0047_sync 0000000779 2011_10_03 2011_10_03_drive_0047_sync 0000000784 2011_10_03 2011_10_03_drive_0047_sync 0000000787 2011_10_03 2011_10_03_drive_0047_sync 0000000790 2011_10_03 2011_10_03_drive_0047_sync 0000000793 2011_09_26 2011_09_26_drive_0106_sync 0000000011 2011_09_26 2011_09_26_drive_0106_sync 0000000021 2011_09_26 2011_09_26_drive_0106_sync 0000000030 2011_09_26 2011_09_26_drive_0106_sync 0000000038 2011_09_26 2011_09_26_drive_0106_sync 0000000044 2011_09_26 2011_09_26_drive_0106_sync 0000000048 2011_09_26 2011_09_26_drive_0106_sync 0000000052 2011_09_26 2011_09_26_drive_0106_sync 0000000055 2011_09_26 2011_09_26_drive_0106_sync 0000000058 2011_09_26 2011_09_26_drive_0106_sync 0000000061 2011_09_26 2011_09_26_drive_0106_sync 0000000064 2011_09_26 2011_09_26_drive_0106_sync 0000000066 2011_09_26 2011_09_26_drive_0106_sync 0000000068 2011_09_26 2011_09_26_drive_0106_sync 0000000070 2011_09_26 2011_09_26_drive_0106_sync 0000000072 2011_09_26 2011_09_26_drive_0106_sync 0000000074 2011_09_26 2011_09_26_drive_0106_sync 0000000076 2011_09_26 2011_09_26_drive_0106_sync 0000000078 2011_09_26 2011_09_26_drive_0106_sync 0000000080 2011_09_26 2011_09_26_drive_0106_sync 0000000082 2011_09_26 2011_09_26_drive_0106_sync 0000000084 2011_09_26 2011_09_26_drive_0106_sync 0000000086 2011_09_26 2011_09_26_drive_0106_sync 0000000088 2011_09_26 2011_09_26_drive_0106_sync 0000000090 2011_09_26 2011_09_26_drive_0106_sync 0000000092 2011_09_26 2011_09_26_drive_0106_sync 0000000094 2011_09_26 2011_09_26_drive_0106_sync 0000000096 2011_09_26 2011_09_26_drive_0106_sync 0000000098 2011_09_26 2011_09_26_drive_0106_sync 0000000100 2011_09_26 2011_09_26_drive_0106_sync 0000000102 2011_09_26 2011_09_26_drive_0106_sync 0000000104 2011_09_26 2011_09_26_drive_0106_sync 0000000106 2011_09_26 2011_09_26_drive_0106_sync 0000000108 2011_09_26 2011_09_26_drive_0106_sync 0000000110 2011_09_26 2011_09_26_drive_0106_sync 0000000112 2011_09_26 2011_09_26_drive_0106_sync 0000000114 2011_09_26 2011_09_26_drive_0106_sync 0000000116 2011_09_26 2011_09_26_drive_0106_sync 0000000118 2011_09_26 2011_09_26_drive_0106_sync 0000000120 2011_09_26 2011_09_26_drive_0106_sync 0000000122 2011_09_26 2011_09_26_drive_0106_sync 0000000124 2011_09_26 2011_09_26_drive_0106_sync 0000000126 2011_09_26 2011_09_26_drive_0106_sync 0000000128 2011_09_26 2011_09_26_drive_0106_sync 0000000130 2011_09_26 2011_09_26_drive_0106_sync 0000000132 2011_09_26 2011_09_26_drive_0106_sync 0000000134 2011_09_26 2011_09_26_drive_0106_sync 0000000136 2011_09_26 2011_09_26_drive_0106_sync 0000000138 2011_09_26 2011_09_26_drive_0106_sync 0000000140 2011_09_26 2011_09_26_drive_0106_sync 0000000142 2011_09_26 2011_09_26_drive_0106_sync 0000000144 2011_09_26 2011_09_26_drive_0106_sync 0000000146 2011_09_26 2011_09_26_drive_0106_sync 0000000148 2011_09_26 2011_09_26_drive_0106_sync 0000000150 2011_09_26 2011_09_26_drive_0106_sync 0000000152 2011_09_26 2011_09_26_drive_0106_sync 0000000154 2011_09_26 2011_09_26_drive_0106_sync 0000000156 2011_09_26 2011_09_26_drive_0106_sync 0000000158 2011_09_26 2011_09_26_drive_0106_sync 0000000160 2011_09_26 2011_09_26_drive_0106_sync 0000000162 2011_09_26 2011_09_26_drive_0106_sync 0000000164 2011_09_26 2011_09_26_drive_0106_sync 0000000166 2011_09_26 2011_09_26_drive_0106_sync 0000000168 2011_09_26 2011_09_26_drive_0106_sync 0000000170 2011_09_26 2011_09_26_drive_0106_sync 0000000173 2011_09_26 2011_09_26_drive_0106_sync 0000000176 2011_09_26 2011_09_26_drive_0106_sync 0000000179 2011_09_26 2011_09_26_drive_0106_sync 0000000182 2011_09_26 2011_09_26_drive_0106_sync 0000000185 2011_09_26 2011_09_26_drive_0106_sync 0000000188 2011_09_26 2011_09_26_drive_0106_sync 0000000190 2011_09_26 2011_09_26_drive_0106_sync 0000000192 2011_09_26 2011_09_26_drive_0106_sync 0000000194 2011_09_26 2011_09_26_drive_0106_sync 0000000196 2011_09_26 2011_09_26_drive_0106_sync 0000000198 2011_09_26 2011_09_26_drive_0106_sync 0000000200 2011_09_26 2011_09_26_drive_0106_sync 0000000202 2011_09_26 2011_09_26_drive_0106_sync 0000000204 2011_09_26 2011_09_26_drive_0106_sync 0000000206 2011_09_26 2011_09_26_drive_0106_sync 0000000208 2011_09_26 2011_09_26_drive_0106_sync 0000000210 2011_09_26 2011_09_26_drive_0106_sync 0000000212 2011_09_26 2011_09_26_drive_0106_sync 0000000214 2011_09_26 2011_09_26_drive_0106_sync 0000000216 2011_09_26 2011_09_26_drive_0106_sync 0000000218 2011_09_26 2011_09_26_drive_0106_sync 0000000220 2011_09_26 2011_09_26_drive_0106_sync 0000000223 2011_09_26 2011_09_26_drive_0106_sync 0000000226 2011_09_26 2011_09_26_drive_0023_sync 0000000002 2011_09_26 2011_09_26_drive_0023_sync 0000000004 2011_09_26 2011_09_26_drive_0023_sync 0000000006 2011_09_26 2011_09_26_drive_0023_sync 0000000008 2011_09_26 2011_09_26_drive_0023_sync 0000000010 2011_09_26 2011_09_26_drive_0023_sync 0000000012 2011_09_26 2011_09_26_drive_0023_sync 0000000014 2011_09_26 2011_09_26_drive_0023_sync 0000000016 2011_09_26 2011_09_26_drive_0023_sync 0000000018 2011_09_26 2011_09_26_drive_0023_sync 0000000020 2011_09_26 2011_09_26_drive_0023_sync 0000000022 2011_09_26 2011_09_26_drive_0023_sync 0000000024 2011_09_26 2011_09_26_drive_0023_sync 0000000026 2011_09_26 2011_09_26_drive_0023_sync 0000000028 2011_09_26 2011_09_26_drive_0023_sync 0000000030 2011_09_26 2011_09_26_drive_0023_sync 0000000032 2011_09_26 2011_09_26_drive_0023_sync 0000000034 2011_09_26 2011_09_26_drive_0023_sync 0000000036 2011_09_26 2011_09_26_drive_0023_sync 0000000038 2011_09_26 2011_09_26_drive_0023_sync 0000000040 2011_09_26 2011_09_26_drive_0023_sync 0000000042 2011_09_26 2011_09_26_drive_0023_sync 0000000044 2011_09_26 2011_09_26_drive_0023_sync 0000000046 2011_09_26 2011_09_26_drive_0023_sync 0000000048 2011_09_26 2011_09_26_drive_0023_sync 0000000050 2011_09_26 2011_09_26_drive_0023_sync 0000000052 2011_09_26 2011_09_26_drive_0023_sync 0000000054 2011_09_26 2011_09_26_drive_0023_sync 0000000056 2011_09_26 2011_09_26_drive_0023_sync 0000000058 2011_09_26 2011_09_26_drive_0023_sync 0000000060 2011_09_26 2011_09_26_drive_0023_sync 0000000062 2011_09_26 2011_09_26_drive_0023_sync 0000000064 2011_09_26 2011_09_26_drive_0023_sync 0000000066 2011_09_26 2011_09_26_drive_0023_sync 0000000068 2011_09_26 2011_09_26_drive_0023_sync 0000000070 2011_09_26 2011_09_26_drive_0023_sync 0000000072 2011_09_26 2011_09_26_drive_0023_sync 0000000074 2011_09_26 2011_09_26_drive_0023_sync 0000000076 2011_09_26 2011_09_26_drive_0023_sync 0000000078 2011_09_26 2011_09_26_drive_0023_sync 0000000080 2011_09_26 2011_09_26_drive_0023_sync 0000000082 2011_09_26 2011_09_26_drive_0023_sync 0000000084 2011_09_26 2011_09_26_drive_0023_sync 0000000086 2011_09_26 2011_09_26_drive_0023_sync 0000000088 2011_09_26 2011_09_26_drive_0023_sync 0000000090 2011_09_26 2011_09_26_drive_0023_sync 0000000092 2011_09_26 2011_09_26_drive_0023_sync 0000000094 2011_09_26 2011_09_26_drive_0023_sync 0000000096 2011_09_26 2011_09_26_drive_0023_sync 0000000098 2011_09_26 2011_09_26_drive_0023_sync 0000000100 2011_09_26 2011_09_26_drive_0023_sync 0000000102 2011_09_26 2011_09_26_drive_0023_sync 0000000104 2011_09_26 2011_09_26_drive_0023_sync 0000000106 2011_09_26 2011_09_26_drive_0023_sync 0000000108 2011_09_26 2011_09_26_drive_0023_sync 0000000110 2011_09_26 2011_09_26_drive_0023_sync 0000000112 2011_09_26 2011_09_26_drive_0023_sync 0000000114 2011_09_26 2011_09_26_drive_0023_sync 0000000116 2011_09_26 2011_09_26_drive_0023_sync 0000000118 2011_09_26 2011_09_26_drive_0023_sync 0000000120 2011_09_26 2011_09_26_drive_0023_sync 0000000122 2011_09_26 2011_09_26_drive_0023_sync 0000000124 2011_09_26 2011_09_26_drive_0023_sync 0000000126 2011_09_26 2011_09_26_drive_0023_sync 0000000128 2011_09_26 2011_09_26_drive_0023_sync 0000000130 2011_09_26 2011_09_26_drive_0023_sync 0000000132 2011_09_26 2011_09_26_drive_0023_sync 0000000134 2011_09_26 2011_09_26_drive_0023_sync 0000000136 2011_09_26 2011_09_26_drive_0023_sync 0000000138 2011_09_26 2011_09_26_drive_0023_sync 0000000140 2011_09_26 2011_09_26_drive_0023_sync 0000000142 2011_09_26 2011_09_26_drive_0023_sync 0000000144 2011_09_26 2011_09_26_drive_0023_sync 0000000146 2011_09_26 2011_09_26_drive_0023_sync 0000000148 2011_09_26 2011_09_26_drive_0023_sync 0000000150 2011_09_26 2011_09_26_drive_0023_sync 0000000152 2011_09_26 2011_09_26_drive_0023_sync 0000000154 2011_09_26 2011_09_26_drive_0023_sync 0000000156 2011_09_26 2011_09_26_drive_0023_sync 0000000158 2011_09_26 2011_09_26_drive_0023_sync 0000000160 2011_09_26 2011_09_26_drive_0023_sync 0000000162 2011_09_26 2011_09_26_drive_0023_sync 0000000164 2011_09_26 2011_09_26_drive_0023_sync 0000000166 2011_09_26 2011_09_26_drive_0023_sync 0000000168 2011_09_26 2011_09_26_drive_0023_sync 0000000170 2011_09_26 2011_09_26_drive_0023_sync 0000000172 2011_09_26 2011_09_26_drive_0023_sync 0000000174 2011_09_26 2011_09_26_drive_0023_sync 0000000176 2011_09_26 2011_09_26_drive_0023_sync 0000000178 2011_09_26 2011_09_26_drive_0023_sync 0000000180 2011_09_26 2011_09_26_drive_0023_sync 0000000182 2011_09_26 2011_09_26_drive_0023_sync 0000000183 2011_09_26 2011_09_26_drive_0023_sync 0000000184 2011_09_26 2011_09_26_drive_0023_sync 0000000185 2011_09_26 2011_09_26_drive_0023_sync 0000000190 2011_09_26 2011_09_26_drive_0023_sync 0000000191 2011_09_26 2011_09_26_drive_0023_sync 0000000192 2011_09_26 2011_09_26_drive_0023_sync 0000000193 2011_09_26 2011_09_26_drive_0023_sync 0000000194 2011_09_26 2011_09_26_drive_0023_sync 0000000195 2011_09_26 2011_09_26_drive_0023_sync 0000000196 2011_09_26 2011_09_26_drive_0023_sync 0000000197 2011_09_26 2011_09_26_drive_0023_sync 0000000198 2011_09_26 2011_09_26_drive_0023_sync 0000000200 2011_09_26 2011_09_26_drive_0023_sync 0000000202 2011_09_26 2011_09_26_drive_0023_sync 0000000204 2011_09_26 2011_09_26_drive_0023_sync 0000000205 2011_09_26 2011_09_26_drive_0023_sync 0000000206 2011_09_26 2011_09_26_drive_0023_sync 0000000207 2011_09_26 2011_09_26_drive_0023_sync 0000000208 2011_09_26 2011_09_26_drive_0023_sync 0000000210 2011_09_26 2011_09_26_drive_0023_sync 0000000212 2011_09_26 2011_09_26_drive_0023_sync 0000000214 2011_09_26 2011_09_26_drive_0023_sync 0000000216 2011_09_26 2011_09_26_drive_0023_sync 0000000218 2011_09_26 2011_09_26_drive_0023_sync 0000000222 2011_09_26 2011_09_26_drive_0023_sync 0000000224 2011_09_26 2011_09_26_drive_0023_sync 0000000225 2011_09_26 2011_09_26_drive_0023_sync 0000000226 2011_09_26 2011_09_26_drive_0023_sync 0000000227 2011_09_26 2011_09_26_drive_0023_sync 0000000228 2011_09_26 2011_09_26_drive_0023_sync 0000000229 2011_09_26 2011_09_26_drive_0023_sync 0000000230 2011_09_26 2011_09_26_drive_0023_sync 0000000231 2011_09_26 2011_09_26_drive_0023_sync 0000000232 2011_09_26 2011_09_26_drive_0023_sync 0000000233 2011_09_26 2011_09_26_drive_0023_sync 0000000234 2011_09_26 2011_09_26_drive_0023_sync 0000000235 2011_09_26 2011_09_26_drive_0023_sync 0000000236 2011_09_26 2011_09_26_drive_0023_sync 0000000237 2011_09_26 2011_09_26_drive_0023_sync 0000000238 2011_09_26 2011_09_26_drive_0023_sync 0000000239 2011_09_26 2011_09_26_drive_0023_sync 0000000240 2011_09_26 2011_09_26_drive_0023_sync 0000000241 2011_09_26 2011_09_26_drive_0023_sync 0000000242 2011_09_26 2011_09_26_drive_0023_sync 0000000243 2011_09_26 2011_09_26_drive_0023_sync 0000000245 2011_09_26 2011_09_26_drive_0023_sync 0000000246 2011_09_26 2011_09_26_drive_0023_sync 0000000247 2011_09_26 2011_09_26_drive_0023_sync 0000000248 2011_09_26 2011_09_26_drive_0023_sync 0000000249 2011_09_26 2011_09_26_drive_0023_sync 0000000250 2011_09_26 2011_09_26_drive_0023_sync 0000000251 2011_09_26 2011_09_26_drive_0023_sync 0000000252 2011_09_26 2011_09_26_drive_0023_sync 0000000253 2011_09_26 2011_09_26_drive_0023_sync 0000000254 2011_09_26 2011_09_26_drive_0023_sync 0000000255 2011_09_26 2011_09_26_drive_0023_sync 0000000256 2011_09_26 2011_09_26_drive_0023_sync 0000000257 2011_09_26 2011_09_26_drive_0023_sync 0000000258 2011_09_26 2011_09_26_drive_0023_sync 0000000259 2011_09_26 2011_09_26_drive_0023_sync 0000000260 2011_09_26 2011_09_26_drive_0023_sync 0000000261 2011_09_26 2011_09_26_drive_0023_sync 0000000262 2011_09_26 2011_09_26_drive_0023_sync 0000000263 2011_09_26 2011_09_26_drive_0023_sync 0000000264 2011_09_26 2011_09_26_drive_0023_sync 0000000265 2011_09_26 2011_09_26_drive_0023_sync 0000000266 2011_09_26 2011_09_26_drive_0023_sync 0000000267 2011_09_26 2011_09_26_drive_0023_sync 0000000268 2011_09_26 2011_09_26_drive_0023_sync 0000000269 2011_09_26 2011_09_26_drive_0023_sync 0000000270 2011_09_26 2011_09_26_drive_0023_sync 0000000271 2011_09_26 2011_09_26_drive_0023_sync 0000000272 2011_09_26 2011_09_26_drive_0023_sync 0000000273 2011_09_26 2011_09_26_drive_0023_sync 0000000275 2011_09_26 2011_09_26_drive_0023_sync 0000000277 2011_09_26 2011_09_26_drive_0023_sync 0000000279 2011_09_26 2011_09_26_drive_0023_sync 0000000281 2011_09_26 2011_09_26_drive_0023_sync 0000000289 2011_09_26 2011_09_26_drive_0023_sync 0000000291 2011_09_26 2011_09_26_drive_0023_sync 0000000293 2011_09_26 2011_09_26_drive_0023_sync 0000000295 2011_09_26 2011_09_26_drive_0023_sync 0000000297 2011_09_26 2011_09_26_drive_0023_sync 0000000299 2011_09_26 2011_09_26_drive_0023_sync 0000000301 2011_09_26 2011_09_26_drive_0023_sync 0000000303 2011_09_26 2011_09_26_drive_0023_sync 0000000305 2011_09_26 2011_09_26_drive_0023_sync 0000000307 2011_09_26 2011_09_26_drive_0023_sync 0000000309 2011_09_26 2011_09_26_drive_0023_sync 0000000311 2011_09_26 2011_09_26_drive_0023_sync 0000000313 2011_09_26 2011_09_26_drive_0023_sync 0000000315 2011_09_26 2011_09_26_drive_0023_sync 0000000317 2011_09_26 2011_09_26_drive_0023_sync 0000000319 2011_09_26 2011_09_26_drive_0023_sync 0000000321 2011_09_26 2011_09_26_drive_0023_sync 0000000324 2011_09_26 2011_09_26_drive_0023_sync 0000000328 2011_09_26 2011_09_26_drive_0023_sync 0000000330 2011_09_26 2011_09_26_drive_0023_sync 0000000332 2011_09_26 2011_09_26_drive_0023_sync 0000000334 2011_09_26 2011_09_26_drive_0023_sync 0000000336 2011_09_26 2011_09_26_drive_0023_sync 0000000338 2011_09_26 2011_09_26_drive_0023_sync 0000000340 2011_09_26 2011_09_26_drive_0023_sync 0000000346 2011_09_26 2011_09_26_drive_0023_sync 0000000348 2011_09_26 2011_09_26_drive_0023_sync 0000000350 2011_09_26 2011_09_26_drive_0023_sync 0000000352 2011_09_26 2011_09_26_drive_0023_sync 0000000354 2011_09_26 2011_09_26_drive_0023_sync 0000000356 2011_09_26 2011_09_26_drive_0023_sync 0000000358 2011_09_26 2011_09_26_drive_0023_sync 0000000360 2011_09_26 2011_09_26_drive_0023_sync 0000000362 2011_09_26 2011_09_26_drive_0023_sync 0000000364 2011_09_26 2011_09_26_drive_0023_sync 0000000366 2011_09_26 2011_09_26_drive_0023_sync 0000000368 2011_09_26 2011_09_26_drive_0023_sync 0000000370 2011_09_26 2011_09_26_drive_0023_sync 0000000372 2011_09_26 2011_09_26_drive_0023_sync 0000000374 2011_09_26 2011_09_26_drive_0023_sync 0000000376 2011_09_26 2011_09_26_drive_0023_sync 0000000378 2011_09_26 2011_09_26_drive_0023_sync 0000000380 2011_09_26 2011_09_26_drive_0023_sync 0000000382 2011_09_26 2011_09_26_drive_0023_sync 0000000384 2011_09_26 2011_09_26_drive_0023_sync 0000000386 2011_09_26 2011_09_26_drive_0023_sync 0000000388 2011_09_26 2011_09_26_drive_0023_sync 0000000390 2011_09_26 2011_09_26_drive_0023_sync 0000000392 2011_09_26 2011_09_26_drive_0023_sync 0000000394 2011_09_26 2011_09_26_drive_0023_sync 0000000396 2011_09_26 2011_09_26_drive_0023_sync 0000000398 2011_09_26 2011_09_26_drive_0023_sync 0000000400 2011_09_26 2011_09_26_drive_0023_sync 0000000402 2011_09_26 2011_09_26_drive_0023_sync 0000000404 2011_09_26 2011_09_26_drive_0023_sync 0000000406 2011_09_26 2011_09_26_drive_0023_sync 0000000408 2011_09_26 2011_09_26_drive_0023_sync 0000000410 2011_09_26 2011_09_26_drive_0023_sync 0000000412 2011_09_26 2011_09_26_drive_0023_sync 0000000414 2011_09_26 2011_09_26_drive_0023_sync 0000000416 2011_09_26 2011_09_26_drive_0023_sync 0000000418 2011_09_26 2011_09_26_drive_0023_sync 0000000420 2011_09_26 2011_09_26_drive_0023_sync 0000000422 2011_09_26 2011_09_26_drive_0023_sync 0000000424 2011_09_26 2011_09_26_drive_0023_sync 0000000426 2011_09_26 2011_09_26_drive_0023_sync 0000000428 2011_09_26 2011_09_26_drive_0023_sync 0000000430 2011_09_26 2011_09_26_drive_0023_sync 0000000432 2011_09_26 2011_09_26_drive_0023_sync 0000000434 2011_09_26 2011_09_26_drive_0023_sync 0000000436 2011_09_26 2011_09_26_drive_0023_sync 0000000438 2011_09_26 2011_09_26_drive_0023_sync 0000000440 2011_09_26 2011_09_26_drive_0023_sync 0000000442 2011_09_26 2011_09_26_drive_0023_sync 0000000444 2011_09_26 2011_09_26_drive_0023_sync 0000000446 2011_09_26 2011_09_26_drive_0023_sync 0000000448 2011_09_26 2011_09_26_drive_0023_sync 0000000450 2011_09_26 2011_09_26_drive_0023_sync 0000000452 2011_09_26 2011_09_26_drive_0023_sync 0000000454 2011_09_26 2011_09_26_drive_0023_sync 0000000456 2011_09_26 2011_09_26_drive_0023_sync 0000000458 2011_09_26 2011_09_26_drive_0023_sync 0000000460 2011_09_26 2011_09_26_drive_0023_sync 0000000462 2011_09_26 2011_09_26_drive_0023_sync 0000000464 2011_09_26 2011_09_26_drive_0023_sync 0000000466 2011_09_26 2011_09_26_drive_0023_sync 0000000468 2011_09_26 2011_09_26_drive_0023_sync 0000000470 2011_09_26 2011_09_26_drive_0023_sync 0000000472 2011_09_26 2011_09_26_drive_0117_sync 0000000050 2011_09_26 2011_09_26_drive_0117_sync 0000000052 2011_09_26 2011_09_26_drive_0117_sync 0000000054 2011_09_26 2011_09_26_drive_0117_sync 0000000056 2011_09_26 2011_09_26_drive_0117_sync 0000000090 2011_09_26 2011_09_26_drive_0117_sync 0000000092 2011_09_26 2011_09_26_drive_0117_sync 0000000094 2011_09_26 2011_09_26_drive_0117_sync 0000000096 2011_09_26 2011_09_26_drive_0117_sync 0000000098 2011_09_26 2011_09_26_drive_0117_sync 0000000100 2011_09_26 2011_09_26_drive_0117_sync 0000000102 2011_09_26 2011_09_26_drive_0117_sync 0000000104 2011_09_26 2011_09_26_drive_0117_sync 0000000106 2011_09_26 2011_09_26_drive_0117_sync 0000000108 2011_09_26 2011_09_26_drive_0117_sync 0000000110 2011_09_26 2011_09_26_drive_0117_sync 0000000112 2011_09_26 2011_09_26_drive_0117_sync 0000000114 2011_09_26 2011_09_26_drive_0117_sync 0000000116 2011_09_26 2011_09_26_drive_0117_sync 0000000118 2011_09_26 2011_09_26_drive_0117_sync 0000000120 2011_09_26 2011_09_26_drive_0117_sync 0000000122 2011_09_26 2011_09_26_drive_0117_sync 0000000124 2011_09_26 2011_09_26_drive_0117_sync 0000000126 2011_09_26 2011_09_26_drive_0117_sync 0000000128 2011_09_26 2011_09_26_drive_0117_sync 0000000130 2011_09_26 2011_09_26_drive_0117_sync 0000000132 2011_09_26 2011_09_26_drive_0117_sync 0000000134 2011_09_26 2011_09_26_drive_0117_sync 0000000136 2011_09_26 2011_09_26_drive_0117_sync 0000000139 2011_09_26 2011_09_26_drive_0117_sync 0000000142 2011_09_26 2011_09_26_drive_0117_sync 0000000145 2011_09_26 2011_09_26_drive_0117_sync 0000000148 2011_09_26 2011_09_26_drive_0117_sync 0000000151 2011_09_26 2011_09_26_drive_0117_sync 0000000154 2011_09_26 2011_09_26_drive_0117_sync 0000000157 2011_09_26 2011_09_26_drive_0117_sync 0000000160 2011_09_26 2011_09_26_drive_0117_sync 0000000163 2011_09_26 2011_09_26_drive_0117_sync 0000000166 2011_09_26 2011_09_26_drive_0117_sync 0000000169 2011_09_26 2011_09_26_drive_0117_sync 0000000172 2011_09_26 2011_09_26_drive_0117_sync 0000000175 2011_09_26 2011_09_26_drive_0117_sync 0000000178 2011_09_26 2011_09_26_drive_0117_sync 0000000181 2011_09_26 2011_09_26_drive_0117_sync 0000000184 2011_09_26 2011_09_26_drive_0117_sync 0000000188 2011_09_26 2011_09_26_drive_0117_sync 0000000191 2011_09_26 2011_09_26_drive_0117_sync 0000000194 2011_09_26 2011_09_26_drive_0117_sync 0000000197 2011_09_26 2011_09_26_drive_0117_sync 0000000200 2011_09_26 2011_09_26_drive_0117_sync 0000000203 2011_09_26 2011_09_26_drive_0117_sync 0000000206 2011_09_26 2011_09_26_drive_0117_sync 0000000209 2011_09_26 2011_09_26_drive_0117_sync 0000000212 2011_09_26 2011_09_26_drive_0117_sync 0000000215 2011_09_26 2011_09_26_drive_0117_sync 0000000218 2011_09_26 2011_09_26_drive_0117_sync 0000000222 2011_09_26 2011_09_26_drive_0117_sync 0000000226 2011_09_26 2011_09_26_drive_0117_sync 0000000230 2011_09_26 2011_09_26_drive_0117_sync 0000000234 2011_09_26 2011_09_26_drive_0117_sync 0000000238 2011_09_26 2011_09_26_drive_0117_sync 0000000242 2011_09_26 2011_09_26_drive_0117_sync 0000000246 2011_09_26 2011_09_26_drive_0117_sync 0000000250 2011_09_26 2011_09_26_drive_0117_sync 0000000254 2011_09_26 2011_09_26_drive_0117_sync 0000000258 2011_09_26 2011_09_26_drive_0117_sync 0000000278 2011_09_26 2011_09_26_drive_0117_sync 0000000312 2011_09_26 2011_09_26_drive_0117_sync 0000000313 2011_09_26 2011_09_26_drive_0117_sync 0000000314 2011_09_26 2011_09_26_drive_0117_sync 0000000315 2011_09_26 2011_09_26_drive_0117_sync 0000000316 2011_09_26 2011_09_26_drive_0117_sync 0000000317 2011_09_26 2011_09_26_drive_0117_sync 0000000318 2011_09_26 2011_09_26_drive_0117_sync 0000000319 2011_09_26 2011_09_26_drive_0117_sync 0000000320 2011_09_26 2011_09_26_drive_0117_sync 0000000321 2011_09_26 2011_09_26_drive_0117_sync 0000000322 2011_09_26 2011_09_26_drive_0117_sync 0000000323 2011_09_26 2011_09_26_drive_0117_sync 0000000324 2011_09_26 2011_09_26_drive_0117_sync 0000000325 2011_09_26 2011_09_26_drive_0117_sync 0000000326 2011_09_26 2011_09_26_drive_0117_sync 0000000327 2011_09_26 2011_09_26_drive_0117_sync 0000000328 2011_09_26 2011_09_26_drive_0117_sync 0000000330 2011_09_26 2011_09_26_drive_0117_sync 0000000332 2011_09_26 2011_09_26_drive_0117_sync 0000000334 2011_09_26 2011_09_26_drive_0117_sync 0000000339 2011_09_26 2011_09_26_drive_0117_sync 0000000356 2011_09_26 2011_09_26_drive_0117_sync 0000000363 2011_09_26 2011_09_26_drive_0117_sync 0000000367 2011_09_26 2011_09_26_drive_0117_sync 0000000371 2011_09_26 2011_09_26_drive_0117_sync 0000000374 2011_09_26 2011_09_26_drive_0117_sync 0000000377 2011_09_26 2011_09_26_drive_0117_sync 0000000380 2011_09_26 2011_09_26_drive_0117_sync 0000000383 2011_09_26 2011_09_26_drive_0117_sync 0000000386 2011_09_26 2011_09_26_drive_0117_sync 0000000389 2011_09_26 2011_09_26_drive_0117_sync 0000000392 2011_09_26 2011_09_26_drive_0117_sync 0000000395 2011_09_26 2011_09_26_drive_0117_sync 0000000398 2011_09_26 2011_09_26_drive_0117_sync 0000000401 2011_09_26 2011_09_26_drive_0117_sync 0000000404 2011_09_26 2011_09_26_drive_0117_sync 0000000407 2011_09_26 2011_09_26_drive_0117_sync 0000000410 2011_09_26 2011_09_26_drive_0117_sync 0000000412 2011_09_26 2011_09_26_drive_0117_sync 0000000414 2011_09_26 2011_09_26_drive_0117_sync 0000000416 2011_09_26 2011_09_26_drive_0117_sync 0000000418 2011_09_26 2011_09_26_drive_0117_sync 0000000420 2011_09_26 2011_09_26_drive_0117_sync 0000000422 2011_09_26 2011_09_26_drive_0117_sync 0000000424 2011_09_26 2011_09_26_drive_0117_sync 0000000426 2011_09_26 2011_09_26_drive_0117_sync 0000000428 2011_09_26 2011_09_26_drive_0117_sync 0000000430 2011_09_26 2011_09_26_drive_0117_sync 0000000432 2011_09_26 2011_09_26_drive_0117_sync 0000000434 2011_09_26 2011_09_26_drive_0117_sync 0000000436 2011_09_26 2011_09_26_drive_0117_sync 0000000438 2011_09_26 2011_09_26_drive_0117_sync 0000000440 2011_09_26 2011_09_26_drive_0117_sync 0000000442 2011_09_26 2011_09_26_drive_0117_sync 0000000445 2011_09_26 2011_09_26_drive_0117_sync 0000000448 2011_09_26 2011_09_26_drive_0117_sync 0000000451 2011_09_26 2011_09_26_drive_0117_sync 0000000454 2011_09_26 2011_09_26_drive_0117_sync 0000000457 2011_09_26 2011_09_26_drive_0117_sync 0000000460 2011_09_26 2011_09_26_drive_0117_sync 0000000463 2011_09_26 2011_09_26_drive_0117_sync 0000000466 2011_09_26 2011_09_26_drive_0117_sync 0000000469 2011_09_26 2011_09_26_drive_0117_sync 0000000472 2011_09_26 2011_09_26_drive_0117_sync 0000000475 2011_09_26 2011_09_26_drive_0117_sync 0000000478 2011_09_26 2011_09_26_drive_0117_sync 0000000481 2011_09_26 2011_09_26_drive_0117_sync 0000000484 2011_09_26 2011_09_26_drive_0117_sync 0000000487 2011_09_26 2011_09_26_drive_0117_sync 0000000490 2011_09_26 2011_09_26_drive_0117_sync 0000000493 2011_09_26 2011_09_26_drive_0117_sync 0000000496 2011_09_26 2011_09_26_drive_0117_sync 0000000499 2011_09_26 2011_09_26_drive_0117_sync 0000000502 2011_09_26 2011_09_26_drive_0117_sync 0000000505 2011_09_26 2011_09_26_drive_0117_sync 0000000508 2011_09_26 2011_09_26_drive_0117_sync 0000000512 2011_09_26 2011_09_26_drive_0117_sync 0000000517 2011_09_26 2011_09_26_drive_0117_sync 0000000522 2011_09_26 2011_09_26_drive_0117_sync 0000000527 2011_09_26 2011_09_26_drive_0117_sync 0000000532 2011_09_26 2011_09_26_drive_0117_sync 0000000537 2011_09_26 2011_09_26_drive_0117_sync 0000000541 2011_09_26 2011_09_26_drive_0117_sync 0000000545 2011_09_26 2011_09_26_drive_0117_sync 0000000549 2011_09_26 2011_09_26_drive_0117_sync 0000000552 2011_09_26 2011_09_26_drive_0117_sync 0000000555 2011_09_26 2011_09_26_drive_0117_sync 0000000558 2011_09_26 2011_09_26_drive_0117_sync 0000000560 2011_09_26 2011_09_26_drive_0117_sync 0000000562 2011_09_26 2011_09_26_drive_0117_sync 0000000564 2011_09_26 2011_09_26_drive_0117_sync 0000000566 2011_09_26 2011_09_26_drive_0117_sync 0000000568 2011_09_26 2011_09_26_drive_0117_sync 0000000570 2011_09_26 2011_09_26_drive_0117_sync 0000000572 2011_09_26 2011_09_26_drive_0117_sync 0000000575 2011_09_26 2011_09_26_drive_0117_sync 0000000578 2011_09_26 2011_09_26_drive_0117_sync 0000000581 2011_09_26 2011_09_26_drive_0117_sync 0000000583 2011_09_26 2011_09_26_drive_0117_sync 0000000585 2011_09_26 2011_09_26_drive_0117_sync 0000000587 2011_09_26 2011_09_26_drive_0117_sync 0000000589 2011_09_26 2011_09_26_drive_0117_sync 0000000591 2011_09_26 2011_09_26_drive_0117_sync 0000000593 2011_09_26 2011_09_26_drive_0117_sync 0000000595 2011_09_26 2011_09_26_drive_0117_sync 0000000597 2011_09_26 2011_09_26_drive_0117_sync 0000000599 2011_09_26 2011_09_26_drive_0117_sync 0000000603 2011_09_26 2011_09_26_drive_0117_sync 0000000605 2011_09_26 2011_09_26_drive_0117_sync 0000000607 2011_09_26 2011_09_26_drive_0117_sync 0000000609 2011_09_26 2011_09_26_drive_0117_sync 0000000611 2011_09_26 2011_09_26_drive_0117_sync 0000000613 2011_09_26 2011_09_26_drive_0117_sync 0000000615 2011_09_26 2011_09_26_drive_0117_sync 0000000617 2011_09_26 2011_09_26_drive_0117_sync 0000000619 2011_09_26 2011_09_26_drive_0117_sync 0000000621 2011_09_26 2011_09_26_drive_0117_sync 0000000623 2011_09_26 2011_09_26_drive_0117_sync 0000000625 2011_09_26 2011_09_26_drive_0117_sync 0000000627 2011_09_26 2011_09_26_drive_0117_sync 0000000629 2011_09_26 2011_09_26_drive_0117_sync 0000000631 2011_09_26 2011_09_26_drive_0117_sync 0000000633 2011_09_26 2011_09_26_drive_0117_sync 0000000635 2011_09_26 2011_09_26_drive_0117_sync 0000000638 2011_09_26 2011_09_26_drive_0117_sync 0000000641 2011_09_26 2011_09_26_drive_0117_sync 0000000644 2011_09_26 2011_09_26_drive_0117_sync 0000000647 2011_09_26 2011_09_26_drive_0117_sync 0000000650 2011_09_26 2011_09_26_drive_0117_sync 0000000653 2011_09_26 2011_09_26_drive_0117_sync 0000000656 2011_09_26 2011_09_26_drive_0117_sync 0000000659 2011_09_26 2011_09_26_drive_0093_sync 0000000002 2011_09_26 2011_09_26_drive_0093_sync 0000000004 2011_09_26 2011_09_26_drive_0093_sync 0000000006 2011_09_26 2011_09_26_drive_0093_sync 0000000008 2011_09_26 2011_09_26_drive_0093_sync 0000000010 2011_09_26 2011_09_26_drive_0093_sync 0000000012 2011_09_26 2011_09_26_drive_0093_sync 0000000014 2011_09_26 2011_09_26_drive_0093_sync 0000000016 2011_09_26 2011_09_26_drive_0093_sync 0000000018 2011_09_26 2011_09_26_drive_0093_sync 0000000020 2011_09_26 2011_09_26_drive_0093_sync 0000000022 2011_09_26 2011_09_26_drive_0093_sync 0000000024 2011_09_26 2011_09_26_drive_0093_sync 0000000026 2011_09_26 2011_09_26_drive_0093_sync 0000000028 2011_09_26 2011_09_26_drive_0093_sync 0000000030 2011_09_26 2011_09_26_drive_0093_sync 0000000032 2011_09_26 2011_09_26_drive_0093_sync 0000000034 2011_09_26 2011_09_26_drive_0093_sync 0000000036 2011_09_26 2011_09_26_drive_0093_sync 0000000038 2011_09_26 2011_09_26_drive_0093_sync 0000000040 2011_09_26 2011_09_26_drive_0093_sync 0000000042 2011_09_26 2011_09_26_drive_0093_sync 0000000044 2011_09_26 2011_09_26_drive_0093_sync 0000000046 2011_09_26 2011_09_26_drive_0093_sync 0000000048 2011_09_26 2011_09_26_drive_0093_sync 0000000050 2011_09_26 2011_09_26_drive_0093_sync 0000000052 2011_09_26 2011_09_26_drive_0093_sync 0000000054 2011_09_26 2011_09_26_drive_0093_sync 0000000056 2011_09_26 2011_09_26_drive_0093_sync 0000000058 2011_09_26 2011_09_26_drive_0093_sync 0000000060 2011_09_26 2011_09_26_drive_0093_sync 0000000062 2011_09_26 2011_09_26_drive_0093_sync 0000000064 2011_09_26 2011_09_26_drive_0093_sync 0000000066 2011_09_26 2011_09_26_drive_0093_sync 0000000068 2011_09_26 2011_09_26_drive_0093_sync 0000000070 2011_09_26 2011_09_26_drive_0093_sync 0000000072 2011_09_26 2011_09_26_drive_0093_sync 0000000074 2011_09_26 2011_09_26_drive_0093_sync 0000000076 2011_09_26 2011_09_26_drive_0093_sync 0000000078 2011_09_26 2011_09_26_drive_0093_sync 0000000080 2011_09_26 2011_09_26_drive_0093_sync 0000000082 2011_09_26 2011_09_26_drive_0093_sync 0000000084 2011_09_26 2011_09_26_drive_0093_sync 0000000086 2011_09_26 2011_09_26_drive_0093_sync 0000000088 2011_09_26 2011_09_26_drive_0093_sync 0000000090 2011_09_26 2011_09_26_drive_0093_sync 0000000092 2011_09_26 2011_09_26_drive_0093_sync 0000000094 2011_09_26 2011_09_26_drive_0093_sync 0000000096 2011_09_26 2011_09_26_drive_0093_sync 0000000098 2011_09_26 2011_09_26_drive_0093_sync 0000000100 2011_09_26 2011_09_26_drive_0093_sync 0000000102 2011_09_26 2011_09_26_drive_0093_sync 0000000104 2011_09_26 2011_09_26_drive_0093_sync 0000000106 2011_09_26 2011_09_26_drive_0093_sync 0000000108 2011_09_26 2011_09_26_drive_0093_sync 0000000110 2011_09_26 2011_09_26_drive_0093_sync 0000000112 2011_09_26 2011_09_26_drive_0093_sync 0000000114 2011_09_26 2011_09_26_drive_0093_sync 0000000116 2011_09_26 2011_09_26_drive_0093_sync 0000000118 2011_09_26 2011_09_26_drive_0093_sync 0000000120 2011_09_26 2011_09_26_drive_0093_sync 0000000122 2011_09_26 2011_09_26_drive_0093_sync 0000000124 2011_09_26 2011_09_26_drive_0093_sync 0000000126 2011_09_26 2011_09_26_drive_0093_sync 0000000128 2011_09_26 2011_09_26_drive_0093_sync 0000000162 2011_09_26 2011_09_26_drive_0093_sync 0000000168 2011_09_26 2011_09_26_drive_0093_sync 0000000171 2011_09_26 2011_09_26_drive_0093_sync 0000000174 2011_09_26 2011_09_26_drive_0093_sync 0000000177 2011_09_26 2011_09_26_drive_0093_sync 0000000179 2011_09_26 2011_09_26_drive_0093_sync 0000000181 2011_09_26 2011_09_26_drive_0093_sync 0000000183 2011_09_26 2011_09_26_drive_0093_sync 0000000185 2011_09_26 2011_09_26_drive_0093_sync 0000000187 2011_09_26 2011_09_26_drive_0093_sync 0000000189 2011_09_26 2011_09_26_drive_0093_sync 0000000191 2011_09_26 2011_09_26_drive_0093_sync 0000000193 2011_09_26 2011_09_26_drive_0093_sync 0000000195 2011_09_26 2011_09_26_drive_0093_sync 0000000197 2011_09_26 2011_09_26_drive_0093_sync 0000000199 2011_09_26 2011_09_26_drive_0093_sync 0000000201 2011_09_26 2011_09_26_drive_0093_sync 0000000203 2011_09_26 2011_09_26_drive_0093_sync 0000000205 2011_09_26 2011_09_26_drive_0093_sync 0000000207 2011_09_26 2011_09_26_drive_0093_sync 0000000209 2011_09_26 2011_09_26_drive_0093_sync 0000000211 2011_09_26 2011_09_26_drive_0093_sync 0000000213 2011_09_26 2011_09_26_drive_0093_sync 0000000215 2011_09_26 2011_09_26_drive_0093_sync 0000000217 2011_09_26 2011_09_26_drive_0093_sync 0000000219 2011_09_26 2011_09_26_drive_0093_sync 0000000221 2011_09_26 2011_09_26_drive_0093_sync 0000000223 2011_09_26 2011_09_26_drive_0093_sync 0000000225 2011_09_26 2011_09_26_drive_0093_sync 0000000227 2011_09_26 2011_09_26_drive_0093_sync 0000000229 2011_09_26 2011_09_26_drive_0093_sync 0000000231 2011_09_26 2011_09_26_drive_0093_sync 0000000233 2011_09_26 2011_09_26_drive_0093_sync 0000000235 2011_09_26 2011_09_26_drive_0093_sync 0000000238 2011_09_26 2011_09_26_drive_0093_sync 0000000241 2011_09_26 2011_09_26_drive_0093_sync 0000000244 2011_09_26 2011_09_26_drive_0093_sync 0000000247 2011_09_26 2011_09_26_drive_0093_sync 0000000250 2011_09_26 2011_09_26_drive_0093_sync 0000000253 2011_09_26 2011_09_26_drive_0093_sync 0000000256 2011_09_26 2011_09_26_drive_0093_sync 0000000258 2011_09_26 2011_09_26_drive_0093_sync 0000000260 2011_09_26 2011_09_26_drive_0093_sync 0000000262 2011_09_26 2011_09_26_drive_0093_sync 0000000264 2011_09_26 2011_09_26_drive_0093_sync 0000000266 2011_09_26 2011_09_26_drive_0093_sync 0000000268 2011_09_26 2011_09_26_drive_0093_sync 0000000270 2011_09_26 2011_09_26_drive_0093_sync 0000000272 2011_09_26 2011_09_26_drive_0093_sync 0000000274 2011_09_26 2011_09_26_drive_0093_sync 0000000276 2011_09_26 2011_09_26_drive_0093_sync 0000000277 2011_09_26 2011_09_26_drive_0093_sync 0000000278 2011_09_26 2011_09_26_drive_0093_sync 0000000280 2011_09_26 2011_09_26_drive_0093_sync 0000000282 2011_09_26 2011_09_26_drive_0093_sync 0000000284 2011_09_26 2011_09_26_drive_0093_sync 0000000286 2011_09_26 2011_09_26_drive_0093_sync 0000000288 2011_09_26 2011_09_26_drive_0093_sync 0000000290 2011_09_26 2011_09_26_drive_0093_sync 0000000292 2011_09_26 2011_09_26_drive_0093_sync 0000000294 2011_09_26 2011_09_26_drive_0093_sync 0000000296 2011_09_26 2011_09_26_drive_0093_sync 0000000298 2011_09_26 2011_09_26_drive_0093_sync 0000000300 2011_09_26 2011_09_26_drive_0093_sync 0000000302 2011_09_26 2011_09_26_drive_0093_sync 0000000304 2011_09_26 2011_09_26_drive_0093_sync 0000000306 2011_09_26 2011_09_26_drive_0093_sync 0000000308 2011_09_26 2011_09_26_drive_0093_sync 0000000310 2011_09_26 2011_09_26_drive_0093_sync 0000000312 2011_09_26 2011_09_26_drive_0093_sync 0000000314 2011_09_26 2011_09_26_drive_0093_sync 0000000316 2011_09_26 2011_09_26_drive_0093_sync 0000000318 2011_09_26 2011_09_26_drive_0093_sync 0000000320 2011_09_26 2011_09_26_drive_0093_sync 0000000322 2011_09_26 2011_09_26_drive_0093_sync 0000000324 2011_09_26 2011_09_26_drive_0093_sync 0000000326 2011_09_26 2011_09_26_drive_0093_sync 0000000328 2011_09_26 2011_09_26_drive_0093_sync 0000000330 2011_09_26 2011_09_26_drive_0093_sync 0000000332 2011_09_26 2011_09_26_drive_0093_sync 0000000334 2011_09_26 2011_09_26_drive_0093_sync 0000000336 2011_09_26 2011_09_26_drive_0093_sync 0000000338 2011_09_26 2011_09_26_drive_0093_sync 0000000340 2011_09_26 2011_09_26_drive_0093_sync 0000000342 2011_09_26 2011_09_26_drive_0093_sync 0000000344 2011_09_26 2011_09_26_drive_0093_sync 0000000346 2011_09_26 2011_09_26_drive_0093_sync 0000000348 2011_09_26 2011_09_26_drive_0093_sync 0000000350 2011_09_26 2011_09_26_drive_0093_sync 0000000352 2011_09_26 2011_09_26_drive_0093_sync 0000000354 2011_09_26 2011_09_26_drive_0093_sync 0000000356 2011_09_26 2011_09_26_drive_0093_sync 0000000358 2011_09_26 2011_09_26_drive_0093_sync 0000000360 2011_09_26 2011_09_26_drive_0093_sync 0000000362 2011_09_26 2011_09_26_drive_0093_sync 0000000364 2011_09_26 2011_09_26_drive_0093_sync 0000000366 2011_09_26 2011_09_26_drive_0093_sync 0000000368 2011_09_26 2011_09_26_drive_0093_sync 0000000370 2011_09_26 2011_09_26_drive_0093_sync 0000000372 2011_09_26 2011_09_26_drive_0093_sync 0000000374 2011_09_26 2011_09_26_drive_0093_sync 0000000376 2011_09_26 2011_09_26_drive_0093_sync 0000000378 2011_09_26 2011_09_26_drive_0093_sync 0000000380 2011_09_26 2011_09_26_drive_0093_sync 0000000382 2011_09_26 2011_09_26_drive_0093_sync 0000000384 2011_09_26 2011_09_26_drive_0093_sync 0000000386 2011_09_26 2011_09_26_drive_0093_sync 0000000388 2011_09_26 2011_09_26_drive_0093_sync 0000000390 2011_09_26 2011_09_26_drive_0093_sync 0000000392 2011_09_26 2011_09_26_drive_0093_sync 0000000394 2011_09_26 2011_09_26_drive_0093_sync 0000000396 2011_09_26 2011_09_26_drive_0093_sync 0000000398 2011_09_26 2011_09_26_drive_0093_sync 0000000400 2011_09_26 2011_09_26_drive_0093_sync 0000000402 2011_09_26 2011_09_26_drive_0093_sync 0000000404 2011_09_26 2011_09_26_drive_0093_sync 0000000406 2011_09_26 2011_09_26_drive_0093_sync 0000000408 2011_09_26 2011_09_26_drive_0093_sync 0000000410 2011_09_26 2011_09_26_drive_0093_sync 0000000412 2011_09_26 2011_09_26_drive_0093_sync 0000000414 2011_09_26 2011_09_26_drive_0093_sync 0000000416 2011_09_26 2011_09_26_drive_0093_sync 0000000418 2011_09_26 2011_09_26_drive_0093_sync 0000000420 2011_09_26 2011_09_26_drive_0093_sync 0000000422 2011_09_26 2011_09_26_drive_0093_sync 0000000424 2011_09_26 2011_09_26_drive_0093_sync 0000000426 2011_09_26 2011_09_26_drive_0093_sync 0000000428 2011_09_26 2011_09_26_drive_0093_sync 0000000430 2011_09_26 2011_09_26_drive_0093_sync 0000000432 2011_09_26 2011_09_26_drive_0036_sync 0000000002 2011_09_26 2011_09_26_drive_0036_sync 0000000004 2011_09_26 2011_09_26_drive_0036_sync 0000000006 2011_09_26 2011_09_26_drive_0036_sync 0000000008 2011_09_26 2011_09_26_drive_0036_sync 0000000010 2011_09_26 2011_09_26_drive_0036_sync 0000000012 2011_09_26 2011_09_26_drive_0036_sync 0000000014 2011_09_26 2011_09_26_drive_0036_sync 0000000016 2011_09_26 2011_09_26_drive_0036_sync 0000000018 2011_09_26 2011_09_26_drive_0036_sync 0000000020 2011_09_26 2011_09_26_drive_0036_sync 0000000022 2011_09_26 2011_09_26_drive_0036_sync 0000000024 2011_09_26 2011_09_26_drive_0036_sync 0000000026 2011_09_26 2011_09_26_drive_0036_sync 0000000028 2011_09_26 2011_09_26_drive_0036_sync 0000000030 2011_09_26 2011_09_26_drive_0036_sync 0000000032 2011_09_26 2011_09_26_drive_0036_sync 0000000034 2011_09_26 2011_09_26_drive_0036_sync 0000000036 2011_09_26 2011_09_26_drive_0036_sync 0000000038 2011_09_26 2011_09_26_drive_0036_sync 0000000040 2011_09_26 2011_09_26_drive_0036_sync 0000000042 2011_09_26 2011_09_26_drive_0036_sync 0000000044 2011_09_26 2011_09_26_drive_0036_sync 0000000046 2011_09_26 2011_09_26_drive_0036_sync 0000000048 2011_09_26 2011_09_26_drive_0036_sync 0000000050 2011_09_26 2011_09_26_drive_0036_sync 0000000052 2011_09_26 2011_09_26_drive_0036_sync 0000000054 2011_09_26 2011_09_26_drive_0036_sync 0000000056 2011_09_26 2011_09_26_drive_0036_sync 0000000058 2011_09_26 2011_09_26_drive_0036_sync 0000000060 2011_09_26 2011_09_26_drive_0036_sync 0000000062 2011_09_26 2011_09_26_drive_0036_sync 0000000064 2011_09_26 2011_09_26_drive_0036_sync 0000000066 2011_09_26 2011_09_26_drive_0036_sync 0000000068 2011_09_26 2011_09_26_drive_0036_sync 0000000070 2011_09_26 2011_09_26_drive_0036_sync 0000000072 2011_09_26 2011_09_26_drive_0036_sync 0000000074 2011_09_26 2011_09_26_drive_0036_sync 0000000076 2011_09_26 2011_09_26_drive_0036_sync 0000000078 2011_09_26 2011_09_26_drive_0036_sync 0000000080 2011_09_26 2011_09_26_drive_0036_sync 0000000082 2011_09_26 2011_09_26_drive_0036_sync 0000000084 2011_09_26 2011_09_26_drive_0036_sync 0000000086 2011_09_26 2011_09_26_drive_0036_sync 0000000088 2011_09_26 2011_09_26_drive_0036_sync 0000000090 2011_09_26 2011_09_26_drive_0036_sync 0000000092 2011_09_26 2011_09_26_drive_0036_sync 0000000094 2011_09_26 2011_09_26_drive_0036_sync 0000000096 2011_09_26 2011_09_26_drive_0036_sync 0000000098 2011_09_26 2011_09_26_drive_0036_sync 0000000100 2011_09_26 2011_09_26_drive_0036_sync 0000000102 2011_09_26 2011_09_26_drive_0036_sync 0000000104 2011_09_26 2011_09_26_drive_0036_sync 0000000106 2011_09_26 2011_09_26_drive_0036_sync 0000000108 2011_09_26 2011_09_26_drive_0036_sync 0000000110 2011_09_26 2011_09_26_drive_0036_sync 0000000112 2011_09_26 2011_09_26_drive_0036_sync 0000000114 2011_09_26 2011_09_26_drive_0036_sync 0000000116 2011_09_26 2011_09_26_drive_0036_sync 0000000118 2011_09_26 2011_09_26_drive_0036_sync 0000000120 2011_09_26 2011_09_26_drive_0036_sync 0000000122 2011_09_26 2011_09_26_drive_0036_sync 0000000124 2011_09_26 2011_09_26_drive_0036_sync 0000000126 2011_09_26 2011_09_26_drive_0036_sync 0000000129 2011_09_26 2011_09_26_drive_0036_sync 0000000131 2011_09_26 2011_09_26_drive_0036_sync 0000000133 2011_09_26 2011_09_26_drive_0036_sync 0000000135 2011_09_26 2011_09_26_drive_0036_sync 0000000137 2011_09_26 2011_09_26_drive_0036_sync 0000000139 2011_09_26 2011_09_26_drive_0036_sync 0000000141 2011_09_26 2011_09_26_drive_0036_sync 0000000143 2011_09_26 2011_09_26_drive_0036_sync 0000000145 2011_09_26 2011_09_26_drive_0036_sync 0000000149 2011_09_26 2011_09_26_drive_0036_sync 0000000151 2011_09_26 2011_09_26_drive_0036_sync 0000000153 2011_09_26 2011_09_26_drive_0036_sync 0000000155 2011_09_26 2011_09_26_drive_0036_sync 0000000157 2011_09_26 2011_09_26_drive_0036_sync 0000000159 2011_09_26 2011_09_26_drive_0036_sync 0000000161 2011_09_26 2011_09_26_drive_0036_sync 0000000163 2011_09_26 2011_09_26_drive_0036_sync 0000000165 2011_09_26 2011_09_26_drive_0036_sync 0000000167 2011_09_26 2011_09_26_drive_0036_sync 0000000169 2011_09_26 2011_09_26_drive_0036_sync 0000000171 2011_09_26 2011_09_26_drive_0036_sync 0000000173 2011_09_26 2011_09_26_drive_0036_sync 0000000175 2011_09_26 2011_09_26_drive_0036_sync 0000000177 2011_09_26 2011_09_26_drive_0036_sync 0000000179 2011_09_26 2011_09_26_drive_0036_sync 0000000181 2011_09_26 2011_09_26_drive_0036_sync 0000000183 2011_09_26 2011_09_26_drive_0036_sync 0000000185 2011_09_26 2011_09_26_drive_0036_sync 0000000187 2011_09_26 2011_09_26_drive_0036_sync 0000000189 2011_09_26 2011_09_26_drive_0036_sync 0000000191 2011_09_26 2011_09_26_drive_0036_sync 0000000193 2011_09_26 2011_09_26_drive_0036_sync 0000000195 2011_09_26 2011_09_26_drive_0036_sync 0000000197 2011_09_26 2011_09_26_drive_0036_sync 0000000199 2011_09_26 2011_09_26_drive_0036_sync 0000000201 2011_09_26 2011_09_26_drive_0036_sync 0000000203 2011_09_26 2011_09_26_drive_0036_sync 0000000205 2011_09_26 2011_09_26_drive_0036_sync 0000000207 2011_09_26 2011_09_26_drive_0036_sync 0000000209 2011_09_26 2011_09_26_drive_0036_sync 0000000211 2011_09_26 2011_09_26_drive_0036_sync 0000000213 2011_09_26 2011_09_26_drive_0036_sync 0000000215 2011_09_26 2011_09_26_drive_0036_sync 0000000217 2011_09_26 2011_09_26_drive_0036_sync 0000000219 2011_09_26 2011_09_26_drive_0036_sync 0000000221 2011_09_26 2011_09_26_drive_0036_sync 0000000223 2011_09_26 2011_09_26_drive_0036_sync 0000000225 2011_09_26 2011_09_26_drive_0036_sync 0000000227 2011_09_26 2011_09_26_drive_0036_sync 0000000229 2011_09_26 2011_09_26_drive_0036_sync 0000000231 2011_09_26 2011_09_26_drive_0036_sync 0000000233 2011_09_26 2011_09_26_drive_0036_sync 0000000235 2011_09_26 2011_09_26_drive_0036_sync 0000000237 2011_09_26 2011_09_26_drive_0036_sync 0000000239 2011_09_26 2011_09_26_drive_0036_sync 0000000241 2011_09_26 2011_09_26_drive_0036_sync 0000000243 2011_09_26 2011_09_26_drive_0036_sync 0000000245 2011_09_26 2011_09_26_drive_0036_sync 0000000247 2011_09_26 2011_09_26_drive_0036_sync 0000000249 2011_09_26 2011_09_26_drive_0036_sync 0000000251 2011_09_26 2011_09_26_drive_0036_sync 0000000253 2011_09_26 2011_09_26_drive_0036_sync 0000000255 2011_09_26 2011_09_26_drive_0036_sync 0000000257 2011_09_26 2011_09_26_drive_0036_sync 0000000259 2011_09_26 2011_09_26_drive_0036_sync 0000000261 2011_09_26 2011_09_26_drive_0036_sync 0000000263 2011_09_26 2011_09_26_drive_0036_sync 0000000379 2011_09_26 2011_09_26_drive_0036_sync 0000000380 2011_09_26 2011_09_26_drive_0036_sync 0000000381 2011_09_26 2011_09_26_drive_0036_sync 0000000382 2011_09_26 2011_09_26_drive_0036_sync 0000000383 2011_09_26 2011_09_26_drive_0036_sync 0000000384 2011_09_26 2011_09_26_drive_0036_sync 0000000385 2011_09_26 2011_09_26_drive_0036_sync 0000000386 2011_09_26 2011_09_26_drive_0036_sync 0000000387 2011_09_26 2011_09_26_drive_0036_sync 0000000388 2011_09_26 2011_09_26_drive_0036_sync 0000000389 2011_09_26 2011_09_26_drive_0036_sync 0000000390 2011_09_26 2011_09_26_drive_0036_sync 0000000391 2011_09_26 2011_09_26_drive_0036_sync 0000000392 2011_09_26 2011_09_26_drive_0036_sync 0000000393 2011_09_26 2011_09_26_drive_0036_sync 0000000394 2011_09_26 2011_09_26_drive_0036_sync 0000000395 2011_09_26 2011_09_26_drive_0036_sync 0000000396 2011_09_26 2011_09_26_drive_0036_sync 0000000397 2011_09_26 2011_09_26_drive_0036_sync 0000000398 2011_09_26 2011_09_26_drive_0036_sync 0000000399 2011_09_26 2011_09_26_drive_0036_sync 0000000400 2011_09_26 2011_09_26_drive_0036_sync 0000000401 2011_09_26 2011_09_26_drive_0036_sync 0000000402 2011_09_26 2011_09_26_drive_0036_sync 0000000403 2011_09_26 2011_09_26_drive_0036_sync 0000000404 2011_09_26 2011_09_26_drive_0036_sync 0000000453 2011_09_26 2011_09_26_drive_0036_sync 0000000454 2011_09_26 2011_09_26_drive_0036_sync 0000000455 2011_09_26 2011_09_26_drive_0036_sync 0000000456 2011_09_26 2011_09_26_drive_0036_sync 0000000457 2011_09_26 2011_09_26_drive_0036_sync 0000000458 2011_09_26 2011_09_26_drive_0036_sync 0000000459 2011_09_26 2011_09_26_drive_0036_sync 0000000460 2011_09_26 2011_09_26_drive_0036_sync 0000000461 2011_09_26 2011_09_26_drive_0036_sync 0000000462 2011_09_26 2011_09_26_drive_0036_sync 0000000463 2011_09_26 2011_09_26_drive_0036_sync 0000000464 2011_09_26 2011_09_26_drive_0036_sync 0000000465 2011_09_26 2011_09_26_drive_0036_sync 0000000466 2011_09_26 2011_09_26_drive_0036_sync 0000000467 2011_09_26 2011_09_26_drive_0036_sync 0000000468 2011_09_26 2011_09_26_drive_0036_sync 0000000613 2011_09_26 2011_09_26_drive_0036_sync 0000000615 2011_09_26 2011_09_26_drive_0036_sync 0000000617 2011_09_26 2011_09_26_drive_0036_sync 0000000619 2011_09_26 2011_09_26_drive_0036_sync 0000000621 2011_09_26 2011_09_26_drive_0036_sync 0000000623 2011_09_26 2011_09_26_drive_0036_sync 0000000625 2011_09_26 2011_09_26_drive_0036_sync 0000000627 2011_09_26 2011_09_26_drive_0036_sync 0000000628 2011_09_26 2011_09_26_drive_0036_sync 0000000629 2011_09_26 2011_09_26_drive_0036_sync 0000000630 2011_09_26 2011_09_26_drive_0036_sync 0000000632 2011_09_26 2011_09_26_drive_0036_sync 0000000633 2011_09_26 2011_09_26_drive_0036_sync 0000000634 2011_09_26 2011_09_26_drive_0036_sync 0000000635 2011_09_26 2011_09_26_drive_0036_sync 0000000636 2011_09_26 2011_09_26_drive_0036_sync 0000000637 2011_09_26 2011_09_26_drive_0036_sync 0000000638 2011_09_26 2011_09_26_drive_0036_sync 0000000639 2011_09_26 2011_09_26_drive_0036_sync 0000000640 2011_09_26 2011_09_26_drive_0036_sync 0000000641 2011_09_26 2011_09_26_drive_0036_sync 0000000642 2011_09_26 2011_09_26_drive_0036_sync 0000000643 2011_09_26 2011_09_26_drive_0036_sync 0000000644 2011_09_26 2011_09_26_drive_0036_sync 0000000645 2011_09_26 2011_09_26_drive_0036_sync 0000000646 2011_09_26 2011_09_26_drive_0036_sync 0000000647 2011_09_26 2011_09_26_drive_0036_sync 0000000648 2011_09_26 2011_09_26_drive_0036_sync 0000000649 2011_09_26 2011_09_26_drive_0036_sync 0000000650 2011_09_26 2011_09_26_drive_0036_sync 0000000651 2011_09_26 2011_09_26_drive_0036_sync 0000000652 2011_09_26 2011_09_26_drive_0036_sync 0000000653 2011_09_26 2011_09_26_drive_0036_sync 0000000654 2011_09_26 2011_09_26_drive_0036_sync 0000000655 2011_09_26 2011_09_26_drive_0036_sync 0000000656 2011_09_26 2011_09_26_drive_0036_sync 0000000657 2011_09_26 2011_09_26_drive_0036_sync 0000000658 2011_09_26 2011_09_26_drive_0036_sync 0000000659 2011_09_26 2011_09_26_drive_0036_sync 0000000660 2011_09_26 2011_09_26_drive_0036_sync 0000000661 2011_09_26 2011_09_26_drive_0036_sync 0000000662 2011_09_26 2011_09_26_drive_0036_sync 0000000663 2011_09_26 2011_09_26_drive_0036_sync 0000000664 2011_09_26 2011_09_26_drive_0036_sync 0000000665 2011_09_26 2011_09_26_drive_0036_sync 0000000666 2011_09_26 2011_09_26_drive_0036_sync 0000000667 2011_09_26 2011_09_26_drive_0036_sync 0000000668 2011_09_26 2011_09_26_drive_0036_sync 0000000669 2011_09_26 2011_09_26_drive_0036_sync 0000000671 2011_09_26 2011_09_26_drive_0036_sync 0000000673 2011_09_26 2011_09_26_drive_0036_sync 0000000675 2011_09_26 2011_09_26_drive_0036_sync 0000000677 2011_09_26 2011_09_26_drive_0036_sync 0000000679 2011_09_26 2011_09_26_drive_0036_sync 0000000681 2011_09_26 2011_09_26_drive_0036_sync 0000000683 2011_09_26 2011_09_26_drive_0036_sync 0000000685 2011_09_26 2011_09_26_drive_0036_sync 0000000687 2011_09_26 2011_09_26_drive_0036_sync 0000000689 2011_09_26 2011_09_26_drive_0036_sync 0000000691 2011_09_26 2011_09_26_drive_0036_sync 0000000693 2011_09_26 2011_09_26_drive_0036_sync 0000000695 2011_09_26 2011_09_26_drive_0036_sync 0000000697 2011_09_26 2011_09_26_drive_0036_sync 0000000699 2011_09_26 2011_09_26_drive_0036_sync 0000000703 2011_09_26 2011_09_26_drive_0036_sync 0000000705 2011_09_26 2011_09_26_drive_0036_sync 0000000707 2011_09_26 2011_09_26_drive_0036_sync 0000000709 2011_09_26 2011_09_26_drive_0035_sync 0000000002 2011_09_26 2011_09_26_drive_0035_sync 0000000004 2011_09_26 2011_09_26_drive_0035_sync 0000000006 2011_09_26 2011_09_26_drive_0035_sync 0000000008 2011_09_26 2011_09_26_drive_0035_sync 0000000010 2011_09_26 2011_09_26_drive_0035_sync 0000000012 2011_09_26 2011_09_26_drive_0035_sync 0000000014 2011_09_26 2011_09_26_drive_0035_sync 0000000016 2011_09_26 2011_09_26_drive_0035_sync 0000000018 2011_09_26 2011_09_26_drive_0035_sync 0000000020 2011_09_26 2011_09_26_drive_0035_sync 0000000022 2011_09_26 2011_09_26_drive_0035_sync 0000000024 2011_09_26 2011_09_26_drive_0035_sync 0000000026 2011_09_26 2011_09_26_drive_0035_sync 0000000028 2011_09_26 2011_09_26_drive_0035_sync 0000000030 2011_09_26 2011_09_26_drive_0035_sync 0000000032 2011_09_26 2011_09_26_drive_0035_sync 0000000034 2011_09_26 2011_09_26_drive_0035_sync 0000000036 2011_09_26 2011_09_26_drive_0035_sync 0000000040 2011_09_26 2011_09_26_drive_0035_sync 0000000042 2011_09_26 2011_09_26_drive_0035_sync 0000000044 2011_09_26 2011_09_26_drive_0035_sync 0000000046 2011_09_26 2011_09_26_drive_0035_sync 0000000048 2011_09_26 2011_09_26_drive_0035_sync 0000000050 2011_09_26 2011_09_26_drive_0035_sync 0000000052 2011_09_26 2011_09_26_drive_0035_sync 0000000054 2011_09_26 2011_09_26_drive_0035_sync 0000000056 2011_09_26 2011_09_26_drive_0035_sync 0000000058 2011_09_26 2011_09_26_drive_0035_sync 0000000060 2011_09_26 2011_09_26_drive_0035_sync 0000000062 2011_09_26 2011_09_26_drive_0035_sync 0000000065 2011_09_26 2011_09_26_drive_0035_sync 0000000068 2011_09_26 2011_09_26_drive_0035_sync 0000000071 2011_09_26 2011_09_26_drive_0035_sync 0000000075 2011_09_26 2011_09_26_drive_0035_sync 0000000079 2011_09_26 2011_09_26_drive_0035_sync 0000000083 2011_09_26 2011_09_26_drive_0035_sync 0000000087 2011_09_26 2011_09_26_drive_0035_sync 0000000090 2011_09_26 2011_09_26_drive_0035_sync 0000000093 2011_09_26 2011_09_26_drive_0035_sync 0000000096 2011_09_26 2011_09_26_drive_0035_sync 0000000098 2011_09_26 2011_09_26_drive_0035_sync 0000000100 2011_09_26 2011_09_26_drive_0035_sync 0000000102 2011_09_26 2011_09_26_drive_0035_sync 0000000104 2011_09_26 2011_09_26_drive_0035_sync 0000000106 2011_09_26 2011_09_26_drive_0035_sync 0000000108 2011_09_26 2011_09_26_drive_0035_sync 0000000109 2011_09_26 2011_09_26_drive_0035_sync 0000000111 2011_09_26 2011_09_26_drive_0035_sync 0000000113 2011_09_26 2011_09_26_drive_0035_sync 0000000115 2011_09_26 2011_09_26_drive_0035_sync 0000000117 2011_09_26 2011_09_26_drive_0035_sync 0000000119 2011_09_26 2011_09_26_drive_0035_sync 0000000121 2011_09_26 2011_09_26_drive_0035_sync 0000000123 2011_09_26 2011_09_26_drive_0035_sync 0000000125 2011_09_26 2011_09_26_drive_0035_sync 0000000127 2011_09_26 2011_09_26_drive_0035_sync 0000000129 2011_09_26 2011_09_26_drive_0095_sync 0000000002 2011_09_26 2011_09_26_drive_0095_sync 0000000004 2011_09_26 2011_09_26_drive_0095_sync 0000000006 2011_09_26 2011_09_26_drive_0095_sync 0000000008 2011_09_26 2011_09_26_drive_0095_sync 0000000010 2011_09_26 2011_09_26_drive_0095_sync 0000000012 2011_09_26 2011_09_26_drive_0095_sync 0000000014 2011_09_26 2011_09_26_drive_0095_sync 0000000016 2011_09_26 2011_09_26_drive_0095_sync 0000000018 2011_09_26 2011_09_26_drive_0095_sync 0000000020 2011_09_26 2011_09_26_drive_0095_sync 0000000022 2011_09_26 2011_09_26_drive_0095_sync 0000000023 2011_09_26 2011_09_26_drive_0095_sync 0000000024 2011_09_26 2011_09_26_drive_0095_sync 0000000026 2011_09_26 2011_09_26_drive_0095_sync 0000000028 2011_09_26 2011_09_26_drive_0095_sync 0000000030 2011_09_26 2011_09_26_drive_0095_sync 0000000032 2011_09_26 2011_09_26_drive_0095_sync 0000000034 2011_09_26 2011_09_26_drive_0095_sync 0000000036 2011_09_26 2011_09_26_drive_0095_sync 0000000038 2011_09_26 2011_09_26_drive_0095_sync 0000000040 2011_09_26 2011_09_26_drive_0095_sync 0000000042 2011_09_26 2011_09_26_drive_0095_sync 0000000044 2011_09_26 2011_09_26_drive_0095_sync 0000000046 2011_09_26 2011_09_26_drive_0095_sync 0000000048 2011_09_26 2011_09_26_drive_0095_sync 0000000050 2011_09_26 2011_09_26_drive_0095_sync 0000000052 2011_09_26 2011_09_26_drive_0095_sync 0000000053 2011_09_26 2011_09_26_drive_0095_sync 0000000055 2011_09_26 2011_09_26_drive_0095_sync 0000000057 2011_09_26 2011_09_26_drive_0095_sync 0000000059 2011_09_26 2011_09_26_drive_0095_sync 0000000061 2011_09_26 2011_09_26_drive_0095_sync 0000000063 2011_09_26 2011_09_26_drive_0095_sync 0000000065 2011_09_26 2011_09_26_drive_0095_sync 0000000067 2011_09_26 2011_09_26_drive_0095_sync 0000000069 2011_09_26 2011_09_26_drive_0095_sync 0000000071 2011_09_26 2011_09_26_drive_0095_sync 0000000073 2011_09_26 2011_09_26_drive_0095_sync 0000000075 2011_09_26 2011_09_26_drive_0095_sync 0000000077 2011_09_26 2011_09_26_drive_0095_sync 0000000079 2011_09_26 2011_09_26_drive_0095_sync 0000000081 2011_09_26 2011_09_26_drive_0095_sync 0000000083 2011_09_26 2011_09_26_drive_0095_sync 0000000085 2011_09_26 2011_09_26_drive_0095_sync 0000000086 2011_09_26 2011_09_26_drive_0095_sync 0000000087 2011_09_26 2011_09_26_drive_0095_sync 0000000088 2011_09_26 2011_09_26_drive_0095_sync 0000000089 2011_09_26 2011_09_26_drive_0095_sync 0000000090 2011_09_26 2011_09_26_drive_0095_sync 0000000091 2011_09_26 2011_09_26_drive_0095_sync 0000000092 2011_09_26 2011_09_26_drive_0095_sync 0000000093 2011_09_26 2011_09_26_drive_0095_sync 0000000094 2011_09_26 2011_09_26_drive_0095_sync 0000000095 2011_09_26 2011_09_26_drive_0095_sync 0000000096 2011_09_26 2011_09_26_drive_0095_sync 0000000097 2011_09_26 2011_09_26_drive_0095_sync 0000000098 2011_09_26 2011_09_26_drive_0095_sync 0000000099 2011_09_26 2011_09_26_drive_0095_sync 0000000100 2011_09_26 2011_09_26_drive_0095_sync 0000000101 2011_09_26 2011_09_26_drive_0095_sync 0000000102 2011_09_26 2011_09_26_drive_0095_sync 0000000103 2011_09_26 2011_09_26_drive_0095_sync 0000000104 2011_09_26 2011_09_26_drive_0095_sync 0000000105 2011_09_26 2011_09_26_drive_0095_sync 0000000106 2011_09_26 2011_09_26_drive_0095_sync 0000000107 2011_09_26 2011_09_26_drive_0095_sync 0000000108 2011_09_26 2011_09_26_drive_0095_sync 0000000109 2011_09_26 2011_09_26_drive_0095_sync 0000000110 2011_09_26 2011_09_26_drive_0095_sync 0000000111 2011_09_26 2011_09_26_drive_0095_sync 0000000112 2011_09_26 2011_09_26_drive_0095_sync 0000000113 2011_09_26 2011_09_26_drive_0095_sync 0000000114 2011_09_26 2011_09_26_drive_0095_sync 0000000115 2011_09_26 2011_09_26_drive_0095_sync 0000000116 2011_09_26 2011_09_26_drive_0095_sync 0000000117 2011_09_26 2011_09_26_drive_0095_sync 0000000118 2011_09_26 2011_09_26_drive_0095_sync 0000000119 2011_09_26 2011_09_26_drive_0095_sync 0000000120 2011_09_26 2011_09_26_drive_0095_sync 0000000121 2011_09_26 2011_09_26_drive_0095_sync 0000000122 2011_09_26 2011_09_26_drive_0095_sync 0000000123 2011_09_26 2011_09_26_drive_0095_sync 0000000124 2011_09_26 2011_09_26_drive_0095_sync 0000000125 2011_09_26 2011_09_26_drive_0095_sync 0000000126 2011_09_26 2011_09_26_drive_0095_sync 0000000127 2011_09_26 2011_09_26_drive_0095_sync 0000000128 2011_09_26 2011_09_26_drive_0095_sync 0000000129 2011_09_26 2011_09_26_drive_0095_sync 0000000130 2011_09_26 2011_09_26_drive_0095_sync 0000000131 2011_09_26 2011_09_26_drive_0095_sync 0000000132 2011_09_26 2011_09_26_drive_0095_sync 0000000133 2011_09_26 2011_09_26_drive_0095_sync 0000000134 2011_09_26 2011_09_26_drive_0095_sync 0000000135 2011_09_26 2011_09_26_drive_0095_sync 0000000136 2011_09_26 2011_09_26_drive_0095_sync 0000000137 2011_09_26 2011_09_26_drive_0095_sync 0000000138 2011_09_26 2011_09_26_drive_0095_sync 0000000139 2011_09_26 2011_09_26_drive_0095_sync 0000000140 2011_09_26 2011_09_26_drive_0095_sync 0000000142 2011_09_26 2011_09_26_drive_0095_sync 0000000144 2011_09_26 2011_09_26_drive_0095_sync 0000000146 2011_09_26 2011_09_26_drive_0095_sync 0000000148 2011_09_26 2011_09_26_drive_0095_sync 0000000150 2011_09_26 2011_09_26_drive_0095_sync 0000000152 2011_09_26 2011_09_26_drive_0095_sync 0000000154 2011_09_26 2011_09_26_drive_0095_sync 0000000156 2011_09_26 2011_09_26_drive_0095_sync 0000000158 2011_09_26 2011_09_26_drive_0095_sync 0000000160 2011_09_26 2011_09_26_drive_0095_sync 0000000162 2011_09_26 2011_09_26_drive_0095_sync 0000000164 2011_09_26 2011_09_26_drive_0095_sync 0000000166 2011_09_26 2011_09_26_drive_0095_sync 0000000168 2011_09_26 2011_09_26_drive_0095_sync 0000000170 2011_09_26 2011_09_26_drive_0095_sync 0000000172 2011_09_26 2011_09_26_drive_0095_sync 0000000174 2011_09_26 2011_09_26_drive_0095_sync 0000000176 2011_09_26 2011_09_26_drive_0095_sync 0000000178 2011_09_26 2011_09_26_drive_0095_sync 0000000180 2011_09_26 2011_09_26_drive_0095_sync 0000000182 2011_09_26 2011_09_26_drive_0095_sync 0000000184 2011_09_26 2011_09_26_drive_0095_sync 0000000186 2011_09_26 2011_09_26_drive_0095_sync 0000000188 2011_09_26 2011_09_26_drive_0095_sync 0000000190 2011_09_26 2011_09_26_drive_0095_sync 0000000192 2011_09_26 2011_09_26_drive_0095_sync 0000000194 2011_09_26 2011_09_26_drive_0095_sync 0000000196 2011_09_26 2011_09_26_drive_0095_sync 0000000198 2011_09_26 2011_09_26_drive_0095_sync 0000000200 2011_09_26 2011_09_26_drive_0095_sync 0000000202 2011_09_26 2011_09_26_drive_0095_sync 0000000204 2011_09_26 2011_09_26_drive_0095_sync 0000000206 2011_09_26 2011_09_26_drive_0095_sync 0000000208 2011_09_26 2011_09_26_drive_0095_sync 0000000210 2011_09_26 2011_09_26_drive_0095_sync 0000000212 2011_09_26 2011_09_26_drive_0095_sync 0000000214 2011_09_26 2011_09_26_drive_0095_sync 0000000216 2011_09_26 2011_09_26_drive_0095_sync 0000000218 2011_09_26 2011_09_26_drive_0095_sync 0000000220 2011_09_26 2011_09_26_drive_0095_sync 0000000222 2011_09_26 2011_09_26_drive_0095_sync 0000000224 2011_09_26 2011_09_26_drive_0095_sync 0000000226 2011_09_26 2011_09_26_drive_0095_sync 0000000228 2011_09_26 2011_09_26_drive_0095_sync 0000000244 2011_09_26 2011_09_26_drive_0095_sync 0000000245 2011_09_26 2011_09_26_drive_0095_sync 0000000247 2011_09_26 2011_09_26_drive_0095_sync 0000000248 2011_09_26 2011_09_26_drive_0095_sync 0000000249 2011_09_26 2011_09_26_drive_0095_sync 0000000250 2011_09_26 2011_09_26_drive_0095_sync 0000000251 2011_09_26 2011_09_26_drive_0095_sync 0000000252 2011_09_26 2011_09_26_drive_0095_sync 0000000253 2011_09_26 2011_09_26_drive_0095_sync 0000000254 2011_09_26 2011_09_26_drive_0095_sync 0000000255 2011_09_26 2011_09_26_drive_0095_sync 0000000256 2011_09_26 2011_09_26_drive_0095_sync 0000000257 2011_09_26 2011_09_26_drive_0095_sync 0000000258 2011_09_26 2011_09_26_drive_0095_sync 0000000259 2011_09_26 2011_09_26_drive_0095_sync 0000000260 2011_09_26 2011_09_26_drive_0095_sync 0000000261 2011_09_26 2011_09_26_drive_0095_sync 0000000262 2011_09_26 2011_09_26_drive_0095_sync 0000000263 2011_09_26 2011_09_26_drive_0095_sync 0000000264 2011_09_26 2011_09_26_drive_0095_sync 0000000265 2011_09_26 2011_09_26_drive_0095_sync 0000000266 2011_09_26 2011_09_26_drive_0095_sync 0000000267 2011_09_28 2011_09_28_drive_0038_sync 0000000003 2011_09_28 2011_09_28_drive_0038_sync 0000000006 2011_09_28 2011_09_28_drive_0038_sync 0000000009 2011_09_28 2011_09_28_drive_0038_sync 0000000012 2011_09_28 2011_09_28_drive_0038_sync 0000000015 2011_09_28 2011_09_28_drive_0038_sync 0000000018 2011_09_28 2011_09_28_drive_0038_sync 0000000021 2011_09_28 2011_09_28_drive_0038_sync 0000000024 2011_09_28 2011_09_28_drive_0038_sync 0000000027 2011_09_28 2011_09_28_drive_0038_sync 0000000031 2011_09_28 2011_09_28_drive_0038_sync 0000000034 2011_09_28 2011_09_28_drive_0038_sync 0000000038 2011_09_28 2011_09_28_drive_0038_sync 0000000042 2011_09_28 2011_09_28_drive_0038_sync 0000000046 2011_09_28 2011_09_28_drive_0038_sync 0000000050 2011_09_28 2011_09_28_drive_0038_sync 0000000055 2011_09_28 2011_09_28_drive_0038_sync 0000000060 2011_09_28 2011_09_28_drive_0038_sync 0000000064 2011_09_28 2011_09_28_drive_0038_sync 0000000069 2011_09_28 2011_09_28_drive_0038_sync 0000000075 2011_09_28 2011_09_28_drive_0038_sync 0000000081 2011_09_28 2011_09_28_drive_0038_sync 0000000087 2011_09_28 2011_09_28_drive_0038_sync 0000000092 2011_09_28 2011_09_28_drive_0038_sync 0000000097 2011_09_28 2011_09_28_drive_0038_sync 0000000103 2011_09_28 2011_09_28_drive_0038_sync 0000000108 2011_09_28 2011_09_28_drive_0001_sync 0000000014 2011_09_28 2011_09_28_drive_0001_sync 0000000019 2011_09_28 2011_09_28_drive_0001_sync 0000000022 2011_09_28 2011_09_28_drive_0001_sync 0000000025 2011_09_28 2011_09_28_drive_0001_sync 0000000029 2011_09_28 2011_09_28_drive_0001_sync 0000000033 2011_09_28 2011_09_28_drive_0001_sync 0000000036 2011_09_28 2011_09_28_drive_0001_sync 0000000039 2011_09_28 2011_09_28_drive_0001_sync 0000000041 2011_09_28 2011_09_28_drive_0001_sync 0000000043 2011_09_28 2011_09_28_drive_0001_sync 0000000045 2011_09_28 2011_09_28_drive_0001_sync 0000000047 2011_09_28 2011_09_28_drive_0001_sync 0000000049 2011_09_28 2011_09_28_drive_0001_sync 0000000051 2011_09_28 2011_09_28_drive_0001_sync 0000000052 2011_09_28 2011_09_28_drive_0001_sync 0000000053 2011_09_28 2011_09_28_drive_0001_sync 0000000054 2011_09_28 2011_09_28_drive_0001_sync 0000000055 2011_09_28 2011_09_28_drive_0001_sync 0000000056 2011_09_28 2011_09_28_drive_0001_sync 0000000057 2011_09_28 2011_09_28_drive_0001_sync 0000000058 2011_09_28 2011_09_28_drive_0001_sync 0000000059 2011_09_28 2011_09_28_drive_0001_sync 0000000060 2011_09_28 2011_09_28_drive_0001_sync 0000000061 2011_09_28 2011_09_28_drive_0001_sync 0000000062 2011_09_28 2011_09_28_drive_0001_sync 0000000063 2011_09_28 2011_09_28_drive_0001_sync 0000000064 2011_09_28 2011_09_28_drive_0001_sync 0000000065 2011_09_28 2011_09_28_drive_0001_sync 0000000066 2011_09_28 2011_09_28_drive_0001_sync 0000000067 2011_09_28 2011_09_28_drive_0001_sync 0000000068 2011_09_28 2011_09_28_drive_0001_sync 0000000069 2011_09_28 2011_09_28_drive_0001_sync 0000000070 2011_09_28 2011_09_28_drive_0001_sync 0000000071 2011_09_28 2011_09_28_drive_0001_sync 0000000073 2011_09_28 2011_09_28_drive_0001_sync 0000000075 2011_09_28 2011_09_28_drive_0001_sync 0000000077 2011_09_28 2011_09_28_drive_0001_sync 0000000078 2011_09_28 2011_09_28_drive_0001_sync 0000000079 2011_09_28 2011_09_28_drive_0001_sync 0000000080 2011_09_28 2011_09_28_drive_0001_sync 0000000081 2011_09_28 2011_09_28_drive_0001_sync 0000000082 2011_09_28 2011_09_28_drive_0001_sync 0000000083 2011_09_28 2011_09_28_drive_0001_sync 0000000084 2011_09_28 2011_09_28_drive_0001_sync 0000000085 2011_09_28 2011_09_28_drive_0001_sync 0000000086 2011_09_28 2011_09_28_drive_0001_sync 0000000087 2011_09_28 2011_09_28_drive_0001_sync 0000000088 2011_09_28 2011_09_28_drive_0001_sync 0000000089 2011_09_28 2011_09_28_drive_0001_sync 0000000090 2011_09_28 2011_09_28_drive_0001_sync 0000000091 2011_09_28 2011_09_28_drive_0001_sync 0000000092 2011_09_28 2011_09_28_drive_0001_sync 0000000093 2011_09_28 2011_09_28_drive_0001_sync 0000000094 2011_09_28 2011_09_28_drive_0001_sync 0000000095 2011_09_28 2011_09_28_drive_0001_sync 0000000096 2011_09_28 2011_09_28_drive_0001_sync 0000000097 2011_09_28 2011_09_28_drive_0001_sync 0000000098 2011_09_28 2011_09_28_drive_0001_sync 0000000099 2011_09_28 2011_09_28_drive_0001_sync 0000000100 2011_09_28 2011_09_28_drive_0001_sync 0000000101 2011_09_28 2011_09_28_drive_0001_sync 0000000102 2011_09_28 2011_09_28_drive_0001_sync 0000000103 2011_09_28 2011_09_28_drive_0001_sync 0000000104 2011_09_28 2011_09_28_drive_0001_sync 0000000105 2011_09_26 2011_09_26_drive_0096_sync 0000000014 2011_09_26 2011_09_26_drive_0096_sync 0000000015 2011_09_26 2011_09_26_drive_0096_sync 0000000016 2011_09_26 2011_09_26_drive_0096_sync 0000000017 2011_09_26 2011_09_26_drive_0096_sync 0000000018 2011_09_26 2011_09_26_drive_0096_sync 0000000019 2011_09_26 2011_09_26_drive_0096_sync 0000000020 2011_09_26 2011_09_26_drive_0096_sync 0000000021 2011_09_26 2011_09_26_drive_0096_sync 0000000022 2011_09_26 2011_09_26_drive_0096_sync 0000000023 2011_09_26 2011_09_26_drive_0096_sync 0000000024 2011_09_26 2011_09_26_drive_0096_sync 0000000025 2011_09_26 2011_09_26_drive_0096_sync 0000000098 2011_09_26 2011_09_26_drive_0096_sync 0000000100 2011_09_26 2011_09_26_drive_0096_sync 0000000102 2011_09_26 2011_09_26_drive_0096_sync 0000000104 2011_09_26 2011_09_26_drive_0096_sync 0000000106 2011_09_26 2011_09_26_drive_0096_sync 0000000108 2011_09_26 2011_09_26_drive_0096_sync 0000000109 2011_09_26 2011_09_26_drive_0096_sync 0000000110 2011_09_26 2011_09_26_drive_0096_sync 0000000111 2011_09_26 2011_09_26_drive_0096_sync 0000000112 2011_09_26 2011_09_26_drive_0096_sync 0000000113 2011_09_26 2011_09_26_drive_0096_sync 0000000114 2011_09_26 2011_09_26_drive_0096_sync 0000000115 2011_09_26 2011_09_26_drive_0096_sync 0000000116 2011_09_26 2011_09_26_drive_0096_sync 0000000117 2011_09_26 2011_09_26_drive_0096_sync 0000000118 2011_09_26 2011_09_26_drive_0096_sync 0000000119 2011_09_26 2011_09_26_drive_0096_sync 0000000120 2011_09_26 2011_09_26_drive_0096_sync 0000000121 2011_09_26 2011_09_26_drive_0096_sync 0000000122 2011_09_26 2011_09_26_drive_0096_sync 0000000123 2011_09_26 2011_09_26_drive_0096_sync 0000000124 2011_09_26 2011_09_26_drive_0096_sync 0000000125 2011_09_26 2011_09_26_drive_0096_sync 0000000126 2011_09_26 2011_09_26_drive_0096_sync 0000000127 2011_09_26 2011_09_26_drive_0096_sync 0000000128 2011_09_26 2011_09_26_drive_0096_sync 0000000129 2011_09_26 2011_09_26_drive_0096_sync 0000000130 2011_09_26 2011_09_26_drive_0096_sync 0000000131 2011_09_26 2011_09_26_drive_0096_sync 0000000132 2011_09_26 2011_09_26_drive_0096_sync 0000000133 2011_09_26 2011_09_26_drive_0096_sync 0000000134 2011_09_26 2011_09_26_drive_0096_sync 0000000135 2011_09_26 2011_09_26_drive_0096_sync 0000000136 2011_09_26 2011_09_26_drive_0096_sync 0000000137 2011_09_26 2011_09_26_drive_0096_sync 0000000138 2011_09_26 2011_09_26_drive_0096_sync 0000000139 2011_09_26 2011_09_26_drive_0096_sync 0000000140 2011_09_26 2011_09_26_drive_0096_sync 0000000141 2011_09_26 2011_09_26_drive_0096_sync 0000000142 2011_09_26 2011_09_26_drive_0096_sync 0000000143 2011_09_26 2011_09_26_drive_0096_sync 0000000144 2011_09_26 2011_09_26_drive_0096_sync 0000000145 2011_09_26 2011_09_26_drive_0096_sync 0000000146 2011_09_26 2011_09_26_drive_0096_sync 0000000147 2011_09_26 2011_09_26_drive_0096_sync 0000000148 2011_09_26 2011_09_26_drive_0096_sync 0000000149 2011_09_26 2011_09_26_drive_0096_sync 0000000150 2011_09_26 2011_09_26_drive_0096_sync 0000000151 2011_09_26 2011_09_26_drive_0096_sync 0000000152 2011_09_26 2011_09_26_drive_0096_sync 0000000153 2011_09_26 2011_09_26_drive_0096_sync 0000000154 2011_09_26 2011_09_26_drive_0096_sync 0000000155 2011_09_26 2011_09_26_drive_0096_sync 0000000156 2011_09_26 2011_09_26_drive_0096_sync 0000000157 2011_09_26 2011_09_26_drive_0096_sync 0000000158 2011_09_26 2011_09_26_drive_0096_sync 0000000159 2011_09_26 2011_09_26_drive_0096_sync 0000000160 2011_09_26 2011_09_26_drive_0096_sync 0000000161 2011_09_26 2011_09_26_drive_0096_sync 0000000163 2011_09_26 2011_09_26_drive_0096_sync 0000000164 2011_09_26 2011_09_26_drive_0096_sync 0000000165 2011_09_26 2011_09_26_drive_0096_sync 0000000166 2011_09_26 2011_09_26_drive_0096_sync 0000000167 2011_09_26 2011_09_26_drive_0096_sync 0000000168 2011_09_26 2011_09_26_drive_0096_sync 0000000170 2011_09_26 2011_09_26_drive_0096_sync 0000000171 2011_09_26 2011_09_26_drive_0096_sync 0000000172 2011_09_26 2011_09_26_drive_0096_sync 0000000173 2011_09_26 2011_09_26_drive_0096_sync 0000000174 2011_09_26 2011_09_26_drive_0096_sync 0000000175 2011_09_26 2011_09_26_drive_0096_sync 0000000176 2011_09_26 2011_09_26_drive_0096_sync 0000000177 2011_09_26 2011_09_26_drive_0096_sync 0000000178 2011_09_26 2011_09_26_drive_0096_sync 0000000179 2011_09_26 2011_09_26_drive_0096_sync 0000000180 2011_09_26 2011_09_26_drive_0096_sync 0000000181 2011_09_26 2011_09_26_drive_0096_sync 0000000182 2011_09_26 2011_09_26_drive_0096_sync 0000000183 2011_09_26 2011_09_26_drive_0096_sync 0000000184 2011_09_26 2011_09_26_drive_0096_sync 0000000185 2011_09_26 2011_09_26_drive_0096_sync 0000000186 2011_09_26 2011_09_26_drive_0096_sync 0000000187 2011_09_26 2011_09_26_drive_0096_sync 0000000188 2011_09_26 2011_09_26_drive_0096_sync 0000000189 2011_09_26 2011_09_26_drive_0096_sync 0000000190 2011_09_26 2011_09_26_drive_0096_sync 0000000191 2011_09_26 2011_09_26_drive_0096_sync 0000000192 2011_09_26 2011_09_26_drive_0096_sync 0000000193 2011_09_26 2011_09_26_drive_0096_sync 0000000194 2011_09_26 2011_09_26_drive_0096_sync 0000000195 2011_09_26 2011_09_26_drive_0096_sync 0000000196 2011_09_26 2011_09_26_drive_0096_sync 0000000197 2011_09_26 2011_09_26_drive_0096_sync 0000000198 2011_09_26 2011_09_26_drive_0096_sync 0000000199 2011_09_26 2011_09_26_drive_0096_sync 0000000200 2011_09_26 2011_09_26_drive_0096_sync 0000000201 2011_09_26 2011_09_26_drive_0096_sync 0000000202 2011_09_26 2011_09_26_drive_0096_sync 0000000203 2011_09_26 2011_09_26_drive_0096_sync 0000000204 2011_09_26 2011_09_26_drive_0096_sync 0000000205 2011_09_26 2011_09_26_drive_0096_sync 0000000206 2011_09_26 2011_09_26_drive_0096_sync 0000000207 2011_09_26 2011_09_26_drive_0096_sync 0000000208 2011_09_26 2011_09_26_drive_0096_sync 0000000209 2011_09_26 2011_09_26_drive_0096_sync 0000000210 2011_09_26 2011_09_26_drive_0096_sync 0000000211 2011_09_26 2011_09_26_drive_0096_sync 0000000212 2011_09_26 2011_09_26_drive_0096_sync 0000000213 2011_09_26 2011_09_26_drive_0096_sync 0000000214 2011_09_26 2011_09_26_drive_0096_sync 0000000215 2011_09_26 2011_09_26_drive_0096_sync 0000000216 2011_09_26 2011_09_26_drive_0096_sync 0000000217 2011_09_26 2011_09_26_drive_0096_sync 0000000218 2011_09_26 2011_09_26_drive_0096_sync 0000000219 2011_09_26 2011_09_26_drive_0096_sync 0000000221 2011_09_26 2011_09_26_drive_0096_sync 0000000222 2011_09_26 2011_09_26_drive_0096_sync 0000000223 2011_09_26 2011_09_26_drive_0096_sync 0000000224 2011_09_26 2011_09_26_drive_0096_sync 0000000225 2011_09_26 2011_09_26_drive_0096_sync 0000000227 2011_09_26 2011_09_26_drive_0096_sync 0000000228 2011_09_26 2011_09_26_drive_0096_sync 0000000229 2011_09_26 2011_09_26_drive_0096_sync 0000000230 2011_09_26 2011_09_26_drive_0096_sync 0000000260 2011_09_26 2011_09_26_drive_0096_sync 0000000261 2011_09_26 2011_09_26_drive_0096_sync 0000000262 2011_09_26 2011_09_26_drive_0096_sync 0000000263 2011_09_26 2011_09_26_drive_0096_sync 0000000264 2011_09_26 2011_09_26_drive_0096_sync 0000000265 2011_09_26 2011_09_26_drive_0096_sync 0000000266 2011_09_26 2011_09_26_drive_0096_sync 0000000267 2011_09_26 2011_09_26_drive_0096_sync 0000000268 2011_09_26 2011_09_26_drive_0096_sync 0000000269 2011_09_26 2011_09_26_drive_0096_sync 0000000270 2011_09_26 2011_09_26_drive_0096_sync 0000000271 2011_09_26 2011_09_26_drive_0096_sync 0000000272 2011_09_26 2011_09_26_drive_0096_sync 0000000273 2011_09_26 2011_09_26_drive_0096_sync 0000000274 2011_09_26 2011_09_26_drive_0096_sync 0000000275 2011_09_26 2011_09_26_drive_0096_sync 0000000276 2011_09_26 2011_09_26_drive_0096_sync 0000000277 2011_09_26 2011_09_26_drive_0096_sync 0000000278 2011_09_26 2011_09_26_drive_0096_sync 0000000279 2011_09_26 2011_09_26_drive_0096_sync 0000000280 2011_09_26 2011_09_26_drive_0096_sync 0000000281 2011_09_26 2011_09_26_drive_0096_sync 0000000282 2011_09_26 2011_09_26_drive_0096_sync 0000000283 2011_09_26 2011_09_26_drive_0096_sync 0000000284 2011_09_26 2011_09_26_drive_0096_sync 0000000285 2011_09_26 2011_09_26_drive_0096_sync 0000000286 2011_09_26 2011_09_26_drive_0096_sync 0000000287 2011_09_26 2011_09_26_drive_0096_sync 0000000288 2011_09_26 2011_09_26_drive_0096_sync 0000000289 2011_09_26 2011_09_26_drive_0096_sync 0000000290 2011_09_26 2011_09_26_drive_0096_sync 0000000291 2011_09_26 2011_09_26_drive_0096_sync 0000000292 2011_09_26 2011_09_26_drive_0096_sync 0000000293 2011_09_26 2011_09_26_drive_0096_sync 0000000294 2011_09_26 2011_09_26_drive_0096_sync 0000000295 2011_09_26 2011_09_26_drive_0096_sync 0000000296 2011_09_26 2011_09_26_drive_0096_sync 0000000297 2011_09_26 2011_09_26_drive_0096_sync 0000000298 2011_09_26 2011_09_26_drive_0096_sync 0000000299 2011_09_26 2011_09_26_drive_0096_sync 0000000300 2011_09_26 2011_09_26_drive_0096_sync 0000000301 2011_09_26 2011_09_26_drive_0096_sync 0000000302 2011_09_26 2011_09_26_drive_0096_sync 0000000303 2011_09_26 2011_09_26_drive_0096_sync 0000000304 2011_09_26 2011_09_26_drive_0096_sync 0000000305 2011_09_26 2011_09_26_drive_0096_sync 0000000306 2011_09_26 2011_09_26_drive_0096_sync 0000000307 2011_09_26 2011_09_26_drive_0096_sync 0000000308 2011_09_26 2011_09_26_drive_0096_sync 0000000309 2011_09_26 2011_09_26_drive_0096_sync 0000000310 2011_09_26 2011_09_26_drive_0096_sync 0000000311 2011_09_26 2011_09_26_drive_0096_sync 0000000312 2011_09_26 2011_09_26_drive_0096_sync 0000000314 2011_09_26 2011_09_26_drive_0096_sync 0000000315 2011_09_26 2011_09_26_drive_0096_sync 0000000316 2011_09_26 2011_09_26_drive_0096_sync 0000000317 2011_09_26 2011_09_26_drive_0096_sync 0000000318 2011_09_26 2011_09_26_drive_0096_sync 0000000319 2011_09_26 2011_09_26_drive_0096_sync 0000000320 2011_09_26 2011_09_26_drive_0096_sync 0000000321 2011_09_26 2011_09_26_drive_0096_sync 0000000322 2011_09_26 2011_09_26_drive_0096_sync 0000000326 2011_09_26 2011_09_26_drive_0096_sync 0000000327 2011_09_26 2011_09_26_drive_0096_sync 0000000345 2011_09_26 2011_09_26_drive_0096_sync 0000000346 2011_09_26 2011_09_26_drive_0096_sync 0000000347 2011_09_26 2011_09_26_drive_0096_sync 0000000348 2011_09_26 2011_09_26_drive_0096_sync 0000000349 2011_09_26 2011_09_26_drive_0096_sync 0000000350 2011_09_26 2011_09_26_drive_0096_sync 0000000351 2011_09_26 2011_09_26_drive_0096_sync 0000000352 2011_09_26 2011_09_26_drive_0096_sync 0000000353 2011_09_26 2011_09_26_drive_0096_sync 0000000354 2011_09_26 2011_09_26_drive_0096_sync 0000000355 2011_09_26 2011_09_26_drive_0096_sync 0000000356 2011_09_26 2011_09_26_drive_0096_sync 0000000358 2011_09_26 2011_09_26_drive_0096_sync 0000000359 2011_09_26 2011_09_26_drive_0096_sync 0000000362 2011_09_26 2011_09_26_drive_0096_sync 0000000364 2011_09_26 2011_09_26_drive_0096_sync 0000000366 2011_09_26 2011_09_26_drive_0096_sync 0000000367 2011_09_26 2011_09_26_drive_0096_sync 0000000372 2011_09_26 2011_09_26_drive_0096_sync 0000000375 2011_09_26 2011_09_26_drive_0096_sync 0000000376 2011_09_26 2011_09_26_drive_0096_sync 0000000377 2011_09_26 2011_09_26_drive_0096_sync 0000000378 2011_09_26 2011_09_26_drive_0096_sync 0000000379 2011_09_26 2011_09_26_drive_0096_sync 0000000380 2011_09_26 2011_09_26_drive_0096_sync 0000000381 2011_09_26 2011_09_26_drive_0096_sync 0000000382 2011_09_26 2011_09_26_drive_0096_sync 0000000383 2011_09_26 2011_09_26_drive_0096_sync 0000000384 2011_09_26 2011_09_26_drive_0096_sync 0000000385 2011_09_26 2011_09_26_drive_0096_sync 0000000386 2011_09_26 2011_09_26_drive_0096_sync 0000000387 2011_09_26 2011_09_26_drive_0096_sync 0000000388 2011_09_26 2011_09_26_drive_0096_sync 0000000390 2011_09_26 2011_09_26_drive_0096_sync 0000000392 2011_09_26 2011_09_26_drive_0096_sync 0000000394 2011_09_26 2011_09_26_drive_0096_sync 0000000396 2011_09_26 2011_09_26_drive_0096_sync 0000000398 2011_09_26 2011_09_26_drive_0096_sync 0000000400 2011_09_26 2011_09_26_drive_0096_sync 0000000417 2011_09_26 2011_09_26_drive_0096_sync 0000000420 2011_09_26 2011_09_26_drive_0096_sync 0000000423 2011_09_26 2011_09_26_drive_0096_sync 0000000426 2011_09_28 2011_09_28_drive_0037_sync 0000000029 2011_09_28 2011_09_28_drive_0037_sync 0000000035 2011_09_28 2011_09_28_drive_0037_sync 0000000046 2011_09_28 2011_09_28_drive_0037_sync 0000000048 2011_09_28 2011_09_28_drive_0037_sync 0000000050 2011_09_28 2011_09_28_drive_0037_sync 0000000052 2011_09_28 2011_09_28_drive_0037_sync 0000000054 2011_09_28 2011_09_28_drive_0037_sync 0000000056 2011_09_28 2011_09_28_drive_0037_sync 0000000058 2011_09_28 2011_09_28_drive_0037_sync 0000000060 2011_09_28 2011_09_28_drive_0037_sync 0000000062 2011_09_28 2011_09_28_drive_0037_sync 0000000064 2011_09_28 2011_09_28_drive_0037_sync 0000000068 2011_09_28 2011_09_28_drive_0037_sync 0000000070 2011_09_28 2011_09_28_drive_0037_sync 0000000072 2011_09_28 2011_09_28_drive_0037_sync 0000000074 2011_09_28 2011_09_28_drive_0037_sync 0000000076 2011_09_28 2011_09_28_drive_0037_sync 0000000078 2011_09_28 2011_09_28_drive_0037_sync 0000000080 2011_09_28 2011_09_28_drive_0037_sync 0000000083 2011_09_28 2011_09_28_drive_0037_sync 0000000086 2011_09_26 2011_09_26_drive_0022_sync 0000000002 2011_09_26 2011_09_26_drive_0022_sync 0000000004 2011_09_26 2011_09_26_drive_0022_sync 0000000036 2011_09_26 2011_09_26_drive_0022_sync 0000000037 2011_09_26 2011_09_26_drive_0022_sync 0000000040 2011_09_26 2011_09_26_drive_0022_sync 0000000041 2011_09_26 2011_09_26_drive_0022_sync 0000000042 2011_09_26 2011_09_26_drive_0022_sync 0000000044 2011_09_26 2011_09_26_drive_0022_sync 0000000046 2011_09_26 2011_09_26_drive_0022_sync 0000000048 2011_09_26 2011_09_26_drive_0022_sync 0000000050 2011_09_26 2011_09_26_drive_0022_sync 0000000051 2011_09_26 2011_09_26_drive_0022_sync 0000000053 2011_09_26 2011_09_26_drive_0022_sync 0000000055 2011_09_26 2011_09_26_drive_0022_sync 0000000057 2011_09_26 2011_09_26_drive_0022_sync 0000000059 2011_09_26 2011_09_26_drive_0022_sync 0000000061 2011_09_26 2011_09_26_drive_0022_sync 0000000063 2011_09_26 2011_09_26_drive_0022_sync 0000000065 2011_09_26 2011_09_26_drive_0022_sync 0000000067 2011_09_26 2011_09_26_drive_0022_sync 0000000069 2011_09_26 2011_09_26_drive_0022_sync 0000000071 2011_09_26 2011_09_26_drive_0022_sync 0000000073 2011_09_26 2011_09_26_drive_0022_sync 0000000075 2011_09_26 2011_09_26_drive_0022_sync 0000000077 2011_09_26 2011_09_26_drive_0022_sync 0000000079 2011_09_26 2011_09_26_drive_0022_sync 0000000081 2011_09_26 2011_09_26_drive_0022_sync 0000000083 2011_09_26 2011_09_26_drive_0022_sync 0000000085 2011_09_26 2011_09_26_drive_0022_sync 0000000087 2011_09_26 2011_09_26_drive_0022_sync 0000000089 2011_09_26 2011_09_26_drive_0022_sync 0000000091 2011_09_26 2011_09_26_drive_0022_sync 0000000093 2011_09_26 2011_09_26_drive_0022_sync 0000000095 2011_09_26 2011_09_26_drive_0022_sync 0000000097 2011_09_26 2011_09_26_drive_0022_sync 0000000099 2011_09_26 2011_09_26_drive_0022_sync 0000000101 2011_09_26 2011_09_26_drive_0022_sync 0000000103 2011_09_26 2011_09_26_drive_0022_sync 0000000105 2011_09_26 2011_09_26_drive_0022_sync 0000000107 2011_09_26 2011_09_26_drive_0022_sync 0000000109 2011_09_26 2011_09_26_drive_0022_sync 0000000111 2011_09_26 2011_09_26_drive_0022_sync 0000000113 2011_09_26 2011_09_26_drive_0022_sync 0000000115 2011_09_26 2011_09_26_drive_0022_sync 0000000117 2011_09_26 2011_09_26_drive_0022_sync 0000000119 2011_09_26 2011_09_26_drive_0022_sync 0000000121 2011_09_26 2011_09_26_drive_0022_sync 0000000123 2011_09_26 2011_09_26_drive_0022_sync 0000000125 2011_09_26 2011_09_26_drive_0022_sync 0000000127 2011_09_26 2011_09_26_drive_0022_sync 0000000129 2011_09_26 2011_09_26_drive_0022_sync 0000000131 2011_09_26 2011_09_26_drive_0022_sync 0000000133 2011_09_26 2011_09_26_drive_0022_sync 0000000135 2011_09_26 2011_09_26_drive_0022_sync 0000000137 2011_09_26 2011_09_26_drive_0022_sync 0000000139 2011_09_26 2011_09_26_drive_0022_sync 0000000141 2011_09_26 2011_09_26_drive_0022_sync 0000000143 2011_09_26 2011_09_26_drive_0022_sync 0000000145 2011_09_26 2011_09_26_drive_0022_sync 0000000147 2011_09_26 2011_09_26_drive_0022_sync 0000000149 2011_09_26 2011_09_26_drive_0022_sync 0000000151 2011_09_26 2011_09_26_drive_0022_sync 0000000153 2011_09_26 2011_09_26_drive_0022_sync 0000000155 2011_09_26 2011_09_26_drive_0022_sync 0000000157 2011_09_26 2011_09_26_drive_0022_sync 0000000159 2011_09_26 2011_09_26_drive_0022_sync 0000000161 2011_09_26 2011_09_26_drive_0022_sync 0000000163 2011_09_26 2011_09_26_drive_0022_sync 0000000165 2011_09_26 2011_09_26_drive_0022_sync 0000000167 2011_09_26 2011_09_26_drive_0022_sync 0000000169 2011_09_26 2011_09_26_drive_0022_sync 0000000171 2011_09_26 2011_09_26_drive_0022_sync 0000000173 2011_09_26 2011_09_26_drive_0022_sync 0000000175 2011_09_26 2011_09_26_drive_0022_sync 0000000177 2011_09_26 2011_09_26_drive_0022_sync 0000000179 2011_09_26 2011_09_26_drive_0022_sync 0000000181 2011_09_26 2011_09_26_drive_0022_sync 0000000183 2011_09_26 2011_09_26_drive_0022_sync 0000000185 2011_09_26 2011_09_26_drive_0022_sync 0000000187 2011_09_26 2011_09_26_drive_0022_sync 0000000189 2011_09_26 2011_09_26_drive_0022_sync 0000000191 2011_09_26 2011_09_26_drive_0022_sync 0000000193 2011_09_26 2011_09_26_drive_0022_sync 0000000195 2011_09_26 2011_09_26_drive_0022_sync 0000000197 2011_09_26 2011_09_26_drive_0022_sync 0000000199 2011_09_26 2011_09_26_drive_0022_sync 0000000201 2011_09_26 2011_09_26_drive_0022_sync 0000000203 2011_09_26 2011_09_26_drive_0022_sync 0000000205 2011_09_26 2011_09_26_drive_0022_sync 0000000207 2011_09_26 2011_09_26_drive_0022_sync 0000000209 2011_09_26 2011_09_26_drive_0022_sync 0000000211 2011_09_26 2011_09_26_drive_0022_sync 0000000213 2011_09_26 2011_09_26_drive_0022_sync 0000000215 2011_09_26 2011_09_26_drive_0022_sync 0000000217 2011_09_26 2011_09_26_drive_0022_sync 0000000219 2011_09_26 2011_09_26_drive_0022_sync 0000000221 2011_09_26 2011_09_26_drive_0022_sync 0000000223 2011_09_26 2011_09_26_drive_0022_sync 0000000225 2011_09_26 2011_09_26_drive_0022_sync 0000000227 2011_09_26 2011_09_26_drive_0022_sync 0000000229 2011_09_26 2011_09_26_drive_0022_sync 0000000231 2011_09_26 2011_09_26_drive_0022_sync 0000000233 2011_09_26 2011_09_26_drive_0022_sync 0000000235 2011_09_26 2011_09_26_drive_0022_sync 0000000237 2011_09_26 2011_09_26_drive_0022_sync 0000000243 2011_09_26 2011_09_26_drive_0022_sync 0000000266 2011_09_26 2011_09_26_drive_0022_sync 0000000269 2011_09_26 2011_09_26_drive_0022_sync 0000000271 2011_09_26 2011_09_26_drive_0022_sync 0000000274 2011_09_26 2011_09_26_drive_0022_sync 0000000276 2011_09_26 2011_09_26_drive_0022_sync 0000000278 2011_09_26 2011_09_26_drive_0022_sync 0000000280 2011_09_26 2011_09_26_drive_0022_sync 0000000282 2011_09_26 2011_09_26_drive_0022_sync 0000000284 2011_09_26 2011_09_26_drive_0022_sync 0000000286 2011_09_26 2011_09_26_drive_0022_sync 0000000288 2011_09_26 2011_09_26_drive_0022_sync 0000000290 2011_09_26 2011_09_26_drive_0022_sync 0000000292 2011_09_26 2011_09_26_drive_0022_sync 0000000294 2011_09_26 2011_09_26_drive_0022_sync 0000000296 2011_09_26 2011_09_26_drive_0022_sync 0000000298 2011_09_26 2011_09_26_drive_0022_sync 0000000300 2011_09_26 2011_09_26_drive_0022_sync 0000000302 2011_09_26 2011_09_26_drive_0022_sync 0000000304 2011_09_26 2011_09_26_drive_0022_sync 0000000306 2011_09_26 2011_09_26_drive_0022_sync 0000000308 2011_09_26 2011_09_26_drive_0022_sync 0000000310 2011_09_26 2011_09_26_drive_0022_sync 0000000312 2011_09_26 2011_09_26_drive_0022_sync 0000000339 2011_09_26 2011_09_26_drive_0022_sync 0000000341 2011_09_26 2011_09_26_drive_0022_sync 0000000343 2011_09_26 2011_09_26_drive_0022_sync 0000000344 2011_09_26 2011_09_26_drive_0022_sync 0000000346 2011_09_26 2011_09_26_drive_0022_sync 0000000347 2011_09_26 2011_09_26_drive_0022_sync 0000000348 2011_09_26 2011_09_26_drive_0022_sync 0000000350 2011_09_26 2011_09_26_drive_0022_sync 0000000352 2011_09_26 2011_09_26_drive_0022_sync 0000000353 2011_09_26 2011_09_26_drive_0022_sync 0000000354 2011_09_26 2011_09_26_drive_0022_sync 0000000355 2011_09_26 2011_09_26_drive_0022_sync 0000000356 2011_09_26 2011_09_26_drive_0022_sync 0000000357 2011_09_26 2011_09_26_drive_0022_sync 0000000359 2011_09_26 2011_09_26_drive_0022_sync 0000000361 2011_09_26 2011_09_26_drive_0022_sync 0000000363 2011_09_26 2011_09_26_drive_0022_sync 0000000365 2011_09_26 2011_09_26_drive_0022_sync 0000000367 2011_09_26 2011_09_26_drive_0022_sync 0000000369 2011_09_26 2011_09_26_drive_0022_sync 0000000371 2011_09_26 2011_09_26_drive_0022_sync 0000000373 2011_09_26 2011_09_26_drive_0022_sync 0000000375 2011_09_26 2011_09_26_drive_0022_sync 0000000377 2011_09_26 2011_09_26_drive_0022_sync 0000000379 2011_09_26 2011_09_26_drive_0022_sync 0000000381 2011_09_26 2011_09_26_drive_0022_sync 0000000383 2011_09_26 2011_09_26_drive_0022_sync 0000000385 2011_09_26 2011_09_26_drive_0022_sync 0000000387 2011_09_26 2011_09_26_drive_0022_sync 0000000389 2011_09_26 2011_09_26_drive_0022_sync 0000000391 2011_09_26 2011_09_26_drive_0022_sync 0000000393 2011_09_26 2011_09_26_drive_0022_sync 0000000395 2011_09_26 2011_09_26_drive_0022_sync 0000000397 2011_09_26 2011_09_26_drive_0022_sync 0000000399 2011_09_26 2011_09_26_drive_0022_sync 0000000401 2011_09_26 2011_09_26_drive_0022_sync 0000000403 2011_09_26 2011_09_26_drive_0022_sync 0000000405 2011_09_26 2011_09_26_drive_0022_sync 0000000407 2011_09_26 2011_09_26_drive_0022_sync 0000000409 2011_09_26 2011_09_26_drive_0022_sync 0000000411 2011_09_26 2011_09_26_drive_0022_sync 0000000413 2011_09_26 2011_09_26_drive_0022_sync 0000000415 2011_09_26 2011_09_26_drive_0022_sync 0000000417 2011_09_26 2011_09_26_drive_0022_sync 0000000419 2011_09_26 2011_09_26_drive_0022_sync 0000000421 2011_09_26 2011_09_26_drive_0022_sync 0000000423 2011_09_26 2011_09_26_drive_0022_sync 0000000425 2011_09_26 2011_09_26_drive_0022_sync 0000000427 2011_09_26 2011_09_26_drive_0022_sync 0000000429 2011_09_26 2011_09_26_drive_0022_sync 0000000431 2011_09_26 2011_09_26_drive_0022_sync 0000000433 2011_09_26 2011_09_26_drive_0022_sync 0000000435 2011_09_26 2011_09_26_drive_0022_sync 0000000437 2011_09_26 2011_09_26_drive_0022_sync 0000000439 2011_09_26 2011_09_26_drive_0022_sync 0000000441 2011_09_26 2011_09_26_drive_0022_sync 0000000443 2011_09_26 2011_09_26_drive_0022_sync 0000000445 2011_09_26 2011_09_26_drive_0022_sync 0000000447 2011_09_26 2011_09_26_drive_0022_sync 0000000449 2011_09_26 2011_09_26_drive_0022_sync 0000000451 2011_09_26 2011_09_26_drive_0022_sync 0000000453 2011_09_26 2011_09_26_drive_0022_sync 0000000455 2011_09_26 2011_09_26_drive_0022_sync 0000000457 2011_09_26 2011_09_26_drive_0022_sync 0000000459 2011_09_26 2011_09_26_drive_0022_sync 0000000461 2011_09_26 2011_09_26_drive_0022_sync 0000000463 2011_09_26 2011_09_26_drive_0022_sync 0000000465 2011_09_26 2011_09_26_drive_0022_sync 0000000467 2011_09_26 2011_09_26_drive_0022_sync 0000000469 2011_09_26 2011_09_26_drive_0022_sync 0000000471 2011_09_26 2011_09_26_drive_0022_sync 0000000473 2011_09_26 2011_09_26_drive_0022_sync 0000000475 2011_09_26 2011_09_26_drive_0022_sync 0000000477 2011_09_26 2011_09_26_drive_0022_sync 0000000479 2011_09_26 2011_09_26_drive_0022_sync 0000000481 2011_09_26 2011_09_26_drive_0022_sync 0000000483 2011_09_26 2011_09_26_drive_0022_sync 0000000485 2011_09_26 2011_09_26_drive_0022_sync 0000000487 2011_09_26 2011_09_26_drive_0022_sync 0000000489 2011_09_26 2011_09_26_drive_0022_sync 0000000491 2011_09_26 2011_09_26_drive_0022_sync 0000000493 2011_09_26 2011_09_26_drive_0022_sync 0000000495 2011_09_26 2011_09_26_drive_0022_sync 0000000497 2011_09_26 2011_09_26_drive_0022_sync 0000000499 2011_09_26 2011_09_26_drive_0022_sync 0000000501 2011_09_26 2011_09_26_drive_0022_sync 0000000503 2011_09_26 2011_09_26_drive_0022_sync 0000000505 2011_09_26 2011_09_26_drive_0022_sync 0000000507 2011_09_26 2011_09_26_drive_0022_sync 0000000509 2011_09_26 2011_09_26_drive_0022_sync 0000000511 2011_09_26 2011_09_26_drive_0022_sync 0000000513 2011_09_26 2011_09_26_drive_0022_sync 0000000515 2011_09_26 2011_09_26_drive_0022_sync 0000000517 2011_09_26 2011_09_26_drive_0022_sync 0000000519 2011_09_26 2011_09_26_drive_0022_sync 0000000521 2011_09_26 2011_09_26_drive_0022_sync 0000000527 2011_09_26 2011_09_26_drive_0022_sync 0000000529 2011_09_26 2011_09_26_drive_0022_sync 0000000531 2011_09_26 2011_09_26_drive_0022_sync 0000000533 2011_09_26 2011_09_26_drive_0022_sync 0000000535 2011_09_26 2011_09_26_drive_0022_sync 0000000537 2011_09_26 2011_09_26_drive_0022_sync 0000000539 2011_09_26 2011_09_26_drive_0022_sync 0000000541 2011_09_26 2011_09_26_drive_0022_sync 0000000543 2011_09_26 2011_09_26_drive_0022_sync 0000000545 2011_09_26 2011_09_26_drive_0022_sync 0000000547 2011_09_26 2011_09_26_drive_0022_sync 0000000549 2011_09_26 2011_09_26_drive_0022_sync 0000000608 2011_09_26 2011_09_26_drive_0022_sync 0000000609 2011_09_26 2011_09_26_drive_0022_sync 0000000610 2011_09_26 2011_09_26_drive_0022_sync 0000000611 2011_09_26 2011_09_26_drive_0022_sync 0000000612 2011_09_26 2011_09_26_drive_0022_sync 0000000613 2011_09_26 2011_09_26_drive_0022_sync 0000000614 2011_09_26 2011_09_26_drive_0022_sync 0000000615 2011_09_26 2011_09_26_drive_0022_sync 0000000616 2011_09_26 2011_09_26_drive_0022_sync 0000000617 2011_09_26 2011_09_26_drive_0022_sync 0000000618 2011_09_26 2011_09_26_drive_0022_sync 0000000619 2011_09_26 2011_09_26_drive_0022_sync 0000000620 2011_09_26 2011_09_26_drive_0022_sync 0000000621 2011_09_26 2011_09_26_drive_0022_sync 0000000622 2011_09_26 2011_09_26_drive_0022_sync 0000000623 2011_09_26 2011_09_26_drive_0022_sync 0000000624 2011_09_26 2011_09_26_drive_0022_sync 0000000625 2011_09_26 2011_09_26_drive_0022_sync 0000000627 2011_09_26 2011_09_26_drive_0022_sync 0000000628 2011_09_26 2011_09_26_drive_0022_sync 0000000629 2011_09_26 2011_09_26_drive_0022_sync 0000000630 2011_09_26 2011_09_26_drive_0022_sync 0000000631 2011_09_26 2011_09_26_drive_0022_sync 0000000632 2011_09_26 2011_09_26_drive_0022_sync 0000000633 2011_09_26 2011_09_26_drive_0022_sync 0000000634 2011_09_26 2011_09_26_drive_0022_sync 0000000635 2011_09_26 2011_09_26_drive_0022_sync 0000000636 2011_09_26 2011_09_26_drive_0022_sync 0000000637 2011_09_26 2011_09_26_drive_0022_sync 0000000638 2011_09_26 2011_09_26_drive_0022_sync 0000000639 2011_09_26 2011_09_26_drive_0022_sync 0000000640 2011_09_26 2011_09_26_drive_0022_sync 0000000641 2011_09_26 2011_09_26_drive_0022_sync 0000000642 2011_09_26 2011_09_26_drive_0022_sync 0000000643 2011_09_26 2011_09_26_drive_0022_sync 0000000644 2011_09_26 2011_09_26_drive_0022_sync 0000000645 2011_09_26 2011_09_26_drive_0022_sync 0000000646 2011_09_26 2011_09_26_drive_0022_sync 0000000647 2011_09_26 2011_09_26_drive_0022_sync 0000000649 2011_09_26 2011_09_26_drive_0022_sync 0000000651 2011_09_26 2011_09_26_drive_0022_sync 0000000653 2011_09_26 2011_09_26_drive_0022_sync 0000000655 2011_09_26 2011_09_26_drive_0022_sync 0000000657 2011_09_26 2011_09_26_drive_0022_sync 0000000659 2011_09_26 2011_09_26_drive_0022_sync 0000000661 2011_09_26 2011_09_26_drive_0022_sync 0000000663 2011_09_26 2011_09_26_drive_0022_sync 0000000665 2011_09_26 2011_09_26_drive_0022_sync 0000000667 2011_09_26 2011_09_26_drive_0022_sync 0000000749 2011_09_26 2011_09_26_drive_0022_sync 0000000750 2011_09_26 2011_09_26_drive_0022_sync 0000000751 2011_09_26 2011_09_26_drive_0022_sync 0000000752 2011_09_26 2011_09_26_drive_0022_sync 0000000753 2011_09_26 2011_09_26_drive_0022_sync 0000000754 2011_09_26 2011_09_26_drive_0022_sync 0000000755 2011_09_26 2011_09_26_drive_0022_sync 0000000756 2011_09_26 2011_09_26_drive_0022_sync 0000000757 2011_09_26 2011_09_26_drive_0022_sync 0000000758 2011_09_26 2011_09_26_drive_0022_sync 0000000759 2011_09_26 2011_09_26_drive_0022_sync 0000000760 2011_09_26 2011_09_26_drive_0022_sync 0000000761 2011_09_26 2011_09_26_drive_0022_sync 0000000762 2011_09_26 2011_09_26_drive_0022_sync 0000000763 2011_09_26 2011_09_26_drive_0022_sync 0000000764 2011_09_26 2011_09_26_drive_0022_sync 0000000765 2011_09_26 2011_09_26_drive_0022_sync 0000000766 2011_09_26 2011_09_26_drive_0022_sync 0000000767 2011_09_26 2011_09_26_drive_0022_sync 0000000769 2011_09_26 2011_09_26_drive_0022_sync 0000000771 2011_09_26 2011_09_26_drive_0022_sync 0000000773 2011_09_26 2011_09_26_drive_0022_sync 0000000775 2011_09_26 2011_09_26_drive_0022_sync 0000000777 2011_09_26 2011_09_26_drive_0022_sync 0000000779 2011_09_26 2011_09_26_drive_0022_sync 0000000781 2011_09_26 2011_09_26_drive_0022_sync 0000000783 2011_09_26 2011_09_26_drive_0022_sync 0000000785 2011_09_26 2011_09_26_drive_0022_sync 0000000787 2011_09_26 2011_09_26_drive_0022_sync 0000000789 2011_09_26 2011_09_26_drive_0022_sync 0000000791 2011_09_26 2011_09_26_drive_0022_sync 0000000793 2011_09_26 2011_09_26_drive_0022_sync 0000000795 2011_09_26 2011_09_26_drive_0022_sync 0000000797 2011_09_26 2011_09_26_drive_0022_sync 0000000799 2011_09_26 2011_09_26_drive_0039_sync 0000000001 2011_09_26 2011_09_26_drive_0039_sync 0000000002 2011_09_26 2011_09_26_drive_0039_sync 0000000003 2011_09_26 2011_09_26_drive_0039_sync 0000000004 2011_09_26 2011_09_26_drive_0039_sync 0000000005 2011_09_26 2011_09_26_drive_0039_sync 0000000006 2011_09_26 2011_09_26_drive_0039_sync 0000000007 2011_09_26 2011_09_26_drive_0039_sync 0000000008 2011_09_26 2011_09_26_drive_0039_sync 0000000009 2011_09_26 2011_09_26_drive_0039_sync 0000000010 2011_09_26 2011_09_26_drive_0039_sync 0000000012 2011_09_26 2011_09_26_drive_0039_sync 0000000014 2011_09_26 2011_09_26_drive_0039_sync 0000000016 2011_09_26 2011_09_26_drive_0039_sync 0000000018 2011_09_26 2011_09_26_drive_0039_sync 0000000020 2011_09_26 2011_09_26_drive_0039_sync 0000000022 2011_09_26 2011_09_26_drive_0039_sync 0000000024 2011_09_26 2011_09_26_drive_0039_sync 0000000026 2011_09_26 2011_09_26_drive_0039_sync 0000000028 2011_09_26 2011_09_26_drive_0039_sync 0000000030 2011_09_26 2011_09_26_drive_0039_sync 0000000032 2011_09_26 2011_09_26_drive_0039_sync 0000000034 2011_09_26 2011_09_26_drive_0039_sync 0000000036 2011_09_26 2011_09_26_drive_0039_sync 0000000038 2011_09_26 2011_09_26_drive_0039_sync 0000000040 2011_09_26 2011_09_26_drive_0039_sync 0000000042 2011_09_26 2011_09_26_drive_0039_sync 0000000044 2011_09_26 2011_09_26_drive_0039_sync 0000000046 2011_09_26 2011_09_26_drive_0039_sync 0000000048 2011_09_26 2011_09_26_drive_0039_sync 0000000050 2011_09_26 2011_09_26_drive_0039_sync 0000000052 2011_09_26 2011_09_26_drive_0039_sync 0000000054 2011_09_26 2011_09_26_drive_0039_sync 0000000056 2011_09_26 2011_09_26_drive_0039_sync 0000000058 2011_09_26 2011_09_26_drive_0039_sync 0000000060 2011_09_26 2011_09_26_drive_0039_sync 0000000062 2011_09_26 2011_09_26_drive_0039_sync 0000000064 2011_09_26 2011_09_26_drive_0039_sync 0000000066 2011_09_26 2011_09_26_drive_0039_sync 0000000068 2011_09_26 2011_09_26_drive_0039_sync 0000000070 2011_09_26 2011_09_26_drive_0039_sync 0000000072 2011_09_26 2011_09_26_drive_0039_sync 0000000074 2011_09_26 2011_09_26_drive_0039_sync 0000000076 2011_09_26 2011_09_26_drive_0039_sync 0000000078 2011_09_26 2011_09_26_drive_0039_sync 0000000080 2011_09_26 2011_09_26_drive_0039_sync 0000000082 2011_09_26 2011_09_26_drive_0039_sync 0000000084 2011_09_26 2011_09_26_drive_0039_sync 0000000086 2011_09_26 2011_09_26_drive_0039_sync 0000000088 2011_09_26 2011_09_26_drive_0039_sync 0000000090 2011_09_26 2011_09_26_drive_0039_sync 0000000092 2011_09_26 2011_09_26_drive_0039_sync 0000000094 2011_09_26 2011_09_26_drive_0039_sync 0000000096 2011_09_26 2011_09_26_drive_0039_sync 0000000098 2011_09_26 2011_09_26_drive_0039_sync 0000000100 2011_09_26 2011_09_26_drive_0039_sync 0000000102 2011_09_26 2011_09_26_drive_0039_sync 0000000104 2011_09_26 2011_09_26_drive_0039_sync 0000000106 2011_09_26 2011_09_26_drive_0039_sync 0000000108 2011_09_26 2011_09_26_drive_0039_sync 0000000110 2011_09_26 2011_09_26_drive_0039_sync 0000000112 2011_09_26 2011_09_26_drive_0039_sync 0000000114 2011_09_26 2011_09_26_drive_0039_sync 0000000116 2011_09_26 2011_09_26_drive_0039_sync 0000000118 2011_09_26 2011_09_26_drive_0039_sync 0000000120 2011_09_26 2011_09_26_drive_0039_sync 0000000122 2011_09_26 2011_09_26_drive_0039_sync 0000000124 2011_09_26 2011_09_26_drive_0039_sync 0000000126 2011_09_26 2011_09_26_drive_0039_sync 0000000128 2011_09_26 2011_09_26_drive_0039_sync 0000000130 2011_09_26 2011_09_26_drive_0039_sync 0000000132 2011_09_26 2011_09_26_drive_0039_sync 0000000134 2011_09_26 2011_09_26_drive_0039_sync 0000000136 2011_09_26 2011_09_26_drive_0039_sync 0000000138 2011_09_26 2011_09_26_drive_0039_sync 0000000140 2011_09_26 2011_09_26_drive_0039_sync 0000000142 2011_09_26 2011_09_26_drive_0039_sync 0000000144 2011_09_26 2011_09_26_drive_0039_sync 0000000146 2011_09_26 2011_09_26_drive_0039_sync 0000000148 2011_09_26 2011_09_26_drive_0039_sync 0000000150 2011_09_26 2011_09_26_drive_0039_sync 0000000152 2011_09_26 2011_09_26_drive_0039_sync 0000000154 2011_09_26 2011_09_26_drive_0039_sync 0000000156 2011_09_26 2011_09_26_drive_0039_sync 0000000158 2011_09_26 2011_09_26_drive_0039_sync 0000000160 2011_09_26 2011_09_26_drive_0039_sync 0000000162 2011_09_26 2011_09_26_drive_0039_sync 0000000164 2011_09_26 2011_09_26_drive_0039_sync 0000000166 2011_09_26 2011_09_26_drive_0039_sync 0000000168 2011_09_26 2011_09_26_drive_0039_sync 0000000170 2011_09_26 2011_09_26_drive_0039_sync 0000000172 2011_09_26 2011_09_26_drive_0039_sync 0000000174 2011_09_26 2011_09_26_drive_0039_sync 0000000176 2011_09_26 2011_09_26_drive_0039_sync 0000000178 2011_09_26 2011_09_26_drive_0039_sync 0000000180 2011_09_26 2011_09_26_drive_0039_sync 0000000182 2011_09_26 2011_09_26_drive_0039_sync 0000000184 2011_09_26 2011_09_26_drive_0039_sync 0000000186 2011_09_26 2011_09_26_drive_0039_sync 0000000188 2011_09_26 2011_09_26_drive_0039_sync 0000000190 2011_09_26 2011_09_26_drive_0039_sync 0000000192 2011_09_26 2011_09_26_drive_0039_sync 0000000194 2011_09_26 2011_09_26_drive_0039_sync 0000000196 2011_09_26 2011_09_26_drive_0039_sync 0000000198 2011_09_26 2011_09_26_drive_0039_sync 0000000200 2011_09_26 2011_09_26_drive_0039_sync 0000000202 2011_09_26 2011_09_26_drive_0039_sync 0000000204 2011_09_26 2011_09_26_drive_0039_sync 0000000206 2011_09_26 2011_09_26_drive_0039_sync 0000000208 2011_09_26 2011_09_26_drive_0039_sync 0000000210 2011_09_26 2011_09_26_drive_0039_sync 0000000212 2011_09_26 2011_09_26_drive_0039_sync 0000000214 2011_09_26 2011_09_26_drive_0039_sync 0000000216 2011_09_26 2011_09_26_drive_0039_sync 0000000218 2011_09_26 2011_09_26_drive_0039_sync 0000000220 2011_09_26 2011_09_26_drive_0039_sync 0000000222 2011_09_26 2011_09_26_drive_0039_sync 0000000224 2011_09_26 2011_09_26_drive_0039_sync 0000000226 2011_09_26 2011_09_26_drive_0039_sync 0000000228 2011_09_26 2011_09_26_drive_0039_sync 0000000230 2011_09_26 2011_09_26_drive_0039_sync 0000000232 2011_09_26 2011_09_26_drive_0039_sync 0000000234 2011_09_26 2011_09_26_drive_0039_sync 0000000236 2011_09_26 2011_09_26_drive_0039_sync 0000000238 2011_09_26 2011_09_26_drive_0039_sync 0000000240 2011_09_26 2011_09_26_drive_0039_sync 0000000242 2011_09_26 2011_09_26_drive_0039_sync 0000000244 2011_09_26 2011_09_26_drive_0039_sync 0000000246 2011_09_26 2011_09_26_drive_0039_sync 0000000248 2011_09_26 2011_09_26_drive_0039_sync 0000000250 2011_09_26 2011_09_26_drive_0039_sync 0000000252 2011_09_26 2011_09_26_drive_0039_sync 0000000254 2011_09_26 2011_09_26_drive_0039_sync 0000000256 2011_09_26 2011_09_26_drive_0039_sync 0000000258 2011_09_26 2011_09_26_drive_0039_sync 0000000260 2011_09_26 2011_09_26_drive_0039_sync 0000000262 2011_09_26 2011_09_26_drive_0039_sync 0000000264 2011_09_26 2011_09_26_drive_0039_sync 0000000266 2011_09_26 2011_09_26_drive_0039_sync 0000000268 2011_09_26 2011_09_26_drive_0039_sync 0000000270 2011_09_26 2011_09_26_drive_0039_sync 0000000272 2011_09_26 2011_09_26_drive_0039_sync 0000000274 2011_09_26 2011_09_26_drive_0039_sync 0000000276 2011_09_26 2011_09_26_drive_0039_sync 0000000278 2011_09_26 2011_09_26_drive_0039_sync 0000000280 2011_09_26 2011_09_26_drive_0039_sync 0000000282 2011_09_26 2011_09_26_drive_0039_sync 0000000284 2011_09_26 2011_09_26_drive_0039_sync 0000000286 2011_09_26 2011_09_26_drive_0039_sync 0000000288 2011_09_26 2011_09_26_drive_0039_sync 0000000290 2011_09_26 2011_09_26_drive_0039_sync 0000000292 2011_09_26 2011_09_26_drive_0039_sync 0000000294 2011_09_26 2011_09_26_drive_0039_sync 0000000296 2011_09_26 2011_09_26_drive_0039_sync 0000000298 2011_09_26 2011_09_26_drive_0039_sync 0000000300 2011_09_26 2011_09_26_drive_0039_sync 0000000302 2011_09_26 2011_09_26_drive_0039_sync 0000000304 2011_09_26 2011_09_26_drive_0039_sync 0000000306 2011_09_26 2011_09_26_drive_0039_sync 0000000308 2011_09_26 2011_09_26_drive_0039_sync 0000000310 2011_09_26 2011_09_26_drive_0039_sync 0000000312 2011_09_26 2011_09_26_drive_0039_sync 0000000314 2011_09_26 2011_09_26_drive_0039_sync 0000000316 2011_09_26 2011_09_26_drive_0039_sync 0000000318 2011_09_26 2011_09_26_drive_0039_sync 0000000321 2011_09_26 2011_09_26_drive_0039_sync 0000000323 2011_09_26 2011_09_26_drive_0039_sync 0000000325 2011_09_26 2011_09_26_drive_0039_sync 0000000327 2011_09_26 2011_09_26_drive_0039_sync 0000000329 2011_09_26 2011_09_26_drive_0039_sync 0000000331 2011_09_26 2011_09_26_drive_0039_sync 0000000333 2011_09_26 2011_09_26_drive_0039_sync 0000000335 2011_09_26 2011_09_26_drive_0039_sync 0000000337 2011_09_26 2011_09_26_drive_0039_sync 0000000339 2011_09_26 2011_09_26_drive_0039_sync 0000000341 2011_09_26 2011_09_26_drive_0039_sync 0000000343 2011_09_26 2011_09_26_drive_0039_sync 0000000361 2011_09_26 2011_09_26_drive_0039_sync 0000000363 2011_09_26 2011_09_26_drive_0039_sync 0000000365 2011_09_26 2011_09_26_drive_0039_sync 0000000367 2011_09_26 2011_09_26_drive_0039_sync 0000000369 2011_09_26 2011_09_26_drive_0039_sync 0000000371 2011_09_26 2011_09_26_drive_0039_sync 0000000373 2011_09_26 2011_09_26_drive_0039_sync 0000000375 2011_09_26 2011_09_26_drive_0039_sync 0000000377 2011_09_26 2011_09_26_drive_0039_sync 0000000379 2011_09_26 2011_09_26_drive_0039_sync 0000000381 2011_09_26 2011_09_26_drive_0039_sync 0000000383 2011_09_26 2011_09_26_drive_0039_sync 0000000385 2011_09_26 2011_09_26_drive_0039_sync 0000000387 2011_09_26 2011_09_26_drive_0039_sync 0000000390 2011_09_26 2011_09_26_drive_0039_sync 0000000393 2011_09_26 2011_09_26_drive_0019_sync 0000000007 2011_09_26 2011_09_26_drive_0019_sync 0000000008 2011_09_26 2011_09_26_drive_0019_sync 0000000009 2011_09_26 2011_09_26_drive_0019_sync 0000000010 2011_09_26 2011_09_26_drive_0019_sync 0000000011 2011_09_26 2011_09_26_drive_0019_sync 0000000012 2011_09_26 2011_09_26_drive_0019_sync 0000000013 2011_09_26 2011_09_26_drive_0019_sync 0000000014 2011_09_26 2011_09_26_drive_0019_sync 0000000015 2011_09_26 2011_09_26_drive_0019_sync 0000000016 2011_09_26 2011_09_26_drive_0019_sync 0000000017 2011_09_26 2011_09_26_drive_0019_sync 0000000018 2011_09_26 2011_09_26_drive_0019_sync 0000000019 2011_09_26 2011_09_26_drive_0019_sync 0000000020 2011_09_26 2011_09_26_drive_0019_sync 0000000021 2011_09_26 2011_09_26_drive_0019_sync 0000000022 2011_09_26 2011_09_26_drive_0019_sync 0000000023 2011_09_26 2011_09_26_drive_0019_sync 0000000024 2011_09_26 2011_09_26_drive_0019_sync 0000000025 2011_09_26 2011_09_26_drive_0019_sync 0000000026 2011_09_26 2011_09_26_drive_0019_sync 0000000027 2011_09_26 2011_09_26_drive_0019_sync 0000000028 2011_09_26 2011_09_26_drive_0019_sync 0000000029 2011_09_26 2011_09_26_drive_0019_sync 0000000030 2011_09_26 2011_09_26_drive_0019_sync 0000000031 2011_09_26 2011_09_26_drive_0019_sync 0000000032 2011_09_26 2011_09_26_drive_0019_sync 0000000033 2011_09_26 2011_09_26_drive_0019_sync 0000000065 2011_09_26 2011_09_26_drive_0019_sync 0000000066 2011_09_26 2011_09_26_drive_0019_sync 0000000067 2011_09_26 2011_09_26_drive_0019_sync 0000000068 2011_09_26 2011_09_26_drive_0019_sync 0000000069 2011_09_26 2011_09_26_drive_0019_sync 0000000070 2011_09_26 2011_09_26_drive_0019_sync 0000000071 2011_09_26 2011_09_26_drive_0019_sync 0000000072 2011_09_26 2011_09_26_drive_0019_sync 0000000073 2011_09_26 2011_09_26_drive_0019_sync 0000000074 2011_09_26 2011_09_26_drive_0019_sync 0000000075 2011_09_26 2011_09_26_drive_0019_sync 0000000076 2011_09_26 2011_09_26_drive_0019_sync 0000000077 2011_09_26 2011_09_26_drive_0019_sync 0000000078 2011_09_26 2011_09_26_drive_0019_sync 0000000079 2011_09_26 2011_09_26_drive_0019_sync 0000000080 2011_09_26 2011_09_26_drive_0019_sync 0000000081 2011_09_26 2011_09_26_drive_0019_sync 0000000082 2011_09_26 2011_09_26_drive_0019_sync 0000000083 2011_09_26 2011_09_26_drive_0019_sync 0000000084 2011_09_26 2011_09_26_drive_0019_sync 0000000085 2011_09_26 2011_09_26_drive_0019_sync 0000000086 2011_09_26 2011_09_26_drive_0019_sync 0000000087 2011_09_26 2011_09_26_drive_0019_sync 0000000088 2011_09_26 2011_09_26_drive_0019_sync 0000000089 2011_09_26 2011_09_26_drive_0019_sync 0000000090 2011_09_26 2011_09_26_drive_0019_sync 0000000091 2011_09_26 2011_09_26_drive_0019_sync 0000000092 2011_09_26 2011_09_26_drive_0019_sync 0000000093 2011_09_26 2011_09_26_drive_0019_sync 0000000094 2011_09_26 2011_09_26_drive_0019_sync 0000000095 2011_09_26 2011_09_26_drive_0019_sync 0000000096 2011_09_26 2011_09_26_drive_0019_sync 0000000097 2011_09_26 2011_09_26_drive_0019_sync 0000000098 2011_09_26 2011_09_26_drive_0019_sync 0000000222 2011_09_26 2011_09_26_drive_0019_sync 0000000224 2011_09_26 2011_09_26_drive_0019_sync 0000000226 2011_09_26 2011_09_26_drive_0019_sync 0000000228 2011_09_26 2011_09_26_drive_0019_sync 0000000230 2011_09_26 2011_09_26_drive_0019_sync 0000000232 2011_09_26 2011_09_26_drive_0019_sync 0000000234 2011_09_26 2011_09_26_drive_0019_sync 0000000236 2011_09_26 2011_09_26_drive_0019_sync 0000000238 2011_09_26 2011_09_26_drive_0019_sync 0000000240 2011_09_26 2011_09_26_drive_0019_sync 0000000243 2011_09_26 2011_09_26_drive_0019_sync 0000000245 2011_09_26 2011_09_26_drive_0019_sync 0000000247 2011_09_26 2011_09_26_drive_0019_sync 0000000249 2011_09_26 2011_09_26_drive_0019_sync 0000000251 2011_09_26 2011_09_26_drive_0019_sync 0000000253 2011_09_26 2011_09_26_drive_0019_sync 0000000255 2011_09_26 2011_09_26_drive_0019_sync 0000000257 2011_09_26 2011_09_26_drive_0019_sync 0000000314 2011_09_26 2011_09_26_drive_0019_sync 0000000316 2011_09_26 2011_09_26_drive_0019_sync 0000000318 2011_09_26 2011_09_26_drive_0019_sync 0000000320 2011_09_26 2011_09_26_drive_0019_sync 0000000322 2011_09_26 2011_09_26_drive_0019_sync 0000000324 2011_09_26 2011_09_26_drive_0019_sync 0000000326 2011_09_26 2011_09_26_drive_0019_sync 0000000328 2011_09_26 2011_09_26_drive_0019_sync 0000000330 2011_09_26 2011_09_26_drive_0019_sync 0000000332 2011_09_26 2011_09_26_drive_0019_sync 0000000334 2011_09_26 2011_09_26_drive_0019_sync 0000000336 2011_09_26 2011_09_26_drive_0019_sync 0000000338 2011_09_26 2011_09_26_drive_0019_sync 0000000340 2011_09_26 2011_09_26_drive_0019_sync 0000000342 2011_09_26 2011_09_26_drive_0019_sync 0000000344 2011_09_26 2011_09_26_drive_0019_sync 0000000347 2011_09_26 2011_09_26_drive_0019_sync 0000000350 2011_09_26 2011_09_26_drive_0019_sync 0000000353 2011_09_26 2011_09_26_drive_0019_sync 0000000356 2011_09_26 2011_09_26_drive_0019_sync 0000000359 2011_09_26 2011_09_26_drive_0019_sync 0000000362 2011_09_26 2011_09_26_drive_0019_sync 0000000365 2011_09_26 2011_09_26_drive_0019_sync 0000000368 2011_09_26 2011_09_26_drive_0019_sync 0000000371 2011_09_26 2011_09_26_drive_0019_sync 0000000374 2011_09_26 2011_09_26_drive_0019_sync 0000000377 2011_09_26 2011_09_26_drive_0019_sync 0000000379 2011_09_26 2011_09_26_drive_0019_sync 0000000381 2011_09_26 2011_09_26_drive_0019_sync 0000000383 2011_09_26 2011_09_26_drive_0019_sync 0000000385 2011_09_26 2011_09_26_drive_0019_sync 0000000387 2011_09_26 2011_09_26_drive_0019_sync 0000000388 2011_09_26 2011_09_26_drive_0019_sync 0000000390 2011_09_26 2011_09_26_drive_0019_sync 0000000392 2011_09_26 2011_09_26_drive_0019_sync 0000000394 2011_09_26 2011_09_26_drive_0019_sync 0000000396 2011_09_26 2011_09_26_drive_0019_sync 0000000398 2011_09_26 2011_09_26_drive_0019_sync 0000000401 2011_09_26 2011_09_26_drive_0019_sync 0000000405 2011_09_26 2011_09_26_drive_0019_sync 0000000411 2011_09_26 2011_09_26_drive_0019_sync 0000000418 2011_09_26 2011_09_26_drive_0019_sync 0000000426 2011_09_26 2011_09_26_drive_0019_sync 0000000433 2011_09_26 2011_09_26_drive_0019_sync 0000000440 2011_09_26 2011_09_26_drive_0019_sync 0000000446 2011_09_26 2011_09_26_drive_0019_sync 0000000451 2011_09_26 2011_09_26_drive_0019_sync 0000000456 2011_09_26 2011_09_26_drive_0019_sync 0000000462 2011_09_26 2011_09_26_drive_0019_sync 0000000467 2011_09_26 2011_09_26_drive_0019_sync 0000000471 2011_09_26 2011_09_26_drive_0019_sync 0000000475 2011_09_26 2011_09_26_drive_0019_sync 0000000479 2011_09_29 2011_09_29_drive_0026_sync 0000000004 2011_09_29 2011_09_29_drive_0026_sync 0000000009 2011_09_29 2011_09_29_drive_0026_sync 0000000014 2011_09_29 2011_09_29_drive_0026_sync 0000000021 2011_09_29 2011_09_29_drive_0026_sync 0000000026 2011_09_29 2011_09_29_drive_0026_sync 0000000030 2011_09_29 2011_09_29_drive_0026_sync 0000000033 2011_09_29 2011_09_29_drive_0026_sync 0000000035 2011_09_29 2011_09_29_drive_0026_sync 0000000037 2011_09_29 2011_09_29_drive_0026_sync 0000000040 2011_09_29 2011_09_29_drive_0026_sync 0000000043 2011_09_29 2011_09_29_drive_0026_sync 0000000046 2011_09_29 2011_09_29_drive_0026_sync 0000000049 2011_09_29 2011_09_29_drive_0026_sync 0000000052 2011_09_29 2011_09_29_drive_0026_sync 0000000055 2011_09_29 2011_09_29_drive_0026_sync 0000000058 2011_09_29 2011_09_29_drive_0026_sync 0000000061 2011_09_29 2011_09_29_drive_0026_sync 0000000064 2011_09_29 2011_09_29_drive_0026_sync 0000000067 2011_09_29 2011_09_29_drive_0026_sync 0000000070 2011_09_29 2011_09_29_drive_0026_sync 0000000073 2011_09_29 2011_09_29_drive_0026_sync 0000000076 2011_09_29 2011_09_29_drive_0026_sync 0000000079 2011_09_29 2011_09_29_drive_0026_sync 0000000082 2011_09_29 2011_09_29_drive_0026_sync 0000000085 2011_09_29 2011_09_29_drive_0026_sync 0000000088 2011_09_29 2011_09_29_drive_0026_sync 0000000091 2011_09_29 2011_09_29_drive_0026_sync 0000000093 2011_09_29 2011_09_29_drive_0026_sync 0000000095 2011_09_29 2011_09_29_drive_0026_sync 0000000098 2011_09_29 2011_09_29_drive_0026_sync 0000000101 2011_09_29 2011_09_29_drive_0026_sync 0000000104 2011_09_29 2011_09_29_drive_0026_sync 0000000107 2011_09_29 2011_09_29_drive_0026_sync 0000000110 2011_09_29 2011_09_29_drive_0026_sync 0000000112 2011_09_29 2011_09_29_drive_0026_sync 0000000114 2011_09_29 2011_09_29_drive_0026_sync 0000000117 2011_09_29 2011_09_29_drive_0026_sync 0000000120 2011_09_29 2011_09_29_drive_0026_sync 0000000123 2011_09_29 2011_09_29_drive_0026_sync 0000000126 2011_09_29 2011_09_29_drive_0026_sync 0000000129 2011_09_29 2011_09_29_drive_0026_sync 0000000133 2011_09_29 2011_09_29_drive_0026_sync 0000000137 2011_09_29 2011_09_29_drive_0026_sync 0000000141 2011_09_29 2011_09_29_drive_0026_sync 0000000146 2011_09_29 2011_09_29_drive_0026_sync 0000000151 2011_09_29 2011_09_29_drive_0026_sync 0000000156 2011_09_26 2011_09_26_drive_0048_sync 0000000002 2011_09_26 2011_09_26_drive_0048_sync 0000000004 2011_09_26 2011_09_26_drive_0048_sync 0000000006 2011_09_26 2011_09_26_drive_0048_sync 0000000008 2011_09_26 2011_09_26_drive_0048_sync 0000000010 2011_09_26 2011_09_26_drive_0048_sync 0000000012 2011_09_26 2011_09_26_drive_0048_sync 0000000014 2011_09_26 2011_09_26_drive_0048_sync 0000000016 2011_09_26 2011_09_26_drive_0048_sync 0000000018 2011_09_26 2011_09_26_drive_0048_sync 0000000020 2011_09_26 2011_09_26_drive_0064_sync 0000000002 2011_09_26 2011_09_26_drive_0064_sync 0000000004 2011_09_26 2011_09_26_drive_0064_sync 0000000006 2011_09_26 2011_09_26_drive_0064_sync 0000000008 2011_09_26 2011_09_26_drive_0064_sync 0000000010 2011_09_26 2011_09_26_drive_0064_sync 0000000012 2011_09_26 2011_09_26_drive_0064_sync 0000000014 2011_09_26 2011_09_26_drive_0064_sync 0000000016 2011_09_26 2011_09_26_drive_0064_sync 0000000018 2011_09_26 2011_09_26_drive_0064_sync 0000000020 2011_09_26 2011_09_26_drive_0064_sync 0000000022 2011_09_26 2011_09_26_drive_0064_sync 0000000024 2011_09_26 2011_09_26_drive_0064_sync 0000000026 2011_09_26 2011_09_26_drive_0064_sync 0000000028 2011_09_26 2011_09_26_drive_0064_sync 0000000030 2011_09_26 2011_09_26_drive_0064_sync 0000000032 2011_09_26 2011_09_26_drive_0064_sync 0000000034 2011_09_26 2011_09_26_drive_0064_sync 0000000036 2011_09_26 2011_09_26_drive_0064_sync 0000000038 2011_09_26 2011_09_26_drive_0064_sync 0000000040 2011_09_26 2011_09_26_drive_0064_sync 0000000042 2011_09_26 2011_09_26_drive_0064_sync 0000000044 2011_09_26 2011_09_26_drive_0064_sync 0000000046 2011_09_26 2011_09_26_drive_0064_sync 0000000048 2011_09_26 2011_09_26_drive_0064_sync 0000000050 2011_09_26 2011_09_26_drive_0064_sync 0000000052 2011_09_26 2011_09_26_drive_0064_sync 0000000054 2011_09_26 2011_09_26_drive_0064_sync 0000000056 2011_09_26 2011_09_26_drive_0064_sync 0000000058 2011_09_26 2011_09_26_drive_0064_sync 0000000060 2011_09_26 2011_09_26_drive_0064_sync 0000000062 2011_09_26 2011_09_26_drive_0064_sync 0000000064 2011_09_26 2011_09_26_drive_0064_sync 0000000066 2011_09_26 2011_09_26_drive_0064_sync 0000000068 2011_09_26 2011_09_26_drive_0064_sync 0000000070 2011_09_26 2011_09_26_drive_0064_sync 0000000072 2011_09_26 2011_09_26_drive_0064_sync 0000000074 2011_09_26 2011_09_26_drive_0064_sync 0000000076 2011_09_26 2011_09_26_drive_0064_sync 0000000078 2011_09_26 2011_09_26_drive_0064_sync 0000000080 2011_09_26 2011_09_26_drive_0064_sync 0000000082 2011_09_26 2011_09_26_drive_0064_sync 0000000084 2011_09_26 2011_09_26_drive_0064_sync 0000000086 2011_09_26 2011_09_26_drive_0064_sync 0000000088 2011_09_26 2011_09_26_drive_0064_sync 0000000090 2011_09_26 2011_09_26_drive_0064_sync 0000000092 2011_09_26 2011_09_26_drive_0064_sync 0000000094 2011_09_26 2011_09_26_drive_0064_sync 0000000096 2011_09_26 2011_09_26_drive_0064_sync 0000000098 2011_09_26 2011_09_26_drive_0064_sync 0000000100 2011_09_26 2011_09_26_drive_0064_sync 0000000102 2011_09_26 2011_09_26_drive_0064_sync 0000000104 2011_09_26 2011_09_26_drive_0064_sync 0000000106 2011_09_26 2011_09_26_drive_0064_sync 0000000108 2011_09_26 2011_09_26_drive_0064_sync 0000000110 2011_09_26 2011_09_26_drive_0064_sync 0000000112 2011_09_26 2011_09_26_drive_0064_sync 0000000114 2011_09_26 2011_09_26_drive_0064_sync 0000000116 2011_09_26 2011_09_26_drive_0064_sync 0000000118 2011_09_26 2011_09_26_drive_0064_sync 0000000120 2011_09_26 2011_09_26_drive_0064_sync 0000000122 2011_09_26 2011_09_26_drive_0064_sync 0000000124 2011_09_26 2011_09_26_drive_0064_sync 0000000126 2011_09_26 2011_09_26_drive_0064_sync 0000000128 2011_09_26 2011_09_26_drive_0064_sync 0000000130 2011_09_26 2011_09_26_drive_0064_sync 0000000132 2011_09_26 2011_09_26_drive_0064_sync 0000000134 2011_09_26 2011_09_26_drive_0064_sync 0000000136 2011_09_26 2011_09_26_drive_0064_sync 0000000138 2011_09_26 2011_09_26_drive_0064_sync 0000000140 2011_09_26 2011_09_26_drive_0064_sync 0000000142 2011_09_26 2011_09_26_drive_0064_sync 0000000144 2011_09_26 2011_09_26_drive_0064_sync 0000000146 2011_09_26 2011_09_26_drive_0064_sync 0000000148 2011_09_26 2011_09_26_drive_0064_sync 0000000150 2011_09_26 2011_09_26_drive_0064_sync 0000000152 2011_09_26 2011_09_26_drive_0064_sync 0000000154 2011_09_26 2011_09_26_drive_0064_sync 0000000156 2011_09_26 2011_09_26_drive_0064_sync 0000000158 2011_09_26 2011_09_26_drive_0064_sync 0000000160 2011_09_26 2011_09_26_drive_0064_sync 0000000162 2011_09_26 2011_09_26_drive_0064_sync 0000000165 2011_09_26 2011_09_26_drive_0064_sync 0000000168 2011_09_26 2011_09_26_drive_0064_sync 0000000171 2011_09_26 2011_09_26_drive_0064_sync 0000000173 2011_09_26 2011_09_26_drive_0064_sync 0000000175 2011_09_26 2011_09_26_drive_0064_sync 0000000177 2011_09_26 2011_09_26_drive_0064_sync 0000000179 2011_09_26 2011_09_26_drive_0064_sync 0000000181 2011_09_26 2011_09_26_drive_0064_sync 0000000183 2011_09_26 2011_09_26_drive_0064_sync 0000000185 2011_09_26 2011_09_26_drive_0064_sync 0000000187 2011_09_26 2011_09_26_drive_0064_sync 0000000189 2011_09_26 2011_09_26_drive_0064_sync 0000000191 2011_09_26 2011_09_26_drive_0064_sync 0000000193 2011_09_26 2011_09_26_drive_0064_sync 0000000195 2011_09_26 2011_09_26_drive_0064_sync 0000000197 2011_09_26 2011_09_26_drive_0064_sync 0000000199 2011_09_26 2011_09_26_drive_0064_sync 0000000201 2011_09_26 2011_09_26_drive_0064_sync 0000000203 2011_09_26 2011_09_26_drive_0064_sync 0000000205 2011_09_26 2011_09_26_drive_0064_sync 0000000207 2011_09_26 2011_09_26_drive_0064_sync 0000000209 2011_09_26 2011_09_26_drive_0064_sync 0000000211 2011_09_26 2011_09_26_drive_0064_sync 0000000213 2011_09_26 2011_09_26_drive_0064_sync 0000000215 2011_09_26 2011_09_26_drive_0064_sync 0000000217 2011_09_26 2011_09_26_drive_0064_sync 0000000219 2011_09_26 2011_09_26_drive_0064_sync 0000000221 2011_09_26 2011_09_26_drive_0064_sync 0000000223 2011_09_26 2011_09_26_drive_0064_sync 0000000225 2011_09_26 2011_09_26_drive_0064_sync 0000000227 2011_09_26 2011_09_26_drive_0064_sync 0000000229 2011_09_26 2011_09_26_drive_0064_sync 0000000231 2011_09_26 2011_09_26_drive_0064_sync 0000000233 2011_09_26 2011_09_26_drive_0064_sync 0000000235 2011_09_26 2011_09_26_drive_0064_sync 0000000237 2011_09_26 2011_09_26_drive_0064_sync 0000000239 2011_09_26 2011_09_26_drive_0064_sync 0000000241 2011_09_26 2011_09_26_drive_0064_sync 0000000243 2011_09_26 2011_09_26_drive_0064_sync 0000000245 2011_09_26 2011_09_26_drive_0064_sync 0000000247 2011_09_26 2011_09_26_drive_0064_sync 0000000249 2011_09_26 2011_09_26_drive_0064_sync 0000000251 2011_09_26 2011_09_26_drive_0064_sync 0000000253 2011_09_26 2011_09_26_drive_0064_sync 0000000255 2011_09_26 2011_09_26_drive_0064_sync 0000000257 2011_09_26 2011_09_26_drive_0064_sync 0000000259 2011_09_26 2011_09_26_drive_0064_sync 0000000261 2011_09_26 2011_09_26_drive_0064_sync 0000000263 2011_09_26 2011_09_26_drive_0064_sync 0000000265 2011_09_26 2011_09_26_drive_0064_sync 0000000267 2011_09_26 2011_09_26_drive_0064_sync 0000000269 2011_09_26 2011_09_26_drive_0064_sync 0000000271 2011_09_26 2011_09_26_drive_0064_sync 0000000273 2011_09_26 2011_09_26_drive_0064_sync 0000000275 2011_09_26 2011_09_26_drive_0064_sync 0000000277 2011_09_26 2011_09_26_drive_0064_sync 0000000279 2011_09_26 2011_09_26_drive_0064_sync 0000000281 2011_09_26 2011_09_26_drive_0064_sync 0000000283 2011_09_26 2011_09_26_drive_0064_sync 0000000285 2011_09_26 2011_09_26_drive_0064_sync 0000000287 2011_09_26 2011_09_26_drive_0064_sync 0000000289 2011_09_26 2011_09_26_drive_0064_sync 0000000291 2011_09_26 2011_09_26_drive_0064_sync 0000000293 2011_09_26 2011_09_26_drive_0064_sync 0000000295 2011_09_26 2011_09_26_drive_0064_sync 0000000297 2011_09_26 2011_09_26_drive_0064_sync 0000000299 2011_09_26 2011_09_26_drive_0064_sync 0000000301 2011_09_26 2011_09_26_drive_0064_sync 0000000303 2011_09_26 2011_09_26_drive_0064_sync 0000000305 2011_09_26 2011_09_26_drive_0064_sync 0000000307 2011_09_26 2011_09_26_drive_0064_sync 0000000309 2011_09_26 2011_09_26_drive_0064_sync 0000000311 2011_09_26 2011_09_26_drive_0064_sync 0000000313 2011_09_26 2011_09_26_drive_0064_sync 0000000315 2011_09_26 2011_09_26_drive_0064_sync 0000000317 2011_09_26 2011_09_26_drive_0064_sync 0000000319 2011_09_26 2011_09_26_drive_0064_sync 0000000321 2011_09_26 2011_09_26_drive_0064_sync 0000000323 2011_09_26 2011_09_26_drive_0064_sync 0000000325 2011_09_26 2011_09_26_drive_0064_sync 0000000327 2011_09_26 2011_09_26_drive_0064_sync 0000000329 2011_09_26 2011_09_26_drive_0064_sync 0000000330 2011_09_26 2011_09_26_drive_0064_sync 0000000331 2011_09_26 2011_09_26_drive_0064_sync 0000000332 2011_09_26 2011_09_26_drive_0064_sync 0000000333 2011_09_26 2011_09_26_drive_0064_sync 0000000334 2011_09_26 2011_09_26_drive_0064_sync 0000000335 2011_09_26 2011_09_26_drive_0064_sync 0000000337 2011_09_26 2011_09_26_drive_0064_sync 0000000339 2011_09_26 2011_09_26_drive_0064_sync 0000000340 2011_09_26 2011_09_26_drive_0064_sync 0000000341 2011_09_26 2011_09_26_drive_0064_sync 0000000342 2011_09_26 2011_09_26_drive_0064_sync 0000000343 2011_09_26 2011_09_26_drive_0064_sync 0000000344 2011_09_26 2011_09_26_drive_0064_sync 0000000346 2011_09_26 2011_09_26_drive_0064_sync 0000000348 2011_09_26 2011_09_26_drive_0064_sync 0000000350 2011_09_26 2011_09_26_drive_0064_sync 0000000352 2011_09_26 2011_09_26_drive_0064_sync 0000000354 2011_09_26 2011_09_26_drive_0064_sync 0000000355 2011_09_26 2011_09_26_drive_0064_sync 0000000356 2011_09_26 2011_09_26_drive_0064_sync 0000000357 2011_09_26 2011_09_26_drive_0064_sync 0000000358 2011_09_26 2011_09_26_drive_0064_sync 0000000359 2011_09_26 2011_09_26_drive_0064_sync 0000000360 2011_09_26 2011_09_26_drive_0064_sync 0000000361 2011_09_26 2011_09_26_drive_0064_sync 0000000362 2011_09_26 2011_09_26_drive_0064_sync 0000000363 2011_09_26 2011_09_26_drive_0064_sync 0000000364 2011_09_26 2011_09_26_drive_0064_sync 0000000365 2011_09_26 2011_09_26_drive_0064_sync 0000000367 2011_09_26 2011_09_26_drive_0064_sync 0000000369 2011_09_26 2011_09_26_drive_0064_sync 0000000371 2011_09_26 2011_09_26_drive_0064_sync 0000000373 2011_09_26 2011_09_26_drive_0064_sync 0000000374 2011_09_26 2011_09_26_drive_0064_sync 0000000376 2011_09_26 2011_09_26_drive_0064_sync 0000000378 2011_09_26 2011_09_26_drive_0064_sync 0000000380 2011_09_26 2011_09_26_drive_0064_sync 0000000382 2011_09_26 2011_09_26_drive_0064_sync 0000000384 2011_09_26 2011_09_26_drive_0064_sync 0000000399 2011_09_26 2011_09_26_drive_0064_sync 0000000401 2011_09_26 2011_09_26_drive_0064_sync 0000000403 2011_09_26 2011_09_26_drive_0064_sync 0000000405 2011_09_26 2011_09_26_drive_0064_sync 0000000407 2011_09_26 2011_09_26_drive_0064_sync 0000000409 2011_09_26 2011_09_26_drive_0064_sync 0000000411 2011_09_26 2011_09_26_drive_0064_sync 0000000413 2011_09_26 2011_09_26_drive_0064_sync 0000000415 2011_09_26 2011_09_26_drive_0064_sync 0000000417 2011_09_26 2011_09_26_drive_0064_sync 0000000419 2011_09_26 2011_09_26_drive_0064_sync 0000000421 2011_09_26 2011_09_26_drive_0064_sync 0000000423 2011_09_26 2011_09_26_drive_0064_sync 0000000426 2011_09_26 2011_09_26_drive_0064_sync 0000000429 2011_09_26 2011_09_26_drive_0064_sync 0000000432 2011_09_26 2011_09_26_drive_0064_sync 0000000434 2011_09_26 2011_09_26_drive_0064_sync 0000000437 2011_09_26 2011_09_26_drive_0064_sync 0000000440 2011_09_26 2011_09_26_drive_0064_sync 0000000442 2011_09_26 2011_09_26_drive_0064_sync 0000000444 2011_09_26 2011_09_26_drive_0064_sync 0000000446 2011_09_26 2011_09_26_drive_0064_sync 0000000447 2011_09_26 2011_09_26_drive_0064_sync 0000000448 2011_09_26 2011_09_26_drive_0064_sync 0000000449 2011_09_26 2011_09_26_drive_0064_sync 0000000450 2011_09_26 2011_09_26_drive_0064_sync 0000000455 2011_09_26 2011_09_26_drive_0064_sync 0000000456 2011_09_26 2011_09_26_drive_0064_sync 0000000457 2011_09_26 2011_09_26_drive_0064_sync 0000000458 2011_09_26 2011_09_26_drive_0064_sync 0000000459 2011_09_26 2011_09_26_drive_0064_sync 0000000460 2011_09_26 2011_09_26_drive_0064_sync 0000000461 2011_09_26 2011_09_26_drive_0064_sync 0000000462 2011_09_26 2011_09_26_drive_0064_sync 0000000464 2011_09_26 2011_09_26_drive_0064_sync 0000000466 2011_09_26 2011_09_26_drive_0064_sync 0000000468 2011_09_26 2011_09_26_drive_0064_sync 0000000470 2011_09_26 2011_09_26_drive_0064_sync 0000000472 2011_09_26 2011_09_26_drive_0064_sync 0000000474 2011_09_26 2011_09_26_drive_0064_sync 0000000476 2011_09_26 2011_09_26_drive_0064_sync 0000000478 2011_09_26 2011_09_26_drive_0064_sync 0000000480 2011_09_26 2011_09_26_drive_0064_sync 0000000482 2011_09_26 2011_09_26_drive_0064_sync 0000000484 2011_09_26 2011_09_26_drive_0064_sync 0000000486 2011_09_26 2011_09_26_drive_0064_sync 0000000488 2011_09_26 2011_09_26_drive_0064_sync 0000000490 2011_09_26 2011_09_26_drive_0064_sync 0000000492 2011_09_26 2011_09_26_drive_0064_sync 0000000494 2011_09_26 2011_09_26_drive_0064_sync 0000000496 2011_09_26 2011_09_26_drive_0064_sync 0000000498 2011_09_26 2011_09_26_drive_0064_sync 0000000500 2011_09_26 2011_09_26_drive_0064_sync 0000000502 2011_09_26 2011_09_26_drive_0064_sync 0000000504 2011_09_26 2011_09_26_drive_0064_sync 0000000506 2011_09_26 2011_09_26_drive_0064_sync 0000000508 2011_09_26 2011_09_26_drive_0064_sync 0000000510 2011_09_26 2011_09_26_drive_0064_sync 0000000512 2011_09_26 2011_09_26_drive_0064_sync 0000000514 2011_09_26 2011_09_26_drive_0064_sync 0000000516 2011_09_26 2011_09_26_drive_0064_sync 0000000518 2011_09_26 2011_09_26_drive_0064_sync 0000000520 2011_09_26 2011_09_26_drive_0064_sync 0000000522 2011_09_26 2011_09_26_drive_0064_sync 0000000524 2011_09_26 2011_09_26_drive_0064_sync 0000000526 2011_09_26 2011_09_26_drive_0064_sync 0000000528 2011_09_26 2011_09_26_drive_0064_sync 0000000530 2011_09_26 2011_09_26_drive_0064_sync 0000000532 2011_09_26 2011_09_26_drive_0064_sync 0000000534 2011_09_26 2011_09_26_drive_0064_sync 0000000536 2011_09_26 2011_09_26_drive_0064_sync 0000000538 2011_09_26 2011_09_26_drive_0064_sync 0000000540 2011_09_26 2011_09_26_drive_0064_sync 0000000542 2011_09_26 2011_09_26_drive_0064_sync 0000000544 2011_09_26 2011_09_26_drive_0064_sync 0000000546 2011_09_26 2011_09_26_drive_0064_sync 0000000548 2011_09_26 2011_09_26_drive_0064_sync 0000000550 2011_09_26 2011_09_26_drive_0064_sync 0000000552 2011_09_26 2011_09_26_drive_0064_sync 0000000554 2011_09_26 2011_09_26_drive_0064_sync 0000000556 2011_09_26 2011_09_26_drive_0064_sync 0000000558 2011_09_26 2011_09_26_drive_0064_sync 0000000560 2011_09_26 2011_09_26_drive_0064_sync 0000000562 2011_09_26 2011_09_26_drive_0064_sync 0000000565 2011_09_26 2011_09_26_drive_0064_sync 0000000568 2011_09_28 2011_09_28_drive_0043_sync 0000000008 2011_09_28 2011_09_28_drive_0043_sync 0000000016 2011_09_28 2011_09_28_drive_0043_sync 0000000027 2011_09_28 2011_09_28_drive_0043_sync 0000000037 2011_09_28 2011_09_28_drive_0043_sync 0000000045 2011_09_28 2011_09_28_drive_0043_sync 0000000054 2011_09_28 2011_09_28_drive_0043_sync 0000000064 2011_09_28 2011_09_28_drive_0043_sync 0000000071 2011_09_28 2011_09_28_drive_0043_sync 0000000078 2011_09_28 2011_09_28_drive_0043_sync 0000000085 2011_09_28 2011_09_28_drive_0043_sync 0000000092 2011_09_28 2011_09_28_drive_0043_sync 0000000099 2011_09_28 2011_09_28_drive_0043_sync 0000000106 2011_09_28 2011_09_28_drive_0043_sync 0000000112 2011_09_28 2011_09_28_drive_0043_sync 0000000119 2011_09_28 2011_09_28_drive_0043_sync 0000000126 2011_09_28 2011_09_28_drive_0043_sync 0000000133 2011_09_26 2011_09_26_drive_0061_sync 0000000017 2011_09_26 2011_09_26_drive_0061_sync 0000000019 2011_09_26 2011_09_26_drive_0061_sync 0000000021 2011_09_26 2011_09_26_drive_0061_sync 0000000023 2011_09_26 2011_09_26_drive_0061_sync 0000000025 2011_09_26 2011_09_26_drive_0061_sync 0000000027 2011_09_26 2011_09_26_drive_0061_sync 0000000029 2011_09_26 2011_09_26_drive_0061_sync 0000000031 2011_09_26 2011_09_26_drive_0061_sync 0000000033 2011_09_26 2011_09_26_drive_0061_sync 0000000035 2011_09_26 2011_09_26_drive_0061_sync 0000000037 2011_09_26 2011_09_26_drive_0061_sync 0000000039 2011_09_26 2011_09_26_drive_0061_sync 0000000041 2011_09_26 2011_09_26_drive_0061_sync 0000000043 2011_09_26 2011_09_26_drive_0061_sync 0000000045 2011_09_26 2011_09_26_drive_0061_sync 0000000047 2011_09_26 2011_09_26_drive_0061_sync 0000000049 2011_09_26 2011_09_26_drive_0061_sync 0000000051 2011_09_26 2011_09_26_drive_0061_sync 0000000053 2011_09_26 2011_09_26_drive_0061_sync 0000000055 2011_09_26 2011_09_26_drive_0061_sync 0000000057 2011_09_26 2011_09_26_drive_0061_sync 0000000059 2011_09_26 2011_09_26_drive_0061_sync 0000000061 2011_09_26 2011_09_26_drive_0061_sync 0000000063 2011_09_26 2011_09_26_drive_0061_sync 0000000065 2011_09_26 2011_09_26_drive_0061_sync 0000000067 2011_09_26 2011_09_26_drive_0061_sync 0000000069 2011_09_26 2011_09_26_drive_0061_sync 0000000071 2011_09_26 2011_09_26_drive_0061_sync 0000000073 2011_09_26 2011_09_26_drive_0061_sync 0000000075 2011_09_26 2011_09_26_drive_0061_sync 0000000077 2011_09_26 2011_09_26_drive_0061_sync 0000000079 2011_09_26 2011_09_26_drive_0061_sync 0000000081 2011_09_26 2011_09_26_drive_0061_sync 0000000083 2011_09_26 2011_09_26_drive_0061_sync 0000000085 2011_09_26 2011_09_26_drive_0061_sync 0000000087 2011_09_26 2011_09_26_drive_0061_sync 0000000089 2011_09_26 2011_09_26_drive_0061_sync 0000000091 2011_09_26 2011_09_26_drive_0061_sync 0000000093 2011_09_26 2011_09_26_drive_0061_sync 0000000095 2011_09_26 2011_09_26_drive_0061_sync 0000000097 2011_09_26 2011_09_26_drive_0061_sync 0000000099 2011_09_26 2011_09_26_drive_0061_sync 0000000101 2011_09_26 2011_09_26_drive_0061_sync 0000000103 2011_09_26 2011_09_26_drive_0061_sync 0000000105 2011_09_26 2011_09_26_drive_0061_sync 0000000107 2011_09_26 2011_09_26_drive_0061_sync 0000000109 2011_09_26 2011_09_26_drive_0061_sync 0000000111 2011_09_26 2011_09_26_drive_0061_sync 0000000113 2011_09_26 2011_09_26_drive_0061_sync 0000000115 2011_09_26 2011_09_26_drive_0061_sync 0000000117 2011_09_26 2011_09_26_drive_0061_sync 0000000119 2011_09_26 2011_09_26_drive_0061_sync 0000000121 2011_09_26 2011_09_26_drive_0061_sync 0000000123 2011_09_26 2011_09_26_drive_0061_sync 0000000125 2011_09_26 2011_09_26_drive_0061_sync 0000000127 2011_09_26 2011_09_26_drive_0061_sync 0000000129 2011_09_26 2011_09_26_drive_0061_sync 0000000131 2011_09_26 2011_09_26_drive_0061_sync 0000000133 2011_09_26 2011_09_26_drive_0061_sync 0000000135 2011_09_26 2011_09_26_drive_0061_sync 0000000137 2011_09_26 2011_09_26_drive_0061_sync 0000000139 2011_09_26 2011_09_26_drive_0061_sync 0000000141 2011_09_26 2011_09_26_drive_0061_sync 0000000143 2011_09_26 2011_09_26_drive_0061_sync 0000000145 2011_09_26 2011_09_26_drive_0061_sync 0000000147 2011_09_26 2011_09_26_drive_0061_sync 0000000149 2011_09_26 2011_09_26_drive_0061_sync 0000000151 2011_09_26 2011_09_26_drive_0061_sync 0000000153 2011_09_26 2011_09_26_drive_0061_sync 0000000155 2011_09_26 2011_09_26_drive_0061_sync 0000000157 2011_09_26 2011_09_26_drive_0061_sync 0000000159 2011_09_26 2011_09_26_drive_0061_sync 0000000161 2011_09_26 2011_09_26_drive_0061_sync 0000000163 2011_09_26 2011_09_26_drive_0061_sync 0000000165 2011_09_26 2011_09_26_drive_0061_sync 0000000167 2011_09_26 2011_09_26_drive_0061_sync 0000000169 2011_09_26 2011_09_26_drive_0061_sync 0000000171 2011_09_26 2011_09_26_drive_0061_sync 0000000173 2011_09_26 2011_09_26_drive_0061_sync 0000000175 2011_09_26 2011_09_26_drive_0061_sync 0000000177 2011_09_26 2011_09_26_drive_0061_sync 0000000179 2011_09_26 2011_09_26_drive_0061_sync 0000000181 2011_09_26 2011_09_26_drive_0061_sync 0000000183 2011_09_26 2011_09_26_drive_0061_sync 0000000185 2011_09_26 2011_09_26_drive_0061_sync 0000000187 2011_09_26 2011_09_26_drive_0061_sync 0000000189 2011_09_26 2011_09_26_drive_0061_sync 0000000191 2011_09_26 2011_09_26_drive_0061_sync 0000000193 2011_09_26 2011_09_26_drive_0061_sync 0000000195 2011_09_26 2011_09_26_drive_0061_sync 0000000197 2011_09_26 2011_09_26_drive_0061_sync 0000000199 2011_09_26 2011_09_26_drive_0061_sync 0000000201 2011_09_26 2011_09_26_drive_0061_sync 0000000203 2011_09_26 2011_09_26_drive_0061_sync 0000000205 2011_09_26 2011_09_26_drive_0061_sync 0000000207 2011_09_26 2011_09_26_drive_0061_sync 0000000209 2011_09_26 2011_09_26_drive_0061_sync 0000000211 2011_09_26 2011_09_26_drive_0061_sync 0000000213 2011_09_26 2011_09_26_drive_0061_sync 0000000215 2011_09_26 2011_09_26_drive_0061_sync 0000000217 2011_09_26 2011_09_26_drive_0061_sync 0000000219 2011_09_26 2011_09_26_drive_0061_sync 0000000221 2011_09_26 2011_09_26_drive_0061_sync 0000000223 2011_09_26 2011_09_26_drive_0061_sync 0000000225 2011_09_26 2011_09_26_drive_0061_sync 0000000227 2011_09_26 2011_09_26_drive_0061_sync 0000000229 2011_09_26 2011_09_26_drive_0061_sync 0000000231 2011_09_26 2011_09_26_drive_0061_sync 0000000233 2011_09_26 2011_09_26_drive_0061_sync 0000000235 2011_09_26 2011_09_26_drive_0061_sync 0000000237 2011_09_26 2011_09_26_drive_0061_sync 0000000239 2011_09_26 2011_09_26_drive_0061_sync 0000000241 2011_09_26 2011_09_26_drive_0061_sync 0000000243 2011_09_26 2011_09_26_drive_0061_sync 0000000245 2011_09_26 2011_09_26_drive_0061_sync 0000000246 2011_09_26 2011_09_26_drive_0061_sync 0000000248 2011_09_26 2011_09_26_drive_0061_sync 0000000250 2011_09_26 2011_09_26_drive_0061_sync 0000000252 2011_09_26 2011_09_26_drive_0061_sync 0000000254 2011_09_26 2011_09_26_drive_0061_sync 0000000256 2011_09_26 2011_09_26_drive_0061_sync 0000000257 2011_09_26 2011_09_26_drive_0061_sync 0000000258 2011_09_26 2011_09_26_drive_0061_sync 0000000260 2011_09_26 2011_09_26_drive_0061_sync 0000000262 2011_09_26 2011_09_26_drive_0061_sync 0000000264 2011_09_26 2011_09_26_drive_0061_sync 0000000266 2011_09_26 2011_09_26_drive_0061_sync 0000000267 2011_09_26 2011_09_26_drive_0061_sync 0000000269 2011_09_26 2011_09_26_drive_0061_sync 0000000270 2011_09_26 2011_09_26_drive_0061_sync 0000000272 2011_09_26 2011_09_26_drive_0061_sync 0000000273 2011_09_26 2011_09_26_drive_0061_sync 0000000275 2011_09_26 2011_09_26_drive_0061_sync 0000000277 2011_09_26 2011_09_26_drive_0061_sync 0000000279 2011_09_26 2011_09_26_drive_0061_sync 0000000281 2011_09_26 2011_09_26_drive_0061_sync 0000000283 2011_09_26 2011_09_26_drive_0061_sync 0000000285 2011_09_26 2011_09_26_drive_0061_sync 0000000287 2011_09_26 2011_09_26_drive_0061_sync 0000000289 2011_09_26 2011_09_26_drive_0061_sync 0000000291 2011_09_26 2011_09_26_drive_0061_sync 0000000293 2011_09_26 2011_09_26_drive_0061_sync 0000000295 2011_09_26 2011_09_26_drive_0061_sync 0000000297 2011_09_26 2011_09_26_drive_0061_sync 0000000299 2011_09_26 2011_09_26_drive_0061_sync 0000000301 2011_09_26 2011_09_26_drive_0061_sync 0000000303 2011_09_26 2011_09_26_drive_0061_sync 0000000305 2011_09_26 2011_09_26_drive_0061_sync 0000000307 2011_09_26 2011_09_26_drive_0061_sync 0000000309 2011_09_26 2011_09_26_drive_0061_sync 0000000311 2011_09_26 2011_09_26_drive_0061_sync 0000000313 2011_09_26 2011_09_26_drive_0061_sync 0000000315 2011_09_26 2011_09_26_drive_0061_sync 0000000317 2011_09_26 2011_09_26_drive_0061_sync 0000000319 2011_09_26 2011_09_26_drive_0061_sync 0000000321 2011_09_26 2011_09_26_drive_0061_sync 0000000323 2011_09_26 2011_09_26_drive_0061_sync 0000000325 2011_09_26 2011_09_26_drive_0061_sync 0000000327 2011_09_26 2011_09_26_drive_0061_sync 0000000329 2011_09_26 2011_09_26_drive_0061_sync 0000000331 2011_09_26 2011_09_26_drive_0061_sync 0000000333 2011_09_26 2011_09_26_drive_0061_sync 0000000335 2011_09_26 2011_09_26_drive_0061_sync 0000000337 2011_09_26 2011_09_26_drive_0061_sync 0000000339 2011_09_26 2011_09_26_drive_0061_sync 0000000341 2011_09_26 2011_09_26_drive_0061_sync 0000000343 2011_09_26 2011_09_26_drive_0061_sync 0000000345 2011_09_26 2011_09_26_drive_0061_sync 0000000347 2011_09_26 2011_09_26_drive_0061_sync 0000000349 2011_09_26 2011_09_26_drive_0061_sync 0000000351 2011_09_26 2011_09_26_drive_0061_sync 0000000353 2011_09_26 2011_09_26_drive_0061_sync 0000000355 2011_09_26 2011_09_26_drive_0061_sync 0000000357 2011_09_26 2011_09_26_drive_0061_sync 0000000359 2011_09_26 2011_09_26_drive_0061_sync 0000000361 2011_09_26 2011_09_26_drive_0061_sync 0000000363 2011_09_26 2011_09_26_drive_0061_sync 0000000365 2011_09_26 2011_09_26_drive_0061_sync 0000000367 2011_09_26 2011_09_26_drive_0061_sync 0000000369 2011_09_26 2011_09_26_drive_0061_sync 0000000371 2011_09_26 2011_09_26_drive_0061_sync 0000000373 2011_09_26 2011_09_26_drive_0061_sync 0000000375 2011_09_26 2011_09_26_drive_0061_sync 0000000377 2011_09_26 2011_09_26_drive_0061_sync 0000000379 2011_09_26 2011_09_26_drive_0061_sync 0000000381 2011_09_26 2011_09_26_drive_0061_sync 0000000383 2011_09_26 2011_09_26_drive_0061_sync 0000000385 2011_09_26 2011_09_26_drive_0061_sync 0000000387 2011_09_26 2011_09_26_drive_0061_sync 0000000389 2011_09_26 2011_09_26_drive_0061_sync 0000000391 2011_09_26 2011_09_26_drive_0061_sync 0000000393 2011_09_26 2011_09_26_drive_0061_sync 0000000395 2011_09_26 2011_09_26_drive_0061_sync 0000000397 2011_09_26 2011_09_26_drive_0061_sync 0000000399 2011_09_26 2011_09_26_drive_0061_sync 0000000401 2011_09_26 2011_09_26_drive_0061_sync 0000000403 2011_09_26 2011_09_26_drive_0061_sync 0000000405 2011_09_26 2011_09_26_drive_0061_sync 0000000407 2011_09_26 2011_09_26_drive_0061_sync 0000000409 2011_09_26 2011_09_26_drive_0061_sync 0000000411 2011_09_26 2011_09_26_drive_0061_sync 0000000413 2011_09_26 2011_09_26_drive_0061_sync 0000000415 2011_09_26 2011_09_26_drive_0061_sync 0000000417 2011_09_26 2011_09_26_drive_0061_sync 0000000419 2011_09_26 2011_09_26_drive_0061_sync 0000000421 2011_09_26 2011_09_26_drive_0061_sync 0000000423 2011_09_26 2011_09_26_drive_0061_sync 0000000425 2011_09_26 2011_09_26_drive_0061_sync 0000000427 2011_09_26 2011_09_26_drive_0061_sync 0000000429 2011_09_26 2011_09_26_drive_0061_sync 0000000430 2011_09_26 2011_09_26_drive_0061_sync 0000000431 2011_09_26 2011_09_26_drive_0061_sync 0000000432 2011_09_26 2011_09_26_drive_0061_sync 0000000433 2011_09_26 2011_09_26_drive_0061_sync 0000000434 2011_09_26 2011_09_26_drive_0061_sync 0000000435 2011_09_26 2011_09_26_drive_0061_sync 0000000436 2011_09_26 2011_09_26_drive_0061_sync 0000000438 2011_09_26 2011_09_26_drive_0061_sync 0000000440 2011_09_26 2011_09_26_drive_0061_sync 0000000442 2011_09_26 2011_09_26_drive_0061_sync 0000000444 2011_09_26 2011_09_26_drive_0061_sync 0000000446 2011_09_26 2011_09_26_drive_0061_sync 0000000448 2011_09_26 2011_09_26_drive_0061_sync 0000000450 2011_09_26 2011_09_26_drive_0061_sync 0000000452 2011_09_26 2011_09_26_drive_0061_sync 0000000454 2011_09_26 2011_09_26_drive_0061_sync 0000000456 2011_09_26 2011_09_26_drive_0061_sync 0000000458 2011_09_26 2011_09_26_drive_0061_sync 0000000460 2011_09_26 2011_09_26_drive_0061_sync 0000000462 2011_09_26 2011_09_26_drive_0061_sync 0000000464 2011_09_26 2011_09_26_drive_0061_sync 0000000466 2011_09_26 2011_09_26_drive_0061_sync 0000000468 2011_09_26 2011_09_26_drive_0061_sync 0000000470 2011_09_26 2011_09_26_drive_0061_sync 0000000472 2011_09_26 2011_09_26_drive_0061_sync 0000000474 2011_09_26 2011_09_26_drive_0061_sync 0000000476 2011_09_26 2011_09_26_drive_0061_sync 0000000478 2011_09_26 2011_09_26_drive_0061_sync 0000000480 2011_09_26 2011_09_26_drive_0061_sync 0000000482 2011_09_26 2011_09_26_drive_0061_sync 0000000484 2011_09_26 2011_09_26_drive_0061_sync 0000000486 2011_09_26 2011_09_26_drive_0061_sync 0000000488 2011_09_26 2011_09_26_drive_0061_sync 0000000490 2011_09_26 2011_09_26_drive_0061_sync 0000000493 2011_09_26 2011_09_26_drive_0061_sync 0000000495 2011_09_26 2011_09_26_drive_0061_sync 0000000497 2011_09_26 2011_09_26_drive_0061_sync 0000000499 2011_09_26 2011_09_26_drive_0061_sync 0000000501 2011_09_26 2011_09_26_drive_0061_sync 0000000503 2011_09_26 2011_09_26_drive_0061_sync 0000000505 2011_09_26 2011_09_26_drive_0061_sync 0000000507 2011_09_26 2011_09_26_drive_0061_sync 0000000509 2011_09_26 2011_09_26_drive_0061_sync 0000000511 2011_09_26 2011_09_26_drive_0061_sync 0000000513 2011_09_26 2011_09_26_drive_0061_sync 0000000515 2011_09_26 2011_09_26_drive_0061_sync 0000000517 2011_09_26 2011_09_26_drive_0061_sync 0000000519 2011_09_26 2011_09_26_drive_0061_sync 0000000521 2011_09_26 2011_09_26_drive_0061_sync 0000000523 2011_09_26 2011_09_26_drive_0061_sync 0000000525 2011_09_26 2011_09_26_drive_0061_sync 0000000527 2011_09_26 2011_09_26_drive_0061_sync 0000000529 2011_09_26 2011_09_26_drive_0061_sync 0000000531 2011_09_26 2011_09_26_drive_0061_sync 0000000533 2011_09_26 2011_09_26_drive_0061_sync 0000000535 2011_09_26 2011_09_26_drive_0061_sync 0000000537 2011_09_26 2011_09_26_drive_0061_sync 0000000539 2011_09_26 2011_09_26_drive_0061_sync 0000000541 2011_09_26 2011_09_26_drive_0061_sync 0000000543 2011_09_26 2011_09_26_drive_0061_sync 0000000545 2011_09_26 2011_09_26_drive_0061_sync 0000000547 2011_09_26 2011_09_26_drive_0061_sync 0000000549 2011_09_26 2011_09_26_drive_0061_sync 0000000551 2011_09_26 2011_09_26_drive_0061_sync 0000000554 2011_09_26 2011_09_26_drive_0052_sync 0000000007 2011_09_26 2011_09_26_drive_0052_sync 0000000014 2011_09_26 2011_09_26_drive_0052_sync 0000000021 2011_09_26 2011_09_26_drive_0052_sync 0000000031 2011_09_26 2011_09_26_drive_0113_sync 0000000003 2011_09_26 2011_09_26_drive_0113_sync 0000000006 2011_09_26 2011_09_26_drive_0113_sync 0000000009 2011_09_26 2011_09_26_drive_0113_sync 0000000062 2011_09_26 2011_09_26_drive_0113_sync 0000000065 2011_09_26 2011_09_26_drive_0020_sync 0000000002 2011_09_26 2011_09_26_drive_0020_sync 0000000004 2011_09_26 2011_09_26_drive_0020_sync 0000000007 2011_09_26 2011_09_26_drive_0020_sync 0000000010 2011_09_26 2011_09_26_drive_0020_sync 0000000013 2011_09_26 2011_09_26_drive_0020_sync 0000000017 2011_09_26 2011_09_26_drive_0020_sync 0000000021 2011_09_26 2011_09_26_drive_0020_sync 0000000025 2011_09_26 2011_09_26_drive_0020_sync 0000000030 2011_09_26 2011_09_26_drive_0020_sync 0000000038 2011_09_26 2011_09_26_drive_0020_sync 0000000058 2011_09_26 2011_09_26_drive_0020_sync 0000000066 2011_09_26 2011_09_26_drive_0020_sync 0000000073 2011_09_26 2011_09_26_drive_0020_sync 0000000080 2011_09_26 2011_09_26_drive_0060_sync 0000000004 2011_09_26 2011_09_26_drive_0060_sync 0000000008 2011_09_26 2011_09_26_drive_0060_sync 0000000011 2011_09_26 2011_09_26_drive_0060_sync 0000000014 2011_09_26 2011_09_26_drive_0060_sync 0000000018 2011_09_26 2011_09_26_drive_0060_sync 0000000023 2011_09_26 2011_09_26_drive_0060_sync 0000000028 2011_09_26 2011_09_26_drive_0060_sync 0000000033 2011_09_26 2011_09_26_drive_0060_sync 0000000037 2011_09_26 2011_09_26_drive_0060_sync 0000000041 2011_09_26 2011_09_26_drive_0060_sync 0000000045 2011_09_26 2011_09_26_drive_0060_sync 0000000048 2011_09_26 2011_09_26_drive_0060_sync 0000000051 2011_09_26 2011_09_26_drive_0060_sync 0000000054 2011_09_26 2011_09_26_drive_0060_sync 0000000057 2011_09_26 2011_09_26_drive_0060_sync 0000000060 2011_09_26 2011_09_26_drive_0060_sync 0000000063 2011_09_26 2011_09_26_drive_0060_sync 0000000069 2011_09_28 2011_09_28_drive_0034_sync 0000000012 2011_09_28 2011_09_28_drive_0034_sync 0000000024 2011_09_28 2011_09_28_drive_0034_sync 0000000037 2011_09_28 2011_09_28_drive_0156_sync 0000000015 2011_09_26 2011_09_26_drive_0046_sync 0000000002 2011_09_26 2011_09_26_drive_0046_sync 0000000004 2011_09_26 2011_09_26_drive_0046_sync 0000000006 2011_09_26 2011_09_26_drive_0046_sync 0000000009 2011_09_26 2011_09_26_drive_0046_sync 0000000011 2011_09_26 2011_09_26_drive_0046_sync 0000000013 2011_09_26 2011_09_26_drive_0046_sync 0000000015 2011_09_26 2011_09_26_drive_0046_sync 0000000017 2011_09_26 2011_09_26_drive_0046_sync 0000000056 2011_09_26 2011_09_26_drive_0046_sync 0000000058 2011_09_26 2011_09_26_drive_0046_sync 0000000060 2011_09_26 2011_09_26_drive_0046_sync 0000000062 2011_09_26 2011_09_26_drive_0046_sync 0000000064 2011_09_26 2011_09_26_drive_0046_sync 0000000066 2011_09_26 2011_09_26_drive_0046_sync 0000000068 2011_09_26 2011_09_26_drive_0046_sync 0000000070 2011_09_26 2011_09_26_drive_0046_sync 0000000072 2011_09_26 2011_09_26_drive_0046_sync 0000000096 2011_09_26 2011_09_26_drive_0046_sync 0000000098 2011_09_26 2011_09_26_drive_0046_sync 0000000100 2011_09_26 2011_09_26_drive_0046_sync 0000000102 2011_09_26 2011_09_26_drive_0046_sync 0000000104 2011_09_26 2011_09_26_drive_0046_sync 0000000106 2011_09_26 2011_09_26_drive_0046_sync 0000000108 2011_09_26 2011_09_26_drive_0046_sync 0000000110 2011_09_26 2011_09_26_drive_0046_sync 0000000112 2011_09_26 2011_09_26_drive_0046_sync 0000000114 2011_09_26 2011_09_26_drive_0046_sync 0000000116 2011_09_28 2011_09_28_drive_0138_sync 0000000022 2011_09_28 2011_09_28_drive_0138_sync 0000000042 2011_09_28 2011_09_28_drive_0089_sync 0000000008 2011_09_28 2011_09_28_drive_0089_sync 0000000016 2011_09_28 2011_09_28_drive_0089_sync 0000000024 2011_09_28 2011_09_28_drive_0089_sync 0000000033 2011_09_28 2011_09_28_drive_0045_sync 0000000002 2011_09_28 2011_09_28_drive_0045_sync 0000000004 2011_09_28 2011_09_28_drive_0045_sync 0000000006 2011_09_28 2011_09_28_drive_0045_sync 0000000008 2011_09_28 2011_09_28_drive_0045_sync 0000000010 2011_09_28 2011_09_28_drive_0045_sync 0000000012 2011_09_28 2011_09_28_drive_0045_sync 0000000014 2011_09_28 2011_09_28_drive_0045_sync 0000000016 2011_09_28 2011_09_28_drive_0045_sync 0000000018 2011_09_28 2011_09_28_drive_0045_sync 0000000020 2011_09_28 2011_09_28_drive_0045_sync 0000000022 2011_09_28 2011_09_28_drive_0045_sync 0000000024 2011_09_28 2011_09_28_drive_0045_sync 0000000026 2011_09_28 2011_09_28_drive_0045_sync 0000000028 2011_09_28 2011_09_28_drive_0045_sync 0000000030 2011_09_28 2011_09_28_drive_0045_sync 0000000032 2011_09_28 2011_09_28_drive_0045_sync 0000000034 2011_09_28 2011_09_28_drive_0045_sync 0000000036 2011_09_28 2011_09_28_drive_0045_sync 0000000038 2011_09_28 2011_09_28_drive_0045_sync 0000000040 2011_09_28 2011_09_28_drive_0045_sync 0000000042 2011_09_29 2011_09_29_drive_0004_sync 0000000025 2011_09_29 2011_09_29_drive_0004_sync 0000000026 2011_09_29 2011_09_29_drive_0004_sync 0000000027 2011_09_29 2011_09_29_drive_0004_sync 0000000028 2011_09_29 2011_09_29_drive_0004_sync 0000000029 2011_09_29 2011_09_29_drive_0004_sync 0000000030 2011_09_29 2011_09_29_drive_0004_sync 0000000031 2011_09_29 2011_09_29_drive_0004_sync 0000000032 2011_09_29 2011_09_29_drive_0004_sync 0000000033 2011_09_29 2011_09_29_drive_0004_sync 0000000034 2011_09_29 2011_09_29_drive_0004_sync 0000000035 2011_09_29 2011_09_29_drive_0004_sync 0000000036 2011_09_29 2011_09_29_drive_0004_sync 0000000037 2011_09_29 2011_09_29_drive_0004_sync 0000000038 2011_09_29 2011_09_29_drive_0004_sync 0000000054 2011_09_29 2011_09_29_drive_0004_sync 0000000056 2011_09_29 2011_09_29_drive_0004_sync 0000000058 2011_09_29 2011_09_29_drive_0004_sync 0000000060 2011_09_29 2011_09_29_drive_0004_sync 0000000062 2011_09_29 2011_09_29_drive_0004_sync 0000000064 2011_09_29 2011_09_29_drive_0004_sync 0000000066 2011_09_29 2011_09_29_drive_0004_sync 0000000068 2011_09_29 2011_09_29_drive_0004_sync 0000000070 2011_09_29 2011_09_29_drive_0004_sync 0000000072 2011_09_29 2011_09_29_drive_0004_sync 0000000073 2011_09_29 2011_09_29_drive_0004_sync 0000000074 2011_09_29 2011_09_29_drive_0004_sync 0000000075 2011_09_29 2011_09_29_drive_0004_sync 0000000076 2011_09_29 2011_09_29_drive_0004_sync 0000000077 2011_09_29 2011_09_29_drive_0004_sync 0000000078 2011_09_29 2011_09_29_drive_0004_sync 0000000079 2011_09_29 2011_09_29_drive_0004_sync 0000000080 2011_09_29 2011_09_29_drive_0004_sync 0000000081 2011_09_29 2011_09_29_drive_0004_sync 0000000083 2011_09_29 2011_09_29_drive_0004_sync 0000000085 2011_09_29 2011_09_29_drive_0004_sync 0000000087 2011_09_29 2011_09_29_drive_0004_sync 0000000089 2011_09_29 2011_09_29_drive_0004_sync 0000000090 2011_09_29 2011_09_29_drive_0004_sync 0000000091 2011_09_29 2011_09_29_drive_0004_sync 0000000092 2011_09_29 2011_09_29_drive_0004_sync 0000000093 2011_09_29 2011_09_29_drive_0004_sync 0000000095 2011_09_29 2011_09_29_drive_0004_sync 0000000097 2011_09_29 2011_09_29_drive_0004_sync 0000000099 2011_09_29 2011_09_29_drive_0004_sync 0000000102 2011_09_29 2011_09_29_drive_0004_sync 0000000105 2011_09_29 2011_09_29_drive_0004_sync 0000000108 2011_09_29 2011_09_29_drive_0004_sync 0000000112 2011_09_29 2011_09_29_drive_0004_sync 0000000116 2011_09_29 2011_09_29_drive_0004_sync 0000000121 2011_09_29 2011_09_29_drive_0004_sync 0000000128 2011_09_29 2011_09_29_drive_0004_sync 0000000137 2011_09_29 2011_09_29_drive_0004_sync 0000000147 2011_09_29 2011_09_29_drive_0004_sync 0000000156 2011_09_29 2011_09_29_drive_0004_sync 0000000161 2011_09_29 2011_09_29_drive_0004_sync 0000000163 2011_09_29 2011_09_29_drive_0004_sync 0000000166 2011_09_29 2011_09_29_drive_0004_sync 0000000172 2011_09_29 2011_09_29_drive_0004_sync 0000000176 2011_09_29 2011_09_29_drive_0004_sync 0000000180 2011_09_29 2011_09_29_drive_0004_sync 0000000182 2011_09_29 2011_09_29_drive_0004_sync 0000000184 2011_09_29 2011_09_29_drive_0004_sync 0000000193 2011_09_29 2011_09_29_drive_0004_sync 0000000195 2011_09_29 2011_09_29_drive_0004_sync 0000000200 2011_09_29 2011_09_29_drive_0004_sync 0000000206 2011_09_29 2011_09_29_drive_0004_sync 0000000212 2011_09_29 2011_09_29_drive_0004_sync 0000000218 2011_09_29 2011_09_29_drive_0004_sync 0000000222 2011_09_29 2011_09_29_drive_0004_sync 0000000225 2011_09_29 2011_09_29_drive_0004_sync 0000000236 2011_09_29 2011_09_29_drive_0004_sync 0000000239 2011_09_29 2011_09_29_drive_0004_sync 0000000244 2011_09_29 2011_09_29_drive_0004_sync 0000000248 2011_09_29 2011_09_29_drive_0004_sync 0000000251 2011_09_29 2011_09_29_drive_0004_sync 0000000253 2011_09_29 2011_09_29_drive_0004_sync 0000000255 2011_09_29 2011_09_29_drive_0004_sync 0000000257 2011_09_29 2011_09_29_drive_0004_sync 0000000259 2011_09_29 2011_09_29_drive_0004_sync 0000000261 2011_09_29 2011_09_29_drive_0004_sync 0000000263 2011_09_29 2011_09_29_drive_0004_sync 0000000267 2011_09_29 2011_09_29_drive_0004_sync 0000000271 2011_09_29 2011_09_29_drive_0004_sync 0000000273 2011_09_29 2011_09_29_drive_0004_sync 0000000275 2011_09_29 2011_09_29_drive_0004_sync 0000000277 2011_09_29 2011_09_29_drive_0004_sync 0000000279 2011_09_29 2011_09_29_drive_0004_sync 0000000281 2011_09_29 2011_09_29_drive_0004_sync 0000000284 2011_09_29 2011_09_29_drive_0004_sync 0000000287 2011_09_29 2011_09_29_drive_0004_sync 0000000289 2011_09_29 2011_09_29_drive_0004_sync 0000000291 2011_09_29 2011_09_29_drive_0004_sync 0000000294 2011_09_29 2011_09_29_drive_0004_sync 0000000297 2011_09_29 2011_09_29_drive_0004_sync 0000000299 2011_09_29 2011_09_29_drive_0004_sync 0000000301 2011_09_29 2011_09_29_drive_0004_sync 0000000303 2011_09_29 2011_09_29_drive_0004_sync 0000000311 2011_09_29 2011_09_29_drive_0004_sync 0000000313 2011_09_29 2011_09_29_drive_0004_sync 0000000315 2011_09_29 2011_09_29_drive_0004_sync 0000000317 2011_09_29 2011_09_29_drive_0004_sync 0000000324 2011_09_29 2011_09_29_drive_0004_sync 0000000328 2011_09_28 2011_09_28_drive_0047_sync 0000000002 2011_09_28 2011_09_28_drive_0047_sync 0000000005 2011_09_28 2011_09_28_drive_0047_sync 0000000007 2011_09_28 2011_09_28_drive_0047_sync 0000000010 2011_09_28 2011_09_28_drive_0047_sync 0000000013 2011_09_28 2011_09_28_drive_0047_sync 0000000016 2011_09_28 2011_09_28_drive_0047_sync 0000000019 2011_09_28 2011_09_28_drive_0047_sync 0000000022 2011_09_28 2011_09_28_drive_0047_sync 0000000025 2011_09_28 2011_09_28_drive_0047_sync 0000000028 2011_09_26 2011_09_26_drive_0029_sync 0000000001 2011_09_26 2011_09_26_drive_0029_sync 0000000002 2011_09_26 2011_09_26_drive_0029_sync 0000000003 2011_09_26 2011_09_26_drive_0029_sync 0000000004 2011_09_26 2011_09_26_drive_0029_sync 0000000005 2011_09_26 2011_09_26_drive_0029_sync 0000000006 2011_09_26 2011_09_26_drive_0029_sync 0000000007 2011_09_26 2011_09_26_drive_0029_sync 0000000008 2011_09_26 2011_09_26_drive_0029_sync 0000000009 2011_09_26 2011_09_26_drive_0029_sync 0000000010 2011_09_26 2011_09_26_drive_0029_sync 0000000011 2011_09_26 2011_09_26_drive_0029_sync 0000000012 2011_09_26 2011_09_26_drive_0029_sync 0000000013 2011_09_26 2011_09_26_drive_0029_sync 0000000014 2011_09_26 2011_09_26_drive_0029_sync 0000000015 2011_09_26 2011_09_26_drive_0029_sync 0000000016 2011_09_26 2011_09_26_drive_0029_sync 0000000118 2011_09_26 2011_09_26_drive_0029_sync 0000000122 2011_09_26 2011_09_26_drive_0029_sync 0000000125 2011_09_26 2011_09_26_drive_0029_sync 0000000128 2011_09_26 2011_09_26_drive_0029_sync 0000000132 2011_09_26 2011_09_26_drive_0029_sync 0000000136 2011_09_26 2011_09_26_drive_0029_sync 0000000140 2011_09_26 2011_09_26_drive_0029_sync 0000000144 2011_09_26 2011_09_26_drive_0029_sync 0000000148 2011_09_26 2011_09_26_drive_0029_sync 0000000151 2011_09_26 2011_09_26_drive_0029_sync 0000000154 2011_09_26 2011_09_26_drive_0029_sync 0000000157 2011_09_26 2011_09_26_drive_0029_sync 0000000159 2011_09_26 2011_09_26_drive_0029_sync 0000000161 2011_09_26 2011_09_26_drive_0029_sync 0000000163 2011_09_26 2011_09_26_drive_0029_sync 0000000165 2011_09_26 2011_09_26_drive_0029_sync 0000000167 2011_09_26 2011_09_26_drive_0029_sync 0000000169 2011_09_26 2011_09_26_drive_0029_sync 0000000171 2011_09_26 2011_09_26_drive_0001_sync 0000000001 2011_09_26 2011_09_26_drive_0001_sync 0000000002 2011_09_26 2011_09_26_drive_0001_sync 0000000003 2011_09_26 2011_09_26_drive_0001_sync 0000000004 2011_09_26 2011_09_26_drive_0001_sync 0000000005 2011_09_26 2011_09_26_drive_0001_sync 0000000006 2011_09_26 2011_09_26_drive_0001_sync 0000000007 2011_09_26 2011_09_26_drive_0001_sync 0000000008 2011_09_26 2011_09_26_drive_0001_sync 0000000009 2011_09_26 2011_09_26_drive_0001_sync 0000000010 2011_09_26 2011_09_26_drive_0001_sync 0000000011 2011_09_26 2011_09_26_drive_0001_sync 0000000012 2011_09_26 2011_09_26_drive_0001_sync 0000000013 2011_09_26 2011_09_26_drive_0001_sync 0000000014 2011_09_26 2011_09_26_drive_0001_sync 0000000015 2011_09_26 2011_09_26_drive_0001_sync 0000000016 2011_09_26 2011_09_26_drive_0001_sync 0000000017 2011_09_26 2011_09_26_drive_0001_sync 0000000018 2011_09_26 2011_09_26_drive_0001_sync 0000000019 2011_09_26 2011_09_26_drive_0001_sync 0000000020 2011_09_26 2011_09_26_drive_0001_sync 0000000021 2011_09_26 2011_09_26_drive_0001_sync 0000000022 2011_09_26 2011_09_26_drive_0001_sync 0000000023 2011_09_26 2011_09_26_drive_0001_sync 0000000024 2011_09_26 2011_09_26_drive_0001_sync 0000000025 2011_09_26 2011_09_26_drive_0001_sync 0000000026 2011_09_26 2011_09_26_drive_0001_sync 0000000027 2011_09_26 2011_09_26_drive_0001_sync 0000000028 2011_09_26 2011_09_26_drive_0001_sync 0000000029 2011_09_26 2011_09_26_drive_0001_sync 0000000030 2011_09_26 2011_09_26_drive_0001_sync 0000000031 2011_09_26 2011_09_26_drive_0001_sync 0000000032 2011_09_26 2011_09_26_drive_0001_sync 0000000033 2011_09_26 2011_09_26_drive_0001_sync 0000000035 2011_09_26 2011_09_26_drive_0001_sync 0000000037 2011_09_26 2011_09_26_drive_0001_sync 0000000039 2011_09_26 2011_09_26_drive_0001_sync 0000000041 2011_09_26 2011_09_26_drive_0001_sync 0000000043 2011_09_26 2011_09_26_drive_0001_sync 0000000045 2011_09_26 2011_09_26_drive_0001_sync 0000000047 2011_09_26 2011_09_26_drive_0001_sync 0000000049 2011_09_26 2011_09_26_drive_0001_sync 0000000051 2011_09_26 2011_09_26_drive_0001_sync 0000000053 2011_09_26 2011_09_26_drive_0001_sync 0000000055 2011_09_26 2011_09_26_drive_0001_sync 0000000057 2011_09_26 2011_09_26_drive_0001_sync 0000000059 2011_09_26 2011_09_26_drive_0001_sync 0000000061 2011_09_26 2011_09_26_drive_0001_sync 0000000064 2011_09_26 2011_09_26_drive_0001_sync 0000000067 2011_09_26 2011_09_26_drive_0001_sync 0000000091 2011_09_26 2011_09_26_drive_0001_sync 0000000101 2011_09_28 2011_09_28_drive_0035_sync 0000000006 2011_09_28 2011_09_28_drive_0035_sync 0000000011 2011_09_28 2011_09_28_drive_0035_sync 0000000016 2011_09_28 2011_09_28_drive_0035_sync 0000000021 2011_09_28 2011_09_28_drive_0035_sync 0000000029 2011_09_28 2011_09_28_drive_0135_sync 0000000008 2011_09_28 2011_09_28_drive_0135_sync 0000000017 2011_09_28 2011_09_28_drive_0135_sync 0000000032 2011_09_28 2011_09_28_drive_0161_sync 0000000014 2011_09_28 2011_09_28_drive_0161_sync 0000000021 2011_09_28 2011_09_28_drive_0161_sync 0000000029 2011_09_28 2011_09_28_drive_0155_sync 0000000008 2011_09_28 2011_09_28_drive_0155_sync 0000000016 2011_09_28 2011_09_28_drive_0155_sync 0000000025 2011_09_28 2011_09_28_drive_0155_sync 0000000037 2011_09_28 2011_09_28_drive_0198_sync 0000000025 2011_09_28 2011_09_28_drive_0198_sync 0000000035 2011_09_28 2011_09_28_drive_0198_sync 0000000041 2011_09_28 2011_09_28_drive_0198_sync 0000000047 2011_09_28 2011_09_28_drive_0198_sync 0000000053 2011_09_28 2011_09_28_drive_0198_sync 0000000059 2011_09_26 2011_09_26_drive_0079_sync 0000000002 2011_09_26 2011_09_26_drive_0079_sync 0000000004 2011_09_26 2011_09_26_drive_0079_sync 0000000006 2011_09_26 2011_09_26_drive_0079_sync 0000000008 2011_09_26 2011_09_26_drive_0079_sync 0000000010 2011_09_28 2011_09_28_drive_0077_sync 0000000013 2011_09_28 2011_09_28_drive_0077_sync 0000000027 2011_09_28 2011_09_28_drive_0208_sync 0000000015 2011_09_28 2011_09_28_drive_0208_sync 0000000030 2011_09_28 2011_09_28_drive_0208_sync 0000000044 2011_09_28 2011_09_28_drive_0167_sync 0000000008 2011_09_28 2011_09_28_drive_0167_sync 0000000016 2011_09_28 2011_09_28_drive_0167_sync 0000000024 2011_09_28 2011_09_28_drive_0167_sync 0000000032 2011_09_28 2011_09_28_drive_0167_sync 0000000044 2011_09_26 2011_09_26_drive_0087_sync 0000000011 2011_09_26 2011_09_26_drive_0087_sync 0000000333 2011_09_26 2011_09_26_drive_0087_sync 0000000336 2011_09_26 2011_09_26_drive_0087_sync 0000000339 2011_09_26 2011_09_26_drive_0087_sync 0000000342 2011_09_26 2011_09_26_drive_0087_sync 0000000345 2011_09_26 2011_09_26_drive_0087_sync 0000000347 2011_09_26 2011_09_26_drive_0087_sync 0000000349 2011_09_26 2011_09_26_drive_0087_sync 0000000351 2011_09_26 2011_09_26_drive_0087_sync 0000000353 2011_09_26 2011_09_26_drive_0087_sync 0000000356 2011_09_26 2011_09_26_drive_0087_sync 0000000359 2011_09_26 2011_09_26_drive_0087_sync 0000000362 2011_09_26 2011_09_26_drive_0087_sync 0000000365 2011_09_26 2011_09_26_drive_0087_sync 0000000368 2011_09_26 2011_09_26_drive_0087_sync 0000000371 2011_09_26 2011_09_26_drive_0087_sync 0000000373 2011_09_26 2011_09_26_drive_0087_sync 0000000375 2011_09_26 2011_09_26_drive_0087_sync 0000000377 2011_09_26 2011_09_26_drive_0087_sync 0000000379 2011_09_26 2011_09_26_drive_0087_sync 0000000381 2011_09_26 2011_09_26_drive_0087_sync 0000000383 2011_09_26 2011_09_26_drive_0087_sync 0000000386 2011_09_26 2011_09_26_drive_0087_sync 0000000389 2011_09_26 2011_09_26_drive_0087_sync 0000000392 2011_09_26 2011_09_26_drive_0087_sync 0000000394 2011_09_26 2011_09_26_drive_0087_sync 0000000396 2011_09_26 2011_09_26_drive_0087_sync 0000000398 2011_09_26 2011_09_26_drive_0087_sync 0000000401 2011_09_26 2011_09_26_drive_0087_sync 0000000404 2011_09_26 2011_09_26_drive_0087_sync 0000000406 2011_09_26 2011_09_26_drive_0087_sync 0000000409 2011_09_26 2011_09_26_drive_0087_sync 0000000411 2011_09_26 2011_09_26_drive_0087_sync 0000000414 2011_09_26 2011_09_26_drive_0087_sync 0000000416 2011_09_26 2011_09_26_drive_0087_sync 0000000419 2011_09_26 2011_09_26_drive_0087_sync 0000000421 2011_09_26 2011_09_26_drive_0087_sync 0000000423 2011_09_26 2011_09_26_drive_0087_sync 0000000426 2011_09_26 2011_09_26_drive_0087_sync 0000000428 2011_09_26 2011_09_26_drive_0087_sync 0000000430 2011_09_26 2011_09_26_drive_0087_sync 0000000432 2011_09_26 2011_09_26_drive_0087_sync 0000000434 2011_09_26 2011_09_26_drive_0087_sync 0000000436 2011_09_26 2011_09_26_drive_0087_sync 0000000438 2011_09_26 2011_09_26_drive_0087_sync 0000000440 2011_09_26 2011_09_26_drive_0087_sync 0000000442 2011_09_26 2011_09_26_drive_0087_sync 0000000444 2011_09_26 2011_09_26_drive_0087_sync 0000000446 2011_09_26 2011_09_26_drive_0087_sync 0000000448 2011_09_26 2011_09_26_drive_0087_sync 0000000450 2011_09_26 2011_09_26_drive_0087_sync 0000000452 2011_09_26 2011_09_26_drive_0087_sync 0000000454 2011_09_26 2011_09_26_drive_0087_sync 0000000456 2011_09_26 2011_09_26_drive_0087_sync 0000000458 2011_09_26 2011_09_26_drive_0087_sync 0000000460 2011_09_26 2011_09_26_drive_0087_sync 0000000462 2011_09_26 2011_09_26_drive_0087_sync 0000000464 2011_09_26 2011_09_26_drive_0087_sync 0000000466 2011_09_26 2011_09_26_drive_0087_sync 0000000468 2011_09_26 2011_09_26_drive_0087_sync 0000000470 2011_09_26 2011_09_26_drive_0087_sync 0000000472 2011_09_26 2011_09_26_drive_0087_sync 0000000474 2011_09_26 2011_09_26_drive_0087_sync 0000000476 2011_09_26 2011_09_26_drive_0087_sync 0000000478 2011_09_26 2011_09_26_drive_0087_sync 0000000480 2011_09_26 2011_09_26_drive_0087_sync 0000000482 2011_09_26 2011_09_26_drive_0087_sync 0000000484 2011_09_26 2011_09_26_drive_0087_sync 0000000486 2011_09_26 2011_09_26_drive_0087_sync 0000000488 2011_09_26 2011_09_26_drive_0087_sync 0000000490 2011_09_26 2011_09_26_drive_0087_sync 0000000492 2011_09_26 2011_09_26_drive_0087_sync 0000000494 2011_09_26 2011_09_26_drive_0087_sync 0000000496 2011_09_26 2011_09_26_drive_0087_sync 0000000498 2011_09_26 2011_09_26_drive_0087_sync 0000000500 2011_09_26 2011_09_26_drive_0087_sync 0000000502 2011_09_26 2011_09_26_drive_0087_sync 0000000504 2011_09_26 2011_09_26_drive_0087_sync 0000000506 2011_09_26 2011_09_26_drive_0087_sync 0000000508 2011_09_26 2011_09_26_drive_0087_sync 0000000510 2011_09_26 2011_09_26_drive_0087_sync 0000000512 2011_09_26 2011_09_26_drive_0087_sync 0000000514 2011_09_26 2011_09_26_drive_0087_sync 0000000516 2011_09_26 2011_09_26_drive_0087_sync 0000000518 2011_09_26 2011_09_26_drive_0087_sync 0000000520 2011_09_26 2011_09_26_drive_0087_sync 0000000522 2011_09_26 2011_09_26_drive_0087_sync 0000000524 2011_09_26 2011_09_26_drive_0087_sync 0000000526 2011_09_26 2011_09_26_drive_0087_sync 0000000528 2011_09_26 2011_09_26_drive_0087_sync 0000000530 2011_09_26 2011_09_26_drive_0087_sync 0000000532 2011_09_26 2011_09_26_drive_0087_sync 0000000534 2011_09_26 2011_09_26_drive_0087_sync 0000000536 2011_09_26 2011_09_26_drive_0087_sync 0000000538 2011_09_26 2011_09_26_drive_0087_sync 0000000540 2011_09_26 2011_09_26_drive_0086_sync 0000000011 2011_09_26 2011_09_26_drive_0086_sync 0000000014 2011_09_26 2011_09_26_drive_0086_sync 0000000016 2011_09_26 2011_09_26_drive_0086_sync 0000000018 2011_09_26 2011_09_26_drive_0086_sync 0000000020 2011_09_26 2011_09_26_drive_0086_sync 0000000022 2011_09_26 2011_09_26_drive_0086_sync 0000000024 2011_09_26 2011_09_26_drive_0086_sync 0000000026 2011_09_26 2011_09_26_drive_0086_sync 0000000028 2011_09_26 2011_09_26_drive_0086_sync 0000000030 2011_09_26 2011_09_26_drive_0086_sync 0000000032 2011_09_26 2011_09_26_drive_0086_sync 0000000034 2011_09_26 2011_09_26_drive_0086_sync 0000000036 2011_09_26 2011_09_26_drive_0086_sync 0000000038 2011_09_26 2011_09_26_drive_0086_sync 0000000040 2011_09_26 2011_09_26_drive_0086_sync 0000000042 2011_09_26 2011_09_26_drive_0086_sync 0000000044 2011_09_26 2011_09_26_drive_0086_sync 0000000046 2011_09_26 2011_09_26_drive_0086_sync 0000000048 2011_09_26 2011_09_26_drive_0086_sync 0000000050 2011_09_26 2011_09_26_drive_0086_sync 0000000052 2011_09_26 2011_09_26_drive_0086_sync 0000000054 2011_09_26 2011_09_26_drive_0086_sync 0000000056 2011_09_26 2011_09_26_drive_0086_sync 0000000058 2011_09_26 2011_09_26_drive_0086_sync 0000000060 2011_09_26 2011_09_26_drive_0086_sync 0000000062 2011_09_26 2011_09_26_drive_0086_sync 0000000064 2011_09_26 2011_09_26_drive_0086_sync 0000000066 2011_09_26 2011_09_26_drive_0086_sync 0000000068 2011_09_26 2011_09_26_drive_0086_sync 0000000070 2011_09_26 2011_09_26_drive_0086_sync 0000000072 2011_09_26 2011_09_26_drive_0086_sync 0000000074 2011_09_26 2011_09_26_drive_0086_sync 0000000076 2011_09_26 2011_09_26_drive_0086_sync 0000000078 2011_09_26 2011_09_26_drive_0086_sync 0000000080 2011_09_26 2011_09_26_drive_0086_sync 0000000082 2011_09_26 2011_09_26_drive_0086_sync 0000000084 2011_09_26 2011_09_26_drive_0086_sync 0000000086 2011_09_26 2011_09_26_drive_0086_sync 0000000088 2011_09_26 2011_09_26_drive_0086_sync 0000000090 2011_09_26 2011_09_26_drive_0086_sync 0000000092 2011_09_26 2011_09_26_drive_0086_sync 0000000094 2011_09_26 2011_09_26_drive_0086_sync 0000000096 2011_09_26 2011_09_26_drive_0086_sync 0000000098 2011_09_26 2011_09_26_drive_0086_sync 0000000100 2011_09_26 2011_09_26_drive_0086_sync 0000000102 2011_09_26 2011_09_26_drive_0086_sync 0000000104 2011_09_26 2011_09_26_drive_0086_sync 0000000106 2011_09_26 2011_09_26_drive_0086_sync 0000000108 2011_09_26 2011_09_26_drive_0086_sync 0000000110 2011_09_26 2011_09_26_drive_0086_sync 0000000112 2011_09_26 2011_09_26_drive_0086_sync 0000000114 2011_09_26 2011_09_26_drive_0086_sync 0000000116 2011_09_26 2011_09_26_drive_0086_sync 0000000118 2011_09_26 2011_09_26_drive_0086_sync 0000000120 2011_09_26 2011_09_26_drive_0086_sync 0000000122 2011_09_26 2011_09_26_drive_0086_sync 0000000124 2011_09_26 2011_09_26_drive_0086_sync 0000000126 2011_09_26 2011_09_26_drive_0086_sync 0000000128 2011_09_26 2011_09_26_drive_0086_sync 0000000130 2011_09_26 2011_09_26_drive_0086_sync 0000000132 2011_09_26 2011_09_26_drive_0086_sync 0000000134 2011_09_26 2011_09_26_drive_0086_sync 0000000136 2011_09_26 2011_09_26_drive_0086_sync 0000000138 2011_09_26 2011_09_26_drive_0086_sync 0000000140 2011_09_26 2011_09_26_drive_0086_sync 0000000142 2011_09_26 2011_09_26_drive_0086_sync 0000000144 2011_09_26 2011_09_26_drive_0086_sync 0000000146 2011_09_28 2011_09_28_drive_0136_sync 0000000007 2011_09_28 2011_09_28_drive_0136_sync 0000000014 2011_09_28 2011_09_28_drive_0136_sync 0000000026 2011_09_28 2011_09_28_drive_0154_sync 0000000007 2011_09_28 2011_09_28_drive_0154_sync 0000000015 2011_09_28 2011_09_28_drive_0154_sync 0000000026 2011_09_28 2011_09_28_drive_0166_sync 0000000007 2011_09_28 2011_09_28_drive_0166_sync 0000000015 2011_09_28 2011_09_28_drive_0166_sync 0000000025 2011_09_28 2011_09_28_drive_0186_sync 0000000008 2011_09_28 2011_09_28_drive_0186_sync 0000000016 2011_09_28 2011_09_28_drive_0186_sync 0000000037 2011_09_28 2011_09_28_drive_0204_sync 0000000016 2011_09_28 2011_09_28_drive_0204_sync 0000000024 2011_09_28 2011_09_28_drive_0204_sync 0000000034 2011_09_28 2011_09_28_drive_0214_sync 0000000008 2011_09_28 2011_09_28_drive_0214_sync 0000000016 2011_09_28 2011_09_28_drive_0214_sync 0000000025 2011_09_28 2011_09_28_drive_0054_sync 0000000007 2011_09_28 2011_09_28_drive_0054_sync 0000000013 2011_09_28 2011_09_28_drive_0054_sync 0000000020 2011_09_28 2011_09_28_drive_0054_sync 0000000030 2011_09_28 2011_09_28_drive_0090_sync 0000000008 2011_09_28 2011_09_28_drive_0090_sync 0000000015 2011_09_28 2011_09_28_drive_0090_sync 0000000023 2011_09_28 2011_09_28_drive_0090_sync 0000000033 2011_09_28 2011_09_28_drive_0095_sync 0000000008 2011_09_28 2011_09_28_drive_0095_sync 0000000014 2011_09_28 2011_09_28_drive_0095_sync 0000000021 2011_09_28 2011_09_28_drive_0095_sync 0000000033 2011_09_28 2011_09_28_drive_0096_sync 0000000007 2011_09_28 2011_09_28_drive_0096_sync 0000000014 2011_09_28 2011_09_28_drive_0096_sync 0000000022 2011_09_28 2011_09_28_drive_0096_sync 0000000032 2011_09_28 2011_09_28_drive_0102_sync 0000000004 2011_09_28 2011_09_28_drive_0102_sync 0000000010 2011_09_28 2011_09_28_drive_0102_sync 0000000017 2011_09_28 2011_09_28_drive_0102_sync 0000000030 2011_09_28 2011_09_28_drive_0103_sync 0000000006 2011_09_28 2011_09_28_drive_0103_sync 0000000012 2011_09_28 2011_09_28_drive_0103_sync 0000000019 2011_09_28 2011_09_28_drive_0103_sync 0000000031 2011_09_28 2011_09_28_drive_0121_sync 0000000007 2011_09_28 2011_09_28_drive_0121_sync 0000000014 2011_09_28 2011_09_28_drive_0121_sync 0000000022 2011_09_28 2011_09_28_drive_0121_sync 0000000043 2011_09_28 2011_09_28_drive_0134_sync 0000000008 2011_09_28 2011_09_28_drive_0134_sync 0000000016 2011_09_28 2011_09_28_drive_0134_sync 0000000024 2011_09_28 2011_09_28_drive_0134_sync 0000000034 2011_09_28 2011_09_28_drive_0171_sync 0000000007 2011_09_28 2011_09_28_drive_0171_sync 0000000013 2011_09_28 2011_09_28_drive_0171_sync 0000000019 2011_09_28 2011_09_28_drive_0171_sync 0000000026 2011_09_28 2011_09_28_drive_0179_sync 0000000007 2011_09_28 2011_09_28_drive_0179_sync 0000000014 2011_09_28 2011_09_28_drive_0179_sync 0000000021 2011_09_28 2011_09_28_drive_0179_sync 0000000030 2011_09_28 2011_09_28_drive_0187_sync 0000000006 2011_09_28 2011_09_28_drive_0187_sync 0000000013 2011_09_28 2011_09_28_drive_0187_sync 0000000021 2011_09_28 2011_09_28_drive_0187_sync 0000000028 2011_09_26 2011_09_26_drive_0017_sync 0000000001 2011_09_26 2011_09_26_drive_0017_sync 0000000002 2011_09_26 2011_09_26_drive_0017_sync 0000000003 2011_09_26 2011_09_26_drive_0017_sync 0000000004 2011_09_26 2011_09_26_drive_0017_sync 0000000005 2011_09_26 2011_09_26_drive_0017_sync 0000000006 2011_09_26 2011_09_26_drive_0017_sync 0000000011 2011_09_26 2011_09_26_drive_0017_sync 0000000012 2011_09_26 2011_09_26_drive_0017_sync 0000000013 2011_09_26 2011_09_26_drive_0017_sync 0000000014 2011_09_26 2011_09_26_drive_0017_sync 0000000015 2011_09_26 2011_09_26_drive_0017_sync 0000000016 2011_09_26 2011_09_26_drive_0017_sync 0000000017 2011_09_26 2011_09_26_drive_0017_sync 0000000018 2011_09_26 2011_09_26_drive_0017_sync 0000000019 2011_09_26 2011_09_26_drive_0017_sync 0000000020 2011_09_26 2011_09_26_drive_0017_sync 0000000023 2011_09_26 2011_09_26_drive_0017_sync 0000000024 2011_09_26 2011_09_26_drive_0017_sync 0000000025 2011_09_26 2011_09_26_drive_0017_sync 0000000032 2011_09_26 2011_09_26_drive_0017_sync 0000000033 2011_09_26 2011_09_26_drive_0017_sync 0000000034 2011_09_26 2011_09_26_drive_0017_sync 0000000035 2011_09_26 2011_09_26_drive_0017_sync 0000000036 2011_09_26 2011_09_26_drive_0017_sync 0000000037 2011_09_26 2011_09_26_drive_0017_sync 0000000038 2011_09_26 2011_09_26_drive_0017_sync 0000000039 2011_09_26 2011_09_26_drive_0017_sync 0000000040 2011_09_26 2011_09_26_drive_0017_sync 0000000041 2011_09_26 2011_09_26_drive_0017_sync 0000000047 2011_09_26 2011_09_26_drive_0017_sync 0000000048 2011_09_26 2011_09_26_drive_0017_sync 0000000049 2011_09_26 2011_09_26_drive_0017_sync 0000000050 2011_09_26 2011_09_26_drive_0017_sync 0000000051 2011_09_26 2011_09_26_drive_0017_sync 0000000052 2011_09_26 2011_09_26_drive_0017_sync 0000000053 2011_09_26 2011_09_26_drive_0017_sync 0000000054 2011_09_26 2011_09_26_drive_0017_sync 0000000055 2011_09_28 2011_09_28_drive_0125_sync 0000000007 2011_09_28 2011_09_28_drive_0125_sync 0000000014 2011_09_28 2011_09_28_drive_0125_sync 0000000021 2011_09_28 2011_09_28_drive_0125_sync 0000000028 2011_09_28 2011_09_28_drive_0125_sync 0000000035 2011_09_28 2011_09_28_drive_0125_sync 0000000042 2011_09_28 2011_09_28_drive_0125_sync 0000000049 2011_09_28 2011_09_28_drive_0125_sync 0000000057 2011_09_28 2011_09_28_drive_0100_sync 0000000009 2011_09_28 2011_09_28_drive_0100_sync 0000000015 2011_09_28 2011_09_28_drive_0100_sync 0000000021 2011_09_28 2011_09_28_drive_0100_sync 0000000027 2011_09_28 2011_09_28_drive_0100_sync 0000000032 2011_09_28 2011_09_28_drive_0100_sync 0000000037 2011_09_28 2011_09_28_drive_0100_sync 0000000042 2011_09_28 2011_09_28_drive_0100_sync 0000000048 2011_09_28 2011_09_28_drive_0100_sync 0000000054 2011_09_28 2011_09_28_drive_0100_sync 0000000060 2011_09_28 2011_09_28_drive_0100_sync 0000000066 2011_09_28 2011_09_28_drive_0146_sync 0000000004 2011_09_28 2011_09_28_drive_0146_sync 0000000010 2011_09_28 2011_09_28_drive_0146_sync 0000000016 2011_09_28 2011_09_28_drive_0146_sync 0000000022 2011_09_28 2011_09_28_drive_0146_sync 0000000028 2011_09_28 2011_09_28_drive_0146_sync 0000000034 2011_09_28 2011_09_28_drive_0146_sync 0000000040 2011_09_28 2011_09_28_drive_0146_sync 0000000046 2011_09_28 2011_09_28_drive_0146_sync 0000000052 2011_09_28 2011_09_28_drive_0146_sync 0000000058 2011_09_28 2011_09_28_drive_0146_sync 0000000065 2011_09_28 2011_09_28_drive_0192_sync 0000000007 2011_09_28 2011_09_28_drive_0192_sync 0000000014 2011_09_28 2011_09_28_drive_0192_sync 0000000021 2011_09_28 2011_09_28_drive_0192_sync 0000000028 2011_09_28 2011_09_28_drive_0192_sync 0000000035 2011_09_28 2011_09_28_drive_0192_sync 0000000042 2011_09_28 2011_09_28_drive_0192_sync 0000000050 2011_09_28 2011_09_28_drive_0192_sync 0000000057 2011_09_28 2011_09_28_drive_0192_sync 0000000064 2011_09_28 2011_09_28_drive_0192_sync 0000000071 2011_09_28 2011_09_28_drive_0192_sync 0000000080 2011_09_28 2011_09_28_drive_0184_sync 0000000007 2011_09_28 2011_09_28_drive_0184_sync 0000000014 2011_09_28 2011_09_28_drive_0184_sync 0000000021 2011_09_28 2011_09_28_drive_0184_sync 0000000028 2011_09_28 2011_09_28_drive_0184_sync 0000000034 2011_09_28 2011_09_28_drive_0184_sync 0000000041 2011_09_28 2011_09_28_drive_0184_sync 0000000048 2011_09_28 2011_09_28_drive_0184_sync 0000000055 2011_09_28 2011_09_28_drive_0184_sync 0000000062 2011_09_28 2011_09_28_drive_0184_sync 0000000069 2011_09_28 2011_09_28_drive_0184_sync 0000000076 2011_09_28 2011_09_28_drive_0184_sync 0000000085 2011_09_26 2011_09_26_drive_0027_sync 0000000001 2011_09_26 2011_09_26_drive_0027_sync 0000000002 2011_09_26 2011_09_26_drive_0027_sync 0000000003 2011_09_26 2011_09_26_drive_0027_sync 0000000004 2011_09_26 2011_09_26_drive_0027_sync 0000000005 2011_09_26 2011_09_26_drive_0027_sync 0000000006 2011_09_26 2011_09_26_drive_0027_sync 0000000093 2011_09_26 2011_09_26_drive_0027_sync 0000000094 2011_09_26 2011_09_26_drive_0027_sync 0000000095 2011_09_26 2011_09_26_drive_0027_sync 0000000096 2011_09_26 2011_09_26_drive_0027_sync 0000000097 2011_09_26 2011_09_26_drive_0027_sync 0000000098 2011_09_26 2011_09_26_drive_0027_sync 0000000099 2011_09_26 2011_09_26_drive_0027_sync 0000000100 2011_09_26 2011_09_26_drive_0027_sync 0000000101 2011_09_26 2011_09_26_drive_0027_sync 0000000102 2011_09_26 2011_09_26_drive_0027_sync 0000000103 2011_09_26 2011_09_26_drive_0027_sync 0000000104 2011_09_26 2011_09_26_drive_0027_sync 0000000105 2011_09_26 2011_09_26_drive_0027_sync 0000000106 2011_09_26 2011_09_26_drive_0027_sync 0000000107 2011_09_26 2011_09_26_drive_0027_sync 0000000108 2011_09_26 2011_09_26_drive_0027_sync 0000000109 2011_09_26 2011_09_26_drive_0027_sync 0000000110 2011_09_26 2011_09_26_drive_0027_sync 0000000111 2011_09_26 2011_09_26_drive_0002_sync 0000000066 2011_09_26 2011_09_26_drive_0002_sync 0000000067 2011_09_26 2011_09_26_drive_0002_sync 0000000068 2011_09_26 2011_09_26_drive_0002_sync 0000000069 2011_09_26 2011_09_26_drive_0002_sync 0000000070 2011_09_26 2011_09_26_drive_0002_sync 0000000071 2011_09_26 2011_09_26_drive_0070_sync 0000000047 2011_09_26 2011_09_26_drive_0070_sync 0000000049 2011_09_26 2011_09_26_drive_0070_sync 0000000051 2011_09_26 2011_09_26_drive_0070_sync 0000000052 2011_09_26 2011_09_26_drive_0070_sync 0000000053 2011_09_26 2011_09_26_drive_0070_sync 0000000054 2011_09_26 2011_09_26_drive_0070_sync 0000000055 2011_09_26 2011_09_26_drive_0070_sync 0000000056 2011_09_26 2011_09_26_drive_0070_sync 0000000057 2011_09_26 2011_09_26_drive_0070_sync 0000000058 2011_09_26 2011_09_26_drive_0070_sync 0000000059 2011_09_26 2011_09_26_drive_0070_sync 0000000060 2011_09_26 2011_09_26_drive_0070_sync 0000000061 2011_09_26 2011_09_26_drive_0070_sync 0000000062 2011_09_26 2011_09_26_drive_0070_sync 0000000063 2011_09_26 2011_09_26_drive_0070_sync 0000000064 2011_09_26 2011_09_26_drive_0070_sync 0000000065 2011_09_26 2011_09_26_drive_0070_sync 0000000066 2011_09_26 2011_09_26_drive_0070_sync 0000000067 2011_09_26 2011_09_26_drive_0070_sync 0000000068 2011_09_26 2011_09_26_drive_0070_sync 0000000069 2011_09_26 2011_09_26_drive_0070_sync 0000000070 2011_09_26 2011_09_26_drive_0070_sync 0000000071 2011_09_26 2011_09_26_drive_0070_sync 0000000072 2011_09_26 2011_09_26_drive_0070_sync 0000000204 2011_09_26 2011_09_26_drive_0070_sync 0000000205 2011_09_26 2011_09_26_drive_0070_sync 0000000206 2011_09_26 2011_09_26_drive_0070_sync 0000000207 2011_09_26 2011_09_26_drive_0070_sync 0000000208 2011_09_26 2011_09_26_drive_0070_sync 0000000209 2011_09_26 2011_09_26_drive_0070_sync 0000000210 2011_09_26 2011_09_26_drive_0070_sync 0000000211 2011_09_26 2011_09_26_drive_0070_sync 0000000212 2011_09_26 2011_09_26_drive_0070_sync 0000000213 2011_09_26 2011_09_26_drive_0070_sync 0000000214 2011_09_26 2011_09_26_drive_0070_sync 0000000215 2011_09_26 2011_09_26_drive_0070_sync 0000000216 2011_09_26 2011_09_26_drive_0070_sync 0000000217 2011_09_26 2011_09_26_drive_0070_sync 0000000218 2011_09_26 2011_09_26_drive_0070_sync 0000000219 2011_09_26 2011_09_26_drive_0070_sync 0000000220 2011_09_26 2011_09_26_drive_0070_sync 0000000221 2011_09_26 2011_09_26_drive_0070_sync 0000000222 2011_09_26 2011_09_26_drive_0070_sync 0000000223 2011_09_26 2011_09_26_drive_0070_sync 0000000224 2011_09_26 2011_09_26_drive_0070_sync 0000000225 2011_09_26 2011_09_26_drive_0070_sync 0000000226 2011_09_26 2011_09_26_drive_0070_sync 0000000227 2011_09_26 2011_09_26_drive_0070_sync 0000000335 2011_09_26 2011_09_26_drive_0070_sync 0000000336 2011_09_26 2011_09_26_drive_0070_sync 0000000337 2011_09_26 2011_09_26_drive_0070_sync 0000000338 2011_09_26 2011_09_26_drive_0070_sync 0000000339 2011_09_26 2011_09_26_drive_0070_sync 0000000340 2011_09_26 2011_09_26_drive_0070_sync 0000000341 2011_09_26 2011_09_26_drive_0070_sync 0000000342 2011_09_26 2011_09_26_drive_0070_sync 0000000343 2011_09_26 2011_09_26_drive_0070_sync 0000000344 2011_09_26 2011_09_26_drive_0070_sync 0000000345 2011_09_26 2011_09_26_drive_0070_sync 0000000346 2011_09_26 2011_09_26_drive_0070_sync 0000000347 2011_09_26 2011_09_26_drive_0070_sync 0000000348 2011_09_26 2011_09_26_drive_0070_sync 0000000349 2011_09_26 2011_09_26_drive_0070_sync 0000000350 2011_09_26 2011_09_26_drive_0070_sync 0000000351 2011_09_26 2011_09_26_drive_0070_sync 0000000352 2011_09_26 2011_09_26_drive_0070_sync 0000000353 2011_09_26 2011_09_26_drive_0070_sync 0000000354 2011_09_26 2011_09_26_drive_0070_sync 0000000355 2011_09_26 2011_09_26_drive_0070_sync 0000000356 2011_09_26 2011_09_26_drive_0070_sync 0000000357 2011_09_26 2011_09_26_drive_0070_sync 0000000358 2011_09_28 2011_09_28_drive_0053_sync 0000000006 2011_09_28 2011_09_28_drive_0053_sync 0000000012 2011_09_28 2011_09_28_drive_0053_sync 0000000018 2011_09_28 2011_09_28_drive_0053_sync 0000000024 2011_09_28 2011_09_28_drive_0053_sync 0000000030 2011_09_28 2011_09_28_drive_0053_sync 0000000036 2011_09_28 2011_09_28_drive_0053_sync 0000000042 2011_09_28 2011_09_28_drive_0053_sync 0000000048 2011_09_28 2011_09_28_drive_0053_sync 0000000054 2011_09_28 2011_09_28_drive_0053_sync 0000000060 2011_09_28 2011_09_28_drive_0053_sync 0000000066 2011_09_28 2011_09_28_drive_0057_sync 0000000006 2011_09_28 2011_09_28_drive_0057_sync 0000000012 2011_09_28 2011_09_28_drive_0057_sync 0000000019 2011_09_28 2011_09_28_drive_0057_sync 0000000025 2011_09_28 2011_09_28_drive_0057_sync 0000000031 2011_09_28 2011_09_28_drive_0057_sync 0000000037 2011_09_28 2011_09_28_drive_0057_sync 0000000043 2011_09_28 2011_09_28_drive_0057_sync 0000000049 2011_09_28 2011_09_28_drive_0057_sync 0000000055 2011_09_28 2011_09_28_drive_0057_sync 0000000061 2011_09_28 2011_09_28_drive_0057_sync 0000000068 2011_09_28 2011_09_28_drive_0065_sync 0000000017 2011_09_28 2011_09_28_drive_0066_sync 0000000014 2011_09_28 2011_09_28_drive_0068_sync 0000000011 2011_09_28 2011_09_28_drive_0068_sync 0000000021 2011_09_28 2011_09_28_drive_0068_sync 0000000032 2011_09_28 2011_09_28_drive_0068_sync 0000000043 2011_09_28 2011_09_28_drive_0068_sync 0000000054 2011_09_28 2011_09_28_drive_0068_sync 0000000065 2011_09_28 2011_09_28_drive_0070_sync 0000000012 2011_09_28 2011_09_28_drive_0071_sync 0000000012 2011_09_28 2011_09_28_drive_0071_sync 0000000025 2011_09_28 2011_09_28_drive_0075_sync 0000000011 2011_09_28 2011_09_28_drive_0075_sync 0000000022 2011_09_28 2011_09_28_drive_0075_sync 0000000033 2011_09_28 2011_09_28_drive_0075_sync 0000000044 2011_09_28 2011_09_28_drive_0075_sync 0000000056 2011_09_28 2011_09_28_drive_0078_sync 0000000012 2011_09_28 2011_09_28_drive_0078_sync 0000000024 2011_09_28 2011_09_28_drive_0080_sync 0000000007 2011_09_28 2011_09_28_drive_0080_sync 0000000014 2011_09_28 2011_09_28_drive_0080_sync 0000000021 2011_09_28 2011_09_28_drive_0080_sync 0000000029 2011_09_28 2011_09_28_drive_0082_sync 0000000007 2011_09_28 2011_09_28_drive_0082_sync 0000000013 2011_09_28 2011_09_28_drive_0082_sync 0000000019 2011_09_28 2011_09_28_drive_0082_sync 0000000025 2011_09_28 2011_09_28_drive_0082_sync 0000000031 2011_09_28 2011_09_28_drive_0082_sync 0000000037 2011_09_28 2011_09_28_drive_0082_sync 0000000043 2011_09_28 2011_09_28_drive_0082_sync 0000000049 2011_09_28 2011_09_28_drive_0082_sync 0000000055 2011_09_28 2011_09_28_drive_0082_sync 0000000061 2011_09_28 2011_09_28_drive_0082_sync 0000000067 2011_09_28 2011_09_28_drive_0086_sync 0000000006 2011_09_28 2011_09_28_drive_0086_sync 0000000013 2011_09_28 2011_09_28_drive_0086_sync 0000000021 2011_09_28 2011_09_28_drive_0087_sync 0000000007 2011_09_28 2011_09_28_drive_0087_sync 0000000015 2011_09_28 2011_09_28_drive_0087_sync 0000000023 2011_09_28 2011_09_28_drive_0087_sync 0000000030 2011_09_28 2011_09_28_drive_0087_sync 0000000038 2011_09_28 2011_09_28_drive_0087_sync 0000000045 2011_09_28 2011_09_28_drive_0087_sync 0000000052 2011_09_28 2011_09_28_drive_0087_sync 0000000059 2011_09_28 2011_09_28_drive_0087_sync 0000000066 2011_09_28 2011_09_28_drive_0087_sync 0000000074 2011_09_28 2011_09_28_drive_0094_sync 0000000007 2011_09_28 2011_09_28_drive_0094_sync 0000000014 2011_09_28 2011_09_28_drive_0094_sync 0000000020 2011_09_28 2011_09_28_drive_0094_sync 0000000026 2011_09_28 2011_09_28_drive_0094_sync 0000000032 2011_09_28 2011_09_28_drive_0094_sync 0000000038 2011_09_28 2011_09_28_drive_0094_sync 0000000045 2011_09_28 2011_09_28_drive_0094_sync 0000000051 2011_09_28 2011_09_28_drive_0094_sync 0000000057 2011_09_28 2011_09_28_drive_0094_sync 0000000064 2011_09_28 2011_09_28_drive_0094_sync 0000000071 2011_09_28 2011_09_28_drive_0098_sync 0000000007 2011_09_28 2011_09_28_drive_0098_sync 0000000014 2011_09_28 2011_09_28_drive_0098_sync 0000000021 2011_09_28 2011_09_28_drive_0098_sync 0000000029 2011_09_28 2011_09_28_drive_0104_sync 0000000009 2011_09_28 2011_09_28_drive_0104_sync 0000000015 2011_09_28 2011_09_28_drive_0104_sync 0000000022 2011_09_28 2011_09_28_drive_0104_sync 0000000035 2011_09_28 2011_09_28_drive_0106_sync 0000000006 2011_09_28 2011_09_28_drive_0106_sync 0000000012 2011_09_28 2011_09_28_drive_0106_sync 0000000018 2011_09_28 2011_09_28_drive_0106_sync 0000000024 2011_09_28 2011_09_28_drive_0106_sync 0000000030 2011_09_28 2011_09_28_drive_0106_sync 0000000036 2011_09_28 2011_09_28_drive_0106_sync 0000000042 2011_09_28 2011_09_28_drive_0106_sync 0000000048 2011_09_28 2011_09_28_drive_0106_sync 0000000054 2011_09_28 2011_09_28_drive_0106_sync 0000000061 2011_09_28 2011_09_28_drive_0106_sync 0000000068 2011_09_28 2011_09_28_drive_0108_sync 0000000007 2011_09_28 2011_09_28_drive_0108_sync 0000000014 2011_09_28 2011_09_28_drive_0108_sync 0000000021 2011_09_28 2011_09_28_drive_0108_sync 0000000033 2011_09_28 2011_09_28_drive_0110_sync 0000000020 2011_09_28 2011_09_28_drive_0110_sync 0000000028 2011_09_28 2011_09_28_drive_0110_sync 0000000036 2011_09_28 2011_09_28_drive_0110_sync 0000000044 2011_09_28 2011_09_28_drive_0110_sync 0000000055 2011_09_28 2011_09_28_drive_0113_sync 0000000006 2011_09_28 2011_09_28_drive_0113_sync 0000000012 2011_09_28 2011_09_28_drive_0113_sync 0000000018 2011_09_28 2011_09_28_drive_0113_sync 0000000024 2011_09_28 2011_09_28_drive_0113_sync 0000000030 2011_09_28 2011_09_28_drive_0113_sync 0000000036 2011_09_28 2011_09_28_drive_0113_sync 0000000042 2011_09_28 2011_09_28_drive_0113_sync 0000000048 2011_09_28 2011_09_28_drive_0113_sync 0000000054 2011_09_28 2011_09_28_drive_0113_sync 0000000060 2011_09_28 2011_09_28_drive_0113_sync 0000000066 2011_09_28 2011_09_28_drive_0117_sync 0000000007 2011_09_28 2011_09_28_drive_0117_sync 0000000013 2011_09_28 2011_09_28_drive_0117_sync 0000000020 2011_09_28 2011_09_28_drive_0117_sync 0000000034 2011_09_28 2011_09_28_drive_0119_sync 0000000008 2011_09_28 2011_09_28_drive_0119_sync 0000000015 2011_09_28 2011_09_28_drive_0119_sync 0000000022 2011_09_28 2011_09_28_drive_0119_sync 0000000029 2011_09_28 2011_09_28_drive_0119_sync 0000000034 2011_09_28 2011_09_28_drive_0119_sync 0000000039 2011_09_28 2011_09_28_drive_0119_sync 0000000044 2011_09_28 2011_09_28_drive_0119_sync 0000000050 2011_09_28 2011_09_28_drive_0119_sync 0000000056 2011_09_28 2011_09_28_drive_0119_sync 0000000063 2011_09_28 2011_09_28_drive_0119_sync 0000000070 2011_09_28 2011_09_28_drive_0122_sync 0000000007 2011_09_28 2011_09_28_drive_0122_sync 0000000014 2011_09_28 2011_09_28_drive_0122_sync 0000000021 2011_09_28 2011_09_28_drive_0122_sync 0000000030 2011_09_28 2011_09_28_drive_0126_sync 0000000008 2011_09_28 2011_09_28_drive_0126_sync 0000000017 2011_09_28 2011_09_28_drive_0128_sync 0000000008 2011_09_28 2011_09_28_drive_0128_sync 0000000018 2011_09_28 2011_09_28_drive_0128_sync 0000000028 2011_09_28 2011_09_28_drive_0132_sync 0000000007 2011_09_28 2011_09_28_drive_0132_sync 0000000014 2011_09_28 2011_09_28_drive_0132_sync 0000000021 2011_09_28 2011_09_28_drive_0132_sync 0000000027 2011_09_28 2011_09_28_drive_0132_sync 0000000034 2011_09_28 2011_09_28_drive_0132_sync 0000000041 2011_09_28 2011_09_28_drive_0132_sync 0000000048 2011_09_28 2011_09_28_drive_0132_sync 0000000055 2011_09_28 2011_09_28_drive_0132_sync 0000000063 2011_09_28 2011_09_28_drive_0132_sync 0000000071 2011_09_28 2011_09_28_drive_0141_sync 0000000013 2011_09_28 2011_09_28_drive_0141_sync 0000000018 2011_09_28 2011_09_28_drive_0141_sync 0000000023 2011_09_28 2011_09_28_drive_0141_sync 0000000028 2011_09_28 2011_09_28_drive_0141_sync 0000000033 2011_09_28 2011_09_28_drive_0141_sync 0000000039 2011_09_28 2011_09_28_drive_0141_sync 0000000045 2011_09_28 2011_09_28_drive_0141_sync 0000000051 2011_09_28 2011_09_28_drive_0141_sync 0000000057 2011_09_28 2011_09_28_drive_0143_sync 0000000006 2011_09_28 2011_09_28_drive_0143_sync 0000000012 2011_09_28 2011_09_28_drive_0143_sync 0000000019 2011_09_28 2011_09_28_drive_0145_sync 0000000011 2011_09_28 2011_09_28_drive_0145_sync 0000000018 2011_09_28 2011_09_28_drive_0145_sync 0000000029 2011_09_28 2011_09_28_drive_0149_sync 0000000007 2011_09_28 2011_09_28_drive_0149_sync 0000000014 2011_09_28 2011_09_28_drive_0149_sync 0000000021 2011_09_28 2011_09_28_drive_0149_sync 0000000029 2011_09_28 2011_09_28_drive_0153_sync 0000000006 2011_09_28 2011_09_28_drive_0153_sync 0000000013 2011_09_28 2011_09_28_drive_0153_sync 0000000019 2011_09_28 2011_09_28_drive_0153_sync 0000000025 2011_09_28 2011_09_28_drive_0153_sync 0000000032 2011_09_28 2011_09_28_drive_0153_sync 0000000039 2011_09_28 2011_09_28_drive_0153_sync 0000000046 2011_09_28 2011_09_28_drive_0153_sync 0000000053 2011_09_28 2011_09_28_drive_0153_sync 0000000060 2011_09_28 2011_09_28_drive_0153_sync 0000000067 2011_09_28 2011_09_28_drive_0153_sync 0000000074 2011_09_28 2011_09_28_drive_0153_sync 0000000081 2011_09_28 2011_09_28_drive_0153_sync 0000000089 2011_09_28 2011_09_28_drive_0160_sync 0000000007 2011_09_28 2011_09_28_drive_0160_sync 0000000014 2011_09_28 2011_09_28_drive_0160_sync 0000000022 2011_09_28 2011_09_28_drive_0162_sync 0000000008 2011_09_28 2011_09_28_drive_0162_sync 0000000014 2011_09_28 2011_09_28_drive_0162_sync 0000000021 2011_09_28 2011_09_28_drive_0162_sync 0000000034 2011_09_28 2011_09_28_drive_0165_sync 0000000008 2011_09_28 2011_09_28_drive_0165_sync 0000000015 2011_09_28 2011_09_28_drive_0165_sync 0000000022 2011_09_28 2011_09_28_drive_0165_sync 0000000029 2011_09_28 2011_09_28_drive_0165_sync 0000000036 2011_09_28 2011_09_28_drive_0165_sync 0000000043 2011_09_28 2011_09_28_drive_0165_sync 0000000050 2011_09_28 2011_09_28_drive_0165_sync 0000000057 2011_09_28 2011_09_28_drive_0165_sync 0000000064 2011_09_28 2011_09_28_drive_0165_sync 0000000071 2011_09_28 2011_09_28_drive_0165_sync 0000000078 2011_09_28 2011_09_28_drive_0168_sync 0000000005 2011_09_28 2011_09_28_drive_0168_sync 0000000012 2011_09_28 2011_09_28_drive_0168_sync 0000000019 2011_09_28 2011_09_28_drive_0168_sync 0000000026 2011_09_28 2011_09_28_drive_0168_sync 0000000034 2011_09_28 2011_09_28_drive_0168_sync 0000000045 2011_09_28 2011_09_28_drive_0174_sync 0000000011 2011_09_28 2011_09_28_drive_0174_sync 0000000018 2011_09_28 2011_09_28_drive_0174_sync 0000000025 2011_09_28 2011_09_28_drive_0174_sync 0000000032 2011_09_28 2011_09_28_drive_0174_sync 0000000039 2011_09_28 2011_09_28_drive_0174_sync 0000000047 2011_09_28 2011_09_28_drive_0177_sync 0000000006 2011_09_28 2011_09_28_drive_0177_sync 0000000012 2011_09_28 2011_09_28_drive_0177_sync 0000000018 2011_09_28 2011_09_28_drive_0177_sync 0000000024 2011_09_28 2011_09_28_drive_0177_sync 0000000030 2011_09_28 2011_09_28_drive_0177_sync 0000000036 2011_09_28 2011_09_28_drive_0177_sync 0000000042 2011_09_28 2011_09_28_drive_0177_sync 0000000048 2011_09_28 2011_09_28_drive_0177_sync 0000000055 2011_09_28 2011_09_28_drive_0177_sync 0000000062 2011_09_28 2011_09_28_drive_0177_sync 0000000069 2011_09_28 2011_09_28_drive_0183_sync 0000000006 2011_09_28 2011_09_28_drive_0183_sync 0000000013 2011_09_28 2011_09_28_drive_0183_sync 0000000020 2011_09_28 2011_09_28_drive_0183_sync 0000000026 2011_09_28 2011_09_28_drive_0185_sync 0000000007 2011_09_28 2011_09_28_drive_0185_sync 0000000014 2011_09_28 2011_09_28_drive_0185_sync 0000000021 2011_09_28 2011_09_28_drive_0185_sync 0000000028 2011_09_28 2011_09_28_drive_0185_sync 0000000035 2011_09_28 2011_09_28_drive_0185_sync 0000000041 2011_09_28 2011_09_28_drive_0185_sync 0000000048 2011_09_28 2011_09_28_drive_0185_sync 0000000054 2011_09_28 2011_09_28_drive_0185_sync 0000000061 2011_09_28 2011_09_28_drive_0185_sync 0000000068 2011_09_28 2011_09_28_drive_0185_sync 0000000076 2011_09_28 2011_09_28_drive_0191_sync 0000000007 2011_09_28 2011_09_28_drive_0191_sync 0000000014 2011_09_28 2011_09_28_drive_0191_sync 0000000021 2011_09_28 2011_09_28_drive_0191_sync 0000000028 2011_09_28 2011_09_28_drive_0195_sync 0000000009 2011_09_28 2011_09_28_drive_0195_sync 0000000016 2011_09_28 2011_09_28_drive_0195_sync 0000000025 2011_09_28 2011_09_28_drive_0199_sync 0000000008 2011_09_28 2011_09_28_drive_0199_sync 0000000015 2011_09_28 2011_09_28_drive_0199_sync 0000000023 2011_09_28 2011_09_28_drive_0199_sync 0000000031 2011_09_28 2011_09_28_drive_0201_sync 0000000007 2011_09_28 2011_09_28_drive_0201_sync 0000000014 2011_09_28 2011_09_28_drive_0201_sync 0000000021 2011_09_28 2011_09_28_drive_0201_sync 0000000028 2011_09_28 2011_09_28_drive_0201_sync 0000000035 2011_09_28 2011_09_28_drive_0201_sync 0000000042 2011_09_28 2011_09_28_drive_0201_sync 0000000049 2011_09_28 2011_09_28_drive_0201_sync 0000000056 2011_09_28 2011_09_28_drive_0201_sync 0000000063 2011_09_28 2011_09_28_drive_0201_sync 0000000070 2011_09_28 2011_09_28_drive_0201_sync 0000000078 2011_09_28 2011_09_28_drive_0205_sync 0000000008 2011_09_28 2011_09_28_drive_0205_sync 0000000015 2011_09_28 2011_09_28_drive_0205_sync 0000000027 2011_09_28 2011_09_28_drive_0209_sync 0000000007 2011_09_28 2011_09_28_drive_0209_sync 0000000014 2011_09_28 2011_09_28_drive_0209_sync 0000000021 2011_09_28 2011_09_28_drive_0209_sync 0000000028 2011_09_28 2011_09_28_drive_0209_sync 0000000035 2011_09_28 2011_09_28_drive_0209_sync 0000000042 2011_09_28 2011_09_28_drive_0209_sync 0000000050 2011_09_28 2011_09_28_drive_0209_sync 0000000057 2011_09_28 2011_09_28_drive_0209_sync 0000000065 2011_09_28 2011_09_28_drive_0209_sync 0000000072 2011_09_28 2011_09_28_drive_0209_sync 0000000079 2011_09_28 2011_09_28_drive_0216_sync 0000000008 2011_09_28 2011_09_28_drive_0216_sync 0000000015 2011_09_28 2011_09_28_drive_0216_sync 0000000022 2011_09_28 2011_09_28_drive_0216_sync 0000000030 2011_09_28 2011_09_28_drive_0216_sync 0000000038 2011_09_28 2011_09_28_drive_0220_sync 0000000028 2011_09_28 2011_09_28_drive_0220_sync 0000000035 2011_09_28 2011_09_28_drive_0220_sync 0000000042 2011_09_28 2011_09_28_drive_0220_sync 0000000049 2011_09_28 2011_09_28_drive_0220_sync 0000000057 2011_09_28 2011_09_28_drive_0220_sync 0000000066 2011_09_28 2011_09_28_drive_0222_sync 0000000007 2011_09_28 2011_09_28_drive_0222_sync 0000000014 2011_09_28 2011_09_28_drive_0222_sync 0000000021 2011_09_28 2011_09_28_drive_0222_sync 0000000027 2011_09_28 2011_09_28_drive_0222_sync 0000000033 2011_09_28 2011_09_28_drive_0222_sync 0000000040 2011_09_28 2011_09_28_drive_0222_sync 0000000053 ================================================ FILE: data/kitti_split1/devkit/mapping/train_rand.txt ================================================ 7282,2479,6912,6480,2659,7182,5819,1466,5862,1620,4406,3657,1001,7086,1017,3188,1400,878,1443,5183,5274,4774,5738,2480,3578,5867,6160,1181,7411,6835,6794,5173,4586,1233,5056,573,1693,3375,1796,5537,5400,4975,468,2193,1067,6701,2053,3496,3195,2822,4166,1359,162,5351,7231,4562,1108,6278,7036,1295,729,6082,4753,5637,921,3270,5929,1403,3609,4924,7344,1568,856,2178,6156,6240,3135,5973,5923,1402,775,2410,6676,6596,6379,2133,3973,346,4959,4157,5153,1358,1954,202,6923,1859,6505,325,3542,4421,2132,1715,5280,7418,426,1338,592,5203,2237,6741,4360,1806,3964,4600,2797,4971,5234,3701,3268,6451,4376,1408,2246,1020,2946,1645,6122,359,2538,6694,7283,1380,3558,4933,2977,32,6253,2300,839,2341,5238,1029,3642,2427,3654,3044,2908,3254,873,2004,1469,3002,5501,6515,373,1920,7220,4625,863,208,791,95,720,3948,724,2850,680,2721,1293,3810,3557,1707,2039,5863,5285,5994,6225,2120,2022,1586,5025,3858,6041,5224,1947,6232,261,7185,5481,6148,3112,3416,3435,7266,5411,2709,6881,41,4084,7032,1561,4661,1040,2506,2328,1934,4840,2695,4001,7259,6710,4710,3723,3756,5015,6489,439,6442,15,1491,326,1560,1642,4197,7111,813,3934,5775,1373,484,2598,1283,6727,6186,70,541,3409,2440,663,5465,6805,6161,5595,5128,6215,4123,3341,5393,3446,3332,6089,3285,6108,1525,3597,1119,299,984,1957,6580,1243,4518,5204,7401,2907,2724,4665,400,2211,5157,536,738,5971,2776,2800,1725,784,2106,7124,5908,4499,2293,6826,6117,3749,1862,2011,2141,6742,3572,7397,5936,1576,5991,6959,1332,1420,1146,6975,6777,986,3381,5805,1736,6769,5823,726,2482,2952,4189,6,4222,5611,4956,6085,5964,2008,5142,6233,620,4757,6010,1087,4246,7237,757,390,7190,4297,606,2026,4127,3163,3030,999,5877,3218,7387,4866,10,6087,3261,2167,5480,1516,3364,3734,2499,1994,1637,205,3493,4637,4087,5866,6133,5163,3463,4517,2339,2451,61,4673,772,2139,7054,2955,1344,7356,3304,3685,2017,2571,3712,1530,6546,565,5222,287,2631,2787,7480,4309,2984,3049,5542,3404,1745,2394,2038,6377,3345,3857,3849,2412,3867,7121,3767,7239,2400,927,4232,6014,5493,3320,1649,1567,7062,5875,2218,697,888,3652,447,7023,4631,1006,5062,4985,3563,5249,1641,3180,2916,4627,5093,6177,3534,6523,234,6086,5043,1826,688,1136,6453,4227,1245,1933,4871,528,5094,4403,5519,6811,2897,7162,698,2958,721,6074,1175,516,3023,2438,3915,6312,1257,4044,5992,6637,5069,1721,4305,5760,7377,5736,6784,2202,3089,5082,1904,4154,5972,4931,121,5977,7391,5820,2363,2362,2642,895,1874,1985,5535,132,2168,3615,2472,1379,5942,3393,5298,436,3022,3193,4423,7473,7167,1788,1333,1723,1313,7007,6641,561,6352,2282,7454,4245,4544,2531,1843,1357,3408,655,5831,2112,3836,7079,590,1734,4916,624,1056,6533,3457,4750,4998,6524,4611,7419,462,6791,3055,2219,4472,309,4538,2891,4162,1323,6121,5071,6062,5258,4491,4700,5090,4464,3551,6858,2902,3769,2388,5033,6595,3465,3209,2241,2461,798,6778,5421,1089,6132,4214,7143,597,6776,3167,3470,5083,4939,6446,1918,6227,5787,4591,4946,6880,847,2263,6813,1471,1819,6300,3722,511,3821,201,2068,1023,1747,3241,2107,4380,7310,2023,3489,2367,1348,4873,7471,795,4938,1022,5757,4477,1216,2325,3863,2778,4709,4311,6330,398,2236,6097,5859,6332,6472,5844,5959,3067,4143,6394,91,6817,2292,907,368,7346,6013,2389,1238,4884,1730,4659,6582,6257,2203,1855,5405,5803,7209,3538,6043,6704,600,2847,1527,1052,1092,1265,6549,1240,1227,2673,5659,896,6404,2144,6612,4017,3950,5176,4399,3414,5976,6957,6276,6754,133,2194,6566,4636,6398,3109,6243,4942,6902,612,40,7,3974,1054,4530,4945,7105,3847,3798,4007,4277,6989,5540,4558,4202,2457,1230,7253,2288,7262,4172,1553,5336,7102,243,6339,6816,6654,1910,1374,4617,1013,1258,5961,3153,3965,2096,7408,2728,1114,679,3433,7202,3236,6093,3888,6788,3250,2845,1750,4234,1939,4686,3887,6841,853,5385,3389,2029,709,7270,3488,7339,1945,2269,913,1327,3925,3395,4338,5556,2792,3453,4444,682,5072,3985,4199,840,353,3056,3015,5651,2543,3412,7180,4802,3010,415,490,6872,6164,5784,4028,4788,7027,3641,4955,5219,6756,7466,2925,7097,761,3671,7278,5593,4614,503,6574,327,186,3604,3665,104,727,3553,5626,190,2452,572,3515,7170,2601,2783,4231,6924,2720,2254,329,1772,1457,3108,4097,6294,3455,1080,6491,6554,5230,6787,6976,3273,7441,6657,1063,338,3778,978,1821,5666,7093,1633,3394,5457,5684,3131,7405,6296,46,5288,5085,357,36,413,5903,3482,6187,6032,656,2568,1582,6223,1913,3943,4742,5751,2153,6511,5968,4042,6274,5059,4440,358,3584,2789,787,1117,1164,3073,3715,3373,1148,2613,2520,5735,477,2040,3994,5568,5547,705,4554,4014,6531,908,4010,2197,2559,6118,6810,1345,2369,6172,2291,6793,6801,376,4459,1309,6407,764,5490,317,5200,3599,3244,4211,4995,1883,4718,506,411,2061,755,5308,6309,4794,3258,731,4843,5467,3969,3078,1632,5888,2732,1166,1045,6771,1807,2832,2151,558,532,2658,6269,126,2207,3936,6210,1950,6752,2373,2607,6362,4608,5856,3725,6861,5017,3523,6979,4721,2000,1131,3121,914,160,3169,3606,3084,3579,1021,6077,67,3276,1337,5646,2323,1744,5915,4370,6418,2280,1912,6139,3633,5878,2676,3303,4640,3991,2665,6542,4964,5940,3636,875,4528,6622,4576,5051,2034,3220,4890,6406,5941,3988,1079,6857,5446,3886,3101,6561,4643,3686,5364,3517,7135,129,2065,5731,5277,7165,6585,270,3019,805,4548,6899,5409,2251,4859,7351,1353,7267,957,6992,4993,4268,7272,7059,4357,1318,6719,6293,4756,51,4593,2886,3175,884,5108,3051,2777,6882,2882,2465,3319,4320,917,7293,1319,4553,1397,6463,4415,2619,992,3799,7029,7020,3211,2967,3217,79,906,4977,6860,2358,1298,3804,3935,6842,1627,980,1808,49,5910,6570,5555,4037,7241,5160,6366,6966,4505,858,564,1300,5331,5250,403,5189,3600,3170,30,1924,3507,6854,3132,5896,3786,1081,5044,2249,5018,7298,4733,2417,5544,918,2748,4100,4786,6397,4514,4701,6968,3874,6381,5325,929,5840,5729,520,3120,595,4768,6926,119,1888,3522,35,43,4754,4438,534,6883,569,6319,5558,611,2722,250,6604,1193,5858,2546,6917,6355,1480,3438,948,7212,7287,172,5321,6607,647,6292,2699,1474,4800,6259,1587,430,2402,7432,2893,7129,2582,4181,4722,4225,4852,4140,5365,384,4847,1072,4739,2933,6951,6205,7197,5339,3237,1189,3392,5759,5677,3259,106,1948,4533,1037,4761,5792,7255,6435,3201,6941,1781,4023,2082,4501,2230,5492,6488,498,5892,2586,5707,4813,4666,3844,4352,4256,281,1330,1850,7070,952,96,5024,213,7083,5655,6909,2661,3793,5765,7001,6623,4327,6869,434,3406,2635,3869,1688,2929,7233,5061,1191,3200,5813,4654,2357,6939,1194,5668,7136,5853,5233,2840,605,773,5463,3007,3129,5870,1232,163,6898,7371,6095,4660,616,1958,6206,1511,7311,2071,2485,7085,5718,6102,4500,2931,3309,6202,3013,2887,3580,1255,4348,3737,2960,559,6833,1015,4054,7289,1800,4495,288,2319,2304,3524,3103,3031,6609,1336,2014,5704,393,6508,4020,1573,147,509,2130,801,1128,1740,6962,6385,5711,1545,6290,6731,482,271,2432,5825,5560,2733,5036,4712,5369,6815,5264,2093,1617,5438,6303,6081,2653,1156,3577,7345,1795,1242,704,2528,7146,6147,3157,2378,5132,6639,455,5756,6556,4941,1285,4015,5253,3065,4426,2905,6705,2803,1984,4724,1485,7337,7153,5504,5887,379,6800,4704,6896,5260,1868,7219,1134,6999,2523,85,3683,975,3899,4074,1972,7357,7154,2780,7332,1147,1133,6656,307,1460,923,3640,2080,7444,2772,1041,3661,99,5958,4293,1956,799,4792,3718,4389,4336,3215,324,7192,4816,7074,2691,5007,2838,7113,5133,2870,1433,7050,6916,4829,4112,431,1488,7150,260,2258,4983,7302,1149,5536,7329,4210,3441,1503,5841,6765,2649,5192,1689,4521,2152,1467,4095,1827,4261,855,5846,2685,4053,2315,2821,2879,2951,2163,2818,3516,1409,2277,1399,6674,6198,4433,4580,7393,4178,1621,2565,3498,4917,1652,669,2484,6619,6518,3255,6903,1502,946,4496,4547,4607,5861,5131,6433,954,654,6635,2467,6871,990,2181,3619,2045,2343,4324,7309,947,2527,4362,3889,3421,815,2220,500,1602,7265,4565,6091,89,351,2532,3252,5464,2426,1154,4815,1683,3997,1441,3512,1624,4273,548,2390,1322,1699,7221,6689,617,2081,7318,5164,1229,7462,7203,3248,4868,4066,5499,4080,4027,5951,648,5563,6154,4545,4787,5706,5543,5770,3306,3434,5749,7137,7224,2547,6640,7243,2155,4785,7055,6376,3426,2741,4030,4195,2890,6661,5913,3775,5852,5496,5296,5442,2669,6513,5353,5523,4663,6222,5334,1398,3859,5799,5700,6840,3014,6822,165,3321,1763,5423,5905,1508,2785,7249,4681,4796,1810,2595,4619,5191,3403,2469,4412,6929,5053,153,2091,4474,2109,3413,4899,2224,1616,5623,2851,4183,7250,3713,25,7147,6462,1455,4616,983,2972,1053,4943,3807,2118,5310,1768,6124,3063,3968,6911,4341,1436,4022,7399,6643,5381,6831,535,1682,2625,3675,5608,1762,4192,5618,5581,3266,6567,6277,6065,1526,3048,3963,2823,2471,4416,6721,4571,6624,5302,1797,140,3882,2425,1361,794,1365,846,7366,1780,1967,4805,3221,6888,4063,1575,3324,5710,3711,6636,178,5431,6370,1177,3478,4731,2255,785,3760,4777,2743,2411,3104,2980,1039,3053,2478,173,478,6720,4653,285,4375,6847,4799,453,2646,3942,5266,1111,6251,5449,4674,4864,4557,6335,401,1589,6367,4740,3314,3501,4374,793,224,3704,2883,6644,5451,2693,443,2463,1663,4078,567,1116,4482,7304,943,1577,6647,2643,1743,3322,4276,348,1860,7130,6711,1987,5243,5576,4604,2516,6569,3234,6947,5911,3995,3902,6092,7061,6874,1066,3061,603,2265,3595,5038,2145,1605,1559,1124,3317,3247,6444,4185,1091,1462,5263,4294,2537,1625,7415,6821,2930,2563,2337,5676,1120,6438,1812,2749,3037,6180,1550,7395,2301,7422,4650,4090,3118,5933,2641,4651,4481,4002,3570,5777,4005,5842,6430,6174,6673,7363,1665,748,4629,3952,78,1766,1946,2880,410,5079,7463,1600,4148,3993,1388,450,3747,3296,2397,3518,4158,850,3531,227,5092,294,5226,499,7382,6552,4902,5371,4684,2536,2129,1042,5175,2137,1992,1208,1540,3020,4302,4838,2250,2476,6247,4537,2286,2745,5935,6027,3009,995,1253,1782,2738,3477,4009,1377,838,4316,5162,5664,7127,4513,7294,5047,5293,7021,664,1703,2900,170,2195,6760,4835,1342,1538,2084,2012,1976,1472,4283,2581,3607,4563,7335,4191,3376,4269,6998,3417,4287,659,3287,6029,1241,1195,404,628,3529,3982,4618,2774,3896,3361,1223,5035,2501,6868,4885,5011,6818,312,1899,626,5771,115,4448,1501,4131,5140,87,5305,877,717,2884,3644,961,6436,423,5045,3702,6935,6155,3249,1544,6722,1016,2050,4251,538,276,5599,2104,7461,6918,7479,5989,3368,334,2114,1292,1493,3504,3612,6192,7284,5441,6120,2260,4820,3826,3024,5261,5179,4411,6073,2097,723,2176,2209,4889,1180,452,92,632,3027,2196,6729,2223,1673,7159,4582,619,5983,7417,9,491,6839,5937,3728,5335,7440,4906,318,4893,6051,5214,6867,2629,419,4898,1704,4393,3134,5584,3300,3256,1296,387,5636,4749,3825,6197,3353,6360,5901,5665,2272,5602,6983,7315,2877,6387,5367,5130,6755,2077,1036,4443,5349,5702,1512,3126,6616,3251,1316,7174,2962,4585,5240,5948,3987,4203,169,686,354,238,118,5594,2888,7015,4483,3294,751,5921,2704,3064,362,968,6606,6163,5452,4147,3757,5505,1925,4602,4449,4642,6953,6351,1909,5186,4699,2321,1562,2430,6670,6946,6134,5106,7006,2574,6497,3591,2997,1461,1856,6900,5607,4354,5355,6003,6195,2095,4450,3816,6083,5489,4190,3514,3354,1889,3299,6820,6767,6588,4904,2813,6541,2185,3955,3343,4634,4685,1105,1828,6144,2001,5361,7238,3124,128,6658,2550,6460,2419,1163,6714,3688,4284,2383,3046,1427,3479,6159,3050,2018,113,7263,6922,2182,2806,3399,5359,4967,3932,1058,237,2599,2156,885,5058,5682,5509,2831,6572,5396,1892,5075,5795,4304,3369,1311,4973,5691,1802,3204,414,4978,176,743,6450,1773,6834,6615,416,3840,1596,6006,244,7144,1979,5693,1877,1199,188,6764,4996,1274,2379,2844,1612,4745,4755,4778,4925,6328,6237,1032,6111,5022,812,1140,3293,5667,2945,6072,6977,2268,7244,5307,296,4025,1430,4292,5473,6320,3819,1264,1638,3541,1458,3429,4424,1360,6827,576,7446,6700,5716,4876,6960,5330,4952,6625,3611,5998,5918,1005,2719,2433,2858,3143,642,2562,2782,449,7394,5016,5134,3387,3567,556,3526,5630,3313,5066,650,1215,7359,5511,1555,2049,5165,636,1769,5196,2697,2755,1592,7390,1499,4103,5121,3471,3164,6849,2814,1820,1200,6873,4960,361,4910,7340,2396,4560,6522,944,7151,5188,1362,192,1803,7455,6684,1252,2474,123,3635,3695,3327,7213,5701,83,5213,1288,3566,3292,1793,6266,2087,6683,2553,4970,3941,519,3837,5039,6016,7288,4113,3208,876,6681,5471,5895,4652,4093,3191,1205,1425,4145,4029,6368,2914,6021,691,5322,2186,3871,1419,5239,5377,5216,117,3137,3487,756,3967,5049,2652,5161,3122,4520,1677,1086,3439,3703,3805,5003,6391,6761,7223,4697,4230,4848,4395,6948,4610,6506,7160,4098,4587,4645,5244,4114,1129,4715,4255,604,4101,4741,3929,6733,458,871,967,6048,7030,6655,6809,2567,200,2664,2013,1531,6602,6823,5484,3145,4366,5590,5851,2885,6440,69,6781,932,4601,3754,1886,1831,4909,3891,3787,7323,7181,1192,2926,5641,3548,4791,5398,1608,3637,330,1098,4584,5698,676,2839,974,66,56,1075,4662,3223,7057,5348,2135,1431,4016,2604,6627,6987,3425,3057,4201,5848,5526,7100,3352,7442,5010,5209,2189,4702,6774,7141,5271,2781,3298,3909,6904,280,630,7373,2805,5591,2917,6040,5748,6184,4126,6422,4175,3602,5685,3592,3383,2624,6189,4568,4836,2350,3140,1845,7022,7429,292,2961,2549,1392,6127,744,2180,1564,2253,6106,3338,4215,1964,4209,5111,6344,131,1416,3272,4626,6427,6459,3440,6229,7308,3981,599,2723,3894,3971,4136,919,5447,286,5415,2983,6581,6252,5433,2766,5373,375,3365,2057,3006,5198,1626,1220,1885,4343,1321,3565,6429,3168,3344,7163,4751,1628,1840,4963,5648,6421,6630,4980,5503,3651,1367,6601,2762,3495,3559,3766,5448,2623,3532,6157,5945,988,6416,2108,6671,6709,5883,3278,1417,3827,2157,7451,6990,471,6167,5957,824,1483,6307,591,2988,1846,2462,4615,2668,420,1799,5818,2102,207,5407,5109,3752,1977,3166,5884,1122,6967,3506,2428,1315,4108,6468,2136,1594,7035,2889,1174,1356,6302,2621,6901,4033,1051,4961,504,2860,3076,4468,868,3085,4886,1346,5453,3978,7268,1962,4165,100,7152,4934,4743,1824,1543,7038,2761,1698,1833,6289,5869,6864,6702,1790,7448,587,2896,273,7240,2765,6907,5617,4453,4542,3242,6668,6193,613,1579,2855,5089,3556,3082,2869,3243,6096,3337,12,640,674,2698,4414,1165,6938,6634,2530,252,2524,6471,146,3231,6140,5559,5422,5376,3939,2913,5740,4552,2921,7331,5694,3765,708,7438,1248,6268,3074,4579,2384,4716,4675,194,86,485,5774,4047,3491,241,702,2243,6593,5269,1326,1085,2267,1185,3645,7242,1168,1263,6297,6982,1012,7204,6270,728,5425,5518,5150,3158,7099,6568,911,1919,4811,6466,1675,5930,6361,3970,5552,5603,6715,4213,4606,1435,2100,180,3550,6576,3590,4169,4119,6949,3183,5587,332,692,1204,5235,5824,1857,6825,2299,5454,7416,3842,6730,454,3776,750,4386,31,1369,5469,909,3638,778,6245,1385,3759,5472,2602,6439,5273,4323,1839,2326,1644,1038,2434,6749,737,4236,2443,4641,5719,707,2626,3928,3848,3456,84,4091,1004,2085,6356,3746,6318,5048,5193,7381,4744,1391,6744,5232,6371,7176,1727,4990,543,2689,7290,4046,2190,1941,4355,2867,1777,6985,5459,7119,5494,5912,5598,7409,7104,2450,6386,2716,4900,5773,7281,3284,5297,2596,3171,5640,3362,3692,5363,5099,7207,1667,5282,2672,6063,5268,5135,5900,7420,678,7115,1070,392,4307,4595,303,2715,2125,5984,2735,4834,525,5137,6862,1524,758,1262,437,1384,7354,4164,3958,3347,4503,1050,3623,4254,4271,872,5220,6165,1556,1390,6372,5309,2174,3154,4200,831,3336,4738,5031,1599,2281,7201,145,2146,5382,7342,5548,6930,5344,3511,1329,4735,3340,88,849,3229,6221,4035,6837,4516,5965,4437,371,4242,6203,3750,451,4644,3088,1767,819,6099,6692,3761,552,4410,1506,622,4367,780,568,1515,6138,7400,6908,6220,6892,658,3000,2493,3790,6146,1254,3809,2206,5479,2525,2032,2113,5254,5417,6326,1366,4999,5,4068,754,2164,5357,2092,4583,5360,1634,7477,289,6228,2264,4839,2534,3880,1236,5614,2757,4772,3372,1601,827,5970,1383,830,2927,574,3736,5741,6279,2259,3151,3390,4957,2957,1854,5812,3927,2708,3396,249,380,593,7215,6679,4765,6049,5742,4356,2999,6136,5592,6757,6539,881,2940,4596,5181,3111,4478,5397,6648,5102,6553,5809,6431,7171,4073,2122,7286,1709,5874,2592,1062,7002,1529,4603,4431,5864,2794,2510,2862,6584,5424,6357,3717,5625,5881,6234,6448,2727,77,313,5412,5932,391,1212,4384,2974,4997,3430,6402,2767,4071,2811,7078,7229,4954,262,1076,2226,5833,6338,596,7467,48,1830,3288,7072,4770,2368,3564,836,823,3670,137,2365,922,6994,5390,134,4405,3011,2138,3930,945,1142,5980,857,4003,2947,1475,5721,142,1684,6885,7067,2919,7324,2551,4004,3914,4057,1835,3720,6747,259,800,7031,6129,6690,7333,2134,496,5470,544,5622,2938,1446,7380,4488,3483,5696,1077,5290,1064,211,7379,235,340,6680,3803,4908,3079,2048,989,7187,65,5262,6428,3626,3253,6254,6699,2242,3742,1484,5786,3481,4062,3543,2575,5060,3824,4086,7049,2674,5743,27,4331,5928,1655,4329,3233,1752,216,3090,3260,4872,2175,247,2799,3655,3379,3920,6558,5259,6856,711,321,1370,7360,6410,2161,2703,2233,5541,653,4760,5195,2147,5632,6728,467,360,5050,1534,4060,1558,5237,5276,5096,6564,7297,4056,6331,1197,969,4351,2303,2473,7352,844,4895,5497,5236,1591,4300,6179,804,342,6476,3772,2786,996,4850,6878,1968,2105,7338,2965,6481,139,4381,563,94,571,6621,80,1310,3246,7449,5550,2815,3841,2790,5574,4769,699,7474,5265,2073,461,4170,4460,7348,1188,127,6517,5515,6836,4480,4536,2103,7041,7232,6271,7082,2069,1869,382,4326,228,7343,657,3525,4040,442,1832,930,5566,2366,6660,7206,6080,2569,5228,182,1082,5225,2816,5532,5565,3673,1434,788,1603,1597,2349,481,2627,586,3018,3650,3709,1696,1523,5418,4846,3890,5670,2187,1914,2726,2128,4418,1980,4490,4485,1176,3881,4842,1505,4487,2119,355,4860,3198,4299,4144,3382,1299,3060,6076,6797,1249,2700,2637,3025,6084,5654,3845,5507,90,4161,7005,2334,4492,4915,1453,3983,4146,898,1226,6768,7398,2632,6322,4913,1173,2996,1112,2539,2331,6009,1118,6028,4085,191,7413,5081,4807,2127,6396,1823,2853,3634,5346,4599,6802,5692,474,6921,7014,2657,6384,6400,2338,5143,2154,5652,6244,920,2810,4052,5802,931,5734,3087,279,3095,5647,867,2656,546,3342,3052,2857,3797,1100,7385,685,5879,955,3139,7299,4186,5889,427,1610,1966,3226,3423,2985,4726,7403,3283,1510,2015,2279,2542,4160,2035,790,1838,1479,3086,5545,6997,848,4207,1834,1789,1630,4994,3107,5020,1674,4408,5374,4128,6104,5763,2381,5960,3911,1099,4911,6037,1921,5138,3004,3587,3785,492,110,4473,6726,730,1222,6678,2923,971,2372,5762,4385,6354,5821,2775,1394,6349,5304,736,2046,3099,810,3113,2628,2771,5104,336,5988,1246,5643,4809,1937,1218,3419,3610,6217,1692,4551,3454,6235,6591,7234,993,6866,109,6498,6970,4436,6414,4039,643,4082,5279,495,6050,745,2089,7230,6100,2199,5037,6955,6242,4976,1083,6327,6495,1347,782,1853,2308,2316,1902,1999,5985,93,1439,7017,2711,236,6415,2247,308,6829,3562,6458,2231,7208,3933,1470,4630,3834,3311,6884,5950,4865,1468,2663,4822,1224,2564,5392,3262,3835,7210,6876,5690,4570,6682,1700,6336,366,2817,2232,2086,2345,2830,5223,4419,7472,1536,1876,204,4291,1097,1196,4555,1778,6012,3428,4470,4290,4325,1908,344,4026,3616,6527,2993,5830,6961,5458,4515,870,6218,7314,3773,4713,2580,518,1014,4425,2234,3165,215,6194,1905,3649,3117,479,52,4295,2422,4502,6969,1841,4137,915,1481,5028,7254,835,1207,7367,4435,6036,1907,5440,181,4808,389,4176,5466,703,1121,421,157,4861,3149,245,673,6316,381,3245,5675,1995,2495,1026,3189,889,2854,6231,6589,6284,4992,3367,3924,7456,6053,3106,2198,6650,6562,306,2009,843,4679,6058,7112,4427,489,2271,1025,3148,1115,5316,6060,651,2819,2177,6686,5040,7183,3182,4206,2111,4814,814,6411,2576,7271,6123,5087,4940,7225,2756,402,7186,5168,3843,6563,3462,3916,4058,3658,1804,6991,7034,1239,5683,1375,882,3614,6532,2603,4494,6703,7307,7125,4069,4217,2920,3758,6261,3301,3224,4347,3431,4163,2511,4402,5498,3331,1811,2533,874,1646,6369,1651,7426,5251,6664,3900,6964,1879,6814,3116,2344,5982,6617,3919,4589,806,4559,1306,7012,4349,6114,7383,829,4400,2395,4853,4948,1395,1494,1551,5311,2062,7321,388,4077,5343,6557,2205,4361,3033,4383,6934,5798,5575,333,6725,2864,3937,928,248,6380,311,493,102,1448,3513,2437,6055,6830,1731,5030,497,5899,3186,5838,4874,5810,1695,4315,418,2025,5680,6667,2413,73,5956,6288,4260,4019,1691,2492,3931,2227,1714,3917,33,4345,6219,7410,1351,6128,5073,5300,1765,6695,350,6363,2355,3918,2324,1866,4905,1522,5832,3682,7350,226,3227,396,7008,7464,6282,3613,2873,221,5312,1381,2210,1513,1492,428,4775,716,1059,5110,1898,2311,938,2489,6031,7277,2214,1518,1161,4869,408,4982,6940,2143,4174,6772,177,2863,783,5922,5429,1588,1277,5621,1350,7443,1542,6736,5650,4804,2404,1844,6945,3730,1539,2424,4130,2036,189,7453,4664,4863,3792,4968,4677,1107,4497,6766,5129,1805,2312,2825,681,2078,3349,6748,5966,1657,470,1304,3190,1210,5205,5705,2901,4258,7138,1287,3466,2455,6972,859,5100,4965,3586,2066,1437,5021,1618,7361,1557,4849,2142,6579,5460,3194,3225,1798,1720,2059,240,5380,6044,2833,5292,821,5609,2200,2405,2483,2356,6382,4986,3866,406,4923,2570,7045,4979,4288,4598,7320,2881,3197,668,345,1334,7157,6494,3346,1666,4669,554,2978,5122,6696,2453,796,645,1784,5455,7445,2963,1068,4569,2221,4858,7013,1891,2671,3527,2305,1478,6514,2824,6130,1554,1231,378,6022,4707,7274,3672,3744,3708,1459,130,6713,3444,1268,4036,6978,1291,1153,6457,3363,530,6526,5154,5427,5726,1234,5794,5032,7475,2222,5208,266,198,2386,4318,6560,555,7236,2351,2834,4737,2555,6046,502,2740,1065,1000,1959,7430,242,3422,3042,2505,962,3068,5456,1463,925,5790,7222,210,3093,3546,7091,1297,1302,4285,167,206,4208,5872,6403,5577,2572,5326,4649,4703,7388,4388,4944,5395,1915,3054,4194,5468,607,5569,2752,5715,2075,4059,2911,3975,2041,689,6283,3945,3029,1722,2502,4705,7009,3540,2401,7322,4445,3630,3573,3743,1464,1749,4918,1938,1049,1172,6419,860,5510,4237,3694,6358,3360,2496,6392,734,4272,3490,2768,1852,1702,3605,7421,1286,246,4729,3297,6870,6478,5218,1456,5539,4803,5724,6492,3913,5769,4387,2165,1413,7068,6212,4179,6464,3719,6018,3519,1705,1364,4264,7328,3485,5324,6528,5616,6937,4922,3443,1201,529,2871,6408,179,5362,5145,4875,3753,1629,3647,6301,2060,6143,2842,3328,3290,6504,3669,735,3427,6573,3582,1237,1126,6000,5221,1281,3062,2620,2436,1421,769,3302,23,4229,2932,5012,5589,5319,3398,1482,746,5814,6126,174,4221,6859,1317,3608,7172,5347,5333,6737,5462,6628,4241,3800,1371,2387,894,6807,1917,3581,2294,6618,3228,2865,7042,4689,4129,3771,3239,356,2322,2994,4365,706,4581,1894,2670,1271,4734,2976,4507,1169,1412,3569,3280,4541,5974,6746,6452,5514,3291,5868,749,5317,148,1130,5126,6423,5674,335,1593,3860,6751,2966,5159,2491,1078,4422,6516,5210,3904,4668,3,5077,5987,2415,6599,1973,2494,1996,2094,4021,1760,1473,570,2968,5834,4045,2846,253,4821,4936,4289,239,5656,1137,6287,1260,457,5430,6413,6745,5522,2636,1303,3008,4051,98,2526,1571,4377,6145,2798,6597,1010,2941,2475,1057,3045,4212,2655,4188,5944,3032,5807,4248,3096,4714,6649,5753,7140,4250,1372,6500,254,5952,2306,1581,7000,6887,5962,5169,1101,5761,3178,5578,4489,5717,3474,1123,7423,6064,6819,5865,1024,3371,6182,2573,6310,6007,725,472,6191,3783,6620,6305,7145,1944,6317,5791,7063,7392,4525,4216,797,3177,3588,4540,690,6691,1363,2359,3499,7193,4725,6716,494,6098,3257,5755,7019,2587,5902,4594,3741,5815,6789,3855,4958,4469,374,5119,2261,5437,4828,1546,4024,808,5026,7194,7374,1687,3530,2101,4265,6936,768,4633,3459,4456,3318,4672,7300,1073,5679,6473,696,5295,3075,2680,5419,2744,5383,3125,1774,2694,7092,4819,747,4011,1096,5571,3700,4314,6958,6565,6325,7275,1206,2364,4667,3944,4698,6454,256,3946,2042,594,2298,2,6482,1791,347,3128,965,6980,1928,6875,2953,1167,3001,5402,6633,4417,2618,2335,5739,2360,981,233,4509,7378,2393,1247,5146,4825,150,1450,6434,3279,7011,1718,1184,6265,3972,7436,6963,444,7226,5491,540,6853,6693,2158,111,2796,7080,4523,1489,6879,195,60,2340,1314,5713,1801,1225,2856,1387,6894,6153,5885,1792,3727,883,4306,818,154,6762,5695,2577,2503,1787,5949,3897,7218,958,5320,2037,7114,1983,4281,1343,4920,3954,1151,1444,7228,2717,3418,598,6070,5628,193,4620,1965,6919,1144,3100,2317,1676,6135,694,6455,4342,6687,3210,4638,4180,34,526,671,1604,5907,424,7465,1003,4907,1653,6775,7033,1217,4512,3401,1170,4371,4266,3316,466,6112,4275,1465,3732,2959,2650,3378,7158,7316,517,2409,2611,5517,4428,662,5772,3040,2600,2583,1771,229,297,5871,4789,2123,3801,2444,3469,4648,5629,2342,6629,2990,5327,3267,7437,7364,2354,2594,6425,1717,2090,58,7273,6054,7372,4142,101,1,2215,2545,5500,3160,6417,3494,3475,2416,3105,2737,3058,3731,5014,6176,4462,255,274,652,6443,3380,3674,1870,1235,6390,6795,7396,6015,4671,6168,28,4519,7110,3467,164,4987,1998,7173,2064,1440,2447,5800,4344,1678,7312,1668,5634,7116,1454,6166,5136,3812,2971,6559,5217,635,533,4413,6577,6669,383,7459,6204,446,3829,935,5793,6321,2981,6537,2747,6996,2054,1875,203,4693,4104,5615,4691,7003,5827,5610,4573,959,6337,199,3779,1969,1746,3133,4072,3676,1936,5978,3710,5857,3323,1711,6211,2675,2184,3624,1814,1331,660,6706,4391,3357,7349,6712,5475,5728,5990,7018,581,3892,2361,6790,7427,2131,5783,2827,209,125,59,6891,144,2270,463,6311,2795,1266,6020,7261,5006,3781,1583,6928,4279,412,939,4122,6291,6487,661,5372,5004,1712,753,3449,1027,5352,5967,5027,6804,621,5486,2435,1660,5995,3706,2079,2544,302,4612,6758,4267,7469,4198,4736,3596,634,1354,3811,1422,3956,7425,4064,1190,7452,4609,2329,5416,1382,3872,2512,395,1378,3071,6169,231,637,3070,3329,6230,7169,5572,6545,3817,5354,1044,4926,3921,5750,7347,2208,6088,3764,2939,363,4235,488,4683,6734,2159,5686,315,4711,3205,2192,2431,776,5796,3789,2937,6238,4782,3222,372,2801,4330,7258,1733,1890,4092,3618,4831,6981,6026,4034,6510,6470,1864,4249,4588,3326,2056,3159,6587,97,7069,880,5596,3196,3853,1897,1813,3447,6034,2548,6735,4038,2718,230,4879,6038,291,6785,5927,7216,6181,7291,3533,1570,4296,1988,1785,222,4706,2290,4107,7336,4564,3330,4008,5403,5778,1911,3923,1451,4226,3039,2522,4434,7252,4806,6067,6239,5340,5070,5914,6521,3878,733,5215,2262,4935,377,4404,5606,1756,1132,1887,3782,7457,4337,5573,3400,5554,2487,175,3748,3325,4798,1552,3629,513,1269,2992,3187,4506,3377,2470,1429,2934,1753,4257,3407,225,2969,4081,608,6525,5645,2666,627,3162,4,4628,5767,3219,4390,1786,6614,4784,6345,701,2392,3545,5329,1871,1900,2915,6688,6280,2327,369,3691,4407,5252,5148,6986,3574,5530,2936,4353,3026,2287,3660,4824,2788,1487,1611,2007,4193,7156,6066,789,7330,62,4447,4205,5370,4111,7107,4817,1880,582,2852,5197,5506,3603,3391,6024,5947,2622,7279,1282,5337,3774,1930,2706,1681,268,4845,904,5120,2302,6200,2313,4790,4687,2441,809,4369,4252,3815,217,3436,5141,166,2314,2943,1349,3240,2828,5432,4531,72,5801,159,1882,4605,5904,5328,2677,82,5725,5567,5631,4577,1061,4764,3690,3770,3308,6173,6342,2616,1521,1986,7142,3839,6033,1415,124,5732,2010,864,1084,5303,6467,6465,1861,700,763,6848,577,3442,323,4372,284,7037,7120,1770,5182,514,6424,4962,7094,3072,6116,722,3549,5434,7269,322,5931,267,349,2448,2347,792,1741,3003,4270,149,6162,2498,2836,438,4857,3653,2445,2072,3794,5703,2872,861,5207,1221,6324,2170,4832,3464,1410,475,1563,2052,4043,5112,5406,2540,5845,3664,2513,845,3028,3729,1279,4313,1635,2126,5190,3802,3678,2486,4049,2285,4032,5097,138,1662,4763,4475,4862,7028,6343,1738,6178,7133,501,1289,2336,4117,6943,1033,1007,7004,6538,6201,6927,2683,639,6340,2769,272,2606,2807,5582,2690,6763,3339,5917,1822,3405,512,2252,7358,615,1664,4398,1214,7296,5533,1138,5118,4317,623,5620,3181,155,2705,1490,5124,5436,2371,2541,1719,5375,6272,6137,2031,5855,5366,6496,1849,1578,2874,1615,2837,1963,4134,6078,257,6586,1971,2597,1619,5155,3312,5095,4177,3295,1580,4678,5428,1935,1710,527,4106,2346,2228,4776,2088,3901,2849,2829,811,6109,3806,4333,4096,6019,2406,2982,4883,6646,4928,6445,665,4951,5107,4550,905,6632,1048,2909,5194,508,6224,4396,4812,6241,4622,4457,1432,2521,1671,5894,4048,6718,4801,3627,6571,6753,7365,5242,5678,6171,3813,3745,732,7189,141,3307,4888,6142,3286,4950,3601,2617,3966,7341,4466,5986,4524,3733,3560,7024,7090,1171,580,3922,5410,397,1160,258,934,1878,7089,779,6075,5839,1213,3705,1340,6782,4526,3910,4240,3235,684,759,6653,2654,3161,2688,1178,1002,2682,7123,6262,5358,4854,4280,2998,1009,2348,5745,5323,3885,4451,6005,4105,1895,4855,6395,5638,2991,2028,1569,3520,4870,5780,1751,1093,953,6645,71,331,937,833,1613,3155,2954,1978,4510,5350,5633,1847,337,1584,3992,304,1607,1047,135,5149,1211,7292,5074,583,4476,4429,5588,3069,5068,5170,6185,2725,4378,2273,5019,6732,5013,3473,666,2760,3098,3808,4929,1614,1102,5669,5401,107,1990,6724,487,5529,3437,3585,7198,4676,940,1622,6373,4878,2225,1307,7434,3038,1708,5206,578,11,3420,6603,1423,5954,5993,4575,370,3912,2385,2477,5782,7175,3984,6017,641,3784,5527,5378,5088,987,6662,5788,3893,5806,5671,2841,6590,5924,7178,4303,1179,2110,6199,4340,4511,3047,2843,5860,4972,713,5180,4013,1368,5601,3156,4244,602,825,766,5101,122,6608,3830,970,5117,4578,4109,3877,4301,6214,2989,68,3554,5779,7375,2418,5520,1159,5727,557,6008,6158,1759,822,7245,4452,524,2333,1565,3452,2374,2003,5699,601,6375,1256,5476,5528,2904,7118,3059,5345,5147,1724,960,214,4723,6152,2099,5919,5408,1829,1386,2518,5562,7103,4930,3411,1094,2826,7301,4989,3355,6974,5882,3659,6068,4133,1865,2115,742,6183,3780,5139,4567,5513,7166,3521,5708,1109,152,1294,1694,3583,5946,5969,1152,6298,7313,562,644,3172,320,6315,53,1729,765,1975,1426,6594,4891,7428,1284,1055,2554,3476,3777,4529,5257,4373,3999,851,7406,6030,1659,979,1155,5275,5485,1640,3271,7047,5975,7431,5461,1809,5688,1339,13,817,1018,3333,6611,1019,3907,649,3977,7191,4574,3818,3036,4368,5829,5000,4018,6493,5063,712,5103,4522,364,834,4102,1598,5524,4121,7264,1685,5776,1202,5386,4728,2615,456,2296,1960,6850,3005,2002,316,5613,4167,1405,3016,5116,1748,4504,5553,7460,5125,3861,7211,6905,7362,551,7217,1031,1927,3547,3275,2172,1514,670,879,6932,7177,5247,5898,6042,5561,5714,2148,4810,5444,537,6393,5604,4561,2848,4549,828,3448,6738,4841,2191,3066,3594,2987,2398,6260,4656,4401,5737,2121,4125,1670,760,5052,6405,2639,2899,6052,3480,2707,2556,1779,2439,1974,902,4932,4897,4262,4110,2802,4903,1679,6886,4041,1961,951,2514,854,6540,4727,6626,2696,6069,5754,4218,2644,7155,6263,5341,2070,5981,6933,5294,3986,3648,116,3508,7132,5747,6773,6348,6456,7470,168,3751,6638,3795,6341,3269,5379,5399,2043,14,3199,433,2240,3555,2488,2793,2278,3697,3763,4274,2779,2446,2750,549,6965,1182,539,26,4116,1863,6412,7370,1686,5426,6642,3334,4346,7319,2557,2610,5084,7096,6583,6350,2257,2076,4597,3721,3828,2763,2030,6281,3432,4099,7246,5893,6483,2021,7404,2027,5054,7025,5185,422,5065,2956,6852,3947,982,6915,4647,1706,5811,6248,4572,5891,4937,4061,6931,4067,5766,3537,4680,2894,2764,2734,3486,1396,3080,4969,6359,341,4050,6364,6530,1566,3870,2490,807,4239,1955,1250,5939,50,1528,3883,5144,1858,3384,6023,2590,3643,480,6045,6002,6610,4773,6672,4394,5712,4901,6437,4894,2517,2995,5849,4658,4694,5445,7334,6057,5546,892,39,3814,7073,2204,6196,2421,5880,1881,3366,2449,6125,6047,3505,2681,16,3500,985,4779,4833,3762,7276,212,4382,4892,5649,5586,826,3851,7122,5624,3492,1825,4827,3735,265,283,1754,3206,3094,298,4856,5938,6520,7227,3903,74,646,786,841,3646,3092,1818,5384,7010,6529,3212,6988,3953,6844,715,4732,4132,5639,6071,3926,5478,4484,2589,6780,282,5516,1135,6374,223,5663,966,343,4259,1547,319,6207,5227,6115,2307,4781,2942,1609,5689,3077,3202,269,6677,5999,5579,3305,6313,4867,3142,4981,4921,1251,675,5781,1276,2063,2055,3083,6306,2019,6808,4441,3351,1776,5580,5850,2950,6255,4392,7235,7040,695,3370,5847,3895,4439,6973,3996,767,5502,1496,3820,7280,2739,3990,5477,2407,4308,4508,6799,3617,1278,2074,1940,3207,2504,4463,3625,4442,6295,5816,6346,4135,5414,3684,3850,4912,2835,2731,4350,6208,6786,7303,5487,3012,5057,4219,5091,5042,7077,3335,1445,293,770,5673,1046,187,7095,3289,2906,1071,2770,5744,7188,6304,1104,6547,2276,1716,5758,7065,7108,2912,1757,6469,7016,7478,2729,6851,4120,275,5943,5722,890,2809,6685,3510,1127,7056,774,6449,4471,5388,1970,5248,2509,687,2678,1158,4446,1106,2051,1507,1438,3628,6717,6952,5034,1848,4118,2791,42,1486,2588,5368,2429,2162,5920,7131,6708,21,4312,5404,5306,2970,2098,5916,886,2507,2859,2593,5730,6141,4624,550,2578,464,1074,1541,2928,7355,352,6750,1794,1943,2295,1981,7317,81,4150,5963,5098,5023,5184,4632,1404,6971,1028,6256,5681,3410,1590,103,3724,633,5585,1929,4083,1672,5439,3852,328,5549,5041,1519,1030,1989,4461,1658,2464,6056,4720,136,1549,5080,7450,3740,2216,2662,6150,3796,2468,3468,3310,4991,6485,6895,6910,4031,7117,1355,5658,7195,5187,3788,7134,719,6783,5955,2005,1742,973,2701,4613,185,1548,3696,2454,4238,5873,5909,6828,394,409,1815,2561,5008,3864,2256,5605,6461,6779,1110,614,2380,994,5488,1842,2903,4247,6796,5278,3358,3136,2979,5055,6333,4364,2149,4363,777,196,6216,2552,7161,2964,4539,156,197,7053,2171,1477,1341,2497,4646,2679,949,976,3359,956,3041,3385,3230,6110,3898,3174,1595,6213,6598,3639,1406,2948,7476,5660,2459,1308,1401,1261,5413,3114,2352,407,3232,5356,2584,1497,5113,1901,1690,7196,1305,3192,5953,6543,1141,1951,7076,977,5064,1504,6090,926,2714,1157,6846,1739,3876,3502,158,7376,7071,2651,3768,3176,1585,2310,3115,5067,7199,2458,2320,3714,486,7087,6509,6499,3173,4379,4543,2742,739,5538,4623,1952,2986,3415,263,887,714,1535,7326,3021,4075,2560,5826,2376,277,6323,6534,1732,2332,942,6059,5241,5283,2713,6299,4228,3693,6925,4823,1775,1312,4156,4877,3959,2117,2420,4321,5534,3875,507,4730,3884,386,5287,5115,6151,4171,6845,2751,941,1532,1606,3666,4927,5482,3862,6275,1209,6507,5284,6675,1187,5627,924,5387,2892,5474,523,1816,5286,367,2408,6798,837,3873,1280,264,1654,4000,7389,2217,7256,5600,1301,3144,4006,862,4184,1244,3081,5687,7248,2614,2876,4243,2820,429,4055,7139,1150,6209,47,7149,4708,4590,6175,3998,6188,3856,2591,2515,2179,6535,6812,2116,1896,300,4695,4657,3123,2377,1069,1500,4826,5583,1949,4984,4988,3962,575,3509,24,2466,3656,4319,4151,5105,802,4310,510,2460,718,483,3472,3908,2918,832,5391,1993,505,6334,3679,6347,4752,4432,251,2712,2647,7257,7439,6441,20,7368,5752,3350,5564,3868,7084,3957,4420,5828,6592,7051,440,1113,5229,3593,6551,4881,1680,5996,4896,7058,6889,3906,5906,667,1636,2975,6401,1701,6984,6107,4076,5046,1755,6723,1125,5212,2630,5174,4655,2585,6536,473,4851,3663,7148,1631,3264,2188,6286,6652,4621,1520,5272,3739,2736,2399,2330,2442,2414,1008,1476,2020,290,5642,2866,7424,1328,899,4780,3503,6273,3632,1198,1095,4253,5151,75,4719,6267,1953,2633,2605,6383,1447,2579,4887,1498,2935,3102,4458,2391,6399,4818,6474,5508,4220,3738,5211,5177,2753,1509,4204,460,2248,584,610,6389,5178,4224,1991,5997,3214,3951,38,2500,5342,3561,6308,1428,5720,2702,4758,2006,3315,3388,2746,3831,6365,579,465,6249,1393,3536,1139,2686,2660,4966,459,7325,4187,5979,4263,6942,3238,3043,5746,2535,7064,2875,6035,7305,5483,3668,2033,1203,5597,2973,3622,295,6906,6250,3110,6865,1873,4493,4155,405,4546,2169,1537,3667,3138,2456,7435,4527,3274,3822,4532,5764,542,4767,741,4486,803,2283,365,4690,22,3961,2047,3265,900,2634,5854,820,3571,3458,1324,1162,3484,1942,417,1903,6897,6954,3461,1272,3960,1034,4793,4397,5201,4070,17,5114,3127,7481,2566,4498,2353,1650,6149,3846,5709,5635,4748,683,476,5158,1906,2667,4335,3402,7098,6094,7433,310,4797,441,6170,3791,5389,5291,6890,5443,1872,7046,2016,6420,2529,3552,3179,3979,143,1376,1335,2309,5255,891,5768,5313,1572,5005,5843,6548,232,762,305,3130,2804,2878,3497,2024,7128,5697,2898,1452,6855,6477,5202,3216,5644,916,4479,7327,3838,3386,2687,4328,1931,6832,57,6666,64,7205,2910,3528,545,7066,1270,1735,1389,445,44,933,2481,4556,2318,4088,6550,5123,4152,3680,1643,2730,4079,1273,998,399,4974,7126,3539,4882,3147,6877,5156,6707,1661,385,6843,3707,6426,432,4159,912,3865,1656,6519,950,4065,588,781,625,4688,1533,4094,3879,4830,3687,2213,1648,3575,6803,6001,114,1267,1407,45,3445,585,6944,2201,183,1418,5001,1320,7044,6285,6479,171,4332,5495,435,631,19,5231,4746,5612,5078,6739,6039,618,6697,6770,963,2684,161,672,5002,2808,3938,5281,2245,4534,6698,2759,4771,4947,1259,2692,5733,1352,5886,6502,1275,6824,5338,4535,5246,1414,4682,6105,3940,2784,55,7164,7251,5661,7285,6893,6759,2558,2609,7179,3689,6920,629,7402,6103,1035,184,4139,5512,4953,5314,3681,6246,2150,5301,936,6575,2266,2895,151,2924,1817,2648,3980,991,4919,1836,6503,3152,7412,6490,5267,1088,1837,7168,903,5199,2140,553,2754,1997,2758,3989,1647,2274,7200,1090,964,2183,2239,5315,4298,2612,2067,278,3263,4455,5172,1290,6264,1011,1761,4334,4182,3726,1219,6475,6600,4153,7306,4454,1639,6236,7060,6432,3621,589,5657,6743,2044,3185,3451,18,521,6011,4286,1922,2640,4670,6555,1424,5808,7101,54,6792,5934,4696,4149,2166,1325,6651,4223,37,1884,4409,4914,5394,7260,2173,6665,6314,1726,1713,4173,3620,2058,314,5289,2710,112,3277,3146,3631,1145,522,740,2508,3854,4359,105,901,6913,1449,6061,5653,4880,5256,1916,5836,7109,2212,5127,6740,4089,5332,816,1186,4592,2645,3716,7447,4759,4635,852,2375,910,6993,2275,771,566,6578,63,4358,5835,4467,5925,547,2868,1758,3976,6409,2289,7184,3677,2944,4639,4012,6131,6258,4233,5570,469,2861,6447,3119,3698,4168,1926,7468,6378,6995,7043,3424,3568,5152,1574,4692,7407,1228,4717,1495,6484,5167,2638,5723,2124,2423,7052,2773,6512,6025,531,7088,5557,1060,1697,6329,1932,4795,5435,3598,2284,5926,6914,6663,677,1893,7386,4282,7295,5890,897,1851,1783,3833,1411,1923,3203,3213,7384,4837,7026,3699,5009,3905,3035,7048,893,3356,5245,638,7106,2160,339,4465,6113,4322,4138,3460,6190,842,4278,6079,7039,2519,6613,2949,869,4747,219,7414,3589,120,4949,1982,972,4339,6353,3017,3450,5076,7214,710,3397,1764,752,866,2083,3281,6388,4196,6956,865,2238,3282,6101,2244,6501,1517,6119,1183,5822,4783,5299,609,1669,7075,4430,3576,301,515,3949,2812,2922,5420,3535,2403,4762,6544,5086,5166,5318,5531,1867,5804,1737,4766,7081,5270,3091,5551,3141,5662,8,560,2229,6659,6838,448,3150,108,76,5897,3755,5029,5817,7353,4566,693,5525,7247,997,5797,2235,218,6950,4141,6806,2608,29,6863,5171,1623,6605,425,3662,5619,7458,3374,5450,1728,4844,2370,6631,1043,2382,1442,3823,6226,6486,1143,220,5876,3184,4115,5837,6004,3348,3097,5521,5672,1103,3034,5785,3544,4124,7369,2297,5789,3832 ================================================ FILE: data/kitti_split1/devkit/matlab/computeBox3D.m ================================================ function [corners_2D,face_idx] = computeBox3D(object,P) % takes an object and a projection matrix (P) and projects the 3D % bounding box into the image plane. % index for 3D bounding box faces face_idx = [ 1,2,6,5 % front face 2,3,7,6 % left face 3,4,8,7 % back face 4,1,5,8]; % right face % compute rotational matrix around yaw axis R = [+cos(object.ry), 0, +sin(object.ry); 0, 1, 0; -sin(object.ry), 0, +cos(object.ry)]; % 3D bounding box dimensions l = object.l; w = object.w; h = object.h; % 3D bounding box corners x_corners = [l/2, l/2, -l/2, -l/2, l/2, l/2, -l/2, -l/2]; y_corners = [0,0,0,0,-h,-h,-h,-h]; z_corners = [w/2, -w/2, -w/2, w/2, w/2, -w/2, -w/2, w/2]; % rotate and translate 3D bounding box corners_3D = R*[x_corners;y_corners;z_corners]; corners_3D(1,:) = corners_3D(1,:) + object.t(1); corners_3D(2,:) = corners_3D(2,:) + object.t(2); corners_3D(3,:) = corners_3D(3,:) + object.t(3); % only draw 3D bounding box for objects in front of the camera if any(corners_3D(3,:)<0.1) corners_2D = []; return; end % project the 3D bounding box into the image plane corners_2D = projectToImage(corners_3D, P); ================================================ FILE: data/kitti_split1/devkit/matlab/computeOrientation3D.m ================================================ function [orientation_2D] = computeOrientation3D(object,P) % takes an object and a projection matrix (P) and projects the 3D % object orientation vector into the image plane. % compute rotational matrix around yaw axis R = [cos(object.ry), 0, sin(object.ry); 0, 1, 0; -sin(object.ry), 0, cos(object.ry)]; % orientation in object coordinate system orientation_3D = [0.0, object.l 0.0, 0.0 0.0, 0.0]; % rotate and translate in camera coordinate system, project in image orientation_3D = R*orientation_3D; orientation_3D(1,:) = orientation_3D(1,:) + object.t(1); orientation_3D(2,:) = orientation_3D(2,:) + object.t(2); orientation_3D(3,:) = orientation_3D(3,:) + object.t(3); % vector behind image plane? if any(orientation_3D(3,:)<0.1) orientation_2D = []; return; end % project orientation into the image plane orientation_2D = projectToImage(orientation_3D,P); ================================================ FILE: data/kitti_split1/devkit/matlab/drawBox2D.m ================================================ function drawBox2D(h,object) % set styles for occlusion and truncation occ_col = {'g','y','r','w'}; trun_style = {'-','--'}; % draw regular objects if ~strcmp(object.type,'DontCare') % show rectangular bounding boxes pos = [object.x1,object.y1,object.x2-object.x1+1,object.y2-object.y1+1]; trc = double(object.truncation>0.1)+1; rectangle('Position',pos,'EdgeColor',occ_col{object.occlusion+1},... 'LineWidth',3,'LineStyle',trun_style{trc},'parent',h(1).axes) rectangle('Position',pos,'EdgeColor','b', 'parent', h(1).axes) % draw label label_text = sprintf('%s\n%1.1f rad',object.type,object.alpha); x = (object.x1+object.x2)/2; y = object.y1; text(x,max(y-5,40),label_text,'color',occ_col{object.occlusion+1},... 'BackgroundColor','k','HorizontalAlignment','center',... 'VerticalAlignment','bottom','FontWeight','bold',... 'FontSize',8,'parent',h(1).axes); % draw don't care regions else % draw dotted rectangle pos = [object.x1,object.y1,object.x2-object.x1+1,object.y2-object.y1+1]; rectangle('Position',pos,'EdgeColor','c',... 'LineWidth',2,'LineStyle','-','parent',h(1).axes) end ================================================ FILE: data/kitti_split1/devkit/matlab/drawBox3D.m ================================================ function drawBox3D(h,object,corners,face_idx,orientation) % set styles for occlusion and truncation occ_col = {'g','y','r','w'}; trun_style = {'-','--'}; trc = double(object.truncation>0.1)+1; % draw projected 3D bounding boxes if ~isempty(corners) for f=1:4 line([corners(1,face_idx(f,:)),corners(1,face_idx(f,1))]+1,... [corners(2,face_idx(f,:)),corners(2,face_idx(f,1))]+1,... 'parent',h(2).axes, 'color',occ_col{object.occlusion+1},... 'LineWidth',3,'LineStyle',trun_style{trc}); line([corners(1,face_idx(f,:)),corners(1,face_idx(f,1))]+1,... [corners(2,face_idx(f,:)),corners(2,face_idx(f,1))]+1,... 'parent',h(2).axes,'color','b','LineWidth',1); end end % draw orientation vector if ~isempty(orientation) line([orientation(1,:),orientation(1,:)]+1,... [orientation(2,:),orientation(2,:)]+1,... 'parent',h(2).axes,'color','w','LineWidth',4); line([orientation(1,:),orientation(1,:)]+1,... [orientation(2,:),orientation(2,:)]+1,... 'parent',h(2).axes,'color','k','LineWidth',2); end end ================================================ FILE: data/kitti_split1/devkit/matlab/projectToImage.m ================================================ function pts_2D = projectToImage(pts_3D, P) % PROJECTTOIMAGE projects 3D points in given coordinate system in the image % plane using the given projection matrix P. % % Usage: pts_2D = projectToImage(pts_3D, P) % input: pts_3D: 3xn matrix % P: 3x4 projection matrix % output: pts_2D: 2xn matrix % % last edited on: 2012-02-27 % Philip Lenz - lenz@kit.edu % project in image pts_2D = P * [pts_3D; ones(1,size(pts_3D,2))]; % scale projected points pts_2D(1,:) = pts_2D(1,:)./pts_2D(3,:); pts_2D(2,:) = pts_2D(2,:)./pts_2D(3,:); pts_2D(3,:) = []; end ================================================ FILE: data/kitti_split1/devkit/matlab/readCalibration.m ================================================ function P = readCalibration(calib_dir,img_idx,cam) % load 3x4 projection matrix P = dlmread(sprintf('%s/%06d.txt',calib_dir,img_idx),' ',0,1); P = P(cam+1,:); P = reshape(P ,[4,3])'; end ================================================ FILE: data/kitti_split1/devkit/matlab/readLabels.m ================================================ function objects = readLabels(label_dir,img_idx) % parse input file fid = fopen(sprintf('%s/%06d.txt',label_dir,img_idx),'r'); C = textscan(fid,'%s %f %d %f %f %f %f %f %f %f %f %f %f %f %f','delimiter', ' '); fclose(fid); % for all objects do objects = []; for o = 1:numel(C{1}) % extract label, truncation, occlusion lbl = C{1}(o); % for converting: cell -> string objects(o).type = lbl{1}; % 'Car', 'Pedestrian', ... objects(o).truncation = C{2}(o); % truncated pixel ratio ([0..1]) objects(o).occlusion = C{3}(o); % 0 = visible, 1 = partly occluded, 2 = fully occluded, 3 = unknown objects(o).alpha = C{4}(o); % object observation angle ([-pi..pi]) % extract 2D bounding box in 0-based coordinates objects(o).x1 = C{5}(o); % left objects(o).y1 = C{6}(o); % top objects(o).x2 = C{7}(o); % right objects(o).y2 = C{8}(o); % bottom % extract 3D bounding box information objects(o).h = C{9} (o); % box width objects(o).w = C{10}(o); % box height objects(o).l = C{11}(o); % box length objects(o).t(1) = C{12}(o); % location (x) objects(o).t(2) = C{13}(o); % location (y) objects(o).t(3) = C{14}(o); % location (z) objects(o).ry = C{15}(o); % yaw angle end ================================================ FILE: data/kitti_split1/devkit/matlab/run_demo.m ================================================ % KITTI OBJECT DETECTION AND ORIENTATION ESTIMATION BENCHMARK DEMONSTRATION % % This tool displays the images and the object labels for the benchmark and % provides an entry point for writing your own interface to the data set. % Before running this tool, set root_dir to the directory where you have % downloaded the dataset. 'root_dir' must contain the subdirectory % 'training', which in turn contains 'image_2', 'label_2' and 'calib'. % For more information about the data format, please look into readme.txt. % % Usage: % SPACE: next frame % '-': last frame % 'x': +10 frames % 'y': -10 frames % q: quit % % Occlusion Coding: % green: not occluded % yellow: partly occluded % red: fully occluded % white: unknown % % Truncation Coding: % solid: not truncated % dashed: truncated % clear and close everything clear all; close all; disp('======= KITTI DevKit Demo ======='); % options root_dir = '/media/data/kitti/2012_object'; data_set = 'training'; % get sub-directories cam = 2; % 2 = left color camera image_dir = fullfile(root_dir,[data_set '/image_' num2str(cam)]); label_dir = fullfile(root_dir,[data_set '/label_' num2str(cam)]); calib_dir = fullfile(root_dir,[data_set '/calib']); % get number of images for this dataset nimages = length(dir(fullfile(image_dir, '*.png'))); % set up figure h = visualization('init',image_dir); % main loop img_idx=0; while 1 % load projection matrix P = readCalibration(calib_dir,img_idx,cam); % load labels objects = readLabels(label_dir,img_idx); % visualization update for next frame visualization('update',image_dir,h,img_idx,nimages,data_set); % for all annotated objects do for obj_idx=1:numel(objects) % plot 2D bounding box drawBox2D(h,objects(obj_idx)); % plot 3D bounding box [corners,face_idx] = computeBox3D(objects(obj_idx),P); orientation = computeOrientation3D(objects(obj_idx),P); drawBox3D(h, objects(obj_idx),corners,face_idx,orientation); end % force drawing and tiny user interface waitforbuttonpress; key = get(gcf,'CurrentCharacter'); switch lower(key) case 'q', break; % quit case '-', img_idx = max(img_idx-1, 0); % previous frame case 'x', img_idx = min(img_idx+1000,nimages-1); % +100 frames case 'y', img_idx = max(img_idx-1000,0); % -100 frames otherwise, img_idx = min(img_idx+1, nimages-1); % next frame end end % clean up close all; ================================================ FILE: data/kitti_split1/devkit/matlab/run_readWriteDemo.m ================================================ % clear and close everything clear all; close all; disp('======= KITTI DevKit Demo ======='); root_dir = '/media/karlsruhe_data/kitti/2012_object'; train_dir = fullfile(root_dir,'/training/label_2'); test_dir = '.'; % location of your testing dir % read objects of first training image train_objects = readLabels(train_dir,0); % loop over all images % ... YOUR TRAINING CODE HERE ... % ... YOUR TESTING CODE HERE ... % detect one object (car) in first test image test_objects(1).type = 'Car'; test_objects(1).x1 = 10; test_objects(1).y1 = 10; test_objects(1).x2 = 100; test_objects(1).y2 = 100; test_objects(1).alpha = pi/2; test_objects(1).score = 0.5; % write object to file writeLabels(test_objects,test_dir,0); disp('Test label file written!'); ================================================ FILE: data/kitti_split1/devkit/matlab/run_statistics.m ================================================ % KITTI OBJECT DETECTION AND ORIENTATION ESTIMATION BENCHMARK STATISTICS clear all; close all; clc; disp('======= KITTI DevKit Statistics ======='); disp('Computing statistics of Cars, Pedestrians and Cyclists in training set.'); disp('Please wait ...'); % options root_dir = '/media/karlsruhe_data/kitti/2012_object'; % get label directory and number of images label_dir = fullfile(root_dir,'training/label_2'); nimages = length(dir(fullfile(label_dir, '*.txt'))); % init statistics cars.occ = zeros(1,4); peds.occ = zeros(1,4); cycs.occ = zeros(1,4); % compute statistics for j=1:nimages objects = readLabels(label_dir,j-1); for k=1:length(objects) if strcmp(objects(k).type,'Car') cars.occ(objects(k).occlusion+1) = cars.occ(objects(k).occlusion+1) + 1; end if strcmp(objects(k).type,'Pedestrian') peds.occ(objects(k).occlusion+1) = peds.occ(objects(k).occlusion+1) + 1; end if strcmp(objects(k).type,'Cyclist') cycs.occ(objects(k).occlusion+1) = cycs.occ(objects(k).occlusion+1) + 1; end end end % plot statistics fprintf('Cars: Not occluded: %d, partly occluded: %d, largely occluded: %d, unknown: %d\n',cars.occ); fprintf('Pedestrians: Not occluded: %d, partly occluded: %d, largely occluded: %d, unknown: %d\n',peds.occ); fprintf('Cyclists: Not occluded: %d, partly occluded: %d, largely occluded: %d, unknown: %d\n',cycs.occ); ================================================ FILE: data/kitti_split1/devkit/matlab/visualization.m ================================================ function varargout = visualization(mode,image_dir,varargin) switch mode % init figure case 'init' % create figure using size of first image in repository fig = figure(1); img = imread(sprintf('%s/%06d.png',image_dir,0)); set(fig,'position',[0,30,0.8*size(img,2),0.8*2*size(img,1)]); h(1).axes = axes('position',[0,0.5,1,0.5]); h(2).axes = axes('position',[0,0,1,0.5]); varargout{1} = h; % update figure case 'update' % unpack input arguments h = varargin{1}; img_idx = varargin{2}; nimages = varargin{3}; data_set = varargin{4}; % read image img = imread(sprintf('%s/%06d.png',image_dir,img_idx)); % clear axes, draw image cla(h(1).axes); cla(h(2).axes); imshow(img,'parent',h(1).axes); axis(h(1).axes,'image','off'); hold(h(1).axes, 'on'); imshow(img,'parent',h(2).axes); axis(h(2).axes,'image','off'); hold(h(2).axes, 'on'); % title text(size(img,2)/2,3,sprintf('2D Bounding Boxes'),'parent',h(1).axes,'color','g','HorizontalAlignment','center','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); text(size(img,2)/2,3,sprintf('3D Bounding Boxes'),'parent',h(2).axes,'color','g','HorizontalAlignment','center','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); % legend text(0,00,'Not occluded','parent',h(1).axes,'color','g','HorizontalAlignment','left','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); text(0,30,'Partly occluded','parent',h(1).axes,'color','y','HorizontalAlignment','left','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); text(0,60,'Fully occluded','parent',h(1).axes,'color','r','HorizontalAlignment','left','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); text(0,90,'Unknown','parent',h(1).axes,'color','w','HorizontalAlignment','left','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); text(0,120,'Don''t care region','parent',h(1).axes,'color','c','HorizontalAlignment','left','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); % frame number text(size(img,2),0,sprintf('%s set frame %d/%d',data_set,img_idx,nimages-1), 'parent', h(1).axes,'color','g','HorizontalAlignment','right','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); % usage instructions text(size(img,2)/2,size(img,1),sprintf('''SPACE'': Next Image | ''-'': Previous Image | ''x'': +1000 | ''y'': -1000 | ''q'': quit'), 'parent', h(2).axes,'color','g','HorizontalAlignment','center','VerticalAlignment','bottom','FontSize',14,'FontWeight','bold', 'BackgroundColor','black'); end ================================================ FILE: data/kitti_split1/devkit/matlab/writeLabels.m ================================================ function writeLabels(objects,label_dir,img_idx) % parse input file fid = fopen(sprintf('%s/%06d.txt',label_dir,img_idx),'w'); % for all objects do for o = 1:numel(objects) % set label, truncation, occlusion if isfield(objects(o),'type'), fprintf(fid,'%s ',objects(o).type); else error('ERROR: type not specified!'), end; if isfield(objects(o),'truncation'), fprintf(fid,'%.2f ',objects(o).truncation); else fprintf(fid,'-1 '); end; % default if isfield(objects(o),'occlusion'), fprintf(fid,'%.d ',objects(o).occlusion); else fprintf(fid,'-1 '); end; % default if isfield(objects(o),'alpha'), fprintf(fid,'%.2f ',wrapToPi(objects(o).alpha)); else fprintf(fid,'-10 '); end; % default % set 2D bounding box in 0-based C++ coordinates if isfield(objects(o),'x1'), fprintf(fid,'%.2f ',objects(o).x1); else error('ERROR: x1 not specified!'); end; if isfield(objects(o),'y1'), fprintf(fid,'%.2f ',objects(o).y1); else error('ERROR: y1 not specified!'); end; if isfield(objects(o),'x2'), fprintf(fid,'%.2f ',objects(o).x2); else error('ERROR: x2 not specified!'); end; if isfield(objects(o),'y2'), fprintf(fid,'%.2f ',objects(o).y2); else error('ERROR: y2 not specified!'); end; % set 3D bounding box if isfield(objects(o),'h'), fprintf(fid,'%.2f ',objects(o).h); else fprintf(fid,'-1 '); end; % default if isfield(objects(o),'w'), fprintf(fid,'%.2f ',objects(o).w); else fprintf(fid,'-1 '); end; % default if isfield(objects(o),'l'), fprintf(fid,'%.2f ',objects(o).l); else fprintf(fid,'-1 '); end; % default if isfield(objects(o),'t'), fprintf(fid,'%.2f %.2f %.2f ',objects(o).t); else fprintf(fid,'-1000 -1000 -1000 '); end; % default if isfield(objects(o),'ry'), fprintf(fid,'%.2f ',wrapToPi(objects(o).ry)); else fprintf(fid,'-10 '); end; % default % set score if isfield(objects(o),'score'), fprintf(fid,'%.2f ',objects(o).score); else error('ERROR: score not specified!'); end; % next line fprintf(fid,'\n'); end % close file fclose(fid); function alpha = wrapToPi(alpha) % wrap to [0..2*pi] alpha = mod(alpha,2*pi); % wrap to [-pi..pi] idx = alpha>pi; alpha(idx) = alpha(idx)-2*pi; ================================================ FILE: data/kitti_split1/devkit/readme.txt ================================================ ########################################################################### # THE KITTI VISION BENCHMARK SUITE: OBJECT BENCHMARK # # Andreas Geiger Philip Lenz Raquel Urtasun # # Karlsruhe Institute of Technology # # Toyota Technological Institute at Chicago # # www.cvlibs.net # ########################################################################### For recent updates see http://www.cvlibs.net/datasets/kitti/eval_object.php. This file describes the KITTI 2D object detection and orientation estimation benchmark, the 3D object detection benchmark and the bird's eye view benchmark. The benchmarks consist of 7481 training images (and point clouds) and 7518 test images (and point clouds) for each task. Despite the fact that we have labeled 8 different classes, only the classes 'Car' and 'Pedestrian' are evaluated in our benchmark, as only for those classes enough instances for a comprehensive evaluation have been labeled. The labeling process has been performed in two steps: First we hired a set of annotators, to label 3D bounding boxe tracklets in point clouds. Since for a pedestrian tracklet, a single 3D bounding box tracklet (dimensions have been fixed) often fits badly, we additionally labeled the left/right boundaries of each object by making use of Mechanical Turk. We also collected labels of the object's occlusion state, and computed the object's truncation via backprojecting a car/pedestrian model into the image plane. NOTE: WHEN SUBMITTING RESULTS, PLEASE STORE THEM IN THE SAME DATA FORMAT IN WHICH THE GROUND TRUTH DATA IS PROVIDED (SEE BELOW), USING THE FILE NAMES 000000.txt 000001.txt ... CREATE A ZIP ARCHIVE OF THEM AND STORE YOUR RESULTS (ONLY THE RESULTS OF THE TEST SET) IN ITS ROOT FOLDER. NOTE2: Please read the bottom of this file carefully if you plan to evaluate results yourself on the training set. NOTE3: WHEN SUBMITTING RESULTS FOR THE 3D OBJECT DETECTION BENCHMARK OR THE BIRD'S EYE VIEW BENCHMARK (AS OF 2017), READ THE INSTRUCTIONS BELOW CAREFULLY. IN PARTICULAR, MAKE SURE TO ALWAYS SUBMIT BOTH THE 2D BOUNDING BOXES AND THE 3D BOUNDING BOXES AND FILTER BOUNDING BOXES NOT VISIBLE ON THE IMAGE PLANE. Data Format Description ======================= The data for training and testing can be found in the corresponding folders. The sub-folders are structured as follows: - image_02/ contains the left color camera images (png) - label_02/ contains the left color camera label files (plain text files) - calib/ contains the calibration for all four cameras (plain text file) The label files contain the following information, which can be read and written using the matlab tools (readLabels.m, writeLabels.m) provided within this devkit. All values (numerical or strings) are separated via spaces, each row corresponds to one object. The 15 columns represent: #Values Name Description ---------------------------------------------------------------------------- 1 type Describes the type of object: 'Car', 'Van', 'Truck', 'Pedestrian', 'Person_sitting', 'Cyclist', 'Tram', 'Misc' or 'DontCare' 1 truncated Float from 0 (non-truncated) to 1 (truncated), where truncated refers to the object leaving image boundaries 1 occluded Integer (0,1,2,3) indicating occlusion state: 0 = fully visible, 1 = partly occluded 2 = largely occluded, 3 = unknown 1 alpha Observation angle of object, ranging [-pi..pi] 4 bbox 2D bounding box of object in the image (0-based index): contains left, top, right, bottom pixel coordinates 3 dimensions 3D object dimensions: height, width, length (in meters) 3 location 3D object location x,y,z in camera coordinates (in meters) 1 rotation_y Rotation ry around Y-axis in camera coordinates [-pi..pi] 1 score Only for results: Float, indicating confidence in detection, needed for p/r curves, higher is better. Here, 'DontCare' labels denote regions in which objects have not been labeled, for example because they have been too far away from the laser scanner. To prevent such objects from being counted as false positives our evaluation script will ignore objects detected in don't care regions of the test set. You can use the don't care labels in the training set to avoid that your object detector is harvesting hard negatives from those areas, in case you consider non-object regions from the training images as negative examples. The coordinates in the camera coordinate system can be projected in the image by using the 3x4 projection matrix in the calib folder, where for the left color camera for which the images are provided, P2 must be used. The difference between rotation_y and alpha is, that rotation_y is directly given in camera coordinates, while alpha also considers the vector from the camera center to the object center, to compute the relative orientation of the object with respect to the camera. For example, a car which is facing along the X-axis of the camera coordinate system corresponds to rotation_y=0, no matter where it is located in the X/Z plane (bird's eye view), while alpha is zero only, when this object is located along the Z-axis of the camera. When moving the car away from the Z-axis, the observation angle will change. To project a point from Velodyne coordinates into the left color image, you can use this formula: x = P2 * R0_rect * Tr_velo_to_cam * y For the right color image: x = P3 * R0_rect * Tr_velo_to_cam * y Note: All matrices are stored row-major, i.e., the first values correspond to the first row. R0_rect contains a 3x3 matrix which you need to extend to a 4x4 matrix by adding a 1 as the bottom-right element and 0's elsewhere. Tr_xxx is a 3x4 matrix (R|t), which you need to extend to a 4x4 matrix in the same way! Note, that while all this information is available for the training data, only the data which is actually needed for the particular benchmark must be provided to the evaluation server. However, all 15 values must be provided at all times, with the unused ones set to their default values (=invalid) as specified in writeLabels.m. Additionally a 16'th value must be provided with a floating value of the score for a particular detection, where higher indicates higher confidence in the detection. The range of your scores will be automatically determined by our evaluation server, you don't have to normalize it, but it should be roughly linear. If you use writeLabels.m for writing your results, this function will take care of storing all required data correctly. 2D Object Detection Benchmark ============================= The goal in the 2D object detection task is to train object detectors for the classes 'Car', 'Pedestrian', and 'Cyclist'. The object detectors must provide as output the 2D 0-based bounding box in the image using the format specified above, as well as a detection score, indicating the confidence in the detection. All other values must be set to their default values (=invalid), see above. One text file per image must be provided in a zip archive, where each file can contain many detections, depending on the number of objects per image. In our evaluation we only evaluate detections/ objects larger than 25 pixel (height) in the image and do not count 'Van' as false positives for 'Car' or 'Sitting Person' as false positive for 'Pedestrian' due to their similarity in appearance. As evaluation criterion we follow PASCAL and require the intersection-over-union of bounding boxes to be larger than 50% for an object to be detected correctly. Object Orientation Estimation Benchmark ======================================= This benchmark is similar as the previous one, except that you have to provide additionally the most likely relative object observation angle (=alpha) for each detection. As described in our paper, our score here considers both, the detection performance as well as the orientation estimation performance of the algorithm jointly. 3D Object Detection Benchmark ============================= The goal in the 3D object detection task is to train object detectors for the classes 'Car', 'Pedestrian', and 'Cyclist'. The object detectors must provide BOTH the 2D 0-based bounding box in the image as well as the 3D bounding box (in the format specified above, i.e. 3D dimensions and 3D locations) and the detection score/confidence. Note that the 2D bounding box should correspond to the projection of the 3D bounding box - this is required to filter objects larger than 25 pixel (height). We also note that not all objects in the point clouds have been labeled. To avoid false positives, detections not visible on the image plane should be filtered (the evaluation does not take care of this, see 'cpp/evaluate_object.cpp'). Similar to the 2D object detection benchmark, we do not count 'Van' as false positives for 'Car' or 'Sitting Person' as false positive for 'Pedestrian'. Evaluation criterion follows the 2D object detection benchmark (using 3D bounding box overlap). Bird's Eye View Benchmark ========================= The goal in the bird's eye view detection task is to train object detectors for the classes 'Car', 'Pedestrian', and 'Cyclist' where the detectors must provide BOTH the 2D 0-based bounding box in the image as well as the 3D bounding box in bird's eye view and the detection score/confidence. This means that the 3D bounding box does not have to include information on the height axis, i.e. the height of the bounding box and the bounding box location along the height axis. For example, when evaluating the bird's eye view benchmark only (without the 3D object detection benchmark), the height of the bounding box can be set to a value equal to or smaller than zero. Similarly, the y-axis location of the bounding box can be set to -1000 (note that an arbitrary negative value will not work). As above, we note that the 2D bounding boxes are required to filter objects larger than 25 pixel (height) and that - to avoid false positives - detections not visible on the image plane should be filtered. As in all benchmarks, we do not count 'Van' as false positives for 'Car' or 'Sitting Person' as false positive for 'Pedestrian'. Evaluation criterion follows the above benchmarks using a bird's eye view bounding box overlap. Mapping to Raw Data =================== Note that this section is additional to the benchmark, and not required for solving the object detection task. In order to allow the usage of the laser point clouds, gps data, the right camera image and the grayscale images for the TRAINING data as well, we provide the mapping of the training set to the raw data of the KITTI dataset. This information is saved in mapping/train_mapping.txt and train_rand.txt: train_rand.txt: Random permutation, assigning a unique index to each image from the object detection training set. The index is 1-based. train_mapping.txt: Maps each unique index (= 1-based line numbers) to a zip file of the KITTI raw data set files. Note that those files are split into several categories on the website! Example: Image 0 from the training set has index 7282 and maps to date 2011_09_28, drive 106 and frame 48. Drives and frames are 0-based. Evaluation Protocol: ==================== For transparency we have included the KITTI evaluation code in the subfolder 'cpp' of this development kit. It can be compiled via: g++ -O3 -DNDEBUG -o evaluate_object evaluate_object.cpp or using CMake and the provided 'CMakeLists.txt'. IMPORTANT NOTE: This code will result in 41 values (41 recall discretization steps). However, note that in order to compute average precision, we follow the PASCAL protocol and average by summing in 10% recall steps. The pseudocode for computing average precision or orientation similarity is given as follows: sum = 0; for (i=0; i<=40; i+=4) sum += vals[i]; average = sum/11.0; ================================================ FILE: data/kitti_split1/setup_split.py ================================================ from importlib import import_module from getopt import getopt import scipy.io as sio import matplotlib.pyplot as plt from matplotlib.path import Path import numpy as np import pprint import sys import os import cv2 import math import shutil import re # stop python from writing so much bytecode sys.dont_write_bytecode = True sys.path.append(os.getcwd()) np.set_printoptions(suppress=True) # ----------------------------------------- # custom modules # ----------------------------------------- from lib.util import * split = 'kitti_split1' # base paths base_data = os.path.join(os.getcwd(), 'data') kitti_raw = dict() kitti_raw['cal'] = os.path.join(base_data, 'kitti', 'training', 'calib') kitti_raw['ims'] = os.path.join(base_data, 'kitti', 'training', 'image_2') kitti_raw['lab'] = os.path.join(base_data, 'kitti', 'training', 'label_2') kitti_raw['pre'] = os.path.join(base_data, 'kitti', 'training', 'prev_2') kitti_tra = dict() kitti_tra['cal'] = os.path.join(base_data, split, 'training', 'calib') kitti_tra['ims'] = os.path.join(base_data, split, 'training', 'image_2') kitti_tra['lab'] = os.path.join(base_data, split, 'training', 'label_2') kitti_tra['pre'] = os.path.join(base_data, split, 'training', 'prev_2') kitti_val = dict() kitti_val['cal'] = os.path.join(base_data, split, 'validation', 'calib') kitti_val['ims'] = os.path.join(base_data, split, 'validation', 'image_2') kitti_val['lab'] = os.path.join(base_data, split, 'validation', 'label_2') kitti_val['pre'] = os.path.join(base_data, split, 'validation', 'prev_2') tra_file = os.path.join(base_data, split, 'train.txt') val_file = os.path.join(base_data, split, 'val.txt') # mkdirs mkdir_if_missing(kitti_tra['cal']) mkdir_if_missing(kitti_tra['ims']) mkdir_if_missing(kitti_tra['lab']) mkdir_if_missing(kitti_tra['pre']) mkdir_if_missing(kitti_val['cal']) mkdir_if_missing(kitti_val['ims']) mkdir_if_missing(kitti_val['lab']) mkdir_if_missing(kitti_val['pre']) print('Linking train') text_file = open(tra_file, 'r') imind = 0 for line in text_file: parsed = re.search('(\d+)', line) if parsed is not None: id = str(parsed[0]) new_id = '{:06d}'.format(imind) if not os.path.exists(os.path.join(kitti_tra['cal'], str(new_id) + '.txt')): os.symlink(os.path.join(kitti_raw['cal'], str(id) + '.txt'), os.path.join(kitti_tra['cal'], str(new_id) + '.txt')) if not os.path.exists(os.path.join(kitti_tra['ims'], str(new_id) + '.png')): os.symlink(os.path.join(kitti_raw['ims'], str(id) + '.png'), os.path.join(kitti_tra['ims'], str(new_id) + '.png')) if not os.path.exists(os.path.join(kitti_tra['pre'], str(new_id) + '_01.png')): os.symlink(os.path.join(kitti_raw['pre'], str(id) + '_01.png'), os.path.join(kitti_tra['pre'], str(new_id) + '_01.png')) if not os.path.exists(os.path.join(kitti_tra['pre'], str(new_id) + '_02.png')): os.symlink(os.path.join(kitti_raw['pre'], str(id) + '_02.png'), os.path.join(kitti_tra['pre'], str(new_id) + '_02.png')) if not os.path.exists(os.path.join(kitti_tra['pre'], str(new_id) + '_03.png')): os.symlink(os.path.join(kitti_raw['pre'], str(id) + '_03.png'), os.path.join(kitti_tra['pre'], str(new_id) + '_03.png')) if not os.path.exists(os.path.join(kitti_tra['lab'], str(new_id) + '.txt')): os.symlink(os.path.join(kitti_raw['lab'], str(id) + '.txt'), os.path.join(kitti_tra['lab'], str(new_id) + '.txt')) imind += 1 text_file.close() print('Linking val') text_file = open(val_file, 'r') imind = 0 for line in text_file: parsed = re.search('(\d+)', line) if parsed is not None: id = str(parsed[0]) new_id = '{:06d}'.format(imind) if not os.path.exists(os.path.join(kitti_val['cal'], str(new_id) + '.txt')): os.symlink(os.path.join(kitti_raw['cal'], str(id) + '.txt'), os.path.join(kitti_val['cal'], str(new_id) + '.txt')) if not os.path.exists(os.path.join(kitti_val['ims'], str(new_id) + '.png')): os.symlink(os.path.join(kitti_raw['ims'], str(id) + '.png'), os.path.join(kitti_val['ims'], str(new_id) + '.png')) if not os.path.exists(os.path.join(kitti_val['pre'], str(new_id) + '_01.png')): os.symlink(os.path.join(kitti_raw['pre'], str(id) + '_01.png'), os.path.join(kitti_val['pre'], str(new_id) + '_01.png')) if not os.path.exists(os.path.join(kitti_val['pre'], str(new_id) + '_02.png')): os.symlink(os.path.join(kitti_raw['pre'], str(id) + '_02.png'), os.path.join(kitti_val['pre'], str(new_id) + '_02.png')) if not os.path.exists(os.path.join(kitti_val['pre'], str(new_id) + '_03.png')): os.symlink(os.path.join(kitti_raw['pre'], str(id) + '_03.png'), os.path.join(kitti_val['pre'], str(new_id) + '_03.png')) if not os.path.exists(os.path.join(kitti_val['lab'], str(new_id) + '.txt')): os.symlink(os.path.join(kitti_raw['lab'], str(id) + '.txt'), os.path.join(kitti_val['lab'], str(new_id) + '.txt')) imind += 1 text_file.close() print('Done') ================================================ FILE: data/kitti_split1/test.txt ================================================ 000000 000001 000002 000003 000004 000005 000006 000007 000008 000009 000010 000011 000012 000013 000014 000015 000016 000017 000018 000019 000020 000021 000022 000023 000024 000025 000026 000027 000028 000029 000030 000031 000032 000033 000034 000035 000036 000037 000038 000039 000040 000041 000042 000043 000044 000045 000046 000047 000048 000049 000050 000051 000052 000053 000054 000055 000056 000057 000058 000059 000060 000061 000062 000063 000064 000065 000066 000067 000068 000069 000070 000071 000072 000073 000074 000075 000076 000077 000078 000079 000080 000081 000082 000083 000084 000085 000086 000087 000088 000089 000090 000091 000092 000093 000094 000095 000096 000097 000098 000099 000100 000101 000102 000103 000104 000105 000106 000107 000108 000109 000110 000111 000112 000113 000114 000115 000116 000117 000118 000119 000120 000121 000122 000123 000124 000125 000126 000127 000128 000129 000130 000131 000132 000133 000134 000135 000136 000137 000138 000139 000140 000141 000142 000143 000144 000145 000146 000147 000148 000149 000150 000151 000152 000153 000154 000155 000156 000157 000158 000159 000160 000161 000162 000163 000164 000165 000166 000167 000168 000169 000170 000171 000172 000173 000174 000175 000176 000177 000178 000179 000180 000181 000182 000183 000184 000185 000186 000187 000188 000189 000190 000191 000192 000193 000194 000195 000196 000197 000198 000199 000200 000201 000202 000203 000204 000205 000206 000207 000208 000209 000210 000211 000212 000213 000214 000215 000216 000217 000218 000219 000220 000221 000222 000223 000224 000225 000226 000227 000228 000229 000230 000231 000232 000233 000234 000235 000236 000237 000238 000239 000240 000241 000242 000243 000244 000245 000246 000247 000248 000249 000250 000251 000252 000253 000254 000255 000256 000257 000258 000259 000260 000261 000262 000263 000264 000265 000266 000267 000268 000269 000270 000271 000272 000273 000274 000275 000276 000277 000278 000279 000280 000281 000282 000283 000284 000285 000286 000287 000288 000289 000290 000291 000292 000293 000294 000295 000296 000297 000298 000299 000300 000301 000302 000303 000304 000305 000306 000307 000308 000309 000310 000311 000312 000313 000314 000315 000316 000317 000318 000319 000320 000321 000322 000323 000324 000325 000326 000327 000328 000329 000330 000331 000332 000333 000334 000335 000336 000337 000338 000339 000340 000341 000342 000343 000344 000345 000346 000347 000348 000349 000350 000351 000352 000353 000354 000355 000356 000357 000358 000359 000360 000361 000362 000363 000364 000365 000366 000367 000368 000369 000370 000371 000372 000373 000374 000375 000376 000377 000378 000379 000380 000381 000382 000383 000384 000385 000386 000387 000388 000389 000390 000391 000392 000393 000394 000395 000396 000397 000398 000399 000400 000401 000402 000403 000404 000405 000406 000407 000408 000409 000410 000411 000412 000413 000414 000415 000416 000417 000418 000419 000420 000421 000422 000423 000424 000425 000426 000427 000428 000429 000430 000431 000432 000433 000434 000435 000436 000437 000438 000439 000440 000441 000442 000443 000444 000445 000446 000447 000448 000449 000450 000451 000452 000453 000454 000455 000456 000457 000458 000459 000460 000461 000462 000463 000464 000465 000466 000467 000468 000469 000470 000471 000472 000473 000474 000475 000476 000477 000478 000479 000480 000481 000482 000483 000484 000485 000486 000487 000488 000489 000490 000491 000492 000493 000494 000495 000496 000497 000498 000499 000500 000501 000502 000503 000504 000505 000506 000507 000508 000509 000510 000511 000512 000513 000514 000515 000516 000517 000518 000519 000520 000521 000522 000523 000524 000525 000526 000527 000528 000529 000530 000531 000532 000533 000534 000535 000536 000537 000538 000539 000540 000541 000542 000543 000544 000545 000546 000547 000548 000549 000550 000551 000552 000553 000554 000555 000556 000557 000558 000559 000560 000561 000562 000563 000564 000565 000566 000567 000568 000569 000570 000571 000572 000573 000574 000575 000576 000577 000578 000579 000580 000581 000582 000583 000584 000585 000586 000587 000588 000589 000590 000591 000592 000593 000594 000595 000596 000597 000598 000599 000600 000601 000602 000603 000604 000605 000606 000607 000608 000609 000610 000611 000612 000613 000614 000615 000616 000617 000618 000619 000620 000621 000622 000623 000624 000625 000626 000627 000628 000629 000630 000631 000632 000633 000634 000635 000636 000637 000638 000639 000640 000641 000642 000643 000644 000645 000646 000647 000648 000649 000650 000651 000652 000653 000654 000655 000656 000657 000658 000659 000660 000661 000662 000663 000664 000665 000666 000667 000668 000669 000670 000671 000672 000673 000674 000675 000676 000677 000678 000679 000680 000681 000682 000683 000684 000685 000686 000687 000688 000689 000690 000691 000692 000693 000694 000695 000696 000697 000698 000699 000700 000701 000702 000703 000704 000705 000706 000707 000708 000709 000710 000711 000712 000713 000714 000715 000716 000717 000718 000719 000720 000721 000722 000723 000724 000725 000726 000727 000728 000729 000730 000731 000732 000733 000734 000735 000736 000737 000738 000739 000740 000741 000742 000743 000744 000745 000746 000747 000748 000749 000750 000751 000752 000753 000754 000755 000756 000757 000758 000759 000760 000761 000762 000763 000764 000765 000766 000767 000768 000769 000770 000771 000772 000773 000774 000775 000776 000777 000778 000779 000780 000781 000782 000783 000784 000785 000786 000787 000788 000789 000790 000791 000792 000793 000794 000795 000796 000797 000798 000799 000800 000801 000802 000803 000804 000805 000806 000807 000808 000809 000810 000811 000812 000813 000814 000815 000816 000817 000818 000819 000820 000821 000822 000823 000824 000825 000826 000827 000828 000829 000830 000831 000832 000833 000834 000835 000836 000837 000838 000839 000840 000841 000842 000843 000844 000845 000846 000847 000848 000849 000850 000851 000852 000853 000854 000855 000856 000857 000858 000859 000860 000861 000862 000863 000864 000865 000866 000867 000868 000869 000870 000871 000872 000873 000874 000875 000876 000877 000878 000879 000880 000881 000882 000883 000884 000885 000886 000887 000888 000889 000890 000891 000892 000893 000894 000895 000896 000897 000898 000899 000900 000901 000902 000903 000904 000905 000906 000907 000908 000909 000910 000911 000912 000913 000914 000915 000916 000917 000918 000919 000920 000921 000922 000923 000924 000925 000926 000927 000928 000929 000930 000931 000932 000933 000934 000935 000936 000937 000938 000939 000940 000941 000942 000943 000944 000945 000946 000947 000948 000949 000950 000951 000952 000953 000954 000955 000956 000957 000958 000959 000960 000961 000962 000963 000964 000965 000966 000967 000968 000969 000970 000971 000972 000973 000974 000975 000976 000977 000978 000979 000980 000981 000982 000983 000984 000985 000986 000987 000988 000989 000990 000991 000992 000993 000994 000995 000996 000997 000998 000999 001000 001001 001002 001003 001004 001005 001006 001007 001008 001009 001010 001011 001012 001013 001014 001015 001016 001017 001018 001019 001020 001021 001022 001023 001024 001025 001026 001027 001028 001029 001030 001031 001032 001033 001034 001035 001036 001037 001038 001039 001040 001041 001042 001043 001044 001045 001046 001047 001048 001049 001050 001051 001052 001053 001054 001055 001056 001057 001058 001059 001060 001061 001062 001063 001064 001065 001066 001067 001068 001069 001070 001071 001072 001073 001074 001075 001076 001077 001078 001079 001080 001081 001082 001083 001084 001085 001086 001087 001088 001089 001090 001091 001092 001093 001094 001095 001096 001097 001098 001099 001100 001101 001102 001103 001104 001105 001106 001107 001108 001109 001110 001111 001112 001113 001114 001115 001116 001117 001118 001119 001120 001121 001122 001123 001124 001125 001126 001127 001128 001129 001130 001131 001132 001133 001134 001135 001136 001137 001138 001139 001140 001141 001142 001143 001144 001145 001146 001147 001148 001149 001150 001151 001152 001153 001154 001155 001156 001157 001158 001159 001160 001161 001162 001163 001164 001165 001166 001167 001168 001169 001170 001171 001172 001173 001174 001175 001176 001177 001178 001179 001180 001181 001182 001183 001184 001185 001186 001187 001188 001189 001190 001191 001192 001193 001194 001195 001196 001197 001198 001199 001200 001201 001202 001203 001204 001205 001206 001207 001208 001209 001210 001211 001212 001213 001214 001215 001216 001217 001218 001219 001220 001221 001222 001223 001224 001225 001226 001227 001228 001229 001230 001231 001232 001233 001234 001235 001236 001237 001238 001239 001240 001241 001242 001243 001244 001245 001246 001247 001248 001249 001250 001251 001252 001253 001254 001255 001256 001257 001258 001259 001260 001261 001262 001263 001264 001265 001266 001267 001268 001269 001270 001271 001272 001273 001274 001275 001276 001277 001278 001279 001280 001281 001282 001283 001284 001285 001286 001287 001288 001289 001290 001291 001292 001293 001294 001295 001296 001297 001298 001299 001300 001301 001302 001303 001304 001305 001306 001307 001308 001309 001310 001311 001312 001313 001314 001315 001316 001317 001318 001319 001320 001321 001322 001323 001324 001325 001326 001327 001328 001329 001330 001331 001332 001333 001334 001335 001336 001337 001338 001339 001340 001341 001342 001343 001344 001345 001346 001347 001348 001349 001350 001351 001352 001353 001354 001355 001356 001357 001358 001359 001360 001361 001362 001363 001364 001365 001366 001367 001368 001369 001370 001371 001372 001373 001374 001375 001376 001377 001378 001379 001380 001381 001382 001383 001384 001385 001386 001387 001388 001389 001390 001391 001392 001393 001394 001395 001396 001397 001398 001399 001400 001401 001402 001403 001404 001405 001406 001407 001408 001409 001410 001411 001412 001413 001414 001415 001416 001417 001418 001419 001420 001421 001422 001423 001424 001425 001426 001427 001428 001429 001430 001431 001432 001433 001434 001435 001436 001437 001438 001439 001440 001441 001442 001443 001444 001445 001446 001447 001448 001449 001450 001451 001452 001453 001454 001455 001456 001457 001458 001459 001460 001461 001462 001463 001464 001465 001466 001467 001468 001469 001470 001471 001472 001473 001474 001475 001476 001477 001478 001479 001480 001481 001482 001483 001484 001485 001486 001487 001488 001489 001490 001491 001492 001493 001494 001495 001496 001497 001498 001499 001500 001501 001502 001503 001504 001505 001506 001507 001508 001509 001510 001511 001512 001513 001514 001515 001516 001517 001518 001519 001520 001521 001522 001523 001524 001525 001526 001527 001528 001529 001530 001531 001532 001533 001534 001535 001536 001537 001538 001539 001540 001541 001542 001543 001544 001545 001546 001547 001548 001549 001550 001551 001552 001553 001554 001555 001556 001557 001558 001559 001560 001561 001562 001563 001564 001565 001566 001567 001568 001569 001570 001571 001572 001573 001574 001575 001576 001577 001578 001579 001580 001581 001582 001583 001584 001585 001586 001587 001588 001589 001590 001591 001592 001593 001594 001595 001596 001597 001598 001599 001600 001601 001602 001603 001604 001605 001606 001607 001608 001609 001610 001611 001612 001613 001614 001615 001616 001617 001618 001619 001620 001621 001622 001623 001624 001625 001626 001627 001628 001629 001630 001631 001632 001633 001634 001635 001636 001637 001638 001639 001640 001641 001642 001643 001644 001645 001646 001647 001648 001649 001650 001651 001652 001653 001654 001655 001656 001657 001658 001659 001660 001661 001662 001663 001664 001665 001666 001667 001668 001669 001670 001671 001672 001673 001674 001675 001676 001677 001678 001679 001680 001681 001682 001683 001684 001685 001686 001687 001688 001689 001690 001691 001692 001693 001694 001695 001696 001697 001698 001699 001700 001701 001702 001703 001704 001705 001706 001707 001708 001709 001710 001711 001712 001713 001714 001715 001716 001717 001718 001719 001720 001721 001722 001723 001724 001725 001726 001727 001728 001729 001730 001731 001732 001733 001734 001735 001736 001737 001738 001739 001740 001741 001742 001743 001744 001745 001746 001747 001748 001749 001750 001751 001752 001753 001754 001755 001756 001757 001758 001759 001760 001761 001762 001763 001764 001765 001766 001767 001768 001769 001770 001771 001772 001773 001774 001775 001776 001777 001778 001779 001780 001781 001782 001783 001784 001785 001786 001787 001788 001789 001790 001791 001792 001793 001794 001795 001796 001797 001798 001799 001800 001801 001802 001803 001804 001805 001806 001807 001808 001809 001810 001811 001812 001813 001814 001815 001816 001817 001818 001819 001820 001821 001822 001823 001824 001825 001826 001827 001828 001829 001830 001831 001832 001833 001834 001835 001836 001837 001838 001839 001840 001841 001842 001843 001844 001845 001846 001847 001848 001849 001850 001851 001852 001853 001854 001855 001856 001857 001858 001859 001860 001861 001862 001863 001864 001865 001866 001867 001868 001869 001870 001871 001872 001873 001874 001875 001876 001877 001878 001879 001880 001881 001882 001883 001884 001885 001886 001887 001888 001889 001890 001891 001892 001893 001894 001895 001896 001897 001898 001899 001900 001901 001902 001903 001904 001905 001906 001907 001908 001909 001910 001911 001912 001913 001914 001915 001916 001917 001918 001919 001920 001921 001922 001923 001924 001925 001926 001927 001928 001929 001930 001931 001932 001933 001934 001935 001936 001937 001938 001939 001940 001941 001942 001943 001944 001945 001946 001947 001948 001949 001950 001951 001952 001953 001954 001955 001956 001957 001958 001959 001960 001961 001962 001963 001964 001965 001966 001967 001968 001969 001970 001971 001972 001973 001974 001975 001976 001977 001978 001979 001980 001981 001982 001983 001984 001985 001986 001987 001988 001989 001990 001991 001992 001993 001994 001995 001996 001997 001998 001999 002000 002001 002002 002003 002004 002005 002006 002007 002008 002009 002010 002011 002012 002013 002014 002015 002016 002017 002018 002019 002020 002021 002022 002023 002024 002025 002026 002027 002028 002029 002030 002031 002032 002033 002034 002035 002036 002037 002038 002039 002040 002041 002042 002043 002044 002045 002046 002047 002048 002049 002050 002051 002052 002053 002054 002055 002056 002057 002058 002059 002060 002061 002062 002063 002064 002065 002066 002067 002068 002069 002070 002071 002072 002073 002074 002075 002076 002077 002078 002079 002080 002081 002082 002083 002084 002085 002086 002087 002088 002089 002090 002091 002092 002093 002094 002095 002096 002097 002098 002099 002100 002101 002102 002103 002104 002105 002106 002107 002108 002109 002110 002111 002112 002113 002114 002115 002116 002117 002118 002119 002120 002121 002122 002123 002124 002125 002126 002127 002128 002129 002130 002131 002132 002133 002134 002135 002136 002137 002138 002139 002140 002141 002142 002143 002144 002145 002146 002147 002148 002149 002150 002151 002152 002153 002154 002155 002156 002157 002158 002159 002160 002161 002162 002163 002164 002165 002166 002167 002168 002169 002170 002171 002172 002173 002174 002175 002176 002177 002178 002179 002180 002181 002182 002183 002184 002185 002186 002187 002188 002189 002190 002191 002192 002193 002194 002195 002196 002197 002198 002199 002200 002201 002202 002203 002204 002205 002206 002207 002208 002209 002210 002211 002212 002213 002214 002215 002216 002217 002218 002219 002220 002221 002222 002223 002224 002225 002226 002227 002228 002229 002230 002231 002232 002233 002234 002235 002236 002237 002238 002239 002240 002241 002242 002243 002244 002245 002246 002247 002248 002249 002250 002251 002252 002253 002254 002255 002256 002257 002258 002259 002260 002261 002262 002263 002264 002265 002266 002267 002268 002269 002270 002271 002272 002273 002274 002275 002276 002277 002278 002279 002280 002281 002282 002283 002284 002285 002286 002287 002288 002289 002290 002291 002292 002293 002294 002295 002296 002297 002298 002299 002300 002301 002302 002303 002304 002305 002306 002307 002308 002309 002310 002311 002312 002313 002314 002315 002316 002317 002318 002319 002320 002321 002322 002323 002324 002325 002326 002327 002328 002329 002330 002331 002332 002333 002334 002335 002336 002337 002338 002339 002340 002341 002342 002343 002344 002345 002346 002347 002348 002349 002350 002351 002352 002353 002354 002355 002356 002357 002358 002359 002360 002361 002362 002363 002364 002365 002366 002367 002368 002369 002370 002371 002372 002373 002374 002375 002376 002377 002378 002379 002380 002381 002382 002383 002384 002385 002386 002387 002388 002389 002390 002391 002392 002393 002394 002395 002396 002397 002398 002399 002400 002401 002402 002403 002404 002405 002406 002407 002408 002409 002410 002411 002412 002413 002414 002415 002416 002417 002418 002419 002420 002421 002422 002423 002424 002425 002426 002427 002428 002429 002430 002431 002432 002433 002434 002435 002436 002437 002438 002439 002440 002441 002442 002443 002444 002445 002446 002447 002448 002449 002450 002451 002452 002453 002454 002455 002456 002457 002458 002459 002460 002461 002462 002463 002464 002465 002466 002467 002468 002469 002470 002471 002472 002473 002474 002475 002476 002477 002478 002479 002480 002481 002482 002483 002484 002485 002486 002487 002488 002489 002490 002491 002492 002493 002494 002495 002496 002497 002498 002499 002500 002501 002502 002503 002504 002505 002506 002507 002508 002509 002510 002511 002512 002513 002514 002515 002516 002517 002518 002519 002520 002521 002522 002523 002524 002525 002526 002527 002528 002529 002530 002531 002532 002533 002534 002535 002536 002537 002538 002539 002540 002541 002542 002543 002544 002545 002546 002547 002548 002549 002550 002551 002552 002553 002554 002555 002556 002557 002558 002559 002560 002561 002562 002563 002564 002565 002566 002567 002568 002569 002570 002571 002572 002573 002574 002575 002576 002577 002578 002579 002580 002581 002582 002583 002584 002585 002586 002587 002588 002589 002590 002591 002592 002593 002594 002595 002596 002597 002598 002599 002600 002601 002602 002603 002604 002605 002606 002607 002608 002609 002610 002611 002612 002613 002614 002615 002616 002617 002618 002619 002620 002621 002622 002623 002624 002625 002626 002627 002628 002629 002630 002631 002632 002633 002634 002635 002636 002637 002638 002639 002640 002641 002642 002643 002644 002645 002646 002647 002648 002649 002650 002651 002652 002653 002654 002655 002656 002657 002658 002659 002660 002661 002662 002663 002664 002665 002666 002667 002668 002669 002670 002671 002672 002673 002674 002675 002676 002677 002678 002679 002680 002681 002682 002683 002684 002685 002686 002687 002688 002689 002690 002691 002692 002693 002694 002695 002696 002697 002698 002699 002700 002701 002702 002703 002704 002705 002706 002707 002708 002709 002710 002711 002712 002713 002714 002715 002716 002717 002718 002719 002720 002721 002722 002723 002724 002725 002726 002727 002728 002729 002730 002731 002732 002733 002734 002735 002736 002737 002738 002739 002740 002741 002742 002743 002744 002745 002746 002747 002748 002749 002750 002751 002752 002753 002754 002755 002756 002757 002758 002759 002760 002761 002762 002763 002764 002765 002766 002767 002768 002769 002770 002771 002772 002773 002774 002775 002776 002777 002778 002779 002780 002781 002782 002783 002784 002785 002786 002787 002788 002789 002790 002791 002792 002793 002794 002795 002796 002797 002798 002799 002800 002801 002802 002803 002804 002805 002806 002807 002808 002809 002810 002811 002812 002813 002814 002815 002816 002817 002818 002819 002820 002821 002822 002823 002824 002825 002826 002827 002828 002829 002830 002831 002832 002833 002834 002835 002836 002837 002838 002839 002840 002841 002842 002843 002844 002845 002846 002847 002848 002849 002850 002851 002852 002853 002854 002855 002856 002857 002858 002859 002860 002861 002862 002863 002864 002865 002866 002867 002868 002869 002870 002871 002872 002873 002874 002875 002876 002877 002878 002879 002880 002881 002882 002883 002884 002885 002886 002887 002888 002889 002890 002891 002892 002893 002894 002895 002896 002897 002898 002899 002900 002901 002902 002903 002904 002905 002906 002907 002908 002909 002910 002911 002912 002913 002914 002915 002916 002917 002918 002919 002920 002921 002922 002923 002924 002925 002926 002927 002928 002929 002930 002931 002932 002933 002934 002935 002936 002937 002938 002939 002940 002941 002942 002943 002944 002945 002946 002947 002948 002949 002950 002951 002952 002953 002954 002955 002956 002957 002958 002959 002960 002961 002962 002963 002964 002965 002966 002967 002968 002969 002970 002971 002972 002973 002974 002975 002976 002977 002978 002979 002980 002981 002982 002983 002984 002985 002986 002987 002988 002989 002990 002991 002992 002993 002994 002995 002996 002997 002998 002999 003000 003001 003002 003003 003004 003005 003006 003007 003008 003009 003010 003011 003012 003013 003014 003015 003016 003017 003018 003019 003020 003021 003022 003023 003024 003025 003026 003027 003028 003029 003030 003031 003032 003033 003034 003035 003036 003037 003038 003039 003040 003041 003042 003043 003044 003045 003046 003047 003048 003049 003050 003051 003052 003053 003054 003055 003056 003057 003058 003059 003060 003061 003062 003063 003064 003065 003066 003067 003068 003069 003070 003071 003072 003073 003074 003075 003076 003077 003078 003079 003080 003081 003082 003083 003084 003085 003086 003087 003088 003089 003090 003091 003092 003093 003094 003095 003096 003097 003098 003099 003100 003101 003102 003103 003104 003105 003106 003107 003108 003109 003110 003111 003112 003113 003114 003115 003116 003117 003118 003119 003120 003121 003122 003123 003124 003125 003126 003127 003128 003129 003130 003131 003132 003133 003134 003135 003136 003137 003138 003139 003140 003141 003142 003143 003144 003145 003146 003147 003148 003149 003150 003151 003152 003153 003154 003155 003156 003157 003158 003159 003160 003161 003162 003163 003164 003165 003166 003167 003168 003169 003170 003171 003172 003173 003174 003175 003176 003177 003178 003179 003180 003181 003182 003183 003184 003185 003186 003187 003188 003189 003190 003191 003192 003193 003194 003195 003196 003197 003198 003199 003200 003201 003202 003203 003204 003205 003206 003207 003208 003209 003210 003211 003212 003213 003214 003215 003216 003217 003218 003219 003220 003221 003222 003223 003224 003225 003226 003227 003228 003229 003230 003231 003232 003233 003234 003235 003236 003237 003238 003239 003240 003241 003242 003243 003244 003245 003246 003247 003248 003249 003250 003251 003252 003253 003254 003255 003256 003257 003258 003259 003260 003261 003262 003263 003264 003265 003266 003267 003268 003269 003270 003271 003272 003273 003274 003275 003276 003277 003278 003279 003280 003281 003282 003283 003284 003285 003286 003287 003288 003289 003290 003291 003292 003293 003294 003295 003296 003297 003298 003299 003300 003301 003302 003303 003304 003305 003306 003307 003308 003309 003310 003311 003312 003313 003314 003315 003316 003317 003318 003319 003320 003321 003322 003323 003324 003325 003326 003327 003328 003329 003330 003331 003332 003333 003334 003335 003336 003337 003338 003339 003340 003341 003342 003343 003344 003345 003346 003347 003348 003349 003350 003351 003352 003353 003354 003355 003356 003357 003358 003359 003360 003361 003362 003363 003364 003365 003366 003367 003368 003369 003370 003371 003372 003373 003374 003375 003376 003377 003378 003379 003380 003381 003382 003383 003384 003385 003386 003387 003388 003389 003390 003391 003392 003393 003394 003395 003396 003397 003398 003399 003400 003401 003402 003403 003404 003405 003406 003407 003408 003409 003410 003411 003412 003413 003414 003415 003416 003417 003418 003419 003420 003421 003422 003423 003424 003425 003426 003427 003428 003429 003430 003431 003432 003433 003434 003435 003436 003437 003438 003439 003440 003441 003442 003443 003444 003445 003446 003447 003448 003449 003450 003451 003452 003453 003454 003455 003456 003457 003458 003459 003460 003461 003462 003463 003464 003465 003466 003467 003468 003469 003470 003471 003472 003473 003474 003475 003476 003477 003478 003479 003480 003481 003482 003483 003484 003485 003486 003487 003488 003489 003490 003491 003492 003493 003494 003495 003496 003497 003498 003499 003500 003501 003502 003503 003504 003505 003506 003507 003508 003509 003510 003511 003512 003513 003514 003515 003516 003517 003518 003519 003520 003521 003522 003523 003524 003525 003526 003527 003528 003529 003530 003531 003532 003533 003534 003535 003536 003537 003538 003539 003540 003541 003542 003543 003544 003545 003546 003547 003548 003549 003550 003551 003552 003553 003554 003555 003556 003557 003558 003559 003560 003561 003562 003563 003564 003565 003566 003567 003568 003569 003570 003571 003572 003573 003574 003575 003576 003577 003578 003579 003580 003581 003582 003583 003584 003585 003586 003587 003588 003589 003590 003591 003592 003593 003594 003595 003596 003597 003598 003599 003600 003601 003602 003603 003604 003605 003606 003607 003608 003609 003610 003611 003612 003613 003614 003615 003616 003617 003618 003619 003620 003621 003622 003623 003624 003625 003626 003627 003628 003629 003630 003631 003632 003633 003634 003635 003636 003637 003638 003639 003640 003641 003642 003643 003644 003645 003646 003647 003648 003649 003650 003651 003652 003653 003654 003655 003656 003657 003658 003659 003660 003661 003662 003663 003664 003665 003666 003667 003668 003669 003670 003671 003672 003673 003674 003675 003676 003677 003678 003679 003680 003681 003682 003683 003684 003685 003686 003687 003688 003689 003690 003691 003692 003693 003694 003695 003696 003697 003698 003699 003700 003701 003702 003703 003704 003705 003706 003707 003708 003709 003710 003711 003712 003713 003714 003715 003716 003717 003718 003719 003720 003721 003722 003723 003724 003725 003726 003727 003728 003729 003730 003731 003732 003733 003734 003735 003736 003737 003738 003739 003740 003741 003742 003743 003744 003745 003746 003747 003748 003749 003750 003751 003752 003753 003754 003755 003756 003757 003758 003759 003760 003761 003762 003763 003764 003765 003766 003767 003768 003769 003770 003771 003772 003773 003774 003775 003776 003777 003778 003779 003780 003781 003782 003783 003784 003785 003786 003787 003788 003789 003790 003791 003792 003793 003794 003795 003796 003797 003798 003799 003800 003801 003802 003803 003804 003805 003806 003807 003808 003809 003810 003811 003812 003813 003814 003815 003816 003817 003818 003819 003820 003821 003822 003823 003824 003825 003826 003827 003828 003829 003830 003831 003832 003833 003834 003835 003836 003837 003838 003839 003840 003841 003842 003843 003844 003845 003846 003847 003848 003849 003850 003851 003852 003853 003854 003855 003856 003857 003858 003859 003860 003861 003862 003863 003864 003865 003866 003867 003868 003869 003870 003871 003872 003873 003874 003875 003876 003877 003878 003879 003880 003881 003882 003883 003884 003885 003886 003887 003888 003889 003890 003891 003892 003893 003894 003895 003896 003897 003898 003899 003900 003901 003902 003903 003904 003905 003906 003907 003908 003909 003910 003911 003912 003913 003914 003915 003916 003917 003918 003919 003920 003921 003922 003923 003924 003925 003926 003927 003928 003929 003930 003931 003932 003933 003934 003935 003936 003937 003938 003939 003940 003941 003942 003943 003944 003945 003946 003947 003948 003949 003950 003951 003952 003953 003954 003955 003956 003957 003958 003959 003960 003961 003962 003963 003964 003965 003966 003967 003968 003969 003970 003971 003972 003973 003974 003975 003976 003977 003978 003979 003980 003981 003982 003983 003984 003985 003986 003987 003988 003989 003990 003991 003992 003993 003994 003995 003996 003997 003998 003999 004000 004001 004002 004003 004004 004005 004006 004007 004008 004009 004010 004011 004012 004013 004014 004015 004016 004017 004018 004019 004020 004021 004022 004023 004024 004025 004026 004027 004028 004029 004030 004031 004032 004033 004034 004035 004036 004037 004038 004039 004040 004041 004042 004043 004044 004045 004046 004047 004048 004049 004050 004051 004052 004053 004054 004055 004056 004057 004058 004059 004060 004061 004062 004063 004064 004065 004066 004067 004068 004069 004070 004071 004072 004073 004074 004075 004076 004077 004078 004079 004080 004081 004082 004083 004084 004085 004086 004087 004088 004089 004090 004091 004092 004093 004094 004095 004096 004097 004098 004099 004100 004101 004102 004103 004104 004105 004106 004107 004108 004109 004110 004111 004112 004113 004114 004115 004116 004117 004118 004119 004120 004121 004122 004123 004124 004125 004126 004127 004128 004129 004130 004131 004132 004133 004134 004135 004136 004137 004138 004139 004140 004141 004142 004143 004144 004145 004146 004147 004148 004149 004150 004151 004152 004153 004154 004155 004156 004157 004158 004159 004160 004161 004162 004163 004164 004165 004166 004167 004168 004169 004170 004171 004172 004173 004174 004175 004176 004177 004178 004179 004180 004181 004182 004183 004184 004185 004186 004187 004188 004189 004190 004191 004192 004193 004194 004195 004196 004197 004198 004199 004200 004201 004202 004203 004204 004205 004206 004207 004208 004209 004210 004211 004212 004213 004214 004215 004216 004217 004218 004219 004220 004221 004222 004223 004224 004225 004226 004227 004228 004229 004230 004231 004232 004233 004234 004235 004236 004237 004238 004239 004240 004241 004242 004243 004244 004245 004246 004247 004248 004249 004250 004251 004252 004253 004254 004255 004256 004257 004258 004259 004260 004261 004262 004263 004264 004265 004266 004267 004268 004269 004270 004271 004272 004273 004274 004275 004276 004277 004278 004279 004280 004281 004282 004283 004284 004285 004286 004287 004288 004289 004290 004291 004292 004293 004294 004295 004296 004297 004298 004299 004300 004301 004302 004303 004304 004305 004306 004307 004308 004309 004310 004311 004312 004313 004314 004315 004316 004317 004318 004319 004320 004321 004322 004323 004324 004325 004326 004327 004328 004329 004330 004331 004332 004333 004334 004335 004336 004337 004338 004339 004340 004341 004342 004343 004344 004345 004346 004347 004348 004349 004350 004351 004352 004353 004354 004355 004356 004357 004358 004359 004360 004361 004362 004363 004364 004365 004366 004367 004368 004369 004370 004371 004372 004373 004374 004375 004376 004377 004378 004379 004380 004381 004382 004383 004384 004385 004386 004387 004388 004389 004390 004391 004392 004393 004394 004395 004396 004397 004398 004399 004400 004401 004402 004403 004404 004405 004406 004407 004408 004409 004410 004411 004412 004413 004414 004415 004416 004417 004418 004419 004420 004421 004422 004423 004424 004425 004426 004427 004428 004429 004430 004431 004432 004433 004434 004435 004436 004437 004438 004439 004440 004441 004442 004443 004444 004445 004446 004447 004448 004449 004450 004451 004452 004453 004454 004455 004456 004457 004458 004459 004460 004461 004462 004463 004464 004465 004466 004467 004468 004469 004470 004471 004472 004473 004474 004475 004476 004477 004478 004479 004480 004481 004482 004483 004484 004485 004486 004487 004488 004489 004490 004491 004492 004493 004494 004495 004496 004497 004498 004499 004500 004501 004502 004503 004504 004505 004506 004507 004508 004509 004510 004511 004512 004513 004514 004515 004516 004517 004518 004519 004520 004521 004522 004523 004524 004525 004526 004527 004528 004529 004530 004531 004532 004533 004534 004535 004536 004537 004538 004539 004540 004541 004542 004543 004544 004545 004546 004547 004548 004549 004550 004551 004552 004553 004554 004555 004556 004557 004558 004559 004560 004561 004562 004563 004564 004565 004566 004567 004568 004569 004570 004571 004572 004573 004574 004575 004576 004577 004578 004579 004580 004581 004582 004583 004584 004585 004586 004587 004588 004589 004590 004591 004592 004593 004594 004595 004596 004597 004598 004599 004600 004601 004602 004603 004604 004605 004606 004607 004608 004609 004610 004611 004612 004613 004614 004615 004616 004617 004618 004619 004620 004621 004622 004623 004624 004625 004626 004627 004628 004629 004630 004631 004632 004633 004634 004635 004636 004637 004638 004639 004640 004641 004642 004643 004644 004645 004646 004647 004648 004649 004650 004651 004652 004653 004654 004655 004656 004657 004658 004659 004660 004661 004662 004663 004664 004665 004666 004667 004668 004669 004670 004671 004672 004673 004674 004675 004676 004677 004678 004679 004680 004681 004682 004683 004684 004685 004686 004687 004688 004689 004690 004691 004692 004693 004694 004695 004696 004697 004698 004699 004700 004701 004702 004703 004704 004705 004706 004707 004708 004709 004710 004711 004712 004713 004714 004715 004716 004717 004718 004719 004720 004721 004722 004723 004724 004725 004726 004727 004728 004729 004730 004731 004732 004733 004734 004735 004736 004737 004738 004739 004740 004741 004742 004743 004744 004745 004746 004747 004748 004749 004750 004751 004752 004753 004754 004755 004756 004757 004758 004759 004760 004761 004762 004763 004764 004765 004766 004767 004768 004769 004770 004771 004772 004773 004774 004775 004776 004777 004778 004779 004780 004781 004782 004783 004784 004785 004786 004787 004788 004789 004790 004791 004792 004793 004794 004795 004796 004797 004798 004799 004800 004801 004802 004803 004804 004805 004806 004807 004808 004809 004810 004811 004812 004813 004814 004815 004816 004817 004818 004819 004820 004821 004822 004823 004824 004825 004826 004827 004828 004829 004830 004831 004832 004833 004834 004835 004836 004837 004838 004839 004840 004841 004842 004843 004844 004845 004846 004847 004848 004849 004850 004851 004852 004853 004854 004855 004856 004857 004858 004859 004860 004861 004862 004863 004864 004865 004866 004867 004868 004869 004870 004871 004872 004873 004874 004875 004876 004877 004878 004879 004880 004881 004882 004883 004884 004885 004886 004887 004888 004889 004890 004891 004892 004893 004894 004895 004896 004897 004898 004899 004900 004901 004902 004903 004904 004905 004906 004907 004908 004909 004910 004911 004912 004913 004914 004915 004916 004917 004918 004919 004920 004921 004922 004923 004924 004925 004926 004927 004928 004929 004930 004931 004932 004933 004934 004935 004936 004937 004938 004939 004940 004941 004942 004943 004944 004945 004946 004947 004948 004949 004950 004951 004952 004953 004954 004955 004956 004957 004958 004959 004960 004961 004962 004963 004964 004965 004966 004967 004968 004969 004970 004971 004972 004973 004974 004975 004976 004977 004978 004979 004980 004981 004982 004983 004984 004985 004986 004987 004988 004989 004990 004991 004992 004993 004994 004995 004996 004997 004998 004999 005000 005001 005002 005003 005004 005005 005006 005007 005008 005009 005010 005011 005012 005013 005014 005015 005016 005017 005018 005019 005020 005021 005022 005023 005024 005025 005026 005027 005028 005029 005030 005031 005032 005033 005034 005035 005036 005037 005038 005039 005040 005041 005042 005043 005044 005045 005046 005047 005048 005049 005050 005051 005052 005053 005054 005055 005056 005057 005058 005059 005060 005061 005062 005063 005064 005065 005066 005067 005068 005069 005070 005071 005072 005073 005074 005075 005076 005077 005078 005079 005080 005081 005082 005083 005084 005085 005086 005087 005088 005089 005090 005091 005092 005093 005094 005095 005096 005097 005098 005099 005100 005101 005102 005103 005104 005105 005106 005107 005108 005109 005110 005111 005112 005113 005114 005115 005116 005117 005118 005119 005120 005121 005122 005123 005124 005125 005126 005127 005128 005129 005130 005131 005132 005133 005134 005135 005136 005137 005138 005139 005140 005141 005142 005143 005144 005145 005146 005147 005148 005149 005150 005151 005152 005153 005154 005155 005156 005157 005158 005159 005160 005161 005162 005163 005164 005165 005166 005167 005168 005169 005170 005171 005172 005173 005174 005175 005176 005177 005178 005179 005180 005181 005182 005183 005184 005185 005186 005187 005188 005189 005190 005191 005192 005193 005194 005195 005196 005197 005198 005199 005200 005201 005202 005203 005204 005205 005206 005207 005208 005209 005210 005211 005212 005213 005214 005215 005216 005217 005218 005219 005220 005221 005222 005223 005224 005225 005226 005227 005228 005229 005230 005231 005232 005233 005234 005235 005236 005237 005238 005239 005240 005241 005242 005243 005244 005245 005246 005247 005248 005249 005250 005251 005252 005253 005254 005255 005256 005257 005258 005259 005260 005261 005262 005263 005264 005265 005266 005267 005268 005269 005270 005271 005272 005273 005274 005275 005276 005277 005278 005279 005280 005281 005282 005283 005284 005285 005286 005287 005288 005289 005290 005291 005292 005293 005294 005295 005296 005297 005298 005299 005300 005301 005302 005303 005304 005305 005306 005307 005308 005309 005310 005311 005312 005313 005314 005315 005316 005317 005318 005319 005320 005321 005322 005323 005324 005325 005326 005327 005328 005329 005330 005331 005332 005333 005334 005335 005336 005337 005338 005339 005340 005341 005342 005343 005344 005345 005346 005347 005348 005349 005350 005351 005352 005353 005354 005355 005356 005357 005358 005359 005360 005361 005362 005363 005364 005365 005366 005367 005368 005369 005370 005371 005372 005373 005374 005375 005376 005377 005378 005379 005380 005381 005382 005383 005384 005385 005386 005387 005388 005389 005390 005391 005392 005393 005394 005395 005396 005397 005398 005399 005400 005401 005402 005403 005404 005405 005406 005407 005408 005409 005410 005411 005412 005413 005414 005415 005416 005417 005418 005419 005420 005421 005422 005423 005424 005425 005426 005427 005428 005429 005430 005431 005432 005433 005434 005435 005436 005437 005438 005439 005440 005441 005442 005443 005444 005445 005446 005447 005448 005449 005450 005451 005452 005453 005454 005455 005456 005457 005458 005459 005460 005461 005462 005463 005464 005465 005466 005467 005468 005469 005470 005471 005472 005473 005474 005475 005476 005477 005478 005479 005480 005481 005482 005483 005484 005485 005486 005487 005488 005489 005490 005491 005492 005493 005494 005495 005496 005497 005498 005499 005500 005501 005502 005503 005504 005505 005506 005507 005508 005509 005510 005511 005512 005513 005514 005515 005516 005517 005518 005519 005520 005521 005522 005523 005524 005525 005526 005527 005528 005529 005530 005531 005532 005533 005534 005535 005536 005537 005538 005539 005540 005541 005542 005543 005544 005545 005546 005547 005548 005549 005550 005551 005552 005553 005554 005555 005556 005557 005558 005559 005560 005561 005562 005563 005564 005565 005566 005567 005568 005569 005570 005571 005572 005573 005574 005575 005576 005577 005578 005579 005580 005581 005582 005583 005584 005585 005586 005587 005588 005589 005590 005591 005592 005593 005594 005595 005596 005597 005598 005599 005600 005601 005602 005603 005604 005605 005606 005607 005608 005609 005610 005611 005612 005613 005614 005615 005616 005617 005618 005619 005620 005621 005622 005623 005624 005625 005626 005627 005628 005629 005630 005631 005632 005633 005634 005635 005636 005637 005638 005639 005640 005641 005642 005643 005644 005645 005646 005647 005648 005649 005650 005651 005652 005653 005654 005655 005656 005657 005658 005659 005660 005661 005662 005663 005664 005665 005666 005667 005668 005669 005670 005671 005672 005673 005674 005675 005676 005677 005678 005679 005680 005681 005682 005683 005684 005685 005686 005687 005688 005689 005690 005691 005692 005693 005694 005695 005696 005697 005698 005699 005700 005701 005702 005703 005704 005705 005706 005707 005708 005709 005710 005711 005712 005713 005714 005715 005716 005717 005718 005719 005720 005721 005722 005723 005724 005725 005726 005727 005728 005729 005730 005731 005732 005733 005734 005735 005736 005737 005738 005739 005740 005741 005742 005743 005744 005745 005746 005747 005748 005749 005750 005751 005752 005753 005754 005755 005756 005757 005758 005759 005760 005761 005762 005763 005764 005765 005766 005767 005768 005769 005770 005771 005772 005773 005774 005775 005776 005777 005778 005779 005780 005781 005782 005783 005784 005785 005786 005787 005788 005789 005790 005791 005792 005793 005794 005795 005796 005797 005798 005799 005800 005801 005802 005803 005804 005805 005806 005807 005808 005809 005810 005811 005812 005813 005814 005815 005816 005817 005818 005819 005820 005821 005822 005823 005824 005825 005826 005827 005828 005829 005830 005831 005832 005833 005834 005835 005836 005837 005838 005839 005840 005841 005842 005843 005844 005845 005846 005847 005848 005849 005850 005851 005852 005853 005854 005855 005856 005857 005858 005859 005860 005861 005862 005863 005864 005865 005866 005867 005868 005869 005870 005871 005872 005873 005874 005875 005876 005877 005878 005879 005880 005881 005882 005883 005884 005885 005886 005887 005888 005889 005890 005891 005892 005893 005894 005895 005896 005897 005898 005899 005900 005901 005902 005903 005904 005905 005906 005907 005908 005909 005910 005911 005912 005913 005914 005915 005916 005917 005918 005919 005920 005921 005922 005923 005924 005925 005926 005927 005928 005929 005930 005931 005932 005933 005934 005935 005936 005937 005938 005939 005940 005941 005942 005943 005944 005945 005946 005947 005948 005949 005950 005951 005952 005953 005954 005955 005956 005957 005958 005959 005960 005961 005962 005963 005964 005965 005966 005967 005968 005969 005970 005971 005972 005973 005974 005975 005976 005977 005978 005979 005980 005981 005982 005983 005984 005985 005986 005987 005988 005989 005990 005991 005992 005993 005994 005995 005996 005997 005998 005999 006000 006001 006002 006003 006004 006005 006006 006007 006008 006009 006010 006011 006012 006013 006014 006015 006016 006017 006018 006019 006020 006021 006022 006023 006024 006025 006026 006027 006028 006029 006030 006031 006032 006033 006034 006035 006036 006037 006038 006039 006040 006041 006042 006043 006044 006045 006046 006047 006048 006049 006050 006051 006052 006053 006054 006055 006056 006057 006058 006059 006060 006061 006062 006063 006064 006065 006066 006067 006068 006069 006070 006071 006072 006073 006074 006075 006076 006077 006078 006079 006080 006081 006082 006083 006084 006085 006086 006087 006088 006089 006090 006091 006092 006093 006094 006095 006096 006097 006098 006099 006100 006101 006102 006103 006104 006105 006106 006107 006108 006109 006110 006111 006112 006113 006114 006115 006116 006117 006118 006119 006120 006121 006122 006123 006124 006125 006126 006127 006128 006129 006130 006131 006132 006133 006134 006135 006136 006137 006138 006139 006140 006141 006142 006143 006144 006145 006146 006147 006148 006149 006150 006151 006152 006153 006154 006155 006156 006157 006158 006159 006160 006161 006162 006163 006164 006165 006166 006167 006168 006169 006170 006171 006172 006173 006174 006175 006176 006177 006178 006179 006180 006181 006182 006183 006184 006185 006186 006187 006188 006189 006190 006191 006192 006193 006194 006195 006196 006197 006198 006199 006200 006201 006202 006203 006204 006205 006206 006207 006208 006209 006210 006211 006212 006213 006214 006215 006216 006217 006218 006219 006220 006221 006222 006223 006224 006225 006226 006227 006228 006229 006230 006231 006232 006233 006234 006235 006236 006237 006238 006239 006240 006241 006242 006243 006244 006245 006246 006247 006248 006249 006250 006251 006252 006253 006254 006255 006256 006257 006258 006259 006260 006261 006262 006263 006264 006265 006266 006267 006268 006269 006270 006271 006272 006273 006274 006275 006276 006277 006278 006279 006280 006281 006282 006283 006284 006285 006286 006287 006288 006289 006290 006291 006292 006293 006294 006295 006296 006297 006298 006299 006300 006301 006302 006303 006304 006305 006306 006307 006308 006309 006310 006311 006312 006313 006314 006315 006316 006317 006318 006319 006320 006321 006322 006323 006324 006325 006326 006327 006328 006329 006330 006331 006332 006333 006334 006335 006336 006337 006338 006339 006340 006341 006342 006343 006344 006345 006346 006347 006348 006349 006350 006351 006352 006353 006354 006355 006356 006357 006358 006359 006360 006361 006362 006363 006364 006365 006366 006367 006368 006369 006370 006371 006372 006373 006374 006375 006376 006377 006378 006379 006380 006381 006382 006383 006384 006385 006386 006387 006388 006389 006390 006391 006392 006393 006394 006395 006396 006397 006398 006399 006400 006401 006402 006403 006404 006405 006406 006407 006408 006409 006410 006411 006412 006413 006414 006415 006416 006417 006418 006419 006420 006421 006422 006423 006424 006425 006426 006427 006428 006429 006430 006431 006432 006433 006434 006435 006436 006437 006438 006439 006440 006441 006442 006443 006444 006445 006446 006447 006448 006449 006450 006451 006452 006453 006454 006455 006456 006457 006458 006459 006460 006461 006462 006463 006464 006465 006466 006467 006468 006469 006470 006471 006472 006473 006474 006475 006476 006477 006478 006479 006480 006481 006482 006483 006484 006485 006486 006487 006488 006489 006490 006491 006492 006493 006494 006495 006496 006497 006498 006499 006500 006501 006502 006503 006504 006505 006506 006507 006508 006509 006510 006511 006512 006513 006514 006515 006516 006517 006518 006519 006520 006521 006522 006523 006524 006525 006526 006527 006528 006529 006530 006531 006532 006533 006534 006535 006536 006537 006538 006539 006540 006541 006542 006543 006544 006545 006546 006547 006548 006549 006550 006551 006552 006553 006554 006555 006556 006557 006558 006559 006560 006561 006562 006563 006564 006565 006566 006567 006568 006569 006570 006571 006572 006573 006574 006575 006576 006577 006578 006579 006580 006581 006582 006583 006584 006585 006586 006587 006588 006589 006590 006591 006592 006593 006594 006595 006596 006597 006598 006599 006600 006601 006602 006603 006604 006605 006606 006607 006608 006609 006610 006611 006612 006613 006614 006615 006616 006617 006618 006619 006620 006621 006622 006623 006624 006625 006626 006627 006628 006629 006630 006631 006632 006633 006634 006635 006636 006637 006638 006639 006640 006641 006642 006643 006644 006645 006646 006647 006648 006649 006650 006651 006652 006653 006654 006655 006656 006657 006658 006659 006660 006661 006662 006663 006664 006665 006666 006667 006668 006669 006670 006671 006672 006673 006674 006675 006676 006677 006678 006679 006680 006681 006682 006683 006684 006685 006686 006687 006688 006689 006690 006691 006692 006693 006694 006695 006696 006697 006698 006699 006700 006701 006702 006703 006704 006705 006706 006707 006708 006709 006710 006711 006712 006713 006714 006715 006716 006717 006718 006719 006720 006721 006722 006723 006724 006725 006726 006727 006728 006729 006730 006731 006732 006733 006734 006735 006736 006737 006738 006739 006740 006741 006742 006743 006744 006745 006746 006747 006748 006749 006750 006751 006752 006753 006754 006755 006756 006757 006758 006759 006760 006761 006762 006763 006764 006765 006766 006767 006768 006769 006770 006771 006772 006773 006774 006775 006776 006777 006778 006779 006780 006781 006782 006783 006784 006785 006786 006787 006788 006789 006790 006791 006792 006793 006794 006795 006796 006797 006798 006799 006800 006801 006802 006803 006804 006805 006806 006807 006808 006809 006810 006811 006812 006813 006814 006815 006816 006817 006818 006819 006820 006821 006822 006823 006824 006825 006826 006827 006828 006829 006830 006831 006832 006833 006834 006835 006836 006837 006838 006839 006840 006841 006842 006843 006844 006845 006846 006847 006848 006849 006850 006851 006852 006853 006854 006855 006856 006857 006858 006859 006860 006861 006862 006863 006864 006865 006866 006867 006868 006869 006870 006871 006872 006873 006874 006875 006876 006877 006878 006879 006880 006881 006882 006883 006884 006885 006886 006887 006888 006889 006890 006891 006892 006893 006894 006895 006896 006897 006898 006899 006900 006901 006902 006903 006904 006905 006906 006907 006908 006909 006910 006911 006912 006913 006914 006915 006916 006917 006918 006919 006920 006921 006922 006923 006924 006925 006926 006927 006928 006929 006930 006931 006932 006933 006934 006935 006936 006937 006938 006939 006940 006941 006942 006943 006944 006945 006946 006947 006948 006949 006950 006951 006952 006953 006954 006955 006956 006957 006958 006959 006960 006961 006962 006963 006964 006965 006966 006967 006968 006969 006970 006971 006972 006973 006974 006975 006976 006977 006978 006979 006980 006981 006982 006983 006984 006985 006986 006987 006988 006989 006990 006991 006992 006993 006994 006995 006996 006997 006998 006999 007000 007001 007002 007003 007004 007005 007006 007007 007008 007009 007010 007011 007012 007013 007014 007015 007016 007017 007018 007019 007020 007021 007022 007023 007024 007025 007026 007027 007028 007029 007030 007031 007032 007033 007034 007035 007036 007037 007038 007039 007040 007041 007042 007043 007044 007045 007046 007047 007048 007049 007050 007051 007052 007053 007054 007055 007056 007057 007058 007059 007060 007061 007062 007063 007064 007065 007066 007067 007068 007069 007070 007071 007072 007073 007074 007075 007076 007077 007078 007079 007080 007081 007082 007083 007084 007085 007086 007087 007088 007089 007090 007091 007092 007093 007094 007095 007096 007097 007098 007099 007100 007101 007102 007103 007104 007105 007106 007107 007108 007109 007110 007111 007112 007113 007114 007115 007116 007117 007118 007119 007120 007121 007122 007123 007124 007125 007126 007127 007128 007129 007130 007131 007132 007133 007134 007135 007136 007137 007138 007139 007140 007141 007142 007143 007144 007145 007146 007147 007148 007149 007150 007151 007152 007153 007154 007155 007156 007157 007158 007159 007160 007161 007162 007163 007164 007165 007166 007167 007168 007169 007170 007171 007172 007173 007174 007175 007176 007177 007178 007179 007180 007181 007182 007183 007184 007185 007186 007187 007188 007189 007190 007191 007192 007193 007194 007195 007196 007197 007198 007199 007200 007201 007202 007203 007204 007205 007206 007207 007208 007209 007210 007211 007212 007213 007214 007215 007216 007217 007218 007219 007220 007221 007222 007223 007224 007225 007226 007227 007228 007229 007230 007231 007232 007233 007234 007235 007236 007237 007238 007239 007240 007241 007242 007243 007244 007245 007246 007247 007248 007249 007250 007251 007252 007253 007254 007255 007256 007257 007258 007259 007260 007261 007262 007263 007264 007265 007266 007267 007268 007269 007270 007271 007272 007273 007274 007275 007276 007277 007278 007279 007280 007281 007282 007283 007284 007285 007286 007287 007288 007289 007290 007291 007292 007293 007294 007295 007296 007297 007298 007299 007300 007301 007302 007303 007304 007305 007306 007307 007308 007309 007310 007311 007312 007313 007314 007315 007316 007317 007318 007319 007320 007321 007322 007323 007324 007325 007326 007327 007328 007329 007330 007331 007332 007333 007334 007335 007336 007337 007338 007339 007340 007341 007342 007343 007344 007345 007346 007347 007348 007349 007350 007351 007352 007353 007354 007355 007356 007357 007358 007359 007360 007361 007362 007363 007364 007365 007366 007367 007368 007369 007370 007371 007372 007373 007374 007375 007376 007377 007378 007379 007380 007381 007382 007383 007384 007385 007386 007387 007388 007389 007390 007391 007392 007393 007394 007395 007396 007397 007398 007399 007400 007401 007402 007403 007404 007405 007406 007407 007408 007409 007410 007411 007412 007413 007414 007415 007416 007417 007418 007419 007420 007421 007422 007423 007424 007425 007426 007427 007428 007429 007430 007431 007432 007433 007434 007435 007436 007437 007438 007439 007440 007441 007442 007443 007444 007445 007446 007447 007448 007449 007450 007451 007452 007453 007454 007455 007456 007457 007458 007459 007460 007461 007462 007463 007464 007465 007466 007467 007468 007469 007470 007471 007472 007473 007474 007475 007476 007477 007478 007479 007480 007481 007482 007483 007484 007485 007486 007487 007488 007489 007490 007491 007492 007493 007494 007495 007496 007497 007498 007499 007500 007501 007502 007503 007504 007505 007506 007507 007508 007509 007510 007511 007512 007513 007514 007515 007516 007517 ================================================ FILE: data/kitti_split1/train.txt ================================================ 000000 000003 000007 000009 000010 000011 000012 000013 000014 000016 000017 000018 000022 000026 000029 000030 000032 000034 000036 000038 000041 000043 000044 000045 000046 000049 000051 000054 000055 000056 000057 000060 000064 000067 000068 000069 000070 000071 000072 000073 000074 000075 000079 000080 000082 000083 000084 000085 000086 000087 000088 000091 000092 000095 000096 000097 000099 000100 000101 000103 000105 000109 000110 000111 000112 000113 000114 000115 000119 000120 000121 000123 000125 000127 000129 000130 000131 000133 000136 000138 000141 000142 000144 000145 000146 000148 000149 000150 000154 000155 000157 000158 000160 000162 000163 000164 000165 000166 000171 000172 000176 000177 000178 000179 000180 000184 000185 000189 000193 000198 000200 000202 000205 000206 000208 000209 000210 000214 000215 000217 000219 000220 000221 000222 000225 000227 000228 000232 000233 000238 000240 000241 000243 000244 000245 000253 000254 000255 000256 000257 000258 000259 000261 000264 000267 000271 000274 000275 000276 000277 000280 000282 000285 000286 000287 000288 000292 000294 000295 000296 000298 000299 000300 000303 000304 000306 000310 000313 000316 000317 000318 000322 000325 000326 000330 000331 000334 000337 000338 000339 000342 000344 000348 000349 000353 000358 000363 000364 000367 000368 000371 000374 000375 000380 000384 000387 000389 000390 000400 000405 000406 000410 000411 000412 000416 000417 000418 000421 000423 000424 000425 000426 000431 000432 000433 000434 000435 000438 000439 000441 000442 000444 000445 000447 000449 000456 000458 000460 000461 000462 000464 000465 000466 000467 000470 000471 000474 000482 000483 000484 000487 000488 000490 000497 000500 000501 000502 000505 000507 000511 000513 000514 000516 000518 000520 000522 000523 000525 000526 000529 000531 000532 000534 000535 000537 000538 000539 000540 000544 000547 000549 000550 000552 000553 000556 000557 000562 000563 000565 000570 000573 000574 000575 000576 000577 000578 000579 000580 000582 000584 000585 000586 000587 000592 000593 000594 000596 000597 000598 000599 000602 000603 000605 000606 000607 000608 000609 000616 000617 000621 000622 000623 000627 000629 000631 000632 000633 000637 000638 000640 000641 000643 000646 000649 000651 000652 000653 000654 000656 000661 000662 000663 000664 000665 000666 000668 000671 000672 000673 000675 000676 000678 000680 000681 000685 000686 000687 000688 000689 000690 000693 000695 000697 000701 000703 000705 000707 000709 000710 000711 000712 000713 000714 000715 000719 000720 000723 000724 000726 000730 000732 000733 000735 000738 000739 000742 000743 000744 000747 000749 000753 000755 000757 000758 000759 000760 000762 000763 000764 000770 000775 000776 000777 000780 000781 000783 000784 000785 000786 000787 000788 000789 000791 000793 000794 000796 000797 000799 000808 000813 000814 000815 000817 000818 000820 000821 000822 000824 000825 000827 000828 000829 000830 000832 000833 000834 000835 000836 000839 000842 000845 000846 000851 000853 000855 000856 000857 000858 000860 000861 000864 000865 000866 000867 000868 000870 000871 000872 000880 000882 000883 000886 000887 000888 000890 000891 000892 000895 000896 000898 000900 000901 000902 000903 000905 000906 000908 000910 000913 000914 000918 000919 000921 000924 000925 000927 000929 000933 000934 000935 000936 000937 000941 000945 000946 000947 000950 000951 000954 000955 000957 000959 000960 000962 000965 000968 000972 000975 000977 000978 000980 000982 000987 000989 000990 000992 000993 000994 000995 000996 000997 000998 001000 001001 001003 001004 001005 001009 001016 001017 001020 001023 001024 001028 001029 001030 001031 001032 001033 001034 001036 001038 001040 001041 001044 001045 001047 001048 001049 001052 001056 001057 001059 001060 001061 001062 001064 001072 001073 001074 001079 001080 001081 001082 001085 001087 001090 001091 001092 001093 001098 001100 001103 001105 001109 001110 001112 001117 001119 001121 001122 001124 001126 001128 001130 001137 001142 001146 001151 001156 001157 001159 001160 001161 001164 001165 001166 001168 001169 001170 001171 001174 001175 001181 001184 001185 001186 001190 001196 001197 001200 001201 001202 001204 001205 001208 001209 001210 001211 001212 001215 001219 001220 001223 001227 001229 001231 001233 001238 001240 001247 001248 001250 001256 001258 001262 001264 001276 001277 001278 001279 001280 001282 001283 001285 001288 001290 001293 001297 001298 001299 001300 001301 001302 001309 001310 001311 001312 001313 001315 001316 001319 001320 001321 001322 001323 001324 001325 001326 001327 001328 001335 001338 001340 001341 001343 001348 001349 001351 001354 001357 001358 001360 001361 001362 001364 001366 001367 001368 001369 001370 001371 001373 001378 001379 001383 001385 001390 001392 001393 001394 001396 001399 001400 001401 001402 001403 001404 001405 001406 001408 001409 001413 001414 001417 001418 001420 001422 001423 001425 001426 001428 001429 001430 001433 001434 001436 001440 001444 001447 001449 001452 001453 001454 001455 001456 001457 001459 001460 001462 001464 001465 001467 001468 001470 001472 001473 001474 001475 001476 001479 001482 001483 001484 001486 001490 001491 001492 001493 001494 001496 001498 001499 001500 001503 001504 001505 001506 001509 001510 001512 001515 001518 001519 001520 001523 001529 001530 001531 001532 001534 001539 001540 001541 001543 001544 001548 001550 001551 001553 001554 001556 001558 001559 001561 001563 001566 001568 001570 001571 001572 001575 001578 001580 001581 001584 001593 001595 001598 001599 001601 001604 001607 001608 001609 001611 001612 001614 001618 001620 001622 001623 001624 001626 001628 001630 001632 001636 001637 001638 001639 001641 001642 001644 001646 001648 001649 001651 001652 001653 001655 001657 001659 001661 001663 001668 001669 001671 001672 001673 001674 001676 001677 001678 001679 001681 001685 001686 001687 001688 001690 001691 001692 001695 001696 001698 001700 001703 001708 001715 001716 001720 001723 001724 001725 001728 001730 001731 001734 001735 001736 001737 001738 001739 001743 001744 001747 001748 001753 001754 001756 001757 001759 001760 001761 001763 001766 001767 001769 001770 001773 001775 001777 001779 001784 001785 001788 001789 001790 001791 001792 001793 001796 001798 001799 001803 001805 001806 001809 001810 001811 001812 001815 001816 001819 001821 001826 001827 001829 001830 001832 001833 001834 001836 001837 001838 001839 001841 001842 001843 001845 001847 001849 001850 001857 001860 001864 001865 001866 001870 001871 001873 001874 001876 001879 001882 001883 001889 001891 001894 001895 001896 001899 001901 001902 001903 001906 001907 001908 001910 001911 001912 001913 001914 001915 001916 001917 001918 001921 001922 001930 001935 001938 001939 001944 001947 001948 001949 001950 001951 001953 001955 001956 001957 001958 001961 001962 001963 001964 001965 001968 001970 001971 001973 001974 001975 001976 001981 001987 001988 001990 001992 001993 001994 001998 002003 002005 002006 002007 002009 002015 002016 002018 002020 002023 002024 002026 002030 002031 002032 002033 002039 002040 002041 002047 002051 002053 002055 002059 002060 002061 002063 002064 002065 002066 002067 002069 002070 002072 002077 002080 002083 002084 002088 002090 002092 002095 002096 002097 002098 002099 002104 002105 002106 002109 002110 002114 002116 002117 002119 002122 002125 002126 002129 002132 002133 002134 002141 002143 002144 002145 002146 002147 002148 002149 002150 002154 002155 002156 002157 002162 002164 002167 002171 002172 002174 002175 002176 002178 002180 002181 002184 002186 002189 002190 002191 002192 002194 002195 002197 002198 002199 002203 002204 002205 002208 002210 002211 002212 002213 002214 002217 002221 002222 002223 002226 002227 002230 002231 002235 002236 002237 002238 002240 002241 002242 002244 002247 002249 002252 002253 002256 002259 002261 002263 002264 002265 002267 002268 002269 002270 002271 002273 002274 002275 002278 002281 002285 002288 002289 002296 002297 002301 002302 002305 002309 002311 002312 002313 002316 002317 002318 002321 002322 002323 002324 002326 002328 002331 002333 002335 002339 002342 002343 002349 002350 002351 002352 002354 002355 002358 002360 002361 002363 002364 002368 002371 002373 002374 002375 002377 002379 002381 002388 002389 002390 002394 002395 002396 002400 002401 002402 002403 002406 002407 002408 002409 002410 002412 002413 002416 002417 002421 002426 002427 002430 002431 002435 002436 002437 002438 002441 002443 002444 002445 002447 002448 002449 002451 002452 002453 002456 002459 002464 002465 002466 002467 002468 002469 002470 002471 002472 002475 002480 002481 002482 002484 002485 002487 002489 002491 002493 002494 002496 002498 002501 002507 002508 002510 002512 002513 002514 002515 002517 002518 002522 002523 002524 002527 002533 002535 002536 002537 002542 002544 002545 002547 002549 002550 002551 002553 002554 002555 002559 002560 002561 002566 002567 002571 002573 002576 002578 002579 002582 002587 002588 002589 002591 002592 002593 002595 002596 002597 002605 002607 002608 002609 002610 002611 002614 002616 002617 002618 002620 002622 002623 002624 002627 002629 002632 002634 002637 002639 002642 002643 002647 002648 002649 002650 002652 002654 002655 002658 002659 002660 002662 002664 002665 002667 002668 002670 002671 002672 002676 002678 002679 002682 002683 002684 002687 002688 002689 002691 002697 002698 002700 002701 002703 002704 002705 002708 002714 002716 002718 002719 002723 002731 002732 002733 002734 002736 002738 002739 002741 002743 002750 002751 002754 002756 002759 002762 002766 002768 002769 002770 002771 002774 002776 002777 002778 002779 002780 002781 002782 002784 002785 002788 002790 002791 002792 002795 002798 002799 002802 002803 002807 002808 002813 002816 002817 002819 002821 002822 002823 002824 002825 002829 002832 002834 002835 002837 002838 002842 002843 002849 002850 002851 002852 002854 002855 002857 002859 002860 002862 002864 002865 002868 002869 002870 002871 002872 002873 002874 002882 002884 002886 002887 002888 002897 002898 002899 002904 002906 002907 002909 002910 002912 002913 002915 002918 002920 002921 002922 002923 002926 002927 002929 002931 002932 002933 002936 002938 002939 002940 002941 002943 002946 002949 002950 002952 002954 002956 002965 002967 002968 002969 002970 002972 002973 002975 002980 002981 002983 002986 002987 002989 002990 002992 002996 002998 003002 003008 003009 003012 003013 003014 003015 003016 003017 003018 003020 003021 003023 003026 003028 003036 003037 003039 003040 003041 003044 003045 003049 003051 003057 003059 003060 003063 003064 003068 003069 003070 003072 003075 003077 003078 003079 003081 003083 003084 003085 003086 003089 003091 003092 003093 003095 003097 003098 003100 003104 003105 003108 003111 003113 003115 003117 003119 003120 003121 003122 003123 003125 003128 003130 003132 003138 003139 003140 003143 003147 003149 003151 003152 003154 003155 003157 003158 003160 003163 003164 003166 003168 003169 003171 003173 003176 003178 003184 003185 003186 003188 003189 003191 003193 003195 003196 003198 003200 003201 003205 003206 003208 003209 003212 003213 003215 003218 003220 003223 003227 003230 003234 003235 003237 003238 003241 003243 003244 003245 003246 003248 003249 003253 003256 003258 003260 003261 003262 003263 003264 003267 003268 003270 003271 003273 003274 003277 003278 003279 003282 003284 003285 003286 003287 003289 003290 003291 003293 003294 003297 003299 003303 003307 003309 003311 003314 003317 003320 003321 003326 003327 003328 003329 003332 003333 003334 003335 003336 003339 003340 003342 003344 003345 003348 003349 003354 003356 003359 003360 003361 003362 003363 003369 003371 003372 003374 003376 003377 003378 003380 003381 003382 003383 003384 003387 003388 003389 003390 003391 003392 003398 003400 003413 003414 003415 003416 003418 003420 003423 003424 003427 003431 003433 003436 003437 003438 003439 003440 003441 003442 003444 003445 003446 003451 003452 003454 003455 003457 003458 003459 003460 003462 003463 003468 003472 003473 003475 003476 003477 003479 003485 003486 003493 003494 003498 003499 003500 003501 003505 003507 003508 003509 003510 003512 003513 003514 003516 003518 003522 003523 003525 003526 003532 003533 003534 003536 003537 003538 003540 003541 003542 003545 003546 003548 003549 003551 003555 003556 003560 003561 003564 003565 003566 003567 003569 003570 003572 003575 003576 003577 003578 003579 003581 003585 003586 003587 003589 003590 003591 003592 003593 003594 003595 003596 003597 003598 003599 003602 003603 003606 003610 003612 003613 003615 003617 003619 003625 003626 003628 003636 003637 003638 003639 003640 003641 003642 003644 003646 003648 003650 003651 003654 003656 003657 003660 003663 003664 003665 003666 003670 003672 003673 003674 003675 003680 003681 003685 003686 003687 003693 003694 003695 003696 003697 003698 003699 003700 003701 003704 003706 003709 003710 003713 003714 003717 003720 003721 003722 003724 003725 003727 003729 003730 003731 003732 003733 003734 003740 003741 003742 003743 003744 003745 003749 003752 003754 003757 003758 003759 003760 003761 003765 003766 003767 003768 003770 003772 003773 003774 003776 003780 003783 003784 003785 003786 003789 003790 003791 003792 003795 003796 003797 003799 003801 003803 003806 003810 003813 003815 003816 003817 003818 003819 003821 003823 003824 003825 003829 003831 003832 003833 003836 003838 003839 003840 003842 003843 003844 003845 003846 003848 003849 003850 003851 003853 003855 003857 003858 003861 003862 003863 003865 003867 003868 003871 003875 003876 003877 003882 003884 003887 003888 003889 003893 003895 003896 003900 003903 003904 003906 003908 003910 003911 003912 003913 003917 003918 003919 003921 003922 003925 003927 003928 003929 003930 003933 003935 003936 003939 003940 003941 003942 003944 003947 003949 003951 003952 003953 003954 003955 003957 003959 003960 003963 003966 003967 003968 003971 003973 003974 003976 003978 003979 003983 003985 003987 003988 003989 003990 003991 003993 003994 003995 003997 003999 004005 004006 004012 004013 004014 004015 004017 004018 004019 004020 004022 004023 004024 004025 004029 004030 004031 004035 004037 004039 004043 004044 004046 004047 004050 004052 004053 004054 004056 004057 004058 004060 004062 004066 004067 004069 004070 004071 004073 004075 004076 004078 004080 004084 004086 004088 004090 004093 004094 004097 004099 004102 004103 004106 004112 004114 004115 004123 004127 004133 004134 004135 004139 004141 004144 004145 004146 004147 004151 004159 004165 004166 004167 004169 004170 004176 004177 004178 004179 004180 004181 004182 004183 004184 004186 004192 004193 004194 004197 004198 004199 004200 004201 004203 004204 004208 004211 004212 004216 004217 004218 004219 004225 004227 004229 004230 004231 004233 004234 004235 004236 004238 004240 004244 004245 004247 004252 004253 004257 004258 004261 004262 004264 004265 004266 004267 004268 004269 004272 004273 004274 004276 004279 004283 004286 004287 004292 004296 004297 004302 004304 004308 004310 004313 004315 004316 004317 004320 004322 004325 004328 004331 004332 004333 004334 004339 004341 004344 004346 004347 004351 004354 004355 004356 004357 004358 004359 004361 004365 004366 004371 004372 004375 004376 004378 004379 004380 004381 004382 004386 004387 004389 004390 004394 004395 004399 004400 004405 004408 004409 004410 004411 004412 004413 004416 004417 004427 004428 004431 004432 004436 004441 004442 004445 004446 004448 004449 004451 004453 004455 004457 004459 004461 004463 004464 004466 004467 004468 004471 004473 004476 004477 004478 004479 004484 004488 004492 004495 004497 004498 004499 004500 004503 004504 004505 004506 004507 004509 004510 004512 004514 004515 004518 004522 004523 004524 004525 004533 004535 004536 004537 004538 004539 004543 004544 004545 004546 004550 004552 004554 004555 004558 004559 004560 004561 004563 004564 004565 004571 004572 004575 004577 004579 004580 004583 004584 004586 004590 004592 004593 004594 004595 004597 004600 004601 004602 004604 004605 004606 004607 004613 004614 004616 004617 004619 004621 004623 004625 004627 004628 004631 004635 004637 004639 004641 004642 004643 004645 004646 004653 004654 004656 004659 004661 004662 004663 004664 004670 004671 004674 004675 004676 004677 004678 004681 004684 004690 004696 004701 004702 004703 004704 004707 004712 004719 004723 004727 004728 004729 004731 004733 004736 004741 004747 004749 004750 004751 004754 004755 004757 004758 004760 004761 004765 004767 004771 004772 004774 004775 004778 004779 004780 004781 004784 004785 004786 004789 004793 004794 004795 004796 004798 004801 004802 004803 004805 004808 004809 004812 004818 004819 004820 004823 004824 004826 004827 004828 004833 004834 004836 004837 004838 004840 004841 004842 004844 004845 004847 004853 004854 004855 004856 004857 004865 004866 004869 004870 004872 004876 004877 004878 004879 004880 004882 004883 004884 004886 004889 004890 004894 004897 004899 004900 004901 004906 004908 004910 004911 004912 004913 004915 004916 004919 004922 004923 004925 004930 004933 004936 004937 004939 004940 004945 004950 004951 004952 004955 004957 004961 004964 004965 004967 004968 004969 004970 004971 004972 004973 004975 004977 004978 004980 004982 004984 004987 004991 004992 004997 005000 005003 005005 005006 005007 005009 005011 005012 005016 005018 005020 005022 005023 005025 005027 005029 005030 005031 005033 005035 005039 005042 005043 005044 005046 005047 005048 005051 005059 005060 005061 005066 005069 005071 005076 005083 005084 005085 005087 005088 005089 005091 005092 005096 005097 005098 005099 005100 005102 005104 005106 005107 005111 005114 005115 005116 005117 005118 005119 005123 005126 005129 005130 005131 005132 005134 005137 005142 005146 005148 005150 005151 005152 005154 005159 005160 005165 005169 005171 005173 005177 005178 005183 005186 005187 005192 005193 005195 005196 005200 005202 005203 005204 005205 005207 005208 005209 005210 005211 005212 005215 005216 005220 005223 005224 005225 005228 005231 005232 005235 005238 005239 005243 005245 005247 005248 005250 005252 005253 005254 005257 005258 005259 005261 005263 005264 005265 005266 005269 005270 005272 005277 005278 005281 005283 005285 005286 005288 005290 005291 005293 005294 005295 005300 005301 005302 005303 005305 005306 005310 005314 005317 005320 005324 005326 005327 005331 005332 005339 005340 005344 005346 005348 005351 005352 005353 005354 005355 005356 005357 005358 005361 005362 005364 005367 005370 005373 005374 005376 005380 005382 005383 005384 005387 005388 005392 005393 005394 005395 005396 005397 005398 005399 005400 005401 005402 005403 005406 005407 005408 005409 005410 005411 005412 005414 005416 005417 005418 005419 005420 005421 005424 005425 005428 005432 005433 005435 005436 005438 005439 005440 005442 005446 005451 005454 005455 005456 005457 005462 005463 005464 005468 005469 005470 005475 005478 005480 005483 005485 005488 005490 005491 005492 005493 005496 005497 005499 005500 005501 005502 005503 005504 005506 005507 005508 005509 005512 005513 005516 005517 005518 005519 005520 005521 005522 005524 005526 005527 005529 005530 005533 005535 005537 005539 005541 005543 005547 005548 005549 005550 005553 005554 005561 005562 005563 005564 005567 005568 005569 005574 005575 005578 005579 005583 005585 005591 005592 005593 005594 005597 005598 005599 005604 005605 005606 005607 005608 005609 005611 005612 005614 005615 005620 005621 005622 005624 005626 005627 005628 005629 005632 005636 005637 005641 005644 005645 005646 005647 005648 005651 005654 005655 005657 005661 005663 005665 005666 005667 005670 005671 005674 005675 005678 005679 005681 005682 005684 005686 005688 005690 005691 005692 005693 005694 005696 005697 005701 005702 005705 005710 005711 005715 005716 005718 005719 005720 005721 005722 005723 005726 005730 005732 005733 005734 005737 005738 005742 005748 005749 005750 005752 005753 005755 005756 005758 005759 005761 005764 005766 005767 005768 005769 005770 005771 005772 005773 005774 005775 005776 005778 005779 005780 005781 005788 005789 005791 005792 005795 005797 005798 005799 005802 005804 005808 005809 005810 005813 005814 005815 005816 005817 005823 005824 005825 005828 005830 005831 005832 005833 005835 005836 005837 005838 005842 005844 005845 005846 005847 005848 005849 005850 005851 005853 005858 005860 005861 005862 005863 005865 005866 005867 005868 005870 005871 005872 005874 005875 005877 005880 005884 005886 005888 005890 005891 005895 005896 005897 005898 005902 005904 005908 005915 005920 005924 005928 005929 005930 005932 005934 005936 005937 005940 005941 005942 005943 005945 005946 005950 005951 005953 005954 005956 005957 005959 005960 005964 005966 005967 005968 005971 005973 005974 005976 005977 005979 005980 005983 005987 005989 005990 005991 005992 005993 005995 005998 006000 006004 006006 006007 006011 006015 006017 006018 006019 006020 006021 006022 006025 006032 006035 006037 006040 006049 006051 006053 006055 006056 006059 006064 006065 006069 006072 006073 006076 006079 006080 006081 006082 006084 006089 006090 006091 006092 006094 006099 006101 006104 006105 006108 006109 006111 006112 006113 006119 006120 006124 006128 006129 006131 006132 006134 006135 006137 006138 006140 006141 006142 006143 006145 006147 006149 006150 006153 006155 006157 006158 006159 006160 006162 006164 006166 006170 006171 006172 006174 006175 006178 006179 006180 006181 006183 006184 006188 006189 006191 006192 006193 006197 006199 006200 006201 006203 006205 006206 006207 006209 006211 006212 006214 006216 006217 006218 006220 006221 006223 006224 006225 006226 006230 006231 006234 006235 006236 006237 006239 006241 006242 006243 006245 006248 006251 006252 006253 006254 006255 006256 006257 006259 006260 006261 006262 006264 006268 006271 006277 006279 006281 006283 006284 006285 006289 006290 006291 006292 006293 006294 006295 006296 006298 006299 006303 006304 006307 006308 006309 006310 006311 006313 006318 006319 006320 006323 006325 006326 006327 006328 006329 006330 006335 006336 006337 006341 006346 006347 006350 006352 006358 006359 006361 006362 006363 006365 006367 006373 006374 006375 006376 006378 006382 006383 006384 006387 006389 006390 006392 006397 006398 006399 006400 006401 006402 006404 006408 006412 006413 006414 006418 006419 006421 006422 006428 006429 006430 006431 006432 006438 006443 006447 006448 006449 006450 006455 006456 006457 006458 006459 006460 006461 006463 006466 006467 006471 006476 006479 006480 006485 006487 006489 006490 006492 006494 006495 006499 006500 006501 006502 006504 006509 006510 006511 006513 006518 006522 006523 006526 006527 006528 006536 006538 006539 006541 006543 006544 006545 006546 006547 006550 006552 006554 006557 006559 006562 006564 006566 006567 006571 006572 006573 006575 006579 006580 006584 006585 006587 006589 006591 006594 006598 006599 006600 006601 006605 006606 006607 006608 006609 006610 006615 006616 006617 006619 006620 006621 006622 006627 006630 006631 006635 006639 006640 006642 006644 006645 006646 006648 006652 006653 006654 006657 006661 006662 006663 006665 006668 006671 006672 006673 006675 006680 006681 006683 006684 006687 006688 006689 006690 006691 006697 006699 006700 006702 006704 006705 006706 006707 006708 006716 006717 006718 006721 006722 006724 006727 006728 006730 006735 006736 006739 006740 006742 006743 006746 006748 006749 006750 006757 006763 006766 006769 006774 006775 006776 006779 006784 006787 006788 006790 006793 006795 006799 006801 006802 006805 006809 006810 006814 006817 006820 006821 006823 006824 006825 006826 006827 006830 006831 006834 006835 006838 006839 006840 006842 006845 006846 006848 006851 006857 006859 006861 006864 006865 006867 006869 006871 006875 006877 006878 006880 006883 006886 006888 006890 006892 006893 006894 006896 006902 006904 006905 006909 006911 006912 006915 006916 006918 006919 006920 006921 006923 006924 006926 006927 006929 006931 006932 006933 006934 006935 006939 006940 006941 006946 006947 006949 006951 006952 006957 006958 006961 006963 006965 006966 006967 006969 006970 006972 006974 006975 006976 006979 006983 006984 006985 006986 006988 006991 006993 006995 006996 006998 007001 007002 007004 007007 007009 007013 007017 007018 007020 007021 007024 007025 007035 007036 007039 007040 007041 007044 007045 007046 007050 007051 007054 007057 007058 007060 007062 007064 007066 007070 007073 007075 007077 007086 007090 007092 007093 007094 007096 007097 007099 007101 007102 007104 007105 007106 007107 007108 007111 007113 007114 007116 007118 007121 007123 007124 007126 007127 007128 007129 007134 007137 007140 007141 007142 007143 007147 007148 007150 007151 007152 007153 007155 007156 007159 007160 007167 007170 007171 007173 007175 007179 007181 007184 007185 007186 007188 007189 007190 007191 007192 007193 007195 007196 007197 007203 007206 007209 007211 007213 007216 007218 007220 007222 007223 007224 007226 007228 007231 007234 007236 007237 007239 007241 007243 007245 007248 007249 007250 007251 007254 007257 007259 007263 007264 007268 007269 007270 007276 007281 007282 007285 007286 007293 007295 007296 007297 007298 007301 007305 007306 007307 007308 007312 007313 007314 007316 007317 007320 007321 007324 007328 007332 007333 007334 007335 007338 007340 007341 007346 007348 007354 007355 007356 007357 007358 007361 007362 007363 007365 007366 007367 007368 007370 007372 007373 007378 007379 007386 007387 007388 007390 007392 007393 007394 007399 007400 007404 007406 007408 007414 007417 007418 007425 007427 007428 007429 007431 007432 007438 007441 007443 007444 007446 007451 007452 007454 007455 007457 007459 007460 007461 007465 007471 007472 007474 007476 007479 ================================================ FILE: data/kitti_split1/trainval.txt ================================================ 000000 000001 000002 000003 000004 000005 000006 000007 000008 000009 000010 000011 000012 000013 000014 000015 000016 000017 000018 000019 000020 000021 000022 000023 000024 000025 000026 000027 000028 000029 000030 000031 000032 000033 000034 000035 000036 000037 000038 000039 000040 000041 000042 000043 000044 000045 000046 000047 000048 000049 000050 000051 000052 000053 000054 000055 000056 000057 000058 000059 000060 000061 000062 000063 000064 000065 000066 000067 000068 000069 000070 000071 000072 000073 000074 000075 000076 000077 000078 000079 000080 000081 000082 000083 000084 000085 000086 000087 000088 000089 000090 000091 000092 000093 000094 000095 000096 000097 000098 000099 000100 000101 000102 000103 000104 000105 000106 000107 000108 000109 000110 000111 000112 000113 000114 000115 000116 000117 000118 000119 000120 000121 000122 000123 000124 000125 000126 000127 000128 000129 000130 000131 000132 000133 000134 000135 000136 000137 000138 000139 000140 000141 000142 000143 000144 000145 000146 000147 000148 000149 000150 000151 000152 000153 000154 000155 000156 000157 000158 000159 000160 000161 000162 000163 000164 000165 000166 000167 000168 000169 000170 000171 000172 000173 000174 000175 000176 000177 000178 000179 000180 000181 000182 000183 000184 000185 000186 000187 000188 000189 000190 000191 000192 000193 000194 000195 000196 000197 000198 000199 000200 000201 000202 000203 000204 000205 000206 000207 000208 000209 000210 000211 000212 000213 000214 000215 000216 000217 000218 000219 000220 000221 000222 000223 000224 000225 000226 000227 000228 000229 000230 000231 000232 000233 000234 000235 000236 000237 000238 000239 000240 000241 000242 000243 000244 000245 000246 000247 000248 000249 000250 000251 000252 000253 000254 000255 000256 000257 000258 000259 000260 000261 000262 000263 000264 000265 000266 000267 000268 000269 000270 000271 000272 000273 000274 000275 000276 000277 000278 000279 000280 000281 000282 000283 000284 000285 000286 000287 000288 000289 000290 000291 000292 000293 000294 000295 000296 000297 000298 000299 000300 000301 000302 000303 000304 000305 000306 000307 000308 000309 000310 000311 000312 000313 000314 000315 000316 000317 000318 000319 000320 000321 000322 000323 000324 000325 000326 000327 000328 000329 000330 000331 000332 000333 000334 000335 000336 000337 000338 000339 000340 000341 000342 000343 000344 000345 000346 000347 000348 000349 000350 000351 000352 000353 000354 000355 000356 000357 000358 000359 000360 000361 000362 000363 000364 000365 000366 000367 000368 000369 000370 000371 000372 000373 000374 000375 000376 000377 000378 000379 000380 000381 000382 000383 000384 000385 000386 000387 000388 000389 000390 000391 000392 000393 000394 000395 000396 000397 000398 000399 000400 000401 000402 000403 000404 000405 000406 000407 000408 000409 000410 000411 000412 000413 000414 000415 000416 000417 000418 000419 000420 000421 000422 000423 000424 000425 000426 000427 000428 000429 000430 000431 000432 000433 000434 000435 000436 000437 000438 000439 000440 000441 000442 000443 000444 000445 000446 000447 000448 000449 000450 000451 000452 000453 000454 000455 000456 000457 000458 000459 000460 000461 000462 000463 000464 000465 000466 000467 000468 000469 000470 000471 000472 000473 000474 000475 000476 000477 000478 000479 000480 000481 000482 000483 000484 000485 000486 000487 000488 000489 000490 000491 000492 000493 000494 000495 000496 000497 000498 000499 000500 000501 000502 000503 000504 000505 000506 000507 000508 000509 000510 000511 000512 000513 000514 000515 000516 000517 000518 000519 000520 000521 000522 000523 000524 000525 000526 000527 000528 000529 000530 000531 000532 000533 000534 000535 000536 000537 000538 000539 000540 000541 000542 000543 000544 000545 000546 000547 000548 000549 000550 000551 000552 000553 000554 000555 000556 000557 000558 000559 000560 000561 000562 000563 000564 000565 000566 000567 000568 000569 000570 000571 000572 000573 000574 000575 000576 000577 000578 000579 000580 000581 000582 000583 000584 000585 000586 000587 000588 000589 000590 000591 000592 000593 000594 000595 000596 000597 000598 000599 000600 000601 000602 000603 000604 000605 000606 000607 000608 000609 000610 000611 000612 000613 000614 000615 000616 000617 000618 000619 000620 000621 000622 000623 000624 000625 000626 000627 000628 000629 000630 000631 000632 000633 000634 000635 000636 000637 000638 000639 000640 000641 000642 000643 000644 000645 000646 000647 000648 000649 000650 000651 000652 000653 000654 000655 000656 000657 000658 000659 000660 000661 000662 000663 000664 000665 000666 000667 000668 000669 000670 000671 000672 000673 000674 000675 000676 000677 000678 000679 000680 000681 000682 000683 000684 000685 000686 000687 000688 000689 000690 000691 000692 000693 000694 000695 000696 000697 000698 000699 000700 000701 000702 000703 000704 000705 000706 000707 000708 000709 000710 000711 000712 000713 000714 000715 000716 000717 000718 000719 000720 000721 000722 000723 000724 000725 000726 000727 000728 000729 000730 000731 000732 000733 000734 000735 000736 000737 000738 000739 000740 000741 000742 000743 000744 000745 000746 000747 000748 000749 000750 000751 000752 000753 000754 000755 000756 000757 000758 000759 000760 000761 000762 000763 000764 000765 000766 000767 000768 000769 000770 000771 000772 000773 000774 000775 000776 000777 000778 000779 000780 000781 000782 000783 000784 000785 000786 000787 000788 000789 000790 000791 000792 000793 000794 000795 000796 000797 000798 000799 000800 000801 000802 000803 000804 000805 000806 000807 000808 000809 000810 000811 000812 000813 000814 000815 000816 000817 000818 000819 000820 000821 000822 000823 000824 000825 000826 000827 000828 000829 000830 000831 000832 000833 000834 000835 000836 000837 000838 000839 000840 000841 000842 000843 000844 000845 000846 000847 000848 000849 000850 000851 000852 000853 000854 000855 000856 000857 000858 000859 000860 000861 000862 000863 000864 000865 000866 000867 000868 000869 000870 000871 000872 000873 000874 000875 000876 000877 000878 000879 000880 000881 000882 000883 000884 000885 000886 000887 000888 000889 000890 000891 000892 000893 000894 000895 000896 000897 000898 000899 000900 000901 000902 000903 000904 000905 000906 000907 000908 000909 000910 000911 000912 000913 000914 000915 000916 000917 000918 000919 000920 000921 000922 000923 000924 000925 000926 000927 000928 000929 000930 000931 000932 000933 000934 000935 000936 000937 000938 000939 000940 000941 000942 000943 000944 000945 000946 000947 000948 000949 000950 000951 000952 000953 000954 000955 000956 000957 000958 000959 000960 000961 000962 000963 000964 000965 000966 000967 000968 000969 000970 000971 000972 000973 000974 000975 000976 000977 000978 000979 000980 000981 000982 000983 000984 000985 000986 000987 000988 000989 000990 000991 000992 000993 000994 000995 000996 000997 000998 000999 001000 001001 001002 001003 001004 001005 001006 001007 001008 001009 001010 001011 001012 001013 001014 001015 001016 001017 001018 001019 001020 001021 001022 001023 001024 001025 001026 001027 001028 001029 001030 001031 001032 001033 001034 001035 001036 001037 001038 001039 001040 001041 001042 001043 001044 001045 001046 001047 001048 001049 001050 001051 001052 001053 001054 001055 001056 001057 001058 001059 001060 001061 001062 001063 001064 001065 001066 001067 001068 001069 001070 001071 001072 001073 001074 001075 001076 001077 001078 001079 001080 001081 001082 001083 001084 001085 001086 001087 001088 001089 001090 001091 001092 001093 001094 001095 001096 001097 001098 001099 001100 001101 001102 001103 001104 001105 001106 001107 001108 001109 001110 001111 001112 001113 001114 001115 001116 001117 001118 001119 001120 001121 001122 001123 001124 001125 001126 001127 001128 001129 001130 001131 001132 001133 001134 001135 001136 001137 001138 001139 001140 001141 001142 001143 001144 001145 001146 001147 001148 001149 001150 001151 001152 001153 001154 001155 001156 001157 001158 001159 001160 001161 001162 001163 001164 001165 001166 001167 001168 001169 001170 001171 001172 001173 001174 001175 001176 001177 001178 001179 001180 001181 001182 001183 001184 001185 001186 001187 001188 001189 001190 001191 001192 001193 001194 001195 001196 001197 001198 001199 001200 001201 001202 001203 001204 001205 001206 001207 001208 001209 001210 001211 001212 001213 001214 001215 001216 001217 001218 001219 001220 001221 001222 001223 001224 001225 001226 001227 001228 001229 001230 001231 001232 001233 001234 001235 001236 001237 001238 001239 001240 001241 001242 001243 001244 001245 001246 001247 001248 001249 001250 001251 001252 001253 001254 001255 001256 001257 001258 001259 001260 001261 001262 001263 001264 001265 001266 001267 001268 001269 001270 001271 001272 001273 001274 001275 001276 001277 001278 001279 001280 001281 001282 001283 001284 001285 001286 001287 001288 001289 001290 001291 001292 001293 001294 001295 001296 001297 001298 001299 001300 001301 001302 001303 001304 001305 001306 001307 001308 001309 001310 001311 001312 001313 001314 001315 001316 001317 001318 001319 001320 001321 001322 001323 001324 001325 001326 001327 001328 001329 001330 001331 001332 001333 001334 001335 001336 001337 001338 001339 001340 001341 001342 001343 001344 001345 001346 001347 001348 001349 001350 001351 001352 001353 001354 001355 001356 001357 001358 001359 001360 001361 001362 001363 001364 001365 001366 001367 001368 001369 001370 001371 001372 001373 001374 001375 001376 001377 001378 001379 001380 001381 001382 001383 001384 001385 001386 001387 001388 001389 001390 001391 001392 001393 001394 001395 001396 001397 001398 001399 001400 001401 001402 001403 001404 001405 001406 001407 001408 001409 001410 001411 001412 001413 001414 001415 001416 001417 001418 001419 001420 001421 001422 001423 001424 001425 001426 001427 001428 001429 001430 001431 001432 001433 001434 001435 001436 001437 001438 001439 001440 001441 001442 001443 001444 001445 001446 001447 001448 001449 001450 001451 001452 001453 001454 001455 001456 001457 001458 001459 001460 001461 001462 001463 001464 001465 001466 001467 001468 001469 001470 001471 001472 001473 001474 001475 001476 001477 001478 001479 001480 001481 001482 001483 001484 001485 001486 001487 001488 001489 001490 001491 001492 001493 001494 001495 001496 001497 001498 001499 001500 001501 001502 001503 001504 001505 001506 001507 001508 001509 001510 001511 001512 001513 001514 001515 001516 001517 001518 001519 001520 001521 001522 001523 001524 001525 001526 001527 001528 001529 001530 001531 001532 001533 001534 001535 001536 001537 001538 001539 001540 001541 001542 001543 001544 001545 001546 001547 001548 001549 001550 001551 001552 001553 001554 001555 001556 001557 001558 001559 001560 001561 001562 001563 001564 001565 001566 001567 001568 001569 001570 001571 001572 001573 001574 001575 001576 001577 001578 001579 001580 001581 001582 001583 001584 001585 001586 001587 001588 001589 001590 001591 001592 001593 001594 001595 001596 001597 001598 001599 001600 001601 001602 001603 001604 001605 001606 001607 001608 001609 001610 001611 001612 001613 001614 001615 001616 001617 001618 001619 001620 001621 001622 001623 001624 001625 001626 001627 001628 001629 001630 001631 001632 001633 001634 001635 001636 001637 001638 001639 001640 001641 001642 001643 001644 001645 001646 001647 001648 001649 001650 001651 001652 001653 001654 001655 001656 001657 001658 001659 001660 001661 001662 001663 001664 001665 001666 001667 001668 001669 001670 001671 001672 001673 001674 001675 001676 001677 001678 001679 001680 001681 001682 001683 001684 001685 001686 001687 001688 001689 001690 001691 001692 001693 001694 001695 001696 001697 001698 001699 001700 001701 001702 001703 001704 001705 001706 001707 001708 001709 001710 001711 001712 001713 001714 001715 001716 001717 001718 001719 001720 001721 001722 001723 001724 001725 001726 001727 001728 001729 001730 001731 001732 001733 001734 001735 001736 001737 001738 001739 001740 001741 001742 001743 001744 001745 001746 001747 001748 001749 001750 001751 001752 001753 001754 001755 001756 001757 001758 001759 001760 001761 001762 001763 001764 001765 001766 001767 001768 001769 001770 001771 001772 001773 001774 001775 001776 001777 001778 001779 001780 001781 001782 001783 001784 001785 001786 001787 001788 001789 001790 001791 001792 001793 001794 001795 001796 001797 001798 001799 001800 001801 001802 001803 001804 001805 001806 001807 001808 001809 001810 001811 001812 001813 001814 001815 001816 001817 001818 001819 001820 001821 001822 001823 001824 001825 001826 001827 001828 001829 001830 001831 001832 001833 001834 001835 001836 001837 001838 001839 001840 001841 001842 001843 001844 001845 001846 001847 001848 001849 001850 001851 001852 001853 001854 001855 001856 001857 001858 001859 001860 001861 001862 001863 001864 001865 001866 001867 001868 001869 001870 001871 001872 001873 001874 001875 001876 001877 001878 001879 001880 001881 001882 001883 001884 001885 001886 001887 001888 001889 001890 001891 001892 001893 001894 001895 001896 001897 001898 001899 001900 001901 001902 001903 001904 001905 001906 001907 001908 001909 001910 001911 001912 001913 001914 001915 001916 001917 001918 001919 001920 001921 001922 001923 001924 001925 001926 001927 001928 001929 001930 001931 001932 001933 001934 001935 001936 001937 001938 001939 001940 001941 001942 001943 001944 001945 001946 001947 001948 001949 001950 001951 001952 001953 001954 001955 001956 001957 001958 001959 001960 001961 001962 001963 001964 001965 001966 001967 001968 001969 001970 001971 001972 001973 001974 001975 001976 001977 001978 001979 001980 001981 001982 001983 001984 001985 001986 001987 001988 001989 001990 001991 001992 001993 001994 001995 001996 001997 001998 001999 002000 002001 002002 002003 002004 002005 002006 002007 002008 002009 002010 002011 002012 002013 002014 002015 002016 002017 002018 002019 002020 002021 002022 002023 002024 002025 002026 002027 002028 002029 002030 002031 002032 002033 002034 002035 002036 002037 002038 002039 002040 002041 002042 002043 002044 002045 002046 002047 002048 002049 002050 002051 002052 002053 002054 002055 002056 002057 002058 002059 002060 002061 002062 002063 002064 002065 002066 002067 002068 002069 002070 002071 002072 002073 002074 002075 002076 002077 002078 002079 002080 002081 002082 002083 002084 002085 002086 002087 002088 002089 002090 002091 002092 002093 002094 002095 002096 002097 002098 002099 002100 002101 002102 002103 002104 002105 002106 002107 002108 002109 002110 002111 002112 002113 002114 002115 002116 002117 002118 002119 002120 002121 002122 002123 002124 002125 002126 002127 002128 002129 002130 002131 002132 002133 002134 002135 002136 002137 002138 002139 002140 002141 002142 002143 002144 002145 002146 002147 002148 002149 002150 002151 002152 002153 002154 002155 002156 002157 002158 002159 002160 002161 002162 002163 002164 002165 002166 002167 002168 002169 002170 002171 002172 002173 002174 002175 002176 002177 002178 002179 002180 002181 002182 002183 002184 002185 002186 002187 002188 002189 002190 002191 002192 002193 002194 002195 002196 002197 002198 002199 002200 002201 002202 002203 002204 002205 002206 002207 002208 002209 002210 002211 002212 002213 002214 002215 002216 002217 002218 002219 002220 002221 002222 002223 002224 002225 002226 002227 002228 002229 002230 002231 002232 002233 002234 002235 002236 002237 002238 002239 002240 002241 002242 002243 002244 002245 002246 002247 002248 002249 002250 002251 002252 002253 002254 002255 002256 002257 002258 002259 002260 002261 002262 002263 002264 002265 002266 002267 002268 002269 002270 002271 002272 002273 002274 002275 002276 002277 002278 002279 002280 002281 002282 002283 002284 002285 002286 002287 002288 002289 002290 002291 002292 002293 002294 002295 002296 002297 002298 002299 002300 002301 002302 002303 002304 002305 002306 002307 002308 002309 002310 002311 002312 002313 002314 002315 002316 002317 002318 002319 002320 002321 002322 002323 002324 002325 002326 002327 002328 002329 002330 002331 002332 002333 002334 002335 002336 002337 002338 002339 002340 002341 002342 002343 002344 002345 002346 002347 002348 002349 002350 002351 002352 002353 002354 002355 002356 002357 002358 002359 002360 002361 002362 002363 002364 002365 002366 002367 002368 002369 002370 002371 002372 002373 002374 002375 002376 002377 002378 002379 002380 002381 002382 002383 002384 002385 002386 002387 002388 002389 002390 002391 002392 002393 002394 002395 002396 002397 002398 002399 002400 002401 002402 002403 002404 002405 002406 002407 002408 002409 002410 002411 002412 002413 002414 002415 002416 002417 002418 002419 002420 002421 002422 002423 002424 002425 002426 002427 002428 002429 002430 002431 002432 002433 002434 002435 002436 002437 002438 002439 002440 002441 002442 002443 002444 002445 002446 002447 002448 002449 002450 002451 002452 002453 002454 002455 002456 002457 002458 002459 002460 002461 002462 002463 002464 002465 002466 002467 002468 002469 002470 002471 002472 002473 002474 002475 002476 002477 002478 002479 002480 002481 002482 002483 002484 002485 002486 002487 002488 002489 002490 002491 002492 002493 002494 002495 002496 002497 002498 002499 002500 002501 002502 002503 002504 002505 002506 002507 002508 002509 002510 002511 002512 002513 002514 002515 002516 002517 002518 002519 002520 002521 002522 002523 002524 002525 002526 002527 002528 002529 002530 002531 002532 002533 002534 002535 002536 002537 002538 002539 002540 002541 002542 002543 002544 002545 002546 002547 002548 002549 002550 002551 002552 002553 002554 002555 002556 002557 002558 002559 002560 002561 002562 002563 002564 002565 002566 002567 002568 002569 002570 002571 002572 002573 002574 002575 002576 002577 002578 002579 002580 002581 002582 002583 002584 002585 002586 002587 002588 002589 002590 002591 002592 002593 002594 002595 002596 002597 002598 002599 002600 002601 002602 002603 002604 002605 002606 002607 002608 002609 002610 002611 002612 002613 002614 002615 002616 002617 002618 002619 002620 002621 002622 002623 002624 002625 002626 002627 002628 002629 002630 002631 002632 002633 002634 002635 002636 002637 002638 002639 002640 002641 002642 002643 002644 002645 002646 002647 002648 002649 002650 002651 002652 002653 002654 002655 002656 002657 002658 002659 002660 002661 002662 002663 002664 002665 002666 002667 002668 002669 002670 002671 002672 002673 002674 002675 002676 002677 002678 002679 002680 002681 002682 002683 002684 002685 002686 002687 002688 002689 002690 002691 002692 002693 002694 002695 002696 002697 002698 002699 002700 002701 002702 002703 002704 002705 002706 002707 002708 002709 002710 002711 002712 002713 002714 002715 002716 002717 002718 002719 002720 002721 002722 002723 002724 002725 002726 002727 002728 002729 002730 002731 002732 002733 002734 002735 002736 002737 002738 002739 002740 002741 002742 002743 002744 002745 002746 002747 002748 002749 002750 002751 002752 002753 002754 002755 002756 002757 002758 002759 002760 002761 002762 002763 002764 002765 002766 002767 002768 002769 002770 002771 002772 002773 002774 002775 002776 002777 002778 002779 002780 002781 002782 002783 002784 002785 002786 002787 002788 002789 002790 002791 002792 002793 002794 002795 002796 002797 002798 002799 002800 002801 002802 002803 002804 002805 002806 002807 002808 002809 002810 002811 002812 002813 002814 002815 002816 002817 002818 002819 002820 002821 002822 002823 002824 002825 002826 002827 002828 002829 002830 002831 002832 002833 002834 002835 002836 002837 002838 002839 002840 002841 002842 002843 002844 002845 002846 002847 002848 002849 002850 002851 002852 002853 002854 002855 002856 002857 002858 002859 002860 002861 002862 002863 002864 002865 002866 002867 002868 002869 002870 002871 002872 002873 002874 002875 002876 002877 002878 002879 002880 002881 002882 002883 002884 002885 002886 002887 002888 002889 002890 002891 002892 002893 002894 002895 002896 002897 002898 002899 002900 002901 002902 002903 002904 002905 002906 002907 002908 002909 002910 002911 002912 002913 002914 002915 002916 002917 002918 002919 002920 002921 002922 002923 002924 002925 002926 002927 002928 002929 002930 002931 002932 002933 002934 002935 002936 002937 002938 002939 002940 002941 002942 002943 002944 002945 002946 002947 002948 002949 002950 002951 002952 002953 002954 002955 002956 002957 002958 002959 002960 002961 002962 002963 002964 002965 002966 002967 002968 002969 002970 002971 002972 002973 002974 002975 002976 002977 002978 002979 002980 002981 002982 002983 002984 002985 002986 002987 002988 002989 002990 002991 002992 002993 002994 002995 002996 002997 002998 002999 003000 003001 003002 003003 003004 003005 003006 003007 003008 003009 003010 003011 003012 003013 003014 003015 003016 003017 003018 003019 003020 003021 003022 003023 003024 003025 003026 003027 003028 003029 003030 003031 003032 003033 003034 003035 003036 003037 003038 003039 003040 003041 003042 003043 003044 003045 003046 003047 003048 003049 003050 003051 003052 003053 003054 003055 003056 003057 003058 003059 003060 003061 003062 003063 003064 003065 003066 003067 003068 003069 003070 003071 003072 003073 003074 003075 003076 003077 003078 003079 003080 003081 003082 003083 003084 003085 003086 003087 003088 003089 003090 003091 003092 003093 003094 003095 003096 003097 003098 003099 003100 003101 003102 003103 003104 003105 003106 003107 003108 003109 003110 003111 003112 003113 003114 003115 003116 003117 003118 003119 003120 003121 003122 003123 003124 003125 003126 003127 003128 003129 003130 003131 003132 003133 003134 003135 003136 003137 003138 003139 003140 003141 003142 003143 003144 003145 003146 003147 003148 003149 003150 003151 003152 003153 003154 003155 003156 003157 003158 003159 003160 003161 003162 003163 003164 003165 003166 003167 003168 003169 003170 003171 003172 003173 003174 003175 003176 003177 003178 003179 003180 003181 003182 003183 003184 003185 003186 003187 003188 003189 003190 003191 003192 003193 003194 003195 003196 003197 003198 003199 003200 003201 003202 003203 003204 003205 003206 003207 003208 003209 003210 003211 003212 003213 003214 003215 003216 003217 003218 003219 003220 003221 003222 003223 003224 003225 003226 003227 003228 003229 003230 003231 003232 003233 003234 003235 003236 003237 003238 003239 003240 003241 003242 003243 003244 003245 003246 003247 003248 003249 003250 003251 003252 003253 003254 003255 003256 003257 003258 003259 003260 003261 003262 003263 003264 003265 003266 003267 003268 003269 003270 003271 003272 003273 003274 003275 003276 003277 003278 003279 003280 003281 003282 003283 003284 003285 003286 003287 003288 003289 003290 003291 003292 003293 003294 003295 003296 003297 003298 003299 003300 003301 003302 003303 003304 003305 003306 003307 003308 003309 003310 003311 003312 003313 003314 003315 003316 003317 003318 003319 003320 003321 003322 003323 003324 003325 003326 003327 003328 003329 003330 003331 003332 003333 003334 003335 003336 003337 003338 003339 003340 003341 003342 003343 003344 003345 003346 003347 003348 003349 003350 003351 003352 003353 003354 003355 003356 003357 003358 003359 003360 003361 003362 003363 003364 003365 003366 003367 003368 003369 003370 003371 003372 003373 003374 003375 003376 003377 003378 003379 003380 003381 003382 003383 003384 003385 003386 003387 003388 003389 003390 003391 003392 003393 003394 003395 003396 003397 003398 003399 003400 003401 003402 003403 003404 003405 003406 003407 003408 003409 003410 003411 003412 003413 003414 003415 003416 003417 003418 003419 003420 003421 003422 003423 003424 003425 003426 003427 003428 003429 003430 003431 003432 003433 003434 003435 003436 003437 003438 003439 003440 003441 003442 003443 003444 003445 003446 003447 003448 003449 003450 003451 003452 003453 003454 003455 003456 003457 003458 003459 003460 003461 003462 003463 003464 003465 003466 003467 003468 003469 003470 003471 003472 003473 003474 003475 003476 003477 003478 003479 003480 003481 003482 003483 003484 003485 003486 003487 003488 003489 003490 003491 003492 003493 003494 003495 003496 003497 003498 003499 003500 003501 003502 003503 003504 003505 003506 003507 003508 003509 003510 003511 003512 003513 003514 003515 003516 003517 003518 003519 003520 003521 003522 003523 003524 003525 003526 003527 003528 003529 003530 003531 003532 003533 003534 003535 003536 003537 003538 003539 003540 003541 003542 003543 003544 003545 003546 003547 003548 003549 003550 003551 003552 003553 003554 003555 003556 003557 003558 003559 003560 003561 003562 003563 003564 003565 003566 003567 003568 003569 003570 003571 003572 003573 003574 003575 003576 003577 003578 003579 003580 003581 003582 003583 003584 003585 003586 003587 003588 003589 003590 003591 003592 003593 003594 003595 003596 003597 003598 003599 003600 003601 003602 003603 003604 003605 003606 003607 003608 003609 003610 003611 003612 003613 003614 003615 003616 003617 003618 003619 003620 003621 003622 003623 003624 003625 003626 003627 003628 003629 003630 003631 003632 003633 003634 003635 003636 003637 003638 003639 003640 003641 003642 003643 003644 003645 003646 003647 003648 003649 003650 003651 003652 003653 003654 003655 003656 003657 003658 003659 003660 003661 003662 003663 003664 003665 003666 003667 003668 003669 003670 003671 003672 003673 003674 003675 003676 003677 003678 003679 003680 003681 003682 003683 003684 003685 003686 003687 003688 003689 003690 003691 003692 003693 003694 003695 003696 003697 003698 003699 003700 003701 003702 003703 003704 003705 003706 003707 003708 003709 003710 003711 003712 003713 003714 003715 003716 003717 003718 003719 003720 003721 003722 003723 003724 003725 003726 003727 003728 003729 003730 003731 003732 003733 003734 003735 003736 003737 003738 003739 003740 003741 003742 003743 003744 003745 003746 003747 003748 003749 003750 003751 003752 003753 003754 003755 003756 003757 003758 003759 003760 003761 003762 003763 003764 003765 003766 003767 003768 003769 003770 003771 003772 003773 003774 003775 003776 003777 003778 003779 003780 003781 003782 003783 003784 003785 003786 003787 003788 003789 003790 003791 003792 003793 003794 003795 003796 003797 003798 003799 003800 003801 003802 003803 003804 003805 003806 003807 003808 003809 003810 003811 003812 003813 003814 003815 003816 003817 003818 003819 003820 003821 003822 003823 003824 003825 003826 003827 003828 003829 003830 003831 003832 003833 003834 003835 003836 003837 003838 003839 003840 003841 003842 003843 003844 003845 003846 003847 003848 003849 003850 003851 003852 003853 003854 003855 003856 003857 003858 003859 003860 003861 003862 003863 003864 003865 003866 003867 003868 003869 003870 003871 003872 003873 003874 003875 003876 003877 003878 003879 003880 003881 003882 003883 003884 003885 003886 003887 003888 003889 003890 003891 003892 003893 003894 003895 003896 003897 003898 003899 003900 003901 003902 003903 003904 003905 003906 003907 003908 003909 003910 003911 003912 003913 003914 003915 003916 003917 003918 003919 003920 003921 003922 003923 003924 003925 003926 003927 003928 003929 003930 003931 003932 003933 003934 003935 003936 003937 003938 003939 003940 003941 003942 003943 003944 003945 003946 003947 003948 003949 003950 003951 003952 003953 003954 003955 003956 003957 003958 003959 003960 003961 003962 003963 003964 003965 003966 003967 003968 003969 003970 003971 003972 003973 003974 003975 003976 003977 003978 003979 003980 003981 003982 003983 003984 003985 003986 003987 003988 003989 003990 003991 003992 003993 003994 003995 003996 003997 003998 003999 004000 004001 004002 004003 004004 004005 004006 004007 004008 004009 004010 004011 004012 004013 004014 004015 004016 004017 004018 004019 004020 004021 004022 004023 004024 004025 004026 004027 004028 004029 004030 004031 004032 004033 004034 004035 004036 004037 004038 004039 004040 004041 004042 004043 004044 004045 004046 004047 004048 004049 004050 004051 004052 004053 004054 004055 004056 004057 004058 004059 004060 004061 004062 004063 004064 004065 004066 004067 004068 004069 004070 004071 004072 004073 004074 004075 004076 004077 004078 004079 004080 004081 004082 004083 004084 004085 004086 004087 004088 004089 004090 004091 004092 004093 004094 004095 004096 004097 004098 004099 004100 004101 004102 004103 004104 004105 004106 004107 004108 004109 004110 004111 004112 004113 004114 004115 004116 004117 004118 004119 004120 004121 004122 004123 004124 004125 004126 004127 004128 004129 004130 004131 004132 004133 004134 004135 004136 004137 004138 004139 004140 004141 004142 004143 004144 004145 004146 004147 004148 004149 004150 004151 004152 004153 004154 004155 004156 004157 004158 004159 004160 004161 004162 004163 004164 004165 004166 004167 004168 004169 004170 004171 004172 004173 004174 004175 004176 004177 004178 004179 004180 004181 004182 004183 004184 004185 004186 004187 004188 004189 004190 004191 004192 004193 004194 004195 004196 004197 004198 004199 004200 004201 004202 004203 004204 004205 004206 004207 004208 004209 004210 004211 004212 004213 004214 004215 004216 004217 004218 004219 004220 004221 004222 004223 004224 004225 004226 004227 004228 004229 004230 004231 004232 004233 004234 004235 004236 004237 004238 004239 004240 004241 004242 004243 004244 004245 004246 004247 004248 004249 004250 004251 004252 004253 004254 004255 004256 004257 004258 004259 004260 004261 004262 004263 004264 004265 004266 004267 004268 004269 004270 004271 004272 004273 004274 004275 004276 004277 004278 004279 004280 004281 004282 004283 004284 004285 004286 004287 004288 004289 004290 004291 004292 004293 004294 004295 004296 004297 004298 004299 004300 004301 004302 004303 004304 004305 004306 004307 004308 004309 004310 004311 004312 004313 004314 004315 004316 004317 004318 004319 004320 004321 004322 004323 004324 004325 004326 004327 004328 004329 004330 004331 004332 004333 004334 004335 004336 004337 004338 004339 004340 004341 004342 004343 004344 004345 004346 004347 004348 004349 004350 004351 004352 004353 004354 004355 004356 004357 004358 004359 004360 004361 004362 004363 004364 004365 004366 004367 004368 004369 004370 004371 004372 004373 004374 004375 004376 004377 004378 004379 004380 004381 004382 004383 004384 004385 004386 004387 004388 004389 004390 004391 004392 004393 004394 004395 004396 004397 004398 004399 004400 004401 004402 004403 004404 004405 004406 004407 004408 004409 004410 004411 004412 004413 004414 004415 004416 004417 004418 004419 004420 004421 004422 004423 004424 004425 004426 004427 004428 004429 004430 004431 004432 004433 004434 004435 004436 004437 004438 004439 004440 004441 004442 004443 004444 004445 004446 004447 004448 004449 004450 004451 004452 004453 004454 004455 004456 004457 004458 004459 004460 004461 004462 004463 004464 004465 004466 004467 004468 004469 004470 004471 004472 004473 004474 004475 004476 004477 004478 004479 004480 004481 004482 004483 004484 004485 004486 004487 004488 004489 004490 004491 004492 004493 004494 004495 004496 004497 004498 004499 004500 004501 004502 004503 004504 004505 004506 004507 004508 004509 004510 004511 004512 004513 004514 004515 004516 004517 004518 004519 004520 004521 004522 004523 004524 004525 004526 004527 004528 004529 004530 004531 004532 004533 004534 004535 004536 004537 004538 004539 004540 004541 004542 004543 004544 004545 004546 004547 004548 004549 004550 004551 004552 004553 004554 004555 004556 004557 004558 004559 004560 004561 004562 004563 004564 004565 004566 004567 004568 004569 004570 004571 004572 004573 004574 004575 004576 004577 004578 004579 004580 004581 004582 004583 004584 004585 004586 004587 004588 004589 004590 004591 004592 004593 004594 004595 004596 004597 004598 004599 004600 004601 004602 004603 004604 004605 004606 004607 004608 004609 004610 004611 004612 004613 004614 004615 004616 004617 004618 004619 004620 004621 004622 004623 004624 004625 004626 004627 004628 004629 004630 004631 004632 004633 004634 004635 004636 004637 004638 004639 004640 004641 004642 004643 004644 004645 004646 004647 004648 004649 004650 004651 004652 004653 004654 004655 004656 004657 004658 004659 004660 004661 004662 004663 004664 004665 004666 004667 004668 004669 004670 004671 004672 004673 004674 004675 004676 004677 004678 004679 004680 004681 004682 004683 004684 004685 004686 004687 004688 004689 004690 004691 004692 004693 004694 004695 004696 004697 004698 004699 004700 004701 004702 004703 004704 004705 004706 004707 004708 004709 004710 004711 004712 004713 004714 004715 004716 004717 004718 004719 004720 004721 004722 004723 004724 004725 004726 004727 004728 004729 004730 004731 004732 004733 004734 004735 004736 004737 004738 004739 004740 004741 004742 004743 004744 004745 004746 004747 004748 004749 004750 004751 004752 004753 004754 004755 004756 004757 004758 004759 004760 004761 004762 004763 004764 004765 004766 004767 004768 004769 004770 004771 004772 004773 004774 004775 004776 004777 004778 004779 004780 004781 004782 004783 004784 004785 004786 004787 004788 004789 004790 004791 004792 004793 004794 004795 004796 004797 004798 004799 004800 004801 004802 004803 004804 004805 004806 004807 004808 004809 004810 004811 004812 004813 004814 004815 004816 004817 004818 004819 004820 004821 004822 004823 004824 004825 004826 004827 004828 004829 004830 004831 004832 004833 004834 004835 004836 004837 004838 004839 004840 004841 004842 004843 004844 004845 004846 004847 004848 004849 004850 004851 004852 004853 004854 004855 004856 004857 004858 004859 004860 004861 004862 004863 004864 004865 004866 004867 004868 004869 004870 004871 004872 004873 004874 004875 004876 004877 004878 004879 004880 004881 004882 004883 004884 004885 004886 004887 004888 004889 004890 004891 004892 004893 004894 004895 004896 004897 004898 004899 004900 004901 004902 004903 004904 004905 004906 004907 004908 004909 004910 004911 004912 004913 004914 004915 004916 004917 004918 004919 004920 004921 004922 004923 004924 004925 004926 004927 004928 004929 004930 004931 004932 004933 004934 004935 004936 004937 004938 004939 004940 004941 004942 004943 004944 004945 004946 004947 004948 004949 004950 004951 004952 004953 004954 004955 004956 004957 004958 004959 004960 004961 004962 004963 004964 004965 004966 004967 004968 004969 004970 004971 004972 004973 004974 004975 004976 004977 004978 004979 004980 004981 004982 004983 004984 004985 004986 004987 004988 004989 004990 004991 004992 004993 004994 004995 004996 004997 004998 004999 005000 005001 005002 005003 005004 005005 005006 005007 005008 005009 005010 005011 005012 005013 005014 005015 005016 005017 005018 005019 005020 005021 005022 005023 005024 005025 005026 005027 005028 005029 005030 005031 005032 005033 005034 005035 005036 005037 005038 005039 005040 005041 005042 005043 005044 005045 005046 005047 005048 005049 005050 005051 005052 005053 005054 005055 005056 005057 005058 005059 005060 005061 005062 005063 005064 005065 005066 005067 005068 005069 005070 005071 005072 005073 005074 005075 005076 005077 005078 005079 005080 005081 005082 005083 005084 005085 005086 005087 005088 005089 005090 005091 005092 005093 005094 005095 005096 005097 005098 005099 005100 005101 005102 005103 005104 005105 005106 005107 005108 005109 005110 005111 005112 005113 005114 005115 005116 005117 005118 005119 005120 005121 005122 005123 005124 005125 005126 005127 005128 005129 005130 005131 005132 005133 005134 005135 005136 005137 005138 005139 005140 005141 005142 005143 005144 005145 005146 005147 005148 005149 005150 005151 005152 005153 005154 005155 005156 005157 005158 005159 005160 005161 005162 005163 005164 005165 005166 005167 005168 005169 005170 005171 005172 005173 005174 005175 005176 005177 005178 005179 005180 005181 005182 005183 005184 005185 005186 005187 005188 005189 005190 005191 005192 005193 005194 005195 005196 005197 005198 005199 005200 005201 005202 005203 005204 005205 005206 005207 005208 005209 005210 005211 005212 005213 005214 005215 005216 005217 005218 005219 005220 005221 005222 005223 005224 005225 005226 005227 005228 005229 005230 005231 005232 005233 005234 005235 005236 005237 005238 005239 005240 005241 005242 005243 005244 005245 005246 005247 005248 005249 005250 005251 005252 005253 005254 005255 005256 005257 005258 005259 005260 005261 005262 005263 005264 005265 005266 005267 005268 005269 005270 005271 005272 005273 005274 005275 005276 005277 005278 005279 005280 005281 005282 005283 005284 005285 005286 005287 005288 005289 005290 005291 005292 005293 005294 005295 005296 005297 005298 005299 005300 005301 005302 005303 005304 005305 005306 005307 005308 005309 005310 005311 005312 005313 005314 005315 005316 005317 005318 005319 005320 005321 005322 005323 005324 005325 005326 005327 005328 005329 005330 005331 005332 005333 005334 005335 005336 005337 005338 005339 005340 005341 005342 005343 005344 005345 005346 005347 005348 005349 005350 005351 005352 005353 005354 005355 005356 005357 005358 005359 005360 005361 005362 005363 005364 005365 005366 005367 005368 005369 005370 005371 005372 005373 005374 005375 005376 005377 005378 005379 005380 005381 005382 005383 005384 005385 005386 005387 005388 005389 005390 005391 005392 005393 005394 005395 005396 005397 005398 005399 005400 005401 005402 005403 005404 005405 005406 005407 005408 005409 005410 005411 005412 005413 005414 005415 005416 005417 005418 005419 005420 005421 005422 005423 005424 005425 005426 005427 005428 005429 005430 005431 005432 005433 005434 005435 005436 005437 005438 005439 005440 005441 005442 005443 005444 005445 005446 005447 005448 005449 005450 005451 005452 005453 005454 005455 005456 005457 005458 005459 005460 005461 005462 005463 005464 005465 005466 005467 005468 005469 005470 005471 005472 005473 005474 005475 005476 005477 005478 005479 005480 005481 005482 005483 005484 005485 005486 005487 005488 005489 005490 005491 005492 005493 005494 005495 005496 005497 005498 005499 005500 005501 005502 005503 005504 005505 005506 005507 005508 005509 005510 005511 005512 005513 005514 005515 005516 005517 005518 005519 005520 005521 005522 005523 005524 005525 005526 005527 005528 005529 005530 005531 005532 005533 005534 005535 005536 005537 005538 005539 005540 005541 005542 005543 005544 005545 005546 005547 005548 005549 005550 005551 005552 005553 005554 005555 005556 005557 005558 005559 005560 005561 005562 005563 005564 005565 005566 005567 005568 005569 005570 005571 005572 005573 005574 005575 005576 005577 005578 005579 005580 005581 005582 005583 005584 005585 005586 005587 005588 005589 005590 005591 005592 005593 005594 005595 005596 005597 005598 005599 005600 005601 005602 005603 005604 005605 005606 005607 005608 005609 005610 005611 005612 005613 005614 005615 005616 005617 005618 005619 005620 005621 005622 005623 005624 005625 005626 005627 005628 005629 005630 005631 005632 005633 005634 005635 005636 005637 005638 005639 005640 005641 005642 005643 005644 005645 005646 005647 005648 005649 005650 005651 005652 005653 005654 005655 005656 005657 005658 005659 005660 005661 005662 005663 005664 005665 005666 005667 005668 005669 005670 005671 005672 005673 005674 005675 005676 005677 005678 005679 005680 005681 005682 005683 005684 005685 005686 005687 005688 005689 005690 005691 005692 005693 005694 005695 005696 005697 005698 005699 005700 005701 005702 005703 005704 005705 005706 005707 005708 005709 005710 005711 005712 005713 005714 005715 005716 005717 005718 005719 005720 005721 005722 005723 005724 005725 005726 005727 005728 005729 005730 005731 005732 005733 005734 005735 005736 005737 005738 005739 005740 005741 005742 005743 005744 005745 005746 005747 005748 005749 005750 005751 005752 005753 005754 005755 005756 005757 005758 005759 005760 005761 005762 005763 005764 005765 005766 005767 005768 005769 005770 005771 005772 005773 005774 005775 005776 005777 005778 005779 005780 005781 005782 005783 005784 005785 005786 005787 005788 005789 005790 005791 005792 005793 005794 005795 005796 005797 005798 005799 005800 005801 005802 005803 005804 005805 005806 005807 005808 005809 005810 005811 005812 005813 005814 005815 005816 005817 005818 005819 005820 005821 005822 005823 005824 005825 005826 005827 005828 005829 005830 005831 005832 005833 005834 005835 005836 005837 005838 005839 005840 005841 005842 005843 005844 005845 005846 005847 005848 005849 005850 005851 005852 005853 005854 005855 005856 005857 005858 005859 005860 005861 005862 005863 005864 005865 005866 005867 005868 005869 005870 005871 005872 005873 005874 005875 005876 005877 005878 005879 005880 005881 005882 005883 005884 005885 005886 005887 005888 005889 005890 005891 005892 005893 005894 005895 005896 005897 005898 005899 005900 005901 005902 005903 005904 005905 005906 005907 005908 005909 005910 005911 005912 005913 005914 005915 005916 005917 005918 005919 005920 005921 005922 005923 005924 005925 005926 005927 005928 005929 005930 005931 005932 005933 005934 005935 005936 005937 005938 005939 005940 005941 005942 005943 005944 005945 005946 005947 005948 005949 005950 005951 005952 005953 005954 005955 005956 005957 005958 005959 005960 005961 005962 005963 005964 005965 005966 005967 005968 005969 005970 005971 005972 005973 005974 005975 005976 005977 005978 005979 005980 005981 005982 005983 005984 005985 005986 005987 005988 005989 005990 005991 005992 005993 005994 005995 005996 005997 005998 005999 006000 006001 006002 006003 006004 006005 006006 006007 006008 006009 006010 006011 006012 006013 006014 006015 006016 006017 006018 006019 006020 006021 006022 006023 006024 006025 006026 006027 006028 006029 006030 006031 006032 006033 006034 006035 006036 006037 006038 006039 006040 006041 006042 006043 006044 006045 006046 006047 006048 006049 006050 006051 006052 006053 006054 006055 006056 006057 006058 006059 006060 006061 006062 006063 006064 006065 006066 006067 006068 006069 006070 006071 006072 006073 006074 006075 006076 006077 006078 006079 006080 006081 006082 006083 006084 006085 006086 006087 006088 006089 006090 006091 006092 006093 006094 006095 006096 006097 006098 006099 006100 006101 006102 006103 006104 006105 006106 006107 006108 006109 006110 006111 006112 006113 006114 006115 006116 006117 006118 006119 006120 006121 006122 006123 006124 006125 006126 006127 006128 006129 006130 006131 006132 006133 006134 006135 006136 006137 006138 006139 006140 006141 006142 006143 006144 006145 006146 006147 006148 006149 006150 006151 006152 006153 006154 006155 006156 006157 006158 006159 006160 006161 006162 006163 006164 006165 006166 006167 006168 006169 006170 006171 006172 006173 006174 006175 006176 006177 006178 006179 006180 006181 006182 006183 006184 006185 006186 006187 006188 006189 006190 006191 006192 006193 006194 006195 006196 006197 006198 006199 006200 006201 006202 006203 006204 006205 006206 006207 006208 006209 006210 006211 006212 006213 006214 006215 006216 006217 006218 006219 006220 006221 006222 006223 006224 006225 006226 006227 006228 006229 006230 006231 006232 006233 006234 006235 006236 006237 006238 006239 006240 006241 006242 006243 006244 006245 006246 006247 006248 006249 006250 006251 006252 006253 006254 006255 006256 006257 006258 006259 006260 006261 006262 006263 006264 006265 006266 006267 006268 006269 006270 006271 006272 006273 006274 006275 006276 006277 006278 006279 006280 006281 006282 006283 006284 006285 006286 006287 006288 006289 006290 006291 006292 006293 006294 006295 006296 006297 006298 006299 006300 006301 006302 006303 006304 006305 006306 006307 006308 006309 006310 006311 006312 006313 006314 006315 006316 006317 006318 006319 006320 006321 006322 006323 006324 006325 006326 006327 006328 006329 006330 006331 006332 006333 006334 006335 006336 006337 006338 006339 006340 006341 006342 006343 006344 006345 006346 006347 006348 006349 006350 006351 006352 006353 006354 006355 006356 006357 006358 006359 006360 006361 006362 006363 006364 006365 006366 006367 006368 006369 006370 006371 006372 006373 006374 006375 006376 006377 006378 006379 006380 006381 006382 006383 006384 006385 006386 006387 006388 006389 006390 006391 006392 006393 006394 006395 006396 006397 006398 006399 006400 006401 006402 006403 006404 006405 006406 006407 006408 006409 006410 006411 006412 006413 006414 006415 006416 006417 006418 006419 006420 006421 006422 006423 006424 006425 006426 006427 006428 006429 006430 006431 006432 006433 006434 006435 006436 006437 006438 006439 006440 006441 006442 006443 006444 006445 006446 006447 006448 006449 006450 006451 006452 006453 006454 006455 006456 006457 006458 006459 006460 006461 006462 006463 006464 006465 006466 006467 006468 006469 006470 006471 006472 006473 006474 006475 006476 006477 006478 006479 006480 006481 006482 006483 006484 006485 006486 006487 006488 006489 006490 006491 006492 006493 006494 006495 006496 006497 006498 006499 006500 006501 006502 006503 006504 006505 006506 006507 006508 006509 006510 006511 006512 006513 006514 006515 006516 006517 006518 006519 006520 006521 006522 006523 006524 006525 006526 006527 006528 006529 006530 006531 006532 006533 006534 006535 006536 006537 006538 006539 006540 006541 006542 006543 006544 006545 006546 006547 006548 006549 006550 006551 006552 006553 006554 006555 006556 006557 006558 006559 006560 006561 006562 006563 006564 006565 006566 006567 006568 006569 006570 006571 006572 006573 006574 006575 006576 006577 006578 006579 006580 006581 006582 006583 006584 006585 006586 006587 006588 006589 006590 006591 006592 006593 006594 006595 006596 006597 006598 006599 006600 006601 006602 006603 006604 006605 006606 006607 006608 006609 006610 006611 006612 006613 006614 006615 006616 006617 006618 006619 006620 006621 006622 006623 006624 006625 006626 006627 006628 006629 006630 006631 006632 006633 006634 006635 006636 006637 006638 006639 006640 006641 006642 006643 006644 006645 006646 006647 006648 006649 006650 006651 006652 006653 006654 006655 006656 006657 006658 006659 006660 006661 006662 006663 006664 006665 006666 006667 006668 006669 006670 006671 006672 006673 006674 006675 006676 006677 006678 006679 006680 006681 006682 006683 006684 006685 006686 006687 006688 006689 006690 006691 006692 006693 006694 006695 006696 006697 006698 006699 006700 006701 006702 006703 006704 006705 006706 006707 006708 006709 006710 006711 006712 006713 006714 006715 006716 006717 006718 006719 006720 006721 006722 006723 006724 006725 006726 006727 006728 006729 006730 006731 006732 006733 006734 006735 006736 006737 006738 006739 006740 006741 006742 006743 006744 006745 006746 006747 006748 006749 006750 006751 006752 006753 006754 006755 006756 006757 006758 006759 006760 006761 006762 006763 006764 006765 006766 006767 006768 006769 006770 006771 006772 006773 006774 006775 006776 006777 006778 006779 006780 006781 006782 006783 006784 006785 006786 006787 006788 006789 006790 006791 006792 006793 006794 006795 006796 006797 006798 006799 006800 006801 006802 006803 006804 006805 006806 006807 006808 006809 006810 006811 006812 006813 006814 006815 006816 006817 006818 006819 006820 006821 006822 006823 006824 006825 006826 006827 006828 006829 006830 006831 006832 006833 006834 006835 006836 006837 006838 006839 006840 006841 006842 006843 006844 006845 006846 006847 006848 006849 006850 006851 006852 006853 006854 006855 006856 006857 006858 006859 006860 006861 006862 006863 006864 006865 006866 006867 006868 006869 006870 006871 006872 006873 006874 006875 006876 006877 006878 006879 006880 006881 006882 006883 006884 006885 006886 006887 006888 006889 006890 006891 006892 006893 006894 006895 006896 006897 006898 006899 006900 006901 006902 006903 006904 006905 006906 006907 006908 006909 006910 006911 006912 006913 006914 006915 006916 006917 006918 006919 006920 006921 006922 006923 006924 006925 006926 006927 006928 006929 006930 006931 006932 006933 006934 006935 006936 006937 006938 006939 006940 006941 006942 006943 006944 006945 006946 006947 006948 006949 006950 006951 006952 006953 006954 006955 006956 006957 006958 006959 006960 006961 006962 006963 006964 006965 006966 006967 006968 006969 006970 006971 006972 006973 006974 006975 006976 006977 006978 006979 006980 006981 006982 006983 006984 006985 006986 006987 006988 006989 006990 006991 006992 006993 006994 006995 006996 006997 006998 006999 007000 007001 007002 007003 007004 007005 007006 007007 007008 007009 007010 007011 007012 007013 007014 007015 007016 007017 007018 007019 007020 007021 007022 007023 007024 007025 007026 007027 007028 007029 007030 007031 007032 007033 007034 007035 007036 007037 007038 007039 007040 007041 007042 007043 007044 007045 007046 007047 007048 007049 007050 007051 007052 007053 007054 007055 007056 007057 007058 007059 007060 007061 007062 007063 007064 007065 007066 007067 007068 007069 007070 007071 007072 007073 007074 007075 007076 007077 007078 007079 007080 007081 007082 007083 007084 007085 007086 007087 007088 007089 007090 007091 007092 007093 007094 007095 007096 007097 007098 007099 007100 007101 007102 007103 007104 007105 007106 007107 007108 007109 007110 007111 007112 007113 007114 007115 007116 007117 007118 007119 007120 007121 007122 007123 007124 007125 007126 007127 007128 007129 007130 007131 007132 007133 007134 007135 007136 007137 007138 007139 007140 007141 007142 007143 007144 007145 007146 007147 007148 007149 007150 007151 007152 007153 007154 007155 007156 007157 007158 007159 007160 007161 007162 007163 007164 007165 007166 007167 007168 007169 007170 007171 007172 007173 007174 007175 007176 007177 007178 007179 007180 007181 007182 007183 007184 007185 007186 007187 007188 007189 007190 007191 007192 007193 007194 007195 007196 007197 007198 007199 007200 007201 007202 007203 007204 007205 007206 007207 007208 007209 007210 007211 007212 007213 007214 007215 007216 007217 007218 007219 007220 007221 007222 007223 007224 007225 007226 007227 007228 007229 007230 007231 007232 007233 007234 007235 007236 007237 007238 007239 007240 007241 007242 007243 007244 007245 007246 007247 007248 007249 007250 007251 007252 007253 007254 007255 007256 007257 007258 007259 007260 007261 007262 007263 007264 007265 007266 007267 007268 007269 007270 007271 007272 007273 007274 007275 007276 007277 007278 007279 007280 007281 007282 007283 007284 007285 007286 007287 007288 007289 007290 007291 007292 007293 007294 007295 007296 007297 007298 007299 007300 007301 007302 007303 007304 007305 007306 007307 007308 007309 007310 007311 007312 007313 007314 007315 007316 007317 007318 007319 007320 007321 007322 007323 007324 007325 007326 007327 007328 007329 007330 007331 007332 007333 007334 007335 007336 007337 007338 007339 007340 007341 007342 007343 007344 007345 007346 007347 007348 007349 007350 007351 007352 007353 007354 007355 007356 007357 007358 007359 007360 007361 007362 007363 007364 007365 007366 007367 007368 007369 007370 007371 007372 007373 007374 007375 007376 007377 007378 007379 007380 007381 007382 007383 007384 007385 007386 007387 007388 007389 007390 007391 007392 007393 007394 007395 007396 007397 007398 007399 007400 007401 007402 007403 007404 007405 007406 007407 007408 007409 007410 007411 007412 007413 007414 007415 007416 007417 007418 007419 007420 007421 007422 007423 007424 007425 007426 007427 007428 007429 007430 007431 007432 007433 007434 007435 007436 007437 007438 007439 007440 007441 007442 007443 007444 007445 007446 007447 007448 007449 007450 007451 007452 007453 007454 007455 007456 007457 007458 007459 007460 007461 007462 007463 007464 007465 007466 007467 007468 007469 007470 007471 007472 007473 007474 007475 007476 007477 007478 007479 007480 ================================================ FILE: data/kitti_split1/val.txt ================================================ 000001 000002 000004 000005 000006 000008 000015 000019 000020 000021 000023 000024 000025 000027 000028 000031 000033 000035 000037 000039 000040 000042 000047 000048 000050 000052 000053 000058 000059 000061 000062 000063 000065 000066 000076 000077 000078 000081 000089 000090 000093 000094 000098 000102 000104 000106 000107 000108 000116 000117 000118 000122 000124 000126 000128 000132 000134 000135 000137 000139 000140 000143 000147 000151 000152 000153 000156 000159 000161 000167 000168 000169 000170 000173 000174 000175 000181 000182 000183 000186 000187 000188 000190 000191 000192 000194 000195 000196 000197 000199 000201 000203 000204 000207 000211 000212 000213 000216 000218 000223 000224 000226 000229 000230 000231 000234 000235 000236 000237 000239 000242 000246 000247 000248 000249 000250 000251 000252 000260 000262 000263 000265 000266 000268 000269 000270 000272 000273 000278 000279 000281 000283 000284 000289 000290 000291 000293 000297 000301 000302 000305 000307 000308 000309 000311 000312 000314 000315 000319 000320 000321 000323 000324 000327 000328 000329 000332 000333 000335 000336 000340 000341 000343 000345 000346 000347 000350 000351 000352 000354 000355 000356 000357 000359 000360 000361 000362 000365 000366 000369 000370 000372 000373 000376 000377 000378 000379 000381 000382 000383 000385 000386 000388 000391 000392 000393 000394 000395 000396 000397 000398 000399 000401 000402 000403 000404 000407 000408 000409 000413 000414 000415 000419 000420 000422 000427 000428 000429 000430 000436 000437 000440 000443 000446 000448 000450 000451 000452 000453 000454 000455 000457 000459 000463 000468 000469 000472 000473 000475 000476 000477 000478 000479 000480 000481 000485 000486 000489 000491 000492 000493 000494 000495 000496 000498 000499 000503 000504 000506 000508 000509 000510 000512 000515 000517 000519 000521 000524 000527 000528 000530 000533 000536 000541 000542 000543 000545 000546 000548 000551 000554 000555 000558 000559 000560 000561 000564 000566 000567 000568 000569 000571 000572 000581 000583 000588 000589 000590 000591 000595 000600 000601 000604 000610 000611 000612 000613 000614 000615 000618 000619 000620 000624 000625 000626 000628 000630 000634 000635 000636 000639 000642 000644 000645 000647 000648 000650 000655 000657 000658 000659 000660 000667 000669 000670 000674 000677 000679 000682 000683 000684 000691 000692 000694 000696 000698 000699 000700 000702 000704 000706 000708 000716 000717 000718 000721 000722 000725 000727 000728 000729 000731 000734 000736 000737 000740 000741 000745 000746 000748 000750 000751 000752 000754 000756 000761 000765 000766 000767 000768 000769 000771 000772 000773 000774 000778 000779 000782 000790 000792 000795 000798 000800 000801 000802 000803 000804 000805 000806 000807 000809 000810 000811 000812 000816 000819 000823 000826 000831 000837 000838 000840 000841 000843 000844 000847 000848 000849 000850 000852 000854 000859 000862 000863 000869 000873 000874 000875 000876 000877 000878 000879 000881 000884 000885 000889 000893 000894 000897 000899 000904 000907 000909 000911 000912 000915 000916 000917 000920 000922 000923 000926 000928 000930 000931 000932 000938 000939 000940 000942 000943 000944 000948 000949 000952 000953 000956 000958 000961 000963 000964 000966 000967 000969 000970 000971 000973 000974 000976 000979 000981 000983 000984 000985 000986 000988 000991 000999 001002 001006 001007 001008 001010 001011 001012 001013 001014 001015 001018 001019 001021 001022 001025 001026 001027 001035 001037 001039 001042 001043 001046 001050 001051 001053 001054 001055 001058 001063 001065 001066 001067 001068 001069 001070 001071 001075 001076 001077 001078 001083 001084 001086 001088 001089 001094 001095 001096 001097 001099 001101 001102 001104 001106 001107 001108 001111 001113 001114 001115 001116 001118 001120 001123 001125 001127 001129 001131 001132 001133 001134 001135 001136 001138 001139 001140 001141 001143 001144 001145 001147 001148 001149 001150 001152 001153 001154 001155 001158 001162 001163 001167 001172 001173 001176 001177 001178 001179 001180 001182 001183 001187 001188 001189 001191 001192 001193 001194 001195 001198 001199 001203 001206 001207 001213 001214 001216 001217 001218 001221 001222 001224 001225 001226 001228 001230 001232 001234 001235 001236 001237 001239 001241 001242 001243 001244 001245 001246 001249 001251 001252 001253 001254 001255 001257 001259 001260 001261 001263 001265 001266 001267 001268 001269 001270 001271 001272 001273 001274 001275 001281 001284 001286 001287 001289 001291 001292 001294 001295 001296 001303 001304 001305 001306 001307 001308 001314 001317 001318 001329 001330 001331 001332 001333 001334 001336 001337 001339 001342 001344 001345 001346 001347 001350 001352 001353 001355 001356 001359 001363 001365 001372 001374 001375 001376 001377 001380 001381 001382 001384 001386 001387 001388 001389 001391 001395 001397 001398 001407 001410 001411 001412 001415 001416 001419 001421 001424 001427 001431 001432 001435 001437 001438 001439 001441 001442 001443 001445 001446 001448 001450 001451 001458 001461 001463 001466 001469 001471 001477 001478 001480 001481 001485 001487 001488 001489 001495 001497 001501 001502 001507 001508 001511 001513 001514 001516 001517 001521 001522 001524 001525 001526 001527 001528 001533 001535 001536 001537 001538 001542 001545 001546 001547 001549 001552 001555 001557 001560 001562 001564 001565 001567 001569 001573 001574 001576 001577 001579 001582 001583 001585 001586 001587 001588 001589 001590 001591 001592 001594 001596 001597 001600 001602 001603 001605 001606 001610 001613 001615 001616 001617 001619 001621 001625 001627 001629 001631 001633 001634 001635 001640 001643 001645 001647 001650 001654 001656 001658 001660 001662 001664 001665 001666 001667 001670 001675 001680 001682 001683 001684 001689 001693 001694 001697 001699 001701 001702 001704 001705 001706 001707 001709 001710 001711 001712 001713 001714 001717 001718 001719 001721 001722 001726 001727 001729 001732 001733 001740 001741 001742 001745 001746 001749 001750 001751 001752 001755 001758 001762 001764 001765 001768 001771 001772 001774 001776 001778 001780 001781 001782 001783 001786 001787 001794 001795 001797 001800 001801 001802 001804 001807 001808 001813 001814 001817 001818 001820 001822 001823 001824 001825 001828 001831 001835 001840 001844 001846 001848 001851 001852 001853 001854 001855 001856 001858 001859 001861 001862 001863 001867 001868 001869 001872 001875 001877 001878 001880 001881 001884 001885 001886 001887 001888 001890 001892 001893 001897 001898 001900 001904 001905 001909 001919 001920 001923 001924 001925 001926 001927 001928 001929 001931 001932 001933 001934 001936 001937 001940 001941 001942 001943 001945 001946 001952 001954 001959 001960 001966 001967 001969 001972 001977 001978 001979 001980 001982 001983 001984 001985 001986 001989 001991 001995 001996 001997 001999 002000 002001 002002 002004 002008 002010 002011 002012 002013 002014 002017 002019 002021 002022 002025 002027 002028 002029 002034 002035 002036 002037 002038 002042 002043 002044 002045 002046 002048 002049 002050 002052 002054 002056 002057 002058 002062 002068 002071 002073 002074 002075 002076 002078 002079 002081 002082 002085 002086 002087 002089 002091 002093 002094 002100 002101 002102 002103 002107 002108 002111 002112 002113 002115 002118 002120 002121 002123 002124 002127 002128 002130 002131 002135 002136 002137 002138 002139 002140 002142 002151 002152 002153 002158 002159 002160 002161 002163 002165 002166 002168 002169 002170 002173 002177 002179 002182 002183 002185 002187 002188 002193 002196 002200 002201 002202 002206 002207 002209 002215 002216 002218 002219 002220 002224 002225 002228 002229 002232 002233 002234 002239 002243 002245 002246 002248 002250 002251 002254 002255 002257 002258 002260 002262 002266 002272 002276 002277 002279 002280 002282 002283 002284 002286 002287 002290 002291 002292 002293 002294 002295 002298 002299 002300 002303 002304 002306 002307 002308 002310 002314 002315 002319 002320 002325 002327 002329 002330 002332 002334 002336 002337 002338 002340 002341 002344 002345 002346 002347 002348 002353 002356 002357 002359 002362 002365 002366 002367 002369 002370 002372 002376 002378 002380 002382 002383 002384 002385 002386 002387 002391 002392 002393 002397 002398 002399 002404 002405 002411 002414 002415 002418 002419 002420 002422 002423 002424 002425 002428 002429 002432 002433 002434 002439 002440 002442 002446 002450 002454 002455 002457 002458 002460 002461 002462 002463 002473 002474 002476 002477 002478 002479 002483 002486 002488 002490 002492 002495 002497 002499 002500 002502 002503 002504 002505 002506 002509 002511 002516 002519 002520 002521 002525 002526 002528 002529 002530 002531 002532 002534 002538 002539 002540 002541 002543 002546 002548 002552 002556 002557 002558 002562 002563 002564 002565 002568 002569 002570 002572 002574 002575 002577 002580 002581 002583 002584 002585 002586 002590 002594 002598 002599 002600 002601 002602 002603 002604 002606 002612 002613 002615 002619 002621 002625 002626 002628 002630 002631 002633 002635 002636 002638 002640 002641 002644 002645 002646 002651 002653 002656 002657 002661 002663 002666 002669 002673 002674 002675 002677 002680 002681 002685 002686 002690 002692 002693 002694 002695 002696 002699 002702 002706 002707 002709 002710 002711 002712 002713 002715 002717 002720 002721 002722 002724 002725 002726 002727 002728 002729 002730 002735 002737 002740 002742 002744 002745 002746 002747 002748 002749 002752 002753 002755 002757 002758 002760 002761 002763 002764 002765 002767 002772 002773 002775 002783 002786 002787 002789 002793 002794 002796 002797 002800 002801 002804 002805 002806 002809 002810 002811 002812 002814 002815 002818 002820 002826 002827 002828 002830 002831 002833 002836 002839 002840 002841 002844 002845 002846 002847 002848 002853 002856 002858 002861 002863 002866 002867 002875 002876 002877 002878 002879 002880 002881 002883 002885 002889 002890 002891 002892 002893 002894 002895 002896 002900 002901 002902 002903 002905 002908 002911 002914 002916 002917 002919 002924 002925 002928 002930 002934 002935 002937 002942 002944 002945 002947 002948 002951 002953 002955 002957 002958 002959 002960 002961 002962 002963 002964 002966 002971 002974 002976 002977 002978 002979 002982 002984 002985 002988 002991 002993 002994 002995 002997 002999 003000 003001 003003 003004 003005 003006 003007 003010 003011 003019 003022 003024 003025 003027 003029 003030 003031 003032 003033 003034 003035 003038 003042 003043 003046 003047 003048 003050 003052 003053 003054 003055 003056 003058 003061 003062 003065 003066 003067 003071 003073 003074 003076 003080 003082 003087 003088 003090 003094 003096 003099 003101 003102 003103 003106 003107 003109 003110 003112 003114 003116 003118 003124 003126 003127 003129 003131 003133 003134 003135 003136 003137 003141 003142 003144 003145 003146 003148 003150 003153 003156 003159 003161 003162 003165 003167 003170 003172 003174 003175 003177 003179 003180 003181 003182 003183 003187 003190 003192 003194 003197 003199 003202 003203 003204 003207 003210 003211 003214 003216 003217 003219 003221 003222 003224 003225 003226 003228 003229 003231 003232 003233 003236 003239 003240 003242 003247 003250 003251 003252 003254 003255 003257 003259 003265 003266 003269 003272 003275 003276 003280 003281 003283 003288 003292 003295 003296 003298 003300 003301 003302 003304 003305 003306 003308 003310 003312 003313 003315 003316 003318 003319 003322 003323 003324 003325 003330 003331 003337 003338 003341 003343 003346 003347 003350 003351 003352 003353 003355 003357 003358 003364 003365 003366 003367 003368 003370 003373 003375 003379 003385 003386 003393 003394 003395 003396 003397 003399 003401 003402 003403 003404 003405 003406 003407 003408 003409 003410 003411 003412 003417 003419 003421 003422 003425 003426 003428 003429 003430 003432 003434 003435 003443 003447 003448 003449 003450 003453 003456 003461 003464 003465 003466 003467 003469 003470 003471 003474 003478 003480 003481 003482 003483 003484 003487 003488 003489 003490 003491 003492 003495 003496 003497 003502 003503 003504 003506 003511 003515 003517 003519 003520 003521 003524 003527 003528 003529 003530 003531 003535 003539 003543 003544 003547 003550 003552 003553 003554 003557 003558 003559 003562 003563 003568 003571 003573 003574 003580 003582 003583 003584 003588 003600 003601 003604 003605 003607 003608 003609 003611 003614 003616 003618 003620 003621 003622 003623 003624 003627 003629 003630 003631 003632 003633 003634 003635 003643 003645 003647 003649 003652 003653 003655 003658 003659 003661 003662 003667 003668 003669 003671 003676 003677 003678 003679 003682 003683 003684 003688 003689 003690 003691 003692 003702 003703 003705 003707 003708 003711 003712 003715 003716 003718 003719 003723 003726 003728 003735 003736 003737 003738 003739 003746 003747 003748 003750 003751 003753 003755 003756 003762 003763 003764 003769 003771 003775 003777 003778 003779 003781 003782 003787 003788 003793 003794 003798 003800 003802 003804 003805 003807 003808 003809 003811 003812 003814 003820 003822 003826 003827 003828 003830 003834 003835 003837 003841 003847 003852 003854 003856 003859 003860 003864 003866 003869 003870 003872 003873 003874 003878 003879 003880 003881 003883 003885 003886 003890 003891 003892 003894 003897 003898 003899 003901 003902 003905 003907 003909 003914 003915 003916 003920 003923 003924 003926 003931 003932 003934 003937 003938 003943 003945 003946 003948 003950 003956 003958 003961 003962 003964 003965 003969 003970 003972 003975 003977 003980 003981 003982 003984 003986 003992 003996 003998 004000 004001 004002 004003 004004 004007 004008 004009 004010 004011 004016 004021 004026 004027 004028 004032 004033 004034 004036 004038 004040 004041 004042 004045 004048 004049 004051 004055 004059 004061 004063 004064 004065 004068 004072 004074 004077 004079 004081 004082 004083 004085 004087 004089 004091 004092 004095 004096 004098 004100 004101 004104 004105 004107 004108 004109 004110 004111 004113 004116 004117 004118 004119 004120 004121 004122 004124 004125 004126 004128 004129 004130 004131 004132 004136 004137 004138 004140 004142 004143 004148 004149 004150 004152 004153 004154 004155 004156 004157 004158 004160 004161 004162 004163 004164 004168 004171 004172 004173 004174 004175 004185 004187 004188 004189 004190 004191 004195 004196 004202 004205 004206 004207 004209 004210 004213 004214 004215 004220 004221 004222 004223 004224 004226 004228 004232 004237 004239 004241 004242 004243 004246 004248 004249 004250 004251 004254 004255 004256 004259 004260 004263 004270 004271 004275 004277 004278 004280 004281 004282 004284 004285 004288 004289 004290 004291 004293 004294 004295 004298 004299 004300 004301 004303 004305 004306 004307 004309 004311 004312 004314 004318 004319 004321 004323 004324 004326 004327 004329 004330 004335 004336 004337 004338 004340 004342 004343 004345 004348 004349 004350 004352 004353 004360 004362 004363 004364 004367 004368 004369 004370 004373 004374 004377 004383 004384 004385 004388 004391 004392 004393 004396 004397 004398 004401 004402 004403 004404 004406 004407 004414 004415 004418 004419 004420 004421 004422 004423 004424 004425 004426 004429 004430 004433 004434 004435 004437 004438 004439 004440 004443 004444 004447 004450 004452 004454 004456 004458 004460 004462 004465 004469 004470 004472 004474 004475 004480 004481 004482 004483 004485 004486 004487 004489 004490 004491 004493 004494 004496 004501 004502 004508 004511 004513 004516 004517 004519 004520 004521 004526 004527 004528 004529 004530 004531 004532 004534 004540 004541 004542 004547 004548 004549 004551 004553 004556 004557 004562 004566 004567 004568 004569 004570 004573 004574 004576 004578 004581 004582 004585 004587 004588 004589 004591 004596 004598 004599 004603 004608 004609 004610 004611 004612 004615 004618 004620 004622 004624 004626 004629 004630 004632 004633 004634 004636 004638 004640 004644 004647 004648 004649 004650 004651 004652 004655 004657 004658 004660 004665 004666 004667 004668 004669 004672 004673 004679 004680 004682 004683 004685 004686 004687 004688 004689 004691 004692 004693 004694 004695 004697 004698 004699 004700 004705 004706 004708 004709 004710 004711 004713 004714 004715 004716 004717 004718 004720 004721 004722 004724 004725 004726 004730 004732 004734 004735 004737 004738 004739 004740 004742 004743 004744 004745 004746 004748 004752 004753 004756 004759 004762 004763 004764 004766 004768 004769 004770 004773 004776 004777 004782 004783 004787 004788 004790 004791 004792 004797 004799 004800 004804 004806 004807 004810 004811 004813 004814 004815 004816 004817 004821 004822 004825 004829 004830 004831 004832 004835 004839 004843 004846 004848 004849 004850 004851 004852 004858 004859 004860 004861 004862 004863 004864 004867 004868 004871 004873 004874 004875 004881 004885 004887 004888 004891 004892 004893 004895 004896 004898 004902 004903 004904 004905 004907 004909 004914 004917 004918 004920 004921 004924 004926 004927 004928 004929 004931 004932 004934 004935 004938 004941 004942 004943 004944 004946 004947 004948 004949 004953 004954 004956 004958 004959 004960 004962 004963 004966 004974 004976 004979 004981 004983 004985 004986 004988 004989 004990 004993 004994 004995 004996 004998 004999 005001 005002 005004 005008 005010 005013 005014 005015 005017 005019 005021 005024 005026 005028 005032 005034 005036 005037 005038 005040 005041 005045 005049 005050 005052 005053 005054 005055 005056 005057 005058 005062 005063 005064 005065 005067 005068 005070 005072 005073 005074 005075 005077 005078 005079 005080 005081 005082 005086 005090 005093 005094 005095 005101 005103 005105 005108 005109 005110 005112 005113 005120 005121 005122 005124 005125 005127 005128 005133 005135 005136 005138 005139 005140 005141 005143 005144 005145 005147 005149 005153 005155 005156 005157 005158 005161 005162 005163 005164 005166 005167 005168 005170 005172 005174 005175 005176 005179 005180 005181 005182 005184 005185 005188 005189 005190 005191 005194 005197 005198 005199 005201 005206 005213 005214 005217 005218 005219 005221 005222 005226 005227 005229 005230 005233 005234 005236 005237 005240 005241 005242 005244 005246 005249 005251 005255 005256 005260 005262 005267 005268 005271 005273 005274 005275 005276 005279 005280 005282 005284 005287 005289 005292 005296 005297 005298 005299 005304 005307 005308 005309 005311 005312 005313 005315 005316 005318 005319 005321 005322 005323 005325 005328 005329 005330 005333 005334 005335 005336 005337 005338 005341 005342 005343 005345 005347 005349 005350 005359 005360 005363 005365 005366 005368 005369 005371 005372 005375 005377 005378 005379 005381 005385 005386 005389 005390 005391 005404 005405 005413 005415 005422 005423 005426 005427 005429 005430 005431 005434 005437 005441 005443 005444 005445 005447 005448 005449 005450 005452 005453 005458 005459 005460 005461 005465 005466 005467 005471 005472 005473 005474 005476 005477 005479 005481 005482 005484 005486 005487 005489 005494 005495 005498 005505 005510 005511 005514 005515 005523 005525 005528 005531 005532 005534 005536 005538 005540 005542 005544 005545 005546 005551 005552 005555 005556 005557 005558 005559 005560 005565 005566 005570 005571 005572 005573 005576 005577 005580 005581 005582 005584 005586 005587 005588 005589 005590 005595 005596 005600 005601 005602 005603 005610 005613 005616 005617 005618 005619 005623 005625 005630 005631 005633 005634 005635 005638 005639 005640 005642 005643 005649 005650 005652 005653 005656 005658 005659 005660 005662 005664 005668 005669 005672 005673 005676 005677 005680 005683 005685 005687 005689 005695 005698 005699 005700 005703 005704 005706 005707 005708 005709 005712 005713 005714 005717 005724 005725 005727 005728 005729 005731 005735 005736 005739 005740 005741 005743 005744 005745 005746 005747 005751 005754 005757 005760 005762 005763 005765 005777 005782 005783 005784 005785 005786 005787 005790 005793 005794 005796 005800 005801 005803 005805 005806 005807 005811 005812 005818 005819 005820 005821 005822 005826 005827 005829 005834 005839 005840 005841 005843 005852 005854 005855 005856 005857 005859 005864 005869 005873 005876 005878 005879 005881 005882 005883 005885 005887 005889 005892 005893 005894 005899 005900 005901 005903 005905 005906 005907 005909 005910 005911 005912 005913 005914 005916 005917 005918 005919 005921 005922 005923 005925 005926 005927 005931 005933 005935 005938 005939 005944 005947 005948 005949 005952 005955 005958 005961 005962 005963 005965 005969 005970 005972 005975 005978 005981 005982 005984 005985 005986 005988 005994 005996 005997 005999 006001 006002 006003 006005 006008 006009 006010 006012 006013 006014 006016 006023 006024 006026 006027 006028 006029 006030 006031 006033 006034 006036 006038 006039 006041 006042 006043 006044 006045 006046 006047 006048 006050 006052 006054 006057 006058 006060 006061 006062 006063 006066 006067 006068 006070 006071 006074 006075 006077 006078 006083 006085 006086 006087 006088 006093 006095 006096 006097 006098 006100 006102 006103 006106 006107 006110 006114 006115 006116 006117 006118 006121 006122 006123 006125 006126 006127 006130 006133 006136 006139 006144 006146 006148 006151 006152 006154 006156 006161 006163 006165 006167 006168 006169 006173 006176 006177 006182 006185 006186 006187 006190 006194 006195 006196 006198 006202 006204 006208 006210 006213 006215 006219 006222 006227 006228 006229 006232 006233 006238 006240 006244 006246 006247 006249 006250 006258 006263 006265 006266 006267 006269 006270 006272 006273 006274 006275 006276 006278 006280 006282 006286 006287 006288 006297 006300 006301 006302 006305 006306 006312 006314 006315 006316 006317 006321 006322 006324 006331 006332 006333 006334 006338 006339 006340 006342 006343 006344 006345 006348 006349 006351 006353 006354 006355 006356 006357 006360 006364 006366 006368 006369 006370 006371 006372 006377 006379 006380 006381 006385 006386 006388 006391 006393 006394 006395 006396 006403 006405 006406 006407 006409 006410 006411 006415 006416 006417 006420 006423 006424 006425 006426 006427 006433 006434 006435 006436 006437 006439 006440 006441 006442 006444 006445 006446 006451 006452 006453 006454 006462 006464 006465 006468 006469 006470 006472 006473 006474 006475 006477 006478 006481 006482 006483 006484 006486 006488 006491 006493 006496 006497 006498 006503 006505 006506 006507 006508 006512 006514 006515 006516 006517 006519 006520 006521 006524 006525 006529 006530 006531 006532 006533 006534 006535 006537 006540 006542 006548 006549 006551 006553 006555 006556 006558 006560 006561 006563 006565 006568 006569 006570 006574 006576 006577 006578 006581 006582 006583 006586 006588 006590 006592 006593 006595 006596 006597 006602 006603 006604 006611 006612 006613 006614 006618 006623 006624 006625 006626 006628 006629 006632 006633 006634 006636 006637 006638 006641 006643 006647 006649 006650 006651 006655 006656 006658 006659 006660 006664 006666 006667 006669 006670 006674 006676 006677 006678 006679 006682 006685 006686 006692 006693 006694 006695 006696 006698 006701 006703 006709 006710 006711 006712 006713 006714 006715 006719 006720 006723 006725 006726 006729 006731 006732 006733 006734 006737 006738 006741 006744 006745 006747 006751 006752 006753 006754 006755 006756 006758 006759 006760 006761 006762 006764 006765 006767 006768 006770 006771 006772 006773 006777 006778 006780 006781 006782 006783 006785 006786 006789 006791 006792 006794 006796 006797 006798 006800 006803 006804 006806 006807 006808 006811 006812 006813 006815 006816 006818 006819 006822 006828 006829 006832 006833 006836 006837 006841 006843 006844 006847 006849 006850 006852 006853 006854 006855 006856 006858 006860 006862 006863 006866 006868 006870 006872 006873 006874 006876 006879 006881 006882 006884 006885 006887 006889 006891 006895 006897 006898 006899 006900 006901 006903 006906 006907 006908 006910 006913 006914 006917 006922 006925 006928 006930 006936 006937 006938 006942 006943 006944 006945 006948 006950 006953 006954 006955 006956 006959 006960 006962 006964 006968 006971 006973 006977 006978 006980 006981 006982 006987 006989 006990 006992 006994 006997 006999 007000 007003 007005 007006 007008 007010 007011 007012 007014 007015 007016 007019 007022 007023 007026 007027 007028 007029 007030 007031 007032 007033 007034 007037 007038 007042 007043 007047 007048 007049 007052 007053 007055 007056 007059 007061 007063 007065 007067 007068 007069 007071 007072 007074 007076 007078 007079 007080 007081 007082 007083 007084 007085 007087 007088 007089 007091 007095 007098 007100 007103 007109 007110 007112 007115 007117 007119 007120 007122 007125 007130 007131 007132 007133 007135 007136 007138 007139 007144 007145 007146 007149 007154 007157 007158 007161 007162 007163 007164 007165 007166 007168 007169 007172 007174 007176 007177 007178 007180 007182 007183 007187 007194 007198 007199 007200 007201 007202 007204 007205 007207 007208 007210 007212 007214 007215 007217 007219 007221 007225 007227 007229 007230 007232 007233 007235 007238 007240 007242 007244 007246 007247 007252 007253 007255 007256 007258 007260 007261 007262 007265 007266 007267 007271 007272 007273 007274 007275 007277 007278 007279 007280 007283 007284 007287 007288 007289 007290 007291 007292 007294 007299 007300 007302 007303 007304 007309 007310 007311 007315 007318 007319 007322 007323 007325 007326 007327 007329 007330 007331 007336 007337 007339 007342 007343 007344 007345 007347 007349 007350 007351 007352 007353 007359 007360 007364 007369 007371 007374 007375 007376 007377 007380 007381 007382 007383 007384 007385 007389 007391 007395 007396 007397 007398 007401 007402 007403 007405 007407 007409 007410 007411 007412 007413 007415 007416 007419 007420 007421 007422 007423 007424 007426 007430 007433 007434 007435 007436 007437 007439 007440 007442 007445 007447 007448 007449 007450 007453 007456 007458 007462 007463 007464 007466 007467 007468 007469 007470 007473 007475 007477 007478 007480 ================================================ FILE: data/kitti_split2/devkit/cpp/CMakeLists.txt ================================================ cmake_minimum_required (VERSION 2.6) project(devkit_object) add_executable(evaluate_object evaluate_object.cpp) ================================================ FILE: data/kitti_split2/devkit/cpp/build.sh ================================================ cd data/kitti_split2/devkit/cpp/ g++ -O3 -DNDEBUG -o evaluate_object evaluate_object.cpp cd ../../../../ ================================================ FILE: data/kitti_split2/devkit/cpp/evaluate_object.cpp ================================================ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "mail.h" BOOST_GEOMETRY_REGISTER_C_ARRAY_CS(cs::cartesian) typedef boost::geometry::model::polygon > Polygon; using namespace std; /*======================================================================= STATIC EVALUATION PARAMETERS =======================================================================*/ // holds the number of test images on the server //const int32_t N_TESTIMAGES = 7518; //const int32_t N_TESTIMAGES = 7480; const int32_t N_TESTIMAGES = 3799; //const int32_t N_TESTIMAGES = 3712; // easy, moderate and hard evaluation level enum DIFFICULTY{EASY=0, MODERATE=1, HARD=2}; // evaluation metrics: image, ground or 3D enum METRIC{IMAGE=0, GROUND=1, BOX3D=2}; // evaluation parameter const int32_t MIN_HEIGHT[3] = {40, 25, 25}; // minimum height for evaluated groundtruth/detections const int32_t MAX_OCCLUSION[3] = {0, 1, 2}; // maximum occlusion level of the groundtruth used for evaluation const double MAX_TRUNCATION[3] = {0.15, 0.3, 0.5}; // maximum truncation level of the groundtruth used for evaluation // evaluated object classes enum CLASSES{CAR=0, PEDESTRIAN=1, CYCLIST=2}; const int NUM_CLASS = 3; // parameters varying per class vector CLASS_NAMES; vector CLASS_NAMES_CAP; // the minimum overlap required for 2D evaluation on the image/ground plane and 3D evaluation const double MIN_OVERLAP[3][3] = {{0.7, 0.5, 0.5}, {0.7, 0.5, 0.5}, {0.7, 0.5, 0.5}}; // no. of recall steps that should be evaluated (discretized) const double N_SAMPLE_PTS = 41; // initialize class names void initGlobals () { CLASS_NAMES.push_back("car"); CLASS_NAMES.push_back("pedestrian"); CLASS_NAMES.push_back("cyclist"); CLASS_NAMES_CAP.push_back("Car"); CLASS_NAMES_CAP.push_back("Pedestrian"); CLASS_NAMES_CAP.push_back("Cyclist"); } /*======================================================================= DATA TYPES FOR EVALUATION =======================================================================*/ // holding data needed for precision-recall and precision-aos struct tPrData { vector v; // detection score for computing score thresholds double similarity; // orientation similarity int32_t tp; // true positives int32_t fp; // false positives int32_t fn; // false negatives tPrData () : similarity(0), tp(0), fp(0), fn(0) {} }; // holding bounding boxes for ground truth and detections struct tBox { string type; // object type as car, pedestrian or cyclist,... double x1; // left corner double y1; // top corner double x2; // right corner double y2; // bottom corner double alpha; // image orientation tBox (string type, double x1,double y1,double x2,double y2,double alpha) : type(type),x1(x1),y1(y1),x2(x2),y2(y2),alpha(alpha) {} }; // holding ground truth data struct tGroundtruth { tBox box; // object type, box, orientation double truncation; // truncation 0..1 int32_t occlusion; // occlusion 0,1,2 (non, partly, fully) double ry; double t1, t2, t3; double h, w, l; tGroundtruth () : box(tBox("invalild",-1,-1,-1,-1,-10)),truncation(-1),occlusion(-1) {} tGroundtruth (tBox box,double truncation,int32_t occlusion) : box(box),truncation(truncation),occlusion(occlusion) {} tGroundtruth (string type,double x1,double y1,double x2,double y2,double alpha,double truncation,int32_t occlusion) : box(tBox(type,x1,y1,x2,y2,alpha)),truncation(truncation),occlusion(occlusion) {} }; // holding detection data struct tDetection { tBox box; // object type, box, orientation double thresh; // detection score double ry; double t1, t2, t3; double h, w, l; tDetection (): box(tBox("invalid",-1,-1,-1,-1,-10)),thresh(-1000) {} tDetection (tBox box,double thresh) : box(box),thresh(thresh) {} tDetection (string type,double x1,double y1,double x2,double y2,double alpha,double thresh) : box(tBox(type,x1,y1,x2,y2,alpha)),thresh(thresh) {} }; /*======================================================================= FUNCTIONS TO LOAD DETECTION AND GROUND TRUTH DATA ONCE, SAVE RESULTS =======================================================================*/ vector loadDetections(string file_name, bool &compute_aos, vector &eval_image, vector &eval_ground, vector &eval_3d, bool &success) { // holds all detections (ignored detections are indicated by an index vector vector detections; FILE *fp = fopen(file_name.c_str(),"r"); if (!fp) { success = false; return detections; } while (!feof(fp)) { tDetection d; double trash; char str[255]; if (fscanf(fp, "%s %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf", str, &trash, &trash, &d.box.alpha, &d.box.x1, &d.box.y1, &d.box.x2, &d.box.y2, &d.h, &d.w, &d.l, &d.t1, &d.t2, &d.t3, &d.ry, &d.thresh)==16) { // d.thresh = 1; d.box.type = str; detections.push_back(d); // orientation=-10 is invalid, AOS is not evaluated if at least one orientation is invalid if(d.box.alpha == -10) compute_aos = false; // a class is only evaluated if it is detected at least once for (int c = 0; c < NUM_CLASS; c++) { if (!strcasecmp(d.box.type.c_str(), CLASS_NAMES[c].c_str()) || !strcasecmp(d.box.type.c_str(), CLASS_NAMES_CAP[c].c_str())) { if (!eval_image[c] && d.box.x1 >= 0) eval_image[c] = true; if (!eval_ground[c] && d.t1 != -1000 && d.t3 != -1000 && d.w > 0 && d.l > 0) eval_ground[c] = true; if (!eval_3d[c] && d.t1 != -1000 && d.t2 != -1000 && d.t3 != -1000 && d.h > 0 && d.w > 0 && d.l > 0) eval_3d[c] = true; break; } } } } fclose(fp); success = true; return detections; } vector loadGroundtruth(string file_name,bool &success) { // holds all ground truth (ignored ground truth is indicated by an index vector vector groundtruth; FILE *fp = fopen(file_name.c_str(),"r"); if (!fp) { success = false; return groundtruth; } while (!feof(fp)) { tGroundtruth g; char str[255]; if (fscanf(fp, "%s %lf %d %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf %lf", str, &g.truncation, &g.occlusion, &g.box.alpha, &g.box.x1, &g.box.y1, &g.box.x2, &g.box.y2, &g.h, &g.w, &g.l, &g.t1, &g.t2, &g.t3, &g.ry )==15) { g.box.type = str; groundtruth.push_back(g); } } fclose(fp); success = true; return groundtruth; } void saveStats (const vector &precision, const vector &aos, FILE *fp_det, FILE *fp_ori) { // save precision to file if(precision.empty()) return; for (int32_t i=0; i Polygon toPolygon(const T& g) { using namespace boost::numeric::ublas; using namespace boost::geometry; matrix mref(2, 2); mref(0, 0) = cos(g.ry); mref(0, 1) = sin(g.ry); mref(1, 0) = -sin(g.ry); mref(1, 1) = cos(g.ry); static int count = 0; matrix corners(2, 4); double data[] = {g.l / 2, g.l / 2, -g.l / 2, -g.l / 2, g.w / 2, -g.w / 2, -g.w / 2, g.w / 2}; std::copy(data, data + 8, corners.data().begin()); matrix gc = prod(mref, corners); for (int i = 0; i < 4; ++i) { gc(0, i) += g.t1; gc(1, i) += g.t3; } double points[][2] = {{gc(0, 0), gc(1, 0)},{gc(0, 1), gc(1, 1)},{gc(0, 2), gc(1, 2)},{gc(0, 3), gc(1, 3)},{gc(0, 0), gc(1, 0)}}; Polygon poly; append(poly, points); return poly; } // measure overlap between bird's eye view bounding boxes, parametrized by (ry, l, w, tx, tz) inline double groundBoxOverlap(tDetection d, tGroundtruth g, int32_t criterion = -1) { using namespace boost::geometry; Polygon gp = toPolygon(g); Polygon dp = toPolygon(d); std::vector in, un; intersection(gp, dp, in); union_(gp, dp, un); double inter_area = in.empty() ? 0 : area(in.front()); double union_area = area(un.front()); double o; if(criterion==-1) // union o = inter_area / union_area; else if(criterion==0) // bbox_a o = inter_area / area(dp); else if(criterion==1) // bbox_b o = inter_area / area(gp); return o; } // measure overlap between 3D bounding boxes, parametrized by (ry, h, w, l, tx, ty, tz) inline double box3DOverlap(tDetection d, tGroundtruth g, int32_t criterion = -1) { using namespace boost::geometry; Polygon gp = toPolygon(g); Polygon dp = toPolygon(d); std::vector in, un; intersection(gp, dp, in); union_(gp, dp, un); double ymax = min(d.t2, g.t2); double ymin = max(d.t2 - d.h, g.t2 - g.h); double inter_area = in.empty() ? 0 : area(in.front()); double inter_vol = inter_area * max(0.0, ymax - ymin); double det_vol = d.h * d.l * d.w; double gt_vol = g.h * g.l * g.w; double o; if(criterion==-1) // union o = inter_vol / (det_vol + gt_vol - inter_vol); else if(criterion==0) // bbox_a o = inter_vol / det_vol; else if(criterion==1) // bbox_b o = inter_vol / gt_vol; return o; } vector getThresholds(vector &v, double n_groundtruth){ // holds scores needed to compute N_SAMPLE_PTS recall values vector t; // sort scores in descending order // (highest score is assumed to give best/most confident detections) sort(v.begin(), v.end(), greater()); // get scores for linearly spaced recall double current_recall = 0; for(int32_t i=0; i >, const vector &det, vector &ignored_gt, vector &dc, vector &ignored_det, int32_t &n_gt, DIFFICULTY difficulty){ // extract ground truth bounding boxes for current evaluation class for(int32_t i=0;iMAX_OCCLUSION[difficulty] || gt[i].truncation>MAX_TRUNCATION[difficulty] || height<=MIN_HEIGHT[difficulty]) ignore = true; // set ignored vector for ground truth // current class and not ignored (total no. of ground truth is detected for recall denominator) if(valid_class==1 && !ignore){ ignored_gt.push_back(0); n_gt++; } // neighboring class, or current class but ignored else if(valid_class==0 || (ignore && valid_class==1)) ignored_gt.push_back(1); // all other classes which are FN in the evaluation else ignored_gt.push_back(-1); } // extract dontcare areas for(int32_t i=0;i >, const vector &det, const vector &dc, const vector &ignored_gt, const vector &ignored_det, bool compute_fp, double (*boxoverlap)(tDetection, tGroundtruth, int32_t), METRIC metric, bool compute_aos=false, double thresh=0, bool debug=false){ tPrData stat = tPrData(); const double NO_DETECTION = -10000000; vector delta; // holds angular difference for TPs (needed for AOS evaluation) vector assigned_detection; // holds wether a detection was assigned to a valid or ignored ground truth assigned_detection.assign(det.size(), false); vector ignored_threshold; ignored_threshold.assign(det.size(), false); // holds detections with a threshold lower than thresh if FP are computed // detections with a low score are ignored for computing precision (needs FP) if(compute_fp) for(int32_t i=0; i 0.5) (logical len(det)) =======================================================================*/ int32_t det_idx = -1; double valid_detection = NO_DETECTION; double max_overlap = 0; // search for a possible detection bool assigned_ignored_det = false; for(int32_t j=0; jMIN_OVERLAP[metric][current_class] && det[j].thresh>valid_detection){ det_idx = j; valid_detection = det[j].thresh; } // for computing pr curve values, the candidate with the greatest overlap is considered // if the greatest overlap is an ignored detection (min_height), the overlapping detection is used else if(compute_fp && overlap>MIN_OVERLAP[metric][current_class] && (overlap>max_overlap || assigned_ignored_det) && ignored_det[j]==0){ max_overlap = overlap; det_idx = j; valid_detection = 1; assigned_ignored_det = false; } else if(compute_fp && overlap>MIN_OVERLAP[metric][current_class] && valid_detection==NO_DETECTION && ignored_det[j]==1){ det_idx = j; valid_detection = 1; assigned_ignored_det = true; } } /*======================================================================= compute TP, FP and FN =======================================================================*/ // nothing was assigned to this valid ground truth if(valid_detection==NO_DETECTION && ignored_gt[i]==0) { stat.fn++; } // only evaluate valid ground truth <=> detection assignments (considering difficulty level) else if(valid_detection!=NO_DETECTION && (ignored_gt[i]==1 || ignored_det[det_idx]==1)) assigned_detection[det_idx] = true; // found a valid true positive else if(valid_detection!=NO_DETECTION){ // write highest score to threshold vector stat.tp++; stat.v.push_back(det[det_idx].thresh); // compute angular difference of detection and ground truth if valid detection orientation was provided if(compute_aos) delta.push_back(gt[i].box.alpha - det[det_idx].box.alpha); // clean up assigned_detection[det_idx] = true; } } // if FP are requested, consider stuff area if(compute_fp){ // count fp for(int32_t i=0; iMIN_OVERLAP[metric][current_class]){ assigned_detection[j] = true; nstuff++; } } } // FP = no. of all not to ground truth assigned detections - detections assigned to stuff areas stat.fp -= nstuff; // if all orientation values are valid, the AOS is computed if(compute_aos){ vector tmp; // FP have a similarity of 0, for all TP compute AOS tmp.assign(stat.fp, 0); for(int32_t i=0; i0 || stat.fp>0) stat.similarity = accumulate(tmp.begin(), tmp.end(), 0.0); // there was neither a FP nor a TP, so the similarity is ignored in the evaluation else stat.similarity = -1; } } return stat; } /*======================================================================= EVALUATE CLASS-WISE =======================================================================*/ bool eval_class (FILE *fp_det, FILE *fp_ori, CLASSES current_class, const vector< vector > &groundtruth, const vector< vector > &detections, bool compute_aos, double (*boxoverlap)(tDetection, tGroundtruth, int32_t), vector &precision, vector &aos, DIFFICULTY difficulty, METRIC metric) { assert(groundtruth.size() == detections.size()); // init int32_t n_gt=0; // total no. of gt (denominator of recall) vector v, thresholds; // detection scores, evaluated for recall discretization vector< vector > ignored_gt, ignored_det; // index of ignored gt detection for current class/difficulty vector< vector > dontcare; // index of dontcare areas, included in ground truth // for all test images do for (int32_t i=0; i i_gt, i_det; vector dc; // only evaluate objects of current class and ignore occluded, truncated objects cleanData(current_class, groundtruth[i], detections[i], i_gt, dc, i_det, n_gt, difficulty); ignored_gt.push_back(i_gt); ignored_det.push_back(i_det); dontcare.push_back(dc); // compute statistics to get recall values tPrData pr_tmp = tPrData(); pr_tmp = computeStatistics(current_class, groundtruth[i], detections[i], dc, i_gt, i_det, false, boxoverlap, metric); // add detection scores to vector over all images for(int32_t j=0; j pr; pr.assign(thresholds.size(),tPrData()); for (int32_t i=0; i recall; precision.assign(N_SAMPLE_PTS, 0); if(compute_aos) aos.assign(N_SAMPLE_PTS, 0); double r=0; for (int32_t i=0; i vals[],bool is_aos){ char command[1024]; // save plot data to file FILE *fp = fopen((dir_name + "/" + file_name + ".txt").c_str(),"w"); printf("save %s\n", (dir_name + "/" + file_name + ".txt").c_str()); for (int32_t i=0; i<(int)N_SAMPLE_PTS; i++) fprintf(fp,"%f %f %f %f\n",(double)i/(N_SAMPLE_PTS-1.0),vals[0][i],vals[1][i],vals[2][i]); fclose(fp); // create png + eps for (int32_t j=0; j<2; j++) { // open file FILE *fp = fopen((dir_name + "/" + file_name + ".gp").c_str(),"w"); // save gnuplot instructions if (j==0) { fprintf(fp,"set term png size 450,315 font \"Helvetica\" 11\n"); fprintf(fp,"set output \"%s.png\"\n",file_name.c_str()); } else { fprintf(fp,"set term postscript eps enhanced color font \"Helvetica\" 20\n"); fprintf(fp,"set output \"%s.eps\"\n",file_name.c_str()); } // set labels and ranges fprintf(fp,"set size ratio 0.7\n"); fprintf(fp,"set xrange [0:1]\n"); fprintf(fp,"set yrange [0:1]\n"); fprintf(fp,"set xlabel \"Recall\"\n"); if (!is_aos) fprintf(fp,"set ylabel \"Precision\"\n"); else fprintf(fp,"set ylabel \"Orientation Similarity\"\n"); obj_type[0] = toupper(obj_type[0]); fprintf(fp,"set title \"%s\"\n",obj_type.c_str()); // line width int32_t lw = 5; if (j==0) lw = 3; // plot error curve fprintf(fp,"plot "); fprintf(fp,"\"%s.txt\" using 1:2 title 'Easy' with lines ls 1 lw %d,",file_name.c_str(),lw); fprintf(fp,"\"%s.txt\" using 1:3 title 'Moderate' with lines ls 2 lw %d,",file_name.c_str(),lw); fprintf(fp,"\"%s.txt\" using 1:4 title 'Hard' with lines ls 3 lw %d",file_name.c_str(),lw); // close file fclose(fp); // run gnuplot => create png + eps sprintf(command,"cd %s; gnuplot %s",dir_name.c_str(),(file_name + ".gp").c_str()); system(command); } // create pdf and crop sprintf(command,"cd %s; ps2pdf %s.eps %s_large.pdf",dir_name.c_str(),file_name.c_str(),file_name.c_str()); system(command); sprintf(command,"cd %s; pdfcrop %s_large.pdf %s.pdf",dir_name.c_str(),file_name.c_str(),file_name.c_str()); system(command); sprintf(command,"cd %s; rm %s_large.pdf",dir_name.c_str(),file_name.c_str()); system(command); } bool eval(string result_sha,Mail* mail){ // set some global parameters initGlobals(); // ground truth and result directories string gt_dir = "data/kitti_split2/validation/label_2"; string result_dir = result_sha; string plot_dir = result_dir + "/plot"; // create output directories system(("mkdir " + plot_dir).c_str()); // hold detections and ground truth in memory vector< vector > groundtruth; vector< vector > detections; // holds wether orientation similarity shall be computed (might be set to false while loading detections) // and which labels where provided by this submission bool compute_aos=true; vector eval_image(NUM_CLASS, false); vector eval_ground(NUM_CLASS, false); vector eval_3d(NUM_CLASS, false); // for all images read groundtruth and detections mail->msg("Loading detections..."); for (int32_t i=0; i gt = loadGroundtruth(gt_dir + "/" + file_name,gt_success); vector det = loadDetections(result_dir + "/data/" + file_name, compute_aos, eval_image, eval_ground, eval_3d, det_success); groundtruth.push_back(gt); detections.push_back(det); // check for errors if (!gt_success) { mail->msg("ERROR: Couldn't read: %s of ground truth. Please write me an email!", file_name); return false; } if (!det_success) { mail->msg("ERROR: Couldn't read: %s", file_name); return false; } } mail->msg(" done."); // holds pointers for result files FILE *fp_det=0, *fp_ori=0; // eval image 2D bounding boxes for (int c = 0; c < NUM_CLASS; c++) { CLASSES cls = (CLASSES)c; //mail->msg("Checking 2D evaluation (%s) ...", CLASS_NAMES[c].c_str()); if (eval_image[c]) { mail->msg("Starting 2D evaluation (%s) ...", CLASS_NAMES[c].c_str()); fp_det = fopen((result_dir + "/stats_" + CLASS_NAMES[c] + "_detection.txt").c_str(), "w"); if(compute_aos) fp_ori = fopen((result_dir + "/stats_" + CLASS_NAMES[c] + "_orientation.txt").c_str(),"w"); vector precision[3], aos[3]; if( !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, imageBoxOverlap, precision[0], aos[0], EASY, IMAGE) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, imageBoxOverlap, precision[1], aos[1], MODERATE, IMAGE) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, imageBoxOverlap, precision[2], aos[2], HARD, IMAGE)) { mail->msg("%s evaluation failed.", CLASS_NAMES[c].c_str()); return false; } fclose(fp_det); saveAndPlotPlots(plot_dir, CLASS_NAMES[c] + "_detection", CLASS_NAMES[c], precision, 0); if(compute_aos){ saveAndPlotPlots(plot_dir, CLASS_NAMES[c] + "_orientation", CLASS_NAMES[c], aos, 1); fclose(fp_ori); } mail->msg(" done."); } } // don't evaluate AOS for birdview boxes and 3D boxes compute_aos = false; // eval bird's eye view bounding boxes for (int c = 0; c < NUM_CLASS; c++) { CLASSES cls = (CLASSES)c; //mail->msg("Checking bird's eye evaluation (%s) ...", CLASS_NAMES[c].c_str()); if (eval_ground[c]) { mail->msg("Starting bird's eye evaluation (%s) ...", CLASS_NAMES[c].c_str()); fp_det = fopen((result_dir + "/stats_" + CLASS_NAMES[c] + "_detection_ground.txt").c_str(), "w"); vector precision[3], aos[3]; if( !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, groundBoxOverlap, precision[0], aos[0], EASY, GROUND) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, groundBoxOverlap, precision[1], aos[1], MODERATE, GROUND) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, groundBoxOverlap, precision[2], aos[2], HARD, GROUND)) { mail->msg("%s evaluation failed.", CLASS_NAMES[c].c_str()); return false; } fclose(fp_det); saveAndPlotPlots(plot_dir, CLASS_NAMES[c] + "_detection_ground", CLASS_NAMES[c], precision, 0); mail->msg(" done."); } } // eval 3D bounding boxes for (int c = 0; c < NUM_CLASS; c++) { CLASSES cls = (CLASSES)c; //mail->msg("Checking 3D evaluation (%s) ...", CLASS_NAMES[c].c_str()); if (eval_3d[c]) { mail->msg("Starting 3D evaluation (%s) ...", CLASS_NAMES[c].c_str()); fp_det = fopen((result_dir + "/stats_" + CLASS_NAMES[c] + "_detection_3d.txt").c_str(), "w"); vector precision[3], aos[3]; if( !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, box3DOverlap, precision[0], aos[0], EASY, BOX3D) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, box3DOverlap, precision[1], aos[1], MODERATE, BOX3D) || !eval_class(fp_det, fp_ori, cls, groundtruth, detections, compute_aos, box3DOverlap, precision[2], aos[2], HARD, BOX3D)) { mail->msg("%s evaluation failed.", CLASS_NAMES[c].c_str()); return false; } fclose(fp_det); saveAndPlotPlots(plot_dir, CLASS_NAMES[c] + "_detection_3d", CLASS_NAMES[c], precision, 0); mail->msg(" done."); } } // success return true; } int32_t main (int32_t argc,char *argv[]) { // we need 2 or 4 arguments! if (argc!=2 && argc!=4) { cout << "Usage: ./eval_detection result_sha [user_sha email]" << endl; return 1; } // read arguments string result_sha = argv[1]; // init notification mail Mail *mail; if (argc==4) mail = new Mail(argv[3]); else mail = new Mail(); mail->msg("Thank you for participating in our evaluation!"); // run evaluation if (eval(result_sha,mail)) { mail->msg("Your evaluation results are available at:"); mail->msg("http://www.cvlibs.net/datasets/kitti/user_submit_check_login.php?benchmark=object&user=%s&result=%s",argv[2], result_sha.c_str()); } else { system(("rm -r results/" + result_sha).c_str()); mail->msg("An error occured while processing your results."); mail->msg("Please make sure that the data in your zip archive has the right format!"); } // send mail and exit delete mail; return 0; } ================================================ FILE: data/kitti_split2/devkit/cpp/mail.h ================================================ #ifndef MAIL_H #define MAIL_H #include #include #include class Mail { public: Mail (std::string email = "") { if (email.compare("")) { mail = popen("/usr/lib/sendmail -t -f noreply@cvlibs.net","w"); fprintf(mail,"To: %s\n", email.c_str()); fprintf(mail,"From: noreply@cvlibs.net\n"); fprintf(mail,"Subject: KITTI Evaluation Benchmark\n"); fprintf(mail,"\n\n"); } else { mail = 0; } } ~Mail() { if (mail) { pclose(mail); } } void msg (const char *format, ...) { va_list args; va_start(args,format); if (mail) { vfprintf(mail,format,args); fprintf(mail,"\n"); } vprintf(format,args); printf("\n"); va_end(args); } private: FILE *mail; }; #endif ================================================ FILE: data/kitti_split2/devkit/mapping/train_mapping.txt ================================================ 2011_09_26 2011_09_26_drive_0005_sync 0000000109 2011_09_26 2011_09_26_drive_0005_sync 0000000125 2011_09_26 2011_09_26_drive_0005_sync 0000000127 2011_09_26 2011_09_26_drive_0005_sync 0000000130 2011_09_26 2011_09_26_drive_0005_sync 0000000133 2011_09_26 2011_09_26_drive_0005_sync 0000000136 2011_09_26 2011_09_26_drive_0005_sync 0000000139 2011_09_26 2011_09_26_drive_0005_sync 0000000142 2011_09_26 2011_09_26_drive_0005_sync 0000000145 2011_09_26 2011_09_26_drive_0005_sync 0000000151 2011_09_26 2011_09_26_drive_0009_sync 0000000001 2011_09_26 2011_09_26_drive_0009_sync 0000000002 2011_09_26 2011_09_26_drive_0009_sync 0000000003 2011_09_26 2011_09_26_drive_0009_sync 0000000004 2011_09_26 2011_09_26_drive_0009_sync 0000000005 2011_09_26 2011_09_26_drive_0009_sync 0000000006 2011_09_26 2011_09_26_drive_0009_sync 0000000007 2011_09_26 2011_09_26_drive_0009_sync 0000000008 2011_09_26 2011_09_26_drive_0009_sync 0000000009 2011_09_26 2011_09_26_drive_0009_sync 0000000010 2011_09_26 2011_09_26_drive_0009_sync 0000000011 2011_09_26 2011_09_26_drive_0009_sync 0000000012 2011_09_26 2011_09_26_drive_0009_sync 0000000013 2011_09_26 2011_09_26_drive_0009_sync 0000000014 2011_09_26 2011_09_26_drive_0009_sync 0000000015 2011_09_26 2011_09_26_drive_0009_sync 0000000016 2011_09_26 2011_09_26_drive_0009_sync 0000000017 2011_09_26 2011_09_26_drive_0009_sync 0000000018 2011_09_26 2011_09_26_drive_0009_sync 0000000019 2011_09_26 2011_09_26_drive_0009_sync 0000000020 2011_09_26 2011_09_26_drive_0009_sync 0000000021 2011_09_26 2011_09_26_drive_0009_sync 0000000022 2011_09_26 2011_09_26_drive_0009_sync 0000000023 2011_09_26 2011_09_26_drive_0009_sync 0000000024 2011_09_26 2011_09_26_drive_0009_sync 0000000025 2011_09_26 2011_09_26_drive_0009_sync 0000000026 2011_09_26 2011_09_26_drive_0009_sync 0000000027 2011_09_26 2011_09_26_drive_0009_sync 0000000028 2011_09_26 2011_09_26_drive_0009_sync 0000000029 2011_09_26 2011_09_26_drive_0009_sync 0000000030 2011_09_26 2011_09_26_drive_0009_sync 0000000031 2011_09_26 2011_09_26_drive_0009_sync 0000000032 2011_09_26 2011_09_26_drive_0009_sync 0000000033 2011_09_26 2011_09_26_drive_0009_sync 0000000034 2011_09_26 2011_09_26_drive_0009_sync 0000000035 2011_09_26 2011_09_26_drive_0009_sync 0000000036 2011_09_26 2011_09_26_drive_0009_sync 0000000037 2011_09_26 2011_09_26_drive_0009_sync 0000000038 2011_09_26 2011_09_26_drive_0009_sync 0000000039 2011_09_26 2011_09_26_drive_0009_sync 0000000040 2011_09_26 2011_09_26_drive_0009_sync 0000000041 2011_09_26 2011_09_26_drive_0009_sync 0000000042 2011_09_26 2011_09_26_drive_0009_sync 0000000043 2011_09_26 2011_09_26_drive_0009_sync 0000000044 2011_09_26 2011_09_26_drive_0009_sync 0000000045 2011_09_26 2011_09_26_drive_0009_sync 0000000046 2011_09_26 2011_09_26_drive_0009_sync 0000000047 2011_09_26 2011_09_26_drive_0009_sync 0000000048 2011_09_26 2011_09_26_drive_0009_sync 0000000049 2011_09_26 2011_09_26_drive_0009_sync 0000000050 2011_09_26 2011_09_26_drive_0009_sync 0000000051 2011_09_26 2011_09_26_drive_0009_sync 0000000052 2011_09_26 2011_09_26_drive_0009_sync 0000000053 2011_09_26 2011_09_26_drive_0009_sync 0000000054 2011_09_26 2011_09_26_drive_0009_sync 0000000055 2011_09_26 2011_09_26_drive_0009_sync 0000000056 2011_09_26 2011_09_26_drive_0009_sync 0000000057 2011_09_26 2011_09_26_drive_0009_sync 0000000058 2011_09_26 2011_09_26_drive_0009_sync 0000000059 2011_09_26 2011_09_26_drive_0009_sync 0000000060 2011_09_26 2011_09_26_drive_0009_sync 0000000061 2011_09_26 2011_09_26_drive_0009_sync 0000000062 2011_09_26 2011_09_26_drive_0009_sync 0000000063 2011_09_26 2011_09_26_drive_0009_sync 0000000064 2011_09_26 2011_09_26_drive_0009_sync 0000000065 2011_09_26 2011_09_26_drive_0009_sync 0000000066 2011_09_26 2011_09_26_drive_0009_sync 0000000067 2011_09_26 2011_09_26_drive_0009_sync 0000000068 2011_09_26 2011_09_26_drive_0009_sync 0000000069 2011_09_26 2011_09_26_drive_0009_sync 0000000070 2011_09_26 2011_09_26_drive_0009_sync 0000000071 2011_09_26 2011_09_26_drive_0009_sync 0000000072 2011_09_26 2011_09_26_drive_0009_sync 0000000073 2011_09_26 2011_09_26_drive_0009_sync 0000000074 2011_09_26 2011_09_26_drive_0009_sync 0000000075 2011_09_26 2011_09_26_drive_0009_sync 0000000076 2011_09_26 2011_09_26_drive_0009_sync 0000000077 2011_09_26 2011_09_26_drive_0009_sync 0000000081 2011_09_26 2011_09_26_drive_0009_sync 0000000085 2011_09_26 2011_09_26_drive_0009_sync 0000000086 2011_09_26 2011_09_26_drive_0009_sync 0000000087 2011_09_26 2011_09_26_drive_0009_sync 0000000088 2011_09_26 2011_09_26_drive_0009_sync 0000000089 2011_09_26 2011_09_26_drive_0009_sync 0000000090 2011_09_26 2011_09_26_drive_0009_sync 0000000091 2011_09_26 2011_09_26_drive_0009_sync 0000000095 2011_09_26 2011_09_26_drive_0009_sync 0000000096 2011_09_26 2011_09_26_drive_0009_sync 0000000097 2011_09_26 2011_09_26_drive_0009_sync 0000000098 2011_09_26 2011_09_26_drive_0009_sync 0000000099 2011_09_26 2011_09_26_drive_0009_sync 0000000100 2011_09_26 2011_09_26_drive_0009_sync 0000000101 2011_09_26 2011_09_26_drive_0009_sync 0000000102 2011_09_26 2011_09_26_drive_0009_sync 0000000103 2011_09_26 2011_09_26_drive_0009_sync 0000000104 2011_09_26 2011_09_26_drive_0009_sync 0000000107 2011_09_26 2011_09_26_drive_0009_sync 0000000110 2011_09_26 2011_09_26_drive_0009_sync 0000000111 2011_09_26 2011_09_26_drive_0009_sync 0000000112 2011_09_26 2011_09_26_drive_0009_sync 0000000113 2011_09_26 2011_09_26_drive_0009_sync 0000000114 2011_09_26 2011_09_26_drive_0009_sync 0000000115 2011_09_26 2011_09_26_drive_0009_sync 0000000116 2011_09_26 2011_09_26_drive_0009_sync 0000000117 2011_09_26 2011_09_26_drive_0009_sync 0000000118 2011_09_26 2011_09_26_drive_0009_sync 0000000119 2011_09_26 2011_09_26_drive_0009_sync 0000000120 2011_09_26 2011_09_26_drive_0009_sync 0000000121 2011_09_26 2011_09_26_drive_0009_sync 0000000122 2011_09_26 2011_09_26_drive_0009_sync 0000000123 2011_09_26 2011_09_26_drive_0009_sync 0000000124 2011_09_26 2011_09_26_drive_0009_sync 0000000125 2011_09_26 2011_09_26_drive_0009_sync 0000000126 2011_09_26 2011_09_26_drive_0009_sync 0000000127 2011_09_26 2011_09_26_drive_0009_sync 0000000128 2011_09_26 2011_09_26_drive_0009_sync 0000000129 2011_09_26 2011_09_26_drive_0009_sync 0000000130 2011_09_26 2011_09_26_drive_0009_sync 0000000131 2011_09_26 2011_09_26_drive_0009_sync 0000000132 2011_09_26 2011_09_26_drive_0009_sync 0000000133 2011_09_26 2011_09_26_drive_0009_sync 0000000134 2011_09_26 2011_09_26_drive_0009_sync 0000000135 2011_09_26 2011_09_26_drive_0009_sync 0000000137 2011_09_26 2011_09_26_drive_0009_sync 0000000139 2011_09_26 2011_09_26_drive_0009_sync 0000000140 2011_09_26 2011_09_26_drive_0009_sync 0000000142 2011_09_26 2011_09_26_drive_0009_sync 0000000144 2011_09_26 2011_09_26_drive_0009_sync 0000000146 2011_09_26 2011_09_26_drive_0009_sync 0000000148 2011_09_26 2011_09_26_drive_0009_sync 0000000150 2011_09_26 2011_09_26_drive_0009_sync 0000000156 2011_09_26 2011_09_26_drive_0009_sync 0000000158 2011_09_26 2011_09_26_drive_0009_sync 0000000160 2011_09_26 2011_09_26_drive_0009_sync 0000000162 2011_09_26 2011_09_26_drive_0009_sync 0000000164 2011_09_26 2011_09_26_drive_0009_sync 0000000166 2011_09_26 2011_09_26_drive_0009_sync 0000000168 2011_09_26 2011_09_26_drive_0009_sync 0000000170 2011_09_26 2011_09_26_drive_0009_sync 0000000181 2011_09_26 2011_09_26_drive_0009_sync 0000000185 2011_09_26 2011_09_26_drive_0009_sync 0000000190 2011_09_26 2011_09_26_drive_0009_sync 0000000195 2011_09_26 2011_09_26_drive_0009_sync 0000000199 2011_09_26 2011_09_26_drive_0009_sync 0000000202 2011_09_26 2011_09_26_drive_0009_sync 0000000205 2011_09_26 2011_09_26_drive_0009_sync 0000000207 2011_09_26 2011_09_26_drive_0009_sync 0000000209 2011_09_26 2011_09_26_drive_0009_sync 0000000211 2011_09_26 2011_09_26_drive_0009_sync 0000000213 2011_09_26 2011_09_26_drive_0009_sync 0000000215 2011_09_26 2011_09_26_drive_0009_sync 0000000217 2011_09_26 2011_09_26_drive_0009_sync 0000000218 2011_09_26 2011_09_26_drive_0009_sync 0000000219 2011_09_26 2011_09_26_drive_0009_sync 0000000220 2011_09_26 2011_09_26_drive_0009_sync 0000000221 2011_09_26 2011_09_26_drive_0009_sync 0000000222 2011_09_26 2011_09_26_drive_0009_sync 0000000223 2011_09_26 2011_09_26_drive_0009_sync 0000000224 2011_09_26 2011_09_26_drive_0009_sync 0000000225 2011_09_26 2011_09_26_drive_0009_sync 0000000226 2011_09_26 2011_09_26_drive_0009_sync 0000000227 2011_09_26 2011_09_26_drive_0009_sync 0000000228 2011_09_26 2011_09_26_drive_0009_sync 0000000229 2011_09_26 2011_09_26_drive_0009_sync 0000000230 2011_09_26 2011_09_26_drive_0009_sync 0000000231 2011_09_26 2011_09_26_drive_0009_sync 0000000232 2011_09_26 2011_09_26_drive_0009_sync 0000000234 2011_09_26 2011_09_26_drive_0009_sync 0000000235 2011_09_26 2011_09_26_drive_0009_sync 0000000236 2011_09_26 2011_09_26_drive_0009_sync 0000000238 2011_09_26 2011_09_26_drive_0009_sync 0000000240 2011_09_26 2011_09_26_drive_0009_sync 0000000242 2011_09_26 2011_09_26_drive_0009_sync 0000000244 2011_09_26 2011_09_26_drive_0009_sync 0000000246 2011_09_26 2011_09_26_drive_0009_sync 0000000248 2011_09_26 2011_09_26_drive_0009_sync 0000000250 2011_09_26 2011_09_26_drive_0009_sync 0000000252 2011_09_26 2011_09_26_drive_0009_sync 0000000254 2011_09_26 2011_09_26_drive_0009_sync 0000000256 2011_09_26 2011_09_26_drive_0009_sync 0000000258 2011_09_26 2011_09_26_drive_0009_sync 0000000260 2011_09_26 2011_09_26_drive_0009_sync 0000000262 2011_09_26 2011_09_26_drive_0009_sync 0000000264 2011_09_26 2011_09_26_drive_0009_sync 0000000266 2011_09_26 2011_09_26_drive_0009_sync 0000000268 2011_09_26 2011_09_26_drive_0009_sync 0000000270 2011_09_26 2011_09_26_drive_0009_sync 0000000272 2011_09_26 2011_09_26_drive_0009_sync 0000000273 2011_09_26 2011_09_26_drive_0009_sync 0000000274 2011_09_26 2011_09_26_drive_0009_sync 0000000276 2011_09_26 2011_09_26_drive_0009_sync 0000000277 2011_09_26 2011_09_26_drive_0009_sync 0000000278 2011_09_26 2011_09_26_drive_0009_sync 0000000279 2011_09_26 2011_09_26_drive_0009_sync 0000000280 2011_09_26 2011_09_26_drive_0009_sync 0000000281 2011_09_26 2011_09_26_drive_0009_sync 0000000282 2011_09_26 2011_09_26_drive_0009_sync 0000000283 2011_09_26 2011_09_26_drive_0009_sync 0000000284 2011_09_26 2011_09_26_drive_0009_sync 0000000285 2011_09_26 2011_09_26_drive_0009_sync 0000000286 2011_09_26 2011_09_26_drive_0009_sync 0000000287 2011_09_26 2011_09_26_drive_0009_sync 0000000288 2011_09_26 2011_09_26_drive_0009_sync 0000000289 2011_09_26 2011_09_26_drive_0009_sync 0000000290 2011_09_26 2011_09_26_drive_0009_sync 0000000291 2011_09_26 2011_09_26_drive_0009_sync 0000000292 2011_09_26 2011_09_26_drive_0009_sync 0000000293 2011_09_26 2011_09_26_drive_0009_sync 0000000294 2011_09_26 2011_09_26_drive_0009_sync 0000000295 2011_09_26 2011_09_26_drive_0009_sync 0000000296 2011_09_26 2011_09_26_drive_0009_sync 0000000297 2011_09_26 2011_09_26_drive_0009_sync 0000000298 2011_09_26 2011_09_26_drive_0009_sync 0000000299 2011_09_26 2011_09_26_drive_0009_sync 0000000300 2011_09_26 2011_09_26_drive_0009_sync 0000000301 2011_09_26 2011_09_26_drive_0009_sync 0000000302 2011_09_26 2011_09_26_drive_0009_sync 0000000303 2011_09_26 2011_09_26_drive_0009_sync 0000000304 2011_09_26 2011_09_26_drive_0009_sync 0000000305 2011_09_26 2011_09_26_drive_0009_sync 0000000306 2011_09_26 2011_09_26_drive_0009_sync 0000000307 2011_09_26 2011_09_26_drive_0009_sync 0000000308 2011_09_26 2011_09_26_drive_0009_sync 0000000309 2011_09_26 2011_09_26_drive_0009_sync 0000000310 2011_09_26 2011_09_26_drive_0009_sync 0000000311 2011_09_26 2011_09_26_drive_0009_sync 0000000312 2011_09_26 2011_09_26_drive_0009_sync 0000000313 2011_09_26 2011_09_26_drive_0009_sync 0000000314 2011_09_26 2011_09_26_drive_0009_sync 0000000315 2011_09_26 2011_09_26_drive_0009_sync 0000000317 2011_09_26 2011_09_26_drive_0009_sync 0000000318 2011_09_26 2011_09_26_drive_0009_sync 0000000319 2011_09_26 2011_09_26_drive_0009_sync 0000000320 2011_09_26 2011_09_26_drive_0009_sync 0000000322 2011_09_26 2011_09_26_drive_0009_sync 0000000323 2011_09_26 2011_09_26_drive_0009_sync 0000000325 2011_09_26 2011_09_26_drive_0009_sync 0000000327 2011_09_26 2011_09_26_drive_0009_sync 0000000329 2011_09_26 2011_09_26_drive_0009_sync 0000000331 2011_09_26 2011_09_26_drive_0009_sync 0000000333 2011_09_26 2011_09_26_drive_0009_sync 0000000335 2011_09_26 2011_09_26_drive_0009_sync 0000000336 2011_09_26 2011_09_26_drive_0009_sync 0000000337 2011_09_26 2011_09_26_drive_0009_sync 0000000338 2011_09_26 2011_09_26_drive_0009_sync 0000000339 2011_09_26 2011_09_26_drive_0009_sync 0000000340 2011_09_26 2011_09_26_drive_0009_sync 0000000341 2011_09_26 2011_09_26_drive_0009_sync 0000000342 2011_09_26 2011_09_26_drive_0009_sync 0000000343 2011_09_26 2011_09_26_drive_0009_sync 0000000344 2011_09_26 2011_09_26_drive_0009_sync 0000000345 2011_09_26 2011_09_26_drive_0009_sync 0000000346 2011_09_26 2011_09_26_drive_0009_sync 0000000347 2011_09_26 2011_09_26_drive_0009_sync 0000000348 2011_09_26 2011_09_26_drive_0009_sync 0000000349 2011_09_26 2011_09_26_drive_0009_sync 0000000350 2011_09_26 2011_09_26_drive_0009_sync 0000000351 2011_09_26 2011_09_26_drive_0009_sync 0000000352 2011_09_26 2011_09_26_drive_0009_sync 0000000353 2011_09_26 2011_09_26_drive_0009_sync 0000000354 2011_09_26 2011_09_26_drive_0009_sync 0000000355 2011_09_26 2011_09_26_drive_0009_sync 0000000356 2011_09_26 2011_09_26_drive_0009_sync 0000000357 2011_09_26 2011_09_26_drive_0009_sync 0000000358 2011_09_26 2011_09_26_drive_0009_sync 0000000359 2011_09_26 2011_09_26_drive_0009_sync 0000000361 2011_09_26 2011_09_26_drive_0009_sync 0000000362 2011_09_26 2011_09_26_drive_0009_sync 0000000363 2011_09_26 2011_09_26_drive_0009_sync 0000000364 2011_09_26 2011_09_26_drive_0009_sync 0000000366 2011_09_26 2011_09_26_drive_0009_sync 0000000368 2011_09_26 2011_09_26_drive_0009_sync 0000000370 2011_09_26 2011_09_26_drive_0009_sync 0000000372 2011_09_26 2011_09_26_drive_0009_sync 0000000374 2011_09_26 2011_09_26_drive_0009_sync 0000000377 2011_09_26 2011_09_26_drive_0009_sync 0000000379 2011_09_26 2011_09_26_drive_0009_sync 0000000381 2011_09_26 2011_09_26_drive_0009_sync 0000000383 2011_09_26 2011_09_26_drive_0009_sync 0000000386 2011_09_26 2011_09_26_drive_0009_sync 0000000389 2011_09_26 2011_09_26_drive_0009_sync 0000000392 2011_09_26 2011_09_26_drive_0009_sync 0000000395 2011_09_26 2011_09_26_drive_0009_sync 0000000397 2011_09_26 2011_09_26_drive_0009_sync 0000000399 2011_09_26 2011_09_26_drive_0009_sync 0000000401 2011_09_26 2011_09_26_drive_0009_sync 0000000415 2011_09_26 2011_09_26_drive_0009_sync 0000000417 2011_09_26 2011_09_26_drive_0011_sync 0000000001 2011_09_26 2011_09_26_drive_0011_sync 0000000002 2011_09_26 2011_09_26_drive_0011_sync 0000000003 2011_09_26 2011_09_26_drive_0011_sync 0000000004 2011_09_26 2011_09_26_drive_0011_sync 0000000005 2011_09_26 2011_09_26_drive_0011_sync 0000000006 2011_09_26 2011_09_26_drive_0011_sync 0000000007 2011_09_26 2011_09_26_drive_0011_sync 0000000025 2011_09_26 2011_09_26_drive_0011_sync 0000000026 2011_09_26 2011_09_26_drive_0011_sync 0000000027 2011_09_26 2011_09_26_drive_0011_sync 0000000028 2011_09_26 2011_09_26_drive_0011_sync 0000000029 2011_09_26 2011_09_26_drive_0011_sync 0000000030 2011_09_26 2011_09_26_drive_0011_sync 0000000031 2011_09_26 2011_09_26_drive_0011_sync 0000000032 2011_09_26 2011_09_26_drive_0011_sync 0000000033 2011_09_26 2011_09_26_drive_0011_sync 0000000034 2011_09_26 2011_09_26_drive_0011_sync 0000000035 2011_09_26 2011_09_26_drive_0011_sync 0000000036 2011_09_26 2011_09_26_drive_0011_sync 0000000037 2011_09_26 2011_09_26_drive_0011_sync 0000000038 2011_09_26 2011_09_26_drive_0011_sync 0000000039 2011_09_26 2011_09_26_drive_0011_sync 0000000040 2011_09_26 2011_09_26_drive_0011_sync 0000000041 2011_09_26 2011_09_26_drive_0011_sync 0000000042 2011_09_26 2011_09_26_drive_0011_sync 0000000043 2011_09_26 2011_09_26_drive_0011_sync 0000000044 2011_09_26 2011_09_26_drive_0011_sync 0000000045 2011_09_26 2011_09_26_drive_0011_sync 0000000046 2011_09_26 2011_09_26_drive_0011_sync 0000000047 2011_09_26 2011_09_26_drive_0011_sync 0000000048 2011_09_26 2011_09_26_drive_0011_sync 0000000049 2011_09_26 2011_09_26_drive_0011_sync 0000000050 2011_09_26 2011_09_26_drive_0011_sync 0000000051 2011_09_26 2011_09_26_drive_0011_sync 0000000052 2011_09_26 2011_09_26_drive_0011_sync 0000000053 2011_09_26 2011_09_26_drive_0011_sync 0000000054 2011_09_26 2011_09_26_drive_0011_sync 0000000055 2011_09_26 2011_09_26_drive_0011_sync 0000000056 2011_09_26 2011_09_26_drive_0011_sync 0000000057 2011_09_26 2011_09_26_drive_0011_sync 0000000058 2011_09_26 2011_09_26_drive_0011_sync 0000000059 2011_09_26 2011_09_26_drive_0011_sync 0000000060 2011_09_26 2011_09_26_drive_0011_sync 0000000061 2011_09_26 2011_09_26_drive_0011_sync 0000000062 2011_09_26 2011_09_26_drive_0011_sync 0000000063 2011_09_26 2011_09_26_drive_0011_sync 0000000064 2011_09_26 2011_09_26_drive_0011_sync 0000000065 2011_09_26 2011_09_26_drive_0011_sync 0000000066 2011_09_26 2011_09_26_drive_0011_sync 0000000067 2011_09_26 2011_09_26_drive_0011_sync 0000000068 2011_09_26 2011_09_26_drive_0011_sync 0000000070 2011_09_26 2011_09_26_drive_0011_sync 0000000072 2011_09_26 2011_09_26_drive_0011_sync 0000000074 2011_09_26 2011_09_26_drive_0011_sync 0000000076 2011_09_26 2011_09_26_drive_0011_sync 0000000078 2011_09_26 2011_09_26_drive_0011_sync 0000000080 2011_09_26 2011_09_26_drive_0011_sync 0000000082 2011_09_26 2011_09_26_drive_0011_sync 0000000084 2011_09_26 2011_09_26_drive_0011_sync 0000000086 2011_09_26 2011_09_26_drive_0011_sync 0000000088 2011_09_26 2011_09_26_drive_0011_sync 0000000090 2011_09_26 2011_09_26_drive_0011_sync 0000000092 2011_09_26 2011_09_26_drive_0011_sync 0000000094 2011_09_26 2011_09_26_drive_0011_sync 0000000096 2011_09_26 2011_09_26_drive_0011_sync 0000000098 2011_09_26 2011_09_26_drive_0011_sync 0000000100 2011_09_26 2011_09_26_drive_0011_sync 0000000102 2011_09_26 2011_09_26_drive_0011_sync 0000000105 2011_09_26 2011_09_26_drive_0011_sync 0000000108 2011_09_26 2011_09_26_drive_0011_sync 0000000111 2011_09_26 2011_09_26_drive_0011_sync 0000000114 2011_09_26 2011_09_26_drive_0011_sync 0000000118 2011_09_26 2011_09_26_drive_0011_sync 0000000123 2011_09_26 2011_09_26_drive_0011_sync 0000000126 2011_09_26 2011_09_26_drive_0011_sync 0000000131 2011_09_26 2011_09_26_drive_0011_sync 0000000136 2011_09_26 2011_09_26_drive_0011_sync 0000000141 2011_09_26 2011_09_26_drive_0011_sync 0000000146 2011_09_26 2011_09_26_drive_0011_sync 0000000150 2011_09_26 2011_09_26_drive_0011_sync 0000000154 2011_09_26 2011_09_26_drive_0011_sync 0000000159 2011_09_26 2011_09_26_drive_0011_sync 0000000164 2011_09_26 2011_09_26_drive_0011_sync 0000000169 2011_09_26 2011_09_26_drive_0011_sync 0000000179 2011_09_26 2011_09_26_drive_0011_sync 0000000189 2011_09_26 2011_09_26_drive_0011_sync 0000000197 2011_09_26 2011_09_26_drive_0011_sync 0000000206 2011_09_26 2011_09_26_drive_0011_sync 0000000215 2011_09_26 2011_09_26_drive_0013_sync 0000000007 2011_09_26 2011_09_26_drive_0013_sync 0000000011 2011_09_26 2011_09_26_drive_0013_sync 0000000029 2011_09_26 2011_09_26_drive_0013_sync 0000000032 2011_09_26 2011_09_26_drive_0013_sync 0000000035 2011_09_26 2011_09_26_drive_0013_sync 0000000038 2011_09_26 2011_09_26_drive_0013_sync 0000000041 2011_09_26 2011_09_26_drive_0013_sync 0000000044 2011_09_26 2011_09_26_drive_0013_sync 0000000047 2011_09_26 2011_09_26_drive_0013_sync 0000000050 2011_09_26 2011_09_26_drive_0013_sync 0000000053 2011_09_26 2011_09_26_drive_0013_sync 0000000056 2011_09_26 2011_09_26_drive_0013_sync 0000000059 2011_09_26 2011_09_26_drive_0013_sync 0000000062 2011_09_26 2011_09_26_drive_0013_sync 0000000065 2011_09_26 2011_09_26_drive_0013_sync 0000000089 2011_09_26 2011_09_26_drive_0013_sync 0000000093 2011_09_26 2011_09_26_drive_0013_sync 0000000097 2011_09_26 2011_09_26_drive_0013_sync 0000000101 2011_09_26 2011_09_26_drive_0013_sync 0000000105 2011_09_26 2011_09_26_drive_0013_sync 0000000108 2011_09_26 2011_09_26_drive_0013_sync 0000000111 2011_09_26 2011_09_26_drive_0013_sync 0000000137 2011_09_26 2011_09_26_drive_0014_sync 0000000002 2011_09_26 2011_09_26_drive_0014_sync 0000000004 2011_09_26 2011_09_26_drive_0014_sync 0000000006 2011_09_26 2011_09_26_drive_0014_sync 0000000008 2011_09_26 2011_09_26_drive_0014_sync 0000000014 2011_09_26 2011_09_26_drive_0014_sync 0000000016 2011_09_26 2011_09_26_drive_0014_sync 0000000018 2011_09_26 2011_09_26_drive_0014_sync 0000000020 2011_09_26 2011_09_26_drive_0014_sync 0000000021 2011_09_26 2011_09_26_drive_0014_sync 0000000022 2011_09_26 2011_09_26_drive_0014_sync 0000000023 2011_09_26 2011_09_26_drive_0014_sync 0000000024 2011_09_26 2011_09_26_drive_0014_sync 0000000028 2011_09_26 2011_09_26_drive_0014_sync 0000000029 2011_09_26 2011_09_26_drive_0014_sync 0000000030 2011_09_26 2011_09_26_drive_0014_sync 0000000031 2011_09_26 2011_09_26_drive_0014_sync 0000000032 2011_09_26 2011_09_26_drive_0014_sync 0000000033 2011_09_26 2011_09_26_drive_0014_sync 0000000034 2011_09_26 2011_09_26_drive_0014_sync 0000000035 2011_09_26 2011_09_26_drive_0014_sync 0000000036 2011_09_26 2011_09_26_drive_0014_sync 0000000037 2011_09_26 2011_09_26_drive_0014_sync 0000000038 2011_09_26 2011_09_26_drive_0014_sync 0000000039 2011_09_26 2011_09_26_drive_0014_sync 0000000041 2011_09_26 2011_09_26_drive_0014_sync 0000000043 2011_09_26 2011_09_26_drive_0014_sync 0000000045 2011_09_26 2011_09_26_drive_0014_sync 0000000046 2011_09_26 2011_09_26_drive_0014_sync 0000000048 2011_09_26 2011_09_26_drive_0014_sync 0000000050 2011_09_26 2011_09_26_drive_0014_sync 0000000052 2011_09_26 2011_09_26_drive_0014_sync 0000000053 2011_09_26 2011_09_26_drive_0014_sync 0000000055 2011_09_26 2011_09_26_drive_0014_sync 0000000057 2011_09_26 2011_09_26_drive_0014_sync 0000000058 2011_09_26 2011_09_26_drive_0014_sync 0000000059 2011_09_26 2011_09_26_drive_0014_sync 0000000061 2011_09_26 2011_09_26_drive_0014_sync 0000000063 2011_09_26 2011_09_26_drive_0014_sync 0000000065 2011_09_26 2011_09_26_drive_0014_sync 0000000067 2011_09_26 2011_09_26_drive_0014_sync 0000000068 2011_09_26 2011_09_26_drive_0014_sync 0000000069 2011_09_26 2011_09_26_drive_0014_sync 0000000070 2011_09_26 2011_09_26_drive_0014_sync 0000000071 2011_09_26 2011_09_26_drive_0014_sync 0000000072 2011_09_26 2011_09_26_drive_0014_sync 0000000073 2011_09_26 2011_09_26_drive_0014_sync 0000000074 2011_09_26 2011_09_26_drive_0014_sync 0000000075 2011_09_26 2011_09_26_drive_0014_sync 0000000077 2011_09_26 2011_09_26_drive_0014_sync 0000000078 2011_09_26 2011_09_26_drive_0014_sync 0000000079 2011_09_26 2011_09_26_drive_0014_sync 0000000080 2011_09_26 2011_09_26_drive_0014_sync 0000000081 2011_09_26 2011_09_26_drive_0014_sync 0000000082 2011_09_26 2011_09_26_drive_0014_sync 0000000083 2011_09_26 2011_09_26_drive_0014_sync 0000000084 2011_09_26 2011_09_26_drive_0014_sync 0000000085 2011_09_26 2011_09_26_drive_0014_sync 0000000086 2011_09_26 2011_09_26_drive_0014_sync 0000000087 2011_09_26 2011_09_26_drive_0014_sync 0000000088 2011_09_26 2011_09_26_drive_0014_sync 0000000089 2011_09_26 2011_09_26_drive_0014_sync 0000000090 2011_09_26 2011_09_26_drive_0014_sync 0000000091 2011_09_26 2011_09_26_drive_0014_sync 0000000092 2011_09_26 2011_09_26_drive_0014_sync 0000000093 2011_09_26 2011_09_26_drive_0014_sync 0000000094 2011_09_26 2011_09_26_drive_0014_sync 0000000095 2011_09_26 2011_09_26_drive_0014_sync 0000000096 2011_09_26 2011_09_26_drive_0014_sync 0000000097 2011_09_26 2011_09_26_drive_0014_sync 0000000098 2011_09_26 2011_09_26_drive_0014_sync 0000000099 2011_09_26 2011_09_26_drive_0014_sync 0000000100 2011_09_26 2011_09_26_drive_0014_sync 0000000101 2011_09_26 2011_09_26_drive_0014_sync 0000000102 2011_09_26 2011_09_26_drive_0014_sync 0000000103 2011_09_26 2011_09_26_drive_0014_sync 0000000104 2011_09_26 2011_09_26_drive_0014_sync 0000000105 2011_09_26 2011_09_26_drive_0014_sync 0000000106 2011_09_26 2011_09_26_drive_0014_sync 0000000107 2011_09_26 2011_09_26_drive_0014_sync 0000000108 2011_09_26 2011_09_26_drive_0014_sync 0000000109 2011_09_26 2011_09_26_drive_0014_sync 0000000110 2011_09_26 2011_09_26_drive_0014_sync 0000000111 2011_09_26 2011_09_26_drive_0014_sync 0000000112 2011_09_26 2011_09_26_drive_0014_sync 0000000113 2011_09_26 2011_09_26_drive_0014_sync 0000000114 2011_09_26 2011_09_26_drive_0014_sync 0000000115 2011_09_26 2011_09_26_drive_0014_sync 0000000116 2011_09_26 2011_09_26_drive_0014_sync 0000000117 2011_09_26 2011_09_26_drive_0014_sync 0000000118 2011_09_26 2011_09_26_drive_0014_sync 0000000119 2011_09_26 2011_09_26_drive_0014_sync 0000000120 2011_09_26 2011_09_26_drive_0014_sync 0000000121 2011_09_26 2011_09_26_drive_0014_sync 0000000122 2011_09_26 2011_09_26_drive_0014_sync 0000000123 2011_09_26 2011_09_26_drive_0014_sync 0000000124 2011_09_26 2011_09_26_drive_0014_sync 0000000125 2011_09_26 2011_09_26_drive_0014_sync 0000000126 2011_09_26 2011_09_26_drive_0014_sync 0000000127 2011_09_26 2011_09_26_drive_0014_sync 0000000128 2011_09_26 2011_09_26_drive_0014_sync 0000000129 2011_09_26 2011_09_26_drive_0014_sync 0000000130 2011_09_26 2011_09_26_drive_0014_sync 0000000131 2011_09_26 2011_09_26_drive_0014_sync 0000000132 2011_09_26 2011_09_26_drive_0014_sync 0000000133 2011_09_26 2011_09_26_drive_0014_sync 0000000134 2011_09_26 2011_09_26_drive_0014_sync 0000000135 2011_09_26 2011_09_26_drive_0014_sync 0000000136 2011_09_26 2011_09_26_drive_0014_sync 0000000137 2011_09_26 2011_09_26_drive_0014_sync 0000000138 2011_09_26 2011_09_26_drive_0014_sync 0000000139 2011_09_26 2011_09_26_drive_0014_sync 0000000140 2011_09_26 2011_09_26_drive_0014_sync 0000000141 2011_09_26 2011_09_26_drive_0014_sync 0000000142 2011_09_26 2011_09_26_drive_0014_sync 0000000143 2011_09_26 2011_09_26_drive_0014_sync 0000000144 2011_09_26 2011_09_26_drive_0014_sync 0000000145 2011_09_26 2011_09_26_drive_0014_sync 0000000146 2011_09_26 2011_09_26_drive_0014_sync 0000000147 2011_09_26 2011_09_26_drive_0014_sync 0000000148 2011_09_26 2011_09_26_drive_0014_sync 0000000149 2011_09_26 2011_09_26_drive_0014_sync 0000000150 2011_09_26 2011_09_26_drive_0014_sync 0000000151 2011_09_26 2011_09_26_drive_0014_sync 0000000152 2011_09_26 2011_09_26_drive_0014_sync 0000000153 2011_09_26 2011_09_26_drive_0014_sync 0000000154 2011_09_26 2011_09_26_drive_0014_sync 0000000155 2011_09_26 2011_09_26_drive_0014_sync 0000000156 2011_09_26 2011_09_26_drive_0014_sync 0000000157 2011_09_26 2011_09_26_drive_0014_sync 0000000158 2011_09_26 2011_09_26_drive_0014_sync 0000000159 2011_09_26 2011_09_26_drive_0014_sync 0000000160 2011_09_26 2011_09_26_drive_0014_sync 0000000161 2011_09_26 2011_09_26_drive_0014_sync 0000000162 2011_09_26 2011_09_26_drive_0014_sync 0000000163 2011_09_26 2011_09_26_drive_0014_sync 0000000164 2011_09_26 2011_09_26_drive_0014_sync 0000000165 2011_09_26 2011_09_26_drive_0014_sync 0000000166 2011_09_26 2011_09_26_drive_0014_sync 0000000167 2011_09_26 2011_09_26_drive_0014_sync 0000000168 2011_09_26 2011_09_26_drive_0014_sync 0000000169 2011_09_26 2011_09_26_drive_0014_sync 0000000170 2011_09_26 2011_09_26_drive_0014_sync 0000000171 2011_09_26 2011_09_26_drive_0014_sync 0000000172 2011_09_26 2011_09_26_drive_0014_sync 0000000173 2011_09_26 2011_09_26_drive_0014_sync 0000000174 2011_09_26 2011_09_26_drive_0014_sync 0000000175 2011_09_26 2011_09_26_drive_0014_sync 0000000176 2011_09_26 2011_09_26_drive_0014_sync 0000000177 2011_09_26 2011_09_26_drive_0014_sync 0000000178 2011_09_26 2011_09_26_drive_0014_sync 0000000179 2011_09_26 2011_09_26_drive_0014_sync 0000000180 2011_09_26 2011_09_26_drive_0014_sync 0000000181 2011_09_26 2011_09_26_drive_0014_sync 0000000182 2011_09_26 2011_09_26_drive_0014_sync 0000000183 2011_09_26 2011_09_26_drive_0014_sync 0000000184 2011_09_26 2011_09_26_drive_0014_sync 0000000185 2011_09_26 2011_09_26_drive_0014_sync 0000000186 2011_09_26 2011_09_26_drive_0014_sync 0000000187 2011_09_26 2011_09_26_drive_0014_sync 0000000188 2011_09_26 2011_09_26_drive_0014_sync 0000000189 2011_09_26 2011_09_26_drive_0014_sync 0000000190 2011_09_26 2011_09_26_drive_0014_sync 0000000191 2011_09_26 2011_09_26_drive_0014_sync 0000000192 2011_09_26 2011_09_26_drive_0014_sync 0000000193 2011_09_26 2011_09_26_drive_0014_sync 0000000194 2011_09_26 2011_09_26_drive_0014_sync 0000000195 2011_09_26 2011_09_26_drive_0014_sync 0000000196 2011_09_26 2011_09_26_drive_0014_sync 0000000197 2011_09_26 2011_09_26_drive_0014_sync 0000000198 2011_09_26 2011_09_26_drive_0014_sync 0000000199 2011_09_26 2011_09_26_drive_0014_sync 0000000200 2011_09_26 2011_09_26_drive_0014_sync 0000000201 2011_09_26 2011_09_26_drive_0014_sync 0000000202 2011_09_26 2011_09_26_drive_0014_sync 0000000203 2011_09_26 2011_09_26_drive_0014_sync 0000000204 2011_09_26 2011_09_26_drive_0014_sync 0000000205 2011_09_26 2011_09_26_drive_0014_sync 0000000206 2011_09_26 2011_09_26_drive_0014_sync 0000000207 2011_09_26 2011_09_26_drive_0014_sync 0000000208 2011_09_26 2011_09_26_drive_0014_sync 0000000209 2011_09_26 2011_09_26_drive_0014_sync 0000000210 2011_09_26 2011_09_26_drive_0014_sync 0000000211 2011_09_26 2011_09_26_drive_0014_sync 0000000212 2011_09_26 2011_09_26_drive_0014_sync 0000000213 2011_09_26 2011_09_26_drive_0014_sync 0000000214 2011_09_26 2011_09_26_drive_0014_sync 0000000215 2011_09_26 2011_09_26_drive_0014_sync 0000000216 2011_09_26 2011_09_26_drive_0014_sync 0000000217 2011_09_26 2011_09_26_drive_0014_sync 0000000218 2011_09_26 2011_09_26_drive_0014_sync 0000000219 2011_09_26 2011_09_26_drive_0014_sync 0000000220 2011_09_26 2011_09_26_drive_0014_sync 0000000221 2011_09_26 2011_09_26_drive_0014_sync 0000000222 2011_09_26 2011_09_26_drive_0014_sync 0000000223 2011_09_26 2011_09_26_drive_0014_sync 0000000224 2011_09_26 2011_09_26_drive_0014_sync 0000000225 2011_09_26 2011_09_26_drive_0014_sync 0000000226 2011_09_26 2011_09_26_drive_0014_sync 0000000227 2011_09_26 2011_09_26_drive_0014_sync 0000000228 2011_09_26 2011_09_26_drive_0014_sync 0000000229 2011_09_26 2011_09_26_drive_0014_sync 0000000230 2011_09_26 2011_09_26_drive_0014_sync 0000000231 2011_09_26 2011_09_26_drive_0014_sync 0000000232 2011_09_26 2011_09_26_drive_0014_sync 0000000233 2011_09_26 2011_09_26_drive_0014_sync 0000000234 2011_09_26 2011_09_26_drive_0014_sync 0000000235 2011_09_26 2011_09_26_drive_0014_sync 0000000236 2011_09_26 2011_09_26_drive_0014_sync 0000000237 2011_09_26 2011_09_26_drive_0014_sync 0000000238 2011_09_26 2011_09_26_drive_0014_sync 0000000239 2011_09_26 2011_09_26_drive_0014_sync 0000000240 2011_09_26 2011_09_26_drive_0014_sync 0000000241 2011_09_26 2011_09_26_drive_0014_sync 0000000242 2011_09_26 2011_09_26_drive_0014_sync 0000000243 2011_09_26 2011_09_26_drive_0014_sync 0000000244 2011_09_26 2011_09_26_drive_0014_sync 0000000245 2011_09_26 2011_09_26_drive_0014_sync 0000000246 2011_09_26 2011_09_26_drive_0014_sync 0000000247 2011_09_26 2011_09_26_drive_0014_sync 0000000248 2011_09_26 2011_09_26_drive_0014_sync 0000000249 2011_09_26 2011_09_26_drive_0014_sync 0000000250 2011_09_26 2011_09_26_drive_0014_sync 0000000257 2011_09_26 2011_09_26_drive_0014_sync 0000000263 2011_09_26 2011_09_26_drive_0014_sync 0000000269 2011_09_26 2011_09_26_drive_0014_sync 0000000276 2011_09_26 2011_09_26_drive_0014_sync 0000000292 2011_09_26 2011_09_26_drive_0014_sync 0000000294 2011_09_26 2011_09_26_drive_0014_sync 0000000296 2011_09_26 2011_09_26_drive_0014_sync 0000000298 2011_09_26 2011_09_26_drive_0014_sync 0000000300 2011_09_26 2011_09_26_drive_0014_sync 0000000302 2011_09_26 2011_09_26_drive_0014_sync 0000000304 2011_09_26 2011_09_26_drive_0014_sync 0000000306 2011_09_26 2011_09_26_drive_0014_sync 0000000308 2011_09_26 2011_09_26_drive_0015_sync 0000000001 2011_09_26 2011_09_26_drive_0015_sync 0000000002 2011_09_26 2011_09_26_drive_0015_sync 0000000003 2011_09_26 2011_09_26_drive_0015_sync 0000000004 2011_09_26 2011_09_26_drive_0015_sync 0000000005 2011_09_26 2011_09_26_drive_0015_sync 0000000006 2011_09_26 2011_09_26_drive_0015_sync 0000000007 2011_09_26 2011_09_26_drive_0015_sync 0000000008 2011_09_26 2011_09_26_drive_0015_sync 0000000009 2011_09_26 2011_09_26_drive_0015_sync 0000000010 2011_09_26 2011_09_26_drive_0015_sync 0000000011 2011_09_26 2011_09_26_drive_0015_sync 0000000012 2011_09_26 2011_09_26_drive_0015_sync 0000000013 2011_09_26 2011_09_26_drive_0015_sync 0000000014 2011_09_26 2011_09_26_drive_0015_sync 0000000015 2011_09_26 2011_09_26_drive_0015_sync 0000000016 2011_09_26 2011_09_26_drive_0015_sync 0000000017 2011_09_26 2011_09_26_drive_0015_sync 0000000018 2011_09_26 2011_09_26_drive_0015_sync 0000000019 2011_09_26 2011_09_26_drive_0015_sync 0000000020 2011_09_26 2011_09_26_drive_0015_sync 0000000021 2011_09_26 2011_09_26_drive_0015_sync 0000000022 2011_09_26 2011_09_26_drive_0015_sync 0000000023 2011_09_26 2011_09_26_drive_0015_sync 0000000025 2011_09_26 2011_09_26_drive_0015_sync 0000000027 2011_09_26 2011_09_26_drive_0015_sync 0000000028 2011_09_26 2011_09_26_drive_0015_sync 0000000029 2011_09_26 2011_09_26_drive_0015_sync 0000000030 2011_09_26 2011_09_26_drive_0015_sync 0000000031 2011_09_26 2011_09_26_drive_0015_sync 0000000032 2011_09_26 2011_09_26_drive_0015_sync 0000000033 2011_09_26 2011_09_26_drive_0015_sync 0000000034 2011_09_26 2011_09_26_drive_0015_sync 0000000035 2011_09_26 2011_09_26_drive_0015_sync 0000000036 2011_09_26 2011_09_26_drive_0015_sync 0000000037 2011_09_26 2011_09_26_drive_0015_sync 0000000038 2011_09_26 2011_09_26_drive_0015_sync 0000000039 2011_09_26 2011_09_26_drive_0015_sync 0000000040 2011_09_26 2011_09_26_drive_0015_sync 0000000041 2011_09_26 2011_09_26_drive_0015_sync 0000000042 2011_09_26 2011_09_26_drive_0015_sync 0000000044 2011_09_26 2011_09_26_drive_0015_sync 0000000045 2011_09_26 2011_09_26_drive_0015_sync 0000000046 2011_09_26 2011_09_26_drive_0015_sync 0000000047 2011_09_26 2011_09_26_drive_0015_sync 0000000049 2011_09_26 2011_09_26_drive_0015_sync 0000000050 2011_09_26 2011_09_26_drive_0015_sync 0000000051 2011_09_26 2011_09_26_drive_0015_sync 0000000052 2011_09_26 2011_09_26_drive_0015_sync 0000000053 2011_09_26 2011_09_26_drive_0015_sync 0000000054 2011_09_26 2011_09_26_drive_0015_sync 0000000055 2011_09_26 2011_09_26_drive_0015_sync 0000000056 2011_09_26 2011_09_26_drive_0015_sync 0000000057 2011_09_26 2011_09_26_drive_0015_sync 0000000058 2011_09_26 2011_09_26_drive_0015_sync 0000000060 2011_09_26 2011_09_26_drive_0015_sync 0000000062 2011_09_26 2011_09_26_drive_0015_sync 0000000064 2011_09_26 2011_09_26_drive_0015_sync 0000000066 2011_09_26 2011_09_26_drive_0015_sync 0000000068 2011_09_26 2011_09_26_drive_0015_sync 0000000070 2011_09_26 2011_09_26_drive_0015_sync 0000000072 2011_09_26 2011_09_26_drive_0015_sync 0000000074 2011_09_26 2011_09_26_drive_0015_sync 0000000076 2011_09_26 2011_09_26_drive_0015_sync 0000000078 2011_09_26 2011_09_26_drive_0015_sync 0000000080 2011_09_26 2011_09_26_drive_0015_sync 0000000082 2011_09_26 2011_09_26_drive_0015_sync 0000000084 2011_09_26 2011_09_26_drive_0015_sync 0000000086 2011_09_26 2011_09_26_drive_0015_sync 0000000088 2011_09_26 2011_09_26_drive_0015_sync 0000000090 2011_09_26 2011_09_26_drive_0015_sync 0000000092 2011_09_26 2011_09_26_drive_0015_sync 0000000094 2011_09_26 2011_09_26_drive_0015_sync 0000000096 2011_09_26 2011_09_26_drive_0015_sync 0000000098 2011_09_26 2011_09_26_drive_0015_sync 0000000100 2011_09_26 2011_09_26_drive_0015_sync 0000000103 2011_09_26 2011_09_26_drive_0015_sync 0000000106 2011_09_26 2011_09_26_drive_0015_sync 0000000109 2011_09_26 2011_09_26_drive_0015_sync 0000000112 2011_09_26 2011_09_26_drive_0015_sync 0000000116 2011_09_26 2011_09_26_drive_0015_sync 0000000124 2011_09_26 2011_09_26_drive_0015_sync 0000000133 2011_09_26 2011_09_26_drive_0015_sync 0000000140 2011_09_26 2011_09_26_drive_0015_sync 0000000142 2011_09_26 2011_09_26_drive_0015_sync 0000000144 2011_09_26 2011_09_26_drive_0015_sync 0000000146 2011_09_26 2011_09_26_drive_0015_sync 0000000148 2011_09_26 2011_09_26_drive_0015_sync 0000000150 2011_09_26 2011_09_26_drive_0015_sync 0000000152 2011_09_26 2011_09_26_drive_0015_sync 0000000154 2011_09_26 2011_09_26_drive_0015_sync 0000000156 2011_09_26 2011_09_26_drive_0015_sync 0000000158 2011_09_26 2011_09_26_drive_0015_sync 0000000160 2011_09_26 2011_09_26_drive_0015_sync 0000000162 2011_09_26 2011_09_26_drive_0015_sync 0000000164 2011_09_26 2011_09_26_drive_0015_sync 0000000166 2011_09_26 2011_09_26_drive_0015_sync 0000000167 2011_09_26 2011_09_26_drive_0015_sync 0000000168 2011_09_26 2011_09_26_drive_0015_sync 0000000169 2011_09_26 2011_09_26_drive_0015_sync 0000000170 2011_09_26 2011_09_26_drive_0015_sync 0000000172 2011_09_26 2011_09_26_drive_0015_sync 0000000174 2011_09_26 2011_09_26_drive_0015_sync 0000000176 2011_09_26 2011_09_26_drive_0015_sync 0000000178 2011_09_26 2011_09_26_drive_0015_sync 0000000180 2011_09_26 2011_09_26_drive_0015_sync 0000000182 2011_09_26 2011_09_26_drive_0015_sync 0000000183 2011_09_26 2011_09_26_drive_0015_sync 0000000184 2011_09_26 2011_09_26_drive_0015_sync 0000000185 2011_09_26 2011_09_26_drive_0015_sync 0000000186 2011_09_26 2011_09_26_drive_0015_sync 0000000187 2011_09_26 2011_09_26_drive_0015_sync 0000000188 2011_09_26 2011_09_26_drive_0015_sync 0000000189 2011_09_26 2011_09_26_drive_0015_sync 0000000190 2011_09_26 2011_09_26_drive_0015_sync 0000000191 2011_09_26 2011_09_26_drive_0015_sync 0000000192 2011_09_26 2011_09_26_drive_0015_sync 0000000193 2011_09_26 2011_09_26_drive_0015_sync 0000000194 2011_09_26 2011_09_26_drive_0015_sync 0000000195 2011_09_26 2011_09_26_drive_0015_sync 0000000196 2011_09_26 2011_09_26_drive_0015_sync 0000000197 2011_09_26 2011_09_26_drive_0015_sync 0000000198 2011_09_26 2011_09_26_drive_0015_sync 0000000199 2011_09_26 2011_09_26_drive_0015_sync 0000000200 2011_09_26 2011_09_26_drive_0015_sync 0000000201 2011_09_26 2011_09_26_drive_0015_sync 0000000202 2011_09_26 2011_09_26_drive_0015_sync 0000000203 2011_09_26 2011_09_26_drive_0015_sync 0000000204 2011_09_26 2011_09_26_drive_0015_sync 0000000205 2011_09_26 2011_09_26_drive_0015_sync 0000000206 2011_09_26 2011_09_26_drive_0015_sync 0000000207 2011_09_26 2011_09_26_drive_0015_sync 0000000208 2011_09_26 2011_09_26_drive_0015_sync 0000000209 2011_09_26 2011_09_26_drive_0015_sync 0000000210 2011_09_26 2011_09_26_drive_0015_sync 0000000211 2011_09_26 2011_09_26_drive_0015_sync 0000000212 2011_09_26 2011_09_26_drive_0015_sync 0000000213 2011_09_26 2011_09_26_drive_0015_sync 0000000214 2011_09_26 2011_09_26_drive_0015_sync 0000000215 2011_09_26 2011_09_26_drive_0015_sync 0000000216 2011_09_26 2011_09_26_drive_0015_sync 0000000217 2011_09_26 2011_09_26_drive_0015_sync 0000000218 2011_09_26 2011_09_26_drive_0015_sync 0000000219 2011_09_26 2011_09_26_drive_0015_sync 0000000220 2011_09_26 2011_09_26_drive_0015_sync 0000000221 2011_09_26 2011_09_26_drive_0015_sync 0000000222 2011_09_26 2011_09_26_drive_0015_sync 0000000223 2011_09_26 2011_09_26_drive_0015_sync 0000000224 2011_09_26 2011_09_26_drive_0015_sync 0000000225 2011_09_26 2011_09_26_drive_0015_sync 0000000226 2011_09_26 2011_09_26_drive_0015_sync 0000000227 2011_09_26 2011_09_26_drive_0015_sync 0000000228 2011_09_26 2011_09_26_drive_0015_sync 0000000229 2011_09_26 2011_09_26_drive_0015_sync 0000000230 2011_09_26 2011_09_26_drive_0015_sync 0000000231 2011_09_26 2011_09_26_drive_0015_sync 0000000232 2011_09_26 2011_09_26_drive_0015_sync 0000000233 2011_09_26 2011_09_26_drive_0015_sync 0000000234 2011_09_26 2011_09_26_drive_0015_sync 0000000235 2011_09_26 2011_09_26_drive_0015_sync 0000000236 2011_09_26 2011_09_26_drive_0015_sync 0000000237 2011_09_26 2011_09_26_drive_0015_sync 0000000238 2011_09_26 2011_09_26_drive_0015_sync 0000000239 2011_09_26 2011_09_26_drive_0015_sync 0000000240 2011_09_26 2011_09_26_drive_0015_sync 0000000241 2011_09_26 2011_09_26_drive_0015_sync 0000000242 2011_09_26 2011_09_26_drive_0015_sync 0000000243 2011_09_26 2011_09_26_drive_0015_sync 0000000244 2011_09_26 2011_09_26_drive_0015_sync 0000000245 2011_09_26 2011_09_26_drive_0015_sync 0000000246 2011_09_26 2011_09_26_drive_0015_sync 0000000247 2011_09_26 2011_09_26_drive_0015_sync 0000000248 2011_09_26 2011_09_26_drive_0015_sync 0000000249 2011_09_26 2011_09_26_drive_0015_sync 0000000250 2011_09_26 2011_09_26_drive_0015_sync 0000000251 2011_09_26 2011_09_26_drive_0015_sync 0000000252 2011_09_26 2011_09_26_drive_0015_sync 0000000253 2011_09_26 2011_09_26_drive_0015_sync 0000000254 2011_09_26 2011_09_26_drive_0015_sync 0000000255 2011_09_26 2011_09_26_drive_0015_sync 0000000256 2011_09_26 2011_09_26_drive_0015_sync 0000000257 2011_09_26 2011_09_26_drive_0015_sync 0000000258 2011_09_26 2011_09_26_drive_0015_sync 0000000259 2011_09_26 2011_09_26_drive_0015_sync 0000000260 2011_09_26 2011_09_26_drive_0015_sync 0000000261 2011_09_26 2011_09_26_drive_0015_sync 0000000262 2011_09_26 2011_09_26_drive_0015_sync 0000000263 2011_09_26 2011_09_26_drive_0015_sync 0000000264 2011_09_26 2011_09_26_drive_0015_sync 0000000265 2011_09_26 2011_09_26_drive_0015_sync 0000000266 2011_09_26 2011_09_26_drive_0015_sync 0000000267 2011_09_26 2011_09_26_drive_0015_sync 0000000268 2011_09_26 2011_09_26_drive_0015_sync 0000000269 2011_09_26 2011_09_26_drive_0015_sync 0000000270 2011_09_26 2011_09_26_drive_0015_sync 0000000271 2011_09_26 2011_09_26_drive_0015_sync 0000000272 2011_09_26 2011_09_26_drive_0015_sync 0000000273 2011_09_26 2011_09_26_drive_0015_sync 0000000274 2011_09_26 2011_09_26_drive_0015_sync 0000000275 2011_09_26 2011_09_26_drive_0015_sync 0000000276 2011_09_26 2011_09_26_drive_0015_sync 0000000277 2011_09_26 2011_09_26_drive_0015_sync 0000000278 2011_09_26 2011_09_26_drive_0015_sync 0000000279 2011_09_26 2011_09_26_drive_0015_sync 0000000280 2011_09_26 2011_09_26_drive_0015_sync 0000000281 2011_09_26 2011_09_26_drive_0015_sync 0000000282 2011_09_26 2011_09_26_drive_0015_sync 0000000283 2011_09_26 2011_09_26_drive_0015_sync 0000000284 2011_09_26 2011_09_26_drive_0015_sync 0000000285 2011_09_26 2011_09_26_drive_0015_sync 0000000286 2011_09_26 2011_09_26_drive_0015_sync 0000000287 2011_09_26 2011_09_26_drive_0015_sync 0000000288 2011_09_26 2011_09_26_drive_0015_sync 0000000289 2011_09_26 2011_09_26_drive_0015_sync 0000000290 2011_09_26 2011_09_26_drive_0015_sync 0000000291 2011_09_26 2011_09_26_drive_0018_sync 0000000002 2011_09_26 2011_09_26_drive_0018_sync 0000000007 2011_09_26 2011_09_26_drive_0018_sync 0000000008 2011_09_26 2011_09_26_drive_0018_sync 0000000009 2011_09_26 2011_09_26_drive_0018_sync 0000000010 2011_09_26 2011_09_26_drive_0018_sync 0000000011 2011_09_26 2011_09_26_drive_0018_sync 0000000012 2011_09_26 2011_09_26_drive_0018_sync 0000000013 2011_09_26 2011_09_26_drive_0018_sync 0000000017 2011_09_26 2011_09_26_drive_0018_sync 0000000018 2011_09_26 2011_09_26_drive_0018_sync 0000000019 2011_09_26 2011_09_26_drive_0018_sync 0000000020 2011_09_26 2011_09_26_drive_0018_sync 0000000021 2011_09_26 2011_09_26_drive_0018_sync 0000000022 2011_09_26 2011_09_26_drive_0018_sync 0000000023 2011_09_26 2011_09_26_drive_0018_sync 0000000024 2011_09_26 2011_09_26_drive_0018_sync 0000000025 2011_09_26 2011_09_26_drive_0018_sync 0000000026 2011_09_26 2011_09_26_drive_0018_sync 0000000027 2011_09_26 2011_09_26_drive_0018_sync 0000000028 2011_09_26 2011_09_26_drive_0018_sync 0000000029 2011_09_26 2011_09_26_drive_0018_sync 0000000030 2011_09_26 2011_09_26_drive_0018_sync 0000000031 2011_09_26 2011_09_26_drive_0018_sync 0000000032 2011_09_26 2011_09_26_drive_0018_sync 0000000033 2011_09_26 2011_09_26_drive_0018_sync 0000000034 2011_09_26 2011_09_26_drive_0018_sync 0000000035 2011_09_26 2011_09_26_drive_0018_sync 0000000037 2011_09_26 2011_09_26_drive_0018_sync 0000000039 2011_09_26 2011_09_26_drive_0018_sync 0000000040 2011_09_26 2011_09_26_drive_0018_sync 0000000041 2011_09_26 2011_09_26_drive_0018_sync 0000000043 2011_09_26 2011_09_26_drive_0018_sync 0000000045 2011_09_26 2011_09_26_drive_0018_sync 0000000046 2011_09_26 2011_09_26_drive_0018_sync 0000000048 2011_09_26 2011_09_26_drive_0018_sync 0000000050 2011_09_26 2011_09_26_drive_0018_sync 0000000052 2011_09_26 2011_09_26_drive_0018_sync 0000000054 2011_09_26 2011_09_26_drive_0018_sync 0000000056 2011_09_26 2011_09_26_drive_0018_sync 0000000058 2011_09_26 2011_09_26_drive_0018_sync 0000000060 2011_09_26 2011_09_26_drive_0018_sync 0000000062 2011_09_26 2011_09_26_drive_0018_sync 0000000063 2011_09_26 2011_09_26_drive_0018_sync 0000000064 2011_09_26 2011_09_26_drive_0018_sync 0000000065 2011_09_26 2011_09_26_drive_0018_sync 0000000066 2011_09_26 2011_09_26_drive_0018_sync 0000000067 2011_09_26 2011_09_26_drive_0018_sync 0000000068 2011_09_26 2011_09_26_drive_0018_sync 0000000069 2011_09_26 2011_09_26_drive_0018_sync 0000000071 2011_09_26 2011_09_26_drive_0018_sync 0000000072 2011_09_26 2011_09_26_drive_0018_sync 0000000073 2011_09_26 2011_09_26_drive_0018_sync 0000000074 2011_09_26 2011_09_26_drive_0018_sync 0000000075 2011_09_26 2011_09_26_drive_0018_sync 0000000076 2011_09_26 2011_09_26_drive_0018_sync 0000000077 2011_09_26 2011_09_26_drive_0018_sync 0000000078 2011_09_26 2011_09_26_drive_0018_sync 0000000079 2011_09_26 2011_09_26_drive_0018_sync 0000000080 2011_09_26 2011_09_26_drive_0018_sync 0000000081 2011_09_26 2011_09_26_drive_0018_sync 0000000082 2011_09_26 2011_09_26_drive_0018_sync 0000000083 2011_09_26 2011_09_26_drive_0018_sync 0000000084 2011_09_26 2011_09_26_drive_0018_sync 0000000085 2011_09_26 2011_09_26_drive_0018_sync 0000000087 2011_09_26 2011_09_26_drive_0018_sync 0000000088 2011_09_26 2011_09_26_drive_0018_sync 0000000089 2011_09_26 2011_09_26_drive_0018_sync 0000000090 2011_09_26 2011_09_26_drive_0018_sync 0000000091 2011_09_26 2011_09_26_drive_0018_sync 0000000092 2011_09_26 2011_09_26_drive_0018_sync 0000000093 2011_09_26 2011_09_26_drive_0018_sync 0000000094 2011_09_26 2011_09_26_drive_0018_sync 0000000095 2011_09_26 2011_09_26_drive_0018_sync 0000000096 2011_09_26 2011_09_26_drive_0018_sync 0000000097 2011_09_26 2011_09_26_drive_0018_sync 0000000098 2011_09_26 2011_09_26_drive_0018_sync 0000000099 2011_09_26 2011_09_26_drive_0018_sync 0000000100 2011_09_26 2011_09_26_drive_0018_sync 0000000101 2011_09_26 2011_09_26_drive_0018_sync 0000000103 2011_09_26 2011_09_26_drive_0018_sync 0000000104 2011_09_26 2011_09_26_drive_0018_sync 0000000105 2011_09_26 2011_09_26_drive_0018_sync 0000000106 2011_09_26 2011_09_26_drive_0018_sync 0000000107 2011_09_26 2011_09_26_drive_0018_sync 0000000108 2011_09_26 2011_09_26_drive_0018_sync 0000000109 2011_09_26 2011_09_26_drive_0018_sync 0000000110 2011_09_26 2011_09_26_drive_0018_sync 0000000111 2011_09_26 2011_09_26_drive_0018_sync 0000000112 2011_09_26 2011_09_26_drive_0018_sync 0000000113 2011_09_26 2011_09_26_drive_0018_sync 0000000114 2011_09_26 2011_09_26_drive_0018_sync 0000000116 2011_09_26 2011_09_26_drive_0018_sync 0000000117 2011_09_26 2011_09_26_drive_0018_sync 0000000118 2011_09_26 2011_09_26_drive_0018_sync 0000000119 2011_09_26 2011_09_26_drive_0018_sync 0000000120 2011_09_26 2011_09_26_drive_0018_sync 0000000121 2011_09_26 2011_09_26_drive_0018_sync 0000000122 2011_09_26 2011_09_26_drive_0018_sync 0000000124 2011_09_26 2011_09_26_drive_0018_sync 0000000125 2011_09_26 2011_09_26_drive_0018_sync 0000000126 2011_09_26 2011_09_26_drive_0018_sync 0000000127 2011_09_26 2011_09_26_drive_0018_sync 0000000128 2011_09_26 2011_09_26_drive_0018_sync 0000000129 2011_09_26 2011_09_26_drive_0018_sync 0000000130 2011_09_26 2011_09_26_drive_0018_sync 0000000131 2011_09_26 2011_09_26_drive_0018_sync 0000000132 2011_09_26 2011_09_26_drive_0018_sync 0000000133 2011_09_26 2011_09_26_drive_0018_sync 0000000134 2011_09_26 2011_09_26_drive_0018_sync 0000000135 2011_09_26 2011_09_26_drive_0018_sync 0000000136 2011_09_26 2011_09_26_drive_0018_sync 0000000137 2011_09_26 2011_09_26_drive_0018_sync 0000000138 2011_09_26 2011_09_26_drive_0018_sync 0000000139 2011_09_26 2011_09_26_drive_0018_sync 0000000140 2011_09_26 2011_09_26_drive_0018_sync 0000000141 2011_09_26 2011_09_26_drive_0018_sync 0000000142 2011_09_26 2011_09_26_drive_0018_sync 0000000143 2011_09_26 2011_09_26_drive_0018_sync 0000000144 2011_09_26 2011_09_26_drive_0018_sync 0000000146 2011_09_26 2011_09_26_drive_0018_sync 0000000148 2011_09_26 2011_09_26_drive_0018_sync 0000000150 2011_09_26 2011_09_26_drive_0018_sync 0000000152 2011_09_26 2011_09_26_drive_0018_sync 0000000154 2011_09_26 2011_09_26_drive_0018_sync 0000000156 2011_09_26 2011_09_26_drive_0018_sync 0000000158 2011_09_26 2011_09_26_drive_0018_sync 0000000160 2011_09_26 2011_09_26_drive_0018_sync 0000000162 2011_09_26 2011_09_26_drive_0018_sync 0000000164 2011_09_26 2011_09_26_drive_0018_sync 0000000166 2011_09_26 2011_09_26_drive_0018_sync 0000000168 2011_09_26 2011_09_26_drive_0018_sync 0000000170 2011_09_26 2011_09_26_drive_0018_sync 0000000172 2011_09_26 2011_09_26_drive_0018_sync 0000000174 2011_09_26 2011_09_26_drive_0018_sync 0000000176 2011_09_26 2011_09_26_drive_0018_sync 0000000178 2011_09_26 2011_09_26_drive_0018_sync 0000000180 2011_09_26 2011_09_26_drive_0018_sync 0000000182 2011_09_26 2011_09_26_drive_0018_sync 0000000185 2011_09_26 2011_09_26_drive_0018_sync 0000000190 2011_09_26 2011_09_26_drive_0018_sync 0000000194 2011_09_26 2011_09_26_drive_0018_sync 0000000198 2011_09_26 2011_09_26_drive_0018_sync 0000000201 2011_09_26 2011_09_26_drive_0018_sync 0000000204 2011_09_26 2011_09_26_drive_0018_sync 0000000207 2011_09_26 2011_09_26_drive_0018_sync 0000000209 2011_09_26 2011_09_26_drive_0018_sync 0000000211 2011_09_26 2011_09_26_drive_0018_sync 0000000213 2011_09_26 2011_09_26_drive_0018_sync 0000000215 2011_09_26 2011_09_26_drive_0018_sync 0000000216 2011_09_26 2011_09_26_drive_0018_sync 0000000217 2011_09_26 2011_09_26_drive_0018_sync 0000000218 2011_09_26 2011_09_26_drive_0018_sync 0000000219 2011_09_26 2011_09_26_drive_0018_sync 0000000220 2011_09_26 2011_09_26_drive_0028_sync 0000000057 2011_09_26 2011_09_26_drive_0028_sync 0000000058 2011_09_26 2011_09_26_drive_0028_sync 0000000059 2011_09_26 2011_09_26_drive_0028_sync 0000000060 2011_09_26 2011_09_26_drive_0028_sync 0000000061 2011_09_26 2011_09_26_drive_0028_sync 0000000062 2011_09_26 2011_09_26_drive_0028_sync 0000000063 2011_09_26 2011_09_26_drive_0028_sync 0000000064 2011_09_26 2011_09_26_drive_0028_sync 0000000065 2011_09_26 2011_09_26_drive_0028_sync 0000000066 2011_09_26 2011_09_26_drive_0028_sync 0000000067 2011_09_26 2011_09_26_drive_0028_sync 0000000068 2011_09_26 2011_09_26_drive_0028_sync 0000000069 2011_09_26 2011_09_26_drive_0028_sync 0000000070 2011_09_26 2011_09_26_drive_0028_sync 0000000071 2011_09_26 2011_09_26_drive_0028_sync 0000000072 2011_09_26 2011_09_26_drive_0028_sync 0000000073 2011_09_26 2011_09_26_drive_0028_sync 0000000074 2011_09_26 2011_09_26_drive_0028_sync 0000000102 2011_09_26 2011_09_26_drive_0028_sync 0000000103 2011_09_26 2011_09_26_drive_0028_sync 0000000104 2011_09_26 2011_09_26_drive_0028_sync 0000000105 2011_09_26 2011_09_26_drive_0028_sync 0000000106 2011_09_26 2011_09_26_drive_0028_sync 0000000107 2011_09_26 2011_09_26_drive_0028_sync 0000000108 2011_09_26 2011_09_26_drive_0028_sync 0000000109 2011_09_26 2011_09_26_drive_0028_sync 0000000110 2011_09_26 2011_09_26_drive_0028_sync 0000000111 2011_09_26 2011_09_26_drive_0028_sync 0000000112 2011_09_26 2011_09_26_drive_0028_sync 0000000113 2011_09_26 2011_09_26_drive_0028_sync 0000000114 2011_09_26 2011_09_26_drive_0028_sync 0000000115 2011_09_26 2011_09_26_drive_0028_sync 0000000116 2011_09_26 2011_09_26_drive_0028_sync 0000000117 2011_09_26 2011_09_26_drive_0028_sync 0000000118 2011_09_26 2011_09_26_drive_0028_sync 0000000119 2011_09_26 2011_09_26_drive_0028_sync 0000000120 2011_09_26 2011_09_26_drive_0028_sync 0000000216 2011_09_26 2011_09_26_drive_0028_sync 0000000217 2011_09_26 2011_09_26_drive_0028_sync 0000000218 2011_09_26 2011_09_26_drive_0028_sync 0000000219 2011_09_26 2011_09_26_drive_0028_sync 0000000220 2011_09_26 2011_09_26_drive_0028_sync 0000000221 2011_09_26 2011_09_26_drive_0028_sync 0000000222 2011_09_26 2011_09_26_drive_0028_sync 0000000223 2011_09_26 2011_09_26_drive_0028_sync 0000000224 2011_09_26 2011_09_26_drive_0028_sync 0000000225 2011_09_26 2011_09_26_drive_0028_sync 0000000226 2011_09_26 2011_09_26_drive_0028_sync 0000000227 2011_09_26 2011_09_26_drive_0028_sync 0000000228 2011_09_26 2011_09_26_drive_0028_sync 0000000229 2011_09_26 2011_09_26_drive_0028_sync 0000000230 2011_09_26 2011_09_26_drive_0028_sync 0000000231 2011_09_26 2011_09_26_drive_0028_sync 0000000232 2011_09_26 2011_09_26_drive_0028_sync 0000000233 2011_09_26 2011_09_26_drive_0028_sync 0000000255 2011_09_26 2011_09_26_drive_0028_sync 0000000256 2011_09_26 2011_09_26_drive_0028_sync 0000000257 2011_09_26 2011_09_26_drive_0028_sync 0000000258 2011_09_26 2011_09_26_drive_0028_sync 0000000259 2011_09_26 2011_09_26_drive_0028_sync 0000000260 2011_09_26 2011_09_26_drive_0028_sync 0000000261 2011_09_26 2011_09_26_drive_0028_sync 0000000262 2011_09_26 2011_09_26_drive_0028_sync 0000000263 2011_09_26 2011_09_26_drive_0028_sync 0000000264 2011_09_26 2011_09_26_drive_0028_sync 0000000265 2011_09_26 2011_09_26_drive_0028_sync 0000000266 2011_09_26 2011_09_26_drive_0028_sync 0000000267 2011_09_26 2011_09_26_drive_0028_sync 0000000268 2011_09_26 2011_09_26_drive_0028_sync 0000000269 2011_09_26 2011_09_26_drive_0028_sync 0000000270 2011_09_26 2011_09_26_drive_0028_sync 0000000271 2011_09_26 2011_09_26_drive_0028_sync 0000000272 2011_09_26 2011_09_26_drive_0028_sync 0000000273 2011_09_26 2011_09_26_drive_0028_sync 0000000274 2011_09_26 2011_09_26_drive_0028_sync 0000000275 2011_09_26 2011_09_26_drive_0028_sync 0000000276 2011_09_26 2011_09_26_drive_0028_sync 0000000277 2011_09_26 2011_09_26_drive_0028_sync 0000000278 2011_09_26 2011_09_26_drive_0028_sync 0000000279 2011_09_26 2011_09_26_drive_0028_sync 0000000280 2011_09_26 2011_09_26_drive_0028_sync 0000000281 2011_09_26 2011_09_26_drive_0028_sync 0000000282 2011_09_26 2011_09_26_drive_0028_sync 0000000283 2011_09_26 2011_09_26_drive_0028_sync 0000000284 2011_09_26 2011_09_26_drive_0028_sync 0000000285 2011_09_26 2011_09_26_drive_0028_sync 0000000286 2011_09_26 2011_09_26_drive_0028_sync 0000000287 2011_09_26 2011_09_26_drive_0028_sync 0000000288 2011_09_26 2011_09_26_drive_0028_sync 0000000289 2011_09_26 2011_09_26_drive_0028_sync 0000000290 2011_09_26 2011_09_26_drive_0028_sync 0000000291 2011_09_26 2011_09_26_drive_0028_sync 0000000292 2011_09_26 2011_09_26_drive_0028_sync 0000000293 2011_09_26 2011_09_26_drive_0028_sync 0000000294 2011_09_26 2011_09_26_drive_0028_sync 0000000295 2011_09_26 2011_09_26_drive_0028_sync 0000000296 2011_09_26 2011_09_26_drive_0028_sync 0000000297 2011_09_26 2011_09_26_drive_0028_sync 0000000298 2011_09_26 2011_09_26_drive_0028_sync 0000000299 2011_09_26 2011_09_26_drive_0028_sync 0000000300 2011_09_26 2011_09_26_drive_0028_sync 0000000301 2011_09_26 2011_09_26_drive_0028_sync 0000000302 2011_09_26 2011_09_26_drive_0028_sync 0000000303 2011_09_26 2011_09_26_drive_0028_sync 0000000304 2011_09_26 2011_09_26_drive_0028_sync 0000000305 2011_09_26 2011_09_26_drive_0028_sync 0000000306 2011_09_26 2011_09_26_drive_0028_sync 0000000307 2011_09_26 2011_09_26_drive_0028_sync 0000000308 2011_09_26 2011_09_26_drive_0028_sync 0000000309 2011_09_26 2011_09_26_drive_0028_sync 0000000310 2011_09_26 2011_09_26_drive_0028_sync 0000000311 2011_09_26 2011_09_26_drive_0028_sync 0000000312 2011_09_26 2011_09_26_drive_0028_sync 0000000313 2011_09_26 2011_09_26_drive_0028_sync 0000000314 2011_09_26 2011_09_26_drive_0028_sync 0000000365 2011_09_26 2011_09_26_drive_0028_sync 0000000366 2011_09_26 2011_09_26_drive_0028_sync 0000000367 2011_09_26 2011_09_26_drive_0028_sync 0000000368 2011_09_26 2011_09_26_drive_0028_sync 0000000369 2011_09_26 2011_09_26_drive_0028_sync 0000000370 2011_09_26 2011_09_26_drive_0028_sync 0000000371 2011_09_26 2011_09_26_drive_0028_sync 0000000372 2011_09_26 2011_09_26_drive_0028_sync 0000000373 2011_09_26 2011_09_26_drive_0028_sync 0000000374 2011_09_26 2011_09_26_drive_0028_sync 0000000375 2011_09_26 2011_09_26_drive_0028_sync 0000000376 2011_09_26 2011_09_26_drive_0028_sync 0000000377 2011_09_26 2011_09_26_drive_0028_sync 0000000378 2011_09_26 2011_09_26_drive_0028_sync 0000000379 2011_09_26 2011_09_26_drive_0028_sync 0000000380 2011_09_26 2011_09_26_drive_0032_sync 0000000002 2011_09_26 2011_09_26_drive_0032_sync 0000000003 2011_09_26 2011_09_26_drive_0032_sync 0000000004 2011_09_26 2011_09_26_drive_0032_sync 0000000005 2011_09_26 2011_09_26_drive_0032_sync 0000000006 2011_09_26 2011_09_26_drive_0032_sync 0000000007 2011_09_26 2011_09_26_drive_0032_sync 0000000008 2011_09_26 2011_09_26_drive_0032_sync 0000000009 2011_09_26 2011_09_26_drive_0032_sync 0000000010 2011_09_26 2011_09_26_drive_0032_sync 0000000011 2011_09_26 2011_09_26_drive_0032_sync 0000000012 2011_09_26 2011_09_26_drive_0032_sync 0000000013 2011_09_26 2011_09_26_drive_0032_sync 0000000014 2011_09_26 2011_09_26_drive_0032_sync 0000000015 2011_09_26 2011_09_26_drive_0032_sync 0000000016 2011_09_26 2011_09_26_drive_0032_sync 0000000017 2011_09_26 2011_09_26_drive_0032_sync 0000000018 2011_09_26 2011_09_26_drive_0032_sync 0000000019 2011_09_26 2011_09_26_drive_0032_sync 0000000020 2011_09_26 2011_09_26_drive_0032_sync 0000000021 2011_09_26 2011_09_26_drive_0032_sync 0000000022 2011_09_26 2011_09_26_drive_0032_sync 0000000023 2011_09_26 2011_09_26_drive_0032_sync 0000000025 2011_09_26 2011_09_26_drive_0032_sync 0000000027 2011_09_26 2011_09_26_drive_0032_sync 0000000029 2011_09_26 2011_09_26_drive_0032_sync 0000000031 2011_09_26 2011_09_26_drive_0032_sync 0000000033 2011_09_26 2011_09_26_drive_0032_sync 0000000035 2011_09_26 2011_09_26_drive_0032_sync 0000000037 2011_09_26 2011_09_26_drive_0032_sync 0000000039 2011_09_26 2011_09_26_drive_0032_sync 0000000041 2011_09_26 2011_09_26_drive_0032_sync 0000000043 2011_09_26 2011_09_26_drive_0032_sync 0000000045 2011_09_26 2011_09_26_drive_0032_sync 0000000047 2011_09_26 2011_09_26_drive_0032_sync 0000000049 2011_09_26 2011_09_26_drive_0032_sync 0000000051 2011_09_26 2011_09_26_drive_0032_sync 0000000053 2011_09_26 2011_09_26_drive_0032_sync 0000000055 2011_09_26 2011_09_26_drive_0032_sync 0000000057 2011_09_26 2011_09_26_drive_0032_sync 0000000063 2011_09_26 2011_09_26_drive_0032_sync 0000000071 2011_09_26 2011_09_26_drive_0032_sync 0000000080 2011_09_26 2011_09_26_drive_0032_sync 0000000081 2011_09_26 2011_09_26_drive_0032_sync 0000000082 2011_09_26 2011_09_26_drive_0032_sync 0000000083 2011_09_26 2011_09_26_drive_0032_sync 0000000084 2011_09_26 2011_09_26_drive_0032_sync 0000000085 2011_09_26 2011_09_26_drive_0032_sync 0000000086 2011_09_26 2011_09_26_drive_0032_sync 0000000087 2011_09_26 2011_09_26_drive_0032_sync 0000000088 2011_09_26 2011_09_26_drive_0032_sync 0000000089 2011_09_26 2011_09_26_drive_0032_sync 0000000090 2011_09_26 2011_09_26_drive_0032_sync 0000000091 2011_09_26 2011_09_26_drive_0032_sync 0000000092 2011_09_26 2011_09_26_drive_0032_sync 0000000093 2011_09_26 2011_09_26_drive_0032_sync 0000000094 2011_09_26 2011_09_26_drive_0032_sync 0000000095 2011_09_26 2011_09_26_drive_0032_sync 0000000096 2011_09_26 2011_09_26_drive_0032_sync 0000000097 2011_09_26 2011_09_26_drive_0032_sync 0000000098 2011_09_26 2011_09_26_drive_0032_sync 0000000099 2011_09_26 2011_09_26_drive_0032_sync 0000000100 2011_09_26 2011_09_26_drive_0032_sync 0000000101 2011_09_26 2011_09_26_drive_0032_sync 0000000102 2011_09_26 2011_09_26_drive_0032_sync 0000000103 2011_09_26 2011_09_26_drive_0032_sync 0000000104 2011_09_26 2011_09_26_drive_0032_sync 0000000105 2011_09_26 2011_09_26_drive_0032_sync 0000000106 2011_09_26 2011_09_26_drive_0032_sync 0000000107 2011_09_26 2011_09_26_drive_0032_sync 0000000108 2011_09_26 2011_09_26_drive_0032_sync 0000000109 2011_09_26 2011_09_26_drive_0032_sync 0000000110 2011_09_26 2011_09_26_drive_0032_sync 0000000111 2011_09_26 2011_09_26_drive_0032_sync 0000000112 2011_09_26 2011_09_26_drive_0032_sync 0000000113 2011_09_26 2011_09_26_drive_0032_sync 0000000114 2011_09_26 2011_09_26_drive_0032_sync 0000000115 2011_09_26 2011_09_26_drive_0032_sync 0000000116 2011_09_26 2011_09_26_drive_0032_sync 0000000117 2011_09_26 2011_09_26_drive_0032_sync 0000000118 2011_09_26 2011_09_26_drive_0032_sync 0000000119 2011_09_26 2011_09_26_drive_0032_sync 0000000120 2011_09_26 2011_09_26_drive_0032_sync 0000000121 2011_09_26 2011_09_26_drive_0032_sync 0000000122 2011_09_26 2011_09_26_drive_0032_sync 0000000123 2011_09_26 2011_09_26_drive_0032_sync 0000000124 2011_09_26 2011_09_26_drive_0032_sync 0000000125 2011_09_26 2011_09_26_drive_0032_sync 0000000126 2011_09_26 2011_09_26_drive_0032_sync 0000000127 2011_09_26 2011_09_26_drive_0032_sync 0000000128 2011_09_26 2011_09_26_drive_0032_sync 0000000130 2011_09_26 2011_09_26_drive_0032_sync 0000000132 2011_09_26 2011_09_26_drive_0032_sync 0000000134 2011_09_26 2011_09_26_drive_0032_sync 0000000136 2011_09_26 2011_09_26_drive_0032_sync 0000000138 2011_09_26 2011_09_26_drive_0032_sync 0000000140 2011_09_26 2011_09_26_drive_0032_sync 0000000142 2011_09_26 2011_09_26_drive_0032_sync 0000000144 2011_09_26 2011_09_26_drive_0032_sync 0000000146 2011_09_26 2011_09_26_drive_0032_sync 0000000148 2011_09_26 2011_09_26_drive_0032_sync 0000000150 2011_09_26 2011_09_26_drive_0032_sync 0000000152 2011_09_26 2011_09_26_drive_0032_sync 0000000154 2011_09_26 2011_09_26_drive_0032_sync 0000000156 2011_09_26 2011_09_26_drive_0032_sync 0000000158 2011_09_26 2011_09_26_drive_0032_sync 0000000160 2011_09_26 2011_09_26_drive_0032_sync 0000000162 2011_09_26 2011_09_26_drive_0032_sync 0000000164 2011_09_26 2011_09_26_drive_0032_sync 0000000166 2011_09_26 2011_09_26_drive_0032_sync 0000000168 2011_09_26 2011_09_26_drive_0032_sync 0000000171 2011_09_26 2011_09_26_drive_0032_sync 0000000174 2011_09_26 2011_09_26_drive_0032_sync 0000000177 2011_09_26 2011_09_26_drive_0032_sync 0000000180 2011_09_26 2011_09_26_drive_0032_sync 0000000183 2011_09_26 2011_09_26_drive_0032_sync 0000000186 2011_09_26 2011_09_26_drive_0032_sync 0000000189 2011_09_26 2011_09_26_drive_0032_sync 0000000192 2011_09_26 2011_09_26_drive_0032_sync 0000000196 2011_09_26 2011_09_26_drive_0032_sync 0000000200 2011_09_26 2011_09_26_drive_0032_sync 0000000203 2011_09_26 2011_09_26_drive_0032_sync 0000000204 2011_09_26 2011_09_26_drive_0032_sync 0000000205 2011_09_26 2011_09_26_drive_0032_sync 0000000206 2011_09_26 2011_09_26_drive_0032_sync 0000000207 2011_09_26 2011_09_26_drive_0032_sync 0000000208 2011_09_26 2011_09_26_drive_0032_sync 0000000210 2011_09_26 2011_09_26_drive_0032_sync 0000000212 2011_09_26 2011_09_26_drive_0032_sync 0000000214 2011_09_26 2011_09_26_drive_0032_sync 0000000216 2011_09_26 2011_09_26_drive_0032_sync 0000000217 2011_09_26 2011_09_26_drive_0032_sync 0000000218 2011_09_26 2011_09_26_drive_0032_sync 0000000220 2011_09_26 2011_09_26_drive_0032_sync 0000000222 2011_09_26 2011_09_26_drive_0032_sync 0000000224 2011_09_26 2011_09_26_drive_0032_sync 0000000226 2011_09_26 2011_09_26_drive_0032_sync 0000000227 2011_09_26 2011_09_26_drive_0032_sync 0000000228 2011_09_26 2011_09_26_drive_0032_sync 0000000229 2011_09_26 2011_09_26_drive_0032_sync 0000000230 2011_09_26 2011_09_26_drive_0032_sync 0000000231 2011_09_26 2011_09_26_drive_0032_sync 0000000232 2011_09_26 2011_09_26_drive_0032_sync 0000000233 2011_09_26 2011_09_26_drive_0032_sync 0000000235 2011_09_26 2011_09_26_drive_0032_sync 0000000237 2011_09_26 2011_09_26_drive_0032_sync 0000000239 2011_09_26 2011_09_26_drive_0032_sync 0000000244 2011_09_26 2011_09_26_drive_0032_sync 0000000249 2011_09_26 2011_09_26_drive_0032_sync 0000000253 2011_09_26 2011_09_26_drive_0032_sync 0000000258 2011_09_26 2011_09_26_drive_0032_sync 0000000262 2011_09_26 2011_09_26_drive_0032_sync 0000000265 2011_09_26 2011_09_26_drive_0032_sync 0000000270 2011_09_26 2011_09_26_drive_0032_sync 0000000275 2011_09_26 2011_09_26_drive_0032_sync 0000000279 2011_09_26 2011_09_26_drive_0032_sync 0000000285 2011_09_26 2011_09_26_drive_0032_sync 0000000291 2011_09_26 2011_09_26_drive_0032_sync 0000000293 2011_09_26 2011_09_26_drive_0032_sync 0000000295 2011_09_26 2011_09_26_drive_0032_sync 0000000297 2011_09_26 2011_09_26_drive_0032_sync 0000000298 2011_09_26 2011_09_26_drive_0032_sync 0000000299 2011_09_26 2011_09_26_drive_0032_sync 0000000300 2011_09_26 2011_09_26_drive_0032_sync 0000000301 2011_09_26 2011_09_26_drive_0032_sync 0000000302 2011_09_26 2011_09_26_drive_0032_sync 0000000303 2011_09_26 2011_09_26_drive_0032_sync 0000000304 2011_09_26 2011_09_26_drive_0032_sync 0000000305 2011_09_26 2011_09_26_drive_0032_sync 0000000306 2011_09_26 2011_09_26_drive_0032_sync 0000000307 2011_09_26 2011_09_26_drive_0032_sync 0000000321 2011_09_26 2011_09_26_drive_0032_sync 0000000329 2011_09_26 2011_09_26_drive_0032_sync 0000000336 2011_09_26 2011_09_26_drive_0032_sync 0000000338 2011_09_26 2011_09_26_drive_0032_sync 0000000340 2011_09_26 2011_09_26_drive_0032_sync 0000000348 2011_09_26 2011_09_26_drive_0032_sync 0000000350 2011_09_26 2011_09_26_drive_0032_sync 0000000352 2011_09_26 2011_09_26_drive_0032_sync 0000000355 2011_09_26 2011_09_26_drive_0032_sync 0000000361 2011_09_26 2011_09_26_drive_0032_sync 0000000367 2011_09_26 2011_09_26_drive_0032_sync 0000000371 2011_09_26 2011_09_26_drive_0032_sync 0000000374 2011_09_26 2011_09_26_drive_0032_sync 0000000377 2011_09_26 2011_09_26_drive_0032_sync 0000000385 2011_09_26 2011_09_26_drive_0032_sync 0000000387 2011_09_26 2011_09_26_drive_0032_sync 0000000389 2011_09_26 2011_09_26_drive_0051_sync 0000000001 2011_09_26 2011_09_26_drive_0051_sync 0000000002 2011_09_26 2011_09_26_drive_0051_sync 0000000003 2011_09_26 2011_09_26_drive_0051_sync 0000000004 2011_09_26 2011_09_26_drive_0051_sync 0000000005 2011_09_26 2011_09_26_drive_0051_sync 0000000006 2011_09_26 2011_09_26_drive_0051_sync 0000000007 2011_09_26 2011_09_26_drive_0051_sync 0000000008 2011_09_26 2011_09_26_drive_0051_sync 0000000009 2011_09_26 2011_09_26_drive_0051_sync 0000000010 2011_09_26 2011_09_26_drive_0051_sync 0000000011 2011_09_26 2011_09_26_drive_0051_sync 0000000012 2011_09_26 2011_09_26_drive_0051_sync 0000000013 2011_09_26 2011_09_26_drive_0051_sync 0000000014 2011_09_26 2011_09_26_drive_0051_sync 0000000015 2011_09_26 2011_09_26_drive_0051_sync 0000000016 2011_09_26 2011_09_26_drive_0051_sync 0000000017 2011_09_26 2011_09_26_drive_0051_sync 0000000018 2011_09_26 2011_09_26_drive_0051_sync 0000000019 2011_09_26 2011_09_26_drive_0051_sync 0000000020 2011_09_26 2011_09_26_drive_0051_sync 0000000021 2011_09_26 2011_09_26_drive_0051_sync 0000000022 2011_09_26 2011_09_26_drive_0051_sync 0000000023 2011_09_26 2011_09_26_drive_0051_sync 0000000024 2011_09_26 2011_09_26_drive_0051_sync 0000000025 2011_09_26 2011_09_26_drive_0051_sync 0000000039 2011_09_26 2011_09_26_drive_0051_sync 0000000040 2011_09_26 2011_09_26_drive_0051_sync 0000000041 2011_09_26 2011_09_26_drive_0051_sync 0000000042 2011_09_26 2011_09_26_drive_0051_sync 0000000057 2011_09_26 2011_09_26_drive_0051_sync 0000000058 2011_09_26 2011_09_26_drive_0051_sync 0000000059 2011_09_26 2011_09_26_drive_0051_sync 0000000064 2011_09_26 2011_09_26_drive_0051_sync 0000000065 2011_09_26 2011_09_26_drive_0051_sync 0000000066 2011_09_26 2011_09_26_drive_0051_sync 0000000113 2011_09_26 2011_09_26_drive_0051_sync 0000000121 2011_09_26 2011_09_26_drive_0051_sync 0000000122 2011_09_26 2011_09_26_drive_0051_sync 0000000124 2011_09_26 2011_09_26_drive_0051_sync 0000000127 2011_09_26 2011_09_26_drive_0051_sync 0000000131 2011_09_26 2011_09_26_drive_0051_sync 0000000137 2011_09_26 2011_09_26_drive_0051_sync 0000000139 2011_09_26 2011_09_26_drive_0051_sync 0000000141 2011_09_26 2011_09_26_drive_0051_sync 0000000143 2011_09_26 2011_09_26_drive_0051_sync 0000000145 2011_09_26 2011_09_26_drive_0051_sync 0000000146 2011_09_26 2011_09_26_drive_0051_sync 0000000148 2011_09_26 2011_09_26_drive_0051_sync 0000000153 2011_09_26 2011_09_26_drive_0051_sync 0000000156 2011_09_26 2011_09_26_drive_0051_sync 0000000158 2011_09_26 2011_09_26_drive_0051_sync 0000000164 2011_09_26 2011_09_26_drive_0051_sync 0000000167 2011_09_26 2011_09_26_drive_0051_sync 0000000171 2011_09_26 2011_09_26_drive_0051_sync 0000000176 2011_09_26 2011_09_26_drive_0051_sync 0000000180 2011_09_26 2011_09_26_drive_0051_sync 0000000184 2011_09_26 2011_09_26_drive_0051_sync 0000000186 2011_09_26 2011_09_26_drive_0051_sync 0000000190 2011_09_26 2011_09_26_drive_0051_sync 0000000197 2011_09_26 2011_09_26_drive_0051_sync 0000000213 2011_09_26 2011_09_26_drive_0051_sync 0000000216 2011_09_26 2011_09_26_drive_0051_sync 0000000221 2011_09_26 2011_09_26_drive_0051_sync 0000000223 2011_09_26 2011_09_26_drive_0051_sync 0000000225 2011_09_26 2011_09_26_drive_0051_sync 0000000233 2011_09_26 2011_09_26_drive_0051_sync 0000000235 2011_09_26 2011_09_26_drive_0051_sync 0000000238 2011_09_26 2011_09_26_drive_0051_sync 0000000249 2011_09_26 2011_09_26_drive_0051_sync 0000000251 2011_09_26 2011_09_26_drive_0051_sync 0000000252 2011_09_26 2011_09_26_drive_0051_sync 0000000253 2011_09_26 2011_09_26_drive_0051_sync 0000000258 2011_09_26 2011_09_26_drive_0051_sync 0000000260 2011_09_26 2011_09_26_drive_0051_sync 0000000262 2011_09_26 2011_09_26_drive_0051_sync 0000000267 2011_09_26 2011_09_26_drive_0051_sync 0000000273 2011_09_26 2011_09_26_drive_0051_sync 0000000277 2011_09_26 2011_09_26_drive_0051_sync 0000000281 2011_09_26 2011_09_26_drive_0051_sync 0000000283 2011_09_26 2011_09_26_drive_0051_sync 0000000285 2011_09_26 2011_09_26_drive_0051_sync 0000000286 2011_09_26 2011_09_26_drive_0051_sync 0000000288 2011_09_26 2011_09_26_drive_0051_sync 0000000290 2011_09_26 2011_09_26_drive_0051_sync 0000000292 2011_09_26 2011_09_26_drive_0051_sync 0000000296 2011_09_26 2011_09_26_drive_0051_sync 0000000299 2011_09_26 2011_09_26_drive_0051_sync 0000000300 2011_09_26 2011_09_26_drive_0051_sync 0000000301 2011_09_26 2011_09_26_drive_0051_sync 0000000302 2011_09_26 2011_09_26_drive_0051_sync 0000000304 2011_09_26 2011_09_26_drive_0051_sync 0000000308 2011_09_26 2011_09_26_drive_0051_sync 0000000310 2011_09_26 2011_09_26_drive_0051_sync 0000000320 2011_09_26 2011_09_26_drive_0051_sync 0000000324 2011_09_26 2011_09_26_drive_0051_sync 0000000326 2011_09_26 2011_09_26_drive_0051_sync 0000000328 2011_09_26 2011_09_26_drive_0051_sync 0000000333 2011_09_26 2011_09_26_drive_0051_sync 0000000343 2011_09_26 2011_09_26_drive_0051_sync 0000000347 2011_09_26 2011_09_26_drive_0051_sync 0000000383 2011_09_26 2011_09_26_drive_0051_sync 0000000384 2011_09_26 2011_09_26_drive_0051_sync 0000000386 2011_09_26 2011_09_26_drive_0051_sync 0000000388 2011_09_26 2011_09_26_drive_0051_sync 0000000390 2011_09_26 2011_09_26_drive_0051_sync 0000000392 2011_09_26 2011_09_26_drive_0051_sync 0000000394 2011_09_26 2011_09_26_drive_0051_sync 0000000396 2011_09_26 2011_09_26_drive_0051_sync 0000000398 2011_09_26 2011_09_26_drive_0051_sync 0000000402 2011_09_26 2011_09_26_drive_0051_sync 0000000405 2011_09_26 2011_09_26_drive_0051_sync 0000000411 2011_09_26 2011_09_26_drive_0056_sync 0000000001 2011_09_26 2011_09_26_drive_0056_sync 0000000002 2011_09_26 2011_09_26_drive_0056_sync 0000000003 2011_09_26 2011_09_26_drive_0056_sync 0000000004 2011_09_26 2011_09_26_drive_0056_sync 0000000005 2011_09_26 2011_09_26_drive_0056_sync 0000000006 2011_09_26 2011_09_26_drive_0056_sync 0000000007 2011_09_26 2011_09_26_drive_0056_sync 0000000008 2011_09_26 2011_09_26_drive_0056_sync 0000000009 2011_09_26 2011_09_26_drive_0056_sync 0000000010 2011_09_26 2011_09_26_drive_0056_sync 0000000011 2011_09_26 2011_09_26_drive_0056_sync 0000000012 2011_09_26 2011_09_26_drive_0056_sync 0000000028 2011_09_26 2011_09_26_drive_0056_sync 0000000041 2011_09_26 2011_09_26_drive_0056_sync 0000000053 2011_09_26 2011_09_26_drive_0056_sync 0000000062 2011_09_26 2011_09_26_drive_0056_sync 0000000063 2011_09_26 2011_09_26_drive_0056_sync 0000000064 2011_09_26 2011_09_26_drive_0056_sync 0000000068 2011_09_26 2011_09_26_drive_0056_sync 0000000069 2011_09_26 2011_09_26_drive_0056_sync 0000000070 2011_09_26 2011_09_26_drive_0056_sync 0000000071 2011_09_26 2011_09_26_drive_0056_sync 0000000072 2011_09_26 2011_09_26_drive_0056_sync 0000000073 2011_09_26 2011_09_26_drive_0056_sync 0000000074 2011_09_26 2011_09_26_drive_0056_sync 0000000075 2011_09_26 2011_09_26_drive_0056_sync 0000000076 2011_09_26 2011_09_26_drive_0056_sync 0000000077 2011_09_26 2011_09_26_drive_0056_sync 0000000078 2011_09_26 2011_09_26_drive_0056_sync 0000000079 2011_09_26 2011_09_26_drive_0056_sync 0000000080 2011_09_26 2011_09_26_drive_0056_sync 0000000081 2011_09_26 2011_09_26_drive_0056_sync 0000000082 2011_09_26 2011_09_26_drive_0056_sync 0000000083 2011_09_26 2011_09_26_drive_0056_sync 0000000084 2011_09_26 2011_09_26_drive_0056_sync 0000000085 2011_09_26 2011_09_26_drive_0056_sync 0000000086 2011_09_26 2011_09_26_drive_0056_sync 0000000087 2011_09_26 2011_09_26_drive_0056_sync 0000000088 2011_09_26 2011_09_26_drive_0056_sync 0000000089 2011_09_26 2011_09_26_drive_0056_sync 0000000090 2011_09_26 2011_09_26_drive_0056_sync 0000000091 2011_09_26 2011_09_26_drive_0056_sync 0000000092 2011_09_26 2011_09_26_drive_0056_sync 0000000093 2011_09_26 2011_09_26_drive_0056_sync 0000000094 2011_09_26 2011_09_26_drive_0056_sync 0000000095 2011_09_26 2011_09_26_drive_0056_sync 0000000096 2011_09_26 2011_09_26_drive_0056_sync 0000000097 2011_09_26 2011_09_26_drive_0056_sync 0000000098 2011_09_26 2011_09_26_drive_0056_sync 0000000099 2011_09_26 2011_09_26_drive_0056_sync 0000000100 2011_09_26 2011_09_26_drive_0056_sync 0000000101 2011_09_26 2011_09_26_drive_0056_sync 0000000102 2011_09_26 2011_09_26_drive_0056_sync 0000000103 2011_09_26 2011_09_26_drive_0056_sync 0000000104 2011_09_26 2011_09_26_drive_0056_sync 0000000105 2011_09_26 2011_09_26_drive_0056_sync 0000000106 2011_09_26 2011_09_26_drive_0056_sync 0000000107 2011_09_26 2011_09_26_drive_0056_sync 0000000108 2011_09_26 2011_09_26_drive_0056_sync 0000000109 2011_09_26 2011_09_26_drive_0056_sync 0000000110 2011_09_26 2011_09_26_drive_0056_sync 0000000111 2011_09_26 2011_09_26_drive_0056_sync 0000000112 2011_09_26 2011_09_26_drive_0056_sync 0000000113 2011_09_26 2011_09_26_drive_0056_sync 0000000114 2011_09_26 2011_09_26_drive_0056_sync 0000000115 2011_09_26 2011_09_26_drive_0056_sync 0000000116 2011_09_26 2011_09_26_drive_0056_sync 0000000117 2011_09_26 2011_09_26_drive_0056_sync 0000000118 2011_09_26 2011_09_26_drive_0056_sync 0000000119 2011_09_26 2011_09_26_drive_0056_sync 0000000120 2011_09_26 2011_09_26_drive_0056_sync 0000000121 2011_09_26 2011_09_26_drive_0056_sync 0000000122 2011_09_26 2011_09_26_drive_0056_sync 0000000123 2011_09_26 2011_09_26_drive_0056_sync 0000000124 2011_09_26 2011_09_26_drive_0056_sync 0000000125 2011_09_26 2011_09_26_drive_0056_sync 0000000126 2011_09_26 2011_09_26_drive_0056_sync 0000000127 2011_09_26 2011_09_26_drive_0056_sync 0000000128 2011_09_26 2011_09_26_drive_0056_sync 0000000129 2011_09_26 2011_09_26_drive_0056_sync 0000000130 2011_09_26 2011_09_26_drive_0056_sync 0000000131 2011_09_26 2011_09_26_drive_0056_sync 0000000132 2011_09_26 2011_09_26_drive_0056_sync 0000000133 2011_09_26 2011_09_26_drive_0056_sync 0000000134 2011_09_26 2011_09_26_drive_0056_sync 0000000135 2011_09_26 2011_09_26_drive_0056_sync 0000000136 2011_09_26 2011_09_26_drive_0056_sync 0000000137 2011_09_26 2011_09_26_drive_0056_sync 0000000138 2011_09_26 2011_09_26_drive_0056_sync 0000000139 2011_09_26 2011_09_26_drive_0056_sync 0000000140 2011_09_26 2011_09_26_drive_0056_sync 0000000141 2011_09_26 2011_09_26_drive_0056_sync 0000000142 2011_09_26 2011_09_26_drive_0056_sync 0000000143 2011_09_26 2011_09_26_drive_0056_sync 0000000144 2011_09_26 2011_09_26_drive_0056_sync 0000000145 2011_09_26 2011_09_26_drive_0056_sync 0000000146 2011_09_26 2011_09_26_drive_0056_sync 0000000147 2011_09_26 2011_09_26_drive_0056_sync 0000000148 2011_09_26 2011_09_26_drive_0056_sync 0000000149 2011_09_26 2011_09_26_drive_0056_sync 0000000150 2011_09_26 2011_09_26_drive_0056_sync 0000000151 2011_09_26 2011_09_26_drive_0056_sync 0000000152 2011_09_26 2011_09_26_drive_0056_sync 0000000153 2011_09_26 2011_09_26_drive_0056_sync 0000000154 2011_09_26 2011_09_26_drive_0056_sync 0000000155 2011_09_26 2011_09_26_drive_0056_sync 0000000156 2011_09_26 2011_09_26_drive_0056_sync 0000000157 2011_09_26 2011_09_26_drive_0056_sync 0000000158 2011_09_26 2011_09_26_drive_0056_sync 0000000159 2011_09_26 2011_09_26_drive_0056_sync 0000000160 2011_09_26 2011_09_26_drive_0056_sync 0000000161 2011_09_26 2011_09_26_drive_0056_sync 0000000162 2011_09_26 2011_09_26_drive_0056_sync 0000000163 2011_09_26 2011_09_26_drive_0056_sync 0000000164 2011_09_26 2011_09_26_drive_0056_sync 0000000165 2011_09_26 2011_09_26_drive_0056_sync 0000000166 2011_09_26 2011_09_26_drive_0056_sync 0000000167 2011_09_26 2011_09_26_drive_0056_sync 0000000168 2011_09_26 2011_09_26_drive_0056_sync 0000000169 2011_09_26 2011_09_26_drive_0056_sync 0000000170 2011_09_26 2011_09_26_drive_0056_sync 0000000172 2011_09_26 2011_09_26_drive_0056_sync 0000000174 2011_09_26 2011_09_26_drive_0056_sync 0000000185 2011_09_26 2011_09_26_drive_0056_sync 0000000194 2011_09_26 2011_09_26_drive_0056_sync 0000000195 2011_09_26 2011_09_26_drive_0056_sync 0000000196 2011_09_26 2011_09_26_drive_0056_sync 0000000197 2011_09_26 2011_09_26_drive_0056_sync 0000000198 2011_09_26 2011_09_26_drive_0056_sync 0000000199 2011_09_26 2011_09_26_drive_0056_sync 0000000200 2011_09_26 2011_09_26_drive_0056_sync 0000000201 2011_09_26 2011_09_26_drive_0056_sync 0000000202 2011_09_26 2011_09_26_drive_0056_sync 0000000203 2011_09_26 2011_09_26_drive_0056_sync 0000000204 2011_09_26 2011_09_26_drive_0056_sync 0000000205 2011_09_26 2011_09_26_drive_0056_sync 0000000206 2011_09_26 2011_09_26_drive_0056_sync 0000000207 2011_09_26 2011_09_26_drive_0056_sync 0000000208 2011_09_26 2011_09_26_drive_0056_sync 0000000209 2011_09_26 2011_09_26_drive_0056_sync 0000000210 2011_09_26 2011_09_26_drive_0056_sync 0000000211 2011_09_26 2011_09_26_drive_0056_sync 0000000212 2011_09_26 2011_09_26_drive_0056_sync 0000000213 2011_09_26 2011_09_26_drive_0056_sync 0000000214 2011_09_26 2011_09_26_drive_0056_sync 0000000215 2011_09_26 2011_09_26_drive_0056_sync 0000000216 2011_09_26 2011_09_26_drive_0056_sync 0000000217 2011_09_26 2011_09_26_drive_0056_sync 0000000218 2011_09_26 2011_09_26_drive_0056_sync 0000000219 2011_09_26 2011_09_26_drive_0056_sync 0000000220 2011_09_26 2011_09_26_drive_0056_sync 0000000221 2011_09_26 2011_09_26_drive_0056_sync 0000000222 2011_09_26 2011_09_26_drive_0056_sync 0000000223 2011_09_26 2011_09_26_drive_0056_sync 0000000224 2011_09_26 2011_09_26_drive_0056_sync 0000000225 2011_09_26 2011_09_26_drive_0056_sync 0000000226 2011_09_26 2011_09_26_drive_0056_sync 0000000227 2011_09_26 2011_09_26_drive_0056_sync 0000000228 2011_09_26 2011_09_26_drive_0056_sync 0000000229 2011_09_26 2011_09_26_drive_0056_sync 0000000230 2011_09_26 2011_09_26_drive_0056_sync 0000000231 2011_09_26 2011_09_26_drive_0056_sync 0000000232 2011_09_26 2011_09_26_drive_0056_sync 0000000233 2011_09_26 2011_09_26_drive_0056_sync 0000000234 2011_09_26 2011_09_26_drive_0056_sync 0000000235 2011_09_26 2011_09_26_drive_0056_sync 0000000236 2011_09_26 2011_09_26_drive_0056_sync 0000000237 2011_09_26 2011_09_26_drive_0056_sync 0000000238 2011_09_26 2011_09_26_drive_0056_sync 0000000239 2011_09_26 2011_09_26_drive_0056_sync 0000000240 2011_09_26 2011_09_26_drive_0056_sync 0000000241 2011_09_26 2011_09_26_drive_0056_sync 0000000242 2011_09_26 2011_09_26_drive_0056_sync 0000000259 2011_09_26 2011_09_26_drive_0056_sync 0000000265 2011_09_26 2011_09_26_drive_0056_sync 0000000266 2011_09_26 2011_09_26_drive_0056_sync 0000000267 2011_09_26 2011_09_26_drive_0056_sync 0000000268 2011_09_26 2011_09_26_drive_0056_sync 0000000269 2011_09_26 2011_09_26_drive_0056_sync 0000000270 2011_09_26 2011_09_26_drive_0056_sync 0000000271 2011_09_26 2011_09_26_drive_0056_sync 0000000272 2011_09_26 2011_09_26_drive_0056_sync 0000000273 2011_09_26 2011_09_26_drive_0056_sync 0000000274 2011_09_26 2011_09_26_drive_0056_sync 0000000275 2011_09_26 2011_09_26_drive_0056_sync 0000000276 2011_09_26 2011_09_26_drive_0056_sync 0000000277 2011_09_26 2011_09_26_drive_0056_sync 0000000278 2011_09_26 2011_09_26_drive_0056_sync 0000000279 2011_09_26 2011_09_26_drive_0056_sync 0000000280 2011_09_26 2011_09_26_drive_0056_sync 0000000281 2011_09_26 2011_09_26_drive_0056_sync 0000000282 2011_09_26 2011_09_26_drive_0056_sync 0000000283 2011_09_26 2011_09_26_drive_0056_sync 0000000284 2011_09_26 2011_09_26_drive_0056_sync 0000000285 2011_09_26 2011_09_26_drive_0056_sync 0000000286 2011_09_26 2011_09_26_drive_0056_sync 0000000287 2011_09_26 2011_09_26_drive_0057_sync 0000000003 2011_09_26 2011_09_26_drive_0057_sync 0000000005 2011_09_26 2011_09_26_drive_0057_sync 0000000007 2011_09_26 2011_09_26_drive_0057_sync 0000000009 2011_09_26 2011_09_26_drive_0057_sync 0000000011 2011_09_26 2011_09_26_drive_0057_sync 0000000013 2011_09_26 2011_09_26_drive_0057_sync 0000000015 2011_09_26 2011_09_26_drive_0057_sync 0000000017 2011_09_26 2011_09_26_drive_0057_sync 0000000020 2011_09_26 2011_09_26_drive_0057_sync 0000000023 2011_09_26 2011_09_26_drive_0057_sync 0000000028 2011_09_26 2011_09_26_drive_0057_sync 0000000033 2011_09_26 2011_09_26_drive_0057_sync 0000000038 2011_09_26 2011_09_26_drive_0057_sync 0000000052 2011_09_26 2011_09_26_drive_0057_sync 0000000061 2011_09_26 2011_09_26_drive_0057_sync 0000000066 2011_09_26 2011_09_26_drive_0057_sync 0000000070 2011_09_26 2011_09_26_drive_0057_sync 0000000073 2011_09_26 2011_09_26_drive_0057_sync 0000000076 2011_09_26 2011_09_26_drive_0057_sync 0000000080 2011_09_26 2011_09_26_drive_0057_sync 0000000087 2011_09_26 2011_09_26_drive_0057_sync 0000000095 2011_09_26 2011_09_26_drive_0057_sync 0000000102 2011_09_26 2011_09_26_drive_0057_sync 0000000106 2011_09_26 2011_09_26_drive_0057_sync 0000000110 2011_09_26 2011_09_26_drive_0057_sync 0000000118 2011_09_26 2011_09_26_drive_0057_sync 0000000120 2011_09_26 2011_09_26_drive_0057_sync 0000000122 2011_09_26 2011_09_26_drive_0057_sync 0000000124 2011_09_26 2011_09_26_drive_0057_sync 0000000130 2011_09_26 2011_09_26_drive_0057_sync 0000000135 2011_09_26 2011_09_26_drive_0057_sync 0000000137 2011_09_26 2011_09_26_drive_0057_sync 0000000140 2011_09_26 2011_09_26_drive_0057_sync 0000000143 2011_09_26 2011_09_26_drive_0057_sync 0000000150 2011_09_26 2011_09_26_drive_0057_sync 0000000152 2011_09_26 2011_09_26_drive_0057_sync 0000000163 2011_09_26 2011_09_26_drive_0057_sync 0000000167 2011_09_26 2011_09_26_drive_0057_sync 0000000170 2011_09_26 2011_09_26_drive_0057_sync 0000000172 2011_09_26 2011_09_26_drive_0057_sync 0000000175 2011_09_26 2011_09_26_drive_0057_sync 0000000178 2011_09_26 2011_09_26_drive_0057_sync 0000000181 2011_09_26 2011_09_26_drive_0057_sync 0000000184 2011_09_26 2011_09_26_drive_0057_sync 0000000188 2011_09_26 2011_09_26_drive_0057_sync 0000000202 2011_09_26 2011_09_26_drive_0057_sync 0000000219 2011_09_26 2011_09_26_drive_0057_sync 0000000221 2011_09_26 2011_09_26_drive_0057_sync 0000000224 2011_09_26 2011_09_26_drive_0057_sync 0000000228 2011_09_26 2011_09_26_drive_0057_sync 0000000269 2011_09_26 2011_09_26_drive_0057_sync 0000000291 2011_09_26 2011_09_26_drive_0057_sync 0000000296 2011_09_26 2011_09_26_drive_0057_sync 0000000299 2011_09_26 2011_09_26_drive_0057_sync 0000000302 2011_09_26 2011_09_26_drive_0057_sync 0000000305 2011_09_26 2011_09_26_drive_0057_sync 0000000307 2011_09_26 2011_09_26_drive_0057_sync 0000000309 2011_09_26 2011_09_26_drive_0057_sync 0000000311 2011_09_26 2011_09_26_drive_0057_sync 0000000313 2011_09_26 2011_09_26_drive_0057_sync 0000000315 2011_09_26 2011_09_26_drive_0057_sync 0000000317 2011_09_26 2011_09_26_drive_0057_sync 0000000319 2011_09_26 2011_09_26_drive_0057_sync 0000000321 2011_09_26 2011_09_26_drive_0057_sync 0000000323 2011_09_26 2011_09_26_drive_0057_sync 0000000325 2011_09_26 2011_09_26_drive_0057_sync 0000000327 2011_09_26 2011_09_26_drive_0057_sync 0000000329 2011_09_26 2011_09_26_drive_0057_sync 0000000331 2011_09_26 2011_09_26_drive_0057_sync 0000000332 2011_09_26 2011_09_26_drive_0057_sync 0000000333 2011_09_26 2011_09_26_drive_0057_sync 0000000334 2011_09_26 2011_09_26_drive_0057_sync 0000000335 2011_09_26 2011_09_26_drive_0057_sync 0000000336 2011_09_26 2011_09_26_drive_0057_sync 0000000338 2011_09_26 2011_09_26_drive_0057_sync 0000000339 2011_09_26 2011_09_26_drive_0057_sync 0000000341 2011_09_26 2011_09_26_drive_0057_sync 0000000343 2011_09_26 2011_09_26_drive_0057_sync 0000000350 2011_09_26 2011_09_26_drive_0057_sync 0000000356 2011_09_26 2011_09_26_drive_0059_sync 0000000003 2011_09_26 2011_09_26_drive_0059_sync 0000000005 2011_09_26 2011_09_26_drive_0059_sync 0000000007 2011_09_26 2011_09_26_drive_0059_sync 0000000009 2011_09_26 2011_09_26_drive_0059_sync 0000000011 2011_09_26 2011_09_26_drive_0059_sync 0000000013 2011_09_26 2011_09_26_drive_0059_sync 0000000015 2011_09_26 2011_09_26_drive_0059_sync 0000000017 2011_09_26 2011_09_26_drive_0059_sync 0000000019 2011_09_26 2011_09_26_drive_0059_sync 0000000021 2011_09_26 2011_09_26_drive_0059_sync 0000000024 2011_09_26 2011_09_26_drive_0059_sync 0000000027 2011_09_26 2011_09_26_drive_0059_sync 0000000030 2011_09_26 2011_09_26_drive_0059_sync 0000000033 2011_09_26 2011_09_26_drive_0059_sync 0000000036 2011_09_26 2011_09_26_drive_0059_sync 0000000039 2011_09_26 2011_09_26_drive_0059_sync 0000000042 2011_09_26 2011_09_26_drive_0059_sync 0000000045 2011_09_26 2011_09_26_drive_0059_sync 0000000047 2011_09_26 2011_09_26_drive_0059_sync 0000000049 2011_09_26 2011_09_26_drive_0059_sync 0000000051 2011_09_26 2011_09_26_drive_0059_sync 0000000053 2011_09_26 2011_09_26_drive_0059_sync 0000000055 2011_09_26 2011_09_26_drive_0059_sync 0000000057 2011_09_26 2011_09_26_drive_0059_sync 0000000060 2011_09_26 2011_09_26_drive_0059_sync 0000000062 2011_09_26 2011_09_26_drive_0059_sync 0000000064 2011_09_26 2011_09_26_drive_0059_sync 0000000066 2011_09_26 2011_09_26_drive_0059_sync 0000000068 2011_09_26 2011_09_26_drive_0059_sync 0000000070 2011_09_26 2011_09_26_drive_0059_sync 0000000072 2011_09_26 2011_09_26_drive_0059_sync 0000000074 2011_09_26 2011_09_26_drive_0059_sync 0000000076 2011_09_26 2011_09_26_drive_0059_sync 0000000078 2011_09_26 2011_09_26_drive_0059_sync 0000000080 2011_09_26 2011_09_26_drive_0059_sync 0000000082 2011_09_26 2011_09_26_drive_0059_sync 0000000084 2011_09_26 2011_09_26_drive_0059_sync 0000000086 2011_09_26 2011_09_26_drive_0059_sync 0000000088 2011_09_26 2011_09_26_drive_0059_sync 0000000090 2011_09_26 2011_09_26_drive_0059_sync 0000000092 2011_09_26 2011_09_26_drive_0059_sync 0000000094 2011_09_26 2011_09_26_drive_0059_sync 0000000096 2011_09_26 2011_09_26_drive_0059_sync 0000000098 2011_09_26 2011_09_26_drive_0059_sync 0000000100 2011_09_26 2011_09_26_drive_0059_sync 0000000102 2011_09_26 2011_09_26_drive_0059_sync 0000000104 2011_09_26 2011_09_26_drive_0059_sync 0000000106 2011_09_26 2011_09_26_drive_0059_sync 0000000108 2011_09_26 2011_09_26_drive_0059_sync 0000000110 2011_09_26 2011_09_26_drive_0059_sync 0000000111 2011_09_26 2011_09_26_drive_0059_sync 0000000112 2011_09_26 2011_09_26_drive_0059_sync 0000000113 2011_09_26 2011_09_26_drive_0059_sync 0000000114 2011_09_26 2011_09_26_drive_0059_sync 0000000115 2011_09_26 2011_09_26_drive_0059_sync 0000000116 2011_09_26 2011_09_26_drive_0059_sync 0000000117 2011_09_26 2011_09_26_drive_0059_sync 0000000118 2011_09_26 2011_09_26_drive_0059_sync 0000000119 2011_09_26 2011_09_26_drive_0059_sync 0000000120 2011_09_26 2011_09_26_drive_0059_sync 0000000121 2011_09_26 2011_09_26_drive_0059_sync 0000000122 2011_09_26 2011_09_26_drive_0059_sync 0000000123 2011_09_26 2011_09_26_drive_0059_sync 0000000124 2011_09_26 2011_09_26_drive_0059_sync 0000000125 2011_09_26 2011_09_26_drive_0059_sync 0000000126 2011_09_26 2011_09_26_drive_0059_sync 0000000127 2011_09_26 2011_09_26_drive_0059_sync 0000000128 2011_09_26 2011_09_26_drive_0059_sync 0000000129 2011_09_26 2011_09_26_drive_0059_sync 0000000130 2011_09_26 2011_09_26_drive_0059_sync 0000000131 2011_09_26 2011_09_26_drive_0059_sync 0000000132 2011_09_26 2011_09_26_drive_0059_sync 0000000133 2011_09_26 2011_09_26_drive_0059_sync 0000000134 2011_09_26 2011_09_26_drive_0059_sync 0000000135 2011_09_26 2011_09_26_drive_0059_sync 0000000136 2011_09_26 2011_09_26_drive_0059_sync 0000000137 2011_09_26 2011_09_26_drive_0059_sync 0000000138 2011_09_26 2011_09_26_drive_0059_sync 0000000139 2011_09_26 2011_09_26_drive_0059_sync 0000000140 2011_09_26 2011_09_26_drive_0059_sync 0000000141 2011_09_26 2011_09_26_drive_0059_sync 0000000142 2011_09_26 2011_09_26_drive_0059_sync 0000000143 2011_09_26 2011_09_26_drive_0059_sync 0000000144 2011_09_26 2011_09_26_drive_0059_sync 0000000145 2011_09_26 2011_09_26_drive_0059_sync 0000000146 2011_09_26 2011_09_26_drive_0059_sync 0000000147 2011_09_26 2011_09_26_drive_0059_sync 0000000148 2011_09_26 2011_09_26_drive_0059_sync 0000000149 2011_09_26 2011_09_26_drive_0059_sync 0000000150 2011_09_26 2011_09_26_drive_0059_sync 0000000151 2011_09_26 2011_09_26_drive_0059_sync 0000000152 2011_09_26 2011_09_26_drive_0059_sync 0000000153 2011_09_26 2011_09_26_drive_0059_sync 0000000154 2011_09_26 2011_09_26_drive_0059_sync 0000000155 2011_09_26 2011_09_26_drive_0059_sync 0000000157 2011_09_26 2011_09_26_drive_0059_sync 0000000158 2011_09_26 2011_09_26_drive_0059_sync 0000000159 2011_09_26 2011_09_26_drive_0059_sync 0000000160 2011_09_26 2011_09_26_drive_0059_sync 0000000162 2011_09_26 2011_09_26_drive_0059_sync 0000000164 2011_09_26 2011_09_26_drive_0059_sync 0000000166 2011_09_26 2011_09_26_drive_0059_sync 0000000168 2011_09_26 2011_09_26_drive_0059_sync 0000000170 2011_09_26 2011_09_26_drive_0059_sync 0000000172 2011_09_26 2011_09_26_drive_0059_sync 0000000174 2011_09_26 2011_09_26_drive_0059_sync 0000000176 2011_09_26 2011_09_26_drive_0059_sync 0000000178 2011_09_26 2011_09_26_drive_0059_sync 0000000180 2011_09_26 2011_09_26_drive_0059_sync 0000000182 2011_09_26 2011_09_26_drive_0059_sync 0000000185 2011_09_26 2011_09_26_drive_0059_sync 0000000188 2011_09_26 2011_09_26_drive_0059_sync 0000000191 2011_09_26 2011_09_26_drive_0059_sync 0000000195 2011_09_26 2011_09_26_drive_0059_sync 0000000199 2011_09_26 2011_09_26_drive_0059_sync 0000000203 2011_09_26 2011_09_26_drive_0059_sync 0000000208 2011_09_26 2011_09_26_drive_0059_sync 0000000213 2011_09_26 2011_09_26_drive_0059_sync 0000000217 2011_09_26 2011_09_26_drive_0059_sync 0000000222 2011_09_26 2011_09_26_drive_0059_sync 0000000228 2011_09_26 2011_09_26_drive_0059_sync 0000000233 2011_09_26 2011_09_26_drive_0059_sync 0000000238 2011_09_26 2011_09_26_drive_0059_sync 0000000243 2011_09_26 2011_09_26_drive_0059_sync 0000000248 2011_09_26 2011_09_26_drive_0059_sync 0000000252 2011_09_26 2011_09_26_drive_0059_sync 0000000256 2011_09_26 2011_09_26_drive_0059_sync 0000000259 2011_09_26 2011_09_26_drive_0059_sync 0000000262 2011_09_26 2011_09_26_drive_0059_sync 0000000264 2011_09_26 2011_09_26_drive_0059_sync 0000000266 2011_09_26 2011_09_26_drive_0059_sync 0000000268 2011_09_26 2011_09_26_drive_0059_sync 0000000270 2011_09_26 2011_09_26_drive_0059_sync 0000000272 2011_09_26 2011_09_26_drive_0059_sync 0000000274 2011_09_26 2011_09_26_drive_0059_sync 0000000276 2011_09_26 2011_09_26_drive_0059_sync 0000000278 2011_09_26 2011_09_26_drive_0059_sync 0000000280 2011_09_26 2011_09_26_drive_0059_sync 0000000282 2011_09_26 2011_09_26_drive_0059_sync 0000000284 2011_09_26 2011_09_26_drive_0059_sync 0000000286 2011_09_26 2011_09_26_drive_0059_sync 0000000288 2011_09_26 2011_09_26_drive_0059_sync 0000000290 2011_09_26 2011_09_26_drive_0059_sync 0000000292 2011_09_26 2011_09_26_drive_0059_sync 0000000294 2011_09_26 2011_09_26_drive_0059_sync 0000000296 2011_09_26 2011_09_26_drive_0059_sync 0000000298 2011_09_26 2011_09_26_drive_0059_sync 0000000300 2011_09_26 2011_09_26_drive_0059_sync 0000000302 2011_09_26 2011_09_26_drive_0059_sync 0000000304 2011_09_26 2011_09_26_drive_0059_sync 0000000306 2011_09_26 2011_09_26_drive_0059_sync 0000000308 2011_09_26 2011_09_26_drive_0059_sync 0000000310 2011_09_26 2011_09_26_drive_0059_sync 0000000312 2011_09_26 2011_09_26_drive_0059_sync 0000000314 2011_09_26 2011_09_26_drive_0059_sync 0000000316 2011_09_26 2011_09_26_drive_0059_sync 0000000318 2011_09_26 2011_09_26_drive_0059_sync 0000000320 2011_09_26 2011_09_26_drive_0059_sync 0000000322 2011_09_26 2011_09_26_drive_0059_sync 0000000324 2011_09_26 2011_09_26_drive_0059_sync 0000000326 2011_09_26 2011_09_26_drive_0059_sync 0000000328 2011_09_26 2011_09_26_drive_0059_sync 0000000330 2011_09_26 2011_09_26_drive_0059_sync 0000000332 2011_09_26 2011_09_26_drive_0059_sync 0000000334 2011_09_26 2011_09_26_drive_0059_sync 0000000336 2011_09_26 2011_09_26_drive_0059_sync 0000000338 2011_09_26 2011_09_26_drive_0059_sync 0000000343 2011_09_26 2011_09_26_drive_0059_sync 0000000351 2011_09_26 2011_09_26_drive_0059_sync 0000000356 2011_09_26 2011_09_26_drive_0059_sync 0000000358 2011_09_26 2011_09_26_drive_0059_sync 0000000360 2011_09_26 2011_09_26_drive_0059_sync 0000000362 2011_09_26 2011_09_26_drive_0059_sync 0000000364 2011_09_26 2011_09_26_drive_0059_sync 0000000366 2011_09_26 2011_09_26_drive_0059_sync 0000000368 2011_09_26 2011_09_26_drive_0059_sync 0000000370 2011_09_26 2011_09_26_drive_0059_sync 0000000372 2011_09_26 2011_09_26_drive_0084_sync 0000000007 2011_09_26 2011_09_26_drive_0084_sync 0000000052 2011_09_26 2011_09_26_drive_0084_sync 0000000061 2011_09_26 2011_09_26_drive_0084_sync 0000000066 2011_09_26 2011_09_26_drive_0084_sync 0000000069 2011_09_26 2011_09_26_drive_0084_sync 0000000072 2011_09_26 2011_09_26_drive_0084_sync 0000000074 2011_09_26 2011_09_26_drive_0084_sync 0000000076 2011_09_26 2011_09_26_drive_0084_sync 0000000078 2011_09_26 2011_09_26_drive_0084_sync 0000000080 2011_09_26 2011_09_26_drive_0084_sync 0000000082 2011_09_26 2011_09_26_drive_0084_sync 0000000084 2011_09_26 2011_09_26_drive_0084_sync 0000000086 2011_09_26 2011_09_26_drive_0084_sync 0000000087 2011_09_26 2011_09_26_drive_0084_sync 0000000088 2011_09_26 2011_09_26_drive_0084_sync 0000000089 2011_09_26 2011_09_26_drive_0084_sync 0000000091 2011_09_26 2011_09_26_drive_0084_sync 0000000092 2011_09_26 2011_09_26_drive_0084_sync 0000000093 2011_09_26 2011_09_26_drive_0084_sync 0000000094 2011_09_26 2011_09_26_drive_0084_sync 0000000095 2011_09_26 2011_09_26_drive_0084_sync 0000000096 2011_09_26 2011_09_26_drive_0084_sync 0000000097 2011_09_26 2011_09_26_drive_0084_sync 0000000098 2011_09_26 2011_09_26_drive_0084_sync 0000000099 2011_09_26 2011_09_26_drive_0084_sync 0000000100 2011_09_26 2011_09_26_drive_0084_sync 0000000101 2011_09_26 2011_09_26_drive_0084_sync 0000000102 2011_09_26 2011_09_26_drive_0084_sync 0000000103 2011_09_26 2011_09_26_drive_0084_sync 0000000104 2011_09_26 2011_09_26_drive_0084_sync 0000000105 2011_09_26 2011_09_26_drive_0084_sync 0000000106 2011_09_26 2011_09_26_drive_0084_sync 0000000107 2011_09_26 2011_09_26_drive_0084_sync 0000000108 2011_09_26 2011_09_26_drive_0084_sync 0000000109 2011_09_26 2011_09_26_drive_0084_sync 0000000110 2011_09_26 2011_09_26_drive_0084_sync 0000000111 2011_09_26 2011_09_26_drive_0084_sync 0000000113 2011_09_26 2011_09_26_drive_0084_sync 0000000115 2011_09_26 2011_09_26_drive_0084_sync 0000000117 2011_09_26 2011_09_26_drive_0084_sync 0000000119 2011_09_26 2011_09_26_drive_0084_sync 0000000121 2011_09_26 2011_09_26_drive_0084_sync 0000000123 2011_09_26 2011_09_26_drive_0084_sync 0000000125 2011_09_26 2011_09_26_drive_0084_sync 0000000127 2011_09_26 2011_09_26_drive_0084_sync 0000000129 2011_09_26 2011_09_26_drive_0084_sync 0000000131 2011_09_26 2011_09_26_drive_0084_sync 0000000133 2011_09_26 2011_09_26_drive_0084_sync 0000000135 2011_09_26 2011_09_26_drive_0084_sync 0000000137 2011_09_26 2011_09_26_drive_0084_sync 0000000139 2011_09_26 2011_09_26_drive_0084_sync 0000000141 2011_09_26 2011_09_26_drive_0084_sync 0000000143 2011_09_26 2011_09_26_drive_0084_sync 0000000145 2011_09_26 2011_09_26_drive_0084_sync 0000000147 2011_09_26 2011_09_26_drive_0084_sync 0000000149 2011_09_26 2011_09_26_drive_0084_sync 0000000151 2011_09_26 2011_09_26_drive_0084_sync 0000000153 2011_09_26 2011_09_26_drive_0084_sync 0000000155 2011_09_26 2011_09_26_drive_0084_sync 0000000157 2011_09_26 2011_09_26_drive_0084_sync 0000000159 2011_09_26 2011_09_26_drive_0084_sync 0000000161 2011_09_26 2011_09_26_drive_0084_sync 0000000163 2011_09_26 2011_09_26_drive_0084_sync 0000000165 2011_09_26 2011_09_26_drive_0084_sync 0000000167 2011_09_26 2011_09_26_drive_0084_sync 0000000169 2011_09_26 2011_09_26_drive_0084_sync 0000000171 2011_09_26 2011_09_26_drive_0084_sync 0000000173 2011_09_26 2011_09_26_drive_0084_sync 0000000175 2011_09_26 2011_09_26_drive_0084_sync 0000000177 2011_09_26 2011_09_26_drive_0084_sync 0000000179 2011_09_26 2011_09_26_drive_0084_sync 0000000181 2011_09_26 2011_09_26_drive_0084_sync 0000000183 2011_09_26 2011_09_26_drive_0084_sync 0000000185 2011_09_26 2011_09_26_drive_0084_sync 0000000187 2011_09_26 2011_09_26_drive_0084_sync 0000000189 2011_09_26 2011_09_26_drive_0084_sync 0000000192 2011_09_26 2011_09_26_drive_0084_sync 0000000194 2011_09_26 2011_09_26_drive_0084_sync 0000000196 2011_09_26 2011_09_26_drive_0084_sync 0000000198 2011_09_26 2011_09_26_drive_0084_sync 0000000200 2011_09_26 2011_09_26_drive_0084_sync 0000000202 2011_09_26 2011_09_26_drive_0084_sync 0000000204 2011_09_26 2011_09_26_drive_0084_sync 0000000206 2011_09_26 2011_09_26_drive_0084_sync 0000000208 2011_09_26 2011_09_26_drive_0084_sync 0000000210 2011_09_26 2011_09_26_drive_0084_sync 0000000212 2011_09_26 2011_09_26_drive_0084_sync 0000000214 2011_09_26 2011_09_26_drive_0084_sync 0000000216 2011_09_26 2011_09_26_drive_0084_sync 0000000217 2011_09_26 2011_09_26_drive_0084_sync 0000000218 2011_09_26 2011_09_26_drive_0084_sync 0000000219 2011_09_26 2011_09_26_drive_0084_sync 0000000220 2011_09_26 2011_09_26_drive_0084_sync 0000000221 2011_09_26 2011_09_26_drive_0084_sync 0000000222 2011_09_26 2011_09_26_drive_0084_sync 0000000223 2011_09_26 2011_09_26_drive_0084_sync 0000000224 2011_09_26 2011_09_26_drive_0084_sync 0000000225 2011_09_26 2011_09_26_drive_0084_sync 0000000226 2011_09_26 2011_09_26_drive_0084_sync 0000000227 2011_09_26 2011_09_26_drive_0084_sync 0000000228 2011_09_26 2011_09_26_drive_0084_sync 0000000229 2011_09_26 2011_09_26_drive_0084_sync 0000000230 2011_09_26 2011_09_26_drive_0084_sync 0000000231 2011_09_26 2011_09_26_drive_0084_sync 0000000232 2011_09_26 2011_09_26_drive_0084_sync 0000000233 2011_09_26 2011_09_26_drive_0084_sync 0000000234 2011_09_26 2011_09_26_drive_0084_sync 0000000235 2011_09_26 2011_09_26_drive_0084_sync 0000000236 2011_09_26 2011_09_26_drive_0084_sync 0000000237 2011_09_26 2011_09_26_drive_0084_sync 0000000238 2011_09_26 2011_09_26_drive_0084_sync 0000000239 2011_09_26 2011_09_26_drive_0084_sync 0000000240 2011_09_26 2011_09_26_drive_0084_sync 0000000241 2011_09_26 2011_09_26_drive_0084_sync 0000000242 2011_09_26 2011_09_26_drive_0084_sync 0000000243 2011_09_26 2011_09_26_drive_0084_sync 0000000244 2011_09_26 2011_09_26_drive_0084_sync 0000000245 2011_09_26 2011_09_26_drive_0084_sync 0000000246 2011_09_26 2011_09_26_drive_0084_sync 0000000248 2011_09_26 2011_09_26_drive_0084_sync 0000000250 2011_09_26 2011_09_26_drive_0084_sync 0000000252 2011_09_26 2011_09_26_drive_0084_sync 0000000254 2011_09_26 2011_09_26_drive_0084_sync 0000000256 2011_09_26 2011_09_26_drive_0084_sync 0000000258 2011_09_26 2011_09_26_drive_0084_sync 0000000260 2011_09_26 2011_09_26_drive_0084_sync 0000000262 2011_09_26 2011_09_26_drive_0084_sync 0000000264 2011_09_26 2011_09_26_drive_0084_sync 0000000265 2011_09_26 2011_09_26_drive_0084_sync 0000000266 2011_09_26 2011_09_26_drive_0084_sync 0000000268 2011_09_26 2011_09_26_drive_0084_sync 0000000270 2011_09_26 2011_09_26_drive_0084_sync 0000000272 2011_09_26 2011_09_26_drive_0084_sync 0000000274 2011_09_26 2011_09_26_drive_0084_sync 0000000276 2011_09_26 2011_09_26_drive_0084_sync 0000000278 2011_09_26 2011_09_26_drive_0084_sync 0000000280 2011_09_26 2011_09_26_drive_0084_sync 0000000282 2011_09_26 2011_09_26_drive_0084_sync 0000000284 2011_09_26 2011_09_26_drive_0084_sync 0000000286 2011_09_26 2011_09_26_drive_0084_sync 0000000288 2011_09_26 2011_09_26_drive_0084_sync 0000000290 2011_09_26 2011_09_26_drive_0084_sync 0000000292 2011_09_26 2011_09_26_drive_0084_sync 0000000294 2011_09_26 2011_09_26_drive_0084_sync 0000000296 2011_09_26 2011_09_26_drive_0084_sync 0000000298 2011_09_26 2011_09_26_drive_0084_sync 0000000300 2011_09_26 2011_09_26_drive_0084_sync 0000000302 2011_09_26 2011_09_26_drive_0084_sync 0000000304 2011_09_26 2011_09_26_drive_0084_sync 0000000306 2011_09_26 2011_09_26_drive_0084_sync 0000000308 2011_09_26 2011_09_26_drive_0084_sync 0000000310 2011_09_26 2011_09_26_drive_0084_sync 0000000312 2011_09_26 2011_09_26_drive_0084_sync 0000000315 2011_09_26 2011_09_26_drive_0084_sync 0000000317 2011_09_26 2011_09_26_drive_0084_sync 0000000319 2011_09_26 2011_09_26_drive_0084_sync 0000000321 2011_09_26 2011_09_26_drive_0084_sync 0000000323 2011_09_26 2011_09_26_drive_0084_sync 0000000325 2011_09_26 2011_09_26_drive_0084_sync 0000000327 2011_09_26 2011_09_26_drive_0084_sync 0000000329 2011_09_26 2011_09_26_drive_0084_sync 0000000331 2011_09_26 2011_09_26_drive_0084_sync 0000000333 2011_09_26 2011_09_26_drive_0084_sync 0000000335 2011_09_26 2011_09_26_drive_0084_sync 0000000337 2011_09_26 2011_09_26_drive_0084_sync 0000000339 2011_09_26 2011_09_26_drive_0084_sync 0000000341 2011_09_26 2011_09_26_drive_0084_sync 0000000343 2011_09_26 2011_09_26_drive_0084_sync 0000000346 2011_09_26 2011_09_26_drive_0084_sync 0000000349 2011_09_26 2011_09_26_drive_0084_sync 0000000352 2011_09_26 2011_09_26_drive_0084_sync 0000000355 2011_09_26 2011_09_26_drive_0084_sync 0000000359 2011_09_26 2011_09_26_drive_0084_sync 0000000364 2011_09_26 2011_09_26_drive_0084_sync 0000000373 2011_09_26 2011_09_26_drive_0091_sync 0000000005 2011_09_26 2011_09_26_drive_0091_sync 0000000007 2011_09_26 2011_09_26_drive_0091_sync 0000000009 2011_09_26 2011_09_26_drive_0091_sync 0000000011 2011_09_26 2011_09_26_drive_0091_sync 0000000013 2011_09_26 2011_09_26_drive_0091_sync 0000000015 2011_09_26 2011_09_26_drive_0091_sync 0000000017 2011_09_26 2011_09_26_drive_0091_sync 0000000019 2011_09_26 2011_09_26_drive_0091_sync 0000000021 2011_09_26 2011_09_26_drive_0091_sync 0000000023 2011_09_26 2011_09_26_drive_0091_sync 0000000025 2011_09_26 2011_09_26_drive_0091_sync 0000000027 2011_09_26 2011_09_26_drive_0091_sync 0000000029 2011_09_26 2011_09_26_drive_0091_sync 0000000031 2011_09_26 2011_09_26_drive_0091_sync 0000000033 2011_09_26 2011_09_26_drive_0091_sync 0000000035 2011_09_26 2011_09_26_drive_0091_sync 0000000037 2011_09_26 2011_09_26_drive_0091_sync 0000000039 2011_09_26 2011_09_26_drive_0091_sync 0000000041 2011_09_26 2011_09_26_drive_0091_sync 0000000043 2011_09_26 2011_09_26_drive_0091_sync 0000000045 2011_09_26 2011_09_26_drive_0091_sync 0000000047 2011_09_26 2011_09_26_drive_0091_sync 0000000049 2011_09_26 2011_09_26_drive_0091_sync 0000000051 2011_09_26 2011_09_26_drive_0091_sync 0000000053 2011_09_26 2011_09_26_drive_0091_sync 0000000055 2011_09_26 2011_09_26_drive_0091_sync 0000000057 2011_09_26 2011_09_26_drive_0091_sync 0000000059 2011_09_26 2011_09_26_drive_0091_sync 0000000061 2011_09_26 2011_09_26_drive_0091_sync 0000000063 2011_09_26 2011_09_26_drive_0091_sync 0000000065 2011_09_26 2011_09_26_drive_0091_sync 0000000067 2011_09_26 2011_09_26_drive_0091_sync 0000000069 2011_09_26 2011_09_26_drive_0091_sync 0000000071 2011_09_26 2011_09_26_drive_0091_sync 0000000073 2011_09_26 2011_09_26_drive_0091_sync 0000000075 2011_09_26 2011_09_26_drive_0091_sync 0000000077 2011_09_26 2011_09_26_drive_0091_sync 0000000079 2011_09_26 2011_09_26_drive_0091_sync 0000000081 2011_09_26 2011_09_26_drive_0091_sync 0000000083 2011_09_26 2011_09_26_drive_0091_sync 0000000085 2011_09_26 2011_09_26_drive_0091_sync 0000000087 2011_09_26 2011_09_26_drive_0091_sync 0000000089 2011_09_26 2011_09_26_drive_0091_sync 0000000091 2011_09_26 2011_09_26_drive_0091_sync 0000000093 2011_09_26 2011_09_26_drive_0091_sync 0000000095 2011_09_26 2011_09_26_drive_0091_sync 0000000097 2011_09_26 2011_09_26_drive_0091_sync 0000000099 2011_09_26 2011_09_26_drive_0091_sync 0000000101 2011_09_26 2011_09_26_drive_0091_sync 0000000103 2011_09_26 2011_09_26_drive_0091_sync 0000000105 2011_09_26 2011_09_26_drive_0091_sync 0000000107 2011_09_26 2011_09_26_drive_0091_sync 0000000109 2011_09_26 2011_09_26_drive_0091_sync 0000000111 2011_09_26 2011_09_26_drive_0091_sync 0000000113 2011_09_26 2011_09_26_drive_0091_sync 0000000115 2011_09_26 2011_09_26_drive_0091_sync 0000000117 2011_09_26 2011_09_26_drive_0091_sync 0000000119 2011_09_26 2011_09_26_drive_0091_sync 0000000122 2011_09_26 2011_09_26_drive_0091_sync 0000000125 2011_09_26 2011_09_26_drive_0091_sync 0000000127 2011_09_26 2011_09_26_drive_0091_sync 0000000130 2011_09_26 2011_09_26_drive_0091_sync 0000000207 2011_09_26 2011_09_26_drive_0091_sync 0000000210 2011_09_26 2011_09_26_drive_0091_sync 0000000213 2011_09_26 2011_09_26_drive_0091_sync 0000000215 2011_09_26 2011_09_26_drive_0091_sync 0000000217 2011_09_26 2011_09_26_drive_0091_sync 0000000219 2011_09_26 2011_09_26_drive_0091_sync 0000000221 2011_09_26 2011_09_26_drive_0091_sync 0000000223 2011_09_26 2011_09_26_drive_0091_sync 0000000225 2011_09_26 2011_09_26_drive_0091_sync 0000000227 2011_09_26 2011_09_26_drive_0091_sync 0000000229 2011_09_26 2011_09_26_drive_0091_sync 0000000231 2011_09_26 2011_09_26_drive_0091_sync 0000000233 2011_09_26 2011_09_26_drive_0091_sync 0000000235 2011_09_26 2011_09_26_drive_0091_sync 0000000237 2011_09_26 2011_09_26_drive_0091_sync 0000000239 2011_09_26 2011_09_26_drive_0091_sync 0000000241 2011_09_26 2011_09_26_drive_0091_sync 0000000243 2011_09_26 2011_09_26_drive_0091_sync 0000000245 2011_09_26 2011_09_26_drive_0091_sync 0000000247 2011_09_26 2011_09_26_drive_0091_sync 0000000249 2011_09_26 2011_09_26_drive_0091_sync 0000000251 2011_09_26 2011_09_26_drive_0091_sync 0000000253 2011_09_26 2011_09_26_drive_0091_sync 0000000255 2011_09_26 2011_09_26_drive_0091_sync 0000000257 2011_09_26 2011_09_26_drive_0091_sync 0000000259 2011_09_26 2011_09_26_drive_0091_sync 0000000261 2011_09_26 2011_09_26_drive_0091_sync 0000000263 2011_09_26 2011_09_26_drive_0091_sync 0000000265 2011_09_26 2011_09_26_drive_0091_sync 0000000267 2011_09_26 2011_09_26_drive_0091_sync 0000000269 2011_09_26 2011_09_26_drive_0091_sync 0000000271 2011_09_26 2011_09_26_drive_0091_sync 0000000273 2011_09_26 2011_09_26_drive_0091_sync 0000000275 2011_09_26 2011_09_26_drive_0091_sync 0000000277 2011_09_26 2011_09_26_drive_0091_sync 0000000279 2011_09_26 2011_09_26_drive_0091_sync 0000000281 2011_09_26 2011_09_26_drive_0091_sync 0000000283 2011_09_26 2011_09_26_drive_0091_sync 0000000285 2011_09_26 2011_09_26_drive_0091_sync 0000000287 2011_09_26 2011_09_26_drive_0091_sync 0000000289 2011_09_26 2011_09_26_drive_0091_sync 0000000291 2011_09_26 2011_09_26_drive_0091_sync 0000000293 2011_09_26 2011_09_26_drive_0091_sync 0000000295 2011_09_26 2011_09_26_drive_0091_sync 0000000297 2011_09_26 2011_09_26_drive_0091_sync 0000000299 2011_09_26 2011_09_26_drive_0091_sync 0000000301 2011_09_26 2011_09_26_drive_0091_sync 0000000303 2011_09_26 2011_09_26_drive_0091_sync 0000000305 2011_09_26 2011_09_26_drive_0091_sync 0000000307 2011_09_26 2011_09_26_drive_0091_sync 0000000309 2011_09_26 2011_09_26_drive_0091_sync 0000000311 2011_09_26 2011_09_26_drive_0091_sync 0000000313 2011_09_26 2011_09_26_drive_0091_sync 0000000315 2011_09_26 2011_09_26_drive_0091_sync 0000000317 2011_09_26 2011_09_26_drive_0091_sync 0000000319 2011_09_26 2011_09_26_drive_0091_sync 0000000321 2011_09_26 2011_09_26_drive_0091_sync 0000000323 2011_09_26 2011_09_26_drive_0091_sync 0000000325 2011_09_26 2011_09_26_drive_0091_sync 0000000327 2011_09_26 2011_09_26_drive_0091_sync 0000000329 2011_09_26 2011_09_26_drive_0091_sync 0000000331 2011_09_26 2011_09_26_drive_0091_sync 0000000333 2011_09_26 2011_09_26_drive_0091_sync 0000000335 2011_09_26 2011_09_26_drive_0091_sync 0000000337 2011_09_26 2011_09_26_drive_0091_sync 0000000339 2011_09_26 2011_09_26_drive_0101_sync 0000000001 2011_09_26 2011_09_26_drive_0101_sync 0000000003 2011_09_26 2011_09_26_drive_0101_sync 0000000005 2011_09_26 2011_09_26_drive_0101_sync 0000000007 2011_09_26 2011_09_26_drive_0101_sync 0000000009 2011_09_26 2011_09_26_drive_0101_sync 0000000011 2011_09_26 2011_09_26_drive_0101_sync 0000000013 2011_09_26 2011_09_26_drive_0101_sync 0000000015 2011_09_26 2011_09_26_drive_0101_sync 0000000017 2011_09_26 2011_09_26_drive_0101_sync 0000000019 2011_09_26 2011_09_26_drive_0101_sync 0000000023 2011_09_26 2011_09_26_drive_0101_sync 0000000025 2011_09_26 2011_09_26_drive_0101_sync 0000000027 2011_09_26 2011_09_26_drive_0101_sync 0000000031 2011_09_26 2011_09_26_drive_0101_sync 0000000035 2011_09_26 2011_09_26_drive_0101_sync 0000000039 2011_09_26 2011_09_26_drive_0101_sync 0000000042 2011_09_26 2011_09_26_drive_0101_sync 0000000045 2011_09_26 2011_09_26_drive_0101_sync 0000000048 2011_09_26 2011_09_26_drive_0101_sync 0000000051 2011_09_26 2011_09_26_drive_0101_sync 0000000054 2011_09_26 2011_09_26_drive_0101_sync 0000000057 2011_09_26 2011_09_26_drive_0101_sync 0000000060 2011_09_26 2011_09_26_drive_0101_sync 0000000063 2011_09_26 2011_09_26_drive_0101_sync 0000000066 2011_09_26 2011_09_26_drive_0101_sync 0000000069 2011_09_26 2011_09_26_drive_0101_sync 0000000072 2011_09_26 2011_09_26_drive_0101_sync 0000000076 2011_09_26 2011_09_26_drive_0101_sync 0000000080 2011_09_26 2011_09_26_drive_0101_sync 0000000084 2011_09_26 2011_09_26_drive_0101_sync 0000000087 2011_09_26 2011_09_26_drive_0101_sync 0000000089 2011_09_26 2011_09_26_drive_0101_sync 0000000091 2011_09_26 2011_09_26_drive_0101_sync 0000000093 2011_09_26 2011_09_26_drive_0101_sync 0000000095 2011_09_26 2011_09_26_drive_0101_sync 0000000097 2011_09_26 2011_09_26_drive_0101_sync 0000000099 2011_09_26 2011_09_26_drive_0101_sync 0000000101 2011_09_26 2011_09_26_drive_0101_sync 0000000103 2011_09_26 2011_09_26_drive_0101_sync 0000000105 2011_09_26 2011_09_26_drive_0101_sync 0000000107 2011_09_26 2011_09_26_drive_0101_sync 0000000109 2011_09_26 2011_09_26_drive_0101_sync 0000000111 2011_09_26 2011_09_26_drive_0101_sync 0000000113 2011_09_26 2011_09_26_drive_0101_sync 0000000115 2011_09_26 2011_09_26_drive_0101_sync 0000000117 2011_09_26 2011_09_26_drive_0101_sync 0000000119 2011_09_26 2011_09_26_drive_0101_sync 0000000121 2011_09_26 2011_09_26_drive_0101_sync 0000000124 2011_09_26 2011_09_26_drive_0101_sync 0000000127 2011_09_26 2011_09_26_drive_0101_sync 0000000130 2011_09_26 2011_09_26_drive_0101_sync 0000000134 2011_09_26 2011_09_26_drive_0101_sync 0000000138 2011_09_26 2011_09_26_drive_0101_sync 0000000143 2011_09_26 2011_09_26_drive_0101_sync 0000000149 2011_09_26 2011_09_26_drive_0101_sync 0000000152 2011_09_26 2011_09_26_drive_0101_sync 0000000154 2011_09_26 2011_09_26_drive_0101_sync 0000000158 2011_09_26 2011_09_26_drive_0101_sync 0000000160 2011_09_26 2011_09_26_drive_0101_sync 0000000162 2011_09_26 2011_09_26_drive_0101_sync 0000000164 2011_09_26 2011_09_26_drive_0101_sync 0000000166 2011_09_26 2011_09_26_drive_0101_sync 0000000167 2011_09_26 2011_09_26_drive_0101_sync 0000000168 2011_09_26 2011_09_26_drive_0101_sync 0000000169 2011_09_26 2011_09_26_drive_0101_sync 0000000170 2011_09_26 2011_09_26_drive_0101_sync 0000000171 2011_09_26 2011_09_26_drive_0101_sync 0000000172 2011_09_26 2011_09_26_drive_0101_sync 0000000173 2011_09_26 2011_09_26_drive_0101_sync 0000000174 2011_09_26 2011_09_26_drive_0101_sync 0000000175 2011_09_26 2011_09_26_drive_0101_sync 0000000177 2011_09_26 2011_09_26_drive_0101_sync 0000000179 2011_09_26 2011_09_26_drive_0101_sync 0000000181 2011_09_26 2011_09_26_drive_0101_sync 0000000184 2011_09_26 2011_09_26_drive_0101_sync 0000000187 2011_09_26 2011_09_26_drive_0101_sync 0000000190 2011_09_26 2011_09_26_drive_0101_sync 0000000194 2011_09_26 2011_09_26_drive_0101_sync 0000000197 2011_09_26 2011_09_26_drive_0101_sync 0000000199 2011_09_26 2011_09_26_drive_0101_sync 0000000201 2011_09_26 2011_09_26_drive_0101_sync 0000000202 2011_09_26 2011_09_26_drive_0101_sync 0000000203 2011_09_26 2011_09_26_drive_0101_sync 0000000204 2011_09_26 2011_09_26_drive_0101_sync 0000000205 2011_09_26 2011_09_26_drive_0101_sync 0000000206 2011_09_26 2011_09_26_drive_0101_sync 0000000207 2011_09_26 2011_09_26_drive_0101_sync 0000000208 2011_09_26 2011_09_26_drive_0101_sync 0000000209 2011_09_26 2011_09_26_drive_0101_sync 0000000210 2011_09_26 2011_09_26_drive_0101_sync 0000000211 2011_09_26 2011_09_26_drive_0101_sync 0000000212 2011_09_26 2011_09_26_drive_0101_sync 0000000213 2011_09_26 2011_09_26_drive_0101_sync 0000000214 2011_09_26 2011_09_26_drive_0101_sync 0000000215 2011_09_26 2011_09_26_drive_0101_sync 0000000216 2011_09_26 2011_09_26_drive_0101_sync 0000000217 2011_09_26 2011_09_26_drive_0101_sync 0000000218 2011_09_26 2011_09_26_drive_0101_sync 0000000219 2011_09_26 2011_09_26_drive_0101_sync 0000000220 2011_09_26 2011_09_26_drive_0101_sync 0000000221 2011_09_26 2011_09_26_drive_0101_sync 0000000222 2011_09_26 2011_09_26_drive_0101_sync 0000000223 2011_09_26 2011_09_26_drive_0101_sync 0000000224 2011_09_26 2011_09_26_drive_0101_sync 0000000225 2011_09_26 2011_09_26_drive_0101_sync 0000000226 2011_09_26 2011_09_26_drive_0101_sync 0000000227 2011_09_26 2011_09_26_drive_0101_sync 0000000228 2011_09_26 2011_09_26_drive_0101_sync 0000000229 2011_09_26 2011_09_26_drive_0101_sync 0000000230 2011_09_26 2011_09_26_drive_0101_sync 0000000231 2011_09_26 2011_09_26_drive_0101_sync 0000000232 2011_09_26 2011_09_26_drive_0101_sync 0000000233 2011_09_26 2011_09_26_drive_0101_sync 0000000234 2011_09_26 2011_09_26_drive_0101_sync 0000000235 2011_09_26 2011_09_26_drive_0101_sync 0000000236 2011_09_26 2011_09_26_drive_0101_sync 0000000237 2011_09_26 2011_09_26_drive_0101_sync 0000000238 2011_09_26 2011_09_26_drive_0101_sync 0000000239 2011_09_26 2011_09_26_drive_0101_sync 0000000240 2011_09_26 2011_09_26_drive_0101_sync 0000000241 2011_09_26 2011_09_26_drive_0101_sync 0000000242 2011_09_26 2011_09_26_drive_0101_sync 0000000243 2011_09_26 2011_09_26_drive_0101_sync 0000000244 2011_09_26 2011_09_26_drive_0101_sync 0000000245 2011_09_26 2011_09_26_drive_0101_sync 0000000246 2011_09_26 2011_09_26_drive_0101_sync 0000000247 2011_09_26 2011_09_26_drive_0101_sync 0000000248 2011_09_26 2011_09_26_drive_0101_sync 0000000249 2011_09_26 2011_09_26_drive_0101_sync 0000000250 2011_09_26 2011_09_26_drive_0101_sync 0000000251 2011_09_26 2011_09_26_drive_0101_sync 0000000252 2011_09_26 2011_09_26_drive_0101_sync 0000000253 2011_09_26 2011_09_26_drive_0101_sync 0000000254 2011_09_26 2011_09_26_drive_0101_sync 0000000255 2011_09_26 2011_09_26_drive_0101_sync 0000000256 2011_09_26 2011_09_26_drive_0101_sync 0000000257 2011_09_26 2011_09_26_drive_0101_sync 0000000259 2011_09_26 2011_09_26_drive_0101_sync 0000000261 2011_09_26 2011_09_26_drive_0101_sync 0000000263 2011_09_26 2011_09_26_drive_0101_sync 0000000265 2011_09_26 2011_09_26_drive_0101_sync 0000000266 2011_09_26 2011_09_26_drive_0101_sync 0000000269 2011_09_26 2011_09_26_drive_0101_sync 0000000272 2011_09_26 2011_09_26_drive_0101_sync 0000000275 2011_09_26 2011_09_26_drive_0101_sync 0000000278 2011_09_26 2011_09_26_drive_0101_sync 0000000280 2011_09_26 2011_09_26_drive_0101_sync 0000000282 2011_09_26 2011_09_26_drive_0101_sync 0000000284 2011_09_26 2011_09_26_drive_0101_sync 0000000286 2011_09_26 2011_09_26_drive_0101_sync 0000000288 2011_09_26 2011_09_26_drive_0101_sync 0000000290 2011_09_26 2011_09_26_drive_0101_sync 0000000292 2011_09_26 2011_09_26_drive_0101_sync 0000000293 2011_09_26 2011_09_26_drive_0101_sync 0000000294 2011_09_26 2011_09_26_drive_0101_sync 0000000295 2011_09_26 2011_09_26_drive_0101_sync 0000000296 2011_09_26 2011_09_26_drive_0101_sync 0000000297 2011_09_26 2011_09_26_drive_0101_sync 0000000298 2011_09_26 2011_09_26_drive_0101_sync 0000000299 2011_09_26 2011_09_26_drive_0101_sync 0000000300 2011_09_26 2011_09_26_drive_0101_sync 0000000301 2011_09_26 2011_09_26_drive_0101_sync 0000000302 2011_09_26 2011_09_26_drive_0101_sync 0000000303 2011_09_26 2011_09_26_drive_0101_sync 0000000304 2011_09_26 2011_09_26_drive_0101_sync 0000000305 2011_09_26 2011_09_26_drive_0101_sync 0000000306 2011_09_26 2011_09_26_drive_0101_sync 0000000307 2011_09_26 2011_09_26_drive_0101_sync 0000000308 2011_09_26 2011_09_26_drive_0101_sync 0000000309 2011_09_26 2011_09_26_drive_0101_sync 0000000310 2011_09_26 2011_09_26_drive_0101_sync 0000000312 2011_09_26 2011_09_26_drive_0101_sync 0000000314 2011_09_26 2011_09_26_drive_0101_sync 0000000315 2011_09_26 2011_09_26_drive_0101_sync 0000000316 2011_09_26 2011_09_26_drive_0101_sync 0000000317 2011_09_26 2011_09_26_drive_0101_sync 0000000318 2011_09_26 2011_09_26_drive_0101_sync 0000000319 2011_09_26 2011_09_26_drive_0101_sync 0000000320 2011_09_26 2011_09_26_drive_0101_sync 0000000321 2011_09_26 2011_09_26_drive_0101_sync 0000000322 2011_09_26 2011_09_26_drive_0101_sync 0000000323 2011_09_26 2011_09_26_drive_0101_sync 0000000324 2011_09_26 2011_09_26_drive_0101_sync 0000000325 2011_09_26 2011_09_26_drive_0101_sync 0000000326 2011_09_26 2011_09_26_drive_0101_sync 0000000327 2011_09_26 2011_09_26_drive_0101_sync 0000000328 2011_09_26 2011_09_26_drive_0101_sync 0000000329 2011_09_26 2011_09_26_drive_0101_sync 0000000330 2011_09_26 2011_09_26_drive_0101_sync 0000000331 2011_09_26 2011_09_26_drive_0101_sync 0000000332 2011_09_26 2011_09_26_drive_0101_sync 0000000333 2011_09_26 2011_09_26_drive_0101_sync 0000000338 2011_09_26 2011_09_26_drive_0101_sync 0000000342 2011_09_26 2011_09_26_drive_0101_sync 0000000347 2011_09_26 2011_09_26_drive_0101_sync 0000000351 2011_09_26 2011_09_26_drive_0101_sync 0000000354 2011_09_26 2011_09_26_drive_0101_sync 0000000357 2011_09_26 2011_09_26_drive_0101_sync 0000000360 2011_09_26 2011_09_26_drive_0101_sync 0000000363 2011_09_26 2011_09_26_drive_0101_sync 0000000366 2011_09_26 2011_09_26_drive_0101_sync 0000000369 2011_09_26 2011_09_26_drive_0101_sync 0000000372 2011_09_26 2011_09_26_drive_0101_sync 0000000375 2011_09_26 2011_09_26_drive_0101_sync 0000000378 2011_09_26 2011_09_26_drive_0101_sync 0000000381 2011_09_26 2011_09_26_drive_0101_sync 0000000384 2011_09_26 2011_09_26_drive_0101_sync 0000000386 2011_09_26 2011_09_26_drive_0101_sync 0000000388 2011_09_26 2011_09_26_drive_0101_sync 0000000390 2011_09_26 2011_09_26_drive_0101_sync 0000000392 2011_09_26 2011_09_26_drive_0101_sync 0000000394 2011_09_26 2011_09_26_drive_0101_sync 0000000396 2011_09_26 2011_09_26_drive_0101_sync 0000000398 2011_09_26 2011_09_26_drive_0101_sync 0000000401 2011_09_26 2011_09_26_drive_0101_sync 0000000410 2011_09_26 2011_09_26_drive_0101_sync 0000000411 2011_09_26 2011_09_26_drive_0101_sync 0000000412 2011_09_26 2011_09_26_drive_0101_sync 0000000413 2011_09_26 2011_09_26_drive_0101_sync 0000000414 2011_09_26 2011_09_26_drive_0101_sync 0000000415 2011_09_26 2011_09_26_drive_0101_sync 0000000418 2011_09_26 2011_09_26_drive_0101_sync 0000000419 2011_09_26 2011_09_26_drive_0101_sync 0000000420 2011_09_26 2011_09_26_drive_0101_sync 0000000421 2011_09_26 2011_09_26_drive_0101_sync 0000000422 2011_09_26 2011_09_26_drive_0101_sync 0000000423 2011_09_26 2011_09_26_drive_0101_sync 0000000424 2011_09_26 2011_09_26_drive_0101_sync 0000000425 2011_09_26 2011_09_26_drive_0101_sync 0000000426 2011_09_26 2011_09_26_drive_0101_sync 0000000427 2011_09_26 2011_09_26_drive_0101_sync 0000000429 2011_09_26 2011_09_26_drive_0101_sync 0000000430 2011_09_26 2011_09_26_drive_0101_sync 0000000431 2011_09_26 2011_09_26_drive_0101_sync 0000000432 2011_09_26 2011_09_26_drive_0101_sync 0000000433 2011_09_26 2011_09_26_drive_0101_sync 0000000434 2011_09_26 2011_09_26_drive_0101_sync 0000000435 2011_09_26 2011_09_26_drive_0101_sync 0000000436 2011_09_26 2011_09_26_drive_0101_sync 0000000437 2011_09_26 2011_09_26_drive_0101_sync 0000000438 2011_09_26 2011_09_26_drive_0101_sync 0000000439 2011_09_26 2011_09_26_drive_0101_sync 0000000440 2011_09_26 2011_09_26_drive_0101_sync 0000000441 2011_09_26 2011_09_26_drive_0101_sync 0000000442 2011_09_26 2011_09_26_drive_0101_sync 0000000443 2011_09_26 2011_09_26_drive_0101_sync 0000000444 2011_09_26 2011_09_26_drive_0101_sync 0000000445 2011_09_26 2011_09_26_drive_0101_sync 0000000446 2011_09_26 2011_09_26_drive_0101_sync 0000000447 2011_09_26 2011_09_26_drive_0101_sync 0000000448 2011_09_26 2011_09_26_drive_0101_sync 0000000449 2011_09_26 2011_09_26_drive_0101_sync 0000000450 2011_09_26 2011_09_26_drive_0101_sync 0000000451 2011_09_26 2011_09_26_drive_0101_sync 0000000452 2011_09_26 2011_09_26_drive_0101_sync 0000000453 2011_09_26 2011_09_26_drive_0101_sync 0000000454 2011_09_26 2011_09_26_drive_0101_sync 0000000455 2011_09_26 2011_09_26_drive_0101_sync 0000000456 2011_09_26 2011_09_26_drive_0101_sync 0000000459 2011_09_26 2011_09_26_drive_0101_sync 0000000495 2011_09_26 2011_09_26_drive_0101_sync 0000000496 2011_09_26 2011_09_26_drive_0101_sync 0000000497 2011_09_26 2011_09_26_drive_0101_sync 0000000498 2011_09_26 2011_09_26_drive_0101_sync 0000000499 2011_09_26 2011_09_26_drive_0101_sync 0000000500 2011_09_26 2011_09_26_drive_0101_sync 0000000501 2011_09_26 2011_09_26_drive_0101_sync 0000000502 2011_09_26 2011_09_26_drive_0101_sync 0000000503 2011_09_26 2011_09_26_drive_0101_sync 0000000504 2011_09_26 2011_09_26_drive_0101_sync 0000000505 2011_09_26 2011_09_26_drive_0101_sync 0000000506 2011_09_26 2011_09_26_drive_0101_sync 0000000507 2011_09_26 2011_09_26_drive_0101_sync 0000000524 2011_09_26 2011_09_26_drive_0101_sync 0000000525 2011_09_26 2011_09_26_drive_0101_sync 0000000526 2011_09_26 2011_09_26_drive_0101_sync 0000000527 2011_09_26 2011_09_26_drive_0101_sync 0000000528 2011_09_26 2011_09_26_drive_0101_sync 0000000529 2011_09_26 2011_09_26_drive_0101_sync 0000000530 2011_09_26 2011_09_26_drive_0101_sync 0000000531 2011_09_26 2011_09_26_drive_0101_sync 0000000532 2011_09_26 2011_09_26_drive_0101_sync 0000000533 2011_09_26 2011_09_26_drive_0101_sync 0000000534 2011_09_26 2011_09_26_drive_0101_sync 0000000535 2011_09_26 2011_09_26_drive_0101_sync 0000000536 2011_09_26 2011_09_26_drive_0101_sync 0000000537 2011_09_26 2011_09_26_drive_0101_sync 0000000538 2011_09_26 2011_09_26_drive_0101_sync 0000000539 2011_09_26 2011_09_26_drive_0101_sync 0000000540 2011_09_26 2011_09_26_drive_0101_sync 0000000541 2011_09_26 2011_09_26_drive_0101_sync 0000000542 2011_09_26 2011_09_26_drive_0101_sync 0000000543 2011_09_26 2011_09_26_drive_0101_sync 0000000544 2011_09_26 2011_09_26_drive_0101_sync 0000000545 2011_09_26 2011_09_26_drive_0101_sync 0000000546 2011_09_26 2011_09_26_drive_0101_sync 0000000547 2011_09_26 2011_09_26_drive_0101_sync 0000000548 2011_09_26 2011_09_26_drive_0101_sync 0000000549 2011_09_26 2011_09_26_drive_0101_sync 0000000550 2011_09_26 2011_09_26_drive_0101_sync 0000000551 2011_09_26 2011_09_26_drive_0101_sync 0000000552 2011_09_26 2011_09_26_drive_0101_sync 0000000553 2011_09_26 2011_09_26_drive_0101_sync 0000000554 2011_09_26 2011_09_26_drive_0101_sync 0000000555 2011_09_26 2011_09_26_drive_0101_sync 0000000556 2011_09_26 2011_09_26_drive_0101_sync 0000000557 2011_09_26 2011_09_26_drive_0101_sync 0000000558 2011_09_26 2011_09_26_drive_0101_sync 0000000559 2011_09_26 2011_09_26_drive_0101_sync 0000000560 2011_09_26 2011_09_26_drive_0101_sync 0000000561 2011_09_26 2011_09_26_drive_0101_sync 0000000562 2011_09_26 2011_09_26_drive_0101_sync 0000000563 2011_09_26 2011_09_26_drive_0101_sync 0000000564 2011_09_26 2011_09_26_drive_0101_sync 0000000565 2011_09_26 2011_09_26_drive_0101_sync 0000000566 2011_09_26 2011_09_26_drive_0101_sync 0000000567 2011_09_26 2011_09_26_drive_0101_sync 0000000568 2011_09_26 2011_09_26_drive_0101_sync 0000000569 2011_09_26 2011_09_26_drive_0101_sync 0000000570 2011_09_26 2011_09_26_drive_0101_sync 0000000571 2011_09_26 2011_09_26_drive_0101_sync 0000000572 2011_09_26 2011_09_26_drive_0101_sync 0000000573 2011_09_26 2011_09_26_drive_0101_sync 0000000574 2011_09_26 2011_09_26_drive_0101_sync 0000000575 2011_09_26 2011_09_26_drive_0101_sync 0000000576 2011_09_26 2011_09_26_drive_0101_sync 0000000577 2011_09_26 2011_09_26_drive_0101_sync 0000000578 2011_09_26 2011_09_26_drive_0101_sync 0000000579 2011_09_26 2011_09_26_drive_0101_sync 0000000580 2011_09_26 2011_09_26_drive_0101_sync 0000000581 2011_09_26 2011_09_26_drive_0101_sync 0000000582 2011_09_26 2011_09_26_drive_0101_sync 0000000583 2011_09_26 2011_09_26_drive_0101_sync 0000000584 2011_09_26 2011_09_26_drive_0101_sync 0000000585 2011_09_26 2011_09_26_drive_0101_sync 0000000586 2011_09_26 2011_09_26_drive_0101_sync 0000000587 2011_09_26 2011_09_26_drive_0101_sync 0000000588 2011_09_26 2011_09_26_drive_0101_sync 0000000589 2011_09_26 2011_09_26_drive_0101_sync 0000000590 2011_09_26 2011_09_26_drive_0101_sync 0000000591 2011_09_26 2011_09_26_drive_0101_sync 0000000592 2011_09_26 2011_09_26_drive_0101_sync 0000000593 2011_09_26 2011_09_26_drive_0101_sync 0000000594 2011_09_26 2011_09_26_drive_0101_sync 0000000595 2011_09_26 2011_09_26_drive_0101_sync 0000000596 2011_09_26 2011_09_26_drive_0101_sync 0000000597 2011_09_26 2011_09_26_drive_0101_sync 0000000598 2011_09_26 2011_09_26_drive_0101_sync 0000000599 2011_09_26 2011_09_26_drive_0101_sync 0000000600 2011_09_26 2011_09_26_drive_0101_sync 0000000601 2011_09_26 2011_09_26_drive_0101_sync 0000000602 2011_09_26 2011_09_26_drive_0101_sync 0000000603 2011_09_26 2011_09_26_drive_0101_sync 0000000604 2011_09_26 2011_09_26_drive_0101_sync 0000000605 2011_09_26 2011_09_26_drive_0101_sync 0000000606 2011_09_26 2011_09_26_drive_0101_sync 0000000607 2011_09_26 2011_09_26_drive_0101_sync 0000000608 2011_09_26 2011_09_26_drive_0101_sync 0000000609 2011_09_26 2011_09_26_drive_0101_sync 0000000620 2011_09_26 2011_09_26_drive_0101_sync 0000000621 2011_09_26 2011_09_26_drive_0101_sync 0000000622 2011_09_26 2011_09_26_drive_0101_sync 0000000623 2011_09_26 2011_09_26_drive_0101_sync 0000000624 2011_09_26 2011_09_26_drive_0101_sync 0000000625 2011_09_26 2011_09_26_drive_0101_sync 0000000626 2011_09_26 2011_09_26_drive_0101_sync 0000000627 2011_09_26 2011_09_26_drive_0101_sync 0000000628 2011_09_26 2011_09_26_drive_0101_sync 0000000629 2011_09_26 2011_09_26_drive_0101_sync 0000000630 2011_09_26 2011_09_26_drive_0101_sync 0000000631 2011_09_26 2011_09_26_drive_0101_sync 0000000632 2011_09_26 2011_09_26_drive_0101_sync 0000000633 2011_09_26 2011_09_26_drive_0101_sync 0000000634 2011_09_26 2011_09_26_drive_0101_sync 0000000635 2011_09_26 2011_09_26_drive_0101_sync 0000000636 2011_09_26 2011_09_26_drive_0101_sync 0000000637 2011_09_26 2011_09_26_drive_0101_sync 0000000649 2011_09_26 2011_09_26_drive_0101_sync 0000000650 2011_09_26 2011_09_26_drive_0101_sync 0000000651 2011_09_26 2011_09_26_drive_0101_sync 0000000652 2011_09_26 2011_09_26_drive_0101_sync 0000000653 2011_09_26 2011_09_26_drive_0101_sync 0000000654 2011_09_26 2011_09_26_drive_0101_sync 0000000655 2011_09_26 2011_09_26_drive_0101_sync 0000000656 2011_09_26 2011_09_26_drive_0101_sync 0000000657 2011_09_26 2011_09_26_drive_0101_sync 0000000658 2011_09_26 2011_09_26_drive_0101_sync 0000000659 2011_09_26 2011_09_26_drive_0101_sync 0000000660 2011_09_26 2011_09_26_drive_0101_sync 0000000661 2011_09_26 2011_09_26_drive_0101_sync 0000000687 2011_09_26 2011_09_26_drive_0101_sync 0000000688 2011_09_26 2011_09_26_drive_0101_sync 0000000689 2011_09_26 2011_09_26_drive_0101_sync 0000000690 2011_09_26 2011_09_26_drive_0101_sync 0000000691 2011_09_26 2011_09_26_drive_0101_sync 0000000692 2011_09_26 2011_09_26_drive_0101_sync 0000000693 2011_09_26 2011_09_26_drive_0101_sync 0000000694 2011_09_26 2011_09_26_drive_0101_sync 0000000695 2011_09_26 2011_09_26_drive_0101_sync 0000000696 2011_09_26 2011_09_26_drive_0101_sync 0000000697 2011_09_26 2011_09_26_drive_0101_sync 0000000698 2011_09_26 2011_09_26_drive_0101_sync 0000000699 2011_09_26 2011_09_26_drive_0101_sync 0000000700 2011_09_26 2011_09_26_drive_0101_sync 0000000701 2011_09_26 2011_09_26_drive_0101_sync 0000000702 2011_09_26 2011_09_26_drive_0101_sync 0000000709 2011_09_26 2011_09_26_drive_0101_sync 0000000710 2011_09_26 2011_09_26_drive_0101_sync 0000000711 2011_09_26 2011_09_26_drive_0101_sync 0000000712 2011_09_26 2011_09_26_drive_0101_sync 0000000713 2011_09_26 2011_09_26_drive_0101_sync 0000000714 2011_09_26 2011_09_26_drive_0101_sync 0000000715 2011_09_26 2011_09_26_drive_0101_sync 0000000716 2011_09_26 2011_09_26_drive_0101_sync 0000000717 2011_09_26 2011_09_26_drive_0101_sync 0000000718 2011_09_26 2011_09_26_drive_0101_sync 0000000719 2011_09_26 2011_09_26_drive_0101_sync 0000000720 2011_09_26 2011_09_26_drive_0101_sync 0000000721 2011_09_26 2011_09_26_drive_0101_sync 0000000722 2011_09_26 2011_09_26_drive_0101_sync 0000000723 2011_09_26 2011_09_26_drive_0101_sync 0000000724 2011_09_26 2011_09_26_drive_0101_sync 0000000725 2011_09_26 2011_09_26_drive_0101_sync 0000000726 2011_09_26 2011_09_26_drive_0101_sync 0000000727 2011_09_26 2011_09_26_drive_0101_sync 0000000728 2011_09_26 2011_09_26_drive_0101_sync 0000000729 2011_09_26 2011_09_26_drive_0101_sync 0000000730 2011_09_26 2011_09_26_drive_0101_sync 0000000731 2011_09_26 2011_09_26_drive_0101_sync 0000000732 2011_09_26 2011_09_26_drive_0101_sync 0000000733 2011_09_26 2011_09_26_drive_0101_sync 0000000734 2011_09_26 2011_09_26_drive_0101_sync 0000000735 2011_09_26 2011_09_26_drive_0101_sync 0000000736 2011_09_26 2011_09_26_drive_0101_sync 0000000737 2011_09_26 2011_09_26_drive_0101_sync 0000000738 2011_09_26 2011_09_26_drive_0101_sync 0000000739 2011_09_26 2011_09_26_drive_0101_sync 0000000740 2011_09_26 2011_09_26_drive_0101_sync 0000000741 2011_09_26 2011_09_26_drive_0101_sync 0000000742 2011_09_26 2011_09_26_drive_0101_sync 0000000743 2011_09_26 2011_09_26_drive_0101_sync 0000000744 2011_09_26 2011_09_26_drive_0101_sync 0000000745 2011_09_26 2011_09_26_drive_0101_sync 0000000746 2011_09_26 2011_09_26_drive_0101_sync 0000000747 2011_09_26 2011_09_26_drive_0101_sync 0000000748 2011_09_26 2011_09_26_drive_0101_sync 0000000749 2011_09_26 2011_09_26_drive_0101_sync 0000000755 2011_09_26 2011_09_26_drive_0101_sync 0000000756 2011_09_26 2011_09_26_drive_0101_sync 0000000757 2011_09_26 2011_09_26_drive_0101_sync 0000000758 2011_09_26 2011_09_26_drive_0101_sync 0000000759 2011_09_26 2011_09_26_drive_0101_sync 0000000760 2011_09_26 2011_09_26_drive_0101_sync 0000000761 2011_09_26 2011_09_26_drive_0101_sync 0000000762 2011_09_26 2011_09_26_drive_0101_sync 0000000763 2011_09_26 2011_09_26_drive_0101_sync 0000000764 2011_09_26 2011_09_26_drive_0101_sync 0000000765 2011_09_26 2011_09_26_drive_0101_sync 0000000766 2011_09_26 2011_09_26_drive_0101_sync 0000000767 2011_09_26 2011_09_26_drive_0101_sync 0000000768 2011_09_26 2011_09_26_drive_0101_sync 0000000769 2011_09_26 2011_09_26_drive_0101_sync 0000000770 2011_09_26 2011_09_26_drive_0101_sync 0000000771 2011_09_26 2011_09_26_drive_0101_sync 0000000772 2011_09_26 2011_09_26_drive_0101_sync 0000000773 2011_09_26 2011_09_26_drive_0101_sync 0000000774 2011_09_26 2011_09_26_drive_0101_sync 0000000775 2011_09_26 2011_09_26_drive_0101_sync 0000000776 2011_09_26 2011_09_26_drive_0101_sync 0000000777 2011_09_26 2011_09_26_drive_0101_sync 0000000778 2011_09_26 2011_09_26_drive_0101_sync 0000000779 2011_09_26 2011_09_26_drive_0101_sync 0000000780 2011_09_26 2011_09_26_drive_0101_sync 0000000781 2011_09_26 2011_09_26_drive_0101_sync 0000000786 2011_09_26 2011_09_26_drive_0101_sync 0000000787 2011_09_26 2011_09_26_drive_0101_sync 0000000788 2011_09_26 2011_09_26_drive_0101_sync 0000000789 2011_09_26 2011_09_26_drive_0101_sync 0000000790 2011_09_26 2011_09_26_drive_0101_sync 0000000791 2011_09_26 2011_09_26_drive_0101_sync 0000000792 2011_09_26 2011_09_26_drive_0101_sync 0000000793 2011_09_26 2011_09_26_drive_0101_sync 0000000794 2011_09_26 2011_09_26_drive_0101_sync 0000000795 2011_09_26 2011_09_26_drive_0101_sync 0000000796 2011_09_26 2011_09_26_drive_0101_sync 0000000797 2011_09_26 2011_09_26_drive_0101_sync 0000000798 2011_09_26 2011_09_26_drive_0101_sync 0000000799 2011_09_26 2011_09_26_drive_0101_sync 0000000800 2011_09_26 2011_09_26_drive_0101_sync 0000000801 2011_09_26 2011_09_26_drive_0101_sync 0000000802 2011_09_26 2011_09_26_drive_0101_sync 0000000803 2011_09_26 2011_09_26_drive_0101_sync 0000000804 2011_09_26 2011_09_26_drive_0101_sync 0000000805 2011_09_26 2011_09_26_drive_0101_sync 0000000806 2011_09_26 2011_09_26_drive_0101_sync 0000000807 2011_09_26 2011_09_26_drive_0101_sync 0000000808 2011_09_26 2011_09_26_drive_0101_sync 0000000809 2011_09_26 2011_09_26_drive_0101_sync 0000000810 2011_09_26 2011_09_26_drive_0101_sync 0000000811 2011_09_26 2011_09_26_drive_0101_sync 0000000812 2011_09_26 2011_09_26_drive_0101_sync 0000000813 2011_09_26 2011_09_26_drive_0101_sync 0000000814 2011_09_26 2011_09_26_drive_0101_sync 0000000815 2011_09_26 2011_09_26_drive_0101_sync 0000000816 2011_09_26 2011_09_26_drive_0101_sync 0000000817 2011_09_26 2011_09_26_drive_0101_sync 0000000818 2011_09_26 2011_09_26_drive_0101_sync 0000000819 2011_09_26 2011_09_26_drive_0101_sync 0000000820 2011_09_26 2011_09_26_drive_0101_sync 0000000821 2011_09_26 2011_09_26_drive_0101_sync 0000000822 2011_09_26 2011_09_26_drive_0101_sync 0000000823 2011_09_26 2011_09_26_drive_0101_sync 0000000824 2011_09_26 2011_09_26_drive_0101_sync 0000000825 2011_09_26 2011_09_26_drive_0101_sync 0000000826 2011_09_26 2011_09_26_drive_0101_sync 0000000827 2011_09_26 2011_09_26_drive_0101_sync 0000000828 2011_09_26 2011_09_26_drive_0101_sync 0000000829 2011_09_26 2011_09_26_drive_0101_sync 0000000830 2011_09_26 2011_09_26_drive_0101_sync 0000000831 2011_09_26 2011_09_26_drive_0101_sync 0000000833 2011_09_26 2011_09_26_drive_0101_sync 0000000841 2011_09_26 2011_09_26_drive_0101_sync 0000000843 2011_09_26 2011_09_26_drive_0101_sync 0000000844 2011_09_26 2011_09_26_drive_0101_sync 0000000845 2011_09_26 2011_09_26_drive_0101_sync 0000000846 2011_09_26 2011_09_26_drive_0101_sync 0000000847 2011_09_26 2011_09_26_drive_0101_sync 0000000848 2011_09_26 2011_09_26_drive_0101_sync 0000000849 2011_09_26 2011_09_26_drive_0101_sync 0000000850 2011_09_26 2011_09_26_drive_0101_sync 0000000851 2011_09_26 2011_09_26_drive_0101_sync 0000000852 2011_09_26 2011_09_26_drive_0101_sync 0000000853 2011_09_26 2011_09_26_drive_0101_sync 0000000854 2011_09_26 2011_09_26_drive_0101_sync 0000000880 2011_09_26 2011_09_26_drive_0101_sync 0000000883 2011_09_26 2011_09_26_drive_0101_sync 0000000884 2011_09_26 2011_09_26_drive_0101_sync 0000000885 2011_09_26 2011_09_26_drive_0101_sync 0000000887 2011_09_26 2011_09_26_drive_0101_sync 0000000888 2011_09_26 2011_09_26_drive_0101_sync 0000000889 2011_09_26 2011_09_26_drive_0101_sync 0000000893 2011_09_26 2011_09_26_drive_0101_sync 0000000894 2011_09_26 2011_09_26_drive_0101_sync 0000000895 2011_09_26 2011_09_26_drive_0101_sync 0000000896 2011_09_26 2011_09_26_drive_0101_sync 0000000897 2011_09_26 2011_09_26_drive_0101_sync 0000000898 2011_09_26 2011_09_26_drive_0101_sync 0000000899 2011_09_26 2011_09_26_drive_0101_sync 0000000900 2011_09_26 2011_09_26_drive_0101_sync 0000000901 2011_09_26 2011_09_26_drive_0101_sync 0000000902 2011_09_26 2011_09_26_drive_0101_sync 0000000903 2011_09_26 2011_09_26_drive_0101_sync 0000000904 2011_09_26 2011_09_26_drive_0101_sync 0000000906 2011_09_26 2011_09_26_drive_0101_sync 0000000907 2011_09_26 2011_09_26_drive_0101_sync 0000000908 2011_09_26 2011_09_26_drive_0101_sync 0000000909 2011_09_26 2011_09_26_drive_0101_sync 0000000910 2011_09_26 2011_09_26_drive_0101_sync 0000000911 2011_09_26 2011_09_26_drive_0101_sync 0000000912 2011_09_26 2011_09_26_drive_0101_sync 0000000914 2011_09_26 2011_09_26_drive_0101_sync 0000000915 2011_09_26 2011_09_26_drive_0101_sync 0000000916 2011_09_26 2011_09_26_drive_0101_sync 0000000917 2011_09_26 2011_09_26_drive_0101_sync 0000000919 2011_09_26 2011_09_26_drive_0101_sync 0000000923 2011_09_26 2011_09_26_drive_0101_sync 0000000924 2011_09_26 2011_09_26_drive_0101_sync 0000000926 2011_09_26 2011_09_26_drive_0101_sync 0000000927 2011_09_26 2011_09_26_drive_0101_sync 0000000928 2011_09_26 2011_09_26_drive_0101_sync 0000000929 2011_09_26 2011_09_26_drive_0101_sync 0000000930 2011_09_26 2011_09_26_drive_0101_sync 0000000931 2011_09_26 2011_09_26_drive_0101_sync 0000000932 2011_09_26 2011_09_26_drive_0101_sync 0000000933 2011_09_26 2011_09_26_drive_0101_sync 0000000934 2011_09_26 2011_09_26_drive_0101_sync 0000000935 2011_09_26 2011_09_26_drive_0104_sync 0000000002 2011_09_26 2011_09_26_drive_0104_sync 0000000004 2011_09_26 2011_09_26_drive_0104_sync 0000000006 2011_09_26 2011_09_26_drive_0104_sync 0000000008 2011_09_26 2011_09_26_drive_0104_sync 0000000010 2011_09_26 2011_09_26_drive_0104_sync 0000000012 2011_09_26 2011_09_26_drive_0104_sync 0000000014 2011_09_26 2011_09_26_drive_0104_sync 0000000016 2011_09_26 2011_09_26_drive_0104_sync 0000000018 2011_09_26 2011_09_26_drive_0104_sync 0000000020 2011_09_26 2011_09_26_drive_0104_sync 0000000022 2011_09_26 2011_09_26_drive_0104_sync 0000000024 2011_09_26 2011_09_26_drive_0104_sync 0000000026 2011_09_26 2011_09_26_drive_0104_sync 0000000028 2011_09_26 2011_09_26_drive_0104_sync 0000000030 2011_09_26 2011_09_26_drive_0104_sync 0000000032 2011_09_26 2011_09_26_drive_0104_sync 0000000034 2011_09_26 2011_09_26_drive_0104_sync 0000000036 2011_09_26 2011_09_26_drive_0104_sync 0000000038 2011_09_26 2011_09_26_drive_0104_sync 0000000040 2011_09_26 2011_09_26_drive_0104_sync 0000000042 2011_09_26 2011_09_26_drive_0104_sync 0000000044 2011_09_26 2011_09_26_drive_0104_sync 0000000046 2011_09_26 2011_09_26_drive_0104_sync 0000000048 2011_09_26 2011_09_26_drive_0104_sync 0000000050 2011_09_26 2011_09_26_drive_0104_sync 0000000052 2011_09_26 2011_09_26_drive_0104_sync 0000000054 2011_09_26 2011_09_26_drive_0104_sync 0000000056 2011_09_26 2011_09_26_drive_0104_sync 0000000058 2011_09_26 2011_09_26_drive_0104_sync 0000000060 2011_09_26 2011_09_26_drive_0104_sync 0000000062 2011_09_26 2011_09_26_drive_0104_sync 0000000064 2011_09_26 2011_09_26_drive_0104_sync 0000000066 2011_09_26 2011_09_26_drive_0104_sync 0000000068 2011_09_26 2011_09_26_drive_0104_sync 0000000070 2011_09_26 2011_09_26_drive_0104_sync 0000000072 2011_09_26 2011_09_26_drive_0104_sync 0000000074 2011_09_26 2011_09_26_drive_0104_sync 0000000076 2011_09_26 2011_09_26_drive_0104_sync 0000000078 2011_09_26 2011_09_26_drive_0104_sync 0000000080 2011_09_26 2011_09_26_drive_0104_sync 0000000082 2011_09_26 2011_09_26_drive_0104_sync 0000000084 2011_09_26 2011_09_26_drive_0104_sync 0000000086 2011_09_26 2011_09_26_drive_0104_sync 0000000088 2011_09_26 2011_09_26_drive_0104_sync 0000000090 2011_09_26 2011_09_26_drive_0104_sync 0000000092 2011_09_26 2011_09_26_drive_0104_sync 0000000094 2011_09_26 2011_09_26_drive_0104_sync 0000000096 2011_09_26 2011_09_26_drive_0104_sync 0000000098 2011_09_26 2011_09_26_drive_0104_sync 0000000100 2011_09_26 2011_09_26_drive_0104_sync 0000000102 2011_09_26 2011_09_26_drive_0104_sync 0000000104 2011_09_26 2011_09_26_drive_0104_sync 0000000106 2011_09_26 2011_09_26_drive_0104_sync 0000000108 2011_09_26 2011_09_26_drive_0104_sync 0000000110 2011_09_26 2011_09_26_drive_0104_sync 0000000112 2011_09_26 2011_09_26_drive_0104_sync 0000000114 2011_09_26 2011_09_26_drive_0104_sync 0000000118 2011_09_26 2011_09_26_drive_0104_sync 0000000120 2011_09_26 2011_09_26_drive_0104_sync 0000000122 2011_09_26 2011_09_26_drive_0104_sync 0000000124 2011_09_26 2011_09_26_drive_0104_sync 0000000126 2011_09_26 2011_09_26_drive_0104_sync 0000000128 2011_09_26 2011_09_26_drive_0104_sync 0000000130 2011_09_26 2011_09_26_drive_0104_sync 0000000132 2011_09_26 2011_09_26_drive_0104_sync 0000000134 2011_09_26 2011_09_26_drive_0104_sync 0000000136 2011_09_26 2011_09_26_drive_0104_sync 0000000138 2011_09_26 2011_09_26_drive_0104_sync 0000000140 2011_09_26 2011_09_26_drive_0104_sync 0000000142 2011_09_26 2011_09_26_drive_0104_sync 0000000144 2011_09_26 2011_09_26_drive_0104_sync 0000000146 2011_09_26 2011_09_26_drive_0104_sync 0000000148 2011_09_26 2011_09_26_drive_0104_sync 0000000150 2011_09_26 2011_09_26_drive_0104_sync 0000000152 2011_09_26 2011_09_26_drive_0104_sync 0000000154 2011_09_26 2011_09_26_drive_0104_sync 0000000156 2011_09_26 2011_09_26_drive_0104_sync 0000000158 2011_09_26 2011_09_26_drive_0104_sync 0000000160 2011_09_26 2011_09_26_drive_0104_sync 0000000162 2011_09_26 2011_09_26_drive_0104_sync 0000000164 2011_09_26 2011_09_26_drive_0104_sync 0000000166 2011_09_26 2011_09_26_drive_0104_sync 0000000168 2011_09_26 2011_09_26_drive_0104_sync 0000000170 2011_09_26 2011_09_26_drive_0104_sync 0000000172 2011_09_26 2011_09_26_drive_0104_sync 0000000174 2011_09_26 2011_09_26_drive_0104_sync 0000000176 2011_09_26 2011_09_26_drive_0104_sync 0000000178 2011_09_26 2011_09_26_drive_0104_sync 0000000180 2011_09_26 2011_09_26_drive_0104_sync 0000000182 2011_09_26 2011_09_26_drive_0104_sync 0000000184 2011_09_26 2011_09_26_drive_0104_sync 0000000186 2011_09_26 2011_09_26_drive_0104_sync 0000000188 2011_09_26 2011_09_26_drive_0104_sync 0000000190 2011_09_26 2011_09_26_drive_0104_sync 0000000192 2011_09_26 2011_09_26_drive_0104_sync 0000000194 2011_09_26 2011_09_26_drive_0104_sync 0000000196 2011_09_26 2011_09_26_drive_0104_sync 0000000198 2011_09_26 2011_09_26_drive_0104_sync 0000000200 2011_09_26 2011_09_26_drive_0104_sync 0000000202 2011_09_26 2011_09_26_drive_0104_sync 0000000204 2011_09_26 2011_09_26_drive_0104_sync 0000000206 2011_09_26 2011_09_26_drive_0104_sync 0000000208 2011_09_26 2011_09_26_drive_0104_sync 0000000210 2011_09_26 2011_09_26_drive_0104_sync 0000000212 2011_09_26 2011_09_26_drive_0104_sync 0000000214 2011_09_26 2011_09_26_drive_0104_sync 0000000216 2011_09_26 2011_09_26_drive_0104_sync 0000000218 2011_09_26 2011_09_26_drive_0104_sync 0000000220 2011_09_26 2011_09_26_drive_0104_sync 0000000222 2011_09_26 2011_09_26_drive_0104_sync 0000000224 2011_09_26 2011_09_26_drive_0104_sync 0000000226 2011_09_26 2011_09_26_drive_0104_sync 0000000228 2011_09_26 2011_09_26_drive_0104_sync 0000000230 2011_09_26 2011_09_26_drive_0104_sync 0000000232 2011_09_26 2011_09_26_drive_0104_sync 0000000234 2011_09_26 2011_09_26_drive_0104_sync 0000000236 2011_09_26 2011_09_26_drive_0104_sync 0000000238 2011_09_26 2011_09_26_drive_0104_sync 0000000240 2011_09_26 2011_09_26_drive_0104_sync 0000000242 2011_09_26 2011_09_26_drive_0104_sync 0000000244 2011_09_26 2011_09_26_drive_0104_sync 0000000246 2011_09_26 2011_09_26_drive_0104_sync 0000000248 2011_09_26 2011_09_26_drive_0104_sync 0000000250 2011_09_26 2011_09_26_drive_0104_sync 0000000252 2011_09_26 2011_09_26_drive_0104_sync 0000000254 2011_09_26 2011_09_26_drive_0104_sync 0000000256 2011_09_26 2011_09_26_drive_0104_sync 0000000258 2011_09_26 2011_09_26_drive_0104_sync 0000000260 2011_09_26 2011_09_26_drive_0104_sync 0000000262 2011_09_26 2011_09_26_drive_0104_sync 0000000266 2011_09_26 2011_09_26_drive_0104_sync 0000000268 2011_09_26 2011_09_26_drive_0104_sync 0000000272 2011_09_26 2011_09_26_drive_0104_sync 0000000274 2011_09_26 2011_09_26_drive_0104_sync 0000000276 2011_09_26 2011_09_26_drive_0104_sync 0000000278 2011_09_26 2011_09_26_drive_0104_sync 0000000280 2011_09_26 2011_09_26_drive_0104_sync 0000000282 2011_09_26 2011_09_26_drive_0104_sync 0000000284 2011_09_26 2011_09_26_drive_0104_sync 0000000286 2011_09_26 2011_09_26_drive_0104_sync 0000000288 2011_09_26 2011_09_26_drive_0104_sync 0000000290 2011_09_26 2011_09_26_drive_0104_sync 0000000292 2011_09_26 2011_09_26_drive_0104_sync 0000000294 2011_09_26 2011_09_26_drive_0104_sync 0000000296 2011_09_26 2011_09_26_drive_0104_sync 0000000298 2011_09_26 2011_09_26_drive_0104_sync 0000000300 2011_09_26 2011_09_26_drive_0104_sync 0000000302 2011_09_26 2011_09_26_drive_0104_sync 0000000304 2011_09_26 2011_09_26_drive_0104_sync 0000000306 2011_09_26 2011_09_26_drive_0104_sync 0000000308 2011_09_26 2011_09_26_drive_0104_sync 0000000310 2011_09_28 2011_09_28_drive_0002_sync 0000000003 2011_09_28 2011_09_28_drive_0002_sync 0000000004 2011_09_28 2011_09_28_drive_0002_sync 0000000005 2011_09_28 2011_09_28_drive_0002_sync 0000000006 2011_09_28 2011_09_28_drive_0002_sync 0000000007 2011_09_28 2011_09_28_drive_0002_sync 0000000008 2011_09_28 2011_09_28_drive_0002_sync 0000000009 2011_09_28 2011_09_28_drive_0002_sync 0000000010 2011_09_28 2011_09_28_drive_0002_sync 0000000011 2011_09_28 2011_09_28_drive_0002_sync 0000000012 2011_09_28 2011_09_28_drive_0002_sync 0000000013 2011_09_28 2011_09_28_drive_0002_sync 0000000014 2011_09_28 2011_09_28_drive_0002_sync 0000000015 2011_09_28 2011_09_28_drive_0002_sync 0000000016 2011_09_28 2011_09_28_drive_0002_sync 0000000017 2011_09_28 2011_09_28_drive_0002_sync 0000000018 2011_09_28 2011_09_28_drive_0002_sync 0000000019 2011_09_28 2011_09_28_drive_0002_sync 0000000020 2011_09_28 2011_09_28_drive_0002_sync 0000000021 2011_09_28 2011_09_28_drive_0002_sync 0000000022 2011_09_28 2011_09_28_drive_0002_sync 0000000023 2011_09_28 2011_09_28_drive_0002_sync 0000000024 2011_09_28 2011_09_28_drive_0002_sync 0000000025 2011_09_28 2011_09_28_drive_0002_sync 0000000026 2011_09_28 2011_09_28_drive_0002_sync 0000000027 2011_09_28 2011_09_28_drive_0002_sync 0000000028 2011_09_28 2011_09_28_drive_0002_sync 0000000029 2011_09_28 2011_09_28_drive_0002_sync 0000000030 2011_09_28 2011_09_28_drive_0002_sync 0000000031 2011_09_28 2011_09_28_drive_0002_sync 0000000032 2011_09_28 2011_09_28_drive_0002_sync 0000000033 2011_09_28 2011_09_28_drive_0002_sync 0000000034 2011_09_28 2011_09_28_drive_0002_sync 0000000035 2011_09_28 2011_09_28_drive_0002_sync 0000000036 2011_09_28 2011_09_28_drive_0002_sync 0000000037 2011_09_28 2011_09_28_drive_0002_sync 0000000038 2011_09_28 2011_09_28_drive_0002_sync 0000000039 2011_09_28 2011_09_28_drive_0002_sync 0000000041 2011_09_28 2011_09_28_drive_0002_sync 0000000043 2011_09_28 2011_09_28_drive_0002_sync 0000000045 2011_09_28 2011_09_28_drive_0002_sync 0000000047 2011_09_28 2011_09_28_drive_0002_sync 0000000049 2011_09_28 2011_09_28_drive_0002_sync 0000000051 2011_09_28 2011_09_28_drive_0002_sync 0000000053 2011_09_28 2011_09_28_drive_0002_sync 0000000055 2011_09_28 2011_09_28_drive_0002_sync 0000000057 2011_09_28 2011_09_28_drive_0002_sync 0000000059 2011_09_28 2011_09_28_drive_0002_sync 0000000061 2011_09_28 2011_09_28_drive_0002_sync 0000000063 2011_09_28 2011_09_28_drive_0002_sync 0000000065 2011_09_28 2011_09_28_drive_0002_sync 0000000068 2011_09_28 2011_09_28_drive_0002_sync 0000000071 2011_09_28 2011_09_28_drive_0002_sync 0000000074 2011_09_28 2011_09_28_drive_0002_sync 0000000078 2011_09_28 2011_09_28_drive_0002_sync 0000000083 2011_09_28 2011_09_28_drive_0002_sync 0000000096 2011_09_28 2011_09_28_drive_0002_sync 0000000112 2011_09_28 2011_09_28_drive_0002_sync 0000000123 2011_09_28 2011_09_28_drive_0002_sync 0000000130 2011_09_28 2011_09_28_drive_0002_sync 0000000137 2011_09_28 2011_09_28_drive_0002_sync 0000000144 2011_09_28 2011_09_28_drive_0002_sync 0000000151 2011_09_28 2011_09_28_drive_0002_sync 0000000163 2011_09_28 2011_09_28_drive_0002_sync 0000000175 2011_09_28 2011_09_28_drive_0002_sync 0000000184 2011_09_28 2011_09_28_drive_0002_sync 0000000193 2011_09_28 2011_09_28_drive_0002_sync 0000000199 2011_09_28 2011_09_28_drive_0002_sync 0000000207 2011_09_28 2011_09_28_drive_0002_sync 0000000215 2011_09_28 2011_09_28_drive_0002_sync 0000000222 2011_09_28 2011_09_28_drive_0002_sync 0000000229 2011_09_28 2011_09_28_drive_0002_sync 0000000235 2011_09_28 2011_09_28_drive_0002_sync 0000000240 2011_09_28 2011_09_28_drive_0002_sync 0000000245 2011_09_28 2011_09_28_drive_0002_sync 0000000279 2011_09_28 2011_09_28_drive_0002_sync 0000000282 2011_09_28 2011_09_28_drive_0002_sync 0000000285 2011_09_28 2011_09_28_drive_0002_sync 0000000288 2011_09_28 2011_09_28_drive_0002_sync 0000000291 2011_09_28 2011_09_28_drive_0002_sync 0000000294 2011_09_28 2011_09_28_drive_0002_sync 0000000296 2011_09_28 2011_09_28_drive_0002_sync 0000000298 2011_09_28 2011_09_28_drive_0002_sync 0000000300 2011_09_28 2011_09_28_drive_0002_sync 0000000303 2011_09_28 2011_09_28_drive_0002_sync 0000000306 2011_09_28 2011_09_28_drive_0002_sync 0000000309 2011_09_28 2011_09_28_drive_0002_sync 0000000312 2011_09_28 2011_09_28_drive_0002_sync 0000000315 2011_09_28 2011_09_28_drive_0002_sync 0000000318 2011_09_28 2011_09_28_drive_0002_sync 0000000321 2011_09_28 2011_09_28_drive_0002_sync 0000000324 2011_09_28 2011_09_28_drive_0002_sync 0000000326 2011_09_28 2011_09_28_drive_0002_sync 0000000328 2011_09_28 2011_09_28_drive_0002_sync 0000000330 2011_09_28 2011_09_28_drive_0002_sync 0000000332 2011_09_28 2011_09_28_drive_0002_sync 0000000334 2011_09_28 2011_09_28_drive_0002_sync 0000000336 2011_09_28 2011_09_28_drive_0002_sync 0000000338 2011_09_28 2011_09_28_drive_0002_sync 0000000341 2011_09_28 2011_09_28_drive_0002_sync 0000000343 2011_09_28 2011_09_28_drive_0002_sync 0000000345 2011_09_28 2011_09_28_drive_0002_sync 0000000348 2011_09_28 2011_09_28_drive_0002_sync 0000000353 2011_09_28 2011_09_28_drive_0002_sync 0000000358 2011_09_28 2011_09_28_drive_0002_sync 0000000363 2011_09_28 2011_09_28_drive_0002_sync 0000000367 2011_09_28 2011_09_28_drive_0002_sync 0000000371 2011_09_28 2011_09_28_drive_0016_sync 0000000015 2011_09_28 2011_09_28_drive_0016_sync 0000000028 2011_09_28 2011_09_28_drive_0016_sync 0000000053 2011_09_28 2011_09_28_drive_0016_sync 0000000088 2011_09_28 2011_09_28_drive_0016_sync 0000000112 2011_09_28 2011_09_28_drive_0016_sync 0000000134 2011_09_28 2011_09_28_drive_0016_sync 0000000156 2011_09_28 2011_09_28_drive_0016_sync 0000000168 2011_09_28 2011_09_28_drive_0016_sync 0000000179 2011_09_28 2011_09_28_drive_0021_sync 0000000009 2011_09_28 2011_09_28_drive_0021_sync 0000000020 2011_09_28 2011_09_28_drive_0021_sync 0000000030 2011_09_28 2011_09_28_drive_0021_sync 0000000040 2011_09_28 2011_09_28_drive_0021_sync 0000000050 2011_09_28 2011_09_28_drive_0021_sync 0000000061 2011_09_28 2011_09_28_drive_0021_sync 0000000072 2011_09_28 2011_09_28_drive_0021_sync 0000000081 2011_09_28 2011_09_28_drive_0021_sync 0000000090 2011_09_28 2011_09_28_drive_0021_sync 0000000101 2011_09_28 2011_09_28_drive_0021_sync 0000000111 2011_09_28 2011_09_28_drive_0021_sync 0000000120 2011_09_28 2011_09_28_drive_0021_sync 0000000127 2011_09_28 2011_09_28_drive_0021_sync 0000000134 2011_09_28 2011_09_28_drive_0021_sync 0000000141 2011_09_28 2011_09_28_drive_0021_sync 0000000149 2011_09_28 2011_09_28_drive_0021_sync 0000000157 2011_09_28 2011_09_28_drive_0021_sync 0000000166 2011_09_28 2011_09_28_drive_0021_sync 0000000174 2011_09_28 2011_09_28_drive_0021_sync 0000000186 2011_09_28 2011_09_28_drive_0039_sync 0000000013 2011_09_28 2011_09_28_drive_0039_sync 0000000031 2011_09_28 2011_09_28_drive_0039_sync 0000000053 2011_09_28 2011_09_28_drive_0039_sync 0000000072 2011_09_28 2011_09_28_drive_0039_sync 0000000090 2011_09_28 2011_09_28_drive_0039_sync 0000000104 2011_09_28 2011_09_28_drive_0039_sync 0000000115 2011_09_28 2011_09_28_drive_0039_sync 0000000125 2011_09_28 2011_09_28_drive_0039_sync 0000000136 2011_09_28 2011_09_28_drive_0039_sync 0000000146 2011_09_28 2011_09_28_drive_0039_sync 0000000157 2011_09_28 2011_09_28_drive_0039_sync 0000000168 2011_09_28 2011_09_28_drive_0039_sync 0000000179 2011_09_28 2011_09_28_drive_0039_sync 0000000191 2011_09_28 2011_09_28_drive_0039_sync 0000000204 2011_09_28 2011_09_28_drive_0039_sync 0000000215 2011_09_28 2011_09_28_drive_0039_sync 0000000226 2011_09_28 2011_09_28_drive_0039_sync 0000000236 2011_09_28 2011_09_28_drive_0039_sync 0000000247 2011_09_28 2011_09_28_drive_0039_sync 0000000257 2011_09_28 2011_09_28_drive_0039_sync 0000000268 2011_09_28 2011_09_28_drive_0039_sync 0000000282 2011_09_28 2011_09_28_drive_0039_sync 0000000297 2011_09_28 2011_09_28_drive_0039_sync 0000000320 2011_09_29 2011_09_29_drive_0071_sync 0000000005 2011_09_29 2011_09_29_drive_0071_sync 0000000011 2011_09_29 2011_09_29_drive_0071_sync 0000000017 2011_09_29 2011_09_29_drive_0071_sync 0000000022 2011_09_29 2011_09_29_drive_0071_sync 0000000026 2011_09_29 2011_09_29_drive_0071_sync 0000000029 2011_09_29 2011_09_29_drive_0071_sync 0000000032 2011_09_29 2011_09_29_drive_0071_sync 0000000035 2011_09_29 2011_09_29_drive_0071_sync 0000000038 2011_09_29 2011_09_29_drive_0071_sync 0000000041 2011_09_29 2011_09_29_drive_0071_sync 0000000043 2011_09_29 2011_09_29_drive_0071_sync 0000000045 2011_09_29 2011_09_29_drive_0071_sync 0000000047 2011_09_29 2011_09_29_drive_0071_sync 0000000049 2011_09_29 2011_09_29_drive_0071_sync 0000000051 2011_09_29 2011_09_29_drive_0071_sync 0000000053 2011_09_29 2011_09_29_drive_0071_sync 0000000055 2011_09_29 2011_09_29_drive_0071_sync 0000000058 2011_09_29 2011_09_29_drive_0071_sync 0000000061 2011_09_29 2011_09_29_drive_0071_sync 0000000063 2011_09_29 2011_09_29_drive_0071_sync 0000000065 2011_09_29 2011_09_29_drive_0071_sync 0000000067 2011_09_29 2011_09_29_drive_0071_sync 0000000070 2011_09_29 2011_09_29_drive_0071_sync 0000000074 2011_09_29 2011_09_29_drive_0071_sync 0000000080 2011_09_29 2011_09_29_drive_0071_sync 0000000088 2011_09_29 2011_09_29_drive_0071_sync 0000000094 2011_09_29 2011_09_29_drive_0071_sync 0000000099 2011_09_29 2011_09_29_drive_0071_sync 0000000103 2011_09_29 2011_09_29_drive_0071_sync 0000000107 2011_09_29 2011_09_29_drive_0071_sync 0000000111 2011_09_29 2011_09_29_drive_0071_sync 0000000114 2011_09_29 2011_09_29_drive_0071_sync 0000000117 2011_09_29 2011_09_29_drive_0071_sync 0000000120 2011_09_29 2011_09_29_drive_0071_sync 0000000123 2011_09_29 2011_09_29_drive_0071_sync 0000000126 2011_09_29 2011_09_29_drive_0071_sync 0000000129 2011_09_29 2011_09_29_drive_0071_sync 0000000132 2011_09_29 2011_09_29_drive_0071_sync 0000000135 2011_09_29 2011_09_29_drive_0071_sync 0000000138 2011_09_29 2011_09_29_drive_0071_sync 0000000141 2011_09_29 2011_09_29_drive_0071_sync 0000000144 2011_09_29 2011_09_29_drive_0071_sync 0000000147 2011_09_29 2011_09_29_drive_0071_sync 0000000150 2011_09_29 2011_09_29_drive_0071_sync 0000000153 2011_09_29 2011_09_29_drive_0071_sync 0000000156 2011_09_29 2011_09_29_drive_0071_sync 0000000159 2011_09_29 2011_09_29_drive_0071_sync 0000000162 2011_09_29 2011_09_29_drive_0071_sync 0000000165 2011_09_29 2011_09_29_drive_0071_sync 0000000168 2011_09_29 2011_09_29_drive_0071_sync 0000000171 2011_09_29 2011_09_29_drive_0071_sync 0000000174 2011_09_29 2011_09_29_drive_0071_sync 0000000177 2011_09_29 2011_09_29_drive_0071_sync 0000000180 2011_09_29 2011_09_29_drive_0071_sync 0000000184 2011_09_29 2011_09_29_drive_0071_sync 0000000187 2011_09_29 2011_09_29_drive_0071_sync 0000000191 2011_09_29 2011_09_29_drive_0071_sync 0000000195 2011_09_29 2011_09_29_drive_0071_sync 0000000199 2011_09_29 2011_09_29_drive_0071_sync 0000000204 2011_09_29 2011_09_29_drive_0071_sync 0000000209 2011_09_29 2011_09_29_drive_0071_sync 0000000214 2011_09_29 2011_09_29_drive_0071_sync 0000000219 2011_09_29 2011_09_29_drive_0071_sync 0000000224 2011_09_29 2011_09_29_drive_0071_sync 0000000229 2011_09_29 2011_09_29_drive_0071_sync 0000000234 2011_09_29 2011_09_29_drive_0071_sync 0000000239 2011_09_29 2011_09_29_drive_0071_sync 0000000244 2011_09_29 2011_09_29_drive_0071_sync 0000000249 2011_09_29 2011_09_29_drive_0071_sync 0000000254 2011_09_29 2011_09_29_drive_0071_sync 0000000259 2011_09_29 2011_09_29_drive_0071_sync 0000000264 2011_09_29 2011_09_29_drive_0071_sync 0000000269 2011_09_29 2011_09_29_drive_0071_sync 0000000274 2011_09_29 2011_09_29_drive_0071_sync 0000000278 2011_09_29 2011_09_29_drive_0071_sync 0000000282 2011_09_29 2011_09_29_drive_0071_sync 0000000286 2011_09_29 2011_09_29_drive_0071_sync 0000000292 2011_09_29 2011_09_29_drive_0071_sync 0000000301 2011_09_29 2011_09_29_drive_0071_sync 0000000311 2011_09_29 2011_09_29_drive_0071_sync 0000000327 2011_09_29 2011_09_29_drive_0071_sync 0000000338 2011_09_29 2011_09_29_drive_0071_sync 0000000348 2011_09_29 2011_09_29_drive_0071_sync 0000000356 2011_09_29 2011_09_29_drive_0071_sync 0000000364 2011_09_29 2011_09_29_drive_0071_sync 0000000373 2011_09_29 2011_09_29_drive_0071_sync 0000000379 2011_09_29 2011_09_29_drive_0071_sync 0000000384 2011_09_29 2011_09_29_drive_0071_sync 0000000388 2011_09_29 2011_09_29_drive_0071_sync 0000000392 2011_09_29 2011_09_29_drive_0071_sync 0000000396 2011_09_29 2011_09_29_drive_0071_sync 0000000400 2011_09_29 2011_09_29_drive_0071_sync 0000000404 2011_09_29 2011_09_29_drive_0071_sync 0000000408 2011_09_29 2011_09_29_drive_0071_sync 0000000411 2011_09_29 2011_09_29_drive_0071_sync 0000000414 2011_09_29 2011_09_29_drive_0071_sync 0000000417 2011_09_29 2011_09_29_drive_0071_sync 0000000421 2011_09_29 2011_09_29_drive_0071_sync 0000000426 2011_09_29 2011_09_29_drive_0071_sync 0000000431 2011_09_29 2011_09_29_drive_0071_sync 0000000436 2011_09_29 2011_09_29_drive_0071_sync 0000000440 2011_09_29 2011_09_29_drive_0071_sync 0000000444 2011_09_29 2011_09_29_drive_0071_sync 0000000448 2011_09_29 2011_09_29_drive_0071_sync 0000000451 2011_09_29 2011_09_29_drive_0071_sync 0000000454 2011_09_29 2011_09_29_drive_0071_sync 0000000457 2011_09_29 2011_09_29_drive_0071_sync 0000000460 2011_09_29 2011_09_29_drive_0071_sync 0000000463 2011_09_29 2011_09_29_drive_0071_sync 0000000466 2011_09_29 2011_09_29_drive_0071_sync 0000000469 2011_09_29 2011_09_29_drive_0071_sync 0000000472 2011_09_29 2011_09_29_drive_0071_sync 0000000475 2011_09_29 2011_09_29_drive_0071_sync 0000000478 2011_09_29 2011_09_29_drive_0071_sync 0000000481 2011_09_29 2011_09_29_drive_0071_sync 0000000484 2011_09_29 2011_09_29_drive_0071_sync 0000000487 2011_09_29 2011_09_29_drive_0071_sync 0000000490 2011_09_29 2011_09_29_drive_0071_sync 0000000494 2011_09_29 2011_09_29_drive_0071_sync 0000000498 2011_09_29 2011_09_29_drive_0071_sync 0000000503 2011_09_29 2011_09_29_drive_0071_sync 0000000508 2011_09_29 2011_09_29_drive_0071_sync 0000000516 2011_09_29 2011_09_29_drive_0071_sync 0000000523 2011_09_29 2011_09_29_drive_0071_sync 0000000529 2011_09_29 2011_09_29_drive_0071_sync 0000000536 2011_09_29 2011_09_29_drive_0071_sync 0000000552 2011_09_29 2011_09_29_drive_0071_sync 0000000567 2011_09_29 2011_09_29_drive_0071_sync 0000000580 2011_09_29 2011_09_29_drive_0071_sync 0000000588 2011_09_29 2011_09_29_drive_0071_sync 0000000596 2011_09_29 2011_09_29_drive_0071_sync 0000000604 2011_09_29 2011_09_29_drive_0071_sync 0000000614 2011_09_29 2011_09_29_drive_0071_sync 0000000637 2011_09_29 2011_09_29_drive_0071_sync 0000000652 2011_09_29 2011_09_29_drive_0071_sync 0000000664 2011_09_29 2011_09_29_drive_0071_sync 0000000676 2011_09_29 2011_09_29_drive_0071_sync 0000000692 2011_09_29 2011_09_29_drive_0071_sync 0000000709 2011_09_29 2011_09_29_drive_0071_sync 0000000719 2011_09_29 2011_09_29_drive_0071_sync 0000000725 2011_09_29 2011_09_29_drive_0071_sync 0000000730 2011_09_29 2011_09_29_drive_0071_sync 0000000737 2011_09_29 2011_09_29_drive_0071_sync 0000000743 2011_09_29 2011_09_29_drive_0071_sync 0000000748 2011_09_29 2011_09_29_drive_0071_sync 0000000752 2011_09_29 2011_09_29_drive_0071_sync 0000000756 2011_09_29 2011_09_29_drive_0071_sync 0000000760 2011_09_29 2011_09_29_drive_0071_sync 0000000764 2011_09_29 2011_09_29_drive_0071_sync 0000000768 2011_09_29 2011_09_29_drive_0071_sync 0000000772 2011_09_29 2011_09_29_drive_0071_sync 0000000775 2011_09_29 2011_09_29_drive_0071_sync 0000000783 2011_09_29 2011_09_29_drive_0071_sync 0000000786 2011_09_29 2011_09_29_drive_0071_sync 0000000792 2011_09_29 2011_09_29_drive_0071_sync 0000000803 2011_09_29 2011_09_29_drive_0071_sync 0000000805 2011_09_29 2011_09_29_drive_0071_sync 0000000807 2011_09_29 2011_09_29_drive_0071_sync 0000000809 2011_09_29 2011_09_29_drive_0071_sync 0000000812 2011_09_29 2011_09_29_drive_0071_sync 0000000815 2011_09_29 2011_09_29_drive_0071_sync 0000000817 2011_09_29 2011_09_29_drive_0071_sync 0000000820 2011_09_29 2011_09_29_drive_0071_sync 0000000828 2011_09_29 2011_09_29_drive_0071_sync 0000000830 2011_09_29 2011_09_29_drive_0071_sync 0000000832 2011_09_29 2011_09_29_drive_0071_sync 0000000834 2011_09_29 2011_09_29_drive_0071_sync 0000000836 2011_09_29 2011_09_29_drive_0071_sync 0000000838 2011_09_29 2011_09_29_drive_0071_sync 0000000840 2011_09_29 2011_09_29_drive_0071_sync 0000000842 2011_09_29 2011_09_29_drive_0071_sync 0000000844 2011_09_29 2011_09_29_drive_0071_sync 0000000846 2011_09_29 2011_09_29_drive_0071_sync 0000000849 2011_09_29 2011_09_29_drive_0071_sync 0000000856 2011_09_29 2011_09_29_drive_0071_sync 0000000859 2011_09_29 2011_09_29_drive_0071_sync 0000000862 2011_09_29 2011_09_29_drive_0071_sync 0000000865 2011_09_29 2011_09_29_drive_0071_sync 0000000868 2011_09_29 2011_09_29_drive_0071_sync 0000000871 2011_09_29 2011_09_29_drive_0071_sync 0000000874 2011_09_29 2011_09_29_drive_0071_sync 0000000877 2011_09_29 2011_09_29_drive_0071_sync 0000000880 2011_09_29 2011_09_29_drive_0071_sync 0000000883 2011_09_29 2011_09_29_drive_0071_sync 0000000886 2011_09_29 2011_09_29_drive_0071_sync 0000000889 2011_09_29 2011_09_29_drive_0071_sync 0000000892 2011_09_29 2011_09_29_drive_0071_sync 0000000895 2011_09_29 2011_09_29_drive_0071_sync 0000000898 2011_09_29 2011_09_29_drive_0071_sync 0000000901 2011_09_29 2011_09_29_drive_0071_sync 0000000908 2011_09_29 2011_09_29_drive_0071_sync 0000000912 2011_09_29 2011_09_29_drive_0071_sync 0000000916 2011_09_29 2011_09_29_drive_0071_sync 0000000920 2011_09_29 2011_09_29_drive_0071_sync 0000000926 2011_09_29 2011_09_29_drive_0071_sync 0000000934 2011_09_29 2011_09_29_drive_0071_sync 0000000939 2011_09_29 2011_09_29_drive_0071_sync 0000000947 2011_09_29 2011_09_29_drive_0071_sync 0000000958 2011_09_29 2011_09_29_drive_0071_sync 0000000968 2011_09_29 2011_09_29_drive_0071_sync 0000000981 2011_09_29 2011_09_29_drive_0071_sync 0000000986 2011_09_29 2011_09_29_drive_0071_sync 0000000992 2011_09_29 2011_09_29_drive_0071_sync 0000001001 2011_09_29 2011_09_29_drive_0071_sync 0000001008 2011_09_29 2011_09_29_drive_0071_sync 0000001019 2011_09_29 2011_09_29_drive_0071_sync 0000001033 2011_09_29 2011_09_29_drive_0071_sync 0000001046 2011_10_03 2011_10_03_drive_0047_sync 0000000025 2011_10_03 2011_10_03_drive_0047_sync 0000000033 2011_10_03 2011_10_03_drive_0047_sync 0000000038 2011_10_03 2011_10_03_drive_0047_sync 0000000043 2011_10_03 2011_10_03_drive_0047_sync 0000000057 2011_10_03 2011_10_03_drive_0047_sync 0000000064 2011_10_03 2011_10_03_drive_0047_sync 0000000070 2011_10_03 2011_10_03_drive_0047_sync 0000000076 2011_10_03 2011_10_03_drive_0047_sync 0000000083 2011_10_03 2011_10_03_drive_0047_sync 0000000091 2011_10_03 2011_10_03_drive_0047_sync 0000000097 2011_10_03 2011_10_03_drive_0047_sync 0000000107 2011_10_03 2011_10_03_drive_0047_sync 0000000128 2011_10_03 2011_10_03_drive_0047_sync 0000000155 2011_10_03 2011_10_03_drive_0047_sync 0000000163 2011_10_03 2011_10_03_drive_0047_sync 0000000167 2011_10_03 2011_10_03_drive_0047_sync 0000000171 2011_10_03 2011_10_03_drive_0047_sync 0000000174 2011_10_03 2011_10_03_drive_0047_sync 0000000177 2011_10_03 2011_10_03_drive_0047_sync 0000000180 2011_10_03 2011_10_03_drive_0047_sync 0000000183 2011_10_03 2011_10_03_drive_0047_sync 0000000186 2011_10_03 2011_10_03_drive_0047_sync 0000000189 2011_10_03 2011_10_03_drive_0047_sync 0000000192 2011_10_03 2011_10_03_drive_0047_sync 0000000195 2011_10_03 2011_10_03_drive_0047_sync 0000000198 2011_10_03 2011_10_03_drive_0047_sync 0000000201 2011_10_03 2011_10_03_drive_0047_sync 0000000203 2011_10_03 2011_10_03_drive_0047_sync 0000000205 2011_10_03 2011_10_03_drive_0047_sync 0000000208 2011_10_03 2011_10_03_drive_0047_sync 0000000211 2011_10_03 2011_10_03_drive_0047_sync 0000000214 2011_10_03 2011_10_03_drive_0047_sync 0000000217 2011_10_03 2011_10_03_drive_0047_sync 0000000220 2011_10_03 2011_10_03_drive_0047_sync 0000000223 2011_10_03 2011_10_03_drive_0047_sync 0000000225 2011_10_03 2011_10_03_drive_0047_sync 0000000227 2011_10_03 2011_10_03_drive_0047_sync 0000000229 2011_10_03 2011_10_03_drive_0047_sync 0000000231 2011_10_03 2011_10_03_drive_0047_sync 0000000233 2011_10_03 2011_10_03_drive_0047_sync 0000000235 2011_10_03 2011_10_03_drive_0047_sync 0000000237 2011_10_03 2011_10_03_drive_0047_sync 0000000239 2011_10_03 2011_10_03_drive_0047_sync 0000000241 2011_10_03 2011_10_03_drive_0047_sync 0000000243 2011_10_03 2011_10_03_drive_0047_sync 0000000245 2011_10_03 2011_10_03_drive_0047_sync 0000000247 2011_10_03 2011_10_03_drive_0047_sync 0000000249 2011_10_03 2011_10_03_drive_0047_sync 0000000251 2011_10_03 2011_10_03_drive_0047_sync 0000000253 2011_10_03 2011_10_03_drive_0047_sync 0000000255 2011_10_03 2011_10_03_drive_0047_sync 0000000257 2011_10_03 2011_10_03_drive_0047_sync 0000000259 2011_10_03 2011_10_03_drive_0047_sync 0000000261 2011_10_03 2011_10_03_drive_0047_sync 0000000263 2011_10_03 2011_10_03_drive_0047_sync 0000000265 2011_10_03 2011_10_03_drive_0047_sync 0000000267 2011_10_03 2011_10_03_drive_0047_sync 0000000269 2011_10_03 2011_10_03_drive_0047_sync 0000000271 2011_10_03 2011_10_03_drive_0047_sync 0000000273 2011_10_03 2011_10_03_drive_0047_sync 0000000275 2011_10_03 2011_10_03_drive_0047_sync 0000000277 2011_10_03 2011_10_03_drive_0047_sync 0000000279 2011_10_03 2011_10_03_drive_0047_sync 0000000281 2011_10_03 2011_10_03_drive_0047_sync 0000000283 2011_10_03 2011_10_03_drive_0047_sync 0000000285 2011_10_03 2011_10_03_drive_0047_sync 0000000287 2011_10_03 2011_10_03_drive_0047_sync 0000000289 2011_10_03 2011_10_03_drive_0047_sync 0000000291 2011_10_03 2011_10_03_drive_0047_sync 0000000294 2011_10_03 2011_10_03_drive_0047_sync 0000000297 2011_10_03 2011_10_03_drive_0047_sync 0000000300 2011_10_03 2011_10_03_drive_0047_sync 0000000303 2011_10_03 2011_10_03_drive_0047_sync 0000000306 2011_10_03 2011_10_03_drive_0047_sync 0000000309 2011_10_03 2011_10_03_drive_0047_sync 0000000312 2011_10_03 2011_10_03_drive_0047_sync 0000000315 2011_10_03 2011_10_03_drive_0047_sync 0000000318 2011_10_03 2011_10_03_drive_0047_sync 0000000321 2011_10_03 2011_10_03_drive_0047_sync 0000000324 2011_10_03 2011_10_03_drive_0047_sync 0000000327 2011_10_03 2011_10_03_drive_0047_sync 0000000330 2011_10_03 2011_10_03_drive_0047_sync 0000000333 2011_10_03 2011_10_03_drive_0047_sync 0000000336 2011_10_03 2011_10_03_drive_0047_sync 0000000339 2011_10_03 2011_10_03_drive_0047_sync 0000000342 2011_10_03 2011_10_03_drive_0047_sync 0000000345 2011_10_03 2011_10_03_drive_0047_sync 0000000348 2011_10_03 2011_10_03_drive_0047_sync 0000000351 2011_10_03 2011_10_03_drive_0047_sync 0000000354 2011_10_03 2011_10_03_drive_0047_sync 0000000357 2011_10_03 2011_10_03_drive_0047_sync 0000000360 2011_10_03 2011_10_03_drive_0047_sync 0000000363 2011_10_03 2011_10_03_drive_0047_sync 0000000366 2011_10_03 2011_10_03_drive_0047_sync 0000000369 2011_10_03 2011_10_03_drive_0047_sync 0000000372 2011_10_03 2011_10_03_drive_0047_sync 0000000374 2011_10_03 2011_10_03_drive_0047_sync 0000000376 2011_10_03 2011_10_03_drive_0047_sync 0000000379 2011_10_03 2011_10_03_drive_0047_sync 0000000382 2011_10_03 2011_10_03_drive_0047_sync 0000000385 2011_10_03 2011_10_03_drive_0047_sync 0000000387 2011_10_03 2011_10_03_drive_0047_sync 0000000389 2011_10_03 2011_10_03_drive_0047_sync 0000000391 2011_10_03 2011_10_03_drive_0047_sync 0000000393 2011_10_03 2011_10_03_drive_0047_sync 0000000396 2011_10_03 2011_10_03_drive_0047_sync 0000000398 2011_10_03 2011_10_03_drive_0047_sync 0000000400 2011_10_03 2011_10_03_drive_0047_sync 0000000402 2011_10_03 2011_10_03_drive_0047_sync 0000000404 2011_10_03 2011_10_03_drive_0047_sync 0000000406 2011_10_03 2011_10_03_drive_0047_sync 0000000408 2011_10_03 2011_10_03_drive_0047_sync 0000000410 2011_10_03 2011_10_03_drive_0047_sync 0000000412 2011_10_03 2011_10_03_drive_0047_sync 0000000414 2011_10_03 2011_10_03_drive_0047_sync 0000000416 2011_10_03 2011_10_03_drive_0047_sync 0000000418 2011_10_03 2011_10_03_drive_0047_sync 0000000420 2011_10_03 2011_10_03_drive_0047_sync 0000000422 2011_10_03 2011_10_03_drive_0047_sync 0000000424 2011_10_03 2011_10_03_drive_0047_sync 0000000426 2011_10_03 2011_10_03_drive_0047_sync 0000000428 2011_10_03 2011_10_03_drive_0047_sync 0000000430 2011_10_03 2011_10_03_drive_0047_sync 0000000432 2011_10_03 2011_10_03_drive_0047_sync 0000000434 2011_10_03 2011_10_03_drive_0047_sync 0000000436 2011_10_03 2011_10_03_drive_0047_sync 0000000438 2011_10_03 2011_10_03_drive_0047_sync 0000000440 2011_10_03 2011_10_03_drive_0047_sync 0000000441 2011_10_03 2011_10_03_drive_0047_sync 0000000442 2011_10_03 2011_10_03_drive_0047_sync 0000000443 2011_10_03 2011_10_03_drive_0047_sync 0000000444 2011_10_03 2011_10_03_drive_0047_sync 0000000445 2011_10_03 2011_10_03_drive_0047_sync 0000000446 2011_10_03 2011_10_03_drive_0047_sync 0000000447 2011_10_03 2011_10_03_drive_0047_sync 0000000448 2011_10_03 2011_10_03_drive_0047_sync 0000000449 2011_10_03 2011_10_03_drive_0047_sync 0000000450 2011_10_03 2011_10_03_drive_0047_sync 0000000451 2011_10_03 2011_10_03_drive_0047_sync 0000000452 2011_10_03 2011_10_03_drive_0047_sync 0000000453 2011_10_03 2011_10_03_drive_0047_sync 0000000454 2011_10_03 2011_10_03_drive_0047_sync 0000000455 2011_10_03 2011_10_03_drive_0047_sync 0000000456 2011_10_03 2011_10_03_drive_0047_sync 0000000457 2011_10_03 2011_10_03_drive_0047_sync 0000000458 2011_10_03 2011_10_03_drive_0047_sync 0000000459 2011_10_03 2011_10_03_drive_0047_sync 0000000460 2011_10_03 2011_10_03_drive_0047_sync 0000000461 2011_10_03 2011_10_03_drive_0047_sync 0000000462 2011_10_03 2011_10_03_drive_0047_sync 0000000463 2011_10_03 2011_10_03_drive_0047_sync 0000000464 2011_10_03 2011_10_03_drive_0047_sync 0000000465 2011_10_03 2011_10_03_drive_0047_sync 0000000466 2011_10_03 2011_10_03_drive_0047_sync 0000000467 2011_10_03 2011_10_03_drive_0047_sync 0000000468 2011_10_03 2011_10_03_drive_0047_sync 0000000469 2011_10_03 2011_10_03_drive_0047_sync 0000000470 2011_10_03 2011_10_03_drive_0047_sync 0000000471 2011_10_03 2011_10_03_drive_0047_sync 0000000472 2011_10_03 2011_10_03_drive_0047_sync 0000000473 2011_10_03 2011_10_03_drive_0047_sync 0000000474 2011_10_03 2011_10_03_drive_0047_sync 0000000475 2011_10_03 2011_10_03_drive_0047_sync 0000000476 2011_10_03 2011_10_03_drive_0047_sync 0000000477 2011_10_03 2011_10_03_drive_0047_sync 0000000478 2011_10_03 2011_10_03_drive_0047_sync 0000000479 2011_10_03 2011_10_03_drive_0047_sync 0000000480 2011_10_03 2011_10_03_drive_0047_sync 0000000481 2011_10_03 2011_10_03_drive_0047_sync 0000000482 2011_10_03 2011_10_03_drive_0047_sync 0000000483 2011_10_03 2011_10_03_drive_0047_sync 0000000484 2011_10_03 2011_10_03_drive_0047_sync 0000000485 2011_10_03 2011_10_03_drive_0047_sync 0000000486 2011_10_03 2011_10_03_drive_0047_sync 0000000487 2011_10_03 2011_10_03_drive_0047_sync 0000000488 2011_10_03 2011_10_03_drive_0047_sync 0000000489 2011_10_03 2011_10_03_drive_0047_sync 0000000490 2011_10_03 2011_10_03_drive_0047_sync 0000000491 2011_10_03 2011_10_03_drive_0047_sync 0000000492 2011_10_03 2011_10_03_drive_0047_sync 0000000493 2011_10_03 2011_10_03_drive_0047_sync 0000000494 2011_10_03 2011_10_03_drive_0047_sync 0000000495 2011_10_03 2011_10_03_drive_0047_sync 0000000496 2011_10_03 2011_10_03_drive_0047_sync 0000000497 2011_10_03 2011_10_03_drive_0047_sync 0000000498 2011_10_03 2011_10_03_drive_0047_sync 0000000499 2011_10_03 2011_10_03_drive_0047_sync 0000000500 2011_10_03 2011_10_03_drive_0047_sync 0000000501 2011_10_03 2011_10_03_drive_0047_sync 0000000502 2011_10_03 2011_10_03_drive_0047_sync 0000000503 2011_10_03 2011_10_03_drive_0047_sync 0000000504 2011_10_03 2011_10_03_drive_0047_sync 0000000505 2011_10_03 2011_10_03_drive_0047_sync 0000000506 2011_10_03 2011_10_03_drive_0047_sync 0000000507 2011_10_03 2011_10_03_drive_0047_sync 0000000508 2011_10_03 2011_10_03_drive_0047_sync 0000000509 2011_10_03 2011_10_03_drive_0047_sync 0000000510 2011_10_03 2011_10_03_drive_0047_sync 0000000511 2011_10_03 2011_10_03_drive_0047_sync 0000000512 2011_10_03 2011_10_03_drive_0047_sync 0000000514 2011_10_03 2011_10_03_drive_0047_sync 0000000516 2011_10_03 2011_10_03_drive_0047_sync 0000000518 2011_10_03 2011_10_03_drive_0047_sync 0000000520 2011_10_03 2011_10_03_drive_0047_sync 0000000522 2011_10_03 2011_10_03_drive_0047_sync 0000000524 2011_10_03 2011_10_03_drive_0047_sync 0000000526 2011_10_03 2011_10_03_drive_0047_sync 0000000528 2011_10_03 2011_10_03_drive_0047_sync 0000000530 2011_10_03 2011_10_03_drive_0047_sync 0000000532 2011_10_03 2011_10_03_drive_0047_sync 0000000534 2011_10_03 2011_10_03_drive_0047_sync 0000000536 2011_10_03 2011_10_03_drive_0047_sync 0000000538 2011_10_03 2011_10_03_drive_0047_sync 0000000540 2011_10_03 2011_10_03_drive_0047_sync 0000000542 2011_10_03 2011_10_03_drive_0047_sync 0000000544 2011_10_03 2011_10_03_drive_0047_sync 0000000546 2011_10_03 2011_10_03_drive_0047_sync 0000000548 2011_10_03 2011_10_03_drive_0047_sync 0000000550 2011_10_03 2011_10_03_drive_0047_sync 0000000552 2011_10_03 2011_10_03_drive_0047_sync 0000000554 2011_10_03 2011_10_03_drive_0047_sync 0000000556 2011_10_03 2011_10_03_drive_0047_sync 0000000558 2011_10_03 2011_10_03_drive_0047_sync 0000000560 2011_10_03 2011_10_03_drive_0047_sync 0000000562 2011_10_03 2011_10_03_drive_0047_sync 0000000564 2011_10_03 2011_10_03_drive_0047_sync 0000000566 2011_10_03 2011_10_03_drive_0047_sync 0000000568 2011_10_03 2011_10_03_drive_0047_sync 0000000570 2011_10_03 2011_10_03_drive_0047_sync 0000000572 2011_10_03 2011_10_03_drive_0047_sync 0000000574 2011_10_03 2011_10_03_drive_0047_sync 0000000576 2011_10_03 2011_10_03_drive_0047_sync 0000000578 2011_10_03 2011_10_03_drive_0047_sync 0000000580 2011_10_03 2011_10_03_drive_0047_sync 0000000582 2011_10_03 2011_10_03_drive_0047_sync 0000000585 2011_10_03 2011_10_03_drive_0047_sync 0000000588 2011_10_03 2011_10_03_drive_0047_sync 0000000591 2011_10_03 2011_10_03_drive_0047_sync 0000000594 2011_10_03 2011_10_03_drive_0047_sync 0000000597 2011_10_03 2011_10_03_drive_0047_sync 0000000600 2011_10_03 2011_10_03_drive_0047_sync 0000000603 2011_10_03 2011_10_03_drive_0047_sync 0000000605 2011_10_03 2011_10_03_drive_0047_sync 0000000607 2011_10_03 2011_10_03_drive_0047_sync 0000000609 2011_10_03 2011_10_03_drive_0047_sync 0000000611 2011_10_03 2011_10_03_drive_0047_sync 0000000613 2011_10_03 2011_10_03_drive_0047_sync 0000000615 2011_10_03 2011_10_03_drive_0047_sync 0000000617 2011_10_03 2011_10_03_drive_0047_sync 0000000619 2011_10_03 2011_10_03_drive_0047_sync 0000000621 2011_10_03 2011_10_03_drive_0047_sync 0000000623 2011_10_03 2011_10_03_drive_0047_sync 0000000625 2011_10_03 2011_10_03_drive_0047_sync 0000000627 2011_10_03 2011_10_03_drive_0047_sync 0000000629 2011_10_03 2011_10_03_drive_0047_sync 0000000631 2011_10_03 2011_10_03_drive_0047_sync 0000000633 2011_10_03 2011_10_03_drive_0047_sync 0000000635 2011_10_03 2011_10_03_drive_0047_sync 0000000640 2011_10_03 2011_10_03_drive_0047_sync 0000000646 2011_10_03 2011_10_03_drive_0047_sync 0000000651 2011_10_03 2011_10_03_drive_0047_sync 0000000655 2011_10_03 2011_10_03_drive_0047_sync 0000000658 2011_10_03 2011_10_03_drive_0047_sync 0000000661 2011_10_03 2011_10_03_drive_0047_sync 0000000663 2011_10_03 2011_10_03_drive_0047_sync 0000000665 2011_10_03 2011_10_03_drive_0047_sync 0000000667 2011_10_03 2011_10_03_drive_0047_sync 0000000670 2011_10_03 2011_10_03_drive_0047_sync 0000000673 2011_10_03 2011_10_03_drive_0047_sync 0000000676 2011_10_03 2011_10_03_drive_0047_sync 0000000679 2011_10_03 2011_10_03_drive_0047_sync 0000000682 2011_10_03 2011_10_03_drive_0047_sync 0000000685 2011_10_03 2011_10_03_drive_0047_sync 0000000689 2011_10_03 2011_10_03_drive_0047_sync 0000000694 2011_10_03 2011_10_03_drive_0047_sync 0000000701 2011_10_03 2011_10_03_drive_0047_sync 0000000710 2011_10_03 2011_10_03_drive_0047_sync 0000000716 2011_10_03 2011_10_03_drive_0047_sync 0000000720 2011_10_03 2011_10_03_drive_0047_sync 0000000723 2011_10_03 2011_10_03_drive_0047_sync 0000000726 2011_10_03 2011_10_03_drive_0047_sync 0000000729 2011_10_03 2011_10_03_drive_0047_sync 0000000731 2011_10_03 2011_10_03_drive_0047_sync 0000000733 2011_10_03 2011_10_03_drive_0047_sync 0000000735 2011_10_03 2011_10_03_drive_0047_sync 0000000737 2011_10_03 2011_10_03_drive_0047_sync 0000000740 2011_10_03 2011_10_03_drive_0047_sync 0000000744 2011_10_03 2011_10_03_drive_0047_sync 0000000752 2011_10_03 2011_10_03_drive_0047_sync 0000000761 2011_10_03 2011_10_03_drive_0047_sync 0000000770 2011_10_03 2011_10_03_drive_0047_sync 0000000779 2011_10_03 2011_10_03_drive_0047_sync 0000000784 2011_10_03 2011_10_03_drive_0047_sync 0000000787 2011_10_03 2011_10_03_drive_0047_sync 0000000790 2011_10_03 2011_10_03_drive_0047_sync 0000000793 2011_09_26 2011_09_26_drive_0106_sync 0000000011 2011_09_26 2011_09_26_drive_0106_sync 0000000021 2011_09_26 2011_09_26_drive_0106_sync 0000000030 2011_09_26 2011_09_26_drive_0106_sync 0000000038 2011_09_26 2011_09_26_drive_0106_sync 0000000044 2011_09_26 2011_09_26_drive_0106_sync 0000000048 2011_09_26 2011_09_26_drive_0106_sync 0000000052 2011_09_26 2011_09_26_drive_0106_sync 0000000055 2011_09_26 2011_09_26_drive_0106_sync 0000000058 2011_09_26 2011_09_26_drive_0106_sync 0000000061 2011_09_26 2011_09_26_drive_0106_sync 0000000064 2011_09_26 2011_09_26_drive_0106_sync 0000000066 2011_09_26 2011_09_26_drive_0106_sync 0000000068 2011_09_26 2011_09_26_drive_0106_sync 0000000070 2011_09_26 2011_09_26_drive_0106_sync 0000000072 2011_09_26 2011_09_26_drive_0106_sync 0000000074 2011_09_26 2011_09_26_drive_0106_sync 0000000076 2011_09_26 2011_09_26_drive_0106_sync 0000000078 2011_09_26 2011_09_26_drive_0106_sync 0000000080 2011_09_26 2011_09_26_drive_0106_sync 0000000082 2011_09_26 2011_09_26_drive_0106_sync 0000000084 2011_09_26 2011_09_26_drive_0106_sync 0000000086 2011_09_26 2011_09_26_drive_0106_sync 0000000088 2011_09_26 2011_09_26_drive_0106_sync 0000000090 2011_09_26 2011_09_26_drive_0106_sync 0000000092 2011_09_26 2011_09_26_drive_0106_sync 0000000094 2011_09_26 2011_09_26_drive_0106_sync 0000000096 2011_09_26 2011_09_26_drive_0106_sync 0000000098 2011_09_26 2011_09_26_drive_0106_sync 0000000100 2011_09_26 2011_09_26_drive_0106_sync 0000000102 2011_09_26 2011_09_26_drive_0106_sync 0000000104 2011_09_26 2011_09_26_drive_0106_sync 0000000106 2011_09_26 2011_09_26_drive_0106_sync 0000000108 2011_09_26 2011_09_26_drive_0106_sync 0000000110 2011_09_26 2011_09_26_drive_0106_sync 0000000112 2011_09_26 2011_09_26_drive_0106_sync 0000000114 2011_09_26 2011_09_26_drive_0106_sync 0000000116 2011_09_26 2011_09_26_drive_0106_sync 0000000118 2011_09_26 2011_09_26_drive_0106_sync 0000000120 2011_09_26 2011_09_26_drive_0106_sync 0000000122 2011_09_26 2011_09_26_drive_0106_sync 0000000124 2011_09_26 2011_09_26_drive_0106_sync 0000000126 2011_09_26 2011_09_26_drive_0106_sync 0000000128 2011_09_26 2011_09_26_drive_0106_sync 0000000130 2011_09_26 2011_09_26_drive_0106_sync 0000000132 2011_09_26 2011_09_26_drive_0106_sync 0000000134 2011_09_26 2011_09_26_drive_0106_sync 0000000136 2011_09_26 2011_09_26_drive_0106_sync 0000000138 2011_09_26 2011_09_26_drive_0106_sync 0000000140 2011_09_26 2011_09_26_drive_0106_sync 0000000142 2011_09_26 2011_09_26_drive_0106_sync 0000000144 2011_09_26 2011_09_26_drive_0106_sync 0000000146 2011_09_26 2011_09_26_drive_0106_sync 0000000148 2011_09_26 2011_09_26_drive_0106_sync 0000000150 2011_09_26 2011_09_26_drive_0106_sync 0000000152 2011_09_26 2011_09_26_drive_0106_sync 0000000154 2011_09_26 2011_09_26_drive_0106_sync 0000000156 2011_09_26 2011_09_26_drive_0106_sync 0000000158 2011_09_26 2011_09_26_drive_0106_sync 0000000160 2011_09_26 2011_09_26_drive_0106_sync 0000000162 2011_09_26 2011_09_26_drive_0106_sync 0000000164 2011_09_26 2011_09_26_drive_0106_sync 0000000166 2011_09_26 2011_09_26_drive_0106_sync 0000000168 2011_09_26 2011_09_26_drive_0106_sync 0000000170 2011_09_26 2011_09_26_drive_0106_sync 0000000173 2011_09_26 2011_09_26_drive_0106_sync 0000000176 2011_09_26 2011_09_26_drive_0106_sync 0000000179 2011_09_26 2011_09_26_drive_0106_sync 0000000182 2011_09_26 2011_09_26_drive_0106_sync 0000000185 2011_09_26 2011_09_26_drive_0106_sync 0000000188 2011_09_26 2011_09_26_drive_0106_sync 0000000190 2011_09_26 2011_09_26_drive_0106_sync 0000000192 2011_09_26 2011_09_26_drive_0106_sync 0000000194 2011_09_26 2011_09_26_drive_0106_sync 0000000196 2011_09_26 2011_09_26_drive_0106_sync 0000000198 2011_09_26 2011_09_26_drive_0106_sync 0000000200 2011_09_26 2011_09_26_drive_0106_sync 0000000202 2011_09_26 2011_09_26_drive_0106_sync 0000000204 2011_09_26 2011_09_26_drive_0106_sync 0000000206 2011_09_26 2011_09_26_drive_0106_sync 0000000208 2011_09_26 2011_09_26_drive_0106_sync 0000000210 2011_09_26 2011_09_26_drive_0106_sync 0000000212 2011_09_26 2011_09_26_drive_0106_sync 0000000214 2011_09_26 2011_09_26_drive_0106_sync 0000000216 2011_09_26 2011_09_26_drive_0106_sync 0000000218 2011_09_26 2011_09_26_drive_0106_sync 0000000220 2011_09_26 2011_09_26_drive_0106_sync 0000000223 2011_09_26 2011_09_26_drive_0106_sync 0000000226 2011_09_26 2011_09_26_drive_0023_sync 0000000002 2011_09_26 2011_09_26_drive_0023_sync 0000000004 2011_09_26 2011_09_26_drive_0023_sync 0000000006 2011_09_26 2011_09_26_drive_0023_sync 0000000008 2011_09_26 2011_09_26_drive_0023_sync 0000000010 2011_09_26 2011_09_26_drive_0023_sync 0000000012 2011_09_26 2011_09_26_drive_0023_sync 0000000014 2011_09_26 2011_09_26_drive_0023_sync 0000000016 2011_09_26 2011_09_26_drive_0023_sync 0000000018 2011_09_26 2011_09_26_drive_0023_sync 0000000020 2011_09_26 2011_09_26_drive_0023_sync 0000000022 2011_09_26 2011_09_26_drive_0023_sync 0000000024 2011_09_26 2011_09_26_drive_0023_sync 0000000026 2011_09_26 2011_09_26_drive_0023_sync 0000000028 2011_09_26 2011_09_26_drive_0023_sync 0000000030 2011_09_26 2011_09_26_drive_0023_sync 0000000032 2011_09_26 2011_09_26_drive_0023_sync 0000000034 2011_09_26 2011_09_26_drive_0023_sync 0000000036 2011_09_26 2011_09_26_drive_0023_sync 0000000038 2011_09_26 2011_09_26_drive_0023_sync 0000000040 2011_09_26 2011_09_26_drive_0023_sync 0000000042 2011_09_26 2011_09_26_drive_0023_sync 0000000044 2011_09_26 2011_09_26_drive_0023_sync 0000000046 2011_09_26 2011_09_26_drive_0023_sync 0000000048 2011_09_26 2011_09_26_drive_0023_sync 0000000050 2011_09_26 2011_09_26_drive_0023_sync 0000000052 2011_09_26 2011_09_26_drive_0023_sync 0000000054 2011_09_26 2011_09_26_drive_0023_sync 0000000056 2011_09_26 2011_09_26_drive_0023_sync 0000000058 2011_09_26 2011_09_26_drive_0023_sync 0000000060 2011_09_26 2011_09_26_drive_0023_sync 0000000062 2011_09_26 2011_09_26_drive_0023_sync 0000000064 2011_09_26 2011_09_26_drive_0023_sync 0000000066 2011_09_26 2011_09_26_drive_0023_sync 0000000068 2011_09_26 2011_09_26_drive_0023_sync 0000000070 2011_09_26 2011_09_26_drive_0023_sync 0000000072 2011_09_26 2011_09_26_drive_0023_sync 0000000074 2011_09_26 2011_09_26_drive_0023_sync 0000000076 2011_09_26 2011_09_26_drive_0023_sync 0000000078 2011_09_26 2011_09_26_drive_0023_sync 0000000080 2011_09_26 2011_09_26_drive_0023_sync 0000000082 2011_09_26 2011_09_26_drive_0023_sync 0000000084 2011_09_26 2011_09_26_drive_0023_sync 0000000086 2011_09_26 2011_09_26_drive_0023_sync 0000000088 2011_09_26 2011_09_26_drive_0023_sync 0000000090 2011_09_26 2011_09_26_drive_0023_sync 0000000092 2011_09_26 2011_09_26_drive_0023_sync 0000000094 2011_09_26 2011_09_26_drive_0023_sync 0000000096 2011_09_26 2011_09_26_drive_0023_sync 0000000098 2011_09_26 2011_09_26_drive_0023_sync 0000000100 2011_09_26 2011_09_26_drive_0023_sync 0000000102 2011_09_26 2011_09_26_drive_0023_sync 0000000104 2011_09_26 2011_09_26_drive_0023_sync 0000000106 2011_09_26 2011_09_26_drive_0023_sync 0000000108 2011_09_26 2011_09_26_drive_0023_sync 0000000110 2011_09_26 2011_09_26_drive_0023_sync 0000000112 2011_09_26 2011_09_26_drive_0023_sync 0000000114 2011_09_26 2011_09_26_drive_0023_sync 0000000116 2011_09_26 2011_09_26_drive_0023_sync 0000000118 2011_09_26 2011_09_26_drive_0023_sync 0000000120 2011_09_26 2011_09_26_drive_0023_sync 0000000122 2011_09_26 2011_09_26_drive_0023_sync 0000000124 2011_09_26 2011_09_26_drive_0023_sync 0000000126 2011_09_26 2011_09_26_drive_0023_sync 0000000128 2011_09_26 2011_09_26_drive_0023_sync 0000000130 2011_09_26 2011_09_26_drive_0023_sync 0000000132 2011_09_26 2011_09_26_drive_0023_sync 0000000134 2011_09_26 2011_09_26_drive_0023_sync 0000000136 2011_09_26 2011_09_26_drive_0023_sync 0000000138 2011_09_26 2011_09_26_drive_0023_sync 0000000140 2011_09_26 2011_09_26_drive_0023_sync 0000000142 2011_09_26 2011_09_26_drive_0023_sync 0000000144 2011_09_26 2011_09_26_drive_0023_sync 0000000146 2011_09_26 2011_09_26_drive_0023_sync 0000000148 2011_09_26 2011_09_26_drive_0023_sync 0000000150 2011_09_26 2011_09_26_drive_0023_sync 0000000152 2011_09_26 2011_09_26_drive_0023_sync 0000000154 2011_09_26 2011_09_26_drive_0023_sync 0000000156 2011_09_26 2011_09_26_drive_0023_sync 0000000158 2011_09_26 2011_09_26_drive_0023_sync 0000000160 2011_09_26 2011_09_26_drive_0023_sync 0000000162 2011_09_26 2011_09_26_drive_0023_sync 0000000164 2011_09_26 2011_09_26_drive_0023_sync 0000000166 2011_09_26 2011_09_26_drive_0023_sync 0000000168 2011_09_26 2011_09_26_drive_0023_sync 0000000170 2011_09_26 2011_09_26_drive_0023_sync 0000000172 2011_09_26 2011_09_26_drive_0023_sync 0000000174 2011_09_26 2011_09_26_drive_0023_sync 0000000176 2011_09_26 2011_09_26_drive_0023_sync 0000000178 2011_09_26 2011_09_26_drive_0023_sync 0000000180 2011_09_26 2011_09_26_drive_0023_sync 0000000182 2011_09_26 2011_09_26_drive_0023_sync 0000000183 2011_09_26 2011_09_26_drive_0023_sync 0000000184 2011_09_26 2011_09_26_drive_0023_sync 0000000185 2011_09_26 2011_09_26_drive_0023_sync 0000000190 2011_09_26 2011_09_26_drive_0023_sync 0000000191 2011_09_26 2011_09_26_drive_0023_sync 0000000192 2011_09_26 2011_09_26_drive_0023_sync 0000000193 2011_09_26 2011_09_26_drive_0023_sync 0000000194 2011_09_26 2011_09_26_drive_0023_sync 0000000195 2011_09_26 2011_09_26_drive_0023_sync 0000000196 2011_09_26 2011_09_26_drive_0023_sync 0000000197 2011_09_26 2011_09_26_drive_0023_sync 0000000198 2011_09_26 2011_09_26_drive_0023_sync 0000000200 2011_09_26 2011_09_26_drive_0023_sync 0000000202 2011_09_26 2011_09_26_drive_0023_sync 0000000204 2011_09_26 2011_09_26_drive_0023_sync 0000000205 2011_09_26 2011_09_26_drive_0023_sync 0000000206 2011_09_26 2011_09_26_drive_0023_sync 0000000207 2011_09_26 2011_09_26_drive_0023_sync 0000000208 2011_09_26 2011_09_26_drive_0023_sync 0000000210 2011_09_26 2011_09_26_drive_0023_sync 0000000212 2011_09_26 2011_09_26_drive_0023_sync 0000000214 2011_09_26 2011_09_26_drive_0023_sync 0000000216 2011_09_26 2011_09_26_drive_0023_sync 0000000218 2011_09_26 2011_09_26_drive_0023_sync 0000000222 2011_09_26 2011_09_26_drive_0023_sync 0000000224 2011_09_26 2011_09_26_drive_0023_sync 0000000225 2011_09_26 2011_09_26_drive_0023_sync 0000000226 2011_09_26 2011_09_26_drive_0023_sync 0000000227 2011_09_26 2011_09_26_drive_0023_sync 0000000228 2011_09_26 2011_09_26_drive_0023_sync 0000000229 2011_09_26 2011_09_26_drive_0023_sync 0000000230 2011_09_26 2011_09_26_drive_0023_sync 0000000231 2011_09_26 2011_09_26_drive_0023_sync 0000000232 2011_09_26 2011_09_26_drive_0023_sync 0000000233 2011_09_26 2011_09_26_drive_0023_sync 0000000234 2011_09_26 2011_09_26_drive_0023_sync 0000000235 2011_09_26 2011_09_26_drive_0023_sync 0000000236 2011_09_26 2011_09_26_drive_0023_sync 0000000237 2011_09_26 2011_09_26_drive_0023_sync 0000000238 2011_09_26 2011_09_26_drive_0023_sync 0000000239 2011_09_26 2011_09_26_drive_0023_sync 0000000240 2011_09_26 2011_09_26_drive_0023_sync 0000000241 2011_09_26 2011_09_26_drive_0023_sync 0000000242 2011_09_26 2011_09_26_drive_0023_sync 0000000243 2011_09_26 2011_09_26_drive_0023_sync 0000000245 2011_09_26 2011_09_26_drive_0023_sync 0000000246 2011_09_26 2011_09_26_drive_0023_sync 0000000247 2011_09_26 2011_09_26_drive_0023_sync 0000000248 2011_09_26 2011_09_26_drive_0023_sync 0000000249 2011_09_26 2011_09_26_drive_0023_sync 0000000250 2011_09_26 2011_09_26_drive_0023_sync 0000000251 2011_09_26 2011_09_26_drive_0023_sync 0000000252 2011_09_26 2011_09_26_drive_0023_sync 0000000253 2011_09_26 2011_09_26_drive_0023_sync 0000000254 2011_09_26 2011_09_26_drive_0023_sync 0000000255 2011_09_26 2011_09_26_drive_0023_sync 0000000256 2011_09_26 2011_09_26_drive_0023_sync 0000000257 2011_09_26 2011_09_26_drive_0023_sync 0000000258 2011_09_26 2011_09_26_drive_0023_sync 0000000259 2011_09_26 2011_09_26_drive_0023_sync 0000000260 2011_09_26 2011_09_26_drive_0023_sync 0000000261 2011_09_26 2011_09_26_drive_0023_sync 0000000262 2011_09_26 2011_09_26_drive_0023_sync 0000000263 2011_09_26 2011_09_26_drive_0023_sync 0000000264 2011_09_26 2011_09_26_drive_0023_sync 0000000265 2011_09_26 2011_09_26_drive_0023_sync 0000000266 2011_09_26 2011_09_26_drive_0023_sync 0000000267 2011_09_26 2011_09_26_drive_0023_sync 0000000268 2011_09_26 2011_09_26_drive_0023_sync 0000000269 2011_09_26 2011_09_26_drive_0023_sync 0000000270 2011_09_26 2011_09_26_drive_0023_sync 0000000271 2011_09_26 2011_09_26_drive_0023_sync 0000000272 2011_09_26 2011_09_26_drive_0023_sync 0000000273 2011_09_26 2011_09_26_drive_0023_sync 0000000275 2011_09_26 2011_09_26_drive_0023_sync 0000000277 2011_09_26 2011_09_26_drive_0023_sync 0000000279 2011_09_26 2011_09_26_drive_0023_sync 0000000281 2011_09_26 2011_09_26_drive_0023_sync 0000000289 2011_09_26 2011_09_26_drive_0023_sync 0000000291 2011_09_26 2011_09_26_drive_0023_sync 0000000293 2011_09_26 2011_09_26_drive_0023_sync 0000000295 2011_09_26 2011_09_26_drive_0023_sync 0000000297 2011_09_26 2011_09_26_drive_0023_sync 0000000299 2011_09_26 2011_09_26_drive_0023_sync 0000000301 2011_09_26 2011_09_26_drive_0023_sync 0000000303 2011_09_26 2011_09_26_drive_0023_sync 0000000305 2011_09_26 2011_09_26_drive_0023_sync 0000000307 2011_09_26 2011_09_26_drive_0023_sync 0000000309 2011_09_26 2011_09_26_drive_0023_sync 0000000311 2011_09_26 2011_09_26_drive_0023_sync 0000000313 2011_09_26 2011_09_26_drive_0023_sync 0000000315 2011_09_26 2011_09_26_drive_0023_sync 0000000317 2011_09_26 2011_09_26_drive_0023_sync 0000000319 2011_09_26 2011_09_26_drive_0023_sync 0000000321 2011_09_26 2011_09_26_drive_0023_sync 0000000324 2011_09_26 2011_09_26_drive_0023_sync 0000000328 2011_09_26 2011_09_26_drive_0023_sync 0000000330 2011_09_26 2011_09_26_drive_0023_sync 0000000332 2011_09_26 2011_09_26_drive_0023_sync 0000000334 2011_09_26 2011_09_26_drive_0023_sync 0000000336 2011_09_26 2011_09_26_drive_0023_sync 0000000338 2011_09_26 2011_09_26_drive_0023_sync 0000000340 2011_09_26 2011_09_26_drive_0023_sync 0000000346 2011_09_26 2011_09_26_drive_0023_sync 0000000348 2011_09_26 2011_09_26_drive_0023_sync 0000000350 2011_09_26 2011_09_26_drive_0023_sync 0000000352 2011_09_26 2011_09_26_drive_0023_sync 0000000354 2011_09_26 2011_09_26_drive_0023_sync 0000000356 2011_09_26 2011_09_26_drive_0023_sync 0000000358 2011_09_26 2011_09_26_drive_0023_sync 0000000360 2011_09_26 2011_09_26_drive_0023_sync 0000000362 2011_09_26 2011_09_26_drive_0023_sync 0000000364 2011_09_26 2011_09_26_drive_0023_sync 0000000366 2011_09_26 2011_09_26_drive_0023_sync 0000000368 2011_09_26 2011_09_26_drive_0023_sync 0000000370 2011_09_26 2011_09_26_drive_0023_sync 0000000372 2011_09_26 2011_09_26_drive_0023_sync 0000000374 2011_09_26 2011_09_26_drive_0023_sync 0000000376 2011_09_26 2011_09_26_drive_0023_sync 0000000378 2011_09_26 2011_09_26_drive_0023_sync 0000000380 2011_09_26 2011_09_26_drive_0023_sync 0000000382 2011_09_26 2011_09_26_drive_0023_sync 0000000384 2011_09_26 2011_09_26_drive_0023_sync 0000000386 2011_09_26 2011_09_26_drive_0023_sync 0000000388 2011_09_26 2011_09_26_drive_0023_sync 0000000390 2011_09_26 2011_09_26_drive_0023_sync 0000000392 2011_09_26 2011_09_26_drive_0023_sync 0000000394 2011_09_26 2011_09_26_drive_0023_sync 0000000396 2011_09_26 2011_09_26_drive_0023_sync 0000000398 2011_09_26 2011_09_26_drive_0023_sync 0000000400 2011_09_26 2011_09_26_drive_0023_sync 0000000402 2011_09_26 2011_09_26_drive_0023_sync 0000000404 2011_09_26 2011_09_26_drive_0023_sync 0000000406 2011_09_26 2011_09_26_drive_0023_sync 0000000408 2011_09_26 2011_09_26_drive_0023_sync 0000000410 2011_09_26 2011_09_26_drive_0023_sync 0000000412 2011_09_26 2011_09_26_drive_0023_sync 0000000414 2011_09_26 2011_09_26_drive_0023_sync 0000000416 2011_09_26 2011_09_26_drive_0023_sync 0000000418 2011_09_26 2011_09_26_drive_0023_sync 0000000420 2011_09_26 2011_09_26_drive_0023_sync 0000000422 2011_09_26 2011_09_26_drive_0023_sync 0000000424 2011_09_26 2011_09_26_drive_0023_sync 0000000426 2011_09_26 2011_09_26_drive_0023_sync 0000000428 2011_09_26 2011_09_26_drive_0023_sync 0000000430 2011_09_26 2011_09_26_drive_0023_sync 0000000432 2011_09_26 2011_09_26_drive_0023_sync 0000000434 2011_09_26 2011_09_26_drive_0023_sync 0000000436 2011_09_26 2011_09_26_drive_0023_sync 0000000438 2011_09_26 2011_09_26_drive_0023_sync 0000000440 2011_09_26 2011_09_26_drive_0023_sync 0000000442 2011_09_26 2011_09_26_drive_0023_sync 0000000444 2011_09_26 2011_09_26_drive_0023_sync 0000000446 2011_09_26 2011_09_26_drive_0023_sync 0000000448 2011_09_26 2011_09_26_drive_0023_sync 0000000450 2011_09_26 2011_09_26_drive_0023_sync 0000000452 2011_09_26 2011_09_26_drive_0023_sync 0000000454 2011_09_26 2011_09_26_drive_0023_sync 0000000456 2011_09_26 2011_09_26_drive_0023_sync 0000000458 2011_09_26 2011_09_26_drive_0023_sync 0000000460 2011_09_26 2011_09_26_drive_0023_sync 0000000462 2011_09_26 2011_09_26_drive_0023_sync 0000000464 2011_09_26 2011_09_26_drive_0023_sync 0000000466 2011_09_26 2011_09_26_drive_0023_sync 0000000468 2011_09_26 2011_09_26_drive_0023_sync 0000000470 2011_09_26 2011_09_26_drive_0023_sync 0000000472 2011_09_26 2011_09_26_drive_0117_sync 0000000050 2011_09_26 2011_09_26_drive_0117_sync 0000000052 2011_09_26 2011_09_26_drive_0117_sync 0000000054 2011_09_26 2011_09_26_drive_0117_sync 0000000056 2011_09_26 2011_09_26_drive_0117_sync 0000000090 2011_09_26 2011_09_26_drive_0117_sync 0000000092 2011_09_26 2011_09_26_drive_0117_sync 0000000094 2011_09_26 2011_09_26_drive_0117_sync 0000000096 2011_09_26 2011_09_26_drive_0117_sync 0000000098 2011_09_26 2011_09_26_drive_0117_sync 0000000100 2011_09_26 2011_09_26_drive_0117_sync 0000000102 2011_09_26 2011_09_26_drive_0117_sync 0000000104 2011_09_26 2011_09_26_drive_0117_sync 0000000106 2011_09_26 2011_09_26_drive_0117_sync 0000000108 2011_09_26 2011_09_26_drive_0117_sync 0000000110 2011_09_26 2011_09_26_drive_0117_sync 0000000112 2011_09_26 2011_09_26_drive_0117_sync 0000000114 2011_09_26 2011_09_26_drive_0117_sync 0000000116 2011_09_26 2011_09_26_drive_0117_sync 0000000118 2011_09_26 2011_09_26_drive_0117_sync 0000000120 2011_09_26 2011_09_26_drive_0117_sync 0000000122 2011_09_26 2011_09_26_drive_0117_sync 0000000124 2011_09_26 2011_09_26_drive_0117_sync 0000000126 2011_09_26 2011_09_26_drive_0117_sync 0000000128 2011_09_26 2011_09_26_drive_0117_sync 0000000130 2011_09_26 2011_09_26_drive_0117_sync 0000000132 2011_09_26 2011_09_26_drive_0117_sync 0000000134 2011_09_26 2011_09_26_drive_0117_sync 0000000136 2011_09_26 2011_09_26_drive_0117_sync 0000000139 2011_09_26 2011_09_26_drive_0117_sync 0000000142 2011_09_26 2011_09_26_drive_0117_sync 0000000145 2011_09_26 2011_09_26_drive_0117_sync 0000000148 2011_09_26 2011_09_26_drive_0117_sync 0000000151 2011_09_26 2011_09_26_drive_0117_sync 0000000154 2011_09_26 2011_09_26_drive_0117_sync 0000000157 2011_09_26 2011_09_26_drive_0117_sync 0000000160 2011_09_26 2011_09_26_drive_0117_sync 0000000163 2011_09_26 2011_09_26_drive_0117_sync 0000000166 2011_09_26 2011_09_26_drive_0117_sync 0000000169 2011_09_26 2011_09_26_drive_0117_sync 0000000172 2011_09_26 2011_09_26_drive_0117_sync 0000000175 2011_09_26 2011_09_26_drive_0117_sync 0000000178 2011_09_26 2011_09_26_drive_0117_sync 0000000181 2011_09_26 2011_09_26_drive_0117_sync 0000000184 2011_09_26 2011_09_26_drive_0117_sync 0000000188 2011_09_26 2011_09_26_drive_0117_sync 0000000191 2011_09_26 2011_09_26_drive_0117_sync 0000000194 2011_09_26 2011_09_26_drive_0117_sync 0000000197 2011_09_26 2011_09_26_drive_0117_sync 0000000200 2011_09_26 2011_09_26_drive_0117_sync 0000000203 2011_09_26 2011_09_26_drive_0117_sync 0000000206 2011_09_26 2011_09_26_drive_0117_sync 0000000209 2011_09_26 2011_09_26_drive_0117_sync 0000000212 2011_09_26 2011_09_26_drive_0117_sync 0000000215 2011_09_26 2011_09_26_drive_0117_sync 0000000218 2011_09_26 2011_09_26_drive_0117_sync 0000000222 2011_09_26 2011_09_26_drive_0117_sync 0000000226 2011_09_26 2011_09_26_drive_0117_sync 0000000230 2011_09_26 2011_09_26_drive_0117_sync 0000000234 2011_09_26 2011_09_26_drive_0117_sync 0000000238 2011_09_26 2011_09_26_drive_0117_sync 0000000242 2011_09_26 2011_09_26_drive_0117_sync 0000000246 2011_09_26 2011_09_26_drive_0117_sync 0000000250 2011_09_26 2011_09_26_drive_0117_sync 0000000254 2011_09_26 2011_09_26_drive_0117_sync 0000000258 2011_09_26 2011_09_26_drive_0117_sync 0000000278 2011_09_26 2011_09_26_drive_0117_sync 0000000312 2011_09_26 2011_09_26_drive_0117_sync 0000000313 2011_09_26 2011_09_26_drive_0117_sync 0000000314 2011_09_26 2011_09_26_drive_0117_sync 0000000315 2011_09_26 2011_09_26_drive_0117_sync 0000000316 2011_09_26 2011_09_26_drive_0117_sync 0000000317 2011_09_26 2011_09_26_drive_0117_sync 0000000318 2011_09_26 2011_09_26_drive_0117_sync 0000000319 2011_09_26 2011_09_26_drive_0117_sync 0000000320 2011_09_26 2011_09_26_drive_0117_sync 0000000321 2011_09_26 2011_09_26_drive_0117_sync 0000000322 2011_09_26 2011_09_26_drive_0117_sync 0000000323 2011_09_26 2011_09_26_drive_0117_sync 0000000324 2011_09_26 2011_09_26_drive_0117_sync 0000000325 2011_09_26 2011_09_26_drive_0117_sync 0000000326 2011_09_26 2011_09_26_drive_0117_sync 0000000327 2011_09_26 2011_09_26_drive_0117_sync 0000000328 2011_09_26 2011_09_26_drive_0117_sync 0000000330 2011_09_26 2011_09_26_drive_0117_sync 0000000332 2011_09_26 2011_09_26_drive_0117_sync 0000000334 2011_09_26 2011_09_26_drive_0117_sync 0000000339 2011_09_26 2011_09_26_drive_0117_sync 0000000356 2011_09_26 2011_09_26_drive_0117_sync 0000000363 2011_09_26 2011_09_26_drive_0117_sync 0000000367 2011_09_26 2011_09_26_drive_0117_sync 0000000371 2011_09_26 2011_09_26_drive_0117_sync 0000000374 2011_09_26 2011_09_26_drive_0117_sync 0000000377 2011_09_26 2011_09_26_drive_0117_sync 0000000380 2011_09_26 2011_09_26_drive_0117_sync 0000000383 2011_09_26 2011_09_26_drive_0117_sync 0000000386 2011_09_26 2011_09_26_drive_0117_sync 0000000389 2011_09_26 2011_09_26_drive_0117_sync 0000000392 2011_09_26 2011_09_26_drive_0117_sync 0000000395 2011_09_26 2011_09_26_drive_0117_sync 0000000398 2011_09_26 2011_09_26_drive_0117_sync 0000000401 2011_09_26 2011_09_26_drive_0117_sync 0000000404 2011_09_26 2011_09_26_drive_0117_sync 0000000407 2011_09_26 2011_09_26_drive_0117_sync 0000000410 2011_09_26 2011_09_26_drive_0117_sync 0000000412 2011_09_26 2011_09_26_drive_0117_sync 0000000414 2011_09_26 2011_09_26_drive_0117_sync 0000000416 2011_09_26 2011_09_26_drive_0117_sync 0000000418 2011_09_26 2011_09_26_drive_0117_sync 0000000420 2011_09_26 2011_09_26_drive_0117_sync 0000000422 2011_09_26 2011_09_26_drive_0117_sync 0000000424 2011_09_26 2011_09_26_drive_0117_sync 0000000426 2011_09_26 2011_09_26_drive_0117_sync 0000000428 2011_09_26 2011_09_26_drive_0117_sync 0000000430 2011_09_26 2011_09_26_drive_0117_sync 0000000432 2011_09_26 2011_09_26_drive_0117_sync 0000000434 2011_09_26 2011_09_26_drive_0117_sync 0000000436 2011_09_26 2011_09_26_drive_0117_sync 0000000438 2011_09_26 2011_09_26_drive_0117_sync 0000000440 2011_09_26 2011_09_26_drive_0117_sync 0000000442 2011_09_26 2011_09_26_drive_0117_sync 0000000445 2011_09_26 2011_09_26_drive_0117_sync 0000000448 2011_09_26 2011_09_26_drive_0117_sync 0000000451 2011_09_26 2011_09_26_drive_0117_sync 0000000454 2011_09_26 2011_09_26_drive_0117_sync 0000000457 2011_09_26 2011_09_26_drive_0117_sync 0000000460 2011_09_26 2011_09_26_drive_0117_sync 0000000463 2011_09_26 2011_09_26_drive_0117_sync 0000000466 2011_09_26 2011_09_26_drive_0117_sync 0000000469 2011_09_26 2011_09_26_drive_0117_sync 0000000472 2011_09_26 2011_09_26_drive_0117_sync 0000000475 2011_09_26 2011_09_26_drive_0117_sync 0000000478 2011_09_26 2011_09_26_drive_0117_sync 0000000481 2011_09_26 2011_09_26_drive_0117_sync 0000000484 2011_09_26 2011_09_26_drive_0117_sync 0000000487 2011_09_26 2011_09_26_drive_0117_sync 0000000490 2011_09_26 2011_09_26_drive_0117_sync 0000000493 2011_09_26 2011_09_26_drive_0117_sync 0000000496 2011_09_26 2011_09_26_drive_0117_sync 0000000499 2011_09_26 2011_09_26_drive_0117_sync 0000000502 2011_09_26 2011_09_26_drive_0117_sync 0000000505 2011_09_26 2011_09_26_drive_0117_sync 0000000508 2011_09_26 2011_09_26_drive_0117_sync 0000000512 2011_09_26 2011_09_26_drive_0117_sync 0000000517 2011_09_26 2011_09_26_drive_0117_sync 0000000522 2011_09_26 2011_09_26_drive_0117_sync 0000000527 2011_09_26 2011_09_26_drive_0117_sync 0000000532 2011_09_26 2011_09_26_drive_0117_sync 0000000537 2011_09_26 2011_09_26_drive_0117_sync 0000000541 2011_09_26 2011_09_26_drive_0117_sync 0000000545 2011_09_26 2011_09_26_drive_0117_sync 0000000549 2011_09_26 2011_09_26_drive_0117_sync 0000000552 2011_09_26 2011_09_26_drive_0117_sync 0000000555 2011_09_26 2011_09_26_drive_0117_sync 0000000558 2011_09_26 2011_09_26_drive_0117_sync 0000000560 2011_09_26 2011_09_26_drive_0117_sync 0000000562 2011_09_26 2011_09_26_drive_0117_sync 0000000564 2011_09_26 2011_09_26_drive_0117_sync 0000000566 2011_09_26 2011_09_26_drive_0117_sync 0000000568 2011_09_26 2011_09_26_drive_0117_sync 0000000570 2011_09_26 2011_09_26_drive_0117_sync 0000000572 2011_09_26 2011_09_26_drive_0117_sync 0000000575 2011_09_26 2011_09_26_drive_0117_sync 0000000578 2011_09_26 2011_09_26_drive_0117_sync 0000000581 2011_09_26 2011_09_26_drive_0117_sync 0000000583 2011_09_26 2011_09_26_drive_0117_sync 0000000585 2011_09_26 2011_09_26_drive_0117_sync 0000000587 2011_09_26 2011_09_26_drive_0117_sync 0000000589 2011_09_26 2011_09_26_drive_0117_sync 0000000591 2011_09_26 2011_09_26_drive_0117_sync 0000000593 2011_09_26 2011_09_26_drive_0117_sync 0000000595 2011_09_26 2011_09_26_drive_0117_sync 0000000597 2011_09_26 2011_09_26_drive_0117_sync 0000000599 2011_09_26 2011_09_26_drive_0117_sync 0000000603 2011_09_26 2011_09_26_drive_0117_sync 0000000605 2011_09_26 2011_09_26_drive_0117_sync 0000000607 2011_09_26 2011_09_26_drive_0117_sync 0000000609 2011_09_26 2011_09_26_drive_0117_sync 0000000611 2011_09_26 2011_09_26_drive_0117_sync 0000000613 2011_09_26 2011_09_26_drive_0117_sync 0000000615 2011_09_26 2011_09_26_drive_0117_sync 0000000617 2011_09_26 2011_09_26_drive_0117_sync 0000000619 2011_09_26 2011_09_26_drive_0117_sync 0000000621 2011_09_26 2011_09_26_drive_0117_sync 0000000623 2011_09_26 2011_09_26_drive_0117_sync 0000000625 2011_09_26 2011_09_26_drive_0117_sync 0000000627 2011_09_26 2011_09_26_drive_0117_sync 0000000629 2011_09_26 2011_09_26_drive_0117_sync 0000000631 2011_09_26 2011_09_26_drive_0117_sync 0000000633 2011_09_26 2011_09_26_drive_0117_sync 0000000635 2011_09_26 2011_09_26_drive_0117_sync 0000000638 2011_09_26 2011_09_26_drive_0117_sync 0000000641 2011_09_26 2011_09_26_drive_0117_sync 0000000644 2011_09_26 2011_09_26_drive_0117_sync 0000000647 2011_09_26 2011_09_26_drive_0117_sync 0000000650 2011_09_26 2011_09_26_drive_0117_sync 0000000653 2011_09_26 2011_09_26_drive_0117_sync 0000000656 2011_09_26 2011_09_26_drive_0117_sync 0000000659 2011_09_26 2011_09_26_drive_0093_sync 0000000002 2011_09_26 2011_09_26_drive_0093_sync 0000000004 2011_09_26 2011_09_26_drive_0093_sync 0000000006 2011_09_26 2011_09_26_drive_0093_sync 0000000008 2011_09_26 2011_09_26_drive_0093_sync 0000000010 2011_09_26 2011_09_26_drive_0093_sync 0000000012 2011_09_26 2011_09_26_drive_0093_sync 0000000014 2011_09_26 2011_09_26_drive_0093_sync 0000000016 2011_09_26 2011_09_26_drive_0093_sync 0000000018 2011_09_26 2011_09_26_drive_0093_sync 0000000020 2011_09_26 2011_09_26_drive_0093_sync 0000000022 2011_09_26 2011_09_26_drive_0093_sync 0000000024 2011_09_26 2011_09_26_drive_0093_sync 0000000026 2011_09_26 2011_09_26_drive_0093_sync 0000000028 2011_09_26 2011_09_26_drive_0093_sync 0000000030 2011_09_26 2011_09_26_drive_0093_sync 0000000032 2011_09_26 2011_09_26_drive_0093_sync 0000000034 2011_09_26 2011_09_26_drive_0093_sync 0000000036 2011_09_26 2011_09_26_drive_0093_sync 0000000038 2011_09_26 2011_09_26_drive_0093_sync 0000000040 2011_09_26 2011_09_26_drive_0093_sync 0000000042 2011_09_26 2011_09_26_drive_0093_sync 0000000044 2011_09_26 2011_09_26_drive_0093_sync 0000000046 2011_09_26 2011_09_26_drive_0093_sync 0000000048 2011_09_26 2011_09_26_drive_0093_sync 0000000050 2011_09_26 2011_09_26_drive_0093_sync 0000000052 2011_09_26 2011_09_26_drive_0093_sync 0000000054 2011_09_26 2011_09_26_drive_0093_sync 0000000056 2011_09_26 2011_09_26_drive_0093_sync 0000000058 2011_09_26 2011_09_26_drive_0093_sync 0000000060 2011_09_26 2011_09_26_drive_0093_sync 0000000062 2011_09_26 2011_09_26_drive_0093_sync 0000000064 2011_09_26 2011_09_26_drive_0093_sync 0000000066 2011_09_26 2011_09_26_drive_0093_sync 0000000068 2011_09_26 2011_09_26_drive_0093_sync 0000000070 2011_09_26 2011_09_26_drive_0093_sync 0000000072 2011_09_26 2011_09_26_drive_0093_sync 0000000074 2011_09_26 2011_09_26_drive_0093_sync 0000000076 2011_09_26 2011_09_26_drive_0093_sync 0000000078 2011_09_26 2011_09_26_drive_0093_sync 0000000080 2011_09_26 2011_09_26_drive_0093_sync 0000000082 2011_09_26 2011_09_26_drive_0093_sync 0000000084 2011_09_26 2011_09_26_drive_0093_sync 0000000086 2011_09_26 2011_09_26_drive_0093_sync 0000000088 2011_09_26 2011_09_26_drive_0093_sync 0000000090 2011_09_26 2011_09_26_drive_0093_sync 0000000092 2011_09_26 2011_09_26_drive_0093_sync 0000000094 2011_09_26 2011_09_26_drive_0093_sync 0000000096 2011_09_26 2011_09_26_drive_0093_sync 0000000098 2011_09_26 2011_09_26_drive_0093_sync 0000000100 2011_09_26 2011_09_26_drive_0093_sync 0000000102 2011_09_26 2011_09_26_drive_0093_sync 0000000104 2011_09_26 2011_09_26_drive_0093_sync 0000000106 2011_09_26 2011_09_26_drive_0093_sync 0000000108 2011_09_26 2011_09_26_drive_0093_sync 0000000110 2011_09_26 2011_09_26_drive_0093_sync 0000000112 2011_09_26 2011_09_26_drive_0093_sync 0000000114 2011_09_26 2011_09_26_drive_0093_sync 0000000116 2011_09_26 2011_09_26_drive_0093_sync 0000000118 2011_09_26 2011_09_26_drive_0093_sync 0000000120 2011_09_26 2011_09_26_drive_0093_sync 0000000122 2011_09_26 2011_09_26_drive_0093_sync 0000000124 2011_09_26 2011_09_26_drive_0093_sync 0000000126 2011_09_26 2011_09_26_drive_0093_sync 0000000128 2011_09_26 2011_09_26_drive_0093_sync 0000000162 2011_09_26 2011_09_26_drive_0093_sync 0000000168 2011_09_26 2011_09_26_drive_0093_sync 0000000171 2011_09_26 2011_09_26_drive_0093_sync 0000000174 2011_09_26 2011_09_26_drive_0093_sync 0000000177 2011_09_26 2011_09_26_drive_0093_sync 0000000179 2011_09_26 2011_09_26_drive_0093_sync 0000000181 2011_09_26 2011_09_26_drive_0093_sync 0000000183 2011_09_26 2011_09_26_drive_0093_sync 0000000185 2011_09_26 2011_09_26_drive_0093_sync 0000000187 2011_09_26 2011_09_26_drive_0093_sync 0000000189 2011_09_26 2011_09_26_drive_0093_sync 0000000191 2011_09_26 2011_09_26_drive_0093_sync 0000000193 2011_09_26 2011_09_26_drive_0093_sync 0000000195 2011_09_26 2011_09_26_drive_0093_sync 0000000197 2011_09_26 2011_09_26_drive_0093_sync 0000000199 2011_09_26 2011_09_26_drive_0093_sync 0000000201 2011_09_26 2011_09_26_drive_0093_sync 0000000203 2011_09_26 2011_09_26_drive_0093_sync 0000000205 2011_09_26 2011_09_26_drive_0093_sync 0000000207 2011_09_26 2011_09_26_drive_0093_sync 0000000209 2011_09_26 2011_09_26_drive_0093_sync 0000000211 2011_09_26 2011_09_26_drive_0093_sync 0000000213 2011_09_26 2011_09_26_drive_0093_sync 0000000215 2011_09_26 2011_09_26_drive_0093_sync 0000000217 2011_09_26 2011_09_26_drive_0093_sync 0000000219 2011_09_26 2011_09_26_drive_0093_sync 0000000221 2011_09_26 2011_09_26_drive_0093_sync 0000000223 2011_09_26 2011_09_26_drive_0093_sync 0000000225 2011_09_26 2011_09_26_drive_0093_sync 0000000227 2011_09_26 2011_09_26_drive_0093_sync 0000000229 2011_09_26 2011_09_26_drive_0093_sync 0000000231 2011_09_26 2011_09_26_drive_0093_sync 0000000233 2011_09_26 2011_09_26_drive_0093_sync 0000000235 2011_09_26 2011_09_26_drive_0093_sync 0000000238 2011_09_26 2011_09_26_drive_0093_sync 0000000241 2011_09_26 2011_09_26_drive_0093_sync 0000000244 2011_09_26 2011_09_26_drive_0093_sync 0000000247 2011_09_26 2011_09_26_drive_0093_sync 0000000250 2011_09_26 2011_09_26_drive_0093_sync 0000000253 2011_09_26 2011_09_26_drive_0093_sync 0000000256 2011_09_26 2011_09_26_drive_0093_sync 0000000258 2011_09_26 2011_09_26_drive_0093_sync 0000000260 2011_09_26 2011_09_26_drive_0093_sync 0000000262 2011_09_26 2011_09_26_drive_0093_sync 0000000264 2011_09_26 2011_09_26_drive_0093_sync 0000000266 2011_09_26 2011_09_26_drive_0093_sync 0000000268 2011_09_26 2011_09_26_drive_0093_sync 0000000270 2011_09_26 2011_09_26_drive_0093_sync 0000000272 2011_09_26 2011_09_26_drive_0093_sync 0000000274 2011_09_26 2011_09_26_drive_0093_sync 0000000276 2011_09_26 2011_09_26_drive_0093_sync 0000000277 2011_09_26 2011_09_26_drive_0093_sync 0000000278 2011_09_26 2011_09_26_drive_0093_sync 0000000280 2011_09_26 2011_09_26_drive_0093_sync 0000000282 2011_09_26 2011_09_26_drive_0093_sync 0000000284 2011_09_26 2011_09_26_drive_0093_sync 0000000286 2011_09_26 2011_09_26_drive_0093_sync 0000000288 2011_09_26 2011_09_26_drive_0093_sync 0000000290 2011_09_26 2011_09_26_drive_0093_sync 0000000292 2011_09_26 2011_09_26_drive_0093_sync 0000000294 2011_09_26 2011_09_26_drive_0093_sync 0000000296 2011_09_26 2011_09_26_drive_0093_sync 0000000298 2011_09_26 2011_09_26_drive_0093_sync 0000000300 2011_09_26 2011_09_26_drive_0093_sync 0000000302 2011_09_26 2011_09_26_drive_0093_sync 0000000304 2011_09_26 2011_09_26_drive_0093_sync 0000000306 2011_09_26 2011_09_26_drive_0093_sync 0000000308 2011_09_26 2011_09_26_drive_0093_sync 0000000310 2011_09_26 2011_09_26_drive_0093_sync 0000000312 2011_09_26 2011_09_26_drive_0093_sync 0000000314 2011_09_26 2011_09_26_drive_0093_sync 0000000316 2011_09_26 2011_09_26_drive_0093_sync 0000000318 2011_09_26 2011_09_26_drive_0093_sync 0000000320 2011_09_26 2011_09_26_drive_0093_sync 0000000322 2011_09_26 2011_09_26_drive_0093_sync 0000000324 2011_09_26 2011_09_26_drive_0093_sync 0000000326 2011_09_26 2011_09_26_drive_0093_sync 0000000328 2011_09_26 2011_09_26_drive_0093_sync 0000000330 2011_09_26 2011_09_26_drive_0093_sync 0000000332 2011_09_26 2011_09_26_drive_0093_sync 0000000334 2011_09_26 2011_09_26_drive_0093_sync 0000000336 2011_09_26 2011_09_26_drive_0093_sync 0000000338 2011_09_26 2011_09_26_drive_0093_sync 0000000340 2011_09_26 2011_09_26_drive_0093_sync 0000000342 2011_09_26 2011_09_26_drive_0093_sync 0000000344 2011_09_26 2011_09_26_drive_0093_sync 0000000346 2011_09_26 2011_09_26_drive_0093_sync 0000000348 2011_09_26 2011_09_26_drive_0093_sync 0000000350 2011_09_26 2011_09_26_drive_0093_sync 0000000352 2011_09_26 2011_09_26_drive_0093_sync 0000000354 2011_09_26 2011_09_26_drive_0093_sync 0000000356 2011_09_26 2011_09_26_drive_0093_sync 0000000358 2011_09_26 2011_09_26_drive_0093_sync 0000000360 2011_09_26 2011_09_26_drive_0093_sync 0000000362 2011_09_26 2011_09_26_drive_0093_sync 0000000364 2011_09_26 2011_09_26_drive_0093_sync 0000000366 2011_09_26 2011_09_26_drive_0093_sync 0000000368 2011_09_26 2011_09_26_drive_0093_sync 0000000370 2011_09_26 2011_09_26_drive_0093_sync 0000000372 2011_09_26 2011_09_26_drive_0093_sync 0000000374 2011_09_26 2011_09_26_drive_0093_sync 0000000376 2011_09_26 2011_09_26_drive_0093_sync 0000000378 2011_09_26 2011_09_26_drive_0093_sync 0000000380 2011_09_26 2011_09_26_drive_0093_sync 0000000382 2011_09_26 2011_09_26_drive_0093_sync 0000000384 2011_09_26 2011_09_26_drive_0093_sync 0000000386 2011_09_26 2011_09_26_drive_0093_sync 0000000388 2011_09_26 2011_09_26_drive_0093_sync 0000000390 2011_09_26 2011_09_26_drive_0093_sync 0000000392 2011_09_26 2011_09_26_drive_0093_sync 0000000394 2011_09_26 2011_09_26_drive_0093_sync 0000000396 2011_09_26 2011_09_26_drive_0093_sync 0000000398 2011_09_26 2011_09_26_drive_0093_sync 0000000400 2011_09_26 2011_09_26_drive_0093_sync 0000000402 2011_09_26 2011_09_26_drive_0093_sync 0000000404 2011_09_26 2011_09_26_drive_0093_sync 0000000406 2011_09_26 2011_09_26_drive_0093_sync 0000000408 2011_09_26 2011_09_26_drive_0093_sync 0000000410 2011_09_26 2011_09_26_drive_0093_sync 0000000412 2011_09_26 2011_09_26_drive_0093_sync 0000000414 2011_09_26 2011_09_26_drive_0093_sync 0000000416 2011_09_26 2011_09_26_drive_0093_sync 0000000418 2011_09_26 2011_09_26_drive_0093_sync 0000000420 2011_09_26 2011_09_26_drive_0093_sync 0000000422 2011_09_26 2011_09_26_drive_0093_sync 0000000424 2011_09_26 2011_09_26_drive_0093_sync 0000000426 2011_09_26 2011_09_26_drive_0093_sync 0000000428 2011_09_26 2011_09_26_drive_0093_sync 0000000430 2011_09_26 2011_09_26_drive_0093_sync 0000000432 2011_09_26 2011_09_26_drive_0036_sync 0000000002 2011_09_26 2011_09_26_drive_0036_sync 0000000004 2011_09_26 2011_09_26_drive_0036_sync 0000000006 2011_09_26 2011_09_26_drive_0036_sync 0000000008 2011_09_26 2011_09_26_drive_0036_sync 0000000010 2011_09_26 2011_09_26_drive_0036_sync 0000000012 2011_09_26 2011_09_26_drive_0036_sync 0000000014 2011_09_26 2011_09_26_drive_0036_sync 0000000016 2011_09_26 2011_09_26_drive_0036_sync 0000000018 2011_09_26 2011_09_26_drive_0036_sync 0000000020 2011_09_26 2011_09_26_drive_0036_sync 0000000022 2011_09_26 2011_09_26_drive_0036_sync 0000000024 2011_09_26 2011_09_26_drive_0036_sync 0000000026 2011_09_26 2011_09_26_drive_0036_sync 0000000028 2011_09_26 2011_09_26_drive_0036_sync 0000000030 2011_09_26 2011_09_26_drive_0036_sync 0000000032 2011_09_26 2011_09_26_drive_0036_sync 0000000034 2011_09_26 2011_09_26_drive_0036_sync 0000000036 2011_09_26 2011_09_26_drive_0036_sync 0000000038 2011_09_26 2011_09_26_drive_0036_sync 0000000040 2011_09_26 2011_09_26_drive_0036_sync 0000000042 2011_09_26 2011_09_26_drive_0036_sync 0000000044 2011_09_26 2011_09_26_drive_0036_sync 0000000046 2011_09_26 2011_09_26_drive_0036_sync 0000000048 2011_09_26 2011_09_26_drive_0036_sync 0000000050 2011_09_26 2011_09_26_drive_0036_sync 0000000052 2011_09_26 2011_09_26_drive_0036_sync 0000000054 2011_09_26 2011_09_26_drive_0036_sync 0000000056 2011_09_26 2011_09_26_drive_0036_sync 0000000058 2011_09_26 2011_09_26_drive_0036_sync 0000000060 2011_09_26 2011_09_26_drive_0036_sync 0000000062 2011_09_26 2011_09_26_drive_0036_sync 0000000064 2011_09_26 2011_09_26_drive_0036_sync 0000000066 2011_09_26 2011_09_26_drive_0036_sync 0000000068 2011_09_26 2011_09_26_drive_0036_sync 0000000070 2011_09_26 2011_09_26_drive_0036_sync 0000000072 2011_09_26 2011_09_26_drive_0036_sync 0000000074 2011_09_26 2011_09_26_drive_0036_sync 0000000076 2011_09_26 2011_09_26_drive_0036_sync 0000000078 2011_09_26 2011_09_26_drive_0036_sync 0000000080 2011_09_26 2011_09_26_drive_0036_sync 0000000082 2011_09_26 2011_09_26_drive_0036_sync 0000000084 2011_09_26 2011_09_26_drive_0036_sync 0000000086 2011_09_26 2011_09_26_drive_0036_sync 0000000088 2011_09_26 2011_09_26_drive_0036_sync 0000000090 2011_09_26 2011_09_26_drive_0036_sync 0000000092 2011_09_26 2011_09_26_drive_0036_sync 0000000094 2011_09_26 2011_09_26_drive_0036_sync 0000000096 2011_09_26 2011_09_26_drive_0036_sync 0000000098 2011_09_26 2011_09_26_drive_0036_sync 0000000100 2011_09_26 2011_09_26_drive_0036_sync 0000000102 2011_09_26 2011_09_26_drive_0036_sync 0000000104 2011_09_26 2011_09_26_drive_0036_sync 0000000106 2011_09_26 2011_09_26_drive_0036_sync 0000000108 2011_09_26 2011_09_26_drive_0036_sync 0000000110 2011_09_26 2011_09_26_drive_0036_sync 0000000112 2011_09_26 2011_09_26_drive_0036_sync 0000000114 2011_09_26 2011_09_26_drive_0036_sync 0000000116 2011_09_26 2011_09_26_drive_0036_sync 0000000118 2011_09_26 2011_09_26_drive_0036_sync 0000000120 2011_09_26 2011_09_26_drive_0036_sync 0000000122 2011_09_26 2011_09_26_drive_0036_sync 0000000124 2011_09_26 2011_09_26_drive_0036_sync 0000000126 2011_09_26 2011_09_26_drive_0036_sync 0000000129 2011_09_26 2011_09_26_drive_0036_sync 0000000131 2011_09_26 2011_09_26_drive_0036_sync 0000000133 2011_09_26 2011_09_26_drive_0036_sync 0000000135 2011_09_26 2011_09_26_drive_0036_sync 0000000137 2011_09_26 2011_09_26_drive_0036_sync 0000000139 2011_09_26 2011_09_26_drive_0036_sync 0000000141 2011_09_26 2011_09_26_drive_0036_sync 0000000143 2011_09_26 2011_09_26_drive_0036_sync 0000000145 2011_09_26 2011_09_26_drive_0036_sync 0000000149 2011_09_26 2011_09_26_drive_0036_sync 0000000151 2011_09_26 2011_09_26_drive_0036_sync 0000000153 2011_09_26 2011_09_26_drive_0036_sync 0000000155 2011_09_26 2011_09_26_drive_0036_sync 0000000157 2011_09_26 2011_09_26_drive_0036_sync 0000000159 2011_09_26 2011_09_26_drive_0036_sync 0000000161 2011_09_26 2011_09_26_drive_0036_sync 0000000163 2011_09_26 2011_09_26_drive_0036_sync 0000000165 2011_09_26 2011_09_26_drive_0036_sync 0000000167 2011_09_26 2011_09_26_drive_0036_sync 0000000169 2011_09_26 2011_09_26_drive_0036_sync 0000000171 2011_09_26 2011_09_26_drive_0036_sync 0000000173 2011_09_26 2011_09_26_drive_0036_sync 0000000175 2011_09_26 2011_09_26_drive_0036_sync 0000000177 2011_09_26 2011_09_26_drive_0036_sync 0000000179 2011_09_26 2011_09_26_drive_0036_sync 0000000181 2011_09_26 2011_09_26_drive_0036_sync 0000000183 2011_09_26 2011_09_26_drive_0036_sync 0000000185 2011_09_26 2011_09_26_drive_0036_sync 0000000187 2011_09_26 2011_09_26_drive_0036_sync 0000000189 2011_09_26 2011_09_26_drive_0036_sync 0000000191 2011_09_26 2011_09_26_drive_0036_sync 0000000193 2011_09_26 2011_09_26_drive_0036_sync 0000000195 2011_09_26 2011_09_26_drive_0036_sync 0000000197 2011_09_26 2011_09_26_drive_0036_sync 0000000199 2011_09_26 2011_09_26_drive_0036_sync 0000000201 2011_09_26 2011_09_26_drive_0036_sync 0000000203 2011_09_26 2011_09_26_drive_0036_sync 0000000205 2011_09_26 2011_09_26_drive_0036_sync 0000000207 2011_09_26 2011_09_26_drive_0036_sync 0000000209 2011_09_26 2011_09_26_drive_0036_sync 0000000211 2011_09_26 2011_09_26_drive_0036_sync 0000000213 2011_09_26 2011_09_26_drive_0036_sync 0000000215 2011_09_26 2011_09_26_drive_0036_sync 0000000217 2011_09_26 2011_09_26_drive_0036_sync 0000000219 2011_09_26 2011_09_26_drive_0036_sync 0000000221 2011_09_26 2011_09_26_drive_0036_sync 0000000223 2011_09_26 2011_09_26_drive_0036_sync 0000000225 2011_09_26 2011_09_26_drive_0036_sync 0000000227 2011_09_26 2011_09_26_drive_0036_sync 0000000229 2011_09_26 2011_09_26_drive_0036_sync 0000000231 2011_09_26 2011_09_26_drive_0036_sync 0000000233 2011_09_26 2011_09_26_drive_0036_sync 0000000235 2011_09_26 2011_09_26_drive_0036_sync 0000000237 2011_09_26 2011_09_26_drive_0036_sync 0000000239 2011_09_26 2011_09_26_drive_0036_sync 0000000241 2011_09_26 2011_09_26_drive_0036_sync 0000000243 2011_09_26 2011_09_26_drive_0036_sync 0000000245 2011_09_26 2011_09_26_drive_0036_sync 0000000247 2011_09_26 2011_09_26_drive_0036_sync 0000000249 2011_09_26 2011_09_26_drive_0036_sync 0000000251 2011_09_26 2011_09_26_drive_0036_sync 0000000253 2011_09_26 2011_09_26_drive_0036_sync 0000000255 2011_09_26 2011_09_26_drive_0036_sync 0000000257 2011_09_26 2011_09_26_drive_0036_sync 0000000259 2011_09_26 2011_09_26_drive_0036_sync 0000000261 2011_09_26 2011_09_26_drive_0036_sync 0000000263 2011_09_26 2011_09_26_drive_0036_sync 0000000379 2011_09_26 2011_09_26_drive_0036_sync 0000000380 2011_09_26 2011_09_26_drive_0036_sync 0000000381 2011_09_26 2011_09_26_drive_0036_sync 0000000382 2011_09_26 2011_09_26_drive_0036_sync 0000000383 2011_09_26 2011_09_26_drive_0036_sync 0000000384 2011_09_26 2011_09_26_drive_0036_sync 0000000385 2011_09_26 2011_09_26_drive_0036_sync 0000000386 2011_09_26 2011_09_26_drive_0036_sync 0000000387 2011_09_26 2011_09_26_drive_0036_sync 0000000388 2011_09_26 2011_09_26_drive_0036_sync 0000000389 2011_09_26 2011_09_26_drive_0036_sync 0000000390 2011_09_26 2011_09_26_drive_0036_sync 0000000391 2011_09_26 2011_09_26_drive_0036_sync 0000000392 2011_09_26 2011_09_26_drive_0036_sync 0000000393 2011_09_26 2011_09_26_drive_0036_sync 0000000394 2011_09_26 2011_09_26_drive_0036_sync 0000000395 2011_09_26 2011_09_26_drive_0036_sync 0000000396 2011_09_26 2011_09_26_drive_0036_sync 0000000397 2011_09_26 2011_09_26_drive_0036_sync 0000000398 2011_09_26 2011_09_26_drive_0036_sync 0000000399 2011_09_26 2011_09_26_drive_0036_sync 0000000400 2011_09_26 2011_09_26_drive_0036_sync 0000000401 2011_09_26 2011_09_26_drive_0036_sync 0000000402 2011_09_26 2011_09_26_drive_0036_sync 0000000403 2011_09_26 2011_09_26_drive_0036_sync 0000000404 2011_09_26 2011_09_26_drive_0036_sync 0000000453 2011_09_26 2011_09_26_drive_0036_sync 0000000454 2011_09_26 2011_09_26_drive_0036_sync 0000000455 2011_09_26 2011_09_26_drive_0036_sync 0000000456 2011_09_26 2011_09_26_drive_0036_sync 0000000457 2011_09_26 2011_09_26_drive_0036_sync 0000000458 2011_09_26 2011_09_26_drive_0036_sync 0000000459 2011_09_26 2011_09_26_drive_0036_sync 0000000460 2011_09_26 2011_09_26_drive_0036_sync 0000000461 2011_09_26 2011_09_26_drive_0036_sync 0000000462 2011_09_26 2011_09_26_drive_0036_sync 0000000463 2011_09_26 2011_09_26_drive_0036_sync 0000000464 2011_09_26 2011_09_26_drive_0036_sync 0000000465 2011_09_26 2011_09_26_drive_0036_sync 0000000466 2011_09_26 2011_09_26_drive_0036_sync 0000000467 2011_09_26 2011_09_26_drive_0036_sync 0000000468 2011_09_26 2011_09_26_drive_0036_sync 0000000613 2011_09_26 2011_09_26_drive_0036_sync 0000000615 2011_09_26 2011_09_26_drive_0036_sync 0000000617 2011_09_26 2011_09_26_drive_0036_sync 0000000619 2011_09_26 2011_09_26_drive_0036_sync 0000000621 2011_09_26 2011_09_26_drive_0036_sync 0000000623 2011_09_26 2011_09_26_drive_0036_sync 0000000625 2011_09_26 2011_09_26_drive_0036_sync 0000000627 2011_09_26 2011_09_26_drive_0036_sync 0000000628 2011_09_26 2011_09_26_drive_0036_sync 0000000629 2011_09_26 2011_09_26_drive_0036_sync 0000000630 2011_09_26 2011_09_26_drive_0036_sync 0000000632 2011_09_26 2011_09_26_drive_0036_sync 0000000633 2011_09_26 2011_09_26_drive_0036_sync 0000000634 2011_09_26 2011_09_26_drive_0036_sync 0000000635 2011_09_26 2011_09_26_drive_0036_sync 0000000636 2011_09_26 2011_09_26_drive_0036_sync 0000000637 2011_09_26 2011_09_26_drive_0036_sync 0000000638 2011_09_26 2011_09_26_drive_0036_sync 0000000639 2011_09_26 2011_09_26_drive_0036_sync 0000000640 2011_09_26 2011_09_26_drive_0036_sync 0000000641 2011_09_26 2011_09_26_drive_0036_sync 0000000642 2011_09_26 2011_09_26_drive_0036_sync 0000000643 2011_09_26 2011_09_26_drive_0036_sync 0000000644 2011_09_26 2011_09_26_drive_0036_sync 0000000645 2011_09_26 2011_09_26_drive_0036_sync 0000000646 2011_09_26 2011_09_26_drive_0036_sync 0000000647 2011_09_26 2011_09_26_drive_0036_sync 0000000648 2011_09_26 2011_09_26_drive_0036_sync 0000000649 2011_09_26 2011_09_26_drive_0036_sync 0000000650 2011_09_26 2011_09_26_drive_0036_sync 0000000651 2011_09_26 2011_09_26_drive_0036_sync 0000000652 2011_09_26 2011_09_26_drive_0036_sync 0000000653 2011_09_26 2011_09_26_drive_0036_sync 0000000654 2011_09_26 2011_09_26_drive_0036_sync 0000000655 2011_09_26 2011_09_26_drive_0036_sync 0000000656 2011_09_26 2011_09_26_drive_0036_sync 0000000657 2011_09_26 2011_09_26_drive_0036_sync 0000000658 2011_09_26 2011_09_26_drive_0036_sync 0000000659 2011_09_26 2011_09_26_drive_0036_sync 0000000660 2011_09_26 2011_09_26_drive_0036_sync 0000000661 2011_09_26 2011_09_26_drive_0036_sync 0000000662 2011_09_26 2011_09_26_drive_0036_sync 0000000663 2011_09_26 2011_09_26_drive_0036_sync 0000000664 2011_09_26 2011_09_26_drive_0036_sync 0000000665 2011_09_26 2011_09_26_drive_0036_sync 0000000666 2011_09_26 2011_09_26_drive_0036_sync 0000000667 2011_09_26 2011_09_26_drive_0036_sync 0000000668 2011_09_26 2011_09_26_drive_0036_sync 0000000669 2011_09_26 2011_09_26_drive_0036_sync 0000000671 2011_09_26 2011_09_26_drive_0036_sync 0000000673 2011_09_26 2011_09_26_drive_0036_sync 0000000675 2011_09_26 2011_09_26_drive_0036_sync 0000000677 2011_09_26 2011_09_26_drive_0036_sync 0000000679 2011_09_26 2011_09_26_drive_0036_sync 0000000681 2011_09_26 2011_09_26_drive_0036_sync 0000000683 2011_09_26 2011_09_26_drive_0036_sync 0000000685 2011_09_26 2011_09_26_drive_0036_sync 0000000687 2011_09_26 2011_09_26_drive_0036_sync 0000000689 2011_09_26 2011_09_26_drive_0036_sync 0000000691 2011_09_26 2011_09_26_drive_0036_sync 0000000693 2011_09_26 2011_09_26_drive_0036_sync 0000000695 2011_09_26 2011_09_26_drive_0036_sync 0000000697 2011_09_26 2011_09_26_drive_0036_sync 0000000699 2011_09_26 2011_09_26_drive_0036_sync 0000000703 2011_09_26 2011_09_26_drive_0036_sync 0000000705 2011_09_26 2011_09_26_drive_0036_sync 0000000707 2011_09_26 2011_09_26_drive_0036_sync 0000000709 2011_09_26 2011_09_26_drive_0035_sync 0000000002 2011_09_26 2011_09_26_drive_0035_sync 0000000004 2011_09_26 2011_09_26_drive_0035_sync 0000000006 2011_09_26 2011_09_26_drive_0035_sync 0000000008 2011_09_26 2011_09_26_drive_0035_sync 0000000010 2011_09_26 2011_09_26_drive_0035_sync 0000000012 2011_09_26 2011_09_26_drive_0035_sync 0000000014 2011_09_26 2011_09_26_drive_0035_sync 0000000016 2011_09_26 2011_09_26_drive_0035_sync 0000000018 2011_09_26 2011_09_26_drive_0035_sync 0000000020 2011_09_26 2011_09_26_drive_0035_sync 0000000022 2011_09_26 2011_09_26_drive_0035_sync 0000000024 2011_09_26 2011_09_26_drive_0035_sync 0000000026 2011_09_26 2011_09_26_drive_0035_sync 0000000028 2011_09_26 2011_09_26_drive_0035_sync 0000000030 2011_09_26 2011_09_26_drive_0035_sync 0000000032 2011_09_26 2011_09_26_drive_0035_sync 0000000034 2011_09_26 2011_09_26_drive_0035_sync 0000000036 2011_09_26 2011_09_26_drive_0035_sync 0000000040 2011_09_26 2011_09_26_drive_0035_sync 0000000042 2011_09_26 2011_09_26_drive_0035_sync 0000000044 2011_09_26 2011_09_26_drive_0035_sync 0000000046 2011_09_26 2011_09_26_drive_0035_sync 0000000048 2011_09_26 2011_09_26_drive_0035_sync 0000000050 2011_09_26 2011_09_26_drive_0035_sync 0000000052 2011_09_26 2011_09_26_drive_0035_sync 0000000054 2011_09_26 2011_09_26_drive_0035_sync 0000000056 2011_09_26 2011_09_26_drive_0035_sync 0000000058 2011_09_26 2011_09_26_drive_0035_sync 0000000060 2011_09_26 2011_09_26_drive_0035_sync 0000000062 2011_09_26 2011_09_26_drive_0035_sync 0000000065 2011_09_26 2011_09_26_drive_0035_sync 0000000068 2011_09_26 2011_09_26_drive_0035_sync 0000000071 2011_09_26 2011_09_26_drive_0035_sync 0000000075 2011_09_26 2011_09_26_drive_0035_sync 0000000079 2011_09_26 2011_09_26_drive_0035_sync 0000000083 2011_09_26 2011_09_26_drive_0035_sync 0000000087 2011_09_26 2011_09_26_drive_0035_sync 0000000090 2011_09_26 2011_09_26_drive_0035_sync 0000000093 2011_09_26 2011_09_26_drive_0035_sync 0000000096 2011_09_26 2011_09_26_drive_0035_sync 0000000098 2011_09_26 2011_09_26_drive_0035_sync 0000000100 2011_09_26 2011_09_26_drive_0035_sync 0000000102 2011_09_26 2011_09_26_drive_0035_sync 0000000104 2011_09_26 2011_09_26_drive_0035_sync 0000000106 2011_09_26 2011_09_26_drive_0035_sync 0000000108 2011_09_26 2011_09_26_drive_0035_sync 0000000109 2011_09_26 2011_09_26_drive_0035_sync 0000000111 2011_09_26 2011_09_26_drive_0035_sync 0000000113 2011_09_26 2011_09_26_drive_0035_sync 0000000115 2011_09_26 2011_09_26_drive_0035_sync 0000000117 2011_09_26 2011_09_26_drive_0035_sync 0000000119 2011_09_26 2011_09_26_drive_0035_sync 0000000121 2011_09_26 2011_09_26_drive_0035_sync 0000000123 2011_09_26 2011_09_26_drive_0035_sync 0000000125 2011_09_26 2011_09_26_drive_0035_sync 0000000127 2011_09_26 2011_09_26_drive_0035_sync 0000000129 2011_09_26 2011_09_26_drive_0095_sync 0000000002 2011_09_26 2011_09_26_drive_0095_sync 0000000004 2011_09_26 2011_09_26_drive_0095_sync 0000000006 2011_09_26 2011_09_26_drive_0095_sync 0000000008 2011_09_26 2011_09_26_drive_0095_sync 0000000010 2011_09_26 2011_09_26_drive_0095_sync 0000000012 2011_09_26 2011_09_26_drive_0095_sync 0000000014 2011_09_26 2011_09_26_drive_0095_sync 0000000016 2011_09_26 2011_09_26_drive_0095_sync 0000000018 2011_09_26 2011_09_26_drive_0095_sync 0000000020 2011_09_26 2011_09_26_drive_0095_sync 0000000022 2011_09_26 2011_09_26_drive_0095_sync 0000000023 2011_09_26 2011_09_26_drive_0095_sync 0000000024 2011_09_26 2011_09_26_drive_0095_sync 0000000026 2011_09_26 2011_09_26_drive_0095_sync 0000000028 2011_09_26 2011_09_26_drive_0095_sync 0000000030 2011_09_26 2011_09_26_drive_0095_sync 0000000032 2011_09_26 2011_09_26_drive_0095_sync 0000000034 2011_09_26 2011_09_26_drive_0095_sync 0000000036 2011_09_26 2011_09_26_drive_0095_sync 0000000038 2011_09_26 2011_09_26_drive_0095_sync 0000000040 2011_09_26 2011_09_26_drive_0095_sync 0000000042 2011_09_26 2011_09_26_drive_0095_sync 0000000044 2011_09_26 2011_09_26_drive_0095_sync 0000000046 2011_09_26 2011_09_26_drive_0095_sync 0000000048 2011_09_26 2011_09_26_drive_0095_sync 0000000050 2011_09_26 2011_09_26_drive_0095_sync 0000000052 2011_09_26 2011_09_26_drive_0095_sync 0000000053 2011_09_26 2011_09_26_drive_0095_sync 0000000055 2011_09_26 2011_09_26_drive_0095_sync 0000000057 2011_09_26 2011_09_26_drive_0095_sync 0000000059 2011_09_26 2011_09_26_drive_0095_sync 0000000061 2011_09_26 2011_09_26_drive_0095_sync 0000000063 2011_09_26 2011_09_26_drive_0095_sync 0000000065 2011_09_26 2011_09_26_drive_0095_sync 0000000067 2011_09_26 2011_09_26_drive_0095_sync 0000000069 2011_09_26 2011_09_26_drive_0095_sync 0000000071 2011_09_26 2011_09_26_drive_0095_sync 0000000073 2011_09_26 2011_09_26_drive_0095_sync 0000000075 2011_09_26 2011_09_26_drive_0095_sync 0000000077 2011_09_26 2011_09_26_drive_0095_sync 0000000079 2011_09_26 2011_09_26_drive_0095_sync 0000000081 2011_09_26 2011_09_26_drive_0095_sync 0000000083 2011_09_26 2011_09_26_drive_0095_sync 0000000085 2011_09_26 2011_09_26_drive_0095_sync 0000000086 2011_09_26 2011_09_26_drive_0095_sync 0000000087 2011_09_26 2011_09_26_drive_0095_sync 0000000088 2011_09_26 2011_09_26_drive_0095_sync 0000000089 2011_09_26 2011_09_26_drive_0095_sync 0000000090 2011_09_26 2011_09_26_drive_0095_sync 0000000091 2011_09_26 2011_09_26_drive_0095_sync 0000000092 2011_09_26 2011_09_26_drive_0095_sync 0000000093 2011_09_26 2011_09_26_drive_0095_sync 0000000094 2011_09_26 2011_09_26_drive_0095_sync 0000000095 2011_09_26 2011_09_26_drive_0095_sync 0000000096 2011_09_26 2011_09_26_drive_0095_sync 0000000097 2011_09_26 2011_09_26_drive_0095_sync 0000000098 2011_09_26 2011_09_26_drive_0095_sync 0000000099 2011_09_26 2011_09_26_drive_0095_sync 0000000100 2011_09_26 2011_09_26_drive_0095_sync 0000000101 2011_09_26 2011_09_26_drive_0095_sync 0000000102 2011_09_26 2011_09_26_drive_0095_sync 0000000103 2011_09_26 2011_09_26_drive_0095_sync 0000000104 2011_09_26 2011_09_26_drive_0095_sync 0000000105 2011_09_26 2011_09_26_drive_0095_sync 0000000106 2011_09_26 2011_09_26_drive_0095_sync 0000000107 2011_09_26 2011_09_26_drive_0095_sync 0000000108 2011_09_26 2011_09_26_drive_0095_sync 0000000109 2011_09_26 2011_09_26_drive_0095_sync 0000000110 2011_09_26 2011_09_26_drive_0095_sync 0000000111 2011_09_26 2011_09_26_drive_0095_sync 0000000112 2011_09_26 2011_09_26_drive_0095_sync 0000000113 2011_09_26 2011_09_26_drive_0095_sync 0000000114 2011_09_26 2011_09_26_drive_0095_sync 0000000115 2011_09_26 2011_09_26_drive_0095_sync 0000000116 2011_09_26 2011_09_26_drive_0095_sync 0000000117 2011_09_26 2011_09_26_drive_0095_sync 0000000118 2011_09_26 2011_09_26_drive_0095_sync 0000000119 2011_09_26 2011_09_26_drive_0095_sync 0000000120 2011_09_26 2011_09_26_drive_0095_sync 0000000121 2011_09_26 2011_09_26_drive_0095_sync 0000000122 2011_09_26 2011_09_26_drive_0095_sync 0000000123 2011_09_26 2011_09_26_drive_0095_sync 0000000124 2011_09_26 2011_09_26_drive_0095_sync 0000000125 2011_09_26 2011_09_26_drive_0095_sync 0000000126 2011_09_26 2011_09_26_drive_0095_sync 0000000127 2011_09_26 2011_09_26_drive_0095_sync 0000000128 2011_09_26 2011_09_26_drive_0095_sync 0000000129 2011_09_26 2011_09_26_drive_0095_sync 0000000130 2011_09_26 2011_09_26_drive_0095_sync 0000000131 2011_09_26 2011_09_26_drive_0095_sync 0000000132 2011_09_26 2011_09_26_drive_0095_sync 0000000133 2011_09_26 2011_09_26_drive_0095_sync 0000000134 2011_09_26 2011_09_26_drive_0095_sync 0000000135 2011_09_26 2011_09_26_drive_0095_sync 0000000136 2011_09_26 2011_09_26_drive_0095_sync 0000000137 2011_09_26 2011_09_26_drive_0095_sync 0000000138 2011_09_26 2011_09_26_drive_0095_sync 0000000139 2011_09_26 2011_09_26_drive_0095_sync 0000000140 2011_09_26 2011_09_26_drive_0095_sync 0000000142 2011_09_26 2011_09_26_drive_0095_sync 0000000144 2011_09_26 2011_09_26_drive_0095_sync 0000000146 2011_09_26 2011_09_26_drive_0095_sync 0000000148 2011_09_26 2011_09_26_drive_0095_sync 0000000150 2011_09_26 2011_09_26_drive_0095_sync 0000000152 2011_09_26 2011_09_26_drive_0095_sync 0000000154 2011_09_26 2011_09_26_drive_0095_sync 0000000156 2011_09_26 2011_09_26_drive_0095_sync 0000000158 2011_09_26 2011_09_26_drive_0095_sync 0000000160 2011_09_26 2011_09_26_drive_0095_sync 0000000162 2011_09_26 2011_09_26_drive_0095_sync 0000000164 2011_09_26 2011_09_26_drive_0095_sync 0000000166 2011_09_26 2011_09_26_drive_0095_sync 0000000168 2011_09_26 2011_09_26_drive_0095_sync 0000000170 2011_09_26 2011_09_26_drive_0095_sync 0000000172 2011_09_26 2011_09_26_drive_0095_sync 0000000174 2011_09_26 2011_09_26_drive_0095_sync 0000000176 2011_09_26 2011_09_26_drive_0095_sync 0000000178 2011_09_26 2011_09_26_drive_0095_sync 0000000180 2011_09_26 2011_09_26_drive_0095_sync 0000000182 2011_09_26 2011_09_26_drive_0095_sync 0000000184 2011_09_26 2011_09_26_drive_0095_sync 0000000186 2011_09_26 2011_09_26_drive_0095_sync 0000000188 2011_09_26 2011_09_26_drive_0095_sync 0000000190 2011_09_26 2011_09_26_drive_0095_sync 0000000192 2011_09_26 2011_09_26_drive_0095_sync 0000000194 2011_09_26 2011_09_26_drive_0095_sync 0000000196 2011_09_26 2011_09_26_drive_0095_sync 0000000198 2011_09_26 2011_09_26_drive_0095_sync 0000000200 2011_09_26 2011_09_26_drive_0095_sync 0000000202 2011_09_26 2011_09_26_drive_0095_sync 0000000204 2011_09_26 2011_09_26_drive_0095_sync 0000000206 2011_09_26 2011_09_26_drive_0095_sync 0000000208 2011_09_26 2011_09_26_drive_0095_sync 0000000210 2011_09_26 2011_09_26_drive_0095_sync 0000000212 2011_09_26 2011_09_26_drive_0095_sync 0000000214 2011_09_26 2011_09_26_drive_0095_sync 0000000216 2011_09_26 2011_09_26_drive_0095_sync 0000000218 2011_09_26 2011_09_26_drive_0095_sync 0000000220 2011_09_26 2011_09_26_drive_0095_sync 0000000222 2011_09_26 2011_09_26_drive_0095_sync 0000000224 2011_09_26 2011_09_26_drive_0095_sync 0000000226 2011_09_26 2011_09_26_drive_0095_sync 0000000228 2011_09_26 2011_09_26_drive_0095_sync 0000000244 2011_09_26 2011_09_26_drive_0095_sync 0000000245 2011_09_26 2011_09_26_drive_0095_sync 0000000247 2011_09_26 2011_09_26_drive_0095_sync 0000000248 2011_09_26 2011_09_26_drive_0095_sync 0000000249 2011_09_26 2011_09_26_drive_0095_sync 0000000250 2011_09_26 2011_09_26_drive_0095_sync 0000000251 2011_09_26 2011_09_26_drive_0095_sync 0000000252 2011_09_26 2011_09_26_drive_0095_sync 0000000253 2011_09_26 2011_09_26_drive_0095_sync 0000000254 2011_09_26 2011_09_26_drive_0095_sync 0000000255 2011_09_26 2011_09_26_drive_0095_sync 0000000256 2011_09_26 2011_09_26_drive_0095_sync 0000000257 2011_09_26 2011_09_26_drive_0095_sync 0000000258 2011_09_26 2011_09_26_drive_0095_sync 0000000259 2011_09_26 2011_09_26_drive_0095_sync 0000000260 2011_09_26 2011_09_26_drive_0095_sync 0000000261 2011_09_26 2011_09_26_drive_0095_sync 0000000262 2011_09_26 2011_09_26_drive_0095_sync 0000000263 2011_09_26 2011_09_26_drive_0095_sync 0000000264 2011_09_26 2011_09_26_drive_0095_sync 0000000265 2011_09_26 2011_09_26_drive_0095_sync 0000000266 2011_09_26 2011_09_26_drive_0095_sync 0000000267 2011_09_28 2011_09_28_drive_0038_sync 0000000003 2011_09_28 2011_09_28_drive_0038_sync 0000000006 2011_09_28 2011_09_28_drive_0038_sync 0000000009 2011_09_28 2011_09_28_drive_0038_sync 0000000012 2011_09_28 2011_09_28_drive_0038_sync 0000000015 2011_09_28 2011_09_28_drive_0038_sync 0000000018 2011_09_28 2011_09_28_drive_0038_sync 0000000021 2011_09_28 2011_09_28_drive_0038_sync 0000000024 2011_09_28 2011_09_28_drive_0038_sync 0000000027 2011_09_28 2011_09_28_drive_0038_sync 0000000031 2011_09_28 2011_09_28_drive_0038_sync 0000000034 2011_09_28 2011_09_28_drive_0038_sync 0000000038 2011_09_28 2011_09_28_drive_0038_sync 0000000042 2011_09_28 2011_09_28_drive_0038_sync 0000000046 2011_09_28 2011_09_28_drive_0038_sync 0000000050 2011_09_28 2011_09_28_drive_0038_sync 0000000055 2011_09_28 2011_09_28_drive_0038_sync 0000000060 2011_09_28 2011_09_28_drive_0038_sync 0000000064 2011_09_28 2011_09_28_drive_0038_sync 0000000069 2011_09_28 2011_09_28_drive_0038_sync 0000000075 2011_09_28 2011_09_28_drive_0038_sync 0000000081 2011_09_28 2011_09_28_drive_0038_sync 0000000087 2011_09_28 2011_09_28_drive_0038_sync 0000000092 2011_09_28 2011_09_28_drive_0038_sync 0000000097 2011_09_28 2011_09_28_drive_0038_sync 0000000103 2011_09_28 2011_09_28_drive_0038_sync 0000000108 2011_09_28 2011_09_28_drive_0001_sync 0000000014 2011_09_28 2011_09_28_drive_0001_sync 0000000019 2011_09_28 2011_09_28_drive_0001_sync 0000000022 2011_09_28 2011_09_28_drive_0001_sync 0000000025 2011_09_28 2011_09_28_drive_0001_sync 0000000029 2011_09_28 2011_09_28_drive_0001_sync 0000000033 2011_09_28 2011_09_28_drive_0001_sync 0000000036 2011_09_28 2011_09_28_drive_0001_sync 0000000039 2011_09_28 2011_09_28_drive_0001_sync 0000000041 2011_09_28 2011_09_28_drive_0001_sync 0000000043 2011_09_28 2011_09_28_drive_0001_sync 0000000045 2011_09_28 2011_09_28_drive_0001_sync 0000000047 2011_09_28 2011_09_28_drive_0001_sync 0000000049 2011_09_28 2011_09_28_drive_0001_sync 0000000051 2011_09_28 2011_09_28_drive_0001_sync 0000000052 2011_09_28 2011_09_28_drive_0001_sync 0000000053 2011_09_28 2011_09_28_drive_0001_sync 0000000054 2011_09_28 2011_09_28_drive_0001_sync 0000000055 2011_09_28 2011_09_28_drive_0001_sync 0000000056 2011_09_28 2011_09_28_drive_0001_sync 0000000057 2011_09_28 2011_09_28_drive_0001_sync 0000000058 2011_09_28 2011_09_28_drive_0001_sync 0000000059 2011_09_28 2011_09_28_drive_0001_sync 0000000060 2011_09_28 2011_09_28_drive_0001_sync 0000000061 2011_09_28 2011_09_28_drive_0001_sync 0000000062 2011_09_28 2011_09_28_drive_0001_sync 0000000063 2011_09_28 2011_09_28_drive_0001_sync 0000000064 2011_09_28 2011_09_28_drive_0001_sync 0000000065 2011_09_28 2011_09_28_drive_0001_sync 0000000066 2011_09_28 2011_09_28_drive_0001_sync 0000000067 2011_09_28 2011_09_28_drive_0001_sync 0000000068 2011_09_28 2011_09_28_drive_0001_sync 0000000069 2011_09_28 2011_09_28_drive_0001_sync 0000000070 2011_09_28 2011_09_28_drive_0001_sync 0000000071 2011_09_28 2011_09_28_drive_0001_sync 0000000073 2011_09_28 2011_09_28_drive_0001_sync 0000000075 2011_09_28 2011_09_28_drive_0001_sync 0000000077 2011_09_28 2011_09_28_drive_0001_sync 0000000078 2011_09_28 2011_09_28_drive_0001_sync 0000000079 2011_09_28 2011_09_28_drive_0001_sync 0000000080 2011_09_28 2011_09_28_drive_0001_sync 0000000081 2011_09_28 2011_09_28_drive_0001_sync 0000000082 2011_09_28 2011_09_28_drive_0001_sync 0000000083 2011_09_28 2011_09_28_drive_0001_sync 0000000084 2011_09_28 2011_09_28_drive_0001_sync 0000000085 2011_09_28 2011_09_28_drive_0001_sync 0000000086 2011_09_28 2011_09_28_drive_0001_sync 0000000087 2011_09_28 2011_09_28_drive_0001_sync 0000000088 2011_09_28 2011_09_28_drive_0001_sync 0000000089 2011_09_28 2011_09_28_drive_0001_sync 0000000090 2011_09_28 2011_09_28_drive_0001_sync 0000000091 2011_09_28 2011_09_28_drive_0001_sync 0000000092 2011_09_28 2011_09_28_drive_0001_sync 0000000093 2011_09_28 2011_09_28_drive_0001_sync 0000000094 2011_09_28 2011_09_28_drive_0001_sync 0000000095 2011_09_28 2011_09_28_drive_0001_sync 0000000096 2011_09_28 2011_09_28_drive_0001_sync 0000000097 2011_09_28 2011_09_28_drive_0001_sync 0000000098 2011_09_28 2011_09_28_drive_0001_sync 0000000099 2011_09_28 2011_09_28_drive_0001_sync 0000000100 2011_09_28 2011_09_28_drive_0001_sync 0000000101 2011_09_28 2011_09_28_drive_0001_sync 0000000102 2011_09_28 2011_09_28_drive_0001_sync 0000000103 2011_09_28 2011_09_28_drive_0001_sync 0000000104 2011_09_28 2011_09_28_drive_0001_sync 0000000105 2011_09_26 2011_09_26_drive_0096_sync 0000000014 2011_09_26 2011_09_26_drive_0096_sync 0000000015 2011_09_26 2011_09_26_drive_0096_sync 0000000016 2011_09_26 2011_09_26_drive_0096_sync 0000000017 2011_09_26 2011_09_26_drive_0096_sync 0000000018 2011_09_26 2011_09_26_drive_0096_sync 0000000019 2011_09_26 2011_09_26_drive_0096_sync 0000000020 2011_09_26 2011_09_26_drive_0096_sync 0000000021 2011_09_26 2011_09_26_drive_0096_sync 0000000022 2011_09_26 2011_09_26_drive_0096_sync 0000000023 2011_09_26 2011_09_26_drive_0096_sync 0000000024 2011_09_26 2011_09_26_drive_0096_sync 0000000025 2011_09_26 2011_09_26_drive_0096_sync 0000000098 2011_09_26 2011_09_26_drive_0096_sync 0000000100 2011_09_26 2011_09_26_drive_0096_sync 0000000102 2011_09_26 2011_09_26_drive_0096_sync 0000000104 2011_09_26 2011_09_26_drive_0096_sync 0000000106 2011_09_26 2011_09_26_drive_0096_sync 0000000108 2011_09_26 2011_09_26_drive_0096_sync 0000000109 2011_09_26 2011_09_26_drive_0096_sync 0000000110 2011_09_26 2011_09_26_drive_0096_sync 0000000111 2011_09_26 2011_09_26_drive_0096_sync 0000000112 2011_09_26 2011_09_26_drive_0096_sync 0000000113 2011_09_26 2011_09_26_drive_0096_sync 0000000114 2011_09_26 2011_09_26_drive_0096_sync 0000000115 2011_09_26 2011_09_26_drive_0096_sync 0000000116 2011_09_26 2011_09_26_drive_0096_sync 0000000117 2011_09_26 2011_09_26_drive_0096_sync 0000000118 2011_09_26 2011_09_26_drive_0096_sync 0000000119 2011_09_26 2011_09_26_drive_0096_sync 0000000120 2011_09_26 2011_09_26_drive_0096_sync 0000000121 2011_09_26 2011_09_26_drive_0096_sync 0000000122 2011_09_26 2011_09_26_drive_0096_sync 0000000123 2011_09_26 2011_09_26_drive_0096_sync 0000000124 2011_09_26 2011_09_26_drive_0096_sync 0000000125 2011_09_26 2011_09_26_drive_0096_sync 0000000126 2011_09_26 2011_09_26_drive_0096_sync 0000000127 2011_09_26 2011_09_26_drive_0096_sync 0000000128 2011_09_26 2011_09_26_drive_0096_sync 0000000129 2011_09_26 2011_09_26_drive_0096_sync 0000000130 2011_09_26 2011_09_26_drive_0096_sync 0000000131 2011_09_26 2011_09_26_drive_0096_sync 0000000132 2011_09_26 2011_09_26_drive_0096_sync 0000000133 2011_09_26 2011_09_26_drive_0096_sync 0000000134 2011_09_26 2011_09_26_drive_0096_sync 0000000135 2011_09_26 2011_09_26_drive_0096_sync 0000000136 2011_09_26 2011_09_26_drive_0096_sync 0000000137 2011_09_26 2011_09_26_drive_0096_sync 0000000138 2011_09_26 2011_09_26_drive_0096_sync 0000000139 2011_09_26 2011_09_26_drive_0096_sync 0000000140 2011_09_26 2011_09_26_drive_0096_sync 0000000141 2011_09_26 2011_09_26_drive_0096_sync 0000000142 2011_09_26 2011_09_26_drive_0096_sync 0000000143 2011_09_26 2011_09_26_drive_0096_sync 0000000144 2011_09_26 2011_09_26_drive_0096_sync 0000000145 2011_09_26 2011_09_26_drive_0096_sync 0000000146 2011_09_26 2011_09_26_drive_0096_sync 0000000147 2011_09_26 2011_09_26_drive_0096_sync 0000000148 2011_09_26 2011_09_26_drive_0096_sync 0000000149 2011_09_26 2011_09_26_drive_0096_sync 0000000150 2011_09_26 2011_09_26_drive_0096_sync 0000000151 2011_09_26 2011_09_26_drive_0096_sync 0000000152 2011_09_26 2011_09_26_drive_0096_sync 0000000153 2011_09_26 2011_09_26_drive_0096_sync 0000000154 2011_09_26 2011_09_26_drive_0096_sync 0000000155 2011_09_26 2011_09_26_drive_0096_sync 0000000156 2011_09_26 2011_09_26_drive_0096_sync 0000000157 2011_09_26 2011_09_26_drive_0096_sync 0000000158 2011_09_26 2011_09_26_drive_0096_sync 0000000159 2011_09_26 2011_09_26_drive_0096_sync 0000000160 2011_09_26 2011_09_26_drive_0096_sync 0000000161 2011_09_26 2011_09_26_drive_0096_sync 0000000163 2011_09_26 2011_09_26_drive_0096_sync 0000000164 2011_09_26 2011_09_26_drive_0096_sync 0000000165 2011_09_26 2011_09_26_drive_0096_sync 0000000166 2011_09_26 2011_09_26_drive_0096_sync 0000000167 2011_09_26 2011_09_26_drive_0096_sync 0000000168 2011_09_26 2011_09_26_drive_0096_sync 0000000170 2011_09_26 2011_09_26_drive_0096_sync 0000000171 2011_09_26 2011_09_26_drive_0096_sync 0000000172 2011_09_26 2011_09_26_drive_0096_sync 0000000173 2011_09_26 2011_09_26_drive_0096_sync 0000000174 2011_09_26 2011_09_26_drive_0096_sync 0000000175 2011_09_26 2011_09_26_drive_0096_sync 0000000176 2011_09_26 2011_09_26_drive_0096_sync 0000000177 2011_09_26 2011_09_26_drive_0096_sync 0000000178 2011_09_26 2011_09_26_drive_0096_sync 0000000179 2011_09_26 2011_09_26_drive_0096_sync 0000000180 2011_09_26 2011_09_26_drive_0096_sync 0000000181 2011_09_26 2011_09_26_drive_0096_sync 0000000182 2011_09_26 2011_09_26_drive_0096_sync 0000000183 2011_09_26 2011_09_26_drive_0096_sync 0000000184 2011_09_26 2011_09_26_drive_0096_sync 0000000185 2011_09_26 2011_09_26_drive_0096_sync 0000000186 2011_09_26 2011_09_26_drive_0096_sync 0000000187 2011_09_26 2011_09_26_drive_0096_sync 0000000188 2011_09_26 2011_09_26_drive_0096_sync 0000000189 2011_09_26 2011_09_26_drive_0096_sync 0000000190 2011_09_26 2011_09_26_drive_0096_sync 0000000191 2011_09_26 2011_09_26_drive_0096_sync 0000000192 2011_09_26 2011_09_26_drive_0096_sync 0000000193 2011_09_26 2011_09_26_drive_0096_sync 0000000194 2011_09_26 2011_09_26_drive_0096_sync 0000000195 2011_09_26 2011_09_26_drive_0096_sync 0000000196 2011_09_26 2011_09_26_drive_0096_sync 0000000197 2011_09_26 2011_09_26_drive_0096_sync 0000000198 2011_09_26 2011_09_26_drive_0096_sync 0000000199 2011_09_26 2011_09_26_drive_0096_sync 0000000200 2011_09_26 2011_09_26_drive_0096_sync 0000000201 2011_09_26 2011_09_26_drive_0096_sync 0000000202 2011_09_26 2011_09_26_drive_0096_sync 0000000203 2011_09_26 2011_09_26_drive_0096_sync 0000000204 2011_09_26 2011_09_26_drive_0096_sync 0000000205 2011_09_26 2011_09_26_drive_0096_sync 0000000206 2011_09_26 2011_09_26_drive_0096_sync 0000000207 2011_09_26 2011_09_26_drive_0096_sync 0000000208 2011_09_26 2011_09_26_drive_0096_sync 0000000209 2011_09_26 2011_09_26_drive_0096_sync 0000000210 2011_09_26 2011_09_26_drive_0096_sync 0000000211 2011_09_26 2011_09_26_drive_0096_sync 0000000212 2011_09_26 2011_09_26_drive_0096_sync 0000000213 2011_09_26 2011_09_26_drive_0096_sync 0000000214 2011_09_26 2011_09_26_drive_0096_sync 0000000215 2011_09_26 2011_09_26_drive_0096_sync 0000000216 2011_09_26 2011_09_26_drive_0096_sync 0000000217 2011_09_26 2011_09_26_drive_0096_sync 0000000218 2011_09_26 2011_09_26_drive_0096_sync 0000000219 2011_09_26 2011_09_26_drive_0096_sync 0000000221 2011_09_26 2011_09_26_drive_0096_sync 0000000222 2011_09_26 2011_09_26_drive_0096_sync 0000000223 2011_09_26 2011_09_26_drive_0096_sync 0000000224 2011_09_26 2011_09_26_drive_0096_sync 0000000225 2011_09_26 2011_09_26_drive_0096_sync 0000000227 2011_09_26 2011_09_26_drive_0096_sync 0000000228 2011_09_26 2011_09_26_drive_0096_sync 0000000229 2011_09_26 2011_09_26_drive_0096_sync 0000000230 2011_09_26 2011_09_26_drive_0096_sync 0000000260 2011_09_26 2011_09_26_drive_0096_sync 0000000261 2011_09_26 2011_09_26_drive_0096_sync 0000000262 2011_09_26 2011_09_26_drive_0096_sync 0000000263 2011_09_26 2011_09_26_drive_0096_sync 0000000264 2011_09_26 2011_09_26_drive_0096_sync 0000000265 2011_09_26 2011_09_26_drive_0096_sync 0000000266 2011_09_26 2011_09_26_drive_0096_sync 0000000267 2011_09_26 2011_09_26_drive_0096_sync 0000000268 2011_09_26 2011_09_26_drive_0096_sync 0000000269 2011_09_26 2011_09_26_drive_0096_sync 0000000270 2011_09_26 2011_09_26_drive_0096_sync 0000000271 2011_09_26 2011_09_26_drive_0096_sync 0000000272 2011_09_26 2011_09_26_drive_0096_sync 0000000273 2011_09_26 2011_09_26_drive_0096_sync 0000000274 2011_09_26 2011_09_26_drive_0096_sync 0000000275 2011_09_26 2011_09_26_drive_0096_sync 0000000276 2011_09_26 2011_09_26_drive_0096_sync 0000000277 2011_09_26 2011_09_26_drive_0096_sync 0000000278 2011_09_26 2011_09_26_drive_0096_sync 0000000279 2011_09_26 2011_09_26_drive_0096_sync 0000000280 2011_09_26 2011_09_26_drive_0096_sync 0000000281 2011_09_26 2011_09_26_drive_0096_sync 0000000282 2011_09_26 2011_09_26_drive_0096_sync 0000000283 2011_09_26 2011_09_26_drive_0096_sync 0000000284 2011_09_26 2011_09_26_drive_0096_sync 0000000285 2011_09_26 2011_09_26_drive_0096_sync 0000000286 2011_09_26 2011_09_26_drive_0096_sync 0000000287 2011_09_26 2011_09_26_drive_0096_sync 0000000288 2011_09_26 2011_09_26_drive_0096_sync 0000000289 2011_09_26 2011_09_26_drive_0096_sync 0000000290 2011_09_26 2011_09_26_drive_0096_sync 0000000291 2011_09_26 2011_09_26_drive_0096_sync 0000000292 2011_09_26 2011_09_26_drive_0096_sync 0000000293 2011_09_26 2011_09_26_drive_0096_sync 0000000294 2011_09_26 2011_09_26_drive_0096_sync 0000000295 2011_09_26 2011_09_26_drive_0096_sync 0000000296 2011_09_26 2011_09_26_drive_0096_sync 0000000297 2011_09_26 2011_09_26_drive_0096_sync 0000000298 2011_09_26 2011_09_26_drive_0096_sync 0000000299 2011_09_26 2011_09_26_drive_0096_sync 0000000300 2011_09_26 2011_09_26_drive_0096_sync 0000000301 2011_09_26 2011_09_26_drive_0096_sync 0000000302 2011_09_26 2011_09_26_drive_0096_sync 0000000303 2011_09_26 2011_09_26_drive_0096_sync 0000000304 2011_09_26 2011_09_26_drive_0096_sync 0000000305 2011_09_26 2011_09_26_drive_0096_sync 0000000306 2011_09_26 2011_09_26_drive_0096_sync 0000000307 2011_09_26 2011_09_26_drive_0096_sync 0000000308 2011_09_26 2011_09_26_drive_0096_sync 0000000309 2011_09_26 2011_09_26_drive_0096_sync 0000000310 2011_09_26 2011_09_26_drive_0096_sync 0000000311 2011_09_26 2011_09_26_drive_0096_sync 0000000312 2011_09_26 2011_09_26_drive_0096_sync 0000000314 2011_09_26 2011_09_26_drive_0096_sync 0000000315 2011_09_26 2011_09_26_drive_0096_sync 0000000316 2011_09_26 2011_09_26_drive_0096_sync 0000000317 2011_09_26 2011_09_26_drive_0096_sync 0000000318 2011_09_26 2011_09_26_drive_0096_sync 0000000319 2011_09_26 2011_09_26_drive_0096_sync 0000000320 2011_09_26 2011_09_26_drive_0096_sync 0000000321 2011_09_26 2011_09_26_drive_0096_sync 0000000322 2011_09_26 2011_09_26_drive_0096_sync 0000000326 2011_09_26 2011_09_26_drive_0096_sync 0000000327 2011_09_26 2011_09_26_drive_0096_sync 0000000345 2011_09_26 2011_09_26_drive_0096_sync 0000000346 2011_09_26 2011_09_26_drive_0096_sync 0000000347 2011_09_26 2011_09_26_drive_0096_sync 0000000348 2011_09_26 2011_09_26_drive_0096_sync 0000000349 2011_09_26 2011_09_26_drive_0096_sync 0000000350 2011_09_26 2011_09_26_drive_0096_sync 0000000351 2011_09_26 2011_09_26_drive_0096_sync 0000000352 2011_09_26 2011_09_26_drive_0096_sync 0000000353 2011_09_26 2011_09_26_drive_0096_sync 0000000354 2011_09_26 2011_09_26_drive_0096_sync 0000000355 2011_09_26 2011_09_26_drive_0096_sync 0000000356 2011_09_26 2011_09_26_drive_0096_sync 0000000358 2011_09_26 2011_09_26_drive_0096_sync 0000000359 2011_09_26 2011_09_26_drive_0096_sync 0000000362 2011_09_26 2011_09_26_drive_0096_sync 0000000364 2011_09_26 2011_09_26_drive_0096_sync 0000000366 2011_09_26 2011_09_26_drive_0096_sync 0000000367 2011_09_26 2011_09_26_drive_0096_sync 0000000372 2011_09_26 2011_09_26_drive_0096_sync 0000000375 2011_09_26 2011_09_26_drive_0096_sync 0000000376 2011_09_26 2011_09_26_drive_0096_sync 0000000377 2011_09_26 2011_09_26_drive_0096_sync 0000000378 2011_09_26 2011_09_26_drive_0096_sync 0000000379 2011_09_26 2011_09_26_drive_0096_sync 0000000380 2011_09_26 2011_09_26_drive_0096_sync 0000000381 2011_09_26 2011_09_26_drive_0096_sync 0000000382 2011_09_26 2011_09_26_drive_0096_sync 0000000383 2011_09_26 2011_09_26_drive_0096_sync 0000000384 2011_09_26 2011_09_26_drive_0096_sync 0000000385 2011_09_26 2011_09_26_drive_0096_sync 0000000386 2011_09_26 2011_09_26_drive_0096_sync 0000000387 2011_09_26 2011_09_26_drive_0096_sync 0000000388 2011_09_26 2011_09_26_drive_0096_sync 0000000390 2011_09_26 2011_09_26_drive_0096_sync 0000000392 2011_09_26 2011_09_26_drive_0096_sync 0000000394 2011_09_26 2011_09_26_drive_0096_sync 0000000396 2011_09_26 2011_09_26_drive_0096_sync 0000000398 2011_09_26 2011_09_26_drive_0096_sync 0000000400 2011_09_26 2011_09_26_drive_0096_sync 0000000417 2011_09_26 2011_09_26_drive_0096_sync 0000000420 2011_09_26 2011_09_26_drive_0096_sync 0000000423 2011_09_26 2011_09_26_drive_0096_sync 0000000426 2011_09_28 2011_09_28_drive_0037_sync 0000000029 2011_09_28 2011_09_28_drive_0037_sync 0000000035 2011_09_28 2011_09_28_drive_0037_sync 0000000046 2011_09_28 2011_09_28_drive_0037_sync 0000000048 2011_09_28 2011_09_28_drive_0037_sync 0000000050 2011_09_28 2011_09_28_drive_0037_sync 0000000052 2011_09_28 2011_09_28_drive_0037_sync 0000000054 2011_09_28 2011_09_28_drive_0037_sync 0000000056 2011_09_28 2011_09_28_drive_0037_sync 0000000058 2011_09_28 2011_09_28_drive_0037_sync 0000000060 2011_09_28 2011_09_28_drive_0037_sync 0000000062 2011_09_28 2011_09_28_drive_0037_sync 0000000064 2011_09_28 2011_09_28_drive_0037_sync 0000000068 2011_09_28 2011_09_28_drive_0037_sync 0000000070 2011_09_28 2011_09_28_drive_0037_sync 0000000072 2011_09_28 2011_09_28_drive_0037_sync 0000000074 2011_09_28 2011_09_28_drive_0037_sync 0000000076 2011_09_28 2011_09_28_drive_0037_sync 0000000078 2011_09_28 2011_09_28_drive_0037_sync 0000000080 2011_09_28 2011_09_28_drive_0037_sync 0000000083 2011_09_28 2011_09_28_drive_0037_sync 0000000086 2011_09_26 2011_09_26_drive_0022_sync 0000000002 2011_09_26 2011_09_26_drive_0022_sync 0000000004 2011_09_26 2011_09_26_drive_0022_sync 0000000036 2011_09_26 2011_09_26_drive_0022_sync 0000000037 2011_09_26 2011_09_26_drive_0022_sync 0000000040 2011_09_26 2011_09_26_drive_0022_sync 0000000041 2011_09_26 2011_09_26_drive_0022_sync 0000000042 2011_09_26 2011_09_26_drive_0022_sync 0000000044 2011_09_26 2011_09_26_drive_0022_sync 0000000046 2011_09_26 2011_09_26_drive_0022_sync 0000000048 2011_09_26 2011_09_26_drive_0022_sync 0000000050 2011_09_26 2011_09_26_drive_0022_sync 0000000051 2011_09_26 2011_09_26_drive_0022_sync 0000000053 2011_09_26 2011_09_26_drive_0022_sync 0000000055 2011_09_26 2011_09_26_drive_0022_sync 0000000057 2011_09_26 2011_09_26_drive_0022_sync 0000000059 2011_09_26 2011_09_26_drive_0022_sync 0000000061 2011_09_26 2011_09_26_drive_0022_sync 0000000063 2011_09_26 2011_09_26_drive_0022_sync 0000000065 2011_09_26 2011_09_26_drive_0022_sync 0000000067 2011_09_26 2011_09_26_drive_0022_sync 0000000069 2011_09_26 2011_09_26_drive_0022_sync 0000000071 2011_09_26 2011_09_26_drive_0022_sync 0000000073 2011_09_26 2011_09_26_drive_0022_sync 0000000075 2011_09_26 2011_09_26_drive_0022_sync 0000000077 2011_09_26 2011_09_26_drive_0022_sync 0000000079 2011_09_26 2011_09_26_drive_0022_sync 0000000081 2011_09_26 2011_09_26_drive_0022_sync 0000000083 2011_09_26 2011_09_26_drive_0022_sync 0000000085 2011_09_26 2011_09_26_drive_0022_sync 0000000087 2011_09_26 2011_09_26_drive_0022_sync 0000000089 2011_09_26 2011_09_26_drive_0022_sync 0000000091 2011_09_26 2011_09_26_drive_0022_sync 0000000093 2011_09_26 2011_09_26_drive_0022_sync 0000000095 2011_09_26 2011_09_26_drive_0022_sync 0000000097 2011_09_26 2011_09_26_drive_0022_sync 0000000099 2011_09_26 2011_09_26_drive_0022_sync 0000000101 2011_09_26 2011_09_26_drive_0022_sync 0000000103 2011_09_26 2011_09_26_drive_0022_sync 0000000105 2011_09_26 2011_09_26_drive_0022_sync 0000000107 2011_09_26 2011_09_26_drive_0022_sync 0000000109 2011_09_26 2011_09_26_drive_0022_sync 0000000111 2011_09_26 2011_09_26_drive_0022_sync 0000000113 2011_09_26 2011_09_26_drive_0022_sync 0000000115 2011_09_26 2011_09_26_drive_0022_sync 0000000117 2011_09_26 2011_09_26_drive_0022_sync 0000000119 2011_09_26 2011_09_26_drive_0022_sync 0000000121 2011_09_26 2011_09_26_drive_0022_sync 0000000123 2011_09_26 2011_09_26_drive_0022_sync 0000000125 2011_09_26 2011_09_26_drive_0022_sync 0000000127 2011_09_26 2011_09_26_drive_0022_sync 0000000129 2011_09_26 2011_09_26_drive_0022_sync 0000000131 2011_09_26 2011_09_26_drive_0022_sync 0000000133 2011_09_26 2011_09_26_drive_0022_sync 0000000135 2011_09_26 2011_09_26_drive_0022_sync 0000000137 2011_09_26 2011_09_26_drive_0022_sync 0000000139 2011_09_26 2011_09_26_drive_0022_sync 0000000141 2011_09_26 2011_09_26_drive_0022_sync 0000000143 2011_09_26 2011_09_26_drive_0022_sync 0000000145 2011_09_26 2011_09_26_drive_0022_sync 0000000147 2011_09_26 2011_09_26_drive_0022_sync 0000000149 2011_09_26 2011_09_26_drive_0022_sync 0000000151 2011_09_26 2011_09_26_drive_0022_sync 0000000153 2011_09_26 2011_09_26_drive_0022_sync 0000000155 2011_09_26 2011_09_26_drive_0022_sync 0000000157 2011_09_26 2011_09_26_drive_0022_sync 0000000159 2011_09_26 2011_09_26_drive_0022_sync 0000000161 2011_09_26 2011_09_26_drive_0022_sync 0000000163 2011_09_26 2011_09_26_drive_0022_sync 0000000165 2011_09_26 2011_09_26_drive_0022_sync 0000000167 2011_09_26 2011_09_26_drive_0022_sync 0000000169 2011_09_26 2011_09_26_drive_0022_sync 0000000171 2011_09_26 2011_09_26_drive_0022_sync 0000000173 2011_09_26 2011_09_26_drive_0022_sync 0000000175 2011_09_26 2011_09_26_drive_0022_sync 0000000177 2011_09_26 2011_09_26_drive_0022_sync 0000000179 2011_09_26 2011_09_26_drive_0022_sync 0000000181 2011_09_26 2011_09_26_drive_0022_sync 0000000183 2011_09_26 2011_09_26_drive_0022_sync 0000000185 2011_09_26 2011_09_26_drive_0022_sync 0000000187 2011_09_26 2011_09_26_drive_0022_sync 0000000189 2011_09_26 2011_09_26_drive_0022_sync 0000000191 2011_09_26 2011_09_26_drive_0022_sync 0000000193 2011_09_26 2011_09_26_drive_0022_sync 0000000195 2011_09_26 2011_09_26_drive_0022_sync 0000000197 2011_09_26 2011_09_26_drive_0022_sync 0000000199 2011_09_26 2011_09_26_drive_0022_sync 0000000201 2011_09_26 2011_09_26_drive_0022_sync 0000000203 2011_09_26 2011_09_26_drive_0022_sync 0000000205 2011_09_26 2011_09_26_drive_0022_sync 0000000207 2011_09_26 2011_09_26_drive_0022_sync 0000000209 2011_09_26 2011_09_26_drive_0022_sync 0000000211 2011_09_26 2011_09_26_drive_0022_sync 0000000213 2011_09_26 2011_09_26_drive_0022_sync 0000000215 2011_09_26 2011_09_26_drive_0022_sync 0000000217 2011_09_26 2011_09_26_drive_0022_sync 0000000219 2011_09_26 2011_09_26_drive_0022_sync 0000000221 2011_09_26 2011_09_26_drive_0022_sync 0000000223 2011_09_26 2011_09_26_drive_0022_sync 0000000225 2011_09_26 2011_09_26_drive_0022_sync 0000000227 2011_09_26 2011_09_26_drive_0022_sync 0000000229 2011_09_26 2011_09_26_drive_0022_sync 0000000231 2011_09_26 2011_09_26_drive_0022_sync 0000000233 2011_09_26 2011_09_26_drive_0022_sync 0000000235 2011_09_26 2011_09_26_drive_0022_sync 0000000237 2011_09_26 2011_09_26_drive_0022_sync 0000000243 2011_09_26 2011_09_26_drive_0022_sync 0000000266 2011_09_26 2011_09_26_drive_0022_sync 0000000269 2011_09_26 2011_09_26_drive_0022_sync 0000000271 2011_09_26 2011_09_26_drive_0022_sync 0000000274 2011_09_26 2011_09_26_drive_0022_sync 0000000276 2011_09_26 2011_09_26_drive_0022_sync 0000000278 2011_09_26 2011_09_26_drive_0022_sync 0000000280 2011_09_26 2011_09_26_drive_0022_sync 0000000282 2011_09_26 2011_09_26_drive_0022_sync 0000000284 2011_09_26 2011_09_26_drive_0022_sync 0000000286 2011_09_26 2011_09_26_drive_0022_sync 0000000288 2011_09_26 2011_09_26_drive_0022_sync 0000000290 2011_09_26 2011_09_26_drive_0022_sync 0000000292 2011_09_26 2011_09_26_drive_0022_sync 0000000294 2011_09_26 2011_09_26_drive_0022_sync 0000000296 2011_09_26 2011_09_26_drive_0022_sync 0000000298 2011_09_26 2011_09_26_drive_0022_sync 0000000300 2011_09_26 2011_09_26_drive_0022_sync 0000000302 2011_09_26 2011_09_26_drive_0022_sync 0000000304 2011_09_26 2011_09_26_drive_0022_sync 0000000306 2011_09_26 2011_09_26_drive_0022_sync 0000000308 2011_09_26 2011_09_26_drive_0022_sync 0000000310 2011_09_26 2011_09_26_drive_0022_sync 0000000312 2011_09_26 2011_09_26_drive_0022_sync 0000000339 2011_09_26 2011_09_26_drive_0022_sync 0000000341 2011_09_26 2011_09_26_drive_0022_sync 0000000343 2011_09_26 2011_09_26_drive_0022_sync 0000000344 2011_09_26 2011_09_26_drive_0022_sync 0000000346 2011_09_26 2011_09_26_drive_0022_sync 0000000347 2011_09_26 2011_09_26_drive_0022_sync 0000000348 2011_09_26 2011_09_26_drive_0022_sync 0000000350 2011_09_26 2011_09_26_drive_0022_sync 0000000352 2011_09_26 2011_09_26_drive_0022_sync 0000000353 2011_09_26 2011_09_26_drive_0022_sync 0000000354 2011_09_26 2011_09_26_drive_0022_sync 0000000355 2011_09_26 2011_09_26_drive_0022_sync 0000000356 2011_09_26 2011_09_26_drive_0022_sync 0000000357 2011_09_26 2011_09_26_drive_0022_sync 0000000359 2011_09_26 2011_09_26_drive_0022_sync 0000000361 2011_09_26 2011_09_26_drive_0022_sync 0000000363 2011_09_26 2011_09_26_drive_0022_sync 0000000365 2011_09_26 2011_09_26_drive_0022_sync 0000000367 2011_09_26 2011_09_26_drive_0022_sync 0000000369 2011_09_26 2011_09_26_drive_0022_sync 0000000371 2011_09_26 2011_09_26_drive_0022_sync 0000000373 2011_09_26 2011_09_26_drive_0022_sync 0000000375 2011_09_26 2011_09_26_drive_0022_sync 0000000377 2011_09_26 2011_09_26_drive_0022_sync 0000000379 2011_09_26 2011_09_26_drive_0022_sync 0000000381 2011_09_26 2011_09_26_drive_0022_sync 0000000383 2011_09_26 2011_09_26_drive_0022_sync 0000000385 2011_09_26 2011_09_26_drive_0022_sync 0000000387 2011_09_26 2011_09_26_drive_0022_sync 0000000389 2011_09_26 2011_09_26_drive_0022_sync 0000000391 2011_09_26 2011_09_26_drive_0022_sync 0000000393 2011_09_26 2011_09_26_drive_0022_sync 0000000395 2011_09_26 2011_09_26_drive_0022_sync 0000000397 2011_09_26 2011_09_26_drive_0022_sync 0000000399 2011_09_26 2011_09_26_drive_0022_sync 0000000401 2011_09_26 2011_09_26_drive_0022_sync 0000000403 2011_09_26 2011_09_26_drive_0022_sync 0000000405 2011_09_26 2011_09_26_drive_0022_sync 0000000407 2011_09_26 2011_09_26_drive_0022_sync 0000000409 2011_09_26 2011_09_26_drive_0022_sync 0000000411 2011_09_26 2011_09_26_drive_0022_sync 0000000413 2011_09_26 2011_09_26_drive_0022_sync 0000000415 2011_09_26 2011_09_26_drive_0022_sync 0000000417 2011_09_26 2011_09_26_drive_0022_sync 0000000419 2011_09_26 2011_09_26_drive_0022_sync 0000000421 2011_09_26 2011_09_26_drive_0022_sync 0000000423 2011_09_26 2011_09_26_drive_0022_sync 0000000425 2011_09_26 2011_09_26_drive_0022_sync 0000000427 2011_09_26 2011_09_26_drive_0022_sync 0000000429 2011_09_26 2011_09_26_drive_0022_sync 0000000431 2011_09_26 2011_09_26_drive_0022_sync 0000000433 2011_09_26 2011_09_26_drive_0022_sync 0000000435 2011_09_26 2011_09_26_drive_0022_sync 0000000437 2011_09_26 2011_09_26_drive_0022_sync 0000000439 2011_09_26 2011_09_26_drive_0022_sync 0000000441 2011_09_26 2011_09_26_drive_0022_sync 0000000443 2011_09_26 2011_09_26_drive_0022_sync 0000000445 2011_09_26 2011_09_26_drive_0022_sync 0000000447 2011_09_26 2011_09_26_drive_0022_sync 0000000449 2011_09_26 2011_09_26_drive_0022_sync 0000000451 2011_09_26 2011_09_26_drive_0022_sync 0000000453 2011_09_26 2011_09_26_drive_0022_sync 0000000455 2011_09_26 2011_09_26_drive_0022_sync 0000000457 2011_09_26 2011_09_26_drive_0022_sync 0000000459 2011_09_26 2011_09_26_drive_0022_sync 0000000461 2011_09_26 2011_09_26_drive_0022_sync 0000000463 2011_09_26 2011_09_26_drive_0022_sync 0000000465 2011_09_26 2011_09_26_drive_0022_sync 0000000467 2011_09_26 2011_09_26_drive_0022_sync 0000000469 2011_09_26 2011_09_26_drive_0022_sync 0000000471 2011_09_26 2011_09_26_drive_0022_sync 0000000473 2011_09_26 2011_09_26_drive_0022_sync 0000000475 2011_09_26 2011_09_26_drive_0022_sync 0000000477 2011_09_26 2011_09_26_drive_0022_sync 0000000479 2011_09_26 2011_09_26_drive_0022_sync 0000000481 2011_09_26 2011_09_26_drive_0022_sync 0000000483 2011_09_26 2011_09_26_drive_0022_sync 0000000485 2011_09_26 2011_09_26_drive_0022_sync 0000000487 2011_09_26 2011_09_26_drive_0022_sync 0000000489 2011_09_26 2011_09_26_drive_0022_sync 0000000491 2011_09_26 2011_09_26_drive_0022_sync 0000000493 2011_09_26 2011_09_26_drive_0022_sync 0000000495 2011_09_26 2011_09_26_drive_0022_sync 0000000497 2011_09_26 2011_09_26_drive_0022_sync 0000000499 2011_09_26 2011_09_26_drive_0022_sync 0000000501 2011_09_26 2011_09_26_drive_0022_sync 0000000503 2011_09_26 2011_09_26_drive_0022_sync 0000000505 2011_09_26 2011_09_26_drive_0022_sync 0000000507 2011_09_26 2011_09_26_drive_0022_sync 0000000509 2011_09_26 2011_09_26_drive_0022_sync 0000000511 2011_09_26 2011_09_26_drive_0022_sync 0000000513 2011_09_26 2011_09_26_drive_0022_sync 0000000515 2011_09_26 2011_09_26_drive_0022_sync 0000000517 2011_09_26 2011_09_26_drive_0022_sync 0000000519 2011_09_26 2011_09_26_drive_0022_sync 0000000521 2011_09_26 2011_09_26_drive_0022_sync 0000000527 2011_09_26 2011_09_26_drive_0022_sync 0000000529 2011_09_26 2011_09_26_drive_0022_sync 0000000531 2011_09_26 2011_09_26_drive_0022_sync 0000000533 2011_09_26 2011_09_26_drive_0022_sync 0000000535 2011_09_26 2011_09_26_drive_0022_sync 0000000537 2011_09_26 2011_09_26_drive_0022_sync 0000000539 2011_09_26 2011_09_26_drive_0022_sync 0000000541 2011_09_26 2011_09_26_drive_0022_sync 0000000543 2011_09_26 2011_09_26_drive_0022_sync 0000000545 2011_09_26 2011_09_26_drive_0022_sync 0000000547 2011_09_26 2011_09_26_drive_0022_sync 0000000549 2011_09_26 2011_09_26_drive_0022_sync 0000000608 2011_09_26 2011_09_26_drive_0022_sync 0000000609 2011_09_26 2011_09_26_drive_0022_sync 0000000610 2011_09_26 2011_09_26_drive_0022_sync 0000000611 2011_09_26 2011_09_26_drive_0022_sync 0000000612 2011_09_26 2011_09_26_drive_0022_sync 0000000613 2011_09_26 2011_09_26_drive_0022_sync 0000000614 2011_09_26 2011_09_26_drive_0022_sync 0000000615 2011_09_26 2011_09_26_drive_0022_sync 0000000616 2011_09_26 2011_09_26_drive_0022_sync 0000000617 2011_09_26 2011_09_26_drive_0022_sync 0000000618 2011_09_26 2011_09_26_drive_0022_sync 0000000619 2011_09_26 2011_09_26_drive_0022_sync 0000000620 2011_09_26 2011_09_26_drive_0022_sync 0000000621 2011_09_26 2011_09_26_drive_0022_sync 0000000622 2011_09_26 2011_09_26_drive_0022_sync 0000000623 2011_09_26 2011_09_26_drive_0022_sync 0000000624 2011_09_26 2011_09_26_drive_0022_sync 0000000625 2011_09_26 2011_09_26_drive_0022_sync 0000000627 2011_09_26 2011_09_26_drive_0022_sync 0000000628 2011_09_26 2011_09_26_drive_0022_sync 0000000629 2011_09_26 2011_09_26_drive_0022_sync 0000000630 2011_09_26 2011_09_26_drive_0022_sync 0000000631 2011_09_26 2011_09_26_drive_0022_sync 0000000632 2011_09_26 2011_09_26_drive_0022_sync 0000000633 2011_09_26 2011_09_26_drive_0022_sync 0000000634 2011_09_26 2011_09_26_drive_0022_sync 0000000635 2011_09_26 2011_09_26_drive_0022_sync 0000000636 2011_09_26 2011_09_26_drive_0022_sync 0000000637 2011_09_26 2011_09_26_drive_0022_sync 0000000638 2011_09_26 2011_09_26_drive_0022_sync 0000000639 2011_09_26 2011_09_26_drive_0022_sync 0000000640 2011_09_26 2011_09_26_drive_0022_sync 0000000641 2011_09_26 2011_09_26_drive_0022_sync 0000000642 2011_09_26 2011_09_26_drive_0022_sync 0000000643 2011_09_26 2011_09_26_drive_0022_sync 0000000644 2011_09_26 2011_09_26_drive_0022_sync 0000000645 2011_09_26 2011_09_26_drive_0022_sync 0000000646 2011_09_26 2011_09_26_drive_0022_sync 0000000647 2011_09_26 2011_09_26_drive_0022_sync 0000000649 2011_09_26 2011_09_26_drive_0022_sync 0000000651 2011_09_26 2011_09_26_drive_0022_sync 0000000653 2011_09_26 2011_09_26_drive_0022_sync 0000000655 2011_09_26 2011_09_26_drive_0022_sync 0000000657 2011_09_26 2011_09_26_drive_0022_sync 0000000659 2011_09_26 2011_09_26_drive_0022_sync 0000000661 2011_09_26 2011_09_26_drive_0022_sync 0000000663 2011_09_26 2011_09_26_drive_0022_sync 0000000665 2011_09_26 2011_09_26_drive_0022_sync 0000000667 2011_09_26 2011_09_26_drive_0022_sync 0000000749 2011_09_26 2011_09_26_drive_0022_sync 0000000750 2011_09_26 2011_09_26_drive_0022_sync 0000000751 2011_09_26 2011_09_26_drive_0022_sync 0000000752 2011_09_26 2011_09_26_drive_0022_sync 0000000753 2011_09_26 2011_09_26_drive_0022_sync 0000000754 2011_09_26 2011_09_26_drive_0022_sync 0000000755 2011_09_26 2011_09_26_drive_0022_sync 0000000756 2011_09_26 2011_09_26_drive_0022_sync 0000000757 2011_09_26 2011_09_26_drive_0022_sync 0000000758 2011_09_26 2011_09_26_drive_0022_sync 0000000759 2011_09_26 2011_09_26_drive_0022_sync 0000000760 2011_09_26 2011_09_26_drive_0022_sync 0000000761 2011_09_26 2011_09_26_drive_0022_sync 0000000762 2011_09_26 2011_09_26_drive_0022_sync 0000000763 2011_09_26 2011_09_26_drive_0022_sync 0000000764 2011_09_26 2011_09_26_drive_0022_sync 0000000765 2011_09_26 2011_09_26_drive_0022_sync 0000000766 2011_09_26 2011_09_26_drive_0022_sync 0000000767 2011_09_26 2011_09_26_drive_0022_sync 0000000769 2011_09_26 2011_09_26_drive_0022_sync 0000000771 2011_09_26 2011_09_26_drive_0022_sync 0000000773 2011_09_26 2011_09_26_drive_0022_sync 0000000775 2011_09_26 2011_09_26_drive_0022_sync 0000000777 2011_09_26 2011_09_26_drive_0022_sync 0000000779 2011_09_26 2011_09_26_drive_0022_sync 0000000781 2011_09_26 2011_09_26_drive_0022_sync 0000000783 2011_09_26 2011_09_26_drive_0022_sync 0000000785 2011_09_26 2011_09_26_drive_0022_sync 0000000787 2011_09_26 2011_09_26_drive_0022_sync 0000000789 2011_09_26 2011_09_26_drive_0022_sync 0000000791 2011_09_26 2011_09_26_drive_0022_sync 0000000793 2011_09_26 2011_09_26_drive_0022_sync 0000000795 2011_09_26 2011_09_26_drive_0022_sync 0000000797 2011_09_26 2011_09_26_drive_0022_sync 0000000799 2011_09_26 2011_09_26_drive_0039_sync 0000000001 2011_09_26 2011_09_26_drive_0039_sync 0000000002 2011_09_26 2011_09_26_drive_0039_sync 0000000003 2011_09_26 2011_09_26_drive_0039_sync 0000000004 2011_09_26 2011_09_26_drive_0039_sync 0000000005 2011_09_26 2011_09_26_drive_0039_sync 0000000006 2011_09_26 2011_09_26_drive_0039_sync 0000000007 2011_09_26 2011_09_26_drive_0039_sync 0000000008 2011_09_26 2011_09_26_drive_0039_sync 0000000009 2011_09_26 2011_09_26_drive_0039_sync 0000000010 2011_09_26 2011_09_26_drive_0039_sync 0000000012 2011_09_26 2011_09_26_drive_0039_sync 0000000014 2011_09_26 2011_09_26_drive_0039_sync 0000000016 2011_09_26 2011_09_26_drive_0039_sync 0000000018 2011_09_26 2011_09_26_drive_0039_sync 0000000020 2011_09_26 2011_09_26_drive_0039_sync 0000000022 2011_09_26 2011_09_26_drive_0039_sync 0000000024 2011_09_26 2011_09_26_drive_0039_sync 0000000026 2011_09_26 2011_09_26_drive_0039_sync 0000000028 2011_09_26 2011_09_26_drive_0039_sync 0000000030 2011_09_26 2011_09_26_drive_0039_sync 0000000032 2011_09_26 2011_09_26_drive_0039_sync 0000000034 2011_09_26 2011_09_26_drive_0039_sync 0000000036 2011_09_26 2011_09_26_drive_0039_sync 0000000038 2011_09_26 2011_09_26_drive_0039_sync 0000000040 2011_09_26 2011_09_26_drive_0039_sync 0000000042 2011_09_26 2011_09_26_drive_0039_sync 0000000044 2011_09_26 2011_09_26_drive_0039_sync 0000000046 2011_09_26 2011_09_26_drive_0039_sync 0000000048 2011_09_26 2011_09_26_drive_0039_sync 0000000050 2011_09_26 2011_09_26_drive_0039_sync 0000000052 2011_09_26 2011_09_26_drive_0039_sync 0000000054 2011_09_26 2011_09_26_drive_0039_sync 0000000056 2011_09_26 2011_09_26_drive_0039_sync 0000000058 2011_09_26 2011_09_26_drive_0039_sync 0000000060 2011_09_26 2011_09_26_drive_0039_sync 0000000062 2011_09_26 2011_09_26_drive_0039_sync 0000000064 2011_09_26 2011_09_26_drive_0039_sync 0000000066 2011_09_26 2011_09_26_drive_0039_sync 0000000068 2011_09_26 2011_09_26_drive_0039_sync 0000000070 2011_09_26 2011_09_26_drive_0039_sync 0000000072 2011_09_26 2011_09_26_drive_0039_sync 0000000074 2011_09_26 2011_09_26_drive_0039_sync 0000000076 2011_09_26 2011_09_26_drive_0039_sync 0000000078 2011_09_26 2011_09_26_drive_0039_sync 0000000080 2011_09_26 2011_09_26_drive_0039_sync 0000000082 2011_09_26 2011_09_26_drive_0039_sync 0000000084 2011_09_26 2011_09_26_drive_0039_sync 0000000086 2011_09_26 2011_09_26_drive_0039_sync 0000000088 2011_09_26 2011_09_26_drive_0039_sync 0000000090 2011_09_26 2011_09_26_drive_0039_sync 0000000092 2011_09_26 2011_09_26_drive_0039_sync 0000000094 2011_09_26 2011_09_26_drive_0039_sync 0000000096 2011_09_26 2011_09_26_drive_0039_sync 0000000098 2011_09_26 2011_09_26_drive_0039_sync 0000000100 2011_09_26 2011_09_26_drive_0039_sync 0000000102 2011_09_26 2011_09_26_drive_0039_sync 0000000104 2011_09_26 2011_09_26_drive_0039_sync 0000000106 2011_09_26 2011_09_26_drive_0039_sync 0000000108 2011_09_26 2011_09_26_drive_0039_sync 0000000110 2011_09_26 2011_09_26_drive_0039_sync 0000000112 2011_09_26 2011_09_26_drive_0039_sync 0000000114 2011_09_26 2011_09_26_drive_0039_sync 0000000116 2011_09_26 2011_09_26_drive_0039_sync 0000000118 2011_09_26 2011_09_26_drive_0039_sync 0000000120 2011_09_26 2011_09_26_drive_0039_sync 0000000122 2011_09_26 2011_09_26_drive_0039_sync 0000000124 2011_09_26 2011_09_26_drive_0039_sync 0000000126 2011_09_26 2011_09_26_drive_0039_sync 0000000128 2011_09_26 2011_09_26_drive_0039_sync 0000000130 2011_09_26 2011_09_26_drive_0039_sync 0000000132 2011_09_26 2011_09_26_drive_0039_sync 0000000134 2011_09_26 2011_09_26_drive_0039_sync 0000000136 2011_09_26 2011_09_26_drive_0039_sync 0000000138 2011_09_26 2011_09_26_drive_0039_sync 0000000140 2011_09_26 2011_09_26_drive_0039_sync 0000000142 2011_09_26 2011_09_26_drive_0039_sync 0000000144 2011_09_26 2011_09_26_drive_0039_sync 0000000146 2011_09_26 2011_09_26_drive_0039_sync 0000000148 2011_09_26 2011_09_26_drive_0039_sync 0000000150 2011_09_26 2011_09_26_drive_0039_sync 0000000152 2011_09_26 2011_09_26_drive_0039_sync 0000000154 2011_09_26 2011_09_26_drive_0039_sync 0000000156 2011_09_26 2011_09_26_drive_0039_sync 0000000158 2011_09_26 2011_09_26_drive_0039_sync 0000000160 2011_09_26 2011_09_26_drive_0039_sync 0000000162 2011_09_26 2011_09_26_drive_0039_sync 0000000164 2011_09_26 2011_09_26_drive_0039_sync 0000000166 2011_09_26 2011_09_26_drive_0039_sync 0000000168 2011_09_26 2011_09_26_drive_0039_sync 0000000170 2011_09_26 2011_09_26_drive_0039_sync 0000000172 2011_09_26 2011_09_26_drive_0039_sync 0000000174 2011_09_26 2011_09_26_drive_0039_sync 0000000176 2011_09_26 2011_09_26_drive_0039_sync 0000000178 2011_09_26 2011_09_26_drive_0039_sync 0000000180 2011_09_26 2011_09_26_drive_0039_sync 0000000182 2011_09_26 2011_09_26_drive_0039_sync 0000000184 2011_09_26 2011_09_26_drive_0039_sync 0000000186 2011_09_26 2011_09_26_drive_0039_sync 0000000188 2011_09_26 2011_09_26_drive_0039_sync 0000000190 2011_09_26 2011_09_26_drive_0039_sync 0000000192 2011_09_26 2011_09_26_drive_0039_sync 0000000194 2011_09_26 2011_09_26_drive_0039_sync 0000000196 2011_09_26 2011_09_26_drive_0039_sync 0000000198 2011_09_26 2011_09_26_drive_0039_sync 0000000200 2011_09_26 2011_09_26_drive_0039_sync 0000000202 2011_09_26 2011_09_26_drive_0039_sync 0000000204 2011_09_26 2011_09_26_drive_0039_sync 0000000206 2011_09_26 2011_09_26_drive_0039_sync 0000000208 2011_09_26 2011_09_26_drive_0039_sync 0000000210 2011_09_26 2011_09_26_drive_0039_sync 0000000212 2011_09_26 2011_09_26_drive_0039_sync 0000000214 2011_09_26 2011_09_26_drive_0039_sync 0000000216 2011_09_26 2011_09_26_drive_0039_sync 0000000218 2011_09_26 2011_09_26_drive_0039_sync 0000000220 2011_09_26 2011_09_26_drive_0039_sync 0000000222 2011_09_26 2011_09_26_drive_0039_sync 0000000224 2011_09_26 2011_09_26_drive_0039_sync 0000000226 2011_09_26 2011_09_26_drive_0039_sync 0000000228 2011_09_26 2011_09_26_drive_0039_sync 0000000230 2011_09_26 2011_09_26_drive_0039_sync 0000000232 2011_09_26 2011_09_26_drive_0039_sync 0000000234 2011_09_26 2011_09_26_drive_0039_sync 0000000236 2011_09_26 2011_09_26_drive_0039_sync 0000000238 2011_09_26 2011_09_26_drive_0039_sync 0000000240 2011_09_26 2011_09_26_drive_0039_sync 0000000242 2011_09_26 2011_09_26_drive_0039_sync 0000000244 2011_09_26 2011_09_26_drive_0039_sync 0000000246 2011_09_26 2011_09_26_drive_0039_sync 0000000248 2011_09_26 2011_09_26_drive_0039_sync 0000000250 2011_09_26 2011_09_26_drive_0039_sync 0000000252 2011_09_26 2011_09_26_drive_0039_sync 0000000254 2011_09_26 2011_09_26_drive_0039_sync 0000000256 2011_09_26 2011_09_26_drive_0039_sync 0000000258 2011_09_26 2011_09_26_drive_0039_sync 0000000260 2011_09_26 2011_09_26_drive_0039_sync 0000000262 2011_09_26 2011_09_26_drive_0039_sync 0000000264 2011_09_26 2011_09_26_drive_0039_sync 0000000266 2011_09_26 2011_09_26_drive_0039_sync 0000000268 2011_09_26 2011_09_26_drive_0039_sync 0000000270 2011_09_26 2011_09_26_drive_0039_sync 0000000272 2011_09_26 2011_09_26_drive_0039_sync 0000000274 2011_09_26 2011_09_26_drive_0039_sync 0000000276 2011_09_26 2011_09_26_drive_0039_sync 0000000278 2011_09_26 2011_09_26_drive_0039_sync 0000000280 2011_09_26 2011_09_26_drive_0039_sync 0000000282 2011_09_26 2011_09_26_drive_0039_sync 0000000284 2011_09_26 2011_09_26_drive_0039_sync 0000000286 2011_09_26 2011_09_26_drive_0039_sync 0000000288 2011_09_26 2011_09_26_drive_0039_sync 0000000290 2011_09_26 2011_09_26_drive_0039_sync 0000000292 2011_09_26 2011_09_26_drive_0039_sync 0000000294 2011_09_26 2011_09_26_drive_0039_sync 0000000296 2011_09_26 2011_09_26_drive_0039_sync 0000000298 2011_09_26 2011_09_26_drive_0039_sync 0000000300 2011_09_26 2011_09_26_drive_0039_sync 0000000302 2011_09_26 2011_09_26_drive_0039_sync 0000000304 2011_09_26 2011_09_26_drive_0039_sync 0000000306 2011_09_26 2011_09_26_drive_0039_sync 0000000308 2011_09_26 2011_09_26_drive_0039_sync 0000000310 2011_09_26 2011_09_26_drive_0039_sync 0000000312 2011_09_26 2011_09_26_drive_0039_sync 0000000314 2011_09_26 2011_09_26_drive_0039_sync 0000000316 2011_09_26 2011_09_26_drive_0039_sync 0000000318 2011_09_26 2011_09_26_drive_0039_sync 0000000321 2011_09_26 2011_09_26_drive_0039_sync 0000000323 2011_09_26 2011_09_26_drive_0039_sync 0000000325 2011_09_26 2011_09_26_drive_0039_sync 0000000327 2011_09_26 2011_09_26_drive_0039_sync 0000000329 2011_09_26 2011_09_26_drive_0039_sync 0000000331 2011_09_26 2011_09_26_drive_0039_sync 0000000333 2011_09_26 2011_09_26_drive_0039_sync 0000000335 2011_09_26 2011_09_26_drive_0039_sync 0000000337 2011_09_26 2011_09_26_drive_0039_sync 0000000339 2011_09_26 2011_09_26_drive_0039_sync 0000000341 2011_09_26 2011_09_26_drive_0039_sync 0000000343 2011_09_26 2011_09_26_drive_0039_sync 0000000361 2011_09_26 2011_09_26_drive_0039_sync 0000000363 2011_09_26 2011_09_26_drive_0039_sync 0000000365 2011_09_26 2011_09_26_drive_0039_sync 0000000367 2011_09_26 2011_09_26_drive_0039_sync 0000000369 2011_09_26 2011_09_26_drive_0039_sync 0000000371 2011_09_26 2011_09_26_drive_0039_sync 0000000373 2011_09_26 2011_09_26_drive_0039_sync 0000000375 2011_09_26 2011_09_26_drive_0039_sync 0000000377 2011_09_26 2011_09_26_drive_0039_sync 0000000379 2011_09_26 2011_09_26_drive_0039_sync 0000000381 2011_09_26 2011_09_26_drive_0039_sync 0000000383 2011_09_26 2011_09_26_drive_0039_sync 0000000385 2011_09_26 2011_09_26_drive_0039_sync 0000000387 2011_09_26 2011_09_26_drive_0039_sync 0000000390 2011_09_26 2011_09_26_drive_0039_sync 0000000393 2011_09_26 2011_09_26_drive_0019_sync 0000000007 2011_09_26 2011_09_26_drive_0019_sync 0000000008 2011_09_26 2011_09_26_drive_0019_sync 0000000009 2011_09_26 2011_09_26_drive_0019_sync 0000000010 2011_09_26 2011_09_26_drive_0019_sync 0000000011 2011_09_26 2011_09_26_drive_0019_sync 0000000012 2011_09_26 2011_09_26_drive_0019_sync 0000000013 2011_09_26 2011_09_26_drive_0019_sync 0000000014 2011_09_26 2011_09_26_drive_0019_sync 0000000015 2011_09_26 2011_09_26_drive_0019_sync 0000000016 2011_09_26 2011_09_26_drive_0019_sync 0000000017 2011_09_26 2011_09_26_drive_0019_sync 0000000018 2011_09_26 2011_09_26_drive_0019_sync 0000000019 2011_09_26 2011_09_26_drive_0019_sync 0000000020 2011_09_26 2011_09_26_drive_0019_sync 0000000021 2011_09_26 2011_09_26_drive_0019_sync 0000000022 2011_09_26 2011_09_26_drive_0019_sync 0000000023 2011_09_26 2011_09_26_drive_0019_sync 0000000024 2011_09_26 2011_09_26_drive_0019_sync 0000000025 2011_09_26 2011_09_26_drive_0019_sync 0000000026 2011_09_26 2011_09_26_drive_0019_sync 0000000027 2011_09_26 2011_09_26_drive_0019_sync 0000000028 2011_09_26 2011_09_26_drive_0019_sync 0000000029 2011_09_26 2011_09_26_drive_0019_sync 0000000030 2011_09_26 2011_09_26_drive_0019_sync 0000000031 2011_09_26 2011_09_26_drive_0019_sync 0000000032 2011_09_26 2011_09_26_drive_0019_sync 0000000033 2011_09_26 2011_09_26_drive_0019_sync 0000000065 2011_09_26 2011_09_26_drive_0019_sync 0000000066 2011_09_26 2011_09_26_drive_0019_sync 0000000067 2011_09_26 2011_09_26_drive_0019_sync 0000000068 2011_09_26 2011_09_26_drive_0019_sync 0000000069 2011_09_26 2011_09_26_drive_0019_sync 0000000070 2011_09_26 2011_09_26_drive_0019_sync 0000000071 2011_09_26 2011_09_26_drive_0019_sync 0000000072 2011_09_26 2011_09_26_drive_0019_sync 0000000073 2011_09_26 2011_09_26_drive_0019_sync 0000000074 2011_09_26 2011_09_26_drive_0019_sync 0000000075 2011_09_26 2011_09_26_drive_0019_sync 0000000076 2011_09_26 2011_09_26_drive_0019_sync 0000000077 2011_09_26 2011_09_26_drive_0019_sync 0000000078 2011_09_26 2011_09_26_drive_0019_sync 0000000079 2011_09_26 2011_09_26_drive_0019_sync 0000000080 2011_09_26 2011_09_26_drive_0019_sync 0000000081 2011_09_26 2011_09_26_drive_0019_sync 0000000082 2011_09_26 2011_09_26_drive_0019_sync 0000000083 2011_09_26 2011_09_26_drive_0019_sync 0000000084 2011_09_26 2011_09_26_drive_0019_sync 0000000085 2011_09_26 2011_09_26_drive_0019_sync 0000000086 2011_09_26 2011_09_26_drive_0019_sync 0000000087 2011_09_26 2011_09_26_drive_0019_sync 0000000088 2011_09_26 2011_09_26_drive_0019_sync 0000000089 2011_09_26 2011_09_26_drive_0019_sync 0000000090 2011_09_26 2011_09_26_drive_0019_sync 0000000091 2011_09_26 2011_09_26_drive_0019_sync 0000000092 2011_09_26 2011_09_26_drive_0019_sync 0000000093 2011_09_26 2011_09_26_drive_0019_sync 0000000094 2011_09_26 2011_09_26_drive_0019_sync 0000000095 2011_09_26 2011_09_26_drive_0019_sync 0000000096 2011_09_26 2011_09_26_drive_0019_sync 0000000097 2011_09_26 2011_09_26_drive_0019_sync 0000000098 2011_09_26 2011_09_26_drive_0019_sync 0000000222 2011_09_26 2011_09_26_drive_0019_sync 0000000224 2011_09_26 2011_09_26_drive_0019_sync 0000000226 2011_09_26 2011_09_26_drive_0019_sync 0000000228 2011_09_26 2011_09_26_drive_0019_sync 0000000230 2011_09_26 2011_09_26_drive_0019_sync 0000000232 2011_09_26 2011_09_26_drive_0019_sync 0000000234 2011_09_26 2011_09_26_drive_0019_sync 0000000236 2011_09_26 2011_09_26_drive_0019_sync 0000000238 2011_09_26 2011_09_26_drive_0019_sync 0000000240 2011_09_26 2011_09_26_drive_0019_sync 0000000243 2011_09_26 2011_09_26_drive_0019_sync 0000000245 2011_09_26 2011_09_26_drive_0019_sync 0000000247 2011_09_26 2011_09_26_drive_0019_sync 0000000249 2011_09_26 2011_09_26_drive_0019_sync 0000000251 2011_09_26 2011_09_26_drive_0019_sync 0000000253 2011_09_26 2011_09_26_drive_0019_sync 0000000255 2011_09_26 2011_09_26_drive_0019_sync 0000000257 2011_09_26 2011_09_26_drive_0019_sync 0000000314 2011_09_26 2011_09_26_drive_0019_sync 0000000316 2011_09_26 2011_09_26_drive_0019_sync 0000000318 2011_09_26 2011_09_26_drive_0019_sync 0000000320 2011_09_26 2011_09_26_drive_0019_sync 0000000322 2011_09_26 2011_09_26_drive_0019_sync 0000000324 2011_09_26 2011_09_26_drive_0019_sync 0000000326 2011_09_26 2011_09_26_drive_0019_sync 0000000328 2011_09_26 2011_09_26_drive_0019_sync 0000000330 2011_09_26 2011_09_26_drive_0019_sync 0000000332 2011_09_26 2011_09_26_drive_0019_sync 0000000334 2011_09_26 2011_09_26_drive_0019_sync 0000000336 2011_09_26 2011_09_26_drive_0019_sync 0000000338 2011_09_26 2011_09_26_drive_0019_sync 0000000340 2011_09_26 2011_09_26_drive_0019_sync 0000000342 2011_09_26 2011_09_26_drive_0019_sync 0000000344 2011_09_26 2011_09_26_drive_0019_sync 0000000347 2011_09_26 2011_09_26_drive_0019_sync 0000000350 2011_09_26 2011_09_26_drive_0019_sync 0000000353 2011_09_26 2011_09_26_drive_0019_sync 0000000356 2011_09_26 2011_09_26_drive_0019_sync 0000000359 2011_09_26 2011_09_26_drive_0019_sync 0000000362 2011_09_26 2011_09_26_drive_0019_sync 0000000365 2011_09_26 2011_09_26_drive_0019_sync 0000000368 2011_09_26 2011_09_26_drive_0019_sync 0000000371 2011_09_26 2011_09_26_drive_0019_sync 0000000374 2011_09_26 2011_09_26_drive_0019_sync 0000000377 2011_09_26 2011_09_26_drive_0019_sync 0000000379 2011_09_26 2011_09_26_drive_0019_sync 0000000381 2011_09_26 2011_09_26_drive_0019_sync 0000000383 2011_09_26 2011_09_26_drive_0019_sync 0000000385 2011_09_26 2011_09_26_drive_0019_sync 0000000387 2011_09_26 2011_09_26_drive_0019_sync 0000000388 2011_09_26 2011_09_26_drive_0019_sync 0000000390 2011_09_26 2011_09_26_drive_0019_sync 0000000392 2011_09_26 2011_09_26_drive_0019_sync 0000000394 2011_09_26 2011_09_26_drive_0019_sync 0000000396 2011_09_26 2011_09_26_drive_0019_sync 0000000398 2011_09_26 2011_09_26_drive_0019_sync 0000000401 2011_09_26 2011_09_26_drive_0019_sync 0000000405 2011_09_26 2011_09_26_drive_0019_sync 0000000411 2011_09_26 2011_09_26_drive_0019_sync 0000000418 2011_09_26 2011_09_26_drive_0019_sync 0000000426 2011_09_26 2011_09_26_drive_0019_sync 0000000433 2011_09_26 2011_09_26_drive_0019_sync 0000000440 2011_09_26 2011_09_26_drive_0019_sync 0000000446 2011_09_26 2011_09_26_drive_0019_sync 0000000451 2011_09_26 2011_09_26_drive_0019_sync 0000000456 2011_09_26 2011_09_26_drive_0019_sync 0000000462 2011_09_26 2011_09_26_drive_0019_sync 0000000467 2011_09_26 2011_09_26_drive_0019_sync 0000000471 2011_09_26 2011_09_26_drive_0019_sync 0000000475 2011_09_26 2011_09_26_drive_0019_sync 0000000479 2011_09_29 2011_09_29_drive_0026_sync 0000000004 2011_09_29 2011_09_29_drive_0026_sync 0000000009 2011_09_29 2011_09_29_drive_0026_sync 0000000014 2011_09_29 2011_09_29_drive_0026_sync 0000000021 2011_09_29 2011_09_29_drive_0026_sync 0000000026 2011_09_29 2011_09_29_drive_0026_sync 0000000030 2011_09_29 2011_09_29_drive_0026_sync 0000000033 2011_09_29 2011_09_29_drive_0026_sync 0000000035 2011_09_29 2011_09_29_drive_0026_sync 0000000037 2011_09_29 2011_09_29_drive_0026_sync 0000000040 2011_09_29 2011_09_29_drive_0026_sync 0000000043 2011_09_29 2011_09_29_drive_0026_sync 0000000046 2011_09_29 2011_09_29_drive_0026_sync 0000000049 2011_09_29 2011_09_29_drive_0026_sync 0000000052 2011_09_29 2011_09_29_drive_0026_sync 0000000055 2011_09_29 2011_09_29_drive_0026_sync 0000000058 2011_09_29 2011_09_29_drive_0026_sync 0000000061 2011_09_29 2011_09_29_drive_0026_sync 0000000064 2011_09_29 2011_09_29_drive_0026_sync 0000000067 2011_09_29 2011_09_29_drive_0026_sync 0000000070 2011_09_29 2011_09_29_drive_0026_sync 0000000073 2011_09_29 2011_09_29_drive_0026_sync 0000000076 2011_09_29 2011_09_29_drive_0026_sync 0000000079 2011_09_29 2011_09_29_drive_0026_sync 0000000082 2011_09_29 2011_09_29_drive_0026_sync 0000000085 2011_09_29 2011_09_29_drive_0026_sync 0000000088 2011_09_29 2011_09_29_drive_0026_sync 0000000091 2011_09_29 2011_09_29_drive_0026_sync 0000000093 2011_09_29 2011_09_29_drive_0026_sync 0000000095 2011_09_29 2011_09_29_drive_0026_sync 0000000098 2011_09_29 2011_09_29_drive_0026_sync 0000000101 2011_09_29 2011_09_29_drive_0026_sync 0000000104 2011_09_29 2011_09_29_drive_0026_sync 0000000107 2011_09_29 2011_09_29_drive_0026_sync 0000000110 2011_09_29 2011_09_29_drive_0026_sync 0000000112 2011_09_29 2011_09_29_drive_0026_sync 0000000114 2011_09_29 2011_09_29_drive_0026_sync 0000000117 2011_09_29 2011_09_29_drive_0026_sync 0000000120 2011_09_29 2011_09_29_drive_0026_sync 0000000123 2011_09_29 2011_09_29_drive_0026_sync 0000000126 2011_09_29 2011_09_29_drive_0026_sync 0000000129 2011_09_29 2011_09_29_drive_0026_sync 0000000133 2011_09_29 2011_09_29_drive_0026_sync 0000000137 2011_09_29 2011_09_29_drive_0026_sync 0000000141 2011_09_29 2011_09_29_drive_0026_sync 0000000146 2011_09_29 2011_09_29_drive_0026_sync 0000000151 2011_09_29 2011_09_29_drive_0026_sync 0000000156 2011_09_26 2011_09_26_drive_0048_sync 0000000002 2011_09_26 2011_09_26_drive_0048_sync 0000000004 2011_09_26 2011_09_26_drive_0048_sync 0000000006 2011_09_26 2011_09_26_drive_0048_sync 0000000008 2011_09_26 2011_09_26_drive_0048_sync 0000000010 2011_09_26 2011_09_26_drive_0048_sync 0000000012 2011_09_26 2011_09_26_drive_0048_sync 0000000014 2011_09_26 2011_09_26_drive_0048_sync 0000000016 2011_09_26 2011_09_26_drive_0048_sync 0000000018 2011_09_26 2011_09_26_drive_0048_sync 0000000020 2011_09_26 2011_09_26_drive_0064_sync 0000000002 2011_09_26 2011_09_26_drive_0064_sync 0000000004 2011_09_26 2011_09_26_drive_0064_sync 0000000006 2011_09_26 2011_09_26_drive_0064_sync 0000000008 2011_09_26 2011_09_26_drive_0064_sync 0000000010 2011_09_26 2011_09_26_drive_0064_sync 0000000012 2011_09_26 2011_09_26_drive_0064_sync 0000000014 2011_09_26 2011_09_26_drive_0064_sync 0000000016 2011_09_26 2011_09_26_drive_0064_sync 0000000018 2011_09_26 2011_09_26_drive_0064_sync 0000000020 2011_09_26 2011_09_26_drive_0064_sync 0000000022 2011_09_26 2011_09_26_drive_0064_sync 0000000024 2011_09_26 2011_09_26_drive_0064_sync 0000000026 2011_09_26 2011_09_26_drive_0064_sync 0000000028 2011_09_26 2011_09_26_drive_0064_sync 0000000030 2011_09_26 2011_09_26_drive_0064_sync 0000000032 2011_09_26 2011_09_26_drive_0064_sync 0000000034 2011_09_26 2011_09_26_drive_0064_sync 0000000036 2011_09_26 2011_09_26_drive_0064_sync 0000000038 2011_09_26 2011_09_26_drive_0064_sync 0000000040 2011_09_26 2011_09_26_drive_0064_sync 0000000042 2011_09_26 2011_09_26_drive_0064_sync 0000000044 2011_09_26 2011_09_26_drive_0064_sync 0000000046 2011_09_26 2011_09_26_drive_0064_sync 0000000048 2011_09_26 2011_09_26_drive_0064_sync 0000000050 2011_09_26 2011_09_26_drive_0064_sync 0000000052 2011_09_26 2011_09_26_drive_0064_sync 0000000054 2011_09_26 2011_09_26_drive_0064_sync 0000000056 2011_09_26 2011_09_26_drive_0064_sync 0000000058 2011_09_26 2011_09_26_drive_0064_sync 0000000060 2011_09_26 2011_09_26_drive_0064_sync 0000000062 2011_09_26 2011_09_26_drive_0064_sync 0000000064 2011_09_26 2011_09_26_drive_0064_sync 0000000066 2011_09_26 2011_09_26_drive_0064_sync 0000000068 2011_09_26 2011_09_26_drive_0064_sync 0000000070 2011_09_26 2011_09_26_drive_0064_sync 0000000072 2011_09_26 2011_09_26_drive_0064_sync 0000000074 2011_09_26 2011_09_26_drive_0064_sync 0000000076 2011_09_26 2011_09_26_drive_0064_sync 0000000078 2011_09_26 2011_09_26_drive_0064_sync 0000000080 2011_09_26 2011_09_26_drive_0064_sync 0000000082 2011_09_26 2011_09_26_drive_0064_sync 0000000084 2011_09_26 2011_09_26_drive_0064_sync 0000000086 2011_09_26 2011_09_26_drive_0064_sync 0000000088 2011_09_26 2011_09_26_drive_0064_sync 0000000090 2011_09_26 2011_09_26_drive_0064_sync 0000000092 2011_09_26 2011_09_26_drive_0064_sync 0000000094 2011_09_26 2011_09_26_drive_0064_sync 0000000096 2011_09_26 2011_09_26_drive_0064_sync 0000000098 2011_09_26 2011_09_26_drive_0064_sync 0000000100 2011_09_26 2011_09_26_drive_0064_sync 0000000102 2011_09_26 2011_09_26_drive_0064_sync 0000000104 2011_09_26 2011_09_26_drive_0064_sync 0000000106 2011_09_26 2011_09_26_drive_0064_sync 0000000108 2011_09_26 2011_09_26_drive_0064_sync 0000000110 2011_09_26 2011_09_26_drive_0064_sync 0000000112 2011_09_26 2011_09_26_drive_0064_sync 0000000114 2011_09_26 2011_09_26_drive_0064_sync 0000000116 2011_09_26 2011_09_26_drive_0064_sync 0000000118 2011_09_26 2011_09_26_drive_0064_sync 0000000120 2011_09_26 2011_09_26_drive_0064_sync 0000000122 2011_09_26 2011_09_26_drive_0064_sync 0000000124 2011_09_26 2011_09_26_drive_0064_sync 0000000126 2011_09_26 2011_09_26_drive_0064_sync 0000000128 2011_09_26 2011_09_26_drive_0064_sync 0000000130 2011_09_26 2011_09_26_drive_0064_sync 0000000132 2011_09_26 2011_09_26_drive_0064_sync 0000000134 2011_09_26 2011_09_26_drive_0064_sync 0000000136 2011_09_26 2011_09_26_drive_0064_sync 0000000138 2011_09_26 2011_09_26_drive_0064_sync 0000000140 2011_09_26 2011_09_26_drive_0064_sync 0000000142 2011_09_26 2011_09_26_drive_0064_sync 0000000144 2011_09_26 2011_09_26_drive_0064_sync 0000000146 2011_09_26 2011_09_26_drive_0064_sync 0000000148 2011_09_26 2011_09_26_drive_0064_sync 0000000150 2011_09_26 2011_09_26_drive_0064_sync 0000000152 2011_09_26 2011_09_26_drive_0064_sync 0000000154 2011_09_26 2011_09_26_drive_0064_sync 0000000156 2011_09_26 2011_09_26_drive_0064_sync 0000000158 2011_09_26 2011_09_26_drive_0064_sync 0000000160 2011_09_26 2011_09_26_drive_0064_sync 0000000162 2011_09_26 2011_09_26_drive_0064_sync 0000000165 2011_09_26 2011_09_26_drive_0064_sync 0000000168 2011_09_26 2011_09_26_drive_0064_sync 0000000171 2011_09_26 2011_09_26_drive_0064_sync 0000000173 2011_09_26 2011_09_26_drive_0064_sync 0000000175 2011_09_26 2011_09_26_drive_0064_sync 0000000177 2011_09_26 2011_09_26_drive_0064_sync 0000000179 2011_09_26 2011_09_26_drive_0064_sync 0000000181 2011_09_26 2011_09_26_drive_0064_sync 0000000183 2011_09_26 2011_09_26_drive_0064_sync 0000000185 2011_09_26 2011_09_26_drive_0064_sync 0000000187 2011_09_26 2011_09_26_drive_0064_sync 0000000189 2011_09_26 2011_09_26_drive_0064_sync 0000000191 2011_09_26 2011_09_26_drive_0064_sync 0000000193 2011_09_26 2011_09_26_drive_0064_sync 0000000195 2011_09_26 2011_09_26_drive_0064_sync 0000000197 2011_09_26 2011_09_26_drive_0064_sync 0000000199 2011_09_26 2011_09_26_drive_0064_sync 0000000201 2011_09_26 2011_09_26_drive_0064_sync 0000000203 2011_09_26 2011_09_26_drive_0064_sync 0000000205 2011_09_26 2011_09_26_drive_0064_sync 0000000207 2011_09_26 2011_09_26_drive_0064_sync 0000000209 2011_09_26 2011_09_26_drive_0064_sync 0000000211 2011_09_26 2011_09_26_drive_0064_sync 0000000213 2011_09_26 2011_09_26_drive_0064_sync 0000000215 2011_09_26 2011_09_26_drive_0064_sync 0000000217 2011_09_26 2011_09_26_drive_0064_sync 0000000219 2011_09_26 2011_09_26_drive_0064_sync 0000000221 2011_09_26 2011_09_26_drive_0064_sync 0000000223 2011_09_26 2011_09_26_drive_0064_sync 0000000225 2011_09_26 2011_09_26_drive_0064_sync 0000000227 2011_09_26 2011_09_26_drive_0064_sync 0000000229 2011_09_26 2011_09_26_drive_0064_sync 0000000231 2011_09_26 2011_09_26_drive_0064_sync 0000000233 2011_09_26 2011_09_26_drive_0064_sync 0000000235 2011_09_26 2011_09_26_drive_0064_sync 0000000237 2011_09_26 2011_09_26_drive_0064_sync 0000000239 2011_09_26 2011_09_26_drive_0064_sync 0000000241 2011_09_26 2011_09_26_drive_0064_sync 0000000243 2011_09_26 2011_09_26_drive_0064_sync 0000000245 2011_09_26 2011_09_26_drive_0064_sync 0000000247 2011_09_26 2011_09_26_drive_0064_sync 0000000249 2011_09_26 2011_09_26_drive_0064_sync 0000000251 2011_09_26 2011_09_26_drive_0064_sync 0000000253 2011_09_26 2011_09_26_drive_0064_sync 0000000255 2011_09_26 2011_09_26_drive_0064_sync 0000000257 2011_09_26 2011_09_26_drive_0064_sync 0000000259 2011_09_26 2011_09_26_drive_0064_sync 0000000261 2011_09_26 2011_09_26_drive_0064_sync 0000000263 2011_09_26 2011_09_26_drive_0064_sync 0000000265 2011_09_26 2011_09_26_drive_0064_sync 0000000267 2011_09_26 2011_09_26_drive_0064_sync 0000000269 2011_09_26 2011_09_26_drive_0064_sync 0000000271 2011_09_26 2011_09_26_drive_0064_sync 0000000273 2011_09_26 2011_09_26_drive_0064_sync 0000000275 2011_09_26 2011_09_26_drive_0064_sync 0000000277 2011_09_26 2011_09_26_drive_0064_sync 0000000279 2011_09_26 2011_09_26_drive_0064_sync 0000000281 2011_09_26 2011_09_26_drive_0064_sync 0000000283 2011_09_26 2011_09_26_drive_0064_sync 0000000285 2011_09_26 2011_09_26_drive_0064_sync 0000000287 2011_09_26 2011_09_26_drive_0064_sync 0000000289 2011_09_26 2011_09_26_drive_0064_sync 0000000291 2011_09_26 2011_09_26_drive_0064_sync 0000000293 2011_09_26 2011_09_26_drive_0064_sync 0000000295 2011_09_26 2011_09_26_drive_0064_sync 0000000297 2011_09_26 2011_09_26_drive_0064_sync 0000000299 2011_09_26 2011_09_26_drive_0064_sync 0000000301 2011_09_26 2011_09_26_drive_0064_sync 0000000303 2011_09_26 2011_09_26_drive_0064_sync 0000000305 2011_09_26 2011_09_26_drive_0064_sync 0000000307 2011_09_26 2011_09_26_drive_0064_sync 0000000309 2011_09_26 2011_09_26_drive_0064_sync 0000000311 2011_09_26 2011_09_26_drive_0064_sync 0000000313 2011_09_26 2011_09_26_drive_0064_sync 0000000315 2011_09_26 2011_09_26_drive_0064_sync 0000000317 2011_09_26 2011_09_26_drive_0064_sync 0000000319 2011_09_26 2011_09_26_drive_0064_sync 0000000321 2011_09_26 2011_09_26_drive_0064_sync 0000000323 2011_09_26 2011_09_26_drive_0064_sync 0000000325 2011_09_26 2011_09_26_drive_0064_sync 0000000327 2011_09_26 2011_09_26_drive_0064_sync 0000000329 2011_09_26 2011_09_26_drive_0064_sync 0000000330 2011_09_26 2011_09_26_drive_0064_sync 0000000331 2011_09_26 2011_09_26_drive_0064_sync 0000000332 2011_09_26 2011_09_26_drive_0064_sync 0000000333 2011_09_26 2011_09_26_drive_0064_sync 0000000334 2011_09_26 2011_09_26_drive_0064_sync 0000000335 2011_09_26 2011_09_26_drive_0064_sync 0000000337 2011_09_26 2011_09_26_drive_0064_sync 0000000339 2011_09_26 2011_09_26_drive_0064_sync 0000000340 2011_09_26 2011_09_26_drive_0064_sync 0000000341 2011_09_26 2011_09_26_drive_0064_sync 0000000342 2011_09_26 2011_09_26_drive_0064_sync 0000000343 2011_09_26 2011_09_26_drive_0064_sync 0000000344 2011_09_26 2011_09_26_drive_0064_sync 0000000346 2011_09_26 2011_09_26_drive_0064_sync 0000000348 2011_09_26 2011_09_26_drive_0064_sync 0000000350 2011_09_26 2011_09_26_drive_0064_sync 0000000352 2011_09_26 2011_09_26_drive_0064_sync 0000000354 2011_09_26 2011_09_26_drive_0064_sync 0000000355 2011_09_26 2011_09_26_drive_0064_sync 0000000356 2011_09_26 2011_09_26_drive_0064_sync 0000000357 2011_09_26 2011_09_26_drive_0064_sync 0000000358 2011_09_26 2011_09_26_drive_0064_sync 0000000359 2011_09_26 2011_09_26_drive_0064_sync 0000000360 2011_09_26 2011_09_26_drive_0064_sync 0000000361 2011_09_26 2011_09_26_drive_0064_sync 0000000362 2011_09_26 2011_09_26_drive_0064_sync 0000000363 2011_09_26 2011_09_26_drive_0064_sync 0000000364 2011_09_26 2011_09_26_drive_0064_sync 0000000365 2011_09_26 2011_09_26_drive_0064_sync 0000000367 2011_09_26 2011_09_26_drive_0064_sync 0000000369 2011_09_26 2011_09_26_drive_0064_sync 0000000371 2011_09_26 2011_09_26_drive_0064_sync 0000000373 2011_09_26 2011_09_26_drive_0064_sync 0000000374 2011_09_26 2011_09_26_drive_0064_sync 0000000376 2011_09_26 2011_09_26_drive_0064_sync 0000000378 2011_09_26 2011_09_26_drive_0064_sync 0000000380 2011_09_26 2011_09_26_drive_0064_sync 0000000382 2011_09_26 2011_09_26_drive_0064_sync 0000000384 2011_09_26 2011_09_26_drive_0064_sync 0000000399 2011_09_26 2011_09_26_drive_0064_sync 0000000401 2011_09_26 2011_09_26_drive_0064_sync 0000000403 2011_09_26 2011_09_26_drive_0064_sync 0000000405 2011_09_26 2011_09_26_drive_0064_sync 0000000407 2011_09_26 2011_09_26_drive_0064_sync 0000000409 2011_09_26 2011_09_26_drive_0064_sync 0000000411 2011_09_26 2011_09_26_drive_0064_sync 0000000413 2011_09_26 2011_09_26_drive_0064_sync 0000000415 2011_09_26 2011_09_26_drive_0064_sync 0000000417 2011_09_26 2011_09_26_drive_0064_sync 0000000419 2011_09_26 2011_09_26_drive_0064_sync 0000000421 2011_09_26 2011_09_26_drive_0064_sync 0000000423 2011_09_26 2011_09_26_drive_0064_sync 0000000426 2011_09_26 2011_09_26_drive_0064_sync 0000000429 2011_09_26 2011_09_26_drive_0064_sync 0000000432 2011_09_26 2011_09_26_drive_0064_sync 0000000434 2011_09_26 2011_09_26_drive_0064_sync 0000000437 2011_09_26 2011_09_26_drive_0064_sync 0000000440 2011_09_26 2011_09_26_drive_0064_sync 0000000442 2011_09_26 2011_09_26_drive_0064_sync 0000000444 2011_09_26 2011_09_26_drive_0064_sync 0000000446 2011_09_26 2011_09_26_drive_0064_sync 0000000447 2011_09_26 2011_09_26_drive_0064_sync 0000000448 2011_09_26 2011_09_26_drive_0064_sync 0000000449 2011_09_26 2011_09_26_drive_0064_sync 0000000450 2011_09_26 2011_09_26_drive_0064_sync 0000000455 2011_09_26 2011_09_26_drive_0064_sync 0000000456 2011_09_26 2011_09_26_drive_0064_sync 0000000457 2011_09_26 2011_09_26_drive_0064_sync 0000000458 2011_09_26 2011_09_26_drive_0064_sync 0000000459 2011_09_26 2011_09_26_drive_0064_sync 0000000460 2011_09_26 2011_09_26_drive_0064_sync 0000000461 2011_09_26 2011_09_26_drive_0064_sync 0000000462 2011_09_26 2011_09_26_drive_0064_sync 0000000464 2011_09_26 2011_09_26_drive_0064_sync 0000000466 2011_09_26 2011_09_26_drive_0064_sync 0000000468 2011_09_26 2011_09_26_drive_0064_sync 0000000470 2011_09_26 2011_09_26_drive_0064_sync 0000000472 2011_09_26 2011_09_26_drive_0064_sync 0000000474 2011_09_26 2011_09_26_drive_0064_sync 0000000476 2011_09_26 2011_09_26_drive_0064_sync 0000000478 2011_09_26 2011_09_26_drive_0064_sync 0000000480 2011_09_26 2011_09_26_drive_0064_sync 0000000482 2011_09_26 2011_09_26_drive_0064_sync 0000000484 2011_09_26 2011_09_26_drive_0064_sync 0000000486 2011_09_26 2011_09_26_drive_0064_sync 0000000488 2011_09_26 2011_09_26_drive_0064_sync 0000000490 2011_09_26 2011_09_26_drive_0064_sync 0000000492 2011_09_26 2011_09_26_drive_0064_sync 0000000494 2011_09_26 2011_09_26_drive_0064_sync 0000000496 2011_09_26 2011_09_26_drive_0064_sync 0000000498 2011_09_26 2011_09_26_drive_0064_sync 0000000500 2011_09_26 2011_09_26_drive_0064_sync 0000000502 2011_09_26 2011_09_26_drive_0064_sync 0000000504 2011_09_26 2011_09_26_drive_0064_sync 0000000506 2011_09_26 2011_09_26_drive_0064_sync 0000000508 2011_09_26 2011_09_26_drive_0064_sync 0000000510 2011_09_26 2011_09_26_drive_0064_sync 0000000512 2011_09_26 2011_09_26_drive_0064_sync 0000000514 2011_09_26 2011_09_26_drive_0064_sync 0000000516 2011_09_26 2011_09_26_drive_0064_sync 0000000518 2011_09_26 2011_09_26_drive_0064_sync 0000000520 2011_09_26 2011_09_26_drive_0064_sync 0000000522 2011_09_26 2011_09_26_drive_0064_sync 0000000524 2011_09_26 2011_09_26_drive_0064_sync 0000000526 2011_09_26 2011_09_26_drive_0064_sync 0000000528 2011_09_26 2011_09_26_drive_0064_sync 0000000530 2011_09_26 2011_09_26_drive_0064_sync 0000000532 2011_09_26 2011_09_26_drive_0064_sync 0000000534 2011_09_26 2011_09_26_drive_0064_sync 0000000536 2011_09_26 2011_09_26_drive_0064_sync 0000000538 2011_09_26 2011_09_26_drive_0064_sync 0000000540 2011_09_26 2011_09_26_drive_0064_sync 0000000542 2011_09_26 2011_09_26_drive_0064_sync 0000000544 2011_09_26 2011_09_26_drive_0064_sync 0000000546 2011_09_26 2011_09_26_drive_0064_sync 0000000548 2011_09_26 2011_09_26_drive_0064_sync 0000000550 2011_09_26 2011_09_26_drive_0064_sync 0000000552 2011_09_26 2011_09_26_drive_0064_sync 0000000554 2011_09_26 2011_09_26_drive_0064_sync 0000000556 2011_09_26 2011_09_26_drive_0064_sync 0000000558 2011_09_26 2011_09_26_drive_0064_sync 0000000560 2011_09_26 2011_09_26_drive_0064_sync 0000000562 2011_09_26 2011_09_26_drive_0064_sync 0000000565 2011_09_26 2011_09_26_drive_0064_sync 0000000568 2011_09_28 2011_09_28_drive_0043_sync 0000000008 2011_09_28 2011_09_28_drive_0043_sync 0000000016 2011_09_28 2011_09_28_drive_0043_sync 0000000027 2011_09_28 2011_09_28_drive_0043_sync 0000000037 2011_09_28 2011_09_28_drive_0043_sync 0000000045 2011_09_28 2011_09_28_drive_0043_sync 0000000054 2011_09_28 2011_09_28_drive_0043_sync 0000000064 2011_09_28 2011_09_28_drive_0043_sync 0000000071 2011_09_28 2011_09_28_drive_0043_sync 0000000078 2011_09_28 2011_09_28_drive_0043_sync 0000000085 2011_09_28 2011_09_28_drive_0043_sync 0000000092 2011_09_28 2011_09_28_drive_0043_sync 0000000099 2011_09_28 2011_09_28_drive_0043_sync 0000000106 2011_09_28 2011_09_28_drive_0043_sync 0000000112 2011_09_28 2011_09_28_drive_0043_sync 0000000119 2011_09_28 2011_09_28_drive_0043_sync 0000000126 2011_09_28 2011_09_28_drive_0043_sync 0000000133 2011_09_26 2011_09_26_drive_0061_sync 0000000017 2011_09_26 2011_09_26_drive_0061_sync 0000000019 2011_09_26 2011_09_26_drive_0061_sync 0000000021 2011_09_26 2011_09_26_drive_0061_sync 0000000023 2011_09_26 2011_09_26_drive_0061_sync 0000000025 2011_09_26 2011_09_26_drive_0061_sync 0000000027 2011_09_26 2011_09_26_drive_0061_sync 0000000029 2011_09_26 2011_09_26_drive_0061_sync 0000000031 2011_09_26 2011_09_26_drive_0061_sync 0000000033 2011_09_26 2011_09_26_drive_0061_sync 0000000035 2011_09_26 2011_09_26_drive_0061_sync 0000000037 2011_09_26 2011_09_26_drive_0061_sync 0000000039 2011_09_26 2011_09_26_drive_0061_sync 0000000041 2011_09_26 2011_09_26_drive_0061_sync 0000000043 2011_09_26 2011_09_26_drive_0061_sync 0000000045 2011_09_26 2011_09_26_drive_0061_sync 0000000047 2011_09_26 2011_09_26_drive_0061_sync 0000000049 2011_09_26 2011_09_26_drive_0061_sync 0000000051 2011_09_26 2011_09_26_drive_0061_sync 0000000053 2011_09_26 2011_09_26_drive_0061_sync 0000000055 2011_09_26 2011_09_26_drive_0061_sync 0000000057 2011_09_26 2011_09_26_drive_0061_sync 0000000059 2011_09_26 2011_09_26_drive_0061_sync 0000000061 2011_09_26 2011_09_26_drive_0061_sync 0000000063 2011_09_26 2011_09_26_drive_0061_sync 0000000065 2011_09_26 2011_09_26_drive_0061_sync 0000000067 2011_09_26 2011_09_26_drive_0061_sync 0000000069 2011_09_26 2011_09_26_drive_0061_sync 0000000071 2011_09_26 2011_09_26_drive_0061_sync 0000000073 2011_09_26 2011_09_26_drive_0061_sync 0000000075 2011_09_26 2011_09_26_drive_0061_sync 0000000077 2011_09_26 2011_09_26_drive_0061_sync 0000000079 2011_09_26 2011_09_26_drive_0061_sync 0000000081 2011_09_26 2011_09_26_drive_0061_sync 0000000083 2011_09_26 2011_09_26_drive_0061_sync 0000000085 2011_09_26 2011_09_26_drive_0061_sync 0000000087 2011_09_26 2011_09_26_drive_0061_sync 0000000089 2011_09_26 2011_09_26_drive_0061_sync 0000000091 2011_09_26 2011_09_26_drive_0061_sync 0000000093 2011_09_26 2011_09_26_drive_0061_sync 0000000095 2011_09_26 2011_09_26_drive_0061_sync 0000000097 2011_09_26 2011_09_26_drive_0061_sync 0000000099 2011_09_26 2011_09_26_drive_0061_sync 0000000101 2011_09_26 2011_09_26_drive_0061_sync 0000000103 2011_09_26 2011_09_26_drive_0061_sync 0000000105 2011_09_26 2011_09_26_drive_0061_sync 0000000107 2011_09_26 2011_09_26_drive_0061_sync 0000000109 2011_09_26 2011_09_26_drive_0061_sync 0000000111 2011_09_26 2011_09_26_drive_0061_sync 0000000113 2011_09_26 2011_09_26_drive_0061_sync 0000000115 2011_09_26 2011_09_26_drive_0061_sync 0000000117 2011_09_26 2011_09_26_drive_0061_sync 0000000119 2011_09_26 2011_09_26_drive_0061_sync 0000000121 2011_09_26 2011_09_26_drive_0061_sync 0000000123 2011_09_26 2011_09_26_drive_0061_sync 0000000125 2011_09_26 2011_09_26_drive_0061_sync 0000000127 2011_09_26 2011_09_26_drive_0061_sync 0000000129 2011_09_26 2011_09_26_drive_0061_sync 0000000131 2011_09_26 2011_09_26_drive_0061_sync 0000000133 2011_09_26 2011_09_26_drive_0061_sync 0000000135 2011_09_26 2011_09_26_drive_0061_sync 0000000137 2011_09_26 2011_09_26_drive_0061_sync 0000000139 2011_09_26 2011_09_26_drive_0061_sync 0000000141 2011_09_26 2011_09_26_drive_0061_sync 0000000143 2011_09_26 2011_09_26_drive_0061_sync 0000000145 2011_09_26 2011_09_26_drive_0061_sync 0000000147 2011_09_26 2011_09_26_drive_0061_sync 0000000149 2011_09_26 2011_09_26_drive_0061_sync 0000000151 2011_09_26 2011_09_26_drive_0061_sync 0000000153 2011_09_26 2011_09_26_drive_0061_sync 0000000155 2011_09_26 2011_09_26_drive_0061_sync 0000000157 2011_09_26 2011_09_26_drive_0061_sync 0000000159 2011_09_26 2011_09_26_drive_0061_sync 0000000161 2011_09_26 2011_09_26_drive_0061_sync 0000000163 2011_09_26 2011_09_26_drive_0061_sync 0000000165 2011_09_26 2011_09_26_drive_0061_sync 0000000167 2011_09_26 2011_09_26_drive_0061_sync 0000000169 2011_09_26 2011_09_26_drive_0061_sync 0000000171 2011_09_26 2011_09_26_drive_0061_sync 0000000173 2011_09_26 2011_09_26_drive_0061_sync 0000000175 2011_09_26 2011_09_26_drive_0061_sync 0000000177 2011_09_26 2011_09_26_drive_0061_sync 0000000179 2011_09_26 2011_09_26_drive_0061_sync 0000000181 2011_09_26 2011_09_26_drive_0061_sync 0000000183 2011_09_26 2011_09_26_drive_0061_sync 0000000185 2011_09_26 2011_09_26_drive_0061_sync 0000000187 2011_09_26 2011_09_26_drive_0061_sync 0000000189 2011_09_26 2011_09_26_drive_0061_sync 0000000191 2011_09_26 2011_09_26_drive_0061_sync 0000000193 2011_09_26 2011_09_26_drive_0061_sync 0000000195 2011_09_26 2011_09_26_drive_0061_sync 0000000197 2011_09_26 2011_09_26_drive_0061_sync 0000000199 2011_09_26 2011_09_26_drive_0061_sync 0000000201 2011_09_26 2011_09_26_drive_0061_sync 0000000203 2011_09_26 2011_09_26_drive_0061_sync 0000000205 2011_09_26 2011_09_26_drive_0061_sync 0000000207 2011_09_26 2011_09_26_drive_0061_sync 0000000209 2011_09_26 2011_09_26_drive_0061_sync 0000000211 2011_09_26 2011_09_26_drive_0061_sync 0000000213 2011_09_26 2011_09_26_drive_0061_sync 0000000215 2011_09_26 2011_09_26_drive_0061_sync 0000000217 2011_09_26 2011_09_26_drive_0061_sync 0000000219 2011_09_26 2011_09_26_drive_0061_sync 0000000221 2011_09_26 2011_09_26_drive_0061_sync 0000000223 2011_09_26 2011_09_26_drive_0061_sync 0000000225 2011_09_26 2011_09_26_drive_0061_sync 0000000227 2011_09_26 2011_09_26_drive_0061_sync 0000000229 2011_09_26 2011_09_26_drive_0061_sync 0000000231 2011_09_26 2011_09_26_drive_0061_sync 0000000233 2011_09_26 2011_09_26_drive_0061_sync 0000000235 2011_09_26 2011_09_26_drive_0061_sync 0000000237 2011_09_26 2011_09_26_drive_0061_sync 0000000239 2011_09_26 2011_09_26_drive_0061_sync 0000000241 2011_09_26 2011_09_26_drive_0061_sync 0000000243 2011_09_26 2011_09_26_drive_0061_sync 0000000245 2011_09_26 2011_09_26_drive_0061_sync 0000000246 2011_09_26 2011_09_26_drive_0061_sync 0000000248 2011_09_26 2011_09_26_drive_0061_sync 0000000250 2011_09_26 2011_09_26_drive_0061_sync 0000000252 2011_09_26 2011_09_26_drive_0061_sync 0000000254 2011_09_26 2011_09_26_drive_0061_sync 0000000256 2011_09_26 2011_09_26_drive_0061_sync 0000000257 2011_09_26 2011_09_26_drive_0061_sync 0000000258 2011_09_26 2011_09_26_drive_0061_sync 0000000260 2011_09_26 2011_09_26_drive_0061_sync 0000000262 2011_09_26 2011_09_26_drive_0061_sync 0000000264 2011_09_26 2011_09_26_drive_0061_sync 0000000266 2011_09_26 2011_09_26_drive_0061_sync 0000000267 2011_09_26 2011_09_26_drive_0061_sync 0000000269 2011_09_26 2011_09_26_drive_0061_sync 0000000270 2011_09_26 2011_09_26_drive_0061_sync 0000000272 2011_09_26 2011_09_26_drive_0061_sync 0000000273 2011_09_26 2011_09_26_drive_0061_sync 0000000275 2011_09_26 2011_09_26_drive_0061_sync 0000000277 2011_09_26 2011_09_26_drive_0061_sync 0000000279 2011_09_26 2011_09_26_drive_0061_sync 0000000281 2011_09_26 2011_09_26_drive_0061_sync 0000000283 2011_09_26 2011_09_26_drive_0061_sync 0000000285 2011_09_26 2011_09_26_drive_0061_sync 0000000287 2011_09_26 2011_09_26_drive_0061_sync 0000000289 2011_09_26 2011_09_26_drive_0061_sync 0000000291 2011_09_26 2011_09_26_drive_0061_sync 0000000293 2011_09_26 2011_09_26_drive_0061_sync 0000000295 2011_09_26 2011_09_26_drive_0061_sync 0000000297 2011_09_26 2011_09_26_drive_0061_sync 0000000299 2011_09_26 2011_09_26_drive_0061_sync 0000000301 2011_09_26 2011_09_26_drive_0061_sync 0000000303 2011_09_26 2011_09_26_drive_0061_sync 0000000305 2011_09_26 2011_09_26_drive_0061_sync 0000000307 2011_09_26 2011_09_26_drive_0061_sync 0000000309 2011_09_26 2011_09_26_drive_0061_sync 0000000311 2011_09_26 2011_09_26_drive_0061_sync 0000000313 2011_09_26 2011_09_26_drive_0061_sync 0000000315 2011_09_26 2011_09_26_drive_0061_sync 0000000317 2011_09_26 2011_09_26_drive_0061_sync 0000000319 2011_09_26 2011_09_26_drive_0061_sync 0000000321 2011_09_26 2011_09_26_drive_0061_sync 0000000323 2011_09_26 2011_09_26_drive_0061_sync 0000000325 2011_09_26 2011_09_26_drive_0061_sync 0000000327 2011_09_26 2011_09_26_drive_0061_sync 0000000329 2011_09_26 2011_09_26_drive_0061_sync 0000000331 2011_09_26 2011_09_26_drive_0061_sync 0000000333 2011_09_26 2011_09_26_drive_0061_sync 0000000335 2011_09_26 2011_09_26_drive_0061_sync 0000000337 2011_09_26 2011_09_26_drive_0061_sync 0000000339 2011_09_26 2011_09_26_drive_0061_sync 0000000341 2011_09_26 2011_09_26_drive_0061_sync 0000000343 2011_09_26 2011_09_26_drive_0061_sync 0000000345 2011_09_26 2011_09_26_drive_0061_sync 0000000347 2011_09_26 2011_09_26_drive_0061_sync 0000000349 2011_09_26 2011_09_26_drive_0061_sync 0000000351 2011_09_26 2011_09_26_drive_0061_sync 0000000353 2011_09_26 2011_09_26_drive_0061_sync 0000000355 2011_09_26 2011_09_26_drive_0061_sync 0000000357 2011_09_26 2011_09_26_drive_0061_sync 0000000359 2011_09_26 2011_09_26_drive_0061_sync 0000000361 2011_09_26 2011_09_26_drive_0061_sync 0000000363 2011_09_26 2011_09_26_drive_0061_sync 0000000365 2011_09_26 2011_09_26_drive_0061_sync 0000000367 2011_09_26 2011_09_26_drive_0061_sync 0000000369 2011_09_26 2011_09_26_drive_0061_sync 0000000371 2011_09_26 2011_09_26_drive_0061_sync 0000000373 2011_09_26 2011_09_26_drive_0061_sync 0000000375 2011_09_26 2011_09_26_drive_0061_sync 0000000377 2011_09_26 2011_09_26_drive_0061_sync 0000000379 2011_09_26 2011_09_26_drive_0061_sync 0000000381 2011_09_26 2011_09_26_drive_0061_sync 0000000383 2011_09_26 2011_09_26_drive_0061_sync 0000000385 2011_09_26 2011_09_26_drive_0061_sync 0000000387 2011_09_26 2011_09_26_drive_0061_sync 0000000389 2011_09_26 2011_09_26_drive_0061_sync 0000000391 2011_09_26 2011_09_26_drive_0061_sync 0000000393 2011_09_26 2011_09_26_drive_0061_sync 0000000395 2011_09_26 2011_09_26_drive_0061_sync 0000000397 2011_09_26 2011_09_26_drive_0061_sync 0000000399 2011_09_26 2011_09_26_drive_0061_sync 0000000401 2011_09_26 2011_09_26_drive_0061_sync 0000000403 2011_09_26 2011_09_26_drive_0061_sync 0000000405 2011_09_26 2011_09_26_drive_0061_sync 0000000407 2011_09_26 2011_09_26_drive_0061_sync 0000000409 2011_09_26 2011_09_26_drive_0061_sync 0000000411 2011_09_26 2011_09_26_drive_0061_sync 0000000413 2011_09_26 2011_09_26_drive_0061_sync 0000000415 2011_09_26 2011_09_26_drive_0061_sync 0000000417 2011_09_26 2011_09_26_drive_0061_sync 0000000419 2011_09_26 2011_09_26_drive_0061_sync 0000000421 2011_09_26 2011_09_26_drive_0061_sync 0000000423 2011_09_26 2011_09_26_drive_0061_sync 0000000425 2011_09_26 2011_09_26_drive_0061_sync 0000000427 2011_09_26 2011_09_26_drive_0061_sync 0000000429 2011_09_26 2011_09_26_drive_0061_sync 0000000430 2011_09_26 2011_09_26_drive_0061_sync 0000000431 2011_09_26 2011_09_26_drive_0061_sync 0000000432 2011_09_26 2011_09_26_drive_0061_sync 0000000433 2011_09_26 2011_09_26_drive_0061_sync 0000000434 2011_09_26 2011_09_26_drive_0061_sync 0000000435 2011_09_26 2011_09_26_drive_0061_sync 0000000436 2011_09_26 2011_09_26_drive_0061_sync 0000000438 2011_09_26 2011_09_26_drive_0061_sync 0000000440 2011_09_26 2011_09_26_drive_0061_sync 0000000442 2011_09_26 2011_09_26_drive_0061_sync 0000000444 2011_09_26 2011_09_26_drive_0061_sync 0000000446 2011_09_26 2011_09_26_drive_0061_sync 0000000448 2011_09_26 2011_09_26_drive_0061_sync 0000000450 2011_09_26 2011_09_26_drive_0061_sync 0000000452 2011_09_26 2011_09_26_drive_0061_sync 0000000454 2011_09_26 2011_09_26_drive_0061_sync 0000000456 2011_09_26 2011_09_26_drive_0061_sync 0000000458 2011_09_26 2011_09_26_drive_0061_sync 0000000460 2011_09_26 2011_09_26_drive_0061_sync 0000000462 2011_09_26 2011_09_26_drive_0061_sync 0000000464 2011_09_26 2011_09_26_drive_0061_sync 0000000466 2011_09_26 2011_09_26_drive_0061_sync 0000000468 2011_09_26 2011_09_26_drive_0061_sync 0000000470 2011_09_26 2011_09_26_drive_0061_sync 0000000472 2011_09_26 2011_09_26_drive_0061_sync 0000000474 2011_09_26 2011_09_26_drive_0061_sync 0000000476 2011_09_26 2011_09_26_drive_0061_sync 0000000478 2011_09_26 2011_09_26_drive_0061_sync 0000000480 2011_09_26 2011_09_26_drive_0061_sync 0000000482 2011_09_26 2011_09_26_drive_0061_sync 0000000484 2011_09_26 2011_09_26_drive_0061_sync 0000000486 2011_09_26 2011_09_26_drive_0061_sync 0000000488 2011_09_26 2011_09_26_drive_0061_sync 0000000490 2011_09_26 2011_09_26_drive_0061_sync 0000000493 2011_09_26 2011_09_26_drive_0061_sync 0000000495 2011_09_26 2011_09_26_drive_0061_sync 0000000497 2011_09_26 2011_09_26_drive_0061_sync 0000000499 2011_09_26 2011_09_26_drive_0061_sync 0000000501 2011_09_26 2011_09_26_drive_0061_sync 0000000503 2011_09_26 2011_09_26_drive_0061_sync 0000000505 2011_09_26 2011_09_26_drive_0061_sync 0000000507 2011_09_26 2011_09_26_drive_0061_sync 0000000509 2011_09_26 2011_09_26_drive_0061_sync 0000000511 2011_09_26 2011_09_26_drive_0061_sync 0000000513 2011_09_26 2011_09_26_drive_0061_sync 0000000515 2011_09_26 2011_09_26_drive_0061_sync 0000000517 2011_09_26 2011_09_26_drive_0061_sync 0000000519 2011_09_26 2011_09_26_drive_0061_sync 0000000521 2011_09_26 2011_09_26_drive_0061_sync 0000000523 2011_09_26 2011_09_26_drive_0061_sync 0000000525 2011_09_26 2011_09_26_drive_0061_sync 0000000527 2011_09_26 2011_09_26_drive_0061_sync 0000000529 2011_09_26 2011_09_26_drive_0061_sync 0000000531 2011_09_26 2011_09_26_drive_0061_sync 0000000533 2011_09_26 2011_09_26_drive_0061_sync 0000000535 2011_09_26 2011_09_26_drive_0061_sync 0000000537 2011_09_26 2011_09_26_drive_0061_sync 0000000539 2011_09_26 2011_09_26_drive_0061_sync 0000000541 2011_09_26 2011_09_26_drive_0061_sync 0000000543 2011_09_26 2011_09_26_drive_0061_sync 0000000545 2011_09_26 2011_09_26_drive_0061_sync 0000000547 2011_09_26 2011_09_26_drive_0061_sync 0000000549 2011_09_26 2011_09_26_drive_0061_sync 0000000551 2011_09_26 2011_09_26_drive_0061_sync 0000000554 2011_09_26 2011_09_26_drive_0052_sync 0000000007 2011_09_26 2011_09_26_drive_0052_sync 0000000014 2011_09_26 2011_09_26_drive_0052_sync 0000000021 2011_09_26 2011_09_26_drive_0052_sync 0000000031 2011_09_26 2011_09_26_drive_0113_sync 0000000003 2011_09_26 2011_09_26_drive_0113_sync 0000000006 2011_09_26 2011_09_26_drive_0113_sync 0000000009 2011_09_26 2011_09_26_drive_0113_sync 0000000062 2011_09_26 2011_09_26_drive_0113_sync 0000000065 2011_09_26 2011_09_26_drive_0020_sync 0000000002 2011_09_26 2011_09_26_drive_0020_sync 0000000004 2011_09_26 2011_09_26_drive_0020_sync 0000000007 2011_09_26 2011_09_26_drive_0020_sync 0000000010 2011_09_26 2011_09_26_drive_0020_sync 0000000013 2011_09_26 2011_09_26_drive_0020_sync 0000000017 2011_09_26 2011_09_26_drive_0020_sync 0000000021 2011_09_26 2011_09_26_drive_0020_sync 0000000025 2011_09_26 2011_09_26_drive_0020_sync 0000000030 2011_09_26 2011_09_26_drive_0020_sync 0000000038 2011_09_26 2011_09_26_drive_0020_sync 0000000058 2011_09_26 2011_09_26_drive_0020_sync 0000000066 2011_09_26 2011_09_26_drive_0020_sync 0000000073 2011_09_26 2011_09_26_drive_0020_sync 0000000080 2011_09_26 2011_09_26_drive_0060_sync 0000000004 2011_09_26 2011_09_26_drive_0060_sync 0000000008 2011_09_26 2011_09_26_drive_0060_sync 0000000011 2011_09_26 2011_09_26_drive_0060_sync 0000000014 2011_09_26 2011_09_26_drive_0060_sync 0000000018 2011_09_26 2011_09_26_drive_0060_sync 0000000023 2011_09_26 2011_09_26_drive_0060_sync 0000000028 2011_09_26 2011_09_26_drive_0060_sync 0000000033 2011_09_26 2011_09_26_drive_0060_sync 0000000037 2011_09_26 2011_09_26_drive_0060_sync 0000000041 2011_09_26 2011_09_26_drive_0060_sync 0000000045 2011_09_26 2011_09_26_drive_0060_sync 0000000048 2011_09_26 2011_09_26_drive_0060_sync 0000000051 2011_09_26 2011_09_26_drive_0060_sync 0000000054 2011_09_26 2011_09_26_drive_0060_sync 0000000057 2011_09_26 2011_09_26_drive_0060_sync 0000000060 2011_09_26 2011_09_26_drive_0060_sync 0000000063 2011_09_26 2011_09_26_drive_0060_sync 0000000069 2011_09_28 2011_09_28_drive_0034_sync 0000000012 2011_09_28 2011_09_28_drive_0034_sync 0000000024 2011_09_28 2011_09_28_drive_0034_sync 0000000037 2011_09_28 2011_09_28_drive_0156_sync 0000000015 2011_09_26 2011_09_26_drive_0046_sync 0000000002 2011_09_26 2011_09_26_drive_0046_sync 0000000004 2011_09_26 2011_09_26_drive_0046_sync 0000000006 2011_09_26 2011_09_26_drive_0046_sync 0000000009 2011_09_26 2011_09_26_drive_0046_sync 0000000011 2011_09_26 2011_09_26_drive_0046_sync 0000000013 2011_09_26 2011_09_26_drive_0046_sync 0000000015 2011_09_26 2011_09_26_drive_0046_sync 0000000017 2011_09_26 2011_09_26_drive_0046_sync 0000000056 2011_09_26 2011_09_26_drive_0046_sync 0000000058 2011_09_26 2011_09_26_drive_0046_sync 0000000060 2011_09_26 2011_09_26_drive_0046_sync 0000000062 2011_09_26 2011_09_26_drive_0046_sync 0000000064 2011_09_26 2011_09_26_drive_0046_sync 0000000066 2011_09_26 2011_09_26_drive_0046_sync 0000000068 2011_09_26 2011_09_26_drive_0046_sync 0000000070 2011_09_26 2011_09_26_drive_0046_sync 0000000072 2011_09_26 2011_09_26_drive_0046_sync 0000000096 2011_09_26 2011_09_26_drive_0046_sync 0000000098 2011_09_26 2011_09_26_drive_0046_sync 0000000100 2011_09_26 2011_09_26_drive_0046_sync 0000000102 2011_09_26 2011_09_26_drive_0046_sync 0000000104 2011_09_26 2011_09_26_drive_0046_sync 0000000106 2011_09_26 2011_09_26_drive_0046_sync 0000000108 2011_09_26 2011_09_26_drive_0046_sync 0000000110 2011_09_26 2011_09_26_drive_0046_sync 0000000112 2011_09_26 2011_09_26_drive_0046_sync 0000000114 2011_09_26 2011_09_26_drive_0046_sync 0000000116 2011_09_28 2011_09_28_drive_0138_sync 0000000022 2011_09_28 2011_09_28_drive_0138_sync 0000000042 2011_09_28 2011_09_28_drive_0089_sync 0000000008 2011_09_28 2011_09_28_drive_0089_sync 0000000016 2011_09_28 2011_09_28_drive_0089_sync 0000000024 2011_09_28 2011_09_28_drive_0089_sync 0000000033 2011_09_28 2011_09_28_drive_0045_sync 0000000002 2011_09_28 2011_09_28_drive_0045_sync 0000000004 2011_09_28 2011_09_28_drive_0045_sync 0000000006 2011_09_28 2011_09_28_drive_0045_sync 0000000008 2011_09_28 2011_09_28_drive_0045_sync 0000000010 2011_09_28 2011_09_28_drive_0045_sync 0000000012 2011_09_28 2011_09_28_drive_0045_sync 0000000014 2011_09_28 2011_09_28_drive_0045_sync 0000000016 2011_09_28 2011_09_28_drive_0045_sync 0000000018 2011_09_28 2011_09_28_drive_0045_sync 0000000020 2011_09_28 2011_09_28_drive_0045_sync 0000000022 2011_09_28 2011_09_28_drive_0045_sync 0000000024 2011_09_28 2011_09_28_drive_0045_sync 0000000026 2011_09_28 2011_09_28_drive_0045_sync 0000000028 2011_09_28 2011_09_28_drive_0045_sync 0000000030 2011_09_28 2011_09_28_drive_0045_sync 0000000032 2011_09_28 2011_09_28_drive_0045_sync 0000000034 2011_09_28 2011_09_28_drive_0045_sync 0000000036 2011_09_28 2011_09_28_drive_0045_sync 0000000038 2011_09_28 2011_09_28_drive_0045_sync 0000000040 2011_09_28 2011_09_28_drive_0045_sync 0000000042 2011_09_29 2011_09_29_drive_0004_sync 0000000025 2011_09_29 2011_09_29_drive_0004_sync 0000000026 2011_09_29 2011_09_29_drive_0004_sync 0000000027 2011_09_29 2011_09_29_drive_0004_sync 0000000028 2011_09_29 2011_09_29_drive_0004_sync 0000000029 2011_09_29 2011_09_29_drive_0004_sync 0000000030 2011_09_29 2011_09_29_drive_0004_sync 0000000031 2011_09_29 2011_09_29_drive_0004_sync 0000000032 2011_09_29 2011_09_29_drive_0004_sync 0000000033 2011_09_29 2011_09_29_drive_0004_sync 0000000034 2011_09_29 2011_09_29_drive_0004_sync 0000000035 2011_09_29 2011_09_29_drive_0004_sync 0000000036 2011_09_29 2011_09_29_drive_0004_sync 0000000037 2011_09_29 2011_09_29_drive_0004_sync 0000000038 2011_09_29 2011_09_29_drive_0004_sync 0000000054 2011_09_29 2011_09_29_drive_0004_sync 0000000056 2011_09_29 2011_09_29_drive_0004_sync 0000000058 2011_09_29 2011_09_29_drive_0004_sync 0000000060 2011_09_29 2011_09_29_drive_0004_sync 0000000062 2011_09_29 2011_09_29_drive_0004_sync 0000000064 2011_09_29 2011_09_29_drive_0004_sync 0000000066 2011_09_29 2011_09_29_drive_0004_sync 0000000068 2011_09_29 2011_09_29_drive_0004_sync 0000000070 2011_09_29 2011_09_29_drive_0004_sync 0000000072 2011_09_29 2011_09_29_drive_0004_sync 0000000073 2011_09_29 2011_09_29_drive_0004_sync 0000000074 2011_09_29 2011_09_29_drive_0004_sync 0000000075 2011_09_29 2011_09_29_drive_0004_sync 0000000076 2011_09_29 2011_09_29_drive_0004_sync 0000000077 2011_09_29 2011_09_29_drive_0004_sync 0000000078 2011_09_29 2011_09_29_drive_0004_sync 0000000079 2011_09_29 2011_09_29_drive_0004_sync 0000000080 2011_09_29 2011_09_29_drive_0004_sync 0000000081 2011_09_29 2011_09_29_drive_0004_sync 0000000083 2011_09_29 2011_09_29_drive_0004_sync 0000000085 2011_09_29 2011_09_29_drive_0004_sync 0000000087 2011_09_29 2011_09_29_drive_0004_sync 0000000089 2011_09_29 2011_09_29_drive_0004_sync 0000000090 2011_09_29 2011_09_29_drive_0004_sync 0000000091 2011_09_29 2011_09_29_drive_0004_sync 0000000092 2011_09_29 2011_09_29_drive_0004_sync 0000000093 2011_09_29 2011_09_29_drive_0004_sync 0000000095 2011_09_29 2011_09_29_drive_0004_sync 0000000097 2011_09_29 2011_09_29_drive_0004_sync 0000000099 2011_09_29 2011_09_29_drive_0004_sync 0000000102 2011_09_29 2011_09_29_drive_0004_sync 0000000105 2011_09_29 2011_09_29_drive_0004_sync 0000000108 2011_09_29 2011_09_29_drive_0004_sync 0000000112 2011_09_29 2011_09_29_drive_0004_sync 0000000116 2011_09_29 2011_09_29_drive_0004_sync 0000000121 2011_09_29 2011_09_29_drive_0004_sync 0000000128 2011_09_29 2011_09_29_drive_0004_sync 0000000137 2011_09_29 2011_09_29_drive_0004_sync 0000000147 2011_09_29 2011_09_29_drive_0004_sync 0000000156 2011_09_29 2011_09_29_drive_0004_sync 0000000161 2011_09_29 2011_09_29_drive_0004_sync 0000000163 2011_09_29 2011_09_29_drive_0004_sync 0000000166 2011_09_29 2011_09_29_drive_0004_sync 0000000172 2011_09_29 2011_09_29_drive_0004_sync 0000000176 2011_09_29 2011_09_29_drive_0004_sync 0000000180 2011_09_29 2011_09_29_drive_0004_sync 0000000182 2011_09_29 2011_09_29_drive_0004_sync 0000000184 2011_09_29 2011_09_29_drive_0004_sync 0000000193 2011_09_29 2011_09_29_drive_0004_sync 0000000195 2011_09_29 2011_09_29_drive_0004_sync 0000000200 2011_09_29 2011_09_29_drive_0004_sync 0000000206 2011_09_29 2011_09_29_drive_0004_sync 0000000212 2011_09_29 2011_09_29_drive_0004_sync 0000000218 2011_09_29 2011_09_29_drive_0004_sync 0000000222 2011_09_29 2011_09_29_drive_0004_sync 0000000225 2011_09_29 2011_09_29_drive_0004_sync 0000000236 2011_09_29 2011_09_29_drive_0004_sync 0000000239 2011_09_29 2011_09_29_drive_0004_sync 0000000244 2011_09_29 2011_09_29_drive_0004_sync 0000000248 2011_09_29 2011_09_29_drive_0004_sync 0000000251 2011_09_29 2011_09_29_drive_0004_sync 0000000253 2011_09_29 2011_09_29_drive_0004_sync 0000000255 2011_09_29 2011_09_29_drive_0004_sync 0000000257 2011_09_29 2011_09_29_drive_0004_sync 0000000259 2011_09_29 2011_09_29_drive_0004_sync 0000000261 2011_09_29 2011_09_29_drive_0004_sync 0000000263 2011_09_29 2011_09_29_drive_0004_sync 0000000267 2011_09_29 2011_09_29_drive_0004_sync 0000000271 2011_09_29 2011_09_29_drive_0004_sync 0000000273 2011_09_29 2011_09_29_drive_0004_sync 0000000275 2011_09_29 2011_09_29_drive_0004_sync 0000000277 2011_09_29 2011_09_29_drive_0004_sync 0000000279 2011_09_29 2011_09_29_drive_0004_sync 0000000281 2011_09_29 2011_09_29_drive_0004_sync 0000000284 2011_09_29 2011_09_29_drive_0004_sync 0000000287 2011_09_29 2011_09_29_drive_0004_sync 0000000289 2011_09_29 2011_09_29_drive_0004_sync 0000000291 2011_09_29 2011_09_29_drive_0004_sync 0000000294 2011_09_29 2011_09_29_drive_0004_sync 0000000297 2011_09_29 2011_09_29_drive_0004_sync 0000000299 2011_09_29 2011_09_29_drive_0004_sync 0000000301 2011_09_29 2011_09_29_drive_0004_sync 0000000303 2011_09_29 2011_09_29_drive_0004_sync 0000000311 2011_09_29 2011_09_29_drive_0004_sync 0000000313 2011_09_29 2011_09_29_drive_0004_sync 0000000315 2011_09_29 2011_09_29_drive_0004_sync 0000000317 2011_09_29 2011_09_29_drive_0004_sync 0000000324 2011_09_29 2011_09_29_drive_0004_sync 0000000328 2011_09_28 2011_09_28_drive_0047_sync 0000000002 2011_09_28 2011_09_28_drive_0047_sync 0000000005 2011_09_28 2011_09_28_drive_0047_sync 0000000007 2011_09_28 2011_09_28_drive_0047_sync 0000000010 2011_09_28 2011_09_28_drive_0047_sync 0000000013 2011_09_28 2011_09_28_drive_0047_sync 0000000016 2011_09_28 2011_09_28_drive_0047_sync 0000000019 2011_09_28 2011_09_28_drive_0047_sync 0000000022 2011_09_28 2011_09_28_drive_0047_sync 0000000025 2011_09_28 2011_09_28_drive_0047_sync 0000000028 2011_09_26 2011_09_26_drive_0029_sync 0000000001 2011_09_26 2011_09_26_drive_0029_sync 0000000002 2011_09_26 2011_09_26_drive_0029_sync 0000000003 2011_09_26 2011_09_26_drive_0029_sync 0000000004 2011_09_26 2011_09_26_drive_0029_sync 0000000005 2011_09_26 2011_09_26_drive_0029_sync 0000000006 2011_09_26 2011_09_26_drive_0029_sync 0000000007 2011_09_26 2011_09_26_drive_0029_sync 0000000008 2011_09_26 2011_09_26_drive_0029_sync 0000000009 2011_09_26 2011_09_26_drive_0029_sync 0000000010 2011_09_26 2011_09_26_drive_0029_sync 0000000011 2011_09_26 2011_09_26_drive_0029_sync 0000000012 2011_09_26 2011_09_26_drive_0029_sync 0000000013 2011_09_26 2011_09_26_drive_0029_sync 0000000014 2011_09_26 2011_09_26_drive_0029_sync 0000000015 2011_09_26 2011_09_26_drive_0029_sync 0000000016 2011_09_26 2011_09_26_drive_0029_sync 0000000118 2011_09_26 2011_09_26_drive_0029_sync 0000000122 2011_09_26 2011_09_26_drive_0029_sync 0000000125 2011_09_26 2011_09_26_drive_0029_sync 0000000128 2011_09_26 2011_09_26_drive_0029_sync 0000000132 2011_09_26 2011_09_26_drive_0029_sync 0000000136 2011_09_26 2011_09_26_drive_0029_sync 0000000140 2011_09_26 2011_09_26_drive_0029_sync 0000000144 2011_09_26 2011_09_26_drive_0029_sync 0000000148 2011_09_26 2011_09_26_drive_0029_sync 0000000151 2011_09_26 2011_09_26_drive_0029_sync 0000000154 2011_09_26 2011_09_26_drive_0029_sync 0000000157 2011_09_26 2011_09_26_drive_0029_sync 0000000159 2011_09_26 2011_09_26_drive_0029_sync 0000000161 2011_09_26 2011_09_26_drive_0029_sync 0000000163 2011_09_26 2011_09_26_drive_0029_sync 0000000165 2011_09_26 2011_09_26_drive_0029_sync 0000000167 2011_09_26 2011_09_26_drive_0029_sync 0000000169 2011_09_26 2011_09_26_drive_0029_sync 0000000171 2011_09_26 2011_09_26_drive_0001_sync 0000000001 2011_09_26 2011_09_26_drive_0001_sync 0000000002 2011_09_26 2011_09_26_drive_0001_sync 0000000003 2011_09_26 2011_09_26_drive_0001_sync 0000000004 2011_09_26 2011_09_26_drive_0001_sync 0000000005 2011_09_26 2011_09_26_drive_0001_sync 0000000006 2011_09_26 2011_09_26_drive_0001_sync 0000000007 2011_09_26 2011_09_26_drive_0001_sync 0000000008 2011_09_26 2011_09_26_drive_0001_sync 0000000009 2011_09_26 2011_09_26_drive_0001_sync 0000000010 2011_09_26 2011_09_26_drive_0001_sync 0000000011 2011_09_26 2011_09_26_drive_0001_sync 0000000012 2011_09_26 2011_09_26_drive_0001_sync 0000000013 2011_09_26 2011_09_26_drive_0001_sync 0000000014 2011_09_26 2011_09_26_drive_0001_sync 0000000015 2011_09_26 2011_09_26_drive_0001_sync 0000000016 2011_09_26 2011_09_26_drive_0001_sync 0000000017 2011_09_26 2011_09_26_drive_0001_sync 0000000018 2011_09_26 2011_09_26_drive_0001_sync 0000000019 2011_09_26 2011_09_26_drive_0001_sync 0000000020 2011_09_26 2011_09_26_drive_0001_sync 0000000021 2011_09_26 2011_09_26_drive_0001_sync 0000000022 2011_09_26 2011_09_26_drive_0001_sync 0000000023 2011_09_26 2011_09_26_drive_0001_sync 0000000024 2011_09_26 2011_09_26_drive_0001_sync 0000000025 2011_09_26 2011_09_26_drive_0001_sync 0000000026 2011_09_26 2011_09_26_drive_0001_sync 0000000027 2011_09_26 2011_09_26_drive_0001_sync 0000000028 2011_09_26 2011_09_26_drive_0001_sync 0000000029 2011_09_26 2011_09_26_drive_0001_sync 0000000030 2011_09_26 2011_09_26_drive_0001_sync 0000000031 2011_09_26 2011_09_26_drive_0001_sync 0000000032 2011_09_26 2011_09_26_drive_0001_sync 0000000033 2011_09_26 2011_09_26_drive_0001_sync 0000000035 2011_09_26 2011_09_26_drive_0001_sync 0000000037 2011_09_26 2011_09_26_drive_0001_sync 0000000039 2011_09_26 2011_09_26_drive_0001_sync 0000000041 2011_09_26 2011_09_26_drive_0001_sync 0000000043 2011_09_26 2011_09_26_drive_0001_sync 0000000045 2011_09_26 2011_09_26_drive_0001_sync 0000000047 2011_09_26 2011_09_26_drive_0001_sync 0000000049 2011_09_26 2011_09_26_drive_0001_sync 0000000051 2011_09_26 2011_09_26_drive_0001_sync 0000000053 2011_09_26 2011_09_26_drive_0001_sync 0000000055 2011_09_26 2011_09_26_drive_0001_sync 0000000057 2011_09_26 2011_09_26_drive_0001_sync 0000000059 2011_09_26 2011_09_26_drive_0001_sync 0000000061 2011_09_26 2011_09_26_drive_0001_sync 0000000064 2011_09_26 2011_09_26_drive_0001_sync 0000000067 2011_09_26 2011_09_26_drive_0001_sync 0000000091 2011_09_26 2011_09_26_drive_0001_sync 0000000101 2011_09_28 2011_09_28_drive_0035_sync 0000000006 2011_09_28 2011_09_28_drive_0035_sync 0000000011 2011_09_28 2011_09_28_drive_0035_sync 0000000016 2011_09_28 2011_09_28_drive_0035_sync 0000000021 2011_09_28 2011_09_28_drive_0035_sync 0000000029 2011_09_28 2011_09_28_drive_0135_sync 0000000008 2011_09_28 2011_09_28_drive_0135_sync 0000000017 2011_09_28 2011_09_28_drive_0135_sync 0000000032 2011_09_28 2011_09_28_drive_0161_sync 0000000014 2011_09_28 2011_09_28_drive_0161_sync 0000000021 2011_09_28 2011_09_28_drive_0161_sync 0000000029 2011_09_28 2011_09_28_drive_0155_sync 0000000008 2011_09_28 2011_09_28_drive_0155_sync 0000000016 2011_09_28 2011_09_28_drive_0155_sync 0000000025 2011_09_28 2011_09_28_drive_0155_sync 0000000037 2011_09_28 2011_09_28_drive_0198_sync 0000000025 2011_09_28 2011_09_28_drive_0198_sync 0000000035 2011_09_28 2011_09_28_drive_0198_sync 0000000041 2011_09_28 2011_09_28_drive_0198_sync 0000000047 2011_09_28 2011_09_28_drive_0198_sync 0000000053 2011_09_28 2011_09_28_drive_0198_sync 0000000059 2011_09_26 2011_09_26_drive_0079_sync 0000000002 2011_09_26 2011_09_26_drive_0079_sync 0000000004 2011_09_26 2011_09_26_drive_0079_sync 0000000006 2011_09_26 2011_09_26_drive_0079_sync 0000000008 2011_09_26 2011_09_26_drive_0079_sync 0000000010 2011_09_28 2011_09_28_drive_0077_sync 0000000013 2011_09_28 2011_09_28_drive_0077_sync 0000000027 2011_09_28 2011_09_28_drive_0208_sync 0000000015 2011_09_28 2011_09_28_drive_0208_sync 0000000030 2011_09_28 2011_09_28_drive_0208_sync 0000000044 2011_09_28 2011_09_28_drive_0167_sync 0000000008 2011_09_28 2011_09_28_drive_0167_sync 0000000016 2011_09_28 2011_09_28_drive_0167_sync 0000000024 2011_09_28 2011_09_28_drive_0167_sync 0000000032 2011_09_28 2011_09_28_drive_0167_sync 0000000044 2011_09_26 2011_09_26_drive_0087_sync 0000000011 2011_09_26 2011_09_26_drive_0087_sync 0000000333 2011_09_26 2011_09_26_drive_0087_sync 0000000336 2011_09_26 2011_09_26_drive_0087_sync 0000000339 2011_09_26 2011_09_26_drive_0087_sync 0000000342 2011_09_26 2011_09_26_drive_0087_sync 0000000345 2011_09_26 2011_09_26_drive_0087_sync 0000000347 2011_09_26 2011_09_26_drive_0087_sync 0000000349 2011_09_26 2011_09_26_drive_0087_sync 0000000351 2011_09_26 2011_09_26_drive_0087_sync 0000000353 2011_09_26 2011_09_26_drive_0087_sync 0000000356 2011_09_26 2011_09_26_drive_0087_sync 0000000359 2011_09_26 2011_09_26_drive_0087_sync 0000000362 2011_09_26 2011_09_26_drive_0087_sync 0000000365 2011_09_26 2011_09_26_drive_0087_sync 0000000368 2011_09_26 2011_09_26_drive_0087_sync 0000000371 2011_09_26 2011_09_26_drive_0087_sync 0000000373 2011_09_26 2011_09_26_drive_0087_sync 0000000375 2011_09_26 2011_09_26_drive_0087_sync 0000000377 2011_09_26 2011_09_26_drive_0087_sync 0000000379 2011_09_26 2011_09_26_drive_0087_sync 0000000381 2011_09_26 2011_09_26_drive_0087_sync 0000000383 2011_09_26 2011_09_26_drive_0087_sync 0000000386 2011_09_26 2011_09_26_drive_0087_sync 0000000389 2011_09_26 2011_09_26_drive_0087_sync 0000000392 2011_09_26 2011_09_26_drive_0087_sync 0000000394 2011_09_26 2011_09_26_drive_0087_sync 0000000396 2011_09_26 2011_09_26_drive_0087_sync 0000000398 2011_09_26 2011_09_26_drive_0087_sync 0000000401 2011_09_26 2011_09_26_drive_0087_sync 0000000404 2011_09_26 2011_09_26_drive_0087_sync 0000000406 2011_09_26 2011_09_26_drive_0087_sync 0000000409 2011_09_26 2011_09_26_drive_0087_sync 0000000411 2011_09_26 2011_09_26_drive_0087_sync 0000000414 2011_09_26 2011_09_26_drive_0087_sync 0000000416 2011_09_26 2011_09_26_drive_0087_sync 0000000419 2011_09_26 2011_09_26_drive_0087_sync 0000000421 2011_09_26 2011_09_26_drive_0087_sync 0000000423 2011_09_26 2011_09_26_drive_0087_sync 0000000426 2011_09_26 2011_09_26_drive_0087_sync 0000000428 2011_09_26 2011_09_26_drive_0087_sync 0000000430 2011_09_26 2011_09_26_drive_0087_sync 0000000432 2011_09_26 2011_09_26_drive_0087_sync 0000000434 2011_09_26 2011_09_26_drive_0087_sync 0000000436 2011_09_26 2011_09_26_drive_0087_sync 0000000438 2011_09_26 2011_09_26_drive_0087_sync 0000000440 2011_09_26 2011_09_26_drive_0087_sync 0000000442 2011_09_26 2011_09_26_drive_0087_sync 0000000444 2011_09_26 2011_09_26_drive_0087_sync 0000000446 2011_09_26 2011_09_26_drive_0087_sync 0000000448 2011_09_26 2011_09_26_drive_0087_sync 0000000450 2011_09_26 2011_09_26_drive_0087_sync 0000000452 2011_09_26 2011_09_26_drive_0087_sync 0000000454 2011_09_26 2011_09_26_drive_0087_sync 0000000456 2011_09_26 2011_09_26_drive_0087_sync 0000000458 2011_09_26 2011_09_26_drive_0087_sync 0000000460 2011_09_26 2011_09_26_drive_0087_sync 0000000462 2011_09_26 2011_09_26_drive_0087_sync 0000000464 2011_09_26 2011_09_26_drive_0087_sync 0000000466 2011_09_26 2011_09_26_drive_0087_sync 0000000468 2011_09_26 2011_09_26_drive_0087_sync 0000000470 2011_09_26 2011_09_26_drive_0087_sync 0000000472 2011_09_26 2011_09_26_drive_0087_sync 0000000474 2011_09_26 2011_09_26_drive_0087_sync 0000000476 2011_09_26 2011_09_26_drive_0087_sync 0000000478 2011_09_26 2011_09_26_drive_0087_sync 0000000480 2011_09_26 2011_09_26_drive_0087_sync 0000000482 2011_09_26 2011_09_26_drive_0087_sync 0000000484 2011_09_26 2011_09_26_drive_0087_sync 0000000486 2011_09_26 2011_09_26_drive_0087_sync 0000000488 2011_09_26 2011_09_26_drive_0087_sync 0000000490 2011_09_26 2011_09_26_drive_0087_sync 0000000492 2011_09_26 2011_09_26_drive_0087_sync 0000000494 2011_09_26 2011_09_26_drive_0087_sync 0000000496 2011_09_26 2011_09_26_drive_0087_sync 0000000498 2011_09_26 2011_09_26_drive_0087_sync 0000000500 2011_09_26 2011_09_26_drive_0087_sync 0000000502 2011_09_26 2011_09_26_drive_0087_sync 0000000504 2011_09_26 2011_09_26_drive_0087_sync 0000000506 2011_09_26 2011_09_26_drive_0087_sync 0000000508 2011_09_26 2011_09_26_drive_0087_sync 0000000510 2011_09_26 2011_09_26_drive_0087_sync 0000000512 2011_09_26 2011_09_26_drive_0087_sync 0000000514 2011_09_26 2011_09_26_drive_0087_sync 0000000516 2011_09_26 2011_09_26_drive_0087_sync 0000000518 2011_09_26 2011_09_26_drive_0087_sync 0000000520 2011_09_26 2011_09_26_drive_0087_sync 0000000522 2011_09_26 2011_09_26_drive_0087_sync 0000000524 2011_09_26 2011_09_26_drive_0087_sync 0000000526 2011_09_26 2011_09_26_drive_0087_sync 0000000528 2011_09_26 2011_09_26_drive_0087_sync 0000000530 2011_09_26 2011_09_26_drive_0087_sync 0000000532 2011_09_26 2011_09_26_drive_0087_sync 0000000534 2011_09_26 2011_09_26_drive_0087_sync 0000000536 2011_09_26 2011_09_26_drive_0087_sync 0000000538 2011_09_26 2011_09_26_drive_0087_sync 0000000540 2011_09_26 2011_09_26_drive_0086_sync 0000000011 2011_09_26 2011_09_26_drive_0086_sync 0000000014 2011_09_26 2011_09_26_drive_0086_sync 0000000016 2011_09_26 2011_09_26_drive_0086_sync 0000000018 2011_09_26 2011_09_26_drive_0086_sync 0000000020 2011_09_26 2011_09_26_drive_0086_sync 0000000022 2011_09_26 2011_09_26_drive_0086_sync 0000000024 2011_09_26 2011_09_26_drive_0086_sync 0000000026 2011_09_26 2011_09_26_drive_0086_sync 0000000028 2011_09_26 2011_09_26_drive_0086_sync 0000000030 2011_09_26 2011_09_26_drive_0086_sync 0000000032 2011_09_26 2011_09_26_drive_0086_sync 0000000034 2011_09_26 2011_09_26_drive_0086_sync 0000000036 2011_09_26 2011_09_26_drive_0086_sync 0000000038 2011_09_26 2011_09_26_drive_0086_sync 0000000040 2011_09_26 2011_09_26_drive_0086_sync 0000000042 2011_09_26 2011_09_26_drive_0086_sync 0000000044 2011_09_26 2011_09_26_drive_0086_sync 0000000046 2011_09_26 2011_09_26_drive_0086_sync 0000000048 2011_09_26 2011_09_26_drive_0086_sync 0000000050 2011_09_26 2011_09_26_drive_0086_sync 0000000052 2011_09_26 2011_09_26_drive_0086_sync 0000000054 2011_09_26 2011_09_26_drive_0086_sync 0000000056 2011_09_26 2011_09_26_drive_0086_sync 0000000058 2011_09_26 2011_09_26_drive_0086_sync 0000000060 2011_09_26 2011_09_26_drive_0086_sync 0000000062 2011_09_26 2011_09_26_drive_0086_sync 0000000064 2011_09_26 2011_09_26_drive_0086_sync 0000000066 2011_09_26 2011_09_26_drive_0086_sync 0000000068 2011_09_26 2011_09_26_drive_0086_sync 0000000070 2011_09_26 2011_09_26_drive_0086_sync 0000000072 2011_09_26 2011_09_26_drive_0086_sync 0000000074 2011_09_26 2011_09_26_drive_0086_sync 0000000076 2011_09_26 2011_09_26_drive_0086_sync 0000000078 2011_09_26 2011_09_26_drive_0086_sync 0000000080 2011_09_26 2011_09_26_drive_0086_sync 0000000082 2011_09_26 2011_09_26_drive_0086_sync 0000000084 2011_09_26 2011_09_26_drive_0086_sync 0000000086 2011_09_26 2011_09_26_drive_0086_sync 0000000088 2011_09_26 2011_09_26_drive_0086_sync 0000000090 2011_09_26 2011_09_26_drive_0086_sync 0000000092 2011_09_26 2011_09_26_drive_0086_sync 0000000094 2011_09_26 2011_09_26_drive_0086_sync 0000000096 2011_09_26 2011_09_26_drive_0086_sync 0000000098 2011_09_26 2011_09_26_drive_0086_sync 0000000100 2011_09_26 2011_09_26_drive_0086_sync 0000000102 2011_09_26 2011_09_26_drive_0086_sync 0000000104 2011_09_26 2011_09_26_drive_0086_sync 0000000106 2011_09_26 2011_09_26_drive_0086_sync 0000000108 2011_09_26 2011_09_26_drive_0086_sync 0000000110 2011_09_26 2011_09_26_drive_0086_sync 0000000112 2011_09_26 2011_09_26_drive_0086_sync 0000000114 2011_09_26 2011_09_26_drive_0086_sync 0000000116 2011_09_26 2011_09_26_drive_0086_sync 0000000118 2011_09_26 2011_09_26_drive_0086_sync 0000000120 2011_09_26 2011_09_26_drive_0086_sync 0000000122 2011_09_26 2011_09_26_drive_0086_sync 0000000124 2011_09_26 2011_09_26_drive_0086_sync 0000000126 2011_09_26 2011_09_26_drive_0086_sync 0000000128 2011_09_26 2011_09_26_drive_0086_sync 0000000130 2011_09_26 2011_09_26_drive_0086_sync 0000000132 2011_09_26 2011_09_26_drive_0086_sync 0000000134 2011_09_26 2011_09_26_drive_0086_sync 0000000136 2011_09_26 2011_09_26_drive_0086_sync 0000000138 2011_09_26 2011_09_26_drive_0086_sync 0000000140 2011_09_26 2011_09_26_drive_0086_sync 0000000142 2011_09_26 2011_09_26_drive_0086_sync 0000000144 2011_09_26 2011_09_26_drive_0086_sync 0000000146 2011_09_28 2011_09_28_drive_0136_sync 0000000007 2011_09_28 2011_09_28_drive_0136_sync 0000000014 2011_09_28 2011_09_28_drive_0136_sync 0000000026 2011_09_28 2011_09_28_drive_0154_sync 0000000007 2011_09_28 2011_09_28_drive_0154_sync 0000000015 2011_09_28 2011_09_28_drive_0154_sync 0000000026 2011_09_28 2011_09_28_drive_0166_sync 0000000007 2011_09_28 2011_09_28_drive_0166_sync 0000000015 2011_09_28 2011_09_28_drive_0166_sync 0000000025 2011_09_28 2011_09_28_drive_0186_sync 0000000008 2011_09_28 2011_09_28_drive_0186_sync 0000000016 2011_09_28 2011_09_28_drive_0186_sync 0000000037 2011_09_28 2011_09_28_drive_0204_sync 0000000016 2011_09_28 2011_09_28_drive_0204_sync 0000000024 2011_09_28 2011_09_28_drive_0204_sync 0000000034 2011_09_28 2011_09_28_drive_0214_sync 0000000008 2011_09_28 2011_09_28_drive_0214_sync 0000000016 2011_09_28 2011_09_28_drive_0214_sync 0000000025 2011_09_28 2011_09_28_drive_0054_sync 0000000007 2011_09_28 2011_09_28_drive_0054_sync 0000000013 2011_09_28 2011_09_28_drive_0054_sync 0000000020 2011_09_28 2011_09_28_drive_0054_sync 0000000030 2011_09_28 2011_09_28_drive_0090_sync 0000000008 2011_09_28 2011_09_28_drive_0090_sync 0000000015 2011_09_28 2011_09_28_drive_0090_sync 0000000023 2011_09_28 2011_09_28_drive_0090_sync 0000000033 2011_09_28 2011_09_28_drive_0095_sync 0000000008 2011_09_28 2011_09_28_drive_0095_sync 0000000014 2011_09_28 2011_09_28_drive_0095_sync 0000000021 2011_09_28 2011_09_28_drive_0095_sync 0000000033 2011_09_28 2011_09_28_drive_0096_sync 0000000007 2011_09_28 2011_09_28_drive_0096_sync 0000000014 2011_09_28 2011_09_28_drive_0096_sync 0000000022 2011_09_28 2011_09_28_drive_0096_sync 0000000032 2011_09_28 2011_09_28_drive_0102_sync 0000000004 2011_09_28 2011_09_28_drive_0102_sync 0000000010 2011_09_28 2011_09_28_drive_0102_sync 0000000017 2011_09_28 2011_09_28_drive_0102_sync 0000000030 2011_09_28 2011_09_28_drive_0103_sync 0000000006 2011_09_28 2011_09_28_drive_0103_sync 0000000012 2011_09_28 2011_09_28_drive_0103_sync 0000000019 2011_09_28 2011_09_28_drive_0103_sync 0000000031 2011_09_28 2011_09_28_drive_0121_sync 0000000007 2011_09_28 2011_09_28_drive_0121_sync 0000000014 2011_09_28 2011_09_28_drive_0121_sync 0000000022 2011_09_28 2011_09_28_drive_0121_sync 0000000043 2011_09_28 2011_09_28_drive_0134_sync 0000000008 2011_09_28 2011_09_28_drive_0134_sync 0000000016 2011_09_28 2011_09_28_drive_0134_sync 0000000024 2011_09_28 2011_09_28_drive_0134_sync 0000000034 2011_09_28 2011_09_28_drive_0171_sync 0000000007 2011_09_28 2011_09_28_drive_0171_sync 0000000013 2011_09_28 2011_09_28_drive_0171_sync 0000000019 2011_09_28 2011_09_28_drive_0171_sync 0000000026 2011_09_28 2011_09_28_drive_0179_sync 0000000007 2011_09_28 2011_09_28_drive_0179_sync 0000000014 2011_09_28 2011_09_28_drive_0179_sync 0000000021 2011_09_28 2011_09_28_drive_0179_sync 0000000030 2011_09_28 2011_09_28_drive_0187_sync 0000000006 2011_09_28 2011_09_28_drive_0187_sync 0000000013 2011_09_28 2011_09_28_drive_0187_sync 0000000021 2011_09_28 2011_09_28_drive_0187_sync 0000000028 2011_09_26 2011_09_26_drive_0017_sync 0000000001 2011_09_26 2011_09_26_drive_0017_sync 0000000002 2011_09_26 2011_09_26_drive_0017_sync 0000000003 2011_09_26 2011_09_26_drive_0017_sync 0000000004 2011_09_26 2011_09_26_drive_0017_sync 0000000005 2011_09_26 2011_09_26_drive_0017_sync 0000000006 2011_09_26 2011_09_26_drive_0017_sync 0000000011 2011_09_26 2011_09_26_drive_0017_sync 0000000012 2011_09_26 2011_09_26_drive_0017_sync 0000000013 2011_09_26 2011_09_26_drive_0017_sync 0000000014 2011_09_26 2011_09_26_drive_0017_sync 0000000015 2011_09_26 2011_09_26_drive_0017_sync 0000000016 2011_09_26 2011_09_26_drive_0017_sync 0000000017 2011_09_26 2011_09_26_drive_0017_sync 0000000018 2011_09_26 2011_09_26_drive_0017_sync 0000000019 2011_09_26 2011_09_26_drive_0017_sync 0000000020 2011_09_26 2011_09_26_drive_0017_sync 0000000023 2011_09_26 2011_09_26_drive_0017_sync 0000000024 2011_09_26 2011_09_26_drive_0017_sync 0000000025 2011_09_26 2011_09_26_drive_0017_sync 0000000032 2011_09_26 2011_09_26_drive_0017_sync 0000000033 2011_09_26 2011_09_26_drive_0017_sync 0000000034 2011_09_26 2011_09_26_drive_0017_sync 0000000035 2011_09_26 2011_09_26_drive_0017_sync 0000000036 2011_09_26 2011_09_26_drive_0017_sync 0000000037 2011_09_26 2011_09_26_drive_0017_sync 0000000038 2011_09_26 2011_09_26_drive_0017_sync 0000000039 2011_09_26 2011_09_26_drive_0017_sync 0000000040 2011_09_26 2011_09_26_drive_0017_sync 0000000041 2011_09_26 2011_09_26_drive_0017_sync 0000000047 2011_09_26 2011_09_26_drive_0017_sync 0000000048 2011_09_26 2011_09_26_drive_0017_sync 0000000049 2011_09_26 2011_09_26_drive_0017_sync 0000000050 2011_09_26 2011_09_26_drive_0017_sync 0000000051 2011_09_26 2011_09_26_drive_0017_sync 0000000052 2011_09_26 2011_09_26_drive_0017_sync 0000000053 2011_09_26 2011_09_26_drive_0017_sync 0000000054 2011_09_26 2011_09_26_drive_0017_sync 0000000055 2011_09_28 2011_09_28_drive_0125_sync 0000000007 2011_09_28 2011_09_28_drive_0125_sync 0000000014 2011_09_28 2011_09_28_drive_0125_sync 0000000021 2011_09_28 2011_09_28_drive_0125_sync 0000000028 2011_09_28 2011_09_28_drive_0125_sync 0000000035 2011_09_28 2011_09_28_drive_0125_sync 0000000042 2011_09_28 2011_09_28_drive_0125_sync 0000000049 2011_09_28 2011_09_28_drive_0125_sync 0000000057 2011_09_28 2011_09_28_drive_0100_sync 0000000009 2011_09_28 2011_09_28_drive_0100_sync 0000000015 2011_09_28 2011_09_28_drive_0100_sync 0000000021 2011_09_28 2011_09_28_drive_0100_sync 0000000027 2011_09_28 2011_09_28_drive_0100_sync 0000000032 2011_09_28 2011_09_28_drive_0100_sync 0000000037 2011_09_28 2011_09_28_drive_0100_sync 0000000042 2011_09_28 2011_09_28_drive_0100_sync 0000000048 2011_09_28 2011_09_28_drive_0100_sync 0000000054 2011_09_28 2011_09_28_drive_0100_sync 0000000060 2011_09_28 2011_09_28_drive_0100_sync 0000000066 2011_09_28 2011_09_28_drive_0146_sync 0000000004 2011_09_28 2011_09_28_drive_0146_sync 0000000010 2011_09_28 2011_09_28_drive_0146_sync 0000000016 2011_09_28 2011_09_28_drive_0146_sync 0000000022 2011_09_28 2011_09_28_drive_0146_sync 0000000028 2011_09_28 2011_09_28_drive_0146_sync 0000000034 2011_09_28 2011_09_28_drive_0146_sync 0000000040 2011_09_28 2011_09_28_drive_0146_sync 0000000046 2011_09_28 2011_09_28_drive_0146_sync 0000000052 2011_09_28 2011_09_28_drive_0146_sync 0000000058 2011_09_28 2011_09_28_drive_0146_sync 0000000065 2011_09_28 2011_09_28_drive_0192_sync 0000000007 2011_09_28 2011_09_28_drive_0192_sync 0000000014 2011_09_28 2011_09_28_drive_0192_sync 0000000021 2011_09_28 2011_09_28_drive_0192_sync 0000000028 2011_09_28 2011_09_28_drive_0192_sync 0000000035 2011_09_28 2011_09_28_drive_0192_sync 0000000042 2011_09_28 2011_09_28_drive_0192_sync 0000000050 2011_09_28 2011_09_28_drive_0192_sync 0000000057 2011_09_28 2011_09_28_drive_0192_sync 0000000064 2011_09_28 2011_09_28_drive_0192_sync 0000000071 2011_09_28 2011_09_28_drive_0192_sync 0000000080 2011_09_28 2011_09_28_drive_0184_sync 0000000007 2011_09_28 2011_09_28_drive_0184_sync 0000000014 2011_09_28 2011_09_28_drive_0184_sync 0000000021 2011_09_28 2011_09_28_drive_0184_sync 0000000028 2011_09_28 2011_09_28_drive_0184_sync 0000000034 2011_09_28 2011_09_28_drive_0184_sync 0000000041 2011_09_28 2011_09_28_drive_0184_sync 0000000048 2011_09_28 2011_09_28_drive_0184_sync 0000000055 2011_09_28 2011_09_28_drive_0184_sync 0000000062 2011_09_28 2011_09_28_drive_0184_sync 0000000069 2011_09_28 2011_09_28_drive_0184_sync 0000000076 2011_09_28 2011_09_28_drive_0184_sync 0000000085 2011_09_26 2011_09_26_drive_0027_sync 0000000001 2011_09_26 2011_09_26_drive_0027_sync 0000000002 2011_09_26 2011_09_26_drive_0027_sync 0000000003 2011_09_26 2011_09_26_drive_0027_sync 0000000004 2011_09_26 2011_09_26_drive_0027_sync 0000000005 2011_09_26 2011_09_26_drive_0027_sync 0000000006 2011_09_26 2011_09_26_drive_0027_sync 0000000093 2011_09_26 2011_09_26_drive_0027_sync 0000000094 2011_09_26 2011_09_26_drive_0027_sync 0000000095 2011_09_26 2011_09_26_drive_0027_sync 0000000096 2011_09_26 2011_09_26_drive_0027_sync 0000000097 2011_09_26 2011_09_26_drive_0027_sync 0000000098 2011_09_26 2011_09_26_drive_0027_sync 0000000099 2011_09_26 2011_09_26_drive_0027_sync 0000000100 2011_09_26 2011_09_26_drive_0027_sync 0000000101 2011_09_26 2011_09_26_drive_0027_sync 0000000102 2011_09_26 2011_09_26_drive_0027_sync 0000000103 2011_09_26 2011_09_26_drive_0027_sync 0000000104 2011_09_26 2011_09_26_drive_0027_sync 0000000105 2011_09_26 2011_09_26_drive_0027_sync 0000000106 2011_09_26 2011_09_26_drive_0027_sync 0000000107 2011_09_26 2011_09_26_drive_0027_sync 0000000108 2011_09_26 2011_09_26_drive_0027_sync 0000000109 2011_09_26 2011_09_26_drive_0027_sync 0000000110 2011_09_26 2011_09_26_drive_0027_sync 0000000111 2011_09_26 2011_09_26_drive_0002_sync 0000000066 2011_09_26 2011_09_26_drive_0002_sync 0000000067 2011_09_26 2011_09_26_drive_0002_sync 0000000068 2011_09_26 2011_09_26_drive_0002_sync 0000000069 2011_09_26 2011_09_26_drive_0002_sync 0000000070 2011_09_26 2011_09_26_drive_0002_sync 0000000071 2011_09_26 2011_09_26_drive_0070_sync 0000000047 2011_09_26 2011_09_26_drive_0070_sync 0000000049 2011_09_26 2011_09_26_drive_0070_sync 0000000051 2011_09_26 2011_09_26_drive_0070_sync 0000000052 2011_09_26 2011_09_26_drive_0070_sync 0000000053 2011_09_26 2011_09_26_drive_0070_sync 0000000054 2011_09_26 2011_09_26_drive_0070_sync 0000000055 2011_09_26 2011_09_26_drive_0070_sync 0000000056 2011_09_26 2011_09_26_drive_0070_sync 0000000057 2011_09_26 2011_09_26_drive_0070_sync 0000000058 2011_09_26 2011_09_26_drive_0070_sync 0000000059 2011_09_26 2011_09_26_drive_0070_sync 0000000060 2011_09_26 2011_09_26_drive_0070_sync 0000000061 2011_09_26 2011_09_26_drive_0070_sync 0000000062 2011_09_26 2011_09_26_drive_0070_sync 0000000063 2011_09_26 2011_09_26_drive_0070_sync 0000000064 2011_09_26 2011_09_26_drive_0070_sync 0000000065 2011_09_26 2011_09_26_drive_0070_sync 0000000066 2011_09_26 2011_09_26_drive_0070_sync 0000000067 2011_09_26 2011_09_26_drive_0070_sync 0000000068 2011_09_26 2011_09_26_drive_0070_sync 0000000069 2011_09_26 2011_09_26_drive_0070_sync 0000000070 2011_09_26 2011_09_26_drive_0070_sync 0000000071 2011_09_26 2011_09_26_drive_0070_sync 0000000072 2011_09_26 2011_09_26_drive_0070_sync 0000000204 2011_09_26 2011_09_26_drive_0070_sync 0000000205 2011_09_26 2011_09_26_drive_0070_sync 0000000206 2011_09_26 2011_09_26_drive_0070_sync 0000000207 2011_09_26 2011_09_26_drive_0070_sync 0000000208 2011_09_26 2011_09_26_drive_0070_sync 0000000209 2011_09_26 2011_09_26_drive_0070_sync 0000000210 2011_09_26 2011_09_26_drive_0070_sync 0000000211 2011_09_26 2011_09_26_drive_0070_sync 0000000212 2011_09_26 2011_09_26_drive_0070_sync 0000000213 2011_09_26 2011_09_26_drive_0070_sync 0000000214 2011_09_26 2011_09_26_drive_0070_sync 0000000215 2011_09_26 2011_09_26_drive_0070_sync 0000000216 2011_09_26 2011_09_26_drive_0070_sync 0000000217 2011_09_26 2011_09_26_drive_0070_sync 0000000218 2011_09_26 2011_09_26_drive_0070_sync 0000000219 2011_09_26 2011_09_26_drive_0070_sync 0000000220 2011_09_26 2011_09_26_drive_0070_sync 0000000221 2011_09_26 2011_09_26_drive_0070_sync 0000000222 2011_09_26 2011_09_26_drive_0070_sync 0000000223 2011_09_26 2011_09_26_drive_0070_sync 0000000224 2011_09_26 2011_09_26_drive_0070_sync 0000000225 2011_09_26 2011_09_26_drive_0070_sync 0000000226 2011_09_26 2011_09_26_drive_0070_sync 0000000227 2011_09_26 2011_09_26_drive_0070_sync 0000000335 2011_09_26 2011_09_26_drive_0070_sync 0000000336 2011_09_26 2011_09_26_drive_0070_sync 0000000337 2011_09_26 2011_09_26_drive_0070_sync 0000000338 2011_09_26 2011_09_26_drive_0070_sync 0000000339 2011_09_26 2011_09_26_drive_0070_sync 0000000340 2011_09_26 2011_09_26_drive_0070_sync 0000000341 2011_09_26 2011_09_26_drive_0070_sync 0000000342 2011_09_26 2011_09_26_drive_0070_sync 0000000343 2011_09_26 2011_09_26_drive_0070_sync 0000000344 2011_09_26 2011_09_26_drive_0070_sync 0000000345 2011_09_26 2011_09_26_drive_0070_sync 0000000346 2011_09_26 2011_09_26_drive_0070_sync 0000000347 2011_09_26 2011_09_26_drive_0070_sync 0000000348 2011_09_26 2011_09_26_drive_0070_sync 0000000349 2011_09_26 2011_09_26_drive_0070_sync 0000000350 2011_09_26 2011_09_26_drive_0070_sync 0000000351 2011_09_26 2011_09_26_drive_0070_sync 0000000352 2011_09_26 2011_09_26_drive_0070_sync 0000000353 2011_09_26 2011_09_26_drive_0070_sync 0000000354 2011_09_26 2011_09_26_drive_0070_sync 0000000355 2011_09_26 2011_09_26_drive_0070_sync 0000000356 2011_09_26 2011_09_26_drive_0070_sync 0000000357 2011_09_26 2011_09_26_drive_0070_sync 0000000358 2011_09_28 2011_09_28_drive_0053_sync 0000000006 2011_09_28 2011_09_28_drive_0053_sync 0000000012 2011_09_28 2011_09_28_drive_0053_sync 0000000018 2011_09_28 2011_09_28_drive_0053_sync 0000000024 2011_09_28 2011_09_28_drive_0053_sync 0000000030 2011_09_28 2011_09_28_drive_0053_sync 0000000036 2011_09_28 2011_09_28_drive_0053_sync 0000000042 2011_09_28 2011_09_28_drive_0053_sync 0000000048 2011_09_28 2011_09_28_drive_0053_sync 0000000054 2011_09_28 2011_09_28_drive_0053_sync 0000000060 2011_09_28 2011_09_28_drive_0053_sync 0000000066 2011_09_28 2011_09_28_drive_0057_sync 0000000006 2011_09_28 2011_09_28_drive_0057_sync 0000000012 2011_09_28 2011_09_28_drive_0057_sync 0000000019 2011_09_28 2011_09_28_drive_0057_sync 0000000025 2011_09_28 2011_09_28_drive_0057_sync 0000000031 2011_09_28 2011_09_28_drive_0057_sync 0000000037 2011_09_28 2011_09_28_drive_0057_sync 0000000043 2011_09_28 2011_09_28_drive_0057_sync 0000000049 2011_09_28 2011_09_28_drive_0057_sync 0000000055 2011_09_28 2011_09_28_drive_0057_sync 0000000061 2011_09_28 2011_09_28_drive_0057_sync 0000000068 2011_09_28 2011_09_28_drive_0065_sync 0000000017 2011_09_28 2011_09_28_drive_0066_sync 0000000014 2011_09_28 2011_09_28_drive_0068_sync 0000000011 2011_09_28 2011_09_28_drive_0068_sync 0000000021 2011_09_28 2011_09_28_drive_0068_sync 0000000032 2011_09_28 2011_09_28_drive_0068_sync 0000000043 2011_09_28 2011_09_28_drive_0068_sync 0000000054 2011_09_28 2011_09_28_drive_0068_sync 0000000065 2011_09_28 2011_09_28_drive_0070_sync 0000000012 2011_09_28 2011_09_28_drive_0071_sync 0000000012 2011_09_28 2011_09_28_drive_0071_sync 0000000025 2011_09_28 2011_09_28_drive_0075_sync 0000000011 2011_09_28 2011_09_28_drive_0075_sync 0000000022 2011_09_28 2011_09_28_drive_0075_sync 0000000033 2011_09_28 2011_09_28_drive_0075_sync 0000000044 2011_09_28 2011_09_28_drive_0075_sync 0000000056 2011_09_28 2011_09_28_drive_0078_sync 0000000012 2011_09_28 2011_09_28_drive_0078_sync 0000000024 2011_09_28 2011_09_28_drive_0080_sync 0000000007 2011_09_28 2011_09_28_drive_0080_sync 0000000014 2011_09_28 2011_09_28_drive_0080_sync 0000000021 2011_09_28 2011_09_28_drive_0080_sync 0000000029 2011_09_28 2011_09_28_drive_0082_sync 0000000007 2011_09_28 2011_09_28_drive_0082_sync 0000000013 2011_09_28 2011_09_28_drive_0082_sync 0000000019 2011_09_28 2011_09_28_drive_0082_sync 0000000025 2011_09_28 2011_09_28_drive_0082_sync 0000000031 2011_09_28 2011_09_28_drive_0082_sync 0000000037 2011_09_28 2011_09_28_drive_0082_sync 0000000043 2011_09_28 2011_09_28_drive_0082_sync 0000000049 2011_09_28 2011_09_28_drive_0082_sync 0000000055 2011_09_28 2011_09_28_drive_0082_sync 0000000061 2011_09_28 2011_09_28_drive_0082_sync 0000000067 2011_09_28 2011_09_28_drive_0086_sync 0000000006 2011_09_28 2011_09_28_drive_0086_sync 0000000013 2011_09_28 2011_09_28_drive_0086_sync 0000000021 2011_09_28 2011_09_28_drive_0087_sync 0000000007 2011_09_28 2011_09_28_drive_0087_sync 0000000015 2011_09_28 2011_09_28_drive_0087_sync 0000000023 2011_09_28 2011_09_28_drive_0087_sync 0000000030 2011_09_28 2011_09_28_drive_0087_sync 0000000038 2011_09_28 2011_09_28_drive_0087_sync 0000000045 2011_09_28 2011_09_28_drive_0087_sync 0000000052 2011_09_28 2011_09_28_drive_0087_sync 0000000059 2011_09_28 2011_09_28_drive_0087_sync 0000000066 2011_09_28 2011_09_28_drive_0087_sync 0000000074 2011_09_28 2011_09_28_drive_0094_sync 0000000007 2011_09_28 2011_09_28_drive_0094_sync 0000000014 2011_09_28 2011_09_28_drive_0094_sync 0000000020 2011_09_28 2011_09_28_drive_0094_sync 0000000026 2011_09_28 2011_09_28_drive_0094_sync 0000000032 2011_09_28 2011_09_28_drive_0094_sync 0000000038 2011_09_28 2011_09_28_drive_0094_sync 0000000045 2011_09_28 2011_09_28_drive_0094_sync 0000000051 2011_09_28 2011_09_28_drive_0094_sync 0000000057 2011_09_28 2011_09_28_drive_0094_sync 0000000064 2011_09_28 2011_09_28_drive_0094_sync 0000000071 2011_09_28 2011_09_28_drive_0098_sync 0000000007 2011_09_28 2011_09_28_drive_0098_sync 0000000014 2011_09_28 2011_09_28_drive_0098_sync 0000000021 2011_09_28 2011_09_28_drive_0098_sync 0000000029 2011_09_28 2011_09_28_drive_0104_sync 0000000009 2011_09_28 2011_09_28_drive_0104_sync 0000000015 2011_09_28 2011_09_28_drive_0104_sync 0000000022 2011_09_28 2011_09_28_drive_0104_sync 0000000035 2011_09_28 2011_09_28_drive_0106_sync 0000000006 2011_09_28 2011_09_28_drive_0106_sync 0000000012 2011_09_28 2011_09_28_drive_0106_sync 0000000018 2011_09_28 2011_09_28_drive_0106_sync 0000000024 2011_09_28 2011_09_28_drive_0106_sync 0000000030 2011_09_28 2011_09_28_drive_0106_sync 0000000036 2011_09_28 2011_09_28_drive_0106_sync 0000000042 2011_09_28 2011_09_28_drive_0106_sync 0000000048 2011_09_28 2011_09_28_drive_0106_sync 0000000054 2011_09_28 2011_09_28_drive_0106_sync 0000000061 2011_09_28 2011_09_28_drive_0106_sync 0000000068 2011_09_28 2011_09_28_drive_0108_sync 0000000007 2011_09_28 2011_09_28_drive_0108_sync 0000000014 2011_09_28 2011_09_28_drive_0108_sync 0000000021 2011_09_28 2011_09_28_drive_0108_sync 0000000033 2011_09_28 2011_09_28_drive_0110_sync 0000000020 2011_09_28 2011_09_28_drive_0110_sync 0000000028 2011_09_28 2011_09_28_drive_0110_sync 0000000036 2011_09_28 2011_09_28_drive_0110_sync 0000000044 2011_09_28 2011_09_28_drive_0110_sync 0000000055 2011_09_28 2011_09_28_drive_0113_sync 0000000006 2011_09_28 2011_09_28_drive_0113_sync 0000000012 2011_09_28 2011_09_28_drive_0113_sync 0000000018 2011_09_28 2011_09_28_drive_0113_sync 0000000024 2011_09_28 2011_09_28_drive_0113_sync 0000000030 2011_09_28 2011_09_28_drive_0113_sync 0000000036 2011_09_28 2011_09_28_drive_0113_sync 0000000042 2011_09_28 2011_09_28_drive_0113_sync 0000000048 2011_09_28 2011_09_28_drive_0113_sync 0000000054 2011_09_28 2011_09_28_drive_0113_sync 0000000060 2011_09_28 2011_09_28_drive_0113_sync 0000000066 2011_09_28 2011_09_28_drive_0117_sync 0000000007 2011_09_28 2011_09_28_drive_0117_sync 0000000013 2011_09_28 2011_09_28_drive_0117_sync 0000000020 2011_09_28 2011_09_28_drive_0117_sync 0000000034 2011_09_28 2011_09_28_drive_0119_sync 0000000008 2011_09_28 2011_09_28_drive_0119_sync 0000000015 2011_09_28 2011_09_28_drive_0119_sync 0000000022 2011_09_28 2011_09_28_drive_0119_sync 0000000029 2011_09_28 2011_09_28_drive_0119_sync 0000000034 2011_09_28 2011_09_28_drive_0119_sync 0000000039 2011_09_28 2011_09_28_drive_0119_sync 0000000044 2011_09_28 2011_09_28_drive_0119_sync 0000000050 2011_09_28 2011_09_28_drive_0119_sync 0000000056 2011_09_28 2011_09_28_drive_0119_sync 0000000063 2011_09_28 2011_09_28_drive_0119_sync 0000000070 2011_09_28 2011_09_28_drive_0122_sync 0000000007 2011_09_28 2011_09_28_drive_0122_sync 0000000014 2011_09_28 2011_09_28_drive_0122_sync 0000000021 2011_09_28 2011_09_28_drive_0122_sync 0000000030 2011_09_28 2011_09_28_drive_0126_sync 0000000008 2011_09_28 2011_09_28_drive_0126_sync 0000000017 2011_09_28 2011_09_28_drive_0128_sync 0000000008 2011_09_28 2011_09_28_drive_0128_sync 0000000018 2011_09_28 2011_09_28_drive_0128_sync 0000000028 2011_09_28 2011_09_28_drive_0132_sync 0000000007 2011_09_28 2011_09_28_drive_0132_sync 0000000014 2011_09_28 2011_09_28_drive_0132_sync 0000000021 2011_09_28 2011_09_28_drive_0132_sync 0000000027 2011_09_28 2011_09_28_drive_0132_sync 0000000034 2011_09_28 2011_09_28_drive_0132_sync 0000000041 2011_09_28 2011_09_28_drive_0132_sync 0000000048 2011_09_28 2011_09_28_drive_0132_sync 0000000055 2011_09_28 2011_09_28_drive_0132_sync 0000000063 2011_09_28 2011_09_28_drive_0132_sync 0000000071 2011_09_28 2011_09_28_drive_0141_sync 0000000013 2011_09_28 2011_09_28_drive_0141_sync 0000000018 2011_09_28 2011_09_28_drive_0141_sync 0000000023 2011_09_28 2011_09_28_drive_0141_sync 0000000028 2011_09_28 2011_09_28_drive_0141_sync 0000000033 2011_09_28 2011_09_28_drive_0141_sync 0000000039 2011_09_28 2011_09_28_drive_0141_sync 0000000045 2011_09_28 2011_09_28_drive_0141_sync 0000000051 2011_09_28 2011_09_28_drive_0141_sync 0000000057 2011_09_28 2011_09_28_drive_0143_sync 0000000006 2011_09_28 2011_09_28_drive_0143_sync 0000000012 2011_09_28 2011_09_28_drive_0143_sync 0000000019 2011_09_28 2011_09_28_drive_0145_sync 0000000011 2011_09_28 2011_09_28_drive_0145_sync 0000000018 2011_09_28 2011_09_28_drive_0145_sync 0000000029 2011_09_28 2011_09_28_drive_0149_sync 0000000007 2011_09_28 2011_09_28_drive_0149_sync 0000000014 2011_09_28 2011_09_28_drive_0149_sync 0000000021 2011_09_28 2011_09_28_drive_0149_sync 0000000029 2011_09_28 2011_09_28_drive_0153_sync 0000000006 2011_09_28 2011_09_28_drive_0153_sync 0000000013 2011_09_28 2011_09_28_drive_0153_sync 0000000019 2011_09_28 2011_09_28_drive_0153_sync 0000000025 2011_09_28 2011_09_28_drive_0153_sync 0000000032 2011_09_28 2011_09_28_drive_0153_sync 0000000039 2011_09_28 2011_09_28_drive_0153_sync 0000000046 2011_09_28 2011_09_28_drive_0153_sync 0000000053 2011_09_28 2011_09_28_drive_0153_sync 0000000060 2011_09_28 2011_09_28_drive_0153_sync 0000000067 2011_09_28 2011_09_28_drive_0153_sync 0000000074 2011_09_28 2011_09_28_drive_0153_sync 0000000081 2011_09_28 2011_09_28_drive_0153_sync 0000000089 2011_09_28 2011_09_28_drive_0160_sync 0000000007 2011_09_28 2011_09_28_drive_0160_sync 0000000014 2011_09_28 2011_09_28_drive_0160_sync 0000000022 2011_09_28 2011_09_28_drive_0162_sync 0000000008 2011_09_28 2011_09_28_drive_0162_sync 0000000014 2011_09_28 2011_09_28_drive_0162_sync 0000000021 2011_09_28 2011_09_28_drive_0162_sync 0000000034 2011_09_28 2011_09_28_drive_0165_sync 0000000008 2011_09_28 2011_09_28_drive_0165_sync 0000000015 2011_09_28 2011_09_28_drive_0165_sync 0000000022 2011_09_28 2011_09_28_drive_0165_sync 0000000029 2011_09_28 2011_09_28_drive_0165_sync 0000000036 2011_09_28 2011_09_28_drive_0165_sync 0000000043 2011_09_28 2011_09_28_drive_0165_sync 0000000050 2011_09_28 2011_09_28_drive_0165_sync 0000000057 2011_09_28 2011_09_28_drive_0165_sync 0000000064 2011_09_28 2011_09_28_drive_0165_sync 0000000071 2011_09_28 2011_09_28_drive_0165_sync 0000000078 2011_09_28 2011_09_28_drive_0168_sync 0000000005 2011_09_28 2011_09_28_drive_0168_sync 0000000012 2011_09_28 2011_09_28_drive_0168_sync 0000000019 2011_09_28 2011_09_28_drive_0168_sync 0000000026 2011_09_28 2011_09_28_drive_0168_sync 0000000034 2011_09_28 2011_09_28_drive_0168_sync 0000000045 2011_09_28 2011_09_28_drive_0174_sync 0000000011 2011_09_28 2011_09_28_drive_0174_sync 0000000018 2011_09_28 2011_09_28_drive_0174_sync 0000000025 2011_09_28 2011_09_28_drive_0174_sync 0000000032 2011_09_28 2011_09_28_drive_0174_sync 0000000039 2011_09_28 2011_09_28_drive_0174_sync 0000000047 2011_09_28 2011_09_28_drive_0177_sync 0000000006 2011_09_28 2011_09_28_drive_0177_sync 0000000012 2011_09_28 2011_09_28_drive_0177_sync 0000000018 2011_09_28 2011_09_28_drive_0177_sync 0000000024 2011_09_28 2011_09_28_drive_0177_sync 0000000030 2011_09_28 2011_09_28_drive_0177_sync 0000000036 2011_09_28 2011_09_28_drive_0177_sync 0000000042 2011_09_28 2011_09_28_drive_0177_sync 0000000048 2011_09_28 2011_09_28_drive_0177_sync 0000000055 2011_09_28 2011_09_28_drive_0177_sync 0000000062 2011_09_28 2011_09_28_drive_0177_sync 0000000069 2011_09_28 2011_09_28_drive_0183_sync 0000000006 2011_09_28 2011_09_28_drive_0183_sync 0000000013 2011_09_28 2011_09_28_drive_0183_sync 0000000020 2011_09_28 2011_09_28_drive_0183_sync 0000000026 2011_09_28 2011_09_28_drive_0185_sync 0000000007 2011_09_28 2011_09_28_drive_0185_sync 0000000014 2011_09_28 2011_09_28_drive_0185_sync 0000000021 2011_09_28 2011_09_28_drive_0185_sync 0000000028 2011_09_28 2011_09_28_drive_0185_sync 0000000035 2011_09_28 2011_09_28_drive_0185_sync 0000000041 2011_09_28 2011_09_28_drive_0185_sync 0000000048 2011_09_28 2011_09_28_drive_0185_sync 0000000054 2011_09_28 2011_09_28_drive_0185_sync 0000000061 2011_09_28 2011_09_28_drive_0185_sync 0000000068 2011_09_28 2011_09_28_drive_0185_sync 0000000076 2011_09_28 2011_09_28_drive_0191_sync 0000000007 2011_09_28 2011_09_28_drive_0191_sync 0000000014 2011_09_28 2011_09_28_drive_0191_sync 0000000021 2011_09_28 2011_09_28_drive_0191_sync 0000000028 2011_09_28 2011_09_28_drive_0195_sync 0000000009 2011_09_28 2011_09_28_drive_0195_sync 0000000016 2011_09_28 2011_09_28_drive_0195_sync 0000000025 2011_09_28 2011_09_28_drive_0199_sync 0000000008 2011_09_28 2011_09_28_drive_0199_sync 0000000015 2011_09_28 2011_09_28_drive_0199_sync 0000000023 2011_09_28 2011_09_28_drive_0199_sync 0000000031 2011_09_28 2011_09_28_drive_0201_sync 0000000007 2011_09_28 2011_09_28_drive_0201_sync 0000000014 2011_09_28 2011_09_28_drive_0201_sync 0000000021 2011_09_28 2011_09_28_drive_0201_sync 0000000028 2011_09_28 2011_09_28_drive_0201_sync 0000000035 2011_09_28 2011_09_28_drive_0201_sync 0000000042 2011_09_28 2011_09_28_drive_0201_sync 0000000049 2011_09_28 2011_09_28_drive_0201_sync 0000000056 2011_09_28 2011_09_28_drive_0201_sync 0000000063 2011_09_28 2011_09_28_drive_0201_sync 0000000070 2011_09_28 2011_09_28_drive_0201_sync 0000000078 2011_09_28 2011_09_28_drive_0205_sync 0000000008 2011_09_28 2011_09_28_drive_0205_sync 0000000015 2011_09_28 2011_09_28_drive_0205_sync 0000000027 2011_09_28 2011_09_28_drive_0209_sync 0000000007 2011_09_28 2011_09_28_drive_0209_sync 0000000014 2011_09_28 2011_09_28_drive_0209_sync 0000000021 2011_09_28 2011_09_28_drive_0209_sync 0000000028 2011_09_28 2011_09_28_drive_0209_sync 0000000035 2011_09_28 2011_09_28_drive_0209_sync 0000000042 2011_09_28 2011_09_28_drive_0209_sync 0000000050 2011_09_28 2011_09_28_drive_0209_sync 0000000057 2011_09_28 2011_09_28_drive_0209_sync 0000000065 2011_09_28 2011_09_28_drive_0209_sync 0000000072 2011_09_28 2011_09_28_drive_0209_sync 0000000079 2011_09_28 2011_09_28_drive_0216_sync 0000000008 2011_09_28 2011_09_28_drive_0216_sync 0000000015 2011_09_28 2011_09_28_drive_0216_sync 0000000022 2011_09_28 2011_09_28_drive_0216_sync 0000000030 2011_09_28 2011_09_28_drive_0216_sync 0000000038 2011_09_28 2011_09_28_drive_0220_sync 0000000028 2011_09_28 2011_09_28_drive_0220_sync 0000000035 2011_09_28 2011_09_28_drive_0220_sync 0000000042 2011_09_28 2011_09_28_drive_0220_sync 0000000049 2011_09_28 2011_09_28_drive_0220_sync 0000000057 2011_09_28 2011_09_28_drive_0220_sync 0000000066 2011_09_28 2011_09_28_drive_0222_sync 0000000007 2011_09_28 2011_09_28_drive_0222_sync 0000000014 2011_09_28 2011_09_28_drive_0222_sync 0000000021 2011_09_28 2011_09_28_drive_0222_sync 0000000027 2011_09_28 2011_09_28_drive_0222_sync 0000000033 2011_09_28 2011_09_28_drive_0222_sync 0000000040 2011_09_28 2011_09_28_drive_0222_sync 0000000053 ================================================ FILE: data/kitti_split2/devkit/mapping/train_rand.txt ================================================ 7282,2479,6912,6480,2659,7182,5819,1466,5862,1620,4406,3657,1001,7086,1017,3188,1400,878,1443,5183,5274,4774,5738,2480,3578,5867,6160,1181,7411,6835,6794,5173,4586,1233,5056,573,1693,3375,1796,5537,5400,4975,468,2193,1067,6701,2053,3496,3195,2822,4166,1359,162,5351,7231,4562,1108,6278,7036,1295,729,6082,4753,5637,921,3270,5929,1403,3609,4924,7344,1568,856,2178,6156,6240,3135,5973,5923,1402,775,2410,6676,6596,6379,2133,3973,346,4959,4157,5153,1358,1954,202,6923,1859,6505,325,3542,4421,2132,1715,5280,7418,426,1338,592,5203,2237,6741,4360,1806,3964,4600,2797,4971,5234,3701,3268,6451,4376,1408,2246,1020,2946,1645,6122,359,2538,6694,7283,1380,3558,4933,2977,32,6253,2300,839,2341,5238,1029,3642,2427,3654,3044,2908,3254,873,2004,1469,3002,5501,6515,373,1920,7220,4625,863,208,791,95,720,3948,724,2850,680,2721,1293,3810,3557,1707,2039,5863,5285,5994,6225,2120,2022,1586,5025,3858,6041,5224,1947,6232,261,7185,5481,6148,3112,3416,3435,7266,5411,2709,6881,41,4084,7032,1561,4661,1040,2506,2328,1934,4840,2695,4001,7259,6710,4710,3723,3756,5015,6489,439,6442,15,1491,326,1560,1642,4197,7111,813,3934,5775,1373,484,2598,1283,6727,6186,70,541,3409,2440,663,5465,6805,6161,5595,5128,6215,4123,3341,5393,3446,3332,6089,3285,6108,1525,3597,1119,299,984,1957,6580,1243,4518,5204,7401,2907,2724,4665,400,2211,5157,536,738,5971,2776,2800,1725,784,2106,7124,5908,4499,2293,6826,6117,3749,1862,2011,2141,6742,3572,7397,5936,1576,5991,6959,1332,1420,1146,6975,6777,986,3381,5805,1736,6769,5823,726,2482,2952,4189,6,4222,5611,4956,6085,5964,2008,5142,6233,620,4757,6010,1087,4246,7237,757,390,7190,4297,606,2026,4127,3163,3030,999,5877,3218,7387,4866,10,6087,3261,2167,5480,1516,3364,3734,2499,1994,1637,205,3493,4637,4087,5866,6133,5163,3463,4517,2339,2451,61,4673,772,2139,7054,2955,1344,7356,3304,3685,2017,2571,3712,1530,6546,565,5222,287,2631,2787,7480,4309,2984,3049,5542,3404,1745,2394,2038,6377,3345,3857,3849,2412,3867,7121,3767,7239,2400,927,4232,6014,5493,3320,1649,1567,7062,5875,2218,697,888,3652,447,7023,4631,1006,5062,4985,3563,5249,1641,3180,2916,4627,5093,6177,3534,6523,234,6086,5043,1826,688,1136,6453,4227,1245,1933,4871,528,5094,4403,5519,6811,2897,7162,698,2958,721,6074,1175,516,3023,2438,3915,6312,1257,4044,5992,6637,5069,1721,4305,5760,7377,5736,6784,2202,3089,5082,1904,4154,5972,4931,121,5977,7391,5820,2363,2362,2642,895,1874,1985,5535,132,2168,3615,2472,1379,5942,3393,5298,436,3022,3193,4423,7473,7167,1788,1333,1723,1313,7007,6641,561,6352,2282,7454,4245,4544,2531,1843,1357,3408,655,5831,2112,3836,7079,590,1734,4916,624,1056,6533,3457,4750,4998,6524,4611,7419,462,6791,3055,2219,4472,309,4538,2891,4162,1323,6121,5071,6062,5258,4491,4700,5090,4464,3551,6858,2902,3769,2388,5033,6595,3465,3209,2241,2461,798,6778,5421,1089,6132,4214,7143,597,6776,3167,3470,5083,4939,6446,1918,6227,5787,4591,4946,6880,847,2263,6813,1471,1819,6300,3722,511,3821,201,2068,1023,1747,3241,2107,4380,7310,2023,3489,2367,1348,4873,7471,795,4938,1022,5757,4477,1216,2325,3863,2778,4709,4311,6330,398,2236,6097,5859,6332,6472,5844,5959,3067,4143,6394,91,6817,2292,907,368,7346,6013,2389,1238,4884,1730,4659,6582,6257,2203,1855,5405,5803,7209,3538,6043,6704,600,2847,1527,1052,1092,1265,6549,1240,1227,2673,5659,896,6404,2144,6612,4017,3950,5176,4399,3414,5976,6957,6276,6754,133,2194,6566,4636,6398,3109,6243,4942,6902,612,40,7,3974,1054,4530,4945,7105,3847,3798,4007,4277,6989,5540,4558,4202,2457,1230,7253,2288,7262,4172,1553,5336,7102,243,6339,6816,6654,1910,1374,4617,1013,1258,5961,3153,3965,2096,7408,2728,1114,679,3433,7202,3236,6093,3888,6788,3250,2845,1750,4234,1939,4686,3887,6841,853,5385,3389,2029,709,7270,3488,7339,1945,2269,913,1327,3925,3395,4338,5556,2792,3453,4444,682,5072,3985,4199,840,353,3056,3015,5651,2543,3412,7180,4802,3010,415,490,6872,6164,5784,4028,4788,7027,3641,4955,5219,6756,7466,2925,7097,761,3671,7278,5593,4614,503,6574,327,186,3604,3665,104,727,3553,5626,190,2452,572,3515,7170,2601,2783,4231,6924,2720,2254,329,1772,1457,3108,4097,6294,3455,1080,6491,6554,5230,6787,6976,3273,7441,6657,1063,338,3778,978,1821,5666,7093,1633,3394,5457,5684,3131,7405,6296,46,5288,5085,357,36,413,5903,3482,6187,6032,656,2568,1582,6223,1913,3943,4742,5751,2153,6511,5968,4042,6274,5059,4440,358,3584,2789,787,1117,1164,3073,3715,3373,1148,2613,2520,5735,477,2040,3994,5568,5547,705,4554,4014,6531,908,4010,2197,2559,6118,6810,1345,2369,6172,2291,6793,6801,376,4459,1309,6407,764,5490,317,5200,3599,3244,4211,4995,1883,4718,506,411,2061,755,5308,6309,4794,3258,731,4843,5467,3969,3078,1632,5888,2732,1166,1045,6771,1807,2832,2151,558,532,2658,6269,126,2207,3936,6210,1950,6752,2373,2607,6362,4608,5856,3725,6861,5017,3523,6979,4721,2000,1131,3121,914,160,3169,3606,3084,3579,1021,6077,67,3276,1337,5646,2323,1744,5915,4370,6418,2280,1912,6139,3633,5878,2676,3303,4640,3991,2665,6542,4964,5940,3636,875,4528,6622,4576,5051,2034,3220,4890,6406,5941,3988,1079,6857,5446,3886,3101,6561,4643,3686,5364,3517,7135,129,2065,5731,5277,7165,6585,270,3019,805,4548,6899,5409,2251,4859,7351,1353,7267,957,6992,4993,4268,7272,7059,4357,1318,6719,6293,4756,51,4593,2886,3175,884,5108,3051,2777,6882,2882,2465,3319,4320,917,7293,1319,4553,1397,6463,4415,2619,992,3799,7029,7020,3211,2967,3217,79,906,4977,6860,2358,1298,3804,3935,6842,1627,980,1808,49,5910,6570,5555,4037,7241,5160,6366,6966,4505,858,564,1300,5331,5250,403,5189,3600,3170,30,1924,3507,6854,3132,5896,3786,1081,5044,2249,5018,7298,4733,2417,5544,918,2748,4100,4786,6397,4514,4701,6968,3874,6381,5325,929,5840,5729,520,3120,595,4768,6926,119,1888,3522,35,43,4754,4438,534,6883,569,6319,5558,611,2722,250,6604,1193,5858,2546,6917,6355,1480,3438,948,7212,7287,172,5321,6607,647,6292,2699,1474,4800,6259,1587,430,2402,7432,2893,7129,2582,4181,4722,4225,4852,4140,5365,384,4847,1072,4739,2933,6951,6205,7197,5339,3237,1189,3392,5759,5677,3259,106,1948,4533,1037,4761,5792,7255,6435,3201,6941,1781,4023,2082,4501,2230,5492,6488,498,5892,2586,5707,4813,4666,3844,4352,4256,281,1330,1850,7070,952,96,5024,213,7083,5655,6909,2661,3793,5765,7001,6623,4327,6869,434,3406,2635,3869,1688,2929,7233,5061,1191,3200,5813,4654,2357,6939,1194,5668,7136,5853,5233,2840,605,773,5463,3007,3129,5870,1232,163,6898,7371,6095,4660,616,1958,6206,1511,7311,2071,2485,7085,5718,6102,4500,2931,3309,6202,3013,2887,3580,1255,4348,3737,2960,559,6833,1015,4054,7289,1800,4495,288,2319,2304,3524,3103,3031,6609,1336,2014,5704,393,6508,4020,1573,147,509,2130,801,1128,1740,6962,6385,5711,1545,6290,6731,482,271,2432,5825,5560,2733,5036,4712,5369,6815,5264,2093,1617,5438,6303,6081,2653,1156,3577,7345,1795,1242,704,2528,7146,6147,3157,2378,5132,6639,455,5756,6556,4941,1285,4015,5253,3065,4426,2905,6705,2803,1984,4724,1485,7337,7153,5504,5887,379,6800,4704,6896,5260,1868,7219,1134,6999,2523,85,3683,975,3899,4074,1972,7357,7154,2780,7332,1147,1133,6656,307,1460,923,3640,2080,7444,2772,1041,3661,99,5958,4293,1956,799,4792,3718,4389,4336,3215,324,7192,4816,7074,2691,5007,2838,7113,5133,2870,1433,7050,6916,4829,4112,431,1488,7150,260,2258,4983,7302,1149,5536,7329,4210,3441,1503,5841,6765,2649,5192,1689,4521,2152,1467,4095,1827,4261,855,5846,2685,4053,2315,2821,2879,2951,2163,2818,3516,1409,2277,1399,6674,6198,4433,4580,7393,4178,1621,2565,3498,4917,1652,669,2484,6619,6518,3255,6903,1502,946,4496,4547,4607,5861,5131,6433,954,654,6635,2467,6871,990,2181,3619,2045,2343,4324,7309,947,2527,4362,3889,3421,815,2220,500,1602,7265,4565,6091,89,351,2532,3252,5464,2426,1154,4815,1683,3997,1441,3512,1624,4273,548,2390,1322,1699,7221,6689,617,2081,7318,5164,1229,7462,7203,3248,4868,4066,5499,4080,4027,5951,648,5563,6154,4545,4787,5706,5543,5770,3306,3434,5749,7137,7224,2547,6640,7243,2155,4785,7055,6376,3426,2741,4030,4195,2890,6661,5913,3775,5852,5496,5296,5442,2669,6513,5353,5523,4663,6222,5334,1398,3859,5799,5700,6840,3014,6822,165,3321,1763,5423,5905,1508,2785,7249,4681,4796,1810,2595,4619,5191,3403,2469,4412,6929,5053,153,2091,4474,2109,3413,4899,2224,1616,5623,2851,4183,7250,3713,25,7147,6462,1455,4616,983,2972,1053,4943,3807,2118,5310,1768,6124,3063,3968,6911,4341,1436,4022,7399,6643,5381,6831,535,1682,2625,3675,5608,1762,4192,5618,5581,3266,6567,6277,6065,1526,3048,3963,2823,2471,4416,6721,4571,6624,5302,1797,140,3882,2425,1361,794,1365,846,7366,1780,1967,4805,3221,6888,4063,1575,3324,5710,3711,6636,178,5431,6370,1177,3478,4731,2255,785,3760,4777,2743,2411,3104,2980,1039,3053,2478,173,478,6720,4653,285,4375,6847,4799,453,2646,3942,5266,1111,6251,5449,4674,4864,4557,6335,401,1589,6367,4740,3314,3501,4374,793,224,3704,2883,6644,5451,2693,443,2463,1663,4078,567,1116,4482,7304,943,1577,6647,2643,1743,3322,4276,348,1860,7130,6711,1987,5243,5576,4604,2516,6569,3234,6947,5911,3995,3902,6092,7061,6874,1066,3061,603,2265,3595,5038,2145,1605,1559,1124,3317,3247,6444,4185,1091,1462,5263,4294,2537,1625,7415,6821,2930,2563,2337,5676,1120,6438,1812,2749,3037,6180,1550,7395,2301,7422,4650,4090,3118,5933,2641,4651,4481,4002,3570,5777,4005,5842,6430,6174,6673,7363,1665,748,4629,3952,78,1766,1946,2880,410,5079,7463,1600,4148,3993,1388,450,3747,3296,2397,3518,4158,850,3531,227,5092,294,5226,499,7382,6552,4902,5371,4684,2536,2129,1042,5175,2137,1992,1208,1540,3020,4302,4838,2250,2476,6247,4537,2286,2745,5935,6027,3009,995,1253,1782,2738,3477,4009,1377,838,4316,5162,5664,7127,4513,7294,5047,5293,7021,664,1703,2900,170,2195,6760,4835,1342,1538,2084,2012,1976,1472,4283,2581,3607,4563,7335,4191,3376,4269,6998,3417,4287,659,3287,6029,1241,1195,404,628,3529,3982,4618,2774,3896,3361,1223,5035,2501,6868,4885,5011,6818,312,1899,626,5771,115,4448,1501,4131,5140,87,5305,877,717,2884,3644,961,6436,423,5045,3702,6935,6155,3249,1544,6722,1016,2050,4251,538,276,5599,2104,7461,6918,7479,5989,3368,334,2114,1292,1493,3504,3612,6192,7284,5441,6120,2260,4820,3826,3024,5261,5179,4411,6073,2097,723,2176,2209,4889,1180,452,92,632,3027,2196,6729,2223,1673,7159,4582,619,5983,7417,9,491,6839,5937,3728,5335,7440,4906,318,4893,6051,5214,6867,2629,419,4898,1704,4393,3134,5584,3300,3256,1296,387,5636,4749,3825,6197,3353,6360,5901,5665,2272,5602,6983,7315,2877,6387,5367,5130,6755,2077,1036,4443,5349,5702,1512,3126,6616,3251,1316,7174,2962,4585,5240,5948,3987,4203,169,686,354,238,118,5594,2888,7015,4483,3294,751,5921,2704,3064,362,968,6606,6163,5452,4147,3757,5505,1925,4602,4449,4642,6953,6351,1909,5186,4699,2321,1562,2430,6670,6946,6134,5106,7006,2574,6497,3591,2997,1461,1856,6900,5607,4354,5355,6003,6195,2095,4450,3816,6083,5489,4190,3514,3354,1889,3299,6820,6767,6588,4904,2813,6541,2185,3955,3343,4634,4685,1105,1828,6144,2001,5361,7238,3124,128,6658,2550,6460,2419,1163,6714,3688,4284,2383,3046,1427,3479,6159,3050,2018,113,7263,6922,2182,2806,3399,5359,4967,3932,1058,237,2599,2156,885,5058,5682,5509,2831,6572,5396,1892,5075,5795,4304,3369,1311,4973,5691,1802,3204,414,4978,176,743,6450,1773,6834,6615,416,3840,1596,6006,244,7144,1979,5693,1877,1199,188,6764,4996,1274,2379,2844,1612,4745,4755,4778,4925,6328,6237,1032,6111,5022,812,1140,3293,5667,2945,6072,6977,2268,7244,5307,296,4025,1430,4292,5473,6320,3819,1264,1638,3541,1458,3429,4424,1360,6827,576,7446,6700,5716,4876,6960,5330,4952,6625,3611,5998,5918,1005,2719,2433,2858,3143,642,2562,2782,449,7394,5016,5134,3387,3567,556,3526,5630,3313,5066,650,1215,7359,5511,1555,2049,5165,636,1769,5196,2697,2755,1592,7390,1499,4103,5121,3471,3164,6849,2814,1820,1200,6873,4960,361,4910,7340,2396,4560,6522,944,7151,5188,1362,192,1803,7455,6684,1252,2474,123,3635,3695,3327,7213,5701,83,5213,1288,3566,3292,1793,6266,2087,6683,2553,4970,3941,519,3837,5039,6016,7288,4113,3208,876,6681,5471,5895,4652,4093,3191,1205,1425,4145,4029,6368,2914,6021,691,5322,2186,3871,1419,5239,5377,5216,117,3137,3487,756,3967,5049,2652,5161,3122,4520,1677,1086,3439,3703,3805,5003,6391,6761,7223,4697,4230,4848,4395,6948,4610,6506,7160,4098,4587,4645,5244,4114,1129,4715,4255,604,4101,4741,3929,6733,458,871,967,6048,7030,6655,6809,2567,200,2664,2013,1531,6602,6823,5484,3145,4366,5590,5851,2885,6440,69,6781,932,4601,3754,1886,1831,4909,3891,3787,7323,7181,1192,2926,5641,3548,4791,5398,1608,3637,330,1098,4584,5698,676,2839,974,66,56,1075,4662,3223,7057,5348,2135,1431,4016,2604,6627,6987,3425,3057,4201,5848,5526,7100,3352,7442,5010,5209,2189,4702,6774,7141,5271,2781,3298,3909,6904,280,630,7373,2805,5591,2917,6040,5748,6184,4126,6422,4175,3602,5685,3592,3383,2624,6189,4568,4836,2350,3140,1845,7022,7429,292,2961,2549,1392,6127,744,2180,1564,2253,6106,3338,4215,1964,4209,5111,6344,131,1416,3272,4626,6427,6459,3440,6229,7308,3981,599,2723,3894,3971,4136,919,5447,286,5415,2983,6581,6252,5433,2766,5373,375,3365,2057,3006,5198,1626,1220,1885,4343,1321,3565,6429,3168,3344,7163,4751,1628,1840,4963,5648,6421,6630,4980,5503,3651,1367,6601,2762,3495,3559,3766,5448,2623,3532,6157,5945,988,6416,2108,6671,6709,5883,3278,1417,3827,2157,7451,6990,471,6167,5957,824,1483,6307,591,2988,1846,2462,4615,2668,420,1799,5818,2102,207,5407,5109,3752,1977,3166,5884,1122,6967,3506,2428,1315,4108,6468,2136,1594,7035,2889,1174,1356,6302,2621,6901,4033,1051,4961,504,2860,3076,4468,868,3085,4886,1346,5453,3978,7268,1962,4165,100,7152,4934,4743,1824,1543,7038,2761,1698,1833,6289,5869,6864,6702,1790,7448,587,2896,273,7240,2765,6907,5617,4453,4542,3242,6668,6193,613,1579,2855,5089,3556,3082,2869,3243,6096,3337,12,640,674,2698,4414,1165,6938,6634,2530,252,2524,6471,146,3231,6140,5559,5422,5376,3939,2913,5740,4552,2921,7331,5694,3765,708,7438,1248,6268,3074,4579,2384,4716,4675,194,86,485,5774,4047,3491,241,702,2243,6593,5269,1326,1085,2267,1185,3645,7242,1168,1263,6297,6982,1012,7204,6270,728,5425,5518,5150,3158,7099,6568,911,1919,4811,6466,1675,5930,6361,3970,5552,5603,6715,4213,4606,1435,2100,180,3550,6576,3590,4169,4119,6949,3183,5587,332,692,1204,5235,5824,1857,6825,2299,5454,7416,3842,6730,454,3776,750,4386,31,1369,5469,909,3638,778,6245,1385,3759,5472,2602,6439,5273,4323,1839,2326,1644,1038,2434,6749,737,4236,2443,4641,5719,707,2626,3928,3848,3456,84,4091,1004,2085,6356,3746,6318,5048,5193,7381,4744,1391,6744,5232,6371,7176,1727,4990,543,2689,7290,4046,2190,1941,4355,2867,1777,6985,5459,7119,5494,5912,5598,7409,7104,2450,6386,2716,4900,5773,7281,3284,5297,2596,3171,5640,3362,3692,5363,5099,7207,1667,5282,2672,6063,5268,5135,5900,7420,678,7115,1070,392,4307,4595,303,2715,2125,5984,2735,4834,525,5137,6862,1524,758,1262,437,1384,7354,4164,3958,3347,4503,1050,3623,4254,4271,872,5220,6165,1556,1390,6372,5309,2174,3154,4200,831,3336,4738,5031,1599,2281,7201,145,2146,5382,7342,5548,6930,5344,3511,1329,4735,3340,88,849,3229,6221,4035,6837,4516,5965,4437,371,4242,6203,3750,451,4644,3088,1767,819,6099,6692,3761,552,4410,1506,622,4367,780,568,1515,6138,7400,6908,6220,6892,658,3000,2493,3790,6146,1254,3809,2206,5479,2525,2032,2113,5254,5417,6326,1366,4999,5,4068,754,2164,5357,2092,4583,5360,1634,7477,289,6228,2264,4839,2534,3880,1236,5614,2757,4772,3372,1601,827,5970,1383,830,2927,574,3736,5741,6279,2259,3151,3390,4957,2957,1854,5812,3927,2708,3396,249,380,593,7215,6679,4765,6049,5742,4356,2999,6136,5592,6757,6539,881,2940,4596,5181,3111,4478,5397,6648,5102,6553,5809,6431,7171,4073,2122,7286,1709,5874,2592,1062,7002,1529,4603,4431,5864,2794,2510,2862,6584,5424,6357,3717,5625,5881,6234,6448,2727,77,313,5412,5932,391,1212,4384,2974,4997,3430,6402,2767,4071,2811,7078,7229,4954,262,1076,2226,5833,6338,596,7467,48,1830,3288,7072,4770,2368,3564,836,823,3670,137,2365,922,6994,5390,134,4405,3011,2138,3930,945,1142,5980,857,4003,2947,1475,5721,142,1684,6885,7067,2919,7324,2551,4004,3914,4057,1835,3720,6747,259,800,7031,6129,6690,7333,2134,496,5470,544,5622,2938,1446,7380,4488,3483,5696,1077,5290,1064,211,7379,235,340,6680,3803,4908,3079,2048,989,7187,65,5262,6428,3626,3253,6254,6699,2242,3742,1484,5786,3481,4062,3543,2575,5060,3824,4086,7049,2674,5743,27,4331,5928,1655,4329,3233,1752,216,3090,3260,4872,2175,247,2799,3655,3379,3920,6558,5259,6856,711,321,1370,7360,6410,2161,2703,2233,5541,653,4760,5195,2147,5632,6728,467,360,5050,1534,4060,1558,5237,5276,5096,6564,7297,4056,6331,1197,969,4351,2303,2473,7352,844,4895,5497,5236,1591,4300,6179,804,342,6476,3772,2786,996,4850,6878,1968,2105,7338,2965,6481,139,4381,563,94,571,6621,80,1310,3246,7449,5550,2815,3841,2790,5574,4769,699,7474,5265,2073,461,4170,4460,7348,1188,127,6517,5515,6836,4480,4536,2103,7041,7232,6271,7082,2069,1869,382,4326,228,7343,657,3525,4040,442,1832,930,5566,2366,6660,7206,6080,2569,5228,182,1082,5225,2816,5532,5565,3673,1434,788,1603,1597,2349,481,2627,586,3018,3650,3709,1696,1523,5418,4846,3890,5670,2187,1914,2726,2128,4418,1980,4490,4485,1176,3881,4842,1505,4487,2119,355,4860,3198,4299,4144,3382,1299,3060,6076,6797,1249,2700,2637,3025,6084,5654,3845,5507,90,4161,7005,2334,4492,4915,1453,3983,4146,898,1226,6768,7398,2632,6322,4913,1173,2996,1112,2539,2331,6009,1118,6028,4085,191,7413,5081,4807,2127,6396,1823,2853,3634,5346,4599,6802,5692,474,6921,7014,2657,6384,6400,2338,5143,2154,5652,6244,920,2810,4052,5802,931,5734,3087,279,3095,5647,867,2656,546,3342,3052,2857,3797,1100,7385,685,5879,955,3139,7299,4186,5889,427,1610,1966,3226,3423,2985,4726,7403,3283,1510,2015,2279,2542,4160,2035,790,1838,1479,3086,5545,6997,848,4207,1834,1789,1630,4994,3107,5020,1674,4408,5374,4128,6104,5763,2381,5960,3911,1099,4911,6037,1921,5138,3004,3587,3785,492,110,4473,6726,730,1222,6678,2923,971,2372,5762,4385,6354,5821,2775,1394,6349,5304,736,2046,3099,810,3113,2628,2771,5104,336,5988,1246,5643,4809,1937,1218,3419,3610,6217,1692,4551,3454,6235,6591,7234,993,6866,109,6498,6970,4436,6414,4039,643,4082,5279,495,6050,745,2089,7230,6100,2199,5037,6955,6242,4976,1083,6327,6495,1347,782,1853,2308,2316,1902,1999,5985,93,1439,7017,2711,236,6415,2247,308,6829,3562,6458,2231,7208,3933,1470,4630,3834,3311,6884,5950,4865,1468,2663,4822,1224,2564,5392,3262,3835,7210,6876,5690,4570,6682,1700,6336,366,2817,2232,2086,2345,2830,5223,4419,7472,1536,1876,204,4291,1097,1196,4555,1778,6012,3428,4470,4290,4325,1908,344,4026,3616,6527,2993,5830,6961,5458,4515,870,6218,7314,3773,4713,2580,518,1014,4425,2234,3165,215,6194,1905,3649,3117,479,52,4295,2422,4502,6969,1841,4137,915,1481,5028,7254,835,1207,7367,4435,6036,1907,5440,181,4808,389,4176,5466,703,1121,421,157,4861,3149,245,673,6316,381,3245,5675,1995,2495,1026,3189,889,2854,6231,6589,6284,4992,3367,3924,7456,6053,3106,2198,6650,6562,306,2009,843,4679,6058,7112,4427,489,2271,1025,3148,1115,5316,6060,651,2819,2177,6686,5040,7183,3182,4206,2111,4814,814,6411,2576,7271,6123,5087,4940,7225,2756,402,7186,5168,3843,6563,3462,3916,4058,3658,1804,6991,7034,1239,5683,1375,882,3614,6532,2603,4494,6703,7307,7125,4069,4217,2920,3758,6261,3301,3224,4347,3431,4163,2511,4402,5498,3331,1811,2533,874,1646,6369,1651,7426,5251,6664,3900,6964,1879,6814,3116,2344,5982,6617,3919,4589,806,4559,1306,7012,4349,6114,7383,829,4400,2395,4853,4948,1395,1494,1551,5311,2062,7321,388,4077,5343,6557,2205,4361,3033,4383,6934,5798,5575,333,6725,2864,3937,928,248,6380,311,493,102,1448,3513,2437,6055,6830,1731,5030,497,5899,3186,5838,4874,5810,1695,4315,418,2025,5680,6667,2413,73,5956,6288,4260,4019,1691,2492,3931,2227,1714,3917,33,4345,6219,7410,1351,6128,5073,5300,1765,6695,350,6363,2355,3918,2324,1866,4905,1522,5832,3682,7350,226,3227,396,7008,7464,6282,3613,2873,221,5312,1381,2210,1513,1492,428,4775,716,1059,5110,1898,2311,938,2489,6031,7277,2214,1518,1161,4869,408,4982,6940,2143,4174,6772,177,2863,783,5922,5429,1588,1277,5621,1350,7443,1542,6736,5650,4804,2404,1844,6945,3730,1539,2424,4130,2036,189,7453,4664,4863,3792,4968,4677,1107,4497,6766,5129,1805,2312,2825,681,2078,3349,6748,5966,1657,470,1304,3190,1210,5205,5705,2901,4258,7138,1287,3466,2455,6972,859,5100,4965,3586,2066,1437,5021,1618,7361,1557,4849,2142,6579,5460,3194,3225,1798,1720,2059,240,5380,6044,2833,5292,821,5609,2200,2405,2483,2356,6382,4986,3866,406,4923,2570,7045,4979,4288,4598,7320,2881,3197,668,345,1334,7157,6494,3346,1666,4669,554,2978,5122,6696,2453,796,645,1784,5455,7445,2963,1068,4569,2221,4858,7013,1891,2671,3527,2305,1478,6514,2824,6130,1554,1231,378,6022,4707,7274,3672,3744,3708,1459,130,6713,3444,1268,4036,6978,1291,1153,6457,3363,530,6526,5154,5427,5726,1234,5794,5032,7475,2222,5208,266,198,2386,4318,6560,555,7236,2351,2834,4737,2555,6046,502,2740,1065,1000,1959,7430,242,3422,3042,2505,962,3068,5456,1463,925,5790,7222,210,3093,3546,7091,1297,1302,4285,167,206,4208,5872,6403,5577,2572,5326,4649,4703,7388,4388,4944,5395,1915,3054,4194,5468,607,5569,2752,5715,2075,4059,2911,3975,2041,689,6283,3945,3029,1722,2502,4705,7009,3540,2401,7322,4445,3630,3573,3743,1464,1749,4918,1938,1049,1172,6419,860,5510,4237,3694,6358,3360,2496,6392,734,4272,3490,2768,1852,1702,3605,7421,1286,246,4729,3297,6870,6478,5218,1456,5539,4803,5724,6492,3913,5769,4387,2165,1413,7068,6212,4179,6464,3719,6018,3519,1705,1364,4264,7328,3485,5324,6528,5616,6937,4922,3443,1201,529,2871,6408,179,5362,5145,4875,3753,1629,3647,6301,2060,6143,2842,3328,3290,6504,3669,735,3427,6573,3582,1237,1126,6000,5221,1281,3062,2620,2436,1421,769,3302,23,4229,2932,5012,5589,5319,3398,1482,746,5814,6126,174,4221,6859,1317,3608,7172,5347,5333,6737,5462,6628,4241,3800,1371,2387,894,6807,1917,3581,2294,6618,3228,2865,7042,4689,4129,3771,3239,356,2322,2994,4365,706,4581,1894,2670,1271,4734,2976,4507,1169,1412,3569,3280,4541,5974,6746,6452,5514,3291,5868,749,5317,148,1130,5126,6423,5674,335,1593,3860,6751,2966,5159,2491,1078,4422,6516,5210,3904,4668,3,5077,5987,2415,6599,1973,2494,1996,2094,4021,1760,1473,570,2968,5834,4045,2846,253,4821,4936,4289,239,5656,1137,6287,1260,457,5430,6413,6745,5522,2636,1303,3008,4051,98,2526,1571,4377,6145,2798,6597,1010,2941,2475,1057,3045,4212,2655,4188,5944,3032,5807,4248,3096,4714,6649,5753,7140,4250,1372,6500,254,5952,2306,1581,7000,6887,5962,5169,1101,5761,3178,5578,4489,5717,3474,1123,7423,6064,6819,5865,1024,3371,6182,2573,6310,6007,725,472,6191,3783,6620,6305,7145,1944,6317,5791,7063,7392,4525,4216,797,3177,3588,4540,690,6691,1363,2359,3499,7193,4725,6716,494,6098,3257,5755,7019,2587,5902,4594,3741,5815,6789,3855,4958,4469,374,5119,2261,5437,4828,1546,4024,808,5026,7194,7374,1687,3530,2101,4265,6936,768,4633,3459,4456,3318,4672,7300,1073,5679,6473,696,5295,3075,2680,5419,2744,5383,3125,1774,2694,7092,4819,747,4011,1096,5571,3700,4314,6958,6565,6325,7275,1206,2364,4667,3944,4698,6454,256,3946,2042,594,2298,2,6482,1791,347,3128,965,6980,1928,6875,2953,1167,3001,5402,6633,4417,2618,2335,5739,2360,981,233,4509,7378,2393,1247,5146,4825,150,1450,6434,3279,7011,1718,1184,6265,3972,7436,6963,444,7226,5491,540,6853,6693,2158,111,2796,7080,4523,1489,6879,195,60,2340,1314,5713,1801,1225,2856,1387,6894,6153,5885,1792,3727,883,4306,818,154,6762,5695,2577,2503,1787,5949,3897,7218,958,5320,2037,7114,1983,4281,1343,4920,3954,1151,1444,7228,2717,3418,598,6070,5628,193,4620,1965,6919,1144,3100,2317,1676,6135,694,6455,4342,6687,3210,4638,4180,34,526,671,1604,5907,424,7465,1003,4907,1653,6775,7033,1217,4512,3401,1170,4371,4266,3316,466,6112,4275,1465,3732,2959,2650,3378,7158,7316,517,2409,2611,5517,4428,662,5772,3040,2600,2583,1771,229,297,5871,4789,2123,3801,2444,3469,4648,5629,2342,6629,2990,5327,3267,7437,7364,2354,2594,6425,1717,2090,58,7273,6054,7372,4142,101,1,2215,2545,5500,3160,6417,3494,3475,2416,3105,2737,3058,3731,5014,6176,4462,255,274,652,6443,3380,3674,1870,1235,6390,6795,7396,6015,4671,6168,28,4519,7110,3467,164,4987,1998,7173,2064,1440,2447,5800,4344,1678,7312,1668,5634,7116,1454,6166,5136,3812,2971,6559,5217,635,533,4413,6577,6669,383,7459,6204,446,3829,935,5793,6321,2981,6537,2747,6996,2054,1875,203,4693,4104,5615,4691,7003,5827,5610,4573,959,6337,199,3779,1969,1746,3133,4072,3676,1936,5978,3710,5857,3323,1711,6211,2675,2184,3624,1814,1331,660,6706,4391,3357,7349,6712,5475,5728,5990,7018,581,3892,2361,6790,7427,2131,5783,2827,209,125,59,6891,144,2270,463,6311,2795,1266,6020,7261,5006,3781,1583,6928,4279,412,939,4122,6291,6487,661,5372,5004,1712,753,3449,1027,5352,5967,5027,6804,621,5486,2435,1660,5995,3706,2079,2544,302,4612,6758,4267,7469,4198,4736,3596,634,1354,3811,1422,3956,7425,4064,1190,7452,4609,2329,5416,1382,3872,2512,395,1378,3071,6169,231,637,3070,3329,6230,7169,5572,6545,3817,5354,1044,4926,3921,5750,7347,2208,6088,3764,2939,363,4235,488,4683,6734,2159,5686,315,4711,3205,2192,2431,776,5796,3789,2937,6238,4782,3222,372,2801,4330,7258,1733,1890,4092,3618,4831,6981,6026,4034,6510,6470,1864,4249,4588,3326,2056,3159,6587,97,7069,880,5596,3196,3853,1897,1813,3447,6034,2548,6735,4038,2718,230,4879,6038,291,6785,5927,7216,6181,7291,3533,1570,4296,1988,1785,222,4706,2290,4107,7336,4564,3330,4008,5403,5778,1911,3923,1451,4226,3039,2522,4434,7252,4806,6067,6239,5340,5070,5914,6521,3878,733,5215,2262,4935,377,4404,5606,1756,1132,1887,3782,7457,4337,5573,3400,5554,2487,175,3748,3325,4798,1552,3629,513,1269,2992,3187,4506,3377,2470,1429,2934,1753,4257,3407,225,2969,4081,608,6525,5645,2666,627,3162,4,4628,5767,3219,4390,1786,6614,4784,6345,701,2392,3545,5329,1871,1900,2915,6688,6280,2327,369,3691,4407,5252,5148,6986,3574,5530,2936,4353,3026,2287,3660,4824,2788,1487,1611,2007,4193,7156,6066,789,7330,62,4447,4205,5370,4111,7107,4817,1880,582,2852,5197,5506,3603,3391,6024,5947,2622,7279,1282,5337,3774,1930,2706,1681,268,4845,904,5120,2302,6200,2313,4790,4687,2441,809,4369,4252,3815,217,3436,5141,166,2314,2943,1349,3240,2828,5432,4531,72,5801,159,1882,4605,5904,5328,2677,82,5725,5567,5631,4577,1061,4764,3690,3770,3308,6173,6342,2616,1521,1986,7142,3839,6033,1415,124,5732,2010,864,1084,5303,6467,6465,1861,700,763,6848,577,3442,323,4372,284,7037,7120,1770,5182,514,6424,4962,7094,3072,6116,722,3549,5434,7269,322,5931,267,349,2448,2347,792,1741,3003,4270,149,6162,2498,2836,438,4857,3653,2445,2072,3794,5703,2872,861,5207,1221,6324,2170,4832,3464,1410,475,1563,2052,4043,5112,5406,2540,5845,3664,2513,845,3028,3729,1279,4313,1635,2126,5190,3802,3678,2486,4049,2285,4032,5097,138,1662,4763,4475,4862,7028,6343,1738,6178,7133,501,1289,2336,4117,6943,1033,1007,7004,6538,6201,6927,2683,639,6340,2769,272,2606,2807,5582,2690,6763,3339,5917,1822,3405,512,2252,7358,615,1664,4398,1214,7296,5533,1138,5118,4317,623,5620,3181,155,2705,1490,5124,5436,2371,2541,1719,5375,6272,6137,2031,5855,5366,6496,1849,1578,2874,1615,2837,1963,4134,6078,257,6586,1971,2597,1619,5155,3312,5095,4177,3295,1580,4678,5428,1935,1710,527,4106,2346,2228,4776,2088,3901,2849,2829,811,6109,3806,4333,4096,6019,2406,2982,4883,6646,4928,6445,665,4951,5107,4550,905,6632,1048,2909,5194,508,6224,4396,4812,6241,4622,4457,1432,2521,1671,5894,4048,6718,4801,3627,6571,6753,7365,5242,5678,6171,3813,3745,732,7189,141,3307,4888,6142,3286,4950,3601,2617,3966,7341,4466,5986,4524,3733,3560,7024,7090,1171,580,3922,5410,397,1160,258,934,1878,7089,779,6075,5839,1213,3705,1340,6782,4526,3910,4240,3235,684,759,6653,2654,3161,2688,1178,1002,2682,7123,6262,5358,4854,4280,2998,1009,2348,5745,5323,3885,4451,6005,4105,1895,4855,6395,5638,2991,2028,1569,3520,4870,5780,1751,1093,953,6645,71,331,937,833,1613,3155,2954,1978,4510,5350,5633,1847,337,1584,3992,304,1607,1047,135,5149,1211,7292,5074,583,4476,4429,5588,3069,5068,5170,6185,2725,4378,2273,5019,6732,5013,3473,666,2760,3098,3808,4929,1614,1102,5669,5401,107,1990,6724,487,5529,3437,3585,7198,4676,940,1622,6373,4878,2225,1307,7434,3038,1708,5206,578,11,3420,6603,1423,5954,5993,4575,370,3912,2385,2477,5782,7175,3984,6017,641,3784,5527,5378,5088,987,6662,5788,3893,5806,5671,2841,6590,5924,7178,4303,1179,2110,6199,4340,4511,3047,2843,5860,4972,713,5180,4013,1368,5601,3156,4244,602,825,766,5101,122,6608,3830,970,5117,4578,4109,3877,4301,6214,2989,68,3554,5779,7375,2418,5520,1159,5727,557,6008,6158,1759,822,7245,4452,524,2333,1565,3452,2374,2003,5699,601,6375,1256,5476,5528,2904,7118,3059,5345,5147,1724,960,214,4723,6152,2099,5919,5408,1829,1386,2518,5562,7103,4930,3411,1094,2826,7301,4989,3355,6974,5882,3659,6068,4133,1865,2115,742,6183,3780,5139,4567,5513,7166,3521,5708,1109,152,1294,1694,3583,5946,5969,1152,6298,7313,562,644,3172,320,6315,53,1729,765,1975,1426,6594,4891,7428,1284,1055,2554,3476,3777,4529,5257,4373,3999,851,7406,6030,1659,979,1155,5275,5485,1640,3271,7047,5975,7431,5461,1809,5688,1339,13,817,1018,3333,6611,1019,3907,649,3977,7191,4574,3818,3036,4368,5829,5000,4018,6493,5063,712,5103,4522,364,834,4102,1598,5524,4121,7264,1685,5776,1202,5386,4728,2615,456,2296,1960,6850,3005,2002,316,5613,4167,1405,3016,5116,1748,4504,5553,7460,5125,3861,7211,6905,7362,551,7217,1031,1927,3547,3275,2172,1514,670,879,6932,7177,5247,5898,6042,5561,5714,2148,4810,5444,537,6393,5604,4561,2848,4549,828,3448,6738,4841,2191,3066,3594,2987,2398,6260,4656,4401,5737,2121,4125,1670,760,5052,6405,2639,2899,6052,3480,2707,2556,1779,2439,1974,902,4932,4897,4262,4110,2802,4903,1679,6886,4041,1961,951,2514,854,6540,4727,6626,2696,6069,5754,4218,2644,7155,6263,5341,2070,5981,6933,5294,3986,3648,116,3508,7132,5747,6773,6348,6456,7470,168,3751,6638,3795,6341,3269,5379,5399,2043,14,3199,433,2240,3555,2488,2793,2278,3697,3763,4274,2779,2446,2750,549,6965,1182,539,26,4116,1863,6412,7370,1686,5426,6642,3334,4346,7319,2557,2610,5084,7096,6583,6350,2257,2076,4597,3721,3828,2763,2030,6281,3432,4099,7246,5893,6483,2021,7404,2027,5054,7025,5185,422,5065,2956,6852,3947,982,6915,4647,1706,5811,6248,4572,5891,4937,4061,6931,4067,5766,3537,4680,2894,2764,2734,3486,1396,3080,4969,6359,341,4050,6364,6530,1566,3870,2490,807,4239,1955,1250,5939,50,1528,3883,5144,1858,3384,6023,2590,3643,480,6045,6002,6610,4773,6672,4394,5712,4901,6437,4894,2517,2995,5849,4658,4694,5445,7334,6057,5546,892,39,3814,7073,2204,6196,2421,5880,1881,3366,2449,6125,6047,3505,2681,16,3500,985,4779,4833,3762,7276,212,4382,4892,5649,5586,826,3851,7122,5624,3492,1825,4827,3735,265,283,1754,3206,3094,298,4856,5938,6520,7227,3903,74,646,786,841,3646,3092,1818,5384,7010,6529,3212,6988,3953,6844,715,4732,4132,5639,6071,3926,5478,4484,2589,6780,282,5516,1135,6374,223,5663,966,343,4259,1547,319,6207,5227,6115,2307,4781,2942,1609,5689,3077,3202,269,6677,5999,5579,3305,6313,4867,3142,4981,4921,1251,675,5781,1276,2063,2055,3083,6306,2019,6808,4441,3351,1776,5580,5850,2950,6255,4392,7235,7040,695,3370,5847,3895,4439,6973,3996,767,5502,1496,3820,7280,2739,3990,5477,2407,4308,4508,6799,3617,1278,2074,1940,3207,2504,4463,3625,4442,6295,5816,6346,4135,5414,3684,3850,4912,2835,2731,4350,6208,6786,7303,5487,3012,5057,4219,5091,5042,7077,3335,1445,293,770,5673,1046,187,7095,3289,2906,1071,2770,5744,7188,6304,1104,6547,2276,1716,5758,7065,7108,2912,1757,6469,7016,7478,2729,6851,4120,275,5943,5722,890,2809,6685,3510,1127,7056,774,6449,4471,5388,1970,5248,2509,687,2678,1158,4446,1106,2051,1507,1438,3628,6717,6952,5034,1848,4118,2791,42,1486,2588,5368,2429,2162,5920,7131,6708,21,4312,5404,5306,2970,2098,5916,886,2507,2859,2593,5730,6141,4624,550,2578,464,1074,1541,2928,7355,352,6750,1794,1943,2295,1981,7317,81,4150,5963,5098,5023,5184,4632,1404,6971,1028,6256,5681,3410,1590,103,3724,633,5585,1929,4083,1672,5439,3852,328,5549,5041,1519,1030,1989,4461,1658,2464,6056,4720,136,1549,5080,7450,3740,2216,2662,6150,3796,2468,3468,3310,4991,6485,6895,6910,4031,7117,1355,5658,7195,5187,3788,7134,719,6783,5955,2005,1742,973,2701,4613,185,1548,3696,2454,4238,5873,5909,6828,394,409,1815,2561,5008,3864,2256,5605,6461,6779,1110,614,2380,994,5488,1842,2903,4247,6796,5278,3358,3136,2979,5055,6333,4364,2149,4363,777,196,6216,2552,7161,2964,4539,156,197,7053,2171,1477,1341,2497,4646,2679,949,976,3359,956,3041,3385,3230,6110,3898,3174,1595,6213,6598,3639,1406,2948,7476,5660,2459,1308,1401,1261,5413,3114,2352,407,3232,5356,2584,1497,5113,1901,1690,7196,1305,3192,5953,6543,1141,1951,7076,977,5064,1504,6090,926,2714,1157,6846,1739,3876,3502,158,7376,7071,2651,3768,3176,1585,2310,3115,5067,7199,2458,2320,3714,486,7087,6509,6499,3173,4379,4543,2742,739,5538,4623,1952,2986,3415,263,887,714,1535,7326,3021,4075,2560,5826,2376,277,6323,6534,1732,2332,942,6059,5241,5283,2713,6299,4228,3693,6925,4823,1775,1312,4156,4877,3959,2117,2420,4321,5534,3875,507,4730,3884,386,5287,5115,6151,4171,6845,2751,941,1532,1606,3666,4927,5482,3862,6275,1209,6507,5284,6675,1187,5627,924,5387,2892,5474,523,1816,5286,367,2408,6798,837,3873,1280,264,1654,4000,7389,2217,7256,5600,1301,3144,4006,862,4184,1244,3081,5687,7248,2614,2876,4243,2820,429,4055,7139,1150,6209,47,7149,4708,4590,6175,3998,6188,3856,2591,2515,2179,6535,6812,2116,1896,300,4695,4657,3123,2377,1069,1500,4826,5583,1949,4984,4988,3962,575,3509,24,2466,3656,4319,4151,5105,802,4310,510,2460,718,483,3472,3908,2918,832,5391,1993,505,6334,3679,6347,4752,4432,251,2712,2647,7257,7439,6441,20,7368,5752,3350,5564,3868,7084,3957,4420,5828,6592,7051,440,1113,5229,3593,6551,4881,1680,5996,4896,7058,6889,3906,5906,667,1636,2975,6401,1701,6984,6107,4076,5046,1755,6723,1125,5212,2630,5174,4655,2585,6536,473,4851,3663,7148,1631,3264,2188,6286,6652,4621,1520,5272,3739,2736,2399,2330,2442,2414,1008,1476,2020,290,5642,2866,7424,1328,899,4780,3503,6273,3632,1198,1095,4253,5151,75,4719,6267,1953,2633,2605,6383,1447,2579,4887,1498,2935,3102,4458,2391,6399,4818,6474,5508,4220,3738,5211,5177,2753,1509,4204,460,2248,584,610,6389,5178,4224,1991,5997,3214,3951,38,2500,5342,3561,6308,1428,5720,2702,4758,2006,3315,3388,2746,3831,6365,579,465,6249,1393,3536,1139,2686,2660,4966,459,7325,4187,5979,4263,6942,3238,3043,5746,2535,7064,2875,6035,7305,5483,3668,2033,1203,5597,2973,3622,295,6906,6250,3110,6865,1873,4493,4155,405,4546,2169,1537,3667,3138,2456,7435,4527,3274,3822,4532,5764,542,4767,741,4486,803,2283,365,4690,22,3961,2047,3265,900,2634,5854,820,3571,3458,1324,1162,3484,1942,417,1903,6897,6954,3461,1272,3960,1034,4793,4397,5201,4070,17,5114,3127,7481,2566,4498,2353,1650,6149,3846,5709,5635,4748,683,476,5158,1906,2667,4335,3402,7098,6094,7433,310,4797,441,6170,3791,5389,5291,6890,5443,1872,7046,2016,6420,2529,3552,3179,3979,143,1376,1335,2309,5255,891,5768,5313,1572,5005,5843,6548,232,762,305,3130,2804,2878,3497,2024,7128,5697,2898,1452,6855,6477,5202,3216,5644,916,4479,7327,3838,3386,2687,4328,1931,6832,57,6666,64,7205,2910,3528,545,7066,1270,1735,1389,445,44,933,2481,4556,2318,4088,6550,5123,4152,3680,1643,2730,4079,1273,998,399,4974,7126,3539,4882,3147,6877,5156,6707,1661,385,6843,3707,6426,432,4159,912,3865,1656,6519,950,4065,588,781,625,4688,1533,4094,3879,4830,3687,2213,1648,3575,6803,6001,114,1267,1407,45,3445,585,6944,2201,183,1418,5001,1320,7044,6285,6479,171,4332,5495,435,631,19,5231,4746,5612,5078,6739,6039,618,6697,6770,963,2684,161,672,5002,2808,3938,5281,2245,4534,6698,2759,4771,4947,1259,2692,5733,1352,5886,6502,1275,6824,5338,4535,5246,1414,4682,6105,3940,2784,55,7164,7251,5661,7285,6893,6759,2558,2609,7179,3689,6920,629,7402,6103,1035,184,4139,5512,4953,5314,3681,6246,2150,5301,936,6575,2266,2895,151,2924,1817,2648,3980,991,4919,1836,6503,3152,7412,6490,5267,1088,1837,7168,903,5199,2140,553,2754,1997,2758,3989,1647,2274,7200,1090,964,2183,2239,5315,4298,2612,2067,278,3263,4455,5172,1290,6264,1011,1761,4334,4182,3726,1219,6475,6600,4153,7306,4454,1639,6236,7060,6432,3621,589,5657,6743,2044,3185,3451,18,521,6011,4286,1922,2640,4670,6555,1424,5808,7101,54,6792,5934,4696,4149,2166,1325,6651,4223,37,1884,4409,4914,5394,7260,2173,6665,6314,1726,1713,4173,3620,2058,314,5289,2710,112,3277,3146,3631,1145,522,740,2508,3854,4359,105,901,6913,1449,6061,5653,4880,5256,1916,5836,7109,2212,5127,6740,4089,5332,816,1186,4592,2645,3716,7447,4759,4635,852,2375,910,6993,2275,771,566,6578,63,4358,5835,4467,5925,547,2868,1758,3976,6409,2289,7184,3677,2944,4639,4012,6131,6258,4233,5570,469,2861,6447,3119,3698,4168,1926,7468,6378,6995,7043,3424,3568,5152,1574,4692,7407,1228,4717,1495,6484,5167,2638,5723,2124,2423,7052,2773,6512,6025,531,7088,5557,1060,1697,6329,1932,4795,5435,3598,2284,5926,6914,6663,677,1893,7386,4282,7295,5890,897,1851,1783,3833,1411,1923,3203,3213,7384,4837,7026,3699,5009,3905,3035,7048,893,3356,5245,638,7106,2160,339,4465,6113,4322,4138,3460,6190,842,4278,6079,7039,2519,6613,2949,869,4747,219,7414,3589,120,4949,1982,972,4339,6353,3017,3450,5076,7214,710,3397,1764,752,866,2083,3281,6388,4196,6956,865,2238,3282,6101,2244,6501,1517,6119,1183,5822,4783,5299,609,1669,7075,4430,3576,301,515,3949,2812,2922,5420,3535,2403,4762,6544,5086,5166,5318,5531,1867,5804,1737,4766,7081,5270,3091,5551,3141,5662,8,560,2229,6659,6838,448,3150,108,76,5897,3755,5029,5817,7353,4566,693,5525,7247,997,5797,2235,218,6950,4141,6806,2608,29,6863,5171,1623,6605,425,3662,5619,7458,3374,5450,1728,4844,2370,6631,1043,2382,1442,3823,6226,6486,1143,220,5876,3184,4115,5837,6004,3348,3097,5521,5672,1103,3034,5785,3544,4124,7369,2297,5789,3832 ================================================ FILE: data/kitti_split2/devkit/matlab/computeBox3D.m ================================================ function [corners_2D,face_idx] = computeBox3D(object,P) % takes an object and a projection matrix (P) and projects the 3D % bounding box into the image plane. % index for 3D bounding box faces face_idx = [ 1,2,6,5 % front face 2,3,7,6 % left face 3,4,8,7 % back face 4,1,5,8]; % right face % compute rotational matrix around yaw axis R = [+cos(object.ry), 0, +sin(object.ry); 0, 1, 0; -sin(object.ry), 0, +cos(object.ry)]; % 3D bounding box dimensions l = object.l; w = object.w; h = object.h; % 3D bounding box corners x_corners = [l/2, l/2, -l/2, -l/2, l/2, l/2, -l/2, -l/2]; y_corners = [0,0,0,0,-h,-h,-h,-h]; z_corners = [w/2, -w/2, -w/2, w/2, w/2, -w/2, -w/2, w/2]; % rotate and translate 3D bounding box corners_3D = R*[x_corners;y_corners;z_corners]; corners_3D(1,:) = corners_3D(1,:) + object.t(1); corners_3D(2,:) = corners_3D(2,:) + object.t(2); corners_3D(3,:) = corners_3D(3,:) + object.t(3); % only draw 3D bounding box for objects in front of the camera if any(corners_3D(3,:)<0.1) corners_2D = []; return; end % project the 3D bounding box into the image plane corners_2D = projectToImage(corners_3D, P); ================================================ FILE: data/kitti_split2/devkit/matlab/computeOrientation3D.m ================================================ function [orientation_2D] = computeOrientation3D(object,P) % takes an object and a projection matrix (P) and projects the 3D % object orientation vector into the image plane. % compute rotational matrix around yaw axis R = [cos(object.ry), 0, sin(object.ry); 0, 1, 0; -sin(object.ry), 0, cos(object.ry)]; % orientation in object coordinate system orientation_3D = [0.0, object.l 0.0, 0.0 0.0, 0.0]; % rotate and translate in camera coordinate system, project in image orientation_3D = R*orientation_3D; orientation_3D(1,:) = orientation_3D(1,:) + object.t(1); orientation_3D(2,:) = orientation_3D(2,:) + object.t(2); orientation_3D(3,:) = orientation_3D(3,:) + object.t(3); % vector behind image plane? if any(orientation_3D(3,:)<0.1) orientation_2D = []; return; end % project orientation into the image plane orientation_2D = projectToImage(orientation_3D,P); ================================================ FILE: data/kitti_split2/devkit/matlab/drawBox2D.m ================================================ function drawBox2D(h,object) % set styles for occlusion and truncation occ_col = {'g','y','r','w'}; trun_style = {'-','--'}; % draw regular objects if ~strcmp(object.type,'DontCare') % show rectangular bounding boxes pos = [object.x1,object.y1,object.x2-object.x1+1,object.y2-object.y1+1]; trc = double(object.truncation>0.1)+1; rectangle('Position',pos,'EdgeColor',occ_col{object.occlusion+1},... 'LineWidth',3,'LineStyle',trun_style{trc},'parent',h(1).axes) rectangle('Position',pos,'EdgeColor','b', 'parent', h(1).axes) % draw label label_text = sprintf('%s\n%1.1f rad',object.type,object.alpha); x = (object.x1+object.x2)/2; y = object.y1; text(x,max(y-5,40),label_text,'color',occ_col{object.occlusion+1},... 'BackgroundColor','k','HorizontalAlignment','center',... 'VerticalAlignment','bottom','FontWeight','bold',... 'FontSize',8,'parent',h(1).axes); % draw don't care regions else % draw dotted rectangle pos = [object.x1,object.y1,object.x2-object.x1+1,object.y2-object.y1+1]; rectangle('Position',pos,'EdgeColor','c',... 'LineWidth',2,'LineStyle','-','parent',h(1).axes) end ================================================ FILE: data/kitti_split2/devkit/matlab/drawBox3D.m ================================================ function drawBox3D(h,object,corners,face_idx,orientation) % set styles for occlusion and truncation occ_col = {'g','y','r','w'}; trun_style = {'-','--'}; trc = double(object.truncation>0.1)+1; % draw projected 3D bounding boxes if ~isempty(corners) for f=1:4 line([corners(1,face_idx(f,:)),corners(1,face_idx(f,1))]+1,... [corners(2,face_idx(f,:)),corners(2,face_idx(f,1))]+1,... 'parent',h(2).axes, 'color',occ_col{object.occlusion+1},... 'LineWidth',3,'LineStyle',trun_style{trc}); line([corners(1,face_idx(f,:)),corners(1,face_idx(f,1))]+1,... [corners(2,face_idx(f,:)),corners(2,face_idx(f,1))]+1,... 'parent',h(2).axes,'color','b','LineWidth',1); end end % draw orientation vector if ~isempty(orientation) line([orientation(1,:),orientation(1,:)]+1,... [orientation(2,:),orientation(2,:)]+1,... 'parent',h(2).axes,'color','w','LineWidth',4); line([orientation(1,:),orientation(1,:)]+1,... [orientation(2,:),orientation(2,:)]+1,... 'parent',h(2).axes,'color','k','LineWidth',2); end end ================================================ FILE: data/kitti_split2/devkit/matlab/projectToImage.m ================================================ function pts_2D = projectToImage(pts_3D, P) % PROJECTTOIMAGE projects 3D points in given coordinate system in the image % plane using the given projection matrix P. % % Usage: pts_2D = projectToImage(pts_3D, P) % input: pts_3D: 3xn matrix % P: 3x4 projection matrix % output: pts_2D: 2xn matrix % % last edited on: 2012-02-27 % Philip Lenz - lenz@kit.edu % project in image pts_2D = P * [pts_3D; ones(1,size(pts_3D,2))]; % scale projected points pts_2D(1,:) = pts_2D(1,:)./pts_2D(3,:); pts_2D(2,:) = pts_2D(2,:)./pts_2D(3,:); pts_2D(3,:) = []; end ================================================ FILE: data/kitti_split2/devkit/matlab/readCalibration.m ================================================ function P = readCalibration(calib_dir,img_idx,cam) % load 3x4 projection matrix P = dlmread(sprintf('%s/%06d.txt',calib_dir,img_idx),' ',0,1); P = P(cam+1,:); P = reshape(P ,[4,3])'; end ================================================ FILE: data/kitti_split2/devkit/matlab/readLabels.m ================================================ function objects = readLabels(label_dir,img_idx) % parse input file fid = fopen(sprintf('%s/%06d.txt',label_dir,img_idx),'r'); C = textscan(fid,'%s %f %d %f %f %f %f %f %f %f %f %f %f %f %f','delimiter', ' '); fclose(fid); % for all objects do objects = []; for o = 1:numel(C{1}) % extract label, truncation, occlusion lbl = C{1}(o); % for converting: cell -> string objects(o).type = lbl{1}; % 'Car', 'Pedestrian', ... objects(o).truncation = C{2}(o); % truncated pixel ratio ([0..1]) objects(o).occlusion = C{3}(o); % 0 = visible, 1 = partly occluded, 2 = fully occluded, 3 = unknown objects(o).alpha = C{4}(o); % object observation angle ([-pi..pi]) % extract 2D bounding box in 0-based coordinates objects(o).x1 = C{5}(o); % left objects(o).y1 = C{6}(o); % top objects(o).x2 = C{7}(o); % right objects(o).y2 = C{8}(o); % bottom % extract 3D bounding box information objects(o).h = C{9} (o); % box width objects(o).w = C{10}(o); % box height objects(o).l = C{11}(o); % box length objects(o).t(1) = C{12}(o); % location (x) objects(o).t(2) = C{13}(o); % location (y) objects(o).t(3) = C{14}(o); % location (z) objects(o).ry = C{15}(o); % yaw angle end ================================================ FILE: data/kitti_split2/devkit/matlab/run_demo.m ================================================ % KITTI OBJECT DETECTION AND ORIENTATION ESTIMATION BENCHMARK DEMONSTRATION % % This tool displays the images and the object labels for the benchmark and % provides an entry point for writing your own interface to the data set. % Before running this tool, set root_dir to the directory where you have % downloaded the dataset. 'root_dir' must contain the subdirectory % 'training', which in turn contains 'image_2', 'label_2' and 'calib'. % For more information about the data format, please look into readme.txt. % % Usage: % SPACE: next frame % '-': last frame % 'x': +10 frames % 'y': -10 frames % q: quit % % Occlusion Coding: % green: not occluded % yellow: partly occluded % red: fully occluded % white: unknown % % Truncation Coding: % solid: not truncated % dashed: truncated % clear and close everything clear all; close all; disp('======= KITTI DevKit Demo ======='); % options root_dir = '/media/data/kitti/2012_object'; data_set = 'training'; % get sub-directories cam = 2; % 2 = left color camera image_dir = fullfile(root_dir,[data_set '/image_' num2str(cam)]); label_dir = fullfile(root_dir,[data_set '/label_' num2str(cam)]); calib_dir = fullfile(root_dir,[data_set '/calib']); % get number of images for this dataset nimages = length(dir(fullfile(image_dir, '*.png'))); % set up figure h = visualization('init',image_dir); % main loop img_idx=0; while 1 % load projection matrix P = readCalibration(calib_dir,img_idx,cam); % load labels objects = readLabels(label_dir,img_idx); % visualization update for next frame visualization('update',image_dir,h,img_idx,nimages,data_set); % for all annotated objects do for obj_idx=1:numel(objects) % plot 2D bounding box drawBox2D(h,objects(obj_idx)); % plot 3D bounding box [corners,face_idx] = computeBox3D(objects(obj_idx),P); orientation = computeOrientation3D(objects(obj_idx),P); drawBox3D(h, objects(obj_idx),corners,face_idx,orientation); end % force drawing and tiny user interface waitforbuttonpress; key = get(gcf,'CurrentCharacter'); switch lower(key) case 'q', break; % quit case '-', img_idx = max(img_idx-1, 0); % previous frame case 'x', img_idx = min(img_idx+1000,nimages-1); % +100 frames case 'y', img_idx = max(img_idx-1000,0); % -100 frames otherwise, img_idx = min(img_idx+1, nimages-1); % next frame end end % clean up close all; ================================================ FILE: data/kitti_split2/devkit/matlab/run_readWriteDemo.m ================================================ % clear and close everything clear all; close all; disp('======= KITTI DevKit Demo ======='); root_dir = '/media/karlsruhe_data/kitti/2012_object'; train_dir = fullfile(root_dir,'/training/label_2'); test_dir = '.'; % location of your testing dir % read objects of first training image train_objects = readLabels(train_dir,0); % loop over all images % ... YOUR TRAINING CODE HERE ... % ... YOUR TESTING CODE HERE ... % detect one object (car) in first test image test_objects(1).type = 'Car'; test_objects(1).x1 = 10; test_objects(1).y1 = 10; test_objects(1).x2 = 100; test_objects(1).y2 = 100; test_objects(1).alpha = pi/2; test_objects(1).score = 0.5; % write object to file writeLabels(test_objects,test_dir,0); disp('Test label file written!'); ================================================ FILE: data/kitti_split2/devkit/matlab/run_statistics.m ================================================ % KITTI OBJECT DETECTION AND ORIENTATION ESTIMATION BENCHMARK STATISTICS clear all; close all; clc; disp('======= KITTI DevKit Statistics ======='); disp('Computing statistics of Cars, Pedestrians and Cyclists in training set.'); disp('Please wait ...'); % options root_dir = '/media/karlsruhe_data/kitti/2012_object'; % get label directory and number of images label_dir = fullfile(root_dir,'training/label_2'); nimages = length(dir(fullfile(label_dir, '*.txt'))); % init statistics cars.occ = zeros(1,4); peds.occ = zeros(1,4); cycs.occ = zeros(1,4); % compute statistics for j=1:nimages objects = readLabels(label_dir,j-1); for k=1:length(objects) if strcmp(objects(k).type,'Car') cars.occ(objects(k).occlusion+1) = cars.occ(objects(k).occlusion+1) + 1; end if strcmp(objects(k).type,'Pedestrian') peds.occ(objects(k).occlusion+1) = peds.occ(objects(k).occlusion+1) + 1; end if strcmp(objects(k).type,'Cyclist') cycs.occ(objects(k).occlusion+1) = cycs.occ(objects(k).occlusion+1) + 1; end end end % plot statistics fprintf('Cars: Not occluded: %d, partly occluded: %d, largely occluded: %d, unknown: %d\n',cars.occ); fprintf('Pedestrians: Not occluded: %d, partly occluded: %d, largely occluded: %d, unknown: %d\n',peds.occ); fprintf('Cyclists: Not occluded: %d, partly occluded: %d, largely occluded: %d, unknown: %d\n',cycs.occ); ================================================ FILE: data/kitti_split2/devkit/matlab/visualization.m ================================================ function varargout = visualization(mode,image_dir,varargin) switch mode % init figure case 'init' % create figure using size of first image in repository fig = figure(1); img = imread(sprintf('%s/%06d.png',image_dir,0)); set(fig,'position',[0,30,0.8*size(img,2),0.8*2*size(img,1)]); h(1).axes = axes('position',[0,0.5,1,0.5]); h(2).axes = axes('position',[0,0,1,0.5]); varargout{1} = h; % update figure case 'update' % unpack input arguments h = varargin{1}; img_idx = varargin{2}; nimages = varargin{3}; data_set = varargin{4}; % read image img = imread(sprintf('%s/%06d.png',image_dir,img_idx)); % clear axes, draw image cla(h(1).axes); cla(h(2).axes); imshow(img,'parent',h(1).axes); axis(h(1).axes,'image','off'); hold(h(1).axes, 'on'); imshow(img,'parent',h(2).axes); axis(h(2).axes,'image','off'); hold(h(2).axes, 'on'); % title text(size(img,2)/2,3,sprintf('2D Bounding Boxes'),'parent',h(1).axes,'color','g','HorizontalAlignment','center','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); text(size(img,2)/2,3,sprintf('3D Bounding Boxes'),'parent',h(2).axes,'color','g','HorizontalAlignment','center','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); % legend text(0,00,'Not occluded','parent',h(1).axes,'color','g','HorizontalAlignment','left','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); text(0,30,'Partly occluded','parent',h(1).axes,'color','y','HorizontalAlignment','left','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); text(0,60,'Fully occluded','parent',h(1).axes,'color','r','HorizontalAlignment','left','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); text(0,90,'Unknown','parent',h(1).axes,'color','w','HorizontalAlignment','left','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); text(0,120,'Don''t care region','parent',h(1).axes,'color','c','HorizontalAlignment','left','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); % frame number text(size(img,2),0,sprintf('%s set frame %d/%d',data_set,img_idx,nimages-1), 'parent', h(1).axes,'color','g','HorizontalAlignment','right','VerticalAlignment','top','FontSize',14,'FontWeight','bold','BackgroundColor','black'); % usage instructions text(size(img,2)/2,size(img,1),sprintf('''SPACE'': Next Image | ''-'': Previous Image | ''x'': +1000 | ''y'': -1000 | ''q'': quit'), 'parent', h(2).axes,'color','g','HorizontalAlignment','center','VerticalAlignment','bottom','FontSize',14,'FontWeight','bold', 'BackgroundColor','black'); end ================================================ FILE: data/kitti_split2/devkit/matlab/writeLabels.m ================================================ function writeLabels(objects,label_dir,img_idx) % parse input file fid = fopen(sprintf('%s/%06d.txt',label_dir,img_idx),'w'); % for all objects do for o = 1:numel(objects) % set label, truncation, occlusion if isfield(objects(o),'type'), fprintf(fid,'%s ',objects(o).type); else error('ERROR: type not specified!'), end; if isfield(objects(o),'truncation'), fprintf(fid,'%.2f ',objects(o).truncation); else fprintf(fid,'-1 '); end; % default if isfield(objects(o),'occlusion'), fprintf(fid,'%.d ',objects(o).occlusion); else fprintf(fid,'-1 '); end; % default if isfield(objects(o),'alpha'), fprintf(fid,'%.2f ',wrapToPi(objects(o).alpha)); else fprintf(fid,'-10 '); end; % default % set 2D bounding box in 0-based C++ coordinates if isfield(objects(o),'x1'), fprintf(fid,'%.2f ',objects(o).x1); else error('ERROR: x1 not specified!'); end; if isfield(objects(o),'y1'), fprintf(fid,'%.2f ',objects(o).y1); else error('ERROR: y1 not specified!'); end; if isfield(objects(o),'x2'), fprintf(fid,'%.2f ',objects(o).x2); else error('ERROR: x2 not specified!'); end; if isfield(objects(o),'y2'), fprintf(fid,'%.2f ',objects(o).y2); else error('ERROR: y2 not specified!'); end; % set 3D bounding box if isfield(objects(o),'h'), fprintf(fid,'%.2f ',objects(o).h); else fprintf(fid,'-1 '); end; % default if isfield(objects(o),'w'), fprintf(fid,'%.2f ',objects(o).w); else fprintf(fid,'-1 '); end; % default if isfield(objects(o),'l'), fprintf(fid,'%.2f ',objects(o).l); else fprintf(fid,'-1 '); end; % default if isfield(objects(o),'t'), fprintf(fid,'%.2f %.2f %.2f ',objects(o).t); else fprintf(fid,'-1000 -1000 -1000 '); end; % default if isfield(objects(o),'ry'), fprintf(fid,'%.2f ',wrapToPi(objects(o).ry)); else fprintf(fid,'-10 '); end; % default % set score if isfield(objects(o),'score'), fprintf(fid,'%.2f ',objects(o).score); else error('ERROR: score not specified!'); end; % next line fprintf(fid,'\n'); end % close file fclose(fid); function alpha = wrapToPi(alpha) % wrap to [0..2*pi] alpha = mod(alpha,2*pi); % wrap to [-pi..pi] idx = alpha>pi; alpha(idx) = alpha(idx)-2*pi; ================================================ FILE: data/kitti_split2/devkit/readme.txt ================================================ ########################################################################### # THE KITTI VISION BENCHMARK SUITE: OBJECT BENCHMARK # # Andreas Geiger Philip Lenz Raquel Urtasun # # Karlsruhe Institute of Technology # # Toyota Technological Institute at Chicago # # www.cvlibs.net # ########################################################################### For recent updates see http://www.cvlibs.net/datasets/kitti/eval_object.php. This file describes the KITTI 2D object detection and orientation estimation benchmark, the 3D object detection benchmark and the bird's eye view benchmark. The benchmarks consist of 7481 training images (and point clouds) and 7518 test images (and point clouds) for each task. Despite the fact that we have labeled 8 different classes, only the classes 'Car' and 'Pedestrian' are evaluated in our benchmark, as only for those classes enough instances for a comprehensive evaluation have been labeled. The labeling process has been performed in two steps: First we hired a set of annotators, to label 3D bounding boxe tracklets in point clouds. Since for a pedestrian tracklet, a single 3D bounding box tracklet (dimensions have been fixed) often fits badly, we additionally labeled the left/right boundaries of each object by making use of Mechanical Turk. We also collected labels of the object's occlusion state, and computed the object's truncation via backprojecting a car/pedestrian model into the image plane. NOTE: WHEN SUBMITTING RESULTS, PLEASE STORE THEM IN THE SAME DATA FORMAT IN WHICH THE GROUND TRUTH DATA IS PROVIDED (SEE BELOW), USING THE FILE NAMES 000000.txt 000001.txt ... CREATE A ZIP ARCHIVE OF THEM AND STORE YOUR RESULTS (ONLY THE RESULTS OF THE TEST SET) IN ITS ROOT FOLDER. NOTE2: Please read the bottom of this file carefully if you plan to evaluate results yourself on the training set. NOTE3: WHEN SUBMITTING RESULTS FOR THE 3D OBJECT DETECTION BENCHMARK OR THE BIRD'S EYE VIEW BENCHMARK (AS OF 2017), READ THE INSTRUCTIONS BELOW CAREFULLY. IN PARTICULAR, MAKE SURE TO ALWAYS SUBMIT BOTH THE 2D BOUNDING BOXES AND THE 3D BOUNDING BOXES AND FILTER BOUNDING BOXES NOT VISIBLE ON THE IMAGE PLANE. Data Format Description ======================= The data for training and testing can be found in the corresponding folders. The sub-folders are structured as follows: - image_02/ contains the left color camera images (png) - label_02/ contains the left color camera label files (plain text files) - calib/ contains the calibration for all four cameras (plain text file) The label files contain the following information, which can be read and written using the matlab tools (readLabels.m, writeLabels.m) provided within this devkit. All values (numerical or strings) are separated via spaces, each row corresponds to one object. The 15 columns represent: #Values Name Description ---------------------------------------------------------------------------- 1 type Describes the type of object: 'Car', 'Van', 'Truck', 'Pedestrian', 'Person_sitting', 'Cyclist', 'Tram', 'Misc' or 'DontCare' 1 truncated Float from 0 (non-truncated) to 1 (truncated), where truncated refers to the object leaving image boundaries 1 occluded Integer (0,1,2,3) indicating occlusion state: 0 = fully visible, 1 = partly occluded 2 = largely occluded, 3 = unknown 1 alpha Observation angle of object, ranging [-pi..pi] 4 bbox 2D bounding box of object in the image (0-based index): contains left, top, right, bottom pixel coordinates 3 dimensions 3D object dimensions: height, width, length (in meters) 3 location 3D object location x,y,z in camera coordinates (in meters) 1 rotation_y Rotation ry around Y-axis in camera coordinates [-pi..pi] 1 score Only for results: Float, indicating confidence in detection, needed for p/r curves, higher is better. Here, 'DontCare' labels denote regions in which objects have not been labeled, for example because they have been too far away from the laser scanner. To prevent such objects from being counted as false positives our evaluation script will ignore objects detected in don't care regions of the test set. You can use the don't care labels in the training set to avoid that your object detector is harvesting hard negatives from those areas, in case you consider non-object regions from the training images as negative examples. The coordinates in the camera coordinate system can be projected in the image by using the 3x4 projection matrix in the calib folder, where for the left color camera for which the images are provided, P2 must be used. The difference between rotation_y and alpha is, that rotation_y is directly given in camera coordinates, while alpha also considers the vector from the camera center to the object center, to compute the relative orientation of the object with respect to the camera. For example, a car which is facing along the X-axis of the camera coordinate system corresponds to rotation_y=0, no matter where it is located in the X/Z plane (bird's eye view), while alpha is zero only, when this object is located along the Z-axis of the camera. When moving the car away from the Z-axis, the observation angle will change. To project a point from Velodyne coordinates into the left color image, you can use this formula: x = P2 * R0_rect * Tr_velo_to_cam * y For the right color image: x = P3 * R0_rect * Tr_velo_to_cam * y Note: All matrices are stored row-major, i.e., the first values correspond to the first row. R0_rect contains a 3x3 matrix which you need to extend to a 4x4 matrix by adding a 1 as the bottom-right element and 0's elsewhere. Tr_xxx is a 3x4 matrix (R|t), which you need to extend to a 4x4 matrix in the same way! Note, that while all this information is available for the training data, only the data which is actually needed for the particular benchmark must be provided to the evaluation server. However, all 15 values must be provided at all times, with the unused ones set to their default values (=invalid) as specified in writeLabels.m. Additionally a 16'th value must be provided with a floating value of the score for a particular detection, where higher indicates higher confidence in the detection. The range of your scores will be automatically determined by our evaluation server, you don't have to normalize it, but it should be roughly linear. If you use writeLabels.m for writing your results, this function will take care of storing all required data correctly. 2D Object Detection Benchmark ============================= The goal in the 2D object detection task is to train object detectors for the classes 'Car', 'Pedestrian', and 'Cyclist'. The object detectors must provide as output the 2D 0-based bounding box in the image using the format specified above, as well as a detection score, indicating the confidence in the detection. All other values must be set to their default values (=invalid), see above. One text file per image must be provided in a zip archive, where each file can contain many detections, depending on the number of objects per image. In our evaluation we only evaluate detections/ objects larger than 25 pixel (height) in the image and do not count 'Van' as false positives for 'Car' or 'Sitting Person' as false positive for 'Pedestrian' due to their similarity in appearance. As evaluation criterion we follow PASCAL and require the intersection-over-union of bounding boxes to be larger than 50% for an object to be detected correctly. Object Orientation Estimation Benchmark ======================================= This benchmark is similar as the previous one, except that you have to provide additionally the most likely relative object observation angle (=alpha) for each detection. As described in our paper, our score here considers both, the detection performance as well as the orientation estimation performance of the algorithm jointly. 3D Object Detection Benchmark ============================= The goal in the 3D object detection task is to train object detectors for the classes 'Car', 'Pedestrian', and 'Cyclist'. The object detectors must provide BOTH the 2D 0-based bounding box in the image as well as the 3D bounding box (in the format specified above, i.e. 3D dimensions and 3D locations) and the detection score/confidence. Note that the 2D bounding box should correspond to the projection of the 3D bounding box - this is required to filter objects larger than 25 pixel (height). We also note that not all objects in the point clouds have been labeled. To avoid false positives, detections not visible on the image plane should be filtered (the evaluation does not take care of this, see 'cpp/evaluate_object.cpp'). Similar to the 2D object detection benchmark, we do not count 'Van' as false positives for 'Car' or 'Sitting Person' as false positive for 'Pedestrian'. Evaluation criterion follows the 2D object detection benchmark (using 3D bounding box overlap). Bird's Eye View Benchmark ========================= The goal in the bird's eye view detection task is to train object detectors for the classes 'Car', 'Pedestrian', and 'Cyclist' where the detectors must provide BOTH the 2D 0-based bounding box in the image as well as the 3D bounding box in bird's eye view and the detection score/confidence. This means that the 3D bounding box does not have to include information on the height axis, i.e. the height of the bounding box and the bounding box location along the height axis. For example, when evaluating the bird's eye view benchmark only (without the 3D object detection benchmark), the height of the bounding box can be set to a value equal to or smaller than zero. Similarly, the y-axis location of the bounding box can be set to -1000 (note that an arbitrary negative value will not work). As above, we note that the 2D bounding boxes are required to filter objects larger than 25 pixel (height) and that - to avoid false positives - detections not visible on the image plane should be filtered. As in all benchmarks, we do not count 'Van' as false positives for 'Car' or 'Sitting Person' as false positive for 'Pedestrian'. Evaluation criterion follows the above benchmarks using a bird's eye view bounding box overlap. Mapping to Raw Data =================== Note that this section is additional to the benchmark, and not required for solving the object detection task. In order to allow the usage of the laser point clouds, gps data, the right camera image and the grayscale images for the TRAINING data as well, we provide the mapping of the training set to the raw data of the KITTI dataset. This information is saved in mapping/train_mapping.txt and train_rand.txt: train_rand.txt: Random permutation, assigning a unique index to each image from the object detection training set. The index is 1-based. train_mapping.txt: Maps each unique index (= 1-based line numbers) to a zip file of the KITTI raw data set files. Note that those files are split into several categories on the website! Example: Image 0 from the training set has index 7282 and maps to date 2011_09_28, drive 106 and frame 48. Drives and frames are 0-based. Evaluation Protocol: ==================== For transparency we have included the KITTI evaluation code in the subfolder 'cpp' of this development kit. It can be compiled via: g++ -O3 -DNDEBUG -o evaluate_object evaluate_object.cpp or using CMake and the provided 'CMakeLists.txt'. IMPORTANT NOTE: This code will result in 41 values (41 recall discretization steps). However, note that in order to compute average precision, we follow the PASCAL protocol and average by summing in 10% recall steps. The pseudocode for computing average precision or orientation similarity is given as follows: sum = 0; for (i=0; i<=40; i+=4) sum += vals[i]; average = sum/11.0; ================================================ FILE: data/kitti_split2/setup_split.py ================================================ from importlib import import_module from getopt import getopt import scipy.io as sio import matplotlib.pyplot as plt from matplotlib.path import Path import numpy as np import pprint import sys import os import cv2 import math import shutil import re from scipy.io import loadmat # stop python from writing so much bytecode sys.dont_write_bytecode = True sys.path.append(os.getcwd()) np.set_printoptions(suppress=True) # ----------------------------------------- # custom modules # ----------------------------------------- from lib.util import * split = 'kitti_split2' # base paths base_data = os.path.join(os.getcwd(), 'data') kitti_raw = dict() kitti_raw['cal'] = os.path.join(base_data, 'kitti', 'training', 'calib') kitti_raw['ims'] = os.path.join(base_data, 'kitti', 'training', 'image_2') kitti_raw['lab'] = os.path.join(base_data, 'kitti', 'training', 'label_2') kitti_tra = dict() kitti_tra['cal'] = os.path.join(base_data, split, 'training', 'calib') kitti_tra['ims'] = os.path.join(base_data, split, 'training', 'image_2') kitti_tra['lab'] = os.path.join(base_data, split, 'training', 'label_2') kitti_val = dict() kitti_val['cal'] = os.path.join(base_data, split, 'validation', 'calib') kitti_val['ims'] = os.path.join(base_data, split, 'validation', 'image_2') kitti_val['lab'] = os.path.join(base_data, split, 'validation', 'label_2') split_data = loadmat(os.path.join(base_data, split, 'kitti_ids_new.mat')) # mkdirs mkdir_if_missing(kitti_tra['cal']) mkdir_if_missing(kitti_tra['ims']) mkdir_if_missing(kitti_tra['lab']) mkdir_if_missing(kitti_val['cal']) mkdir_if_missing(kitti_val['ims']) mkdir_if_missing(kitti_val['lab']) print('Linking {} train'.format(split_data['ids_train'][0].shape[0])) imind = 0 for id_num in split_data['ids_train'][0]: id = '{:06d}'.format(id_num) new_id = '{:06d}'.format(imind) if not os.path.exists(os.path.join(kitti_tra['cal'], str(new_id) + '.txt')): os.symlink(os.path.join(kitti_raw['cal'], str(id) + '.txt'), os.path.join(kitti_tra['cal'], str(new_id) + '.txt')) if not os.path.exists(os.path.join(kitti_tra['ims'], str(new_id) + '.png')): os.symlink(os.path.join(kitti_raw['ims'], str(id) + '.png'), os.path.join(kitti_tra['ims'], str(new_id) + '.png')) if not os.path.exists(os.path.join(kitti_tra['lab'], str(new_id) + '.txt')): os.symlink(os.path.join(kitti_raw['lab'], str(id) + '.txt'), os.path.join(kitti_tra['lab'], str(new_id) + '.txt')) imind += 1 print('Linking {} val'.format(split_data['ids_val'][0].shape[0])) imind = 0 for id_num in split_data['ids_val'][0]: id = '{:06d}'.format(id_num) new_id = '{:06d}'.format(imind) if not os.path.exists(os.path.join(kitti_val['cal'], str(new_id) + '.txt')): os.symlink(os.path.join(kitti_raw['cal'], str(id) + '.txt'), os.path.join(kitti_val['cal'], str(new_id) + '.txt')) if not os.path.exists(os.path.join(kitti_val['ims'], str(new_id) + '.png')): os.symlink(os.path.join(kitti_raw['ims'], str(id) + '.png'), os.path.join(kitti_val['ims'], str(new_id) + '.png')) if not os.path.exists(os.path.join(kitti_val['lab'], str(new_id) + '.txt')): os.symlink(os.path.join(kitti_raw['lab'], str(id) + '.txt'), os.path.join(kitti_val['lab'], str(new_id) + '.txt')) imind += 1 print('Done') ================================================ FILE: lib/augmentations.py ================================================ """ This file contains all PyTroch data augmentation functions. Every transform should have a __call__ function which takes in (self, image, imobj) where imobj is an arbitary dict containing relevant information to the image. In many cases the imobj can be None, which enables the same augmentations to be used during testing as they are in training. Optionally, most transforms should have an __init__ function as well, if needed. """ import numpy as np from numpy import random import cv2 import math import os import sys from lib.util import * class Compose(object): """ Composes a set of functions which take in an image and an object, into a single transform """ def __init__(self, transforms): self.transforms = transforms def __call__(self, img, imobj=None): for t in self.transforms: img, imobj = t(img, imobj) return img, imobj class ConvertToFloat(object): """ Converts image data type to float. """ def __call__(self, image, imobj=None): return image.astype(np.float32), imobj class Normalize(object): """ Normalize the image """ def __init__(self, mean, stds): self.mean = np.array(mean, dtype=np.float32) self.stds = np.array(stds, dtype=np.float32) def __call__(self, image, imobj=None): image = image.astype(np.float32) image /= 255.0 image -= np.tile(self.mean, int(image.shape[2]/self.mean.shape[0])) image /= np.tile(self.stds, int(image.shape[2]/self.stds.shape[0])) return image.astype(np.float32), imobj class Resize(object): """ Resize the image according to the target size height and the image height. If the image needs to be cropped after the resize, we crop it to self.size, otherwise we pad it with zeros along the right edge If the object has ground truths we also scale the (known) box coordinates. """ def __init__(self, size): self.size = size def __call__(self, image, imobj=None): scale_factor = self.size[0] / image.shape[0] h = np.round(image.shape[0] * scale_factor).astype(int) w = np.round(image.shape[1] * scale_factor).astype(int) # resize image = cv2.resize(image, (w, h)) if len(self.size) > 1: # crop in if image.shape[1] > self.size[1]: image = image[:, 0:self.size[1], :] # pad out elif image.shape[1] < self.size[1]: padW = self.size[1] - image.shape[1] image = np.pad(image, [(0, 0), (0, padW), (0, 0)], 'constant') if imobj: # store scale factor, just in case imobj.scale_factor = scale_factor if 'gts' in imobj: # scale all coordinates for gtind, gt in enumerate(imobj.gts): if 'bbox_full' in imobj.gts[gtind]: imobj.gts[gtind].bbox_full *= scale_factor if 'bbox_vis' in imobj.gts[gtind]: imobj.gts[gtind].bbox_vis *= scale_factor if 'bbox_3d' in imobj.gts[gtind]: # only scale x/y center locations (in 2D space!) imobj.gts[gtind].bbox_3d[0] *= scale_factor imobj.gts[gtind].bbox_3d[1] *= scale_factor if 'gts_pre' in imobj: # scale all coordinates for gtind, gt in enumerate(imobj.gts_pre): if 'bbox_full' in imobj.gts_pre[gtind]: imobj.gts_pre[gtind].bbox_full *= scale_factor if 'bbox_vis' in imobj.gts_pre[gtind]: imobj.gts_pre[gtind].bbox_vis *= scale_factor if 'bbox_3d' in imobj.gts_pre[gtind]: # only scale x/y center locations (in 2D space!) imobj.gts_pre[gtind].bbox_3d[0] *= scale_factor imobj.gts_pre[gtind].bbox_3d[1] *= scale_factor return image, imobj class RandomSaturation(object): """ Randomly adjust the saturation of an image given a lower and upper bound, and a distortion probability. This function assumes the image is in HSV!! """ def __init__(self, distort_prob, lower=0.5, upper=1.5): self.distort_prob = distort_prob self.lower = lower self.upper = upper assert self.upper >= self.lower, "contrast upper must be >= lower." assert self.lower >= 0, "contrast lower must be non-negative." def __call__(self, image, imobj=None): if random.rand() <= self.distort_prob: image[:, :, 1] *= random.uniform(self.lower, self.upper) return image, imobj class RandomHue(object): """ Randomly adjust the hue of an image given a delta degree to rotate by, and a distortion probability. This function assumes the image is in HSV!! """ def __init__(self, distort_prob, delta=18.0): assert delta >= 0.0 and delta <= 360.0 self.delta = delta self.distort_prob = distort_prob def __call__(self, image, imobj=None): if random.rand() <= self.distort_prob: image[:, :, 0] += random.uniform(-self.delta, self.delta) image[:, :, 0][image[:, :, 0] > 360.0] -= 360.0 image[:, :, 0][image[:, :, 0] < 0.0] += 360.0 return image, imobj class ConvertColor(object): """ Converts color spaces to/from HSV and BGR """ def __init__(self, current='BGR', transform='HSV'): self.transform = transform self.current = current def __call__(self, image, imobj=None): # BGR --> HSV if self.current == 'BGR' and self.transform == 'HSV': image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV) # HSV --> BGR elif self.current == 'HSV' and self.transform == 'BGR': image = cv2.cvtColor(image, cv2.COLOR_HSV2BGR) else: raise NotImplementedError return image, imobj class RandomContrast(object): """ Randomly adjust contrast of an image given lower and upper bound, and a distortion probability. """ def __init__(self, distort_prob, lower=0.5, upper=1.5): self.lower = lower self.upper = upper self.distort_prob = distort_prob assert self.upper >= self.lower, "contrast upper must be >= lower." assert self.lower >= 0, "contrast lower must be non-negative." def __call__(self, image, imobj=None): if random.rand() <= self.distort_prob: alpha = random.uniform(self.lower, self.upper) image *= alpha return image, imobj class RandomMirror(object): """ Randomly mirror an image horzontially, given a mirror probabilty. Also, adjust all box cordinates accordingly. """ def __init__(self, mirror_prob): self.mirror_prob = mirror_prob def __call__(self, image, imobj): _, width, _ = image.shape if random.rand() <= self.mirror_prob: image = image[:, ::-1, :] image = np.ascontiguousarray(image) # flip the coordinates w.r.t the horizontal flip (only adjust X) for gtind, gt in enumerate(imobj.gts): if 'bbox_full' in imobj.gts[gtind]: imobj.gts[gtind].bbox_full[0] = image.shape[1] - gt.bbox_full[0] - gt.bbox_full[2] if 'bbox_vis' in imobj.gts[gtind]: imobj.gts[gtind].bbox_vis[0] = image.shape[1] - gt.bbox_vis[0] - gt.bbox_vis[2] if 'bbox_3d' in imobj.gts[gtind]: imobj.gts[gtind].bbox_3d[0] = image.shape[1] - gt.bbox_3d[0] - 1 rotY = gt.bbox_3d[10] rotY = (-math.pi - rotY) if rotY < 0 else (math.pi - rotY) while rotY > math.pi: rotY -= math.pi * 2 while rotY < (-math.pi): rotY += math.pi * 2 cx2d = gt.bbox_3d[0] cy2d = gt.bbox_3d[1] cz2d = gt.bbox_3d[2] coord3d = imobj.p2_inv.dot(np.array([cx2d * cz2d, cy2d * cz2d, cz2d, 1])) alpha = convertRot2Alpha(rotY, coord3d[2], coord3d[0]) imobj.gts[gtind].bbox_3d[10] = rotY imobj.gts[gtind].bbox_3d[6] = alpha return image, imobj class RandomBrightness(object): """ Randomly adjust the brightness of an image given given a +- delta range, and a distortion probability. """ def __init__(self, distort_prob, delta=32): assert delta >= 0.0 assert delta <= 255.0 self.delta = delta self.distort_prob = distort_prob def __call__(self, image, imobj=None): if random.rand() <= self.distort_prob: delta = random.uniform(-self.delta, self.delta) image += delta return image, imobj class PhotometricDistort(object): """ Packages all photometric distortions into a single transform. """ def __init__(self, distort_prob): self.distort_prob = distort_prob # contrast is duplicated because it may happen before or after # the other transforms with equal probability. self.transforms = [ RandomContrast(distort_prob), ConvertColor(transform='HSV'), RandomSaturation(distort_prob), RandomHue(distort_prob), ConvertColor(current='HSV', transform='BGR'), RandomContrast(distort_prob) ] self.rand_brightness = RandomBrightness(distort_prob) def __call__(self, image, imobj): # do contrast first if random.rand() <= 0.5: distortion = self.transforms[:-1] # do contrast last else: distortion = self.transforms[1:] # add random brightness distortion.insert(0, self.rand_brightness) # compose transformation distortion = Compose(distortion) return distortion(image.copy(), imobj) class Augmentation(object): """ Data Augmentation class which packages the typical pre-processing and all data augmentation transformations (mirror and photometric distort) into a single transform. """ def __init__(self, conf): self.mean = conf.image_means self.stds = conf.image_stds self.size = conf.crop_size self.mirror_prob = conf.mirror_prob self.distort_prob = conf.distort_prob if conf.distort_prob <= 0: self.augment = Compose([ ConvertToFloat(), RandomMirror(self.mirror_prob), Resize(self.size), Normalize(self.mean, self.stds) ]) else: self.augment = Compose([ ConvertToFloat(), PhotometricDistort(self.distort_prob), RandomMirror(self.mirror_prob), Resize(self.size), Normalize(self.mean, self.stds) ]) def __call__(self, img, imobj): return self.augment(img, imobj) class Preprocess(object): """ Preprocess function which ONLY does the basic pre-processing of an image, meant to be used during the testing/eval stages. """ def __init__(self, size, mean, stds): self.mean = mean self.stds = stds self.size = size self.preprocess = Compose([ ConvertToFloat(), Resize(self.size), Normalize(self.mean, self.stds) ]) def __call__(self, img): img = self.preprocess(img)[0] for i in range(int(img.shape[2]/3)): # convert to RGB then permute to be [B C H W] img[:, :, (i*3):(i*3) + 3] = img[:, :, (i*3+2, i*3+1, i*3)] img = np.transpose(img, [2, 0, 1]) return img ================================================ FILE: lib/core.py ================================================ """ This file is meant to contain all functions of the detective framework which are "specific" to the framework but generic among experiments. For example, all the experiments need to initialize configs, training models, log stats, display stats, and etc. However, these functions are generally fixed to this framework and cannot be easily transferred in other projects. """ # ----------------------------------------- # python modules # ----------------------------------------- from easydict import EasyDict as edict from shapely.geometry import Polygon import matplotlib.pyplot as plt from copy import copy import importlib import random import visdom import torch import shutil import sys import os import cv2 import math # stop python from writing so much bytecode sys.dont_write_bytecode = True # ----------------------------------------- # custom modules # ----------------------------------------- from lib.util import * def init_config(conf_name): """ Loads configuration file, by checking for the conf_name.py configuration file as ./config/.py which must have function "Config". This function must return a configuration dictionary with any necessary variables for the experiment. """ conf = importlib.import_module('config.' + conf_name).Config() return conf def init_training_model(conf, cache_folder): """ This function is meant to load the training model and optimizer, which expects ./model/.py to be the pytorch model file. The function copies the model file into the cache BEFORE loading, for easy reproducibility. """ src_path = os.path.join('.', 'models', conf.model + '.py') dst_path = os.path.join(cache_folder, conf.model + '.py') # (re-) copy the pytorch model file if os.path.exists(dst_path): os.remove(dst_path) shutil.copyfile(src_path, dst_path) # load and build network = absolute_import(dst_path) network = network.build(conf, 'train') # multi-gpu network = torch.nn.DataParallel(network) # load SGD if conf.solver_type.lower() == 'sgd': lr = conf.lr mo = conf.momentum wd = conf.weight_decay optimizer = torch.optim.SGD(network.parameters(), lr=lr, momentum=mo, weight_decay=wd) # load adam elif conf.solver_type.lower() == 'adam': lr = conf.lr wd = conf.weight_decay optimizer = torch.optim.Adam(network.parameters(), lr=lr, weight_decay=wd) # load adamax elif conf.solver_type.lower() == 'adamax': lr = conf.lr wd = conf.weight_decay optimizer = torch.optim.Adamax(network.parameters(), lr=lr, weight_decay=wd) return network, optimizer def adjust_lr(conf, optimizer, iter): """ Adjusts the learning rate of an optimizer according to iteration and configuration, primarily regarding regular SGD learning rate policies. Args: conf (dict): configuration dictionary optimizer (object): pytorch optim object iter (int): current iteration """ if 'batch_skip' in conf and ((iter + 1) % conf.batch_skip) > 0: return if conf.solver_type.lower() == 'sgd': lr = conf.lr lr_steps = conf.lr_steps max_iter = conf.max_iter lr_policy = conf.lr_policy lr_target = conf.lr_target if lr_steps: steps = np.array(lr_steps) * max_iter total_steps = steps.shape[0] step_count = np.sum((steps - iter) <= 0) else: total_steps = max_iter step_count = iter # perform the exact number of steps needed to get to lr_target if lr_policy.lower() == 'step': scale = (lr_target / lr) ** (1 / total_steps) lr *= scale ** step_count # compute the scale needed to go from lr --> lr_target # using a polynomial function instead. elif lr_policy.lower() == 'poly': power = 0.9 scale = total_steps / (1 - (lr_target / lr) ** (1 / power)) lr *= (1 - step_count / scale) ** power else: raise ValueError('{} lr_policy not understood'.format(lr_policy)) # update the actual learning rate for gind, g in enumerate(optimizer.param_groups): g['lr'] = lr def intersect(box_a, box_b, mode='combinations', data_type=None): """ Computes the amount of intersect between two different sets of boxes. Args: box_a (nparray): Mx4 boxes, defined by [x1, y1, x2, y2] box_a (nparray): Nx4 boxes, defined by [x1, y1, x2, y2] mode (str): either 'combinations' or 'list', where combinations will check all combinations of box_a and box_b hence MxN array, and list expects the same size list M == N, hence returns Mx1 array. data_type (type): either torch.Tensor or np.ndarray, we automatically determine otherwise """ # determine type if data_type is None: data_type = type(box_a) # this mode computes the intersect in the sense of combinations. # i.e., box_a = M x 4, box_b = N x 4 then the output is M x N if mode == 'combinations': # np.ndarray if data_type == np.ndarray: max_xy = np.minimum(box_a[:, 2:4], np.expand_dims(box_b[:, 2:4], axis=1)) min_xy = np.maximum(box_a[:, 0:2], np.expand_dims(box_b[:, 0:2], axis=1)) inter = np.clip((max_xy - min_xy), a_min=0, a_max=None) # unknown type else: raise ValueError('type {} is not implemented'.format(data_type)) return inter[:, :, 0] * inter[:, :, 1] # this mode computes the intersect in the sense of list_a vs. list_b. # i.e., box_a = M x 4, box_b = M x 4 then the output is Mx1 elif mode == 'list': # torch.Tesnor if data_type == torch.Tensor: max_xy = torch.min(box_a[:, 2:], box_b[:, 2:]) min_xy = torch.max(box_a[:, :2], box_b[:, :2]) inter = torch.clamp((max_xy - min_xy), 0) # np.ndarray elif data_type == np.ndarray: max_xy = np.min(box_a[:, 2:], box_b[:, 2:]) min_xy = np.max(box_a[:, :2], box_b[:, :2]) inter = np.clip((max_xy - min_xy), a_min=0, a_max=None) # unknown type else: raise ValueError('unknown data type {}'.format(data_type)) return inter[:, 0] * inter[:, 1] else: raise ValueError('unknown mode {}'.format(mode)) def iou3d(corners_3d_b1, corners_3d_b2, vol): corners_3d_b1 = copy.copy(corners_3d_b1) corners_3d_b2 = copy.copy(corners_3d_b2) corners_3d_b1 = corners_3d_b1.T corners_3d_b2 = corners_3d_b2.T y_min_b1 = np.min(corners_3d_b1[:, 1]) y_max_b1 = np.max(corners_3d_b1[:, 1]) y_min_b2 = np.min(corners_3d_b2[:, 1]) y_max_b2 = np.max(corners_3d_b2[:, 1]) y_intersect = np.max([0, np.min([y_max_b1, y_max_b2]) - np.max([y_min_b1, y_min_b2])]) # set Z as Y corners_3d_b1[:, 1] = corners_3d_b1[:, 2] corners_3d_b2[:, 1] = corners_3d_b2[:, 2] polygon_order = [7, 2, 3, 6, 7] box_b1_bev = Polygon([list(corners_3d_b1[i][0:2]) for i in polygon_order]) box_b2_bev = Polygon([list(corners_3d_b2[i][0:2]) for i in polygon_order]) intersect_bev = box_b2_bev.intersection(box_b1_bev).area intersect_3d = y_intersect * intersect_bev iou_bev = intersect_bev / (box_b2_bev.area + box_b1_bev.area - intersect_bev) iou_3d = intersect_3d / (vol - intersect_3d) return iou_bev, iou_3d def iou(box_a, box_b, mode='combinations', data_type=None): """ Computes the amount of Intersection over Union (IoU) between two different sets of boxes. Args: box_a (nparray): Mx4 boxes, defined by [x1, y1, x2, y2] box_a (nparray): Nx4 boxes, defined by [x1, y1, x2, y2] mode (str): either 'combinations' or 'list', where combinations will check all combinations of box_a and box_b hence MxN array, and list expects the same size list M == N, hence returns Mx1 array. data_type (type): either torch.Tensor or np.ndarray, we automatically determine otherwise """ # determine type if data_type is None: data_type = type(box_a) # this mode computes the IoU in the sense of combinations. # i.e., box_a = M x 4, box_b = N x 4 then the output is M x N if mode == 'combinations': inter = intersect(box_a, box_b, data_type=data_type) area_a = ((box_a[:, 2] - box_a[:, 0]) * (box_a[:, 3] - box_a[:, 1])) area_b = ((box_b[:, 2] - box_b[:, 0]) * (box_b[:, 3] - box_b[:, 1])) union = np.expand_dims(area_a, 0) + np.expand_dims(area_b, 1) - inter # torch.Tensor if data_type == torch.Tensor: return (inter / union).permute(1, 0) # np.ndarray elif data_type == np.ndarray: return (inter / union).T # unknown type else: raise ValueError('unknown data type {}'.format(data_type)) # this mode compares every box in box_a with target in box_b # i.e., box_a = M x 4 and box_b = M x 4 then output is M x 1 elif mode == 'list': inter = intersect(box_a, box_b, mode=mode) area_a = (box_a[:, 2] - box_a[:, 0]) * (box_a[:, 3] - box_a[:, 1]) area_b = (box_b[:, 2] - box_b[:, 0]) * (box_b[:, 3] - box_b[:, 1]) union = area_a + area_b - inter return inter / union else: raise ValueError('unknown mode {}'.format(mode)) def iou_ign(box_a, box_b, mode='combinations', data_type=None): """ Computes the amount of overap of box_b has within box_a, which is handy for dealing with ignore regions. Hence, assume that box_b are ignore regions and box_a are anchor boxes, then we may want to know how much overlap the anchors have inside of the ignore regions (hence ignore area_b!) Args: box_a (nparray): Mx4 boxes, defined by [x1, y1, x2, y2] box_a (nparray): Nx4 boxes, defined by [x1, y1, x2, y2] mode (str): either 'combinations' or 'list', where combinations will check all combinations of box_a and box_b hence MxN array, and list expects the same size list M == N, hence returns Mx1 array. data_type (type): either torch.Tensor or np.ndarray, we automatically determine otherwise """ if data_type is None: data_type = type(box_a) # this mode computes the IoU in the sense of combinations. # i.e., box_a = M x 4, box_b = N x 4 then the output is M x N if mode == 'combinations': inter = intersect(box_a, box_b, data_type=data_type) area_a = ((box_a[:, 2] - box_a[:, 0]) * (box_a[:, 3] - box_a[:, 1])) area_b = ((box_b[:, 2] - box_b[:, 0]) * (box_b[:, 3] - box_b[:, 1])) union = np.expand_dims(area_a, 0) + np.expand_dims(area_b, 1) * 0 - inter * 0 # torch and numpy have different calls for transpose if data_type == torch.Tensor: return (inter / union).permute(1, 0) elif data_type == np.ndarray: return (inter / union).T # unknown type else: raise ValueError('unknown data type {}'.format(data_type)) else: raise ValueError('unknown mode {}'.format(mode)) def freeze_layers(network, blacklist=None, whitelist=None, verbose=False): if blacklist is not None: for name, param in network.named_parameters(): if not any([allowed in name for allowed in blacklist]): if verbose: logging.info('freezing {}'.format(name)) param.requires_grad = False for name, module in network.named_modules(): if not any([allowed in name for allowed in blacklist]): if isinstance(module, torch.nn.BatchNorm2d): module.eval() if whitelist is not None: for name, param in network.named_parameters(): if any([banned in name for banned in whitelist]): if verbose: logging.info('freezing {}'.format(name)) param.requires_grad = False #else: # logging.info('NOT freezing {}'.format(name)) for name, module in network.named_modules(): if any([banned in name for banned in whitelist]): if isinstance(module, torch.nn.BatchNorm2d): module.eval() def load_weights(model, path, remove_module=False): """ Simply loads a pytorch models weights from a given path. """ dst_weights = model.state_dict() src_weights = torch.load(path) dst_keys = list(dst_weights.keys()) src_keys = list(src_weights.keys()) if remove_module: # copy keys without module for key in src_keys: src_weights[key.replace('module.', '')] = src_weights[key] del src_weights[key] src_keys = list(src_weights.keys()) # remove keys not in dst for key in src_keys: if key not in dst_keys: del src_weights[key] else: # remove keys not in dst for key in src_keys: if key not in dst_keys: del src_weights[key] # add keys not in src for key in dst_keys: if key not in src_keys: src_weights[key] = dst_weights[key] model.load_state_dict(src_weights) def log_stats(tracker, iteration, start_time, start_iter, max_iter, skip=1): """ This function writes the given stats to the log / prints to the screen. Also, computes the estimated time arrival (eta) for completion and (dt) delta time per iteration. Args: tracker (array): dictionary array tracker objects. See below. iteration (int): the current iteration start_time (float): starting time of whole experiment start_iter (int): starting iteration of whole experiment max_iter (int): maximum iteration to go to A tracker object is a dictionary with the following: "name": the name of the statistic being tracked, e.g., 'fg_acc', 'abs_z' "group": an arbitrary group key, e.g., 'loss', 'acc', 'misc' "format": the python string format to use (see official str format function in python), e.g., '{:.2f}' for a float with 2 decimal places. """ display_str = 'iter: {}'.format((int((iteration + 1)/skip))) # compute eta time_str, dt = compute_eta(start_time, iteration - start_iter, max_iter - start_iter) # cycle through all tracks last_group = '' for key in sorted(tracker.keys()): if type(tracker[key]) == list: # compute mean meanval = np.mean(tracker[key]) # get properties format = tracker[key + '_obj'].format group = tracker[key + '_obj'].group name = tracker[key + '_obj'].name # logic to have the string formatted nicely # basically roughly this format: # iter: {}, group_1 (name: val, name: val), group_2 (name: val), dt: val, eta: val if last_group != group and last_group == '': display_str += (', {} ({}: ' + format).format(group, name, meanval) elif last_group != group: display_str += ('), {} ({}: ' + format).format(group, name, meanval) else: display_str += (', {}: ' + format).format(name, meanval) last_group = group # append dt and eta display_str += '), dt: {:0.2f}, eta: {}'.format(dt, time_str) # log logging.info(display_str) def display_stats(vis, tracker, iteration, start_time, start_iter, max_iter, conf_name, conf_pretty, skip=1): """ This function plots the statistics using visdom package, similar to the log_stats function. Also, computes the estimated time arrival (eta) for completion and (dt) delta time per iteration. Args: vis (visdom): the main visdom session object tracker (array): dictionary array tracker objects. See below. iteration (int): the current iteration start_time (float): starting time of whole experiment start_iter (int): starting iteration of whole experiment max_iter (int): maximum iteration to go to conf_name (str): experiment name used for visdom display conf_pretty (str): pretty string with ALL configuration params to display A tracker object is a dictionary with the following: "name": the name of the statistic being tracked, e.g., 'fg_acc', 'abs_z' "group": an arbitrary group key, e.g., 'loss', 'acc', 'misc' "format": the python string format to use (see official str format function in python), e.g., '{:.2f}' for a float with 2 decimal places. """ # compute eta time_str, dt = compute_eta(start_time, iteration - start_iter, max_iter - start_iter) # general info info = 'Experiment: {}, Eta: {}, Time/it: {:0.2f}s\n'.format(conf_name, time_str, dt) info += conf_pretty # replace all newlines and spaces with line break
and non-breaking spaces   info = info.replace('\n', '
') info = info.replace(' ', ' ') # pre-formatted html tag info = '
' + info + '
    weights =  ./output//weights
    results =  ./output//results
    logs    =  ./output//log

    Args:
        conf_name (str): configuration experiment name (used for storage into ./output/)
    """

    # make paths
    paths = edict()
    paths.base = os.getcwd()
    paths.data = os.path.join(paths.base, 'data')
    paths.output = os.path.join(os.getcwd(), 'output', conf_name)
    paths.weights = os.path.join(paths.output, 'weights')
    paths.logs = os.path.join(paths.output, 'log')

    if use_tmp_folder: paths.results = os.path.join(paths.base, '.tmp_results', conf_name, 'results')
    else: paths.results = os.path.join(paths.output, 'results')

    # make directories
    mkdir_if_missing(paths.output)
    mkdir_if_missing(paths.logs)
    mkdir_if_missing(paths.weights)
    mkdir_if_missing(paths.results)

    return paths


def init_torch(rng_seed, cuda_seed):
    """
    Initializes the seeds for ALL potential randomness, including torch, numpy, and random packages.

    Args:
        rng_seed (int): the shared random seed to use for numpy and random
        cuda_seed (int): the random seed to use for pytorch's torch.cuda.manual_seed_all function
    """

    # default tensor
    torch.set_default_tensor_type('torch.cuda.FloatTensor')

    # seed everything
    torch.manual_seed(rng_seed)
    np.random.seed(rng_seed)
    random.seed(rng_seed)
    torch.cuda.manual_seed_all(cuda_seed)

    # make the code deterministic
    torch.backends.cudnn.deterministic = True
    torch.backends.cudnn.benchmark = False


def init_visdom(conf_name, visdom_port):
    """
    Simply initializes a visdom session (if possible) then closes all windows within it.
    If there is no visdom server running (externally), then function will return 'None'.
    """
    try:
        vis = visdom.Visdom(port=visdom_port, env=conf_name)
        vis.close(env=conf_name, win=None)

        if vis.socket_alive:
            return vis
        else:
            return None

    except:
        return None


def check_tensors():
    """
    Checks on tensors currently loaded within PyTorch
    for debugging purposes only (esp memory leaks).
    """
    for obj in gc.get_objects():
        try:
            if torch.is_tensor(obj) or (hasattr(obj, 'data') and torch.is_tensor(obj.data)):
                print(type(obj), obj.size(), obj.device, obj.shape)
        except:
            pass


def resume_checkpoint(optim, model, weights_dir, iteration):
    """
    Loads the optimizer and model pair given the current iteration
    and the weights storage directory.
    """

    optimpath, modelpath = checkpoint_names(weights_dir, iteration)

    optim.load_state_dict(torch.load(optimpath))
    model.load_state_dict(torch.load(modelpath))


def save_checkpoint(optim, model, weights_dir, iteration):
    """
    Saves the optimizer and model pair given the current iteration
    and the weights storage directory.
    """

    optimpath, modelpath = checkpoint_names(weights_dir, iteration)

    torch.save(optim.state_dict(), optimpath)
    torch.save(model.state_dict(), modelpath)

    return modelpath, optimpath


def checkpoint_names(weights_dir, iteration):
    """
    Single function to determine the saving format for
    resuming and saving models/optim.
    """

    optimpath = os.path.join(weights_dir, 'optim_{}_pkl'.format(iteration))
    modelpath = os.path.join(weights_dir, 'model_{}_pkl'.format(iteration))

    return optimpath, modelpath


def print_weights(model):
    """
    Simply prints the weights for the model using the mean weight.
    This helps keep track of frozen weights, and to make sure
    they initialize as non-zero, although there are edge cases to
    be weary of.
    """

    # find max length
    max_len = 0
    for name, param in model.named_parameters():
        name = str(name).replace('module.', '')
        if (len(name) + 4) > max_len: max_len = (len(name) + 4)

    # print formatted mean weights
    for name, param in model.named_parameters():
        mdata = np.abs(torch.mean(param.data).item())
        name = str(name).replace('module.', '')

        logging.info(('{0:' + str(max_len) + '} {1:6} {2:6}')
                     .format(name, 'mean={:.4f}'.format(mdata), '    grad={}'.format(param.requires_grad)))



================================================
FILE: lib/imdb_util.py
================================================
"""
This file contains all image database (imdb) functionality,
such as loading and reading information from a dataset.

Generally, this file is meant to read in a dataset from disk into a
simple custom format for the detetive framework.
"""

# -----------------------------------------
# modules
# -----------------------------------------
import torch
import torch.utils.data as data
import sys
import re
from PIL import Image
from copy import deepcopy

sys.dont_write_bytecode = True

# -----------------------------------------
# custom
# -----------------------------------------
from lib.rpn_util import *
from lib.util import *
from lib.augmentations import *
from lib.core import *

class Dataset(torch.utils.data.Dataset):
    """
    A single Dataset class is used for the whole project,
    which implements the __init__ and __get__ functions from PyTorch.
    """

    def __init__(self, conf, root, cache_folder=None):
        """
        This function reads in all datasets to be used in training and stores ANY relevant
        information which may be needed during training as a list of edict()
        (referred to commonly as 'imobj').

        The function also optionally stores the image database (imdb) file into a cache.
        """

        imdb = []

        self.video_det = False if not ('video_det' in conf) else conf.video_det
        self.video_count = 1 if not ('video_count' in conf) else conf.video_count
        self.use_3d_for_2d = ('use_3d_for_2d' in conf) and conf.use_3d_for_2d

        # use cache?
        if (cache_folder is not None) and os.path.exists(os.path.join(cache_folder, 'imdb.pkl')):
            logging.info('Preloading imdb.')
            imdb = pickle_read(os.path.join(cache_folder, 'imdb.pkl'))

        else:

            # cycle through each dataset
            for dbind, db in enumerate(conf.datasets_train):

                logging.info('Loading imdb {}'.format(db['name']))

                # single imdb
                imdb_single_db = []

                # kitti formatting
                if db['anno_fmt'].lower() == 'kitti_det':

                    train_folder = os.path.join(root, db['name'], 'training')

                    ann_folder = os.path.join(train_folder, 'label_2', '')
                    cal_folder = os.path.join(train_folder, 'calib', '')
                    im_folder = os.path.join(train_folder, 'image_2', '')

                    # get sorted filepaths
                    annlist = sorted(glob(ann_folder + '*.txt'))

                    imdb_start = time()

                    self.affine_size = None if not ('affine_size' in conf) else conf.affine_size

                    for annind, annpath in enumerate(annlist):

                        # get file parts
                        base = os.path.basename(annpath)
                        id, ext = os.path.splitext(base)

                        calpath = os.path.join(cal_folder, id + '.txt')
                        impath = os.path.join(im_folder, id + db['im_ext'])
                        impath_pre = os.path.join(train_folder, 'prev_2', id + '_01' + db['im_ext'])
                        impath_pre2 = os.path.join(train_folder, 'prev_2', id + '_02' + db['im_ext'])
                        impath_pre3 = os.path.join(train_folder, 'prev_2', id + '_03' + db['im_ext'])

                        # read gts
                        p2 = read_kitti_cal(calpath)
                        p2_inv = np.linalg.inv(p2)

                        gts = read_kitti_label(annpath, p2, self.use_3d_for_2d)

                        if not self.affine_size is None:

                            # filter relevant classes
                            gts_plane = [deepcopy(gt) for gt in gts if gt.cls in conf.lbls and not gt.ign]

                            if len(gts_plane) > 0:

                                KITTI_H = 1.65

                                # compute ray traces for default projection
                                for gtind in range(len(gts_plane)):
                                    gt = gts_plane[gtind]

                                    #cx2d = gt.bbox_3d[0]
                                    #cy2d = gt.bbox_3d[1]
                                    cy2d = gt.bbox_full[1] + gt.bbox_full[3]
                                    cx2d = gt.bbox_full[0] + gt.bbox_full[2] / 2

                                    z2d, coord3d = projection_ray_trace(p2, p2_inv, cx2d, cy2d, KITTI_H)

                                    gts_plane[gtind].center_in = coord3d[0:3, 0]
                                    gts_plane[gtind].center_3d = np.array(gt.center_3d)


                                prelim_tra = np.array([gt.center_in for gtind, gt in enumerate(gts_plane)])
                                target_tra = np.array([gt.center_3d for gtind, gt in enumerate(gts_plane)])

                                if self.affine_size == 4:
                                    prelim_tra = np.pad(prelim_tra, [(0, 0), (0, 1)], mode='constant', constant_values=1)
                                    target_tra = np.pad(target_tra, [(0, 0), (0, 1)], mode='constant', constant_values=1)

                                affine_gt, err = solve_transform(prelim_tra, target_tra, compute_error=True)

                                a = 1

                        obj = edict()

                        # did not compute transformer
                        if (self.affine_size is None) or len(gts_plane) < 1:
                            obj.affine_gt = None
                        else:
                            obj.affine_gt = affine_gt

                        # store gts
                        obj.id = id
                        obj.gts = gts
                        obj.p2 = p2
                        obj.p2_inv = p2_inv

                        # im properties
                        im = Image.open(impath)
                        obj.path = impath
                        obj.path_pre = impath_pre
                        obj.path_pre2 = impath_pre2
                        obj.path_pre3 = impath_pre3
                        obj.imW, obj.imH = im.size

                        # database properties
                        obj.dbname = db.name
                        obj.scale = db.scale
                        obj.dbind = dbind

                        # store
                        imdb_single_db.append(obj)

                        if (annind % 1000) == 0 and annind > 0:
                            time_str, dt = compute_eta(imdb_start, annind, len(annlist))
                            logging.info('{}/{}, dt: {:0.4f}, eta: {}'.format(annind, len(annlist), dt, time_str))


                # concatenate single imdb into full imdb
                imdb += imdb_single_db

            imdb = np.array(imdb)

            # cache off the imdb?
            if cache_folder is not None:
                pickle_write(os.path.join(cache_folder, 'imdb.pkl'), imdb)

        # store more information
        self.datasets_train = conf.datasets_train
        self.len = len(imdb)
        self.imdb = imdb

        # setup data augmentation transforms
        self.transform = Augmentation(conf)

        # setup sampler and data loader for this dataset
        self.sampler = torch.utils.data.sampler.WeightedRandomSampler(balance_samples(conf, imdb), self.len)
        self.loader = torch.utils.data.DataLoader(self, conf.batch_size, sampler=self.sampler, collate_fn=self.collate)

        # check classes
        cls_not_used = []
        for imobj in imdb:

            for gt in imobj.gts:
                cls = gt.cls
                if not(cls in conf.lbls or cls in conf.ilbls) and (cls not in cls_not_used):
                    cls_not_used.append(cls)

        if len(cls_not_used) > 0:
            logging.info('Labels not used in training.. {}'.format(cls_not_used))


    def __getitem__(self, index):
        """
        Grabs the item at the given index. Specifically,
          - read the image from disk
          - read the imobj from RAM
          - applies data augmentation to (im, imobj)
          - converts image to RGB and [B C W H]
        """

        if not self.video_det:

            # read image
            im = cv2.imread(self.imdb[index].path)

        else:

            # read images
            im = cv2.imread(self.imdb[index].path)

            video_count = 1 if self.video_count is None else self.video_count

            if video_count >= 2:
                im_pre = cv2.imread(self.imdb[index].path_pre)

                if not im_pre.shape == im.shape:
                    im_pre = cv2.resize(im_pre, (im.shape[1], im.shape[0]))

                im = np.concatenate((im, im_pre), axis=2)

            if video_count >= 3:

                im_pre2 = cv2.imread(self.imdb[index].path_pre2)

                if im_pre2 is None:
                    im_pre2 = im_pre

                if not im_pre2.shape == im.shape:
                    im_pre2 = cv2.resize(im_pre2, (im.shape[1], im.shape[0]))

                im = np.concatenate((im, im_pre2), axis=2)

            if video_count >= 4:

                im_pre3 = cv2.imread(self.imdb[index].path_pre3)

                if im_pre3 is None:
                    im_pre3 = im_pre2

                if not im_pre3.shape == im.shape:
                    im_pre3 = cv2.resize(im_pre3, (im.shape[1], im.shape[0]))

                im = np.concatenate((im, im_pre3), axis=2)


        # transform / data augmentation
        im, imobj = self.transform(im, deepcopy(self.imdb[index]))

        for i in range(int(im.shape[2]/3)):
            # convert to RGB then permute to be [B C H W]
            im[:, :, (i*3):(i*3) + 3] = im[:, :, (i*3+2, i*3+1, i*3)]
        im = np.transpose(im, [2, 0, 1])

        return im, imobj

    @staticmethod
    def collate(batch):
        """
        Defines the methodology for PyTorch to collate the objects
        of a batch together, for some reason PyTorch doesn't function
        this way by default.
        """

        imgs = []
        imobjs = []

        # go through each batch
        for sample in batch:
            
            # append images and object dictionaries
            imgs.append(sample[0])
            imobjs.append(sample[1])

        # stack images
        imgs = np.array(imgs)
        imgs = torch.from_numpy(imgs).cuda()

        return imgs, imobjs

    def __len__(self):
        """
        Simply return the length of the dataset.
        """
        return self.len


def read_kitti_cal(calfile):
    """
    Reads the kitti calibration projection matrix (p2) file from disc.

    Args:
        calfile (str): path to single calibration file
    """

    text_file = open(calfile, 'r')

    p2pat = re.compile(('(P2:)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)' +
                        '\s+(fpat)\s+(fpat)\s+(fpat)\s*\n').replace('fpat', '[-+]?[\d]+\.?[\d]*[Ee](?:[-+]?[\d]+)?'))

    for line in text_file:

        parsed = p2pat.fullmatch(line)

        # bbGt annotation in text format of:
        # cls x y w h occ x y w h ign ang
        if parsed is not None:
            p2 = np.zeros([4, 4], dtype=float)
            p2[0, 0] = parsed.group(2)
            p2[0, 1] = parsed.group(3)
            p2[0, 2] = parsed.group(4)
            p2[0, 3] = parsed.group(5)
            p2[1, 0] = parsed.group(6)
            p2[1, 1] = parsed.group(7)
            p2[1, 2] = parsed.group(8)
            p2[1, 3] = parsed.group(9)
            p2[2, 0] = parsed.group(10)
            p2[2, 1] = parsed.group(11)
            p2[2, 2] = parsed.group(12)
            p2[2, 3] = parsed.group(13)

            p2[3, 3] = 1

    text_file.close()

    return p2


def read_kitti_poses(posefile):

    text_file = open(posefile, 'r')

    ppat1 = re.compile(('(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)' +
                        '\s+(fpat)\s+(fpat)\s+(fpat)\s*\n').replace('fpat', '[-+]?[\d]+\.?[\d]*[Ee](?:[-+]?[\d]+)?'))

    ppat2 = re.compile(('(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)' +
                       '\s+(fpat)\s+(fpat)\s+(fpat)\s*\n').replace('fpat', '[-+]?[\d]+\.?[\d]*'));

    ps = []

    for line in text_file:

        parsed1 = ppat1.fullmatch(line)
        parsed2 = ppat2.fullmatch(line)

        if parsed1 is not None:
            p = np.zeros([4, 4], dtype=float)
            p[0, 0] = parsed1.group(1)
            p[0, 1] = parsed1.group(2)
            p[0, 2] = parsed1.group(3)
            p[0, 3] = parsed1.group(4)
            p[1, 0] = parsed1.group(5)
            p[1, 1] = parsed1.group(6)
            p[1, 2] = parsed1.group(7)
            p[1, 3] = parsed1.group(8)
            p[2, 0] = parsed1.group(9)
            p[2, 1] = parsed1.group(10)
            p[2, 2] = parsed1.group(11)
            p[2, 3] = parsed1.group(12)

            p[3, 3] = 1

            ps.append(p)

        elif parsed2 is not None:

            p = np.zeros([4, 4], dtype=float)
            p[0, 0] = parsed2.group(1)
            p[0, 1] = parsed2.group(2)
            p[0, 2] = parsed2.group(3)
            p[0, 3] = parsed2.group(4)
            p[1, 0] = parsed2.group(5)
            p[1, 1] = parsed2.group(6)
            p[1, 2] = parsed2.group(7)
            p[1, 3] = parsed2.group(8)
            p[2, 0] = parsed2.group(9)
            p[2, 1] = parsed2.group(10)
            p[2, 2] = parsed2.group(11)
            p[2, 3] = parsed2.group(12)

            p[3, 3] = 1

            ps.append(p)

    text_file.close()

    return ps


def read_kitti_label(file, p2, use_3d_for_2d=False):
    """
    Reads the kitti label file from disc.

    Args:
        file (str): path to single label file for an image
        p2 (ndarray): projection matrix for the given image
    """

    gts = []

    text_file = open(file, 'r')

    '''
     Values    Name      Description
    ----------------------------------------------------------------------------
       1    type         Describes the type of object: 'Car', 'Van', 'Truck',
                         'Pedestrian', 'Person_sitting', 'Cyclist', 'Tram',
                         'Misc' or 'DontCare'
       1    truncated    Float from 0 (non-truncated) to 1 (truncated), where
                         truncated refers to the object leaving image boundaries
       1    occluded     Integer (0,1,2,3) indicating occlusion state:
                         0 = fully visible, 1 = partly occluded
                         2 = largely occluded, 3 = unknown
       1    alpha        Observation angle of object, ranging [-pi..pi]
       4    bbox         2D bounding box of object in the image (0-based index):
                         contains left, top, right, bottom pixel coordinates
       3    dimensions   3D object dimensions: height, width, length (in meters)
       3    location     3D object location x,y,z in camera coordinates (in meters)
       1    rotation_y   Rotation ry around Y-axis in camera coordinates [-pi..pi]
       1    score        Only for results: Float, indicating confidence in
                         detection, needed for p/r curves, higher is better.
    '''

    pattern = re.compile(('([a-zA-Z\-\?\_]+)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+'
                          + '(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s+(fpat)\s*((fpat)?)\n')
                         .replace('fpat', '[-+]?\d*\.\d+|[-+]?\d+'))


    for line in text_file:

        parsed = pattern.fullmatch(line)

        # bbGt annotation in text format of:
        # cls x y w h occ x y w h ign ang
        if parsed is not None:

            obj = edict()

            ign = False

            cls = parsed.group(1)
            trunc = float(parsed.group(2))
            occ = float(parsed.group(3))
            alpha = float(parsed.group(4))

            x = float(parsed.group(5))
            y = float(parsed.group(6))
            x2 = float(parsed.group(7))
            y2 = float(parsed.group(8))

            width = x2 - x + 1
            height = y2 - y + 1

            h3d = float(parsed.group(9))
            w3d = float(parsed.group(10))
            l3d = float(parsed.group(11))

            cx3d = float(parsed.group(12)) # center of car in 3d
            cy3d = float(parsed.group(13)) # bottom of car in 3d
            cz3d = float(parsed.group(14)) # center of car in 3d
            rotY = float(parsed.group(15))

            # actually center the box
            cy3d -= (h3d / 2)

            elevation = (1.65 - cy3d)

            if use_3d_for_2d and h3d > 0 and w3d > 0 and l3d > 0:

                # re-compute the 2D box using 3D (finally, avoids clipped boxes)
                verts3d, corners_3d = project_3d(p2, cx3d, cy3d, cz3d, w3d, h3d, l3d, rotY, return_3d=True)

                # any boxes behind camera plane?
                if np.any(corners_3d[2, :] <= 0):
                    ign = True

                else:
                    x = min(verts3d[:, 0])
                    y = min(verts3d[:, 1])
                    x2 = max(verts3d[:, 0])
                    y2 = max(verts3d[:, 1])

                    width = x2 - x + 1
                    height = y2 - y + 1

            # project cx, cy, cz
            coord3d = p2.dot(np.array([cx3d, cy3d, cz3d, 1]))

            # store the projected instead
            cx3d_2d = coord3d[0]
            cy3d_2d = coord3d[1]
            cz3d_2d = coord3d[2]

            cx = cx3d_2d / cz3d_2d
            cy = cy3d_2d / cz3d_2d

            # encode occlusion with range estimation
            # 0 = fully visible, 1 = partly occluded
            # 2 = largely occluded, 3 = unknown
            if occ == 0: vis = 1
            elif occ == 1: vis = 0.66
            elif occ == 2: vis = 0.33
            else: vis = 0.0

            while rotY > math.pi: rotY -= math.pi * 2
            while rotY < (-math.pi): rotY += math.pi * 2

            # recompute alpha
            alpha = convertRot2Alpha(rotY, cz3d, cx3d)

            obj.elevation = elevation
            obj.cls = cls
            obj.occ = occ > 0
            obj.ign = ign
            obj.visibility = vis
            obj.trunc = trunc
            obj.alpha = alpha
            obj.rotY = rotY

            # is there an extra field? (assume to be track)
            if len(parsed.groups()) >= 16 and parsed.group(16).isdigit(): obj.track = int(parsed.group(16))

            obj.bbox_full = np.array([x, y, width, height])
            obj.bbox_3d = [cx, cy, cz3d_2d, w3d, h3d, l3d, alpha, cx3d, cy3d, cz3d, rotY]
            obj.center_3d = [cx3d, cy3d, cz3d]

            gts.append(obj)

    text_file.close()

    return gts


def balance_samples(conf, imdb):
    """
    Balances the samples in an image dataset according to the given configuration.
    Basically we check which images have relevant foreground samples and which are empty,
    then we compute the sampling weights according to a desired fg_image_ratio.

    This is primarily useful in datasets which have a lot of empty (background) images, which may
    cause instability during training if not properly balanced against.
    """

    sample_weights = np.ones(len(imdb))

    if conf.fg_image_ratio >= 0:

        empty_inds = []
        valid_inds = []

        for imind, imobj in enumerate(imdb):

            valid = 0

            scale = conf.test_scale / imobj.imH
            igns, rmvs = determine_ignores(imobj.gts, conf.lbls, conf.ilbls, conf.min_gt_vis,
                                           conf.min_gt_h, conf.max_gt_h, scale)

            for gtind, gt in enumerate(imobj.gts):

                if (not igns[gtind]) and (not rmvs[gtind]):
                    valid += 1

            sample_weights[imind] = valid

            if valid>0:
                valid_inds.append(imind)
            else:
                empty_inds.append(imind)

        if not (conf.fg_image_ratio == 2):
            fg_weight = len(imdb) * conf.fg_image_ratio / len(valid_inds)
            bg_weight = len(imdb) * (1 - conf.fg_image_ratio) / len(empty_inds)
            sample_weights[valid_inds] = fg_weight
            sample_weights[empty_inds] = bg_weight

            logging.info('weighted respectively as {:.2f} and {:.2f}'.format(fg_weight, bg_weight))

        logging.info('Found {} foreground and {} empty images'.format(np.sum(sample_weights > 0), np.sum(sample_weights <= 0)))

    # force sampling weights to sum to 1
    sample_weights /= np.sum(sample_weights)

    return sample_weights
    


================================================
FILE: lib/loss/rpn_3d.py
================================================
import torch.nn as nn
import torch.nn.functional as F
import sys

# stop python from writing so much bytecode
sys.dont_write_bytecode = True

# -----------------------------------------
# custom modules
# -----------------------------------------
from lib.rpn_util import *


class RPN_3D_loss(nn.Module):

    def __init__(self, conf):

        super(RPN_3D_loss, self).__init__()

        self.num_classes = len(conf.lbls) + 1
        self.num_anchors = conf.anchors.shape[0]
        self.anchors = conf.anchors
        self.bbox_means = conf.bbox_means
        self.bbox_stds = conf.bbox_stds
        self.feat_stride = conf.feat_stride
        self.fg_fraction = conf.fg_fraction
        self.box_samples = conf.box_samples
        self.ign_thresh = conf.ign_thresh
        self.nms_thres = conf.nms_thres
        self.fg_thresh = conf.fg_thresh
        self.bg_thresh_lo = conf.bg_thresh_lo
        self.bg_thresh_hi = conf.bg_thresh_hi
        self.best_thresh = conf.best_thresh
        self.hard_negatives = conf.hard_negatives
        self.focal_loss = conf.focal_loss

        self.crop_size = conf.crop_size

        self.cls_2d_lambda = conf.cls_2d_lambda
        self.iou_2d_lambda = conf.iou_2d_lambda
        self.bbox_2d_lambda = conf.bbox_2d_lambda
        self.bbox_3d_lambda = conf.bbox_3d_lambda
        self.bbox_3d_proj_lambda = conf.bbox_3d_proj_lambda

        self.lbls = conf.lbls
        self.ilbls = conf.ilbls

        self.min_gt_vis = conf.min_gt_vis
        self.min_gt_h = conf.min_gt_h
        self.max_gt_h = conf.max_gt_h


    def forward(self, cls, prob, bbox_2d, bbox_3d, imobjs, feat_size):

        stats = []
        loss = torch.tensor(0).type(torch.cuda.FloatTensor)

        FG_ENC = 1000
        BG_ENC = 2000

        IGN_FLAG = 3000

        batch_size = cls.shape[0]

        prob_detach = prob.cpu().detach().numpy()

        bbox_x = bbox_2d[:, :, 0]
        bbox_y = bbox_2d[:, :, 1]
        bbox_w = bbox_2d[:, :, 2]
        bbox_h = bbox_2d[:, :, 3]

        bbox_x3d = bbox_3d[:, :, 0]
        bbox_y3d = bbox_3d[:, :, 1]
        bbox_z3d = bbox_3d[:, :, 2]
        bbox_w3d = bbox_3d[:, :, 3]
        bbox_h3d = bbox_3d[:, :, 4]
        bbox_l3d = bbox_3d[:, :, 5]
        bbox_ry3d = bbox_3d[:, :, 6]

        bbox_x3d_proj = torch.zeros(bbox_x3d.shape)
        bbox_y3d_proj = torch.zeros(bbox_x3d.shape)
        bbox_z3d_proj = torch.zeros(bbox_x3d.shape)

        labels = np.zeros(cls.shape[0:2])
        labels_weight = np.zeros(cls.shape[0:2])

        labels_scores = np.zeros(cls.shape[0:2])

        bbox_x_tar = np.zeros(cls.shape[0:2])
        bbox_y_tar = np.zeros(cls.shape[0:2])
        bbox_w_tar = np.zeros(cls.shape[0:2])
        bbox_h_tar = np.zeros(cls.shape[0:2])

        bbox_x3d_tar = np.zeros(cls.shape[0:2])
        bbox_y3d_tar = np.zeros(cls.shape[0:2])
        bbox_z3d_tar = np.zeros(cls.shape[0:2])
        bbox_w3d_tar = np.zeros(cls.shape[0:2])
        bbox_h3d_tar = np.zeros(cls.shape[0:2])
        bbox_l3d_tar = np.zeros(cls.shape[0:2])
        bbox_ry3d_tar = np.zeros(cls.shape[0:2])

        bbox_x3d_proj_tar = np.zeros(cls.shape[0:2])
        bbox_y3d_proj_tar = np.zeros(cls.shape[0:2])
        bbox_z3d_proj_tar = np.zeros(cls.shape[0:2])

        bbox_weights = np.zeros(cls.shape[0:2])

        ious_2d = torch.zeros(cls.shape[0:2])
        ious_3d = torch.zeros(cls.shape[0:2])
        coords_abs_z = torch.zeros(cls.shape[0:2])
        coords_abs_ry = torch.zeros(cls.shape[0:2])

        # get all rois
        rois = locate_anchors(self.anchors, feat_size, self.feat_stride, convert_tensor=True)
        rois = rois.type(torch.cuda.FloatTensor)

        bbox_x3d_dn = bbox_x3d * self.bbox_stds[:, 4][0] + self.bbox_means[:, 4][0]
        bbox_y3d_dn = bbox_y3d * self.bbox_stds[:, 5][0] + self.bbox_means[:, 5][0]
        bbox_z3d_dn = bbox_z3d * self.bbox_stds[:, 6][0] + self.bbox_means[:, 6][0]
        bbox_w3d_dn = bbox_w3d * self.bbox_stds[:, 7][0] + self.bbox_means[:, 7][0]
        bbox_h3d_dn = bbox_h3d * self.bbox_stds[:, 8][0] + self.bbox_means[:, 8][0]
        bbox_l3d_dn = bbox_l3d * self.bbox_stds[:, 9][0] + self.bbox_means[:, 9][0]
        bbox_ry3d_dn = bbox_ry3d * self.bbox_stds[:, 10][0] + self.bbox_means[:, 10][0]

        src_anchors = self.anchors[rois[:, 4].type(torch.cuda.LongTensor), :]
        src_anchors = torch.tensor(src_anchors, requires_grad=False).type(torch.cuda.FloatTensor)
        if len(src_anchors.shape) == 1: src_anchors = src_anchors.unsqueeze(0)

        # compute 3d transform
        widths = rois[:, 2] - rois[:, 0] + 1.0
        heights = rois[:, 3] - rois[:, 1] + 1.0
        ctr_x = rois[:, 0] + 0.5 * widths
        ctr_y = rois[:, 1] + 0.5 * heights

        bbox_x3d_dn = bbox_x3d_dn * widths.unsqueeze(0) + ctr_x.unsqueeze(0)
        bbox_y3d_dn = bbox_y3d_dn * heights.unsqueeze(0) + ctr_y.unsqueeze(0)
        bbox_z3d_dn = src_anchors[:, 4].unsqueeze(0) + bbox_z3d_dn
        bbox_w3d_dn = torch.exp(bbox_w3d_dn) * src_anchors[:, 5].unsqueeze(0)
        bbox_h3d_dn = torch.exp(bbox_h3d_dn) * src_anchors[:, 6].unsqueeze(0)
        bbox_l3d_dn = torch.exp(bbox_l3d_dn) * src_anchors[:, 7].unsqueeze(0)
        bbox_ry3d_dn = src_anchors[:, 8].unsqueeze(0) + bbox_ry3d_dn

        for bind in range(0, batch_size):

            imobj = imobjs[bind]
            gts = imobj.gts

            p2_inv = torch.from_numpy(imobj.p2_inv).type(torch.cuda.FloatTensor)

            # filter gts
            igns, rmvs = determine_ignores(gts, self.lbls, self.ilbls, self.min_gt_vis, self.min_gt_h)

            # accumulate boxes
            gts_all = bbXYWH2Coords(np.array([gt.bbox_full for gt in gts]))
            gts_3d = np.array([gt.bbox_3d for gt in gts])

            if not ((rmvs == False) & (igns == False)).any():
                continue

            # filter out irrelevant cls, and ignore cls
            gts_val = gts_all[(rmvs == False) & (igns == False), :]
            gts_ign = gts_all[(rmvs == False) & (igns == True), :]
            gts_3d = gts_3d[(rmvs == False) & (igns == False), :]

            # accumulate labels
            box_lbls = np.array([gt.cls for gt in gts])
            box_lbls = box_lbls[(rmvs == False) & (igns == False)]
            box_lbls = np.array([clsName2Ind(self.lbls, cls) for cls in box_lbls])

            if gts_val.shape[0] > 0 or gts_ign.shape[0] > 0:

                rois = rois.cpu()

                # bbox regression
                transforms, ols, raw_gt = compute_targets(gts_val, gts_ign, box_lbls, rois.numpy(), self.fg_thresh,
                                                  self.ign_thresh, self.bg_thresh_lo, self.bg_thresh_hi,
                                                  self.best_thresh, anchors=self.anchors,  gts_3d=gts_3d,
                                                  tracker=rois[:, 4].numpy())

                # normalize 2d
                transforms[:, 0:4] -= self.bbox_means[:, 0:4]
                transforms[:, 0:4] /= self.bbox_stds[:, 0:4]

                # normalize 3d
                transforms[:, 5:12] -= self.bbox_means[:, 4:]
                transforms[:, 5:12] /= self.bbox_stds[:, 4:]

                labels_fg = transforms[:, 4] > 0
                labels_bg = transforms[:, 4] < 0
                labels_ign = transforms[:, 4] == 0

                fg_inds = np.flatnonzero(labels_fg)
                bg_inds = np.flatnonzero(labels_bg)
                ign_inds = np.flatnonzero(labels_ign)

                transforms = torch.from_numpy(transforms).cuda()

                labels[bind, fg_inds] = transforms[fg_inds, 4]
                labels[bind, ign_inds] = IGN_FLAG
                labels[bind, bg_inds] = 0

                bbox_x_tar[bind, :] = transforms[:, 0]
                bbox_y_tar[bind, :] = transforms[:, 1]
                bbox_w_tar[bind, :] = transforms[:, 2]
                bbox_h_tar[bind, :] = transforms[:, 3]

                bbox_x3d_tar[bind, :] = transforms[:, 5]
                bbox_y3d_tar[bind, :] = transforms[:, 6]
                bbox_z3d_tar[bind, :] = transforms[:, 7]
                bbox_w3d_tar[bind, :] = transforms[:, 8]
                bbox_h3d_tar[bind, :] = transforms[:, 9]
                bbox_l3d_tar[bind, :] = transforms[:, 10]
                bbox_ry3d_tar[bind, :] = transforms[:, 11]

                bbox_x3d_proj_tar[bind, :] = raw_gt[:, 12]
                bbox_y3d_proj_tar[bind, :] = raw_gt[:, 13]
                bbox_z3d_proj_tar[bind, :] = raw_gt[:, 14]

                # ----------------------------------------
                # box sampling
                # ----------------------------------------

                if self.box_samples == np.inf:
                    fg_num = len(fg_inds)
                    bg_num = len(bg_inds)

                else:
                    fg_num = min(round(rois.shape[0]*self.box_samples * self.fg_fraction), len(fg_inds))
                    bg_num = min(round(rois.shape[0]*self.box_samples - fg_num), len(bg_inds))

                if self.hard_negatives:

                    if fg_num > 0 and fg_num != fg_inds.shape[0]:
                        scores = prob_detach[bind, fg_inds, labels[bind, fg_inds].astype(int)]
                        fg_score_ascend = (scores).argsort()
                        fg_inds = fg_inds[fg_score_ascend]
                        fg_inds = fg_inds[0:fg_num]

                    if bg_num > 0 and bg_num != bg_inds.shape[0]:
                        scores = prob_detach[bind, bg_inds, labels[bind, bg_inds].astype(int)]
                        bg_score_ascend = (scores).argsort()
                        bg_inds = bg_inds[bg_score_ascend]
                        bg_inds = bg_inds[0:bg_num]

                else:

                    if fg_num > 0 and fg_num != fg_inds.shape[0]:
                        fg_inds = np.random.choice(fg_inds, fg_num, replace=False)

                    if bg_num > 0 and bg_num != bg_inds.shape[0]:
                        bg_inds = np.random.choice(bg_inds, bg_num, replace=False)

                labels_weight[bind, bg_inds] = BG_ENC
                labels_weight[bind, fg_inds] = FG_ENC
                bbox_weights[bind, fg_inds] = 1

                # ----------------------------------------
                # compute IoU stats
                # ----------------------------------------

                if fg_num > 0:

                    # compile deltas pred
                    deltas_2d = torch.cat((bbox_x[bind, :, np.newaxis ], bbox_y[bind, :, np.newaxis],
                                           bbox_w[bind, :, np.newaxis], bbox_h[bind, :, np.newaxis]), dim=1)

                    # compile deltas targets
                    deltas_2d_tar = np.concatenate((bbox_x_tar[bind, :, np.newaxis], bbox_y_tar[bind, :, np.newaxis],
                                                    bbox_w_tar[bind, :, np.newaxis], bbox_h_tar[bind, :, np.newaxis]),
                                                   axis=1)

                    # move to gpu
                    deltas_2d_tar = torch.tensor(deltas_2d_tar, requires_grad=False).type(torch.cuda.FloatTensor)

                    means = self.bbox_means[0, :]
                    stds = self.bbox_stds[0, :]

                    rois = rois.cuda()

                    coords_2d = bbox_transform_inv(rois, deltas_2d, means=means, stds=stds)
                    coords_2d_tar = bbox_transform_inv(rois, deltas_2d_tar, means=means, stds=stds)

                    ious_2d[bind, fg_inds] = iou(coords_2d[fg_inds, :], coords_2d_tar[fg_inds, :], mode='list')

                    bbox_x3d_dn_fg = bbox_x3d_dn[bind, fg_inds]
                    bbox_y3d_dn_fg = bbox_y3d_dn[bind, fg_inds]

                    src_anchors = self.anchors[rois[fg_inds, 4].type(torch.cuda.LongTensor), :]
                    src_anchors = torch.tensor(src_anchors, requires_grad=False).type(torch.cuda.FloatTensor)
                    if len(src_anchors.shape) == 1: src_anchors = src_anchors.unsqueeze(0)

                    bbox_x3d_dn_fg = bbox_x3d_dn[bind, fg_inds]
                    bbox_y3d_dn_fg = bbox_y3d_dn[bind, fg_inds]
                    bbox_z3d_dn_fg = bbox_z3d_dn[bind, fg_inds]
                    bbox_w3d_dn_fg = bbox_w3d_dn[bind, fg_inds]
                    bbox_h3d_dn_fg = bbox_h3d_dn[bind, fg_inds]
                    bbox_l3d_dn_fg = bbox_l3d_dn[bind, fg_inds]
                    bbox_ry3d_dn_fg = bbox_ry3d_dn[bind, fg_inds]

                    # re-scale all 2D back to original
                    bbox_x3d_dn_fg /= imobj['scale_factor']
                    bbox_y3d_dn_fg /= imobj['scale_factor']

                    coords_2d = torch.cat((bbox_x3d_dn_fg[np.newaxis,:] * bbox_z3d_dn_fg[np.newaxis,:], bbox_y3d_dn_fg[np.newaxis,:] * bbox_z3d_dn_fg[np.newaxis,:], bbox_z3d_dn_fg[np.newaxis,:]), dim=0)
                    coords_2d = torch.cat((coords_2d, torch.ones([1, coords_2d.shape[1]])), dim=0)

                    coords_3d = torch.mm(p2_inv, coords_2d)

                    bbox_x3d_proj[bind, fg_inds] = coords_3d[0, :]
                    bbox_y3d_proj[bind, fg_inds] = coords_3d[1, :]
                    bbox_z3d_proj[bind, fg_inds] = coords_3d[2, :]

                    # absolute targets
                    bbox_z3d_dn_tar = bbox_z3d_tar[bind, fg_inds] * self.bbox_stds[:, 6][0] + self.bbox_means[:, 6][0]
                    bbox_z3d_dn_tar = torch.tensor(bbox_z3d_dn_tar, requires_grad=False).type(torch.cuda.FloatTensor)
                    bbox_z3d_dn_tar = src_anchors[:, 4] + bbox_z3d_dn_tar

                    bbox_ry3d_dn_tar = bbox_ry3d_tar[bind, fg_inds] * self.bbox_stds[:, 10][0] + self.bbox_means[:, 10][0]
                    bbox_ry3d_dn_tar = torch.tensor(bbox_ry3d_dn_tar, requires_grad=False).type(torch.cuda.FloatTensor)
                    bbox_ry3d_dn_tar = src_anchors[:, 8] + bbox_ry3d_dn_tar

                    coords_abs_z[bind, fg_inds] = torch.abs(bbox_z3d_dn_tar - bbox_z3d_dn_fg)
                    coords_abs_ry[bind, fg_inds] = torch.abs(bbox_ry3d_dn_tar - bbox_ry3d_dn_fg)

            else:

                bg_inds = np.arange(0, rois.shape[0])

                if self.box_samples == np.inf: bg_num = len(bg_inds)
                else: bg_num = min(round(self.box_samples * (1 - self.fg_fraction)), len(bg_inds))

                if self.hard_negatives:

                    if bg_num > 0 and bg_num != bg_inds.shape[0]:
                        scores = prob_detach[bind, bg_inds, labels[bind, bg_inds].astype(int)]
                        bg_score_ascend = (scores).argsort()
                        bg_inds = bg_inds[bg_score_ascend]
                        bg_inds = bg_inds[0:bg_num]

                else:

                    if bg_num > 0 and bg_num != bg_inds.shape[0]:
                        bg_inds = np.random.choice(bg_inds, bg_num, replace=False)


                labels[bind, :] = 0
                labels_weight[bind, bg_inds] = BG_ENC


            # grab label predictions (for weighing purposes)
            active = labels[bind, :] != IGN_FLAG
            labels_scores[bind, active] = prob_detach[bind, active, labels[bind, active].astype(int)]

        # ----------------------------------------
        # useful statistics
        # ----------------------------------------

        fg_inds_all = np.flatnonzero((labels > 0) & (labels != IGN_FLAG))
        bg_inds_all = np.flatnonzero((labels == 0) & (labels != IGN_FLAG))

        fg_inds_unravel = np.unravel_index(fg_inds_all, prob_detach.shape[0:2])
        bg_inds_unravel = np.unravel_index(bg_inds_all, prob_detach.shape[0:2])

        cls_pred = cls.argmax(dim=2).cpu().detach().numpy()

        if self.cls_2d_lambda and len(fg_inds_all) > 0:
            acc_fg = np.mean(cls_pred[fg_inds_unravel] == labels[fg_inds_unravel])
            stats.append({'name': 'fg', 'val': acc_fg, 'format': '{:0.2f}', 'group': 'acc'})

        if self.cls_2d_lambda and len(bg_inds_all) > 0:
            acc_bg = np.mean(cls_pred[bg_inds_unravel] == labels[bg_inds_unravel])
            stats.append({'name': 'bg', 'val': acc_bg, 'format': '{:0.2f}', 'group': 'acc'})

        # ----------------------------------------
        # box weighting
        # ----------------------------------------

        fg_inds = np.flatnonzero(labels_weight == FG_ENC)
        bg_inds = np.flatnonzero(labels_weight == BG_ENC)
        active_inds = np.concatenate((fg_inds, bg_inds), axis=0)

        fg_num = len(fg_inds)
        bg_num = len(bg_inds)

        labels_weight[...] = 0.0
        box_samples = fg_num + bg_num

        fg_inds_unravel = np.unravel_index(fg_inds, labels_weight.shape)
        bg_inds_unravel = np.unravel_index(bg_inds, labels_weight.shape)
        active_inds_unravel = np.unravel_index(active_inds, labels_weight.shape)

        labels_weight[active_inds_unravel] = 1.0

        if self.fg_fraction is not None:

            if fg_num > 0:

                fg_weight = (self.fg_fraction /(1 - self.fg_fraction)) * (bg_num / fg_num)
                labels_weight[fg_inds_unravel] = fg_weight
                labels_weight[bg_inds_unravel] = 1.0

            else:
                labels_weight[bg_inds_unravel] = 1.0

        # different method of doing hard negative mining
        # use the scores to normalize the importance of each sample
        # hence, encourages the network to get all "correct" rather than
        # becoming more correct at a decision it is already good at
        # this method is equivelent to the focal loss with additional mean scaling
        if self.focal_loss:

            weights_sum = 0

            # re-weight bg
            if bg_num > 0:
                bg_scores = labels_scores[bg_inds_unravel]
                bg_weights = (1 - bg_scores) ** self.focal_loss
                weights_sum += np.sum(bg_weights)
                labels_weight[bg_inds_unravel] *= bg_weights

            # re-weight fg
            if fg_num > 0:
                fg_scores = labels_scores[fg_inds_unravel]
                fg_weights = (1 - fg_scores) ** self.focal_loss
                weights_sum += np.sum(fg_weights)
                labels_weight[fg_inds_unravel] *= fg_weights


        # ----------------------------------------
        # classification loss
        # ----------------------------------------
        labels = torch.tensor(labels, requires_grad=False)
        labels = labels.view(-1).type(torch.cuda.LongTensor)

        labels_weight = torch.tensor(labels_weight, requires_grad=False)
        labels_weight = labels_weight.view(-1).type(torch.cuda.FloatTensor)

        cls = cls.view(-1, cls.shape[2])

        if self.cls_2d_lambda:

            # cls loss
            active = labels_weight > 0

            if np.any(active.cpu().numpy()):

                loss_cls = F.cross_entropy(cls[active, :], labels[active], reduction='none', ignore_index=IGN_FLAG)
                loss_cls = (loss_cls * labels_weight[active])

                # simple gradient clipping
                loss_cls = loss_cls.clamp(min=0, max=2000)

                # take mean and scale lambda
                loss_cls = loss_cls.mean()
                loss_cls *= self.cls_2d_lambda

                loss += loss_cls

                stats.append({'name': 'cls', 'val': loss_cls, 'format': '{:0.4f}', 'group': 'loss'})

        # ----------------------------------------
        # bbox regression loss
        # ----------------------------------------

        if np.sum(bbox_weights) > 0:

            bbox_weights = torch.tensor(bbox_weights, requires_grad=False).type(torch.cuda.FloatTensor).view(-1)

            active = bbox_weights > 0

            if self.bbox_2d_lambda:

                # bbox loss 2d
                bbox_x_tar = torch.tensor(bbox_x_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_y_tar = torch.tensor(bbox_y_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_w_tar = torch.tensor(bbox_w_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_h_tar = torch.tensor(bbox_h_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)

                bbox_x = bbox_x[:, :].unsqueeze(2).view(-1)
                bbox_y = bbox_y[:, :].unsqueeze(2).view(-1)
                bbox_w = bbox_w[:, :].unsqueeze(2).view(-1)
                bbox_h = bbox_h[:, :].unsqueeze(2).view(-1)

                loss_bbox_x = F.smooth_l1_loss(bbox_x[active], bbox_x_tar[active], reduction='none')
                loss_bbox_y = F.smooth_l1_loss(bbox_y[active], bbox_y_tar[active], reduction='none')
                loss_bbox_w = F.smooth_l1_loss(bbox_w[active], bbox_w_tar[active], reduction='none')
                loss_bbox_h = F.smooth_l1_loss(bbox_h[active], bbox_h_tar[active], reduction='none')

                loss_bbox_x = (loss_bbox_x * bbox_weights[active]).mean()
                loss_bbox_y = (loss_bbox_y * bbox_weights[active]).mean()
                loss_bbox_w = (loss_bbox_w * bbox_weights[active]).mean()
                loss_bbox_h = (loss_bbox_h * bbox_weights[active]).mean()

                bbox_2d_loss = (loss_bbox_x + loss_bbox_y + loss_bbox_w + loss_bbox_h)
                bbox_2d_loss *= self.bbox_2d_lambda

                loss += bbox_2d_loss
                stats.append({'name': 'bbox_2d', 'val': bbox_2d_loss, 'format': '{:0.4f}', 'group': 'loss'})


            if self.bbox_3d_lambda:

                # bbox loss 3d
                bbox_x3d_tar = torch.tensor(bbox_x3d_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_y3d_tar = torch.tensor(bbox_y3d_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_z3d_tar = torch.tensor(bbox_z3d_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_w3d_tar = torch.tensor(bbox_w3d_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_h3d_tar = torch.tensor(bbox_h3d_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_l3d_tar = torch.tensor(bbox_l3d_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_ry3d_tar = torch.tensor(bbox_ry3d_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)

                bbox_x3d = bbox_x3d[:, :].view(-1)
                bbox_y3d = bbox_y3d[:, :].view(-1)
                bbox_z3d = bbox_z3d[:, :].view(-1)
                bbox_w3d = bbox_w3d[:, :].view(-1)
                bbox_h3d = bbox_h3d[:, :].view(-1)
                bbox_l3d = bbox_l3d[:, :].view(-1)
                bbox_ry3d = bbox_ry3d[:, :].view(-1)

                loss_bbox_x3d = F.smooth_l1_loss(bbox_x3d[active], bbox_x3d_tar[active], reduction='none')
                loss_bbox_y3d = F.smooth_l1_loss(bbox_y3d[active], bbox_y3d_tar[active], reduction='none')
                loss_bbox_z3d = F.smooth_l1_loss(bbox_z3d[active], bbox_z3d_tar[active], reduction='none')
                loss_bbox_w3d = F.smooth_l1_loss(bbox_w3d[active], bbox_w3d_tar[active], reduction='none')
                loss_bbox_h3d = F.smooth_l1_loss(bbox_h3d[active], bbox_h3d_tar[active], reduction='none')
                loss_bbox_l3d = F.smooth_l1_loss(bbox_l3d[active], bbox_l3d_tar[active], reduction='none')
                loss_bbox_ry3d = F.smooth_l1_loss(bbox_ry3d[active], bbox_ry3d_tar[active], reduction='none')

                loss_bbox_x3d = (loss_bbox_x3d * bbox_weights[active]).mean()
                loss_bbox_y3d = (loss_bbox_y3d * bbox_weights[active]).mean()
                loss_bbox_z3d = (loss_bbox_z3d * bbox_weights[active]).mean()
                loss_bbox_w3d = (loss_bbox_w3d * bbox_weights[active]).mean()
                loss_bbox_h3d = (loss_bbox_h3d * bbox_weights[active]).mean()
                loss_bbox_l3d = (loss_bbox_l3d * bbox_weights[active]).mean()
                loss_bbox_ry3d = (loss_bbox_ry3d * bbox_weights[active]).mean()

                bbox_3d_loss = (loss_bbox_x3d + loss_bbox_y3d + loss_bbox_z3d)
                bbox_3d_loss += (loss_bbox_w3d + loss_bbox_h3d + loss_bbox_l3d + loss_bbox_ry3d)

                bbox_3d_loss *= self.bbox_3d_lambda

                loss += bbox_3d_loss
                stats.append({'name': 'bbox_3d', 'val': bbox_3d_loss, 'format': '{:0.4f}', 'group': 'loss'})

            if self.bbox_3d_proj_lambda:

                # bbox loss 3d
                bbox_x3d_proj_tar = torch.tensor(bbox_x3d_proj_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_y3d_proj_tar = torch.tensor(bbox_y3d_proj_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)
                bbox_z3d_proj_tar = torch.tensor(bbox_z3d_proj_tar, requires_grad=False).type(torch.FloatTensor).cuda().view(-1)

                bbox_x3d_proj = bbox_x3d_proj[:, :].view(-1)
                bbox_y3d_proj = bbox_y3d_proj[:, :].view(-1)
                bbox_z3d_proj = bbox_z3d_proj[:, :].view(-1)

                loss_bbox_x3d_proj = F.smooth_l1_loss(bbox_x3d_proj[active], bbox_x3d_proj_tar[active], reduction='none')
                loss_bbox_y3d_proj = F.smooth_l1_loss(bbox_y3d_proj[active], bbox_y3d_proj_tar[active], reduction='none')
                loss_bbox_z3d_proj = F.smooth_l1_loss(bbox_z3d_proj[active], bbox_z3d_proj_tar[active], reduction='none')

                loss_bbox_x3d_proj = (loss_bbox_x3d_proj * bbox_weights[active]).mean()
                loss_bbox_y3d_proj = (loss_bbox_y3d_proj * bbox_weights[active]).mean()
                loss_bbox_z3d_proj = (loss_bbox_z3d_proj * bbox_weights[active]).mean()

                bbox_3d_proj_loss = (loss_bbox_x3d_proj + loss_bbox_y3d_proj + loss_bbox_z3d_proj)

                bbox_3d_proj_loss *= self.bbox_3d_proj_lambda

                loss += bbox_3d_proj_loss
                stats.append({'name': 'bbox_3d_proj', 'val': bbox_3d_proj_loss, 'format': '{:0.4f}', 'group': 'loss'})

            coords_abs_z = coords_abs_z.view(-1)
            stats.append({'name': 'z', 'val': coords_abs_z[active].mean(), 'format': '{:0.2f}', 'group': 'misc'})

            coords_abs_ry = coords_abs_ry.view(-1)
            stats.append({'name': 'ry', 'val': coords_abs_ry[active].mean(), 'format': '{:0.2f}', 'group': 'misc'})

            ious_2d = ious_2d.view(-1)
            stats.append({'name': 'iou', 'val': ious_2d[active].mean(), 'format': '{:0.2f}', 'group': 'acc'})

            # use a 2d IoU based log loss
            if self.iou_2d_lambda:
                iou_2d_loss = -torch.log(ious_2d[active])
                iou_2d_loss = (iou_2d_loss * bbox_weights[active])
                iou_2d_loss = iou_2d_loss.mean()

                iou_2d_loss *= self.iou_2d_lambda
                loss += iou_2d_loss

                stats.append({'name': 'iou', 'val': iou_2d_loss, 'format': '{:0.4f}', 'group': 'loss'})


        return loss, stats


================================================
FILE: lib/nms/Makefile
================================================
all:
	python setup.py build_ext --inplace
	rm -rf build


================================================
FILE: lib/nms/cpu_nms.c
================================================
/* Generated by Cython 0.28.2 */

#define PY_SSIZE_T_CLEAN
#include "Python.h"
#ifndef Py_PYTHON_H
    #error Python headers needed to compile C extensions, please install development version of Python.
#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000)
    #error Cython requires Python 2.6+ or Python 3.3+.
#else
#define CYTHON_ABI "0_28_2"
#define CYTHON_FUTURE_DIVISION 0
#include 
#ifndef offsetof
  #define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
#endif
#if !defined(WIN32) && !defined(MS_WINDOWS)
  #ifndef __stdcall
    #define __stdcall
  #endif
  #ifndef __cdecl
    #define __cdecl
  #endif
  #ifndef __fastcall
    #define __fastcall
  #endif
#endif
#ifndef DL_IMPORT
  #define DL_IMPORT(t) t
#endif
#ifndef DL_EXPORT
  #define DL_EXPORT(t) t
#endif
#define __PYX_COMMA ,
#ifndef HAVE_LONG_LONG
  #if PY_VERSION_HEX >= 0x02070000
    #define HAVE_LONG_LONG
  #endif
#endif
#ifndef PY_LONG_LONG
  #define PY_LONG_LONG LONG_LONG
#endif
#ifndef Py_HUGE_VAL
  #define Py_HUGE_VAL HUGE_VAL
#endif
#ifdef PYPY_VERSION
  #define CYTHON_COMPILING_IN_PYPY 1
  #define CYTHON_COMPILING_IN_PYSTON 0
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #undef CYTHON_USE_TYPE_SLOTS
  #define CYTHON_USE_TYPE_SLOTS 0
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #if PY_VERSION_HEX < 0x03050000
    #undef CYTHON_USE_ASYNC_SLOTS
    #define CYTHON_USE_ASYNC_SLOTS 0
  #elif !defined(CYTHON_USE_ASYNC_SLOTS)
    #define CYTHON_USE_ASYNC_SLOTS 1
  #endif
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #undef CYTHON_USE_UNICODE_INTERNALS
  #define CYTHON_USE_UNICODE_INTERNALS 0
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #undef CYTHON_AVOID_BORROWED_REFS
  #define CYTHON_AVOID_BORROWED_REFS 1
  #undef CYTHON_ASSUME_SAFE_MACROS
  #define CYTHON_ASSUME_SAFE_MACROS 0
  #undef CYTHON_UNPACK_METHODS
  #define CYTHON_UNPACK_METHODS 0
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #undef CYTHON_PEP489_MULTI_PHASE_INIT
  #define CYTHON_PEP489_MULTI_PHASE_INIT 0
  #undef CYTHON_USE_TP_FINALIZE
  #define CYTHON_USE_TP_FINALIZE 0
#elif defined(PYSTON_VERSION)
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_PYSTON 1
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #ifndef CYTHON_USE_TYPE_SLOTS
    #define CYTHON_USE_TYPE_SLOTS 1
  #endif
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #undef CYTHON_USE_ASYNC_SLOTS
  #define CYTHON_USE_ASYNC_SLOTS 0
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #ifndef CYTHON_USE_UNICODE_INTERNALS
    #define CYTHON_USE_UNICODE_INTERNALS 1
  #endif
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #ifndef CYTHON_ASSUME_SAFE_MACROS
    #define CYTHON_ASSUME_SAFE_MACROS 1
  #endif
  #ifndef CYTHON_UNPACK_METHODS
    #define CYTHON_UNPACK_METHODS 1
  #endif
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #undef CYTHON_PEP489_MULTI_PHASE_INIT
  #define CYTHON_PEP489_MULTI_PHASE_INIT 0
  #undef CYTHON_USE_TP_FINALIZE
  #define CYTHON_USE_TP_FINALIZE 0
#else
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_PYSTON 0
  #define CYTHON_COMPILING_IN_CPYTHON 1
  #ifndef CYTHON_USE_TYPE_SLOTS
    #define CYTHON_USE_TYPE_SLOTS 1
  #endif
  #if PY_VERSION_HEX < 0x02070000
    #undef CYTHON_USE_PYTYPE_LOOKUP
    #define CYTHON_USE_PYTYPE_LOOKUP 0
  #elif !defined(CYTHON_USE_PYTYPE_LOOKUP)
    #define CYTHON_USE_PYTYPE_LOOKUP 1
  #endif
  #if PY_MAJOR_VERSION < 3
    #undef CYTHON_USE_ASYNC_SLOTS
    #define CYTHON_USE_ASYNC_SLOTS 0
  #elif !defined(CYTHON_USE_ASYNC_SLOTS)
    #define CYTHON_USE_ASYNC_SLOTS 1
  #endif
  #if PY_VERSION_HEX < 0x02070000
    #undef CYTHON_USE_PYLONG_INTERNALS
    #define CYTHON_USE_PYLONG_INTERNALS 0
  #elif !defined(CYTHON_USE_PYLONG_INTERNALS)
    #define CYTHON_USE_PYLONG_INTERNALS 1
  #endif
  #ifndef CYTHON_USE_PYLIST_INTERNALS
    #define CYTHON_USE_PYLIST_INTERNALS 1
  #endif
  #ifndef CYTHON_USE_UNICODE_INTERNALS
    #define CYTHON_USE_UNICODE_INTERNALS 1
  #endif
  #if PY_VERSION_HEX < 0x030300F0
    #undef CYTHON_USE_UNICODE_WRITER
    #define CYTHON_USE_UNICODE_WRITER 0
  #elif !defined(CYTHON_USE_UNICODE_WRITER)
    #define CYTHON_USE_UNICODE_WRITER 1
  #endif
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #ifndef CYTHON_ASSUME_SAFE_MACROS
    #define CYTHON_ASSUME_SAFE_MACROS 1
  #endif
  #ifndef CYTHON_UNPACK_METHODS
    #define CYTHON_UNPACK_METHODS 1
  #endif
  #ifndef CYTHON_FAST_THREAD_STATE
    #define CYTHON_FAST_THREAD_STATE 1
  #endif
  #ifndef CYTHON_FAST_PYCALL
    #define CYTHON_FAST_PYCALL 1
  #endif
  #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
    #define CYTHON_PEP489_MULTI_PHASE_INIT (0 && PY_VERSION_HEX >= 0x03050000)
  #endif
  #ifndef CYTHON_USE_TP_FINALIZE
    #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1)
  #endif
#endif
#if !defined(CYTHON_FAST_PYCCALL)
#define CYTHON_FAST_PYCCALL  (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1)
#endif
#if CYTHON_USE_PYLONG_INTERNALS
  #include "longintrepr.h"
  #undef SHIFT
  #undef BASE
  #undef MASK
#endif
#ifndef __has_attribute
  #define __has_attribute(x) 0
#endif
#ifndef __has_cpp_attribute
  #define __has_cpp_attribute(x) 0
#endif
#ifndef CYTHON_RESTRICT
  #if defined(__GNUC__)
    #define CYTHON_RESTRICT __restrict__
  #elif defined(_MSC_VER) && _MSC_VER >= 1400
    #define CYTHON_RESTRICT __restrict
  #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define CYTHON_RESTRICT restrict
  #else
    #define CYTHON_RESTRICT
  #endif
#endif
#ifndef CYTHON_UNUSED
# if defined(__GNUC__)
#   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
#     define CYTHON_UNUSED __attribute__ ((__unused__))
#   else
#     define CYTHON_UNUSED
#   endif
# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
#   define CYTHON_UNUSED __attribute__ ((__unused__))
# else
#   define CYTHON_UNUSED
# endif
#endif
#ifndef CYTHON_MAYBE_UNUSED_VAR
#  if defined(__cplusplus)
     template void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }
#  else
#    define CYTHON_MAYBE_UNUSED_VAR(x) (void)(x)
#  endif
#endif
#ifndef CYTHON_NCP_UNUSED
# if CYTHON_COMPILING_IN_CPYTHON
#  define CYTHON_NCP_UNUSED
# else
#  define CYTHON_NCP_UNUSED CYTHON_UNUSED
# endif
#endif
#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None)
#ifdef _MSC_VER
    #ifndef _MSC_STDINT_H_
        #if _MSC_VER < 1300
           typedef unsigned char     uint8_t;
           typedef unsigned int      uint32_t;
        #else
           typedef unsigned __int8   uint8_t;
           typedef unsigned __int32  uint32_t;
        #endif
    #endif
#else
   #include 
#endif
#ifndef CYTHON_FALLTHROUGH
  #if defined(__cplusplus) && __cplusplus >= 201103L
    #if __has_cpp_attribute(fallthrough)
      #define CYTHON_FALLTHROUGH [[fallthrough]]
    #elif __has_cpp_attribute(clang::fallthrough)
      #define CYTHON_FALLTHROUGH [[clang::fallthrough]]
    #elif __has_cpp_attribute(gnu::fallthrough)
      #define CYTHON_FALLTHROUGH [[gnu::fallthrough]]
    #endif
  #endif
  #ifndef CYTHON_FALLTHROUGH
    #if __has_attribute(fallthrough)
      #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
    #else
      #define CYTHON_FALLTHROUGH
    #endif
  #endif
  #if defined(__clang__ ) && defined(__apple_build_version__)
    #if __apple_build_version__ < 7000000
      #undef  CYTHON_FALLTHROUGH
      #define CYTHON_FALLTHROUGH
    #endif
  #endif
#endif

#ifndef CYTHON_INLINE
  #if defined(__clang__)
    #define CYTHON_INLINE __inline__ __attribute__ ((__unused__))
  #elif defined(__GNUC__)
    #define CYTHON_INLINE __inline__
  #elif defined(_MSC_VER)
    #define CYTHON_INLINE __inline
  #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define CYTHON_INLINE inline
  #else
    #define CYTHON_INLINE
  #endif
#endif

#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag)
  #define Py_OptimizeFlag 0
#endif
#define __PYX_BUILD_PY_SSIZE_T "n"
#define CYTHON_FORMAT_SSIZE_T "z"
#if PY_MAJOR_VERSION < 3
  #define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
  #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
  #define __Pyx_DefaultClassType PyClass_Type
#else
  #define __Pyx_BUILTIN_MODULE_NAME "builtins"
  #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
  #define __Pyx_DefaultClassType PyType_Type
#endif
#ifndef Py_TPFLAGS_CHECKTYPES
  #define Py_TPFLAGS_CHECKTYPES 0
#endif
#ifndef Py_TPFLAGS_HAVE_INDEX
  #define Py_TPFLAGS_HAVE_INDEX 0
#endif
#ifndef Py_TPFLAGS_HAVE_NEWBUFFER
  #define Py_TPFLAGS_HAVE_NEWBUFFER 0
#endif
#ifndef Py_TPFLAGS_HAVE_FINALIZE
  #define Py_TPFLAGS_HAVE_FINALIZE 0
#endif
#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL)
  #ifndef METH_FASTCALL
     #define METH_FASTCALL 0x80
  #endif
  typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs);
  typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args,
                                                          Py_ssize_t nargs, PyObject *kwnames);
#else
  #define __Pyx_PyCFunctionFast _PyCFunctionFast
  #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
#endif
#if CYTHON_FAST_PYCCALL
#define __Pyx_PyFastCFunction_Check(func)\
    ((PyCFunction_Check(func) && (METH_FASTCALL == (PyCFunction_GET_FLAGS(func) & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS)))))
#else
#define __Pyx_PyFastCFunction_Check(func) 0
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc)
  #define PyObject_Malloc(s)   PyMem_Malloc(s)
  #define PyObject_Free(p)     PyMem_Free(p)
  #define PyObject_Realloc(p)  PyMem_Realloc(p)
#endif
#if CYTHON_COMPILING_IN_PYSTON
  #define __Pyx_PyCode_HasFreeVars(co)  PyCode_HasFreeVars(co)
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno) PyFrame_SetLineNumber(frame, lineno)
#else
  #define __Pyx_PyCode_HasFreeVars(co)  (PyCode_GetNumFree(co) > 0)
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno)  (frame)->f_lineno = (lineno)
#endif
#if !CYTHON_FAST_THREAD_STATE || PY_VERSION_HEX < 0x02070000
  #define __Pyx_PyThreadState_Current PyThreadState_GET()
#elif PY_VERSION_HEX >= 0x03060000
  #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet()
#elif PY_VERSION_HEX >= 0x03000000
  #define __Pyx_PyThreadState_Current PyThreadState_GET()
#else
  #define __Pyx_PyThreadState_Current _PyThreadState_Current
#endif
#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT)
#include "pythread.h"
#define Py_tss_NEEDS_INIT 0
typedef int Py_tss_t;
static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) {
  *key = PyThread_create_key();
  return 0; // PyThread_create_key reports success always
}
static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) {
  Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t));
  *key = Py_tss_NEEDS_INIT;
  return key;
}
static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) {
  PyObject_Free(key);
}
static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) {
  return *key != Py_tss_NEEDS_INIT;
}
static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) {
  PyThread_delete_key(*key);
  *key = Py_tss_NEEDS_INIT;
}
static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) {
  return PyThread_set_key_value(*key, value);
}
static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) {
  return PyThread_get_key_value(*key);
}
#endif // TSS (Thread Specific Storage) API
#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized)
#define __Pyx_PyDict_NewPresized(n)  ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n))
#else
#define __Pyx_PyDict_NewPresized(n)  PyDict_New()
#endif
#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION
  #define __Pyx_PyNumber_Divide(x,y)         PyNumber_TrueDivide(x,y)
  #define __Pyx_PyNumber_InPlaceDivide(x,y)  PyNumber_InPlaceTrueDivide(x,y)
#else
  #define __Pyx_PyNumber_Divide(x,y)         PyNumber_Divide(x,y)
  #define __Pyx_PyNumber_InPlaceDivide(x,y)  PyNumber_InPlaceDivide(x,y)
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && CYTHON_USE_UNICODE_INTERNALS
#define __Pyx_PyDict_GetItemStr(dict, name)  _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash)
#else
#define __Pyx_PyDict_GetItemStr(dict, name)  PyDict_GetItem(dict, name)
#endif
#if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND)
  #define CYTHON_PEP393_ENABLED 1
  #define __Pyx_PyUnicode_READY(op)       (likely(PyUnicode_IS_READY(op)) ?\
                                              0 : _PyUnicode_Ready((PyObject *)(op)))
  #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_LENGTH(u)
  #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   PyUnicode_MAX_CHAR_VALUE(u)
  #define __Pyx_PyUnicode_KIND(u)         PyUnicode_KIND(u)
  #define __Pyx_PyUnicode_DATA(u)         PyUnicode_DATA(u)
  #define __Pyx_PyUnicode_READ(k, d, i)   PyUnicode_READ(k, d, i)
  #define __Pyx_PyUnicode_WRITE(k, d, i, ch)  PyUnicode_WRITE(k, d, i, ch)
  #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u)))
#else
  #define CYTHON_PEP393_ENABLED 0
  #define PyUnicode_1BYTE_KIND  1
  #define PyUnicode_2BYTE_KIND  2
  #define PyUnicode_4BYTE_KIND  4
  #define __Pyx_PyUnicode_READY(op)       (0)
  #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_SIZE(u)
  #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i]))
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111)
  #define __Pyx_PyUnicode_KIND(u)         (sizeof(Py_UNICODE))
  #define __Pyx_PyUnicode_DATA(u)         ((void*)PyUnicode_AS_UNICODE(u))
  #define __Pyx_PyUnicode_READ(k, d, i)   ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i]))
  #define __Pyx_PyUnicode_WRITE(k, d, i, ch)  (((void)(k)), ((Py_UNICODE*)d)[i] = ch)
  #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != PyUnicode_GET_SIZE(u))
#endif
#if CYTHON_COMPILING_IN_PYPY
  #define __Pyx_PyUnicode_Concat(a, b)      PyNumber_Add(a, b)
  #define __Pyx_PyUnicode_ConcatSafe(a, b)  PyNumber_Add(a, b)
#else
  #define __Pyx_PyUnicode_Concat(a, b)      PyUnicode_Concat(a, b)
  #define __Pyx_PyUnicode_ConcatSafe(a, b)  ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\
      PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b))
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains)
  #define PyUnicode_Contains(u, s)  PySequence_Contains(u, s)
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyByteArray_Check)
  #define PyByteArray_Check(obj)  PyObject_TypeCheck(obj, &PyByteArray_Type)
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Format)
  #define PyObject_Format(obj, fmt)  PyObject_CallMethod(obj, "__format__", "O", fmt)
#endif
#define __Pyx_PyString_FormatSafe(a, b)   ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b))
#define __Pyx_PyUnicode_FormatSafe(a, b)  ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyString_Format(a, b)  PyUnicode_Format(a, b)
#else
  #define __Pyx_PyString_Format(a, b)  PyString_Format(a, b)
#endif
#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII)
  #define PyObject_ASCII(o)            PyObject_Repr(o)
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyBaseString_Type            PyUnicode_Type
  #define PyStringObject               PyUnicodeObject
  #define PyString_Type                PyUnicode_Type
  #define PyString_Check               PyUnicode_Check
  #define PyString_CheckExact          PyUnicode_CheckExact
#endif
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj)
  #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj)
#else
  #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj))
  #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj))
#endif
#ifndef PySet_CheckExact
  #define PySet_CheckExact(obj)        (Py_TYPE(obj) == &PySet_Type)
#endif
#if CYTHON_ASSUME_SAFE_MACROS
  #define __Pyx_PySequence_SIZE(seq)  Py_SIZE(seq)
#else
  #define __Pyx_PySequence_SIZE(seq)  PySequence_Size(seq)
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyIntObject                  PyLongObject
  #define PyInt_Type                   PyLong_Type
  #define PyInt_Check(op)              PyLong_Check(op)
  #define PyInt_CheckExact(op)         PyLong_CheckExact(op)
  #define PyInt_FromString             PyLong_FromString
  #define PyInt_FromUnicode            PyLong_FromUnicode
  #define PyInt_FromLong               PyLong_FromLong
  #define PyInt_FromSize_t             PyLong_FromSize_t
  #define PyInt_FromSsize_t            PyLong_FromSsize_t
  #define PyInt_AsLong                 PyLong_AsLong
  #define PyInt_AS_LONG                PyLong_AS_LONG
  #define PyInt_AsSsize_t              PyLong_AsSsize_t
  #define PyInt_AsUnsignedLongMask     PyLong_AsUnsignedLongMask
  #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
  #define PyNumber_Int                 PyNumber_Long
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyBoolObject                 PyLongObject
#endif
#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY
  #ifndef PyUnicode_InternFromString
    #define PyUnicode_InternFromString(s) PyUnicode_FromString(s)
  #endif
#endif
#if PY_VERSION_HEX < 0x030200A4
  typedef long Py_hash_t;
  #define __Pyx_PyInt_FromHash_t PyInt_FromLong
  #define __Pyx_PyInt_AsHash_t   PyInt_AsLong
#else
  #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t
  #define __Pyx_PyInt_AsHash_t   PyInt_AsSsize_t
#endif
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : (Py_INCREF(func), func))
#else
  #define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass)
#endif
#if CYTHON_USE_ASYNC_SLOTS
  #if PY_VERSION_HEX >= 0x030500B1
    #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
    #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async)
  #else
    #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved))
  #endif
#else
  #define __Pyx_PyType_AsAsync(obj) NULL
#endif
#ifndef __Pyx_PyAsyncMethodsStruct
    typedef struct {
        unaryfunc am_await;
        unaryfunc am_aiter;
        unaryfunc am_anext;
    } __Pyx_PyAsyncMethodsStruct;
#endif

#if defined(WIN32) || defined(MS_WINDOWS)
  #define _USE_MATH_DEFINES
#endif
#include 
#ifdef NAN
#define __PYX_NAN() ((float) NAN)
#else
static CYTHON_INLINE float __PYX_NAN() {
  float value;
  memset(&value, 0xFF, sizeof(value));
  return value;
}
#endif
#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL)
#define __Pyx_truncl trunc
#else
#define __Pyx_truncl truncl
#endif


#define __PYX_ERR(f_index, lineno, Ln_error) \
{ \
  __pyx_filename = __pyx_f[f_index]; __pyx_lineno = lineno; __pyx_clineno = __LINE__; goto Ln_error; \
}

#ifndef __PYX_EXTERN_C
  #ifdef __cplusplus
    #define __PYX_EXTERN_C extern "C"
  #else
    #define __PYX_EXTERN_C extern
  #endif
#endif

#define __PYX_HAVE__cpu_nms
#define __PYX_HAVE_API__cpu_nms
/* Early includes */
#include 
#include 
#include "numpy/arrayobject.h"
#include "numpy/ufuncobject.h"
#ifdef _OPENMP
#include 
#endif /* _OPENMP */

#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS)
#define CYTHON_WITHOUT_ASSERTIONS
#endif

typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;
                const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;

#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0
#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT 0
#define __PYX_DEFAULT_STRING_ENCODING ""
#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString
#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#define __Pyx_uchar_cast(c) ((unsigned char)c)
#define __Pyx_long_cast(x) ((long)x)
#define __Pyx_fits_Py_ssize_t(v, type, is_signed)  (\
    (sizeof(type) < sizeof(Py_ssize_t))  ||\
    (sizeof(type) > sizeof(Py_ssize_t) &&\
          likely(v < (type)PY_SSIZE_T_MAX ||\
                 v == (type)PY_SSIZE_T_MAX)  &&\
          (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\
                                v == (type)PY_SSIZE_T_MIN)))  ||\
    (sizeof(type) == sizeof(Py_ssize_t) &&\
          (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\
                               v == (type)PY_SSIZE_T_MAX)))  )
#if defined (__cplusplus) && __cplusplus >= 201103L
    #include 
    #define __Pyx_sst_abs(value) std::abs(value)
#elif SIZEOF_INT >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) abs(value)
#elif SIZEOF_LONG >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) labs(value)
#elif defined (_MSC_VER)
    #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value))
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define __Pyx_sst_abs(value) llabs(value)
#elif defined (__GNUC__)
    #define __Pyx_sst_abs(value) __builtin_llabs(value)
#else
    #define __Pyx_sst_abs(value) ((value<0) ? -value : value)
#endif
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*);
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s))
#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
#define __Pyx_PyBytes_FromString        PyBytes_FromString
#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
#if PY_MAJOR_VERSION < 3
    #define __Pyx_PyStr_FromString        __Pyx_PyBytes_FromString
    #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#else
    #define __Pyx_PyStr_FromString        __Pyx_PyUnicode_FromString
    #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize
#endif
#define __Pyx_PyBytes_AsWritableString(s)     ((char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableSString(s)    ((signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableUString(s)    ((unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsString(s)     ((const char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsSString(s)    ((const signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsUString(s)    ((const unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyObject_AsWritableString(s)    ((char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableSString(s)    ((signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableUString(s)    ((unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsSString(s)    ((const signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsUString(s)    ((const unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_FromCString(s)  __Pyx_PyObject_FromString((const char*)s)
#define __Pyx_PyBytes_FromCString(s)   __Pyx_PyBytes_FromString((const char*)s)
#define __Pyx_PyByteArray_FromCString(s)   __Pyx_PyByteArray_FromString((const char*)s)
#define __Pyx_PyStr_FromCString(s)     __Pyx_PyStr_FromString((const char*)s)
#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) {
    const Py_UNICODE *u_end = u;
    while (*u_end++) ;
    return (size_t)(u_end - u - 1);
}
#define __Pyx_PyUnicode_FromUnicode(u)       PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u))
#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode
#define __Pyx_PyUnicode_AsUnicode            PyUnicode_AsUnicode
#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj)
#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None)
#define __Pyx_PyBool_FromLong(b) ((b) ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False))
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x);
#define __Pyx_PySequence_Tuple(obj)\
    (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj))
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
#if CYTHON_ASSUME_SAFE_MACROS
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#else
#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
#endif
#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x))
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x))
#else
#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x))
#endif
#define __Pyx_PyNumber_Float(x) (PyFloat_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Float(x))
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
static int __Pyx_sys_getdefaultencoding_not_ascii;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
    PyObject* sys;
    PyObject* default_encoding = NULL;
    PyObject* ascii_chars_u = NULL;
    PyObject* ascii_chars_b = NULL;
    const char* default_encoding_c;
    sys = PyImport_ImportModule("sys");
    if (!sys) goto bad;
    default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL);
    Py_DECREF(sys);
    if (!default_encoding) goto bad;
    default_encoding_c = PyBytes_AsString(default_encoding);
    if (!default_encoding_c) goto bad;
    if (strcmp(default_encoding_c, "ascii") == 0) {
        __Pyx_sys_getdefaultencoding_not_ascii = 0;
    } else {
        char ascii_chars[128];
        int c;
        for (c = 0; c < 128; c++) {
            ascii_chars[c] = c;
        }
        __Pyx_sys_getdefaultencoding_not_ascii = 1;
        ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL);
        if (!ascii_chars_u) goto bad;
        ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL);
        if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) {
            PyErr_Format(
                PyExc_ValueError,
                "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.",
                default_encoding_c);
            goto bad;
        }
        Py_DECREF(ascii_chars_u);
        Py_DECREF(ascii_chars_b);
    }
    Py_DECREF(default_encoding);
    return 0;
bad:
    Py_XDECREF(default_encoding);
    Py_XDECREF(ascii_chars_u);
    Py_XDECREF(ascii_chars_b);
    return -1;
}
#endif
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL)
#else
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL)
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
static char* __PYX_DEFAULT_STRING_ENCODING;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
    PyObject* sys;
    PyObject* default_encoding = NULL;
    char* default_encoding_c;
    sys = PyImport_ImportModule("sys");
    if (!sys) goto bad;
    default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL);
    Py_DECREF(sys);
    if (!default_encoding) goto bad;
    default_encoding_c = PyBytes_AsString(default_encoding);
    if (!default_encoding_c) goto bad;
    __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c));
    if (!__PYX_DEFAULT_STRING_ENCODING) goto bad;
    strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c);
    Py_DECREF(default_encoding);
    return 0;
bad:
    Py_XDECREF(default_encoding);
    return -1;
}
#endif
#endif


/* Test for GCC > 2.95 */
#if defined(__GNUC__)     && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)))
  #define likely(x)   __builtin_expect(!!(x), 1)
  #define unlikely(x) __builtin_expect(!!(x), 0)
#else /* !__GNUC__ or GCC < 2.95 */
  #define likely(x)   (x)
  #define unlikely(x) (x)
#endif /* __GNUC__ */
static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; }

static PyObject *__pyx_m = NULL;
static PyObject *__pyx_d;
static PyObject *__pyx_b;
static PyObject *__pyx_cython_runtime;
static PyObject *__pyx_empty_tuple;
static PyObject *__pyx_empty_bytes;
static PyObject *__pyx_empty_unicode;
static int __pyx_lineno;
static int __pyx_clineno = 0;
static const char * __pyx_cfilenm= __FILE__;
static const char *__pyx_filename;

/* Header.proto */
#if !defined(CYTHON_CCOMPLEX)
  #if defined(__cplusplus)
    #define CYTHON_CCOMPLEX 1
  #elif defined(_Complex_I)
    #define CYTHON_CCOMPLEX 1
  #else
    #define CYTHON_CCOMPLEX 0
  #endif
#endif
#if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    #include 
  #else
    #include 
  #endif
#endif
#if CYTHON_CCOMPLEX && !defined(__cplusplus) && defined(__sun__) && defined(__GNUC__)
  #undef _Complex_I
  #define _Complex_I 1.0fj
#endif


static const char *__pyx_f[] = {
  "cpu_nms.pyx",
  "__init__.pxd",
  "type.pxd",
};
/* BufferFormatStructs.proto */
#define IS_UNSIGNED(type) (((type) -1) > 0)
struct __Pyx_StructField_;
#define __PYX_BUF_FLAGS_PACKED_STRUCT (1 << 0)
typedef struct {
  const char* name;
  struct __Pyx_StructField_* fields;
  size_t size;
  size_t arraysize[8];
  int ndim;
  char typegroup;
  char is_unsigned;
  int flags;
} __Pyx_TypeInfo;
typedef struct __Pyx_StructField_ {
  __Pyx_TypeInfo* type;
  const char* name;
  size_t offset;
} __Pyx_StructField;
typedef struct {
  __Pyx_StructField* field;
  size_t parent_offset;
} __Pyx_BufFmt_StackElem;
typedef struct {
  __Pyx_StructField root;
  __Pyx_BufFmt_StackElem* head;
  size_t fmt_offset;
  size_t new_count, enc_count;
  size_t struct_alignment;
  int is_complex;
  char enc_type;
  char new_packmode;
  char enc_packmode;
  char is_valid_array;
} __Pyx_BufFmt_Context;


/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":730
 * # in Cython to enable them only on the right systems.
 * 
 * ctypedef npy_int8       int8_t             # <<<<<<<<<<<<<<
 * ctypedef npy_int16      int16_t
 * ctypedef npy_int32      int32_t
 */
typedef npy_int8 __pyx_t_5numpy_int8_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":731
 * 
 * ctypedef npy_int8       int8_t
 * ctypedef npy_int16      int16_t             # <<<<<<<<<<<<<<
 * ctypedef npy_int32      int32_t
 * ctypedef npy_int64      int64_t
 */
typedef npy_int16 __pyx_t_5numpy_int16_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":732
 * ctypedef npy_int8       int8_t
 * ctypedef npy_int16      int16_t
 * ctypedef npy_int32      int32_t             # <<<<<<<<<<<<<<
 * ctypedef npy_int64      int64_t
 * #ctypedef npy_int96      int96_t
 */
typedef npy_int32 __pyx_t_5numpy_int32_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":733
 * ctypedef npy_int16      int16_t
 * ctypedef npy_int32      int32_t
 * ctypedef npy_int64      int64_t             # <<<<<<<<<<<<<<
 * #ctypedef npy_int96      int96_t
 * #ctypedef npy_int128     int128_t
 */
typedef npy_int64 __pyx_t_5numpy_int64_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":737
 * #ctypedef npy_int128     int128_t
 * 
 * ctypedef npy_uint8      uint8_t             # <<<<<<<<<<<<<<
 * ctypedef npy_uint16     uint16_t
 * ctypedef npy_uint32     uint32_t
 */
typedef npy_uint8 __pyx_t_5numpy_uint8_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":738
 * 
 * ctypedef npy_uint8      uint8_t
 * ctypedef npy_uint16     uint16_t             # <<<<<<<<<<<<<<
 * ctypedef npy_uint32     uint32_t
 * ctypedef npy_uint64     uint64_t
 */
typedef npy_uint16 __pyx_t_5numpy_uint16_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":739
 * ctypedef npy_uint8      uint8_t
 * ctypedef npy_uint16     uint16_t
 * ctypedef npy_uint32     uint32_t             # <<<<<<<<<<<<<<
 * ctypedef npy_uint64     uint64_t
 * #ctypedef npy_uint96     uint96_t
 */
typedef npy_uint32 __pyx_t_5numpy_uint32_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":740
 * ctypedef npy_uint16     uint16_t
 * ctypedef npy_uint32     uint32_t
 * ctypedef npy_uint64     uint64_t             # <<<<<<<<<<<<<<
 * #ctypedef npy_uint96     uint96_t
 * #ctypedef npy_uint128    uint128_t
 */
typedef npy_uint64 __pyx_t_5numpy_uint64_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":744
 * #ctypedef npy_uint128    uint128_t
 * 
 * ctypedef npy_float32    float32_t             # <<<<<<<<<<<<<<
 * ctypedef npy_float64    float64_t
 * #ctypedef npy_float80    float80_t
 */
typedef npy_float32 __pyx_t_5numpy_float32_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":745
 * 
 * ctypedef npy_float32    float32_t
 * ctypedef npy_float64    float64_t             # <<<<<<<<<<<<<<
 * #ctypedef npy_float80    float80_t
 * #ctypedef npy_float128   float128_t
 */
typedef npy_float64 __pyx_t_5numpy_float64_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":754
 * # The int types are mapped a bit surprising --
 * # numpy.int corresponds to 'l' and numpy.long to 'q'
 * ctypedef npy_long       int_t             # <<<<<<<<<<<<<<
 * ctypedef npy_longlong   long_t
 * ctypedef npy_longlong   longlong_t
 */
typedef npy_long __pyx_t_5numpy_int_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":755
 * # numpy.int corresponds to 'l' and numpy.long to 'q'
 * ctypedef npy_long       int_t
 * ctypedef npy_longlong   long_t             # <<<<<<<<<<<<<<
 * ctypedef npy_longlong   longlong_t
 * 
 */
typedef npy_longlong __pyx_t_5numpy_long_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":756
 * ctypedef npy_long       int_t
 * ctypedef npy_longlong   long_t
 * ctypedef npy_longlong   longlong_t             # <<<<<<<<<<<<<<
 * 
 * ctypedef npy_ulong      uint_t
 */
typedef npy_longlong __pyx_t_5numpy_longlong_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":758
 * ctypedef npy_longlong   longlong_t
 * 
 * ctypedef npy_ulong      uint_t             # <<<<<<<<<<<<<<
 * ctypedef npy_ulonglong  ulong_t
 * ctypedef npy_ulonglong  ulonglong_t
 */
typedef npy_ulong __pyx_t_5numpy_uint_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":759
 * 
 * ctypedef npy_ulong      uint_t
 * ctypedef npy_ulonglong  ulong_t             # <<<<<<<<<<<<<<
 * ctypedef npy_ulonglong  ulonglong_t
 * 
 */
typedef npy_ulonglong __pyx_t_5numpy_ulong_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":760
 * ctypedef npy_ulong      uint_t
 * ctypedef npy_ulonglong  ulong_t
 * ctypedef npy_ulonglong  ulonglong_t             # <<<<<<<<<<<<<<
 * 
 * ctypedef npy_intp       intp_t
 */
typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":762
 * ctypedef npy_ulonglong  ulonglong_t
 * 
 * ctypedef npy_intp       intp_t             # <<<<<<<<<<<<<<
 * ctypedef npy_uintp      uintp_t
 * 
 */
typedef npy_intp __pyx_t_5numpy_intp_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":763
 * 
 * ctypedef npy_intp       intp_t
 * ctypedef npy_uintp      uintp_t             # <<<<<<<<<<<<<<
 * 
 * ctypedef npy_double     float_t
 */
typedef npy_uintp __pyx_t_5numpy_uintp_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":765
 * ctypedef npy_uintp      uintp_t
 * 
 * ctypedef npy_double     float_t             # <<<<<<<<<<<<<<
 * ctypedef npy_double     double_t
 * ctypedef npy_longdouble longdouble_t
 */
typedef npy_double __pyx_t_5numpy_float_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":766
 * 
 * ctypedef npy_double     float_t
 * ctypedef npy_double     double_t             # <<<<<<<<<<<<<<
 * ctypedef npy_longdouble longdouble_t
 * 
 */
typedef npy_double __pyx_t_5numpy_double_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":767
 * ctypedef npy_double     float_t
 * ctypedef npy_double     double_t
 * ctypedef npy_longdouble longdouble_t             # <<<<<<<<<<<<<<
 * 
 * ctypedef npy_cfloat      cfloat_t
 */
typedef npy_longdouble __pyx_t_5numpy_longdouble_t;
/* Declarations.proto */
#if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    typedef ::std::complex< float > __pyx_t_float_complex;
  #else
    typedef float _Complex __pyx_t_float_complex;
  #endif
#else
    typedef struct { float real, imag; } __pyx_t_float_complex;
#endif
static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float, float);

/* Declarations.proto */
#if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    typedef ::std::complex< double > __pyx_t_double_complex;
  #else
    typedef double _Complex __pyx_t_double_complex;
  #endif
#else
    typedef struct { double real, imag; } __pyx_t_double_complex;
#endif
static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double, double);


/*--- Type declarations ---*/

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":769
 * ctypedef npy_longdouble longdouble_t
 * 
 * ctypedef npy_cfloat      cfloat_t             # <<<<<<<<<<<<<<
 * ctypedef npy_cdouble     cdouble_t
 * ctypedef npy_clongdouble clongdouble_t
 */
typedef npy_cfloat __pyx_t_5numpy_cfloat_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":770
 * 
 * ctypedef npy_cfloat      cfloat_t
 * ctypedef npy_cdouble     cdouble_t             # <<<<<<<<<<<<<<
 * ctypedef npy_clongdouble clongdouble_t
 * 
 */
typedef npy_cdouble __pyx_t_5numpy_cdouble_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":771
 * ctypedef npy_cfloat      cfloat_t
 * ctypedef npy_cdouble     cdouble_t
 * ctypedef npy_clongdouble clongdouble_t             # <<<<<<<<<<<<<<
 * 
 * ctypedef npy_cdouble     complex_t
 */
typedef npy_clongdouble __pyx_t_5numpy_clongdouble_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":773
 * ctypedef npy_clongdouble clongdouble_t
 * 
 * ctypedef npy_cdouble     complex_t             # <<<<<<<<<<<<<<
 * 
 * cdef inline object PyArray_MultiIterNew1(a):
 */
typedef npy_cdouble __pyx_t_5numpy_complex_t;

/* --- Runtime support code (head) --- */
/* Refnanny.proto */
#ifndef CYTHON_REFNANNY
  #define CYTHON_REFNANNY 0
#endif
#if CYTHON_REFNANNY
  typedef struct {
    void (*INCREF)(void*, PyObject*, int);
    void (*DECREF)(void*, PyObject*, int);
    void (*GOTREF)(void*, PyObject*, int);
    void (*GIVEREF)(void*, PyObject*, int);
    void* (*SetupContext)(const char*, int, const char*);
    void (*FinishContext)(void**);
  } __Pyx_RefNannyAPIStruct;
  static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;
  static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname);
  #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL;
#ifdef WITH_THREAD
  #define __Pyx_RefNannySetupContext(name, acquire_gil)\
          if (acquire_gil) {\
              PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
              __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\
              PyGILState_Release(__pyx_gilstate_save);\
          } else {\
              __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\
          }
#else
  #define __Pyx_RefNannySetupContext(name, acquire_gil)\
          __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__)
#endif
  #define __Pyx_RefNannyFinishContext()\
          __Pyx_RefNanny->FinishContext(&__pyx_refnanny)
  #define __Pyx_INCREF(r)  __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_DECREF(r)  __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_GOTREF(r)  __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_XINCREF(r)  do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0)
  #define __Pyx_XDECREF(r)  do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0)
  #define __Pyx_XGOTREF(r)  do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0)
  #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0)
#else
  #define __Pyx_RefNannyDeclarations
  #define __Pyx_RefNannySetupContext(name, acquire_gil)
  #define __Pyx_RefNannyFinishContext()
  #define __Pyx_INCREF(r) Py_INCREF(r)
  #define __Pyx_DECREF(r) Py_DECREF(r)
  #define __Pyx_GOTREF(r)
  #define __Pyx_GIVEREF(r)
  #define __Pyx_XINCREF(r) Py_XINCREF(r)
  #define __Pyx_XDECREF(r) Py_XDECREF(r)
  #define __Pyx_XGOTREF(r)
  #define __Pyx_XGIVEREF(r)
#endif
#define __Pyx_XDECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; __Pyx_XDECREF(tmp);\
    } while (0)
#define __Pyx_DECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; __Pyx_DECREF(tmp);\
    } while (0)
#define __Pyx_CLEAR(r)    do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0)
#define __Pyx_XCLEAR(r)   do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0)

/* PyObjectGetAttrStr.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name);
#else
#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n)
#endif

/* GetBuiltinName.proto */
static PyObject *__Pyx_GetBuiltinName(PyObject *name);

/* RaiseArgTupleInvalid.proto */
static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact,
    Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found);

/* RaiseDoubleKeywords.proto */
static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name);

/* ParseKeywords.proto */
static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[],\
    PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args,\
    const char* function_name);

/* ArgTypeTest.proto */
#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\
    ((likely((Py_TYPE(obj) == type) | (none_allowed && (obj == Py_None)))) ? 1 :\
        __Pyx__ArgTypeTest(obj, type, name, exact))
static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact);

/* IsLittleEndian.proto */
static CYTHON_INLINE int __Pyx_Is_Little_Endian(void);

/* BufferFormatCheck.proto */
static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts);
static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx,
                              __Pyx_BufFmt_StackElem* stack,
                              __Pyx_TypeInfo* type);

/* BufferGetAndValidate.proto */
#define __Pyx_GetBufferAndValidate(buf, obj, dtype, flags, nd, cast, stack)\
    ((obj == Py_None || obj == NULL) ?\
    (__Pyx_ZeroBuffer(buf), 0) :\
    __Pyx__GetBufferAndValidate(buf, obj, dtype, flags, nd, cast, stack))
static int  __Pyx__GetBufferAndValidate(Py_buffer* buf, PyObject* obj,
    __Pyx_TypeInfo* dtype, int flags, int nd, int cast, __Pyx_BufFmt_StackElem* stack);
static void __Pyx_ZeroBuffer(Py_buffer* buf);
static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info);
static Py_ssize_t __Pyx_minusones[] = { -1, -1, -1, -1, -1, -1, -1, -1 };
static Py_ssize_t __Pyx_zeros[] = { 0, 0, 0, 0, 0, 0, 0, 0 };

/* GetItemInt.proto */
#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\
    (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\
               __Pyx_GetItemInt_Generic(o, to_py_func(i))))
#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\
    (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
                                                              int wraparound, int boundscheck);
#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\
    (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
                                                              int wraparound, int boundscheck);
static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j);
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i,
                                                     int is_list, int wraparound, int boundscheck);

/* ObjectGetItem.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key);
#else
#define __Pyx_PyObject_GetItem(obj, key)  PyObject_GetItem(obj, key)
#endif

/* ExtTypeTest.proto */
static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type);

/* PyIntBinop.proto */
#if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, long intval, int inplace);
#else
#define __Pyx_PyInt_AddObjC(op1, op2, intval, inplace)\
    (inplace ? PyNumber_InPlaceAdd(op1, op2) : PyNumber_Add(op1, op2))
#endif

/* PyCFunctionFastCall.proto */
#if CYTHON_FAST_PYCCALL
static CYTHON_INLINE PyObject *__Pyx_PyCFunction_FastCall(PyObject *func, PyObject **args, Py_ssize_t nargs);
#else
#define __Pyx_PyCFunction_FastCall(func, args, nargs)  (assert(0), NULL)
#endif

/* PyFunctionFastCall.proto */
#if CYTHON_FAST_PYCALL
#define __Pyx_PyFunction_FastCall(func, args, nargs)\
    __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL)
#if 1 || PY_VERSION_HEX < 0x030600B1
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs);
#else
#define __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs) _PyFunction_FastCallDict(func, args, nargs, kwargs)
#endif
#endif

/* PyObjectCall.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw);
#else
#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw)
#endif

/* PyObjectCallMethO.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg);
#endif

/* PyObjectCallOneArg.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg);

/* PyObjectCallNoArg.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func);
#else
#define __Pyx_PyObject_CallNoArg(func) __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL)
#endif

/* GetModuleGlobalName.proto */
static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name);

/* BufferIndexError.proto */
static void __Pyx_RaiseBufferIndexError(int axis);

#define __Pyx_BufPtrStrided1d(type, buf, i0, s0) (type)((char*)buf + i0 * s0)
/* ListAppend.proto */
#if CYTHON_USE_PYLIST_INTERNALS && CYTHON_ASSUME_SAFE_MACROS
static CYTHON_INLINE int __Pyx_PyList_Append(PyObject* list, PyObject* x) {
    PyListObject* L = (PyListObject*) list;
    Py_ssize_t len = Py_SIZE(list);
    if (likely(L->allocated > len) & likely(len > (L->allocated >> 1))) {
        Py_INCREF(x);
        PyList_SET_ITEM(list, len, x);
        Py_SIZE(list) = len+1;
        return 0;
    }
    return PyList_Append(list, x);
}
#else
#define __Pyx_PyList_Append(L,x) PyList_Append(L,x)
#endif

/* PyThreadStateGet.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyThreadState_declare  PyThreadState *__pyx_tstate;
#define __Pyx_PyThreadState_assign  __pyx_tstate = __Pyx_PyThreadState_Current;
#define __Pyx_PyErr_Occurred()  __pyx_tstate->curexc_type
#else
#define __Pyx_PyThreadState_declare
#define __Pyx_PyThreadState_assign
#define __Pyx_PyErr_Occurred()  PyErr_Occurred()
#endif

/* PyErrFetchRestore.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL)
#define __Pyx_ErrRestoreWithState(type, value, tb)  __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb)    __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrRestore(type, value, tb)  __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb)
#define __Pyx_ErrFetch(type, value, tb)    __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL))
#else
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#endif
#else
#define __Pyx_PyErr_Clear() PyErr_Clear()
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#define __Pyx_ErrRestoreWithState(type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb)  PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestoreInState(tstate, type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchInState(tstate, type, value, tb)  PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestore(type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetch(type, value, tb)  PyErr_Fetch(type, value, tb)
#endif

/* RaiseException.proto */
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause);

/* DictGetItem.proto */
#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY
static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key);
#define __Pyx_PyObject_Dict_GetItem(obj, name)\
    (likely(PyDict_CheckExact(obj)) ?\
     __Pyx_PyDict_GetItem(obj, name) : PyObject_GetItem(obj, name))
#else
#define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key)
#define __Pyx_PyObject_Dict_GetItem(obj, name)  PyObject_GetItem(obj, name)
#endif

/* RaiseTooManyValuesToUnpack.proto */
static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected);

/* RaiseNeedMoreValuesToUnpack.proto */
static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index);

/* RaiseNoneIterError.proto */
static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void);

/* SaveResetException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSave(type, value, tb)  __Pyx__ExceptionSave(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#define __Pyx_ExceptionReset(type, value, tb)  __Pyx__ExceptionReset(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
#else
#define __Pyx_ExceptionSave(type, value, tb)   PyErr_GetExcInfo(type, value, tb)
#define __Pyx_ExceptionReset(type, value, tb)  PyErr_SetExcInfo(type, value, tb)
#endif

/* PyErrExceptionMatches.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err)
static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err);
#else
#define __Pyx_PyErr_ExceptionMatches(err)  PyErr_ExceptionMatches(err)
#endif

/* GetException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_GetException(type, value, tb)  __Pyx__GetException(__pyx_tstate, type, value, tb)
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb);
#endif

/* Import.proto */
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level);

/* CLineInTraceback.proto */
#ifdef CYTHON_CLINE_IN_TRACEBACK
#define __Pyx_CLineForTraceback(tstate, c_line)  (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0)
#else
static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line);
#endif

/* CodeObjectCache.proto */
typedef struct {
    PyCodeObject* code_object;
    int code_line;
} __Pyx_CodeObjectCacheEntry;
struct __Pyx_CodeObjectCache {
    int count;
    int max_count;
    __Pyx_CodeObjectCacheEntry* entries;
};
static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};
static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line);
static PyCodeObject *__pyx_find_code_object(int code_line);
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object);

/* AddTraceback.proto */
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename);

/* BufferStructDeclare.proto */
typedef struct {
  Py_ssize_t shape, strides, suboffsets;
} __Pyx_Buf_DimInfo;
typedef struct {
  size_t refcount;
  Py_buffer pybuffer;
} __Pyx_Buffer;
typedef struct {
  __Pyx_Buffer *rcbuffer;
  char *data;
  __Pyx_Buf_DimInfo diminfo[8];
} __Pyx_LocalBuf_ND;

#if PY_MAJOR_VERSION < 3
    static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags);
    static void __Pyx_ReleaseBuffer(Py_buffer *view);
#else
    #define __Pyx_GetBuffer PyObject_GetBuffer
    #define __Pyx_ReleaseBuffer PyBuffer_Release
#endif


/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value);

/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value);

/* RealImag.proto */
#if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    #define __Pyx_CREAL(z) ((z).real())
    #define __Pyx_CIMAG(z) ((z).imag())
  #else
    #define __Pyx_CREAL(z) (__real__(z))
    #define __Pyx_CIMAG(z) (__imag__(z))
  #endif
#else
    #define __Pyx_CREAL(z) ((z).real)
    #define __Pyx_CIMAG(z) ((z).imag)
#endif
#if defined(__cplusplus) && CYTHON_CCOMPLEX\
        && (defined(_WIN32) || defined(__clang__) || (defined(__GNUC__) && (__GNUC__ >= 5 || __GNUC__ == 4 && __GNUC_MINOR__ >= 4 )) || __cplusplus >= 201103)
    #define __Pyx_SET_CREAL(z,x) ((z).real(x))
    #define __Pyx_SET_CIMAG(z,y) ((z).imag(y))
#else
    #define __Pyx_SET_CREAL(z,x) __Pyx_CREAL(z) = (x)
    #define __Pyx_SET_CIMAG(z,y) __Pyx_CIMAG(z) = (y)
#endif

/* Arithmetic.proto */
#if CYTHON_CCOMPLEX
    #define __Pyx_c_eq_float(a, b)   ((a)==(b))
    #define __Pyx_c_sum_float(a, b)  ((a)+(b))
    #define __Pyx_c_diff_float(a, b) ((a)-(b))
    #define __Pyx_c_prod_float(a, b) ((a)*(b))
    #define __Pyx_c_quot_float(a, b) ((a)/(b))
    #define __Pyx_c_neg_float(a)     (-(a))
  #ifdef __cplusplus
    #define __Pyx_c_is_zero_float(z) ((z)==(float)0)
    #define __Pyx_c_conj_float(z)    (::std::conj(z))
    #if 1
        #define __Pyx_c_abs_float(z)     (::std::abs(z))
        #define __Pyx_c_pow_float(a, b)  (::std::pow(a, b))
    #endif
  #else
    #define __Pyx_c_is_zero_float(z) ((z)==0)
    #define __Pyx_c_conj_float(z)    (conjf(z))
    #if 1
        #define __Pyx_c_abs_float(z)     (cabsf(z))
        #define __Pyx_c_pow_float(a, b)  (cpowf(a, b))
    #endif
 #endif
#else
    static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex, __pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex, __pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex, __pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex, __pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex, __pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex);
    static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex);
    #if 1
        static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex);
        static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex, __pyx_t_float_complex);
    #endif
#endif

/* Arithmetic.proto */
#if CYTHON_CCOMPLEX
    #define __Pyx_c_eq_double(a, b)   ((a)==(b))
    #define __Pyx_c_sum_double(a, b)  ((a)+(b))
    #define __Pyx_c_diff_double(a, b) ((a)-(b))
    #define __Pyx_c_prod_double(a, b) ((a)*(b))
    #define __Pyx_c_quot_double(a, b) ((a)/(b))
    #define __Pyx_c_neg_double(a)     (-(a))
  #ifdef __cplusplus
    #define __Pyx_c_is_zero_double(z) ((z)==(double)0)
    #define __Pyx_c_conj_double(z)    (::std::conj(z))
    #if 1
        #define __Pyx_c_abs_double(z)     (::std::abs(z))
        #define __Pyx_c_pow_double(a, b)  (::std::pow(a, b))
    #endif
  #else
    #define __Pyx_c_is_zero_double(z) ((z)==0)
    #define __Pyx_c_conj_double(z)    (conj(z))
    #if 1
        #define __Pyx_c_abs_double(z)     (cabs(z))
        #define __Pyx_c_pow_double(a, b)  (cpow(a, b))
    #endif
 #endif
#else
    static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex, __pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex, __pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex, __pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex, __pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex, __pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex);
    static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex);
    #if 1
        static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex);
        static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex, __pyx_t_double_complex);
    #endif
#endif

/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum__NPY_TYPES(enum NPY_TYPES value);

/* CIntFromPy.proto */
static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *);

/* CIntFromPy.proto */
static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *);

/* FastTypeChecks.proto */
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type)
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2);
#else
#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type)
#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2))
#endif
#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception)

/* CheckBinaryVersion.proto */
static int __Pyx_check_binary_version(void);

/* PyIdentifierFromString.proto */
#if !defined(__Pyx_PyIdentifier_FromString)
#if PY_MAJOR_VERSION < 3
  #define __Pyx_PyIdentifier_FromString(s) PyString_FromString(s)
#else
  #define __Pyx_PyIdentifier_FromString(s) PyUnicode_FromString(s)
#endif
#endif

/* ModuleImport.proto */
static PyObject *__Pyx_ImportModule(const char *name);

/* TypeImport.proto */
static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name, size_t size, int strict);

/* InitStrings.proto */
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t);


/* Module declarations from 'cpython.buffer' */

/* Module declarations from 'libc.string' */

/* Module declarations from 'libc.stdio' */

/* Module declarations from '__builtin__' */

/* Module declarations from 'cpython.type' */
static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0;

/* Module declarations from 'cpython' */

/* Module declarations from 'cpython.object' */

/* Module declarations from 'cpython.ref' */

/* Module declarations from 'cpython.mem' */

/* Module declarations from 'numpy' */

/* Module declarations from 'numpy' */
static PyTypeObject *__pyx_ptype_5numpy_dtype = 0;
static PyTypeObject *__pyx_ptype_5numpy_flatiter = 0;
static PyTypeObject *__pyx_ptype_5numpy_broadcast = 0;
static PyTypeObject *__pyx_ptype_5numpy_ndarray = 0;
static PyTypeObject *__pyx_ptype_5numpy_ufunc = 0;
static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *, char *, char *, int *); /*proto*/

/* Module declarations from 'cpu_nms' */
static CYTHON_INLINE __pyx_t_5numpy_float32_t __pyx_f_7cpu_nms_max(__pyx_t_5numpy_float32_t, __pyx_t_5numpy_float32_t); /*proto*/
static CYTHON_INLINE __pyx_t_5numpy_float32_t __pyx_f_7cpu_nms_min(__pyx_t_5numpy_float32_t, __pyx_t_5numpy_float32_t); /*proto*/
static __Pyx_TypeInfo __Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t = { "float32_t", NULL, sizeof(__pyx_t_5numpy_float32_t), { 0 }, 0, 'R', 0, 0 };
static __Pyx_TypeInfo __Pyx_TypeInfo_nn___pyx_t_5numpy_int_t = { "int_t", NULL, sizeof(__pyx_t_5numpy_int_t), { 0 }, 0, IS_UNSIGNED(__pyx_t_5numpy_int_t) ? 'U' : 'I', IS_UNSIGNED(__pyx_t_5numpy_int_t), 0 };
#define __Pyx_MODULE_NAME "cpu_nms"
extern int __pyx_module_is_main_cpu_nms;
int __pyx_module_is_main_cpu_nms = 0;

/* Implementation of 'cpu_nms' */
static PyObject *__pyx_builtin_range;
static PyObject *__pyx_builtin_ValueError;
static PyObject *__pyx_builtin_RuntimeError;
static PyObject *__pyx_builtin_ImportError;
static const char __pyx_k_h[] = "h";
static const char __pyx_k_i[] = "_i";
static const char __pyx_k_j[] = "_j";
static const char __pyx_k_w[] = "w";
static const char __pyx_k_np[] = "np";
static const char __pyx_k_x1[] = "x1";
static const char __pyx_k_x2[] = "x2";
static const char __pyx_k_y1[] = "y1";
static const char __pyx_k_y2[] = "y2";
static const char __pyx_k_i_2[] = "i";
static const char __pyx_k_int[] = "int";
static const char __pyx_k_ix1[] = "ix1";
static const char __pyx_k_ix2[] = "ix2";
static const char __pyx_k_iy1[] = "iy1";
static const char __pyx_k_iy2[] = "iy2";
static const char __pyx_k_j_2[] = "j";
static const char __pyx_k_ovr[] = "ovr";
static const char __pyx_k_xx1[] = "xx1";
static const char __pyx_k_xx2[] = "xx2";
static const char __pyx_k_yy1[] = "yy1";
static const char __pyx_k_yy2[] = "yy2";
static const char __pyx_k_dets[] = "dets";
static const char __pyx_k_keep[] = "keep";
static const char __pyx_k_main[] = "__main__";
static const char __pyx_k_test[] = "__test__";
static const char __pyx_k_areas[] = "areas";
static const char __pyx_k_dtype[] = "dtype";
static const char __pyx_k_iarea[] = "iarea";
static const char __pyx_k_inter[] = "inter";
static const char __pyx_k_ndets[] = "ndets";
static const char __pyx_k_numpy[] = "numpy";
static const char __pyx_k_order[] = "order";
static const char __pyx_k_range[] = "range";
static const char __pyx_k_zeros[] = "zeros";
static const char __pyx_k_import[] = "__import__";
static const char __pyx_k_scores[] = "scores";
static const char __pyx_k_thresh[] = "thresh";
static const char __pyx_k_argsort[] = "argsort";
static const char __pyx_k_cpu_nms[] = "cpu_nms";
static const char __pyx_k_ValueError[] = "ValueError";
static const char __pyx_k_suppressed[] = "suppressed";
static const char __pyx_k_ImportError[] = "ImportError";
static const char __pyx_k_cpu_nms_pyx[] = "cpu_nms.pyx";
static const char __pyx_k_RuntimeError[] = "RuntimeError";
static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback";
static const char __pyx_k_ndarray_is_not_C_contiguous[] = "ndarray is not C contiguous";
static const char __pyx_k_numpy_core_multiarray_failed_to[] = "numpy.core.multiarray failed to import";
static const char __pyx_k_unknown_dtype_code_in_numpy_pxd[] = "unknown dtype code in numpy.pxd (%d)";
static const char __pyx_k_Format_string_allocated_too_shor[] = "Format string allocated too short, see comment in numpy.pxd";
static const char __pyx_k_Non_native_byte_order_not_suppor[] = "Non-native byte order not supported";
static const char __pyx_k_ndarray_is_not_Fortran_contiguou[] = "ndarray is not Fortran contiguous";
static const char __pyx_k_numpy_core_umath_failed_to_impor[] = "numpy.core.umath failed to import";
static const char __pyx_k_Format_string_allocated_too_shor_2[] = "Format string allocated too short.";
static PyObject *__pyx_kp_u_Format_string_allocated_too_shor;
static PyObject *__pyx_kp_u_Format_string_allocated_too_shor_2;
static PyObject *__pyx_n_s_ImportError;
static PyObject *__pyx_kp_u_Non_native_byte_order_not_suppor;
static PyObject *__pyx_n_s_RuntimeError;
static PyObject *__pyx_n_s_ValueError;
static PyObject *__pyx_n_s_areas;
static PyObject *__pyx_n_s_argsort;
static PyObject *__pyx_n_s_cline_in_traceback;
static PyObject *__pyx_n_s_cpu_nms;
static PyObject *__pyx_kp_s_cpu_nms_pyx;
static PyObject *__pyx_n_s_dets;
static PyObject *__pyx_n_s_dtype;
static PyObject *__pyx_n_s_h;
static PyObject *__pyx_n_s_i;
static PyObject *__pyx_n_s_i_2;
static PyObject *__pyx_n_s_iarea;
static PyObject *__pyx_n_s_import;
static PyObject *__pyx_n_s_int;
static PyObject *__pyx_n_s_inter;
static PyObject *__pyx_n_s_ix1;
static PyObject *__pyx_n_s_ix2;
static PyObject *__pyx_n_s_iy1;
static PyObject *__pyx_n_s_iy2;
static PyObject *__pyx_n_s_j;
static PyObject *__pyx_n_s_j_2;
static PyObject *__pyx_n_s_keep;
static PyObject *__pyx_n_s_main;
static PyObject *__pyx_kp_u_ndarray_is_not_C_contiguous;
static PyObject *__pyx_kp_u_ndarray_is_not_Fortran_contiguou;
static PyObject *__pyx_n_s_ndets;
static PyObject *__pyx_n_s_np;
static PyObject *__pyx_n_s_numpy;
static PyObject *__pyx_kp_s_numpy_core_multiarray_failed_to;
static PyObject *__pyx_kp_s_numpy_core_umath_failed_to_impor;
static PyObject *__pyx_n_s_order;
static PyObject *__pyx_n_s_ovr;
static PyObject *__pyx_n_s_range;
static PyObject *__pyx_n_s_scores;
static PyObject *__pyx_n_s_suppressed;
static PyObject *__pyx_n_s_test;
static PyObject *__pyx_n_s_thresh;
static PyObject *__pyx_kp_u_unknown_dtype_code_in_numpy_pxd;
static PyObject *__pyx_n_s_w;
static PyObject *__pyx_n_s_x1;
static PyObject *__pyx_n_s_x2;
static PyObject *__pyx_n_s_xx1;
static PyObject *__pyx_n_s_xx2;
static PyObject *__pyx_n_s_y1;
static PyObject *__pyx_n_s_y2;
static PyObject *__pyx_n_s_yy1;
static PyObject *__pyx_n_s_yy2;
static PyObject *__pyx_n_s_zeros;
static PyObject *__pyx_pf_7cpu_nms_cpu_nms(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_dets, PyObject *__pyx_v_thresh); /* proto */
static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /* proto */
static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info); /* proto */
static PyObject *__pyx_int_0;
static PyObject *__pyx_int_1;
static PyObject *__pyx_int_2;
static PyObject *__pyx_int_3;
static PyObject *__pyx_int_4;
static PyObject *__pyx_int_neg_1;
static PyObject *__pyx_slice_;
static PyObject *__pyx_slice__3;
static PyObject *__pyx_slice__5;
static PyObject *__pyx_slice__7;
static PyObject *__pyx_slice__9;
static PyObject *__pyx_tuple__2;
static PyObject *__pyx_tuple__4;
static PyObject *__pyx_tuple__6;
static PyObject *__pyx_tuple__8;
static PyObject *__pyx_slice__11;
static PyObject *__pyx_tuple__10;
static PyObject *__pyx_tuple__12;
static PyObject *__pyx_tuple__13;
static PyObject *__pyx_tuple__14;
static PyObject *__pyx_tuple__15;
static PyObject *__pyx_tuple__16;
static PyObject *__pyx_tuple__17;
static PyObject *__pyx_tuple__18;
static PyObject *__pyx_tuple__19;
static PyObject *__pyx_tuple__20;
static PyObject *__pyx_tuple__21;
static PyObject *__pyx_codeobj__22;
/* Late includes */

/* "cpu_nms.pyx":11
 * cimport numpy as np
 * 
 * cdef inline np.float32_t max(np.float32_t a, np.float32_t b):             # <<<<<<<<<<<<<<
 *     return a if a >= b else b
 * 
 */

static CYTHON_INLINE __pyx_t_5numpy_float32_t __pyx_f_7cpu_nms_max(__pyx_t_5numpy_float32_t __pyx_v_a, __pyx_t_5numpy_float32_t __pyx_v_b) {
  __pyx_t_5numpy_float32_t __pyx_r;
  __Pyx_RefNannyDeclarations
  __pyx_t_5numpy_float32_t __pyx_t_1;
  __Pyx_RefNannySetupContext("max", 0);

  /* "cpu_nms.pyx":12
 * 
 * cdef inline np.float32_t max(np.float32_t a, np.float32_t b):
 *     return a if a >= b else b             # <<<<<<<<<<<<<<
 * 
 * cdef inline np.float32_t min(np.float32_t a, np.float32_t b):
 */
  if (((__pyx_v_a >= __pyx_v_b) != 0)) {
    __pyx_t_1 = __pyx_v_a;
  } else {
    __pyx_t_1 = __pyx_v_b;
  }
  __pyx_r = __pyx_t_1;
  goto __pyx_L0;

  /* "cpu_nms.pyx":11
 * cimport numpy as np
 * 
 * cdef inline np.float32_t max(np.float32_t a, np.float32_t b):             # <<<<<<<<<<<<<<
 *     return a if a >= b else b
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "cpu_nms.pyx":14
 *     return a if a >= b else b
 * 
 * cdef inline np.float32_t min(np.float32_t a, np.float32_t b):             # <<<<<<<<<<<<<<
 *     return a if a <= b else b
 * 
 */

static CYTHON_INLINE __pyx_t_5numpy_float32_t __pyx_f_7cpu_nms_min(__pyx_t_5numpy_float32_t __pyx_v_a, __pyx_t_5numpy_float32_t __pyx_v_b) {
  __pyx_t_5numpy_float32_t __pyx_r;
  __Pyx_RefNannyDeclarations
  __pyx_t_5numpy_float32_t __pyx_t_1;
  __Pyx_RefNannySetupContext("min", 0);

  /* "cpu_nms.pyx":15
 * 
 * cdef inline np.float32_t min(np.float32_t a, np.float32_t b):
 *     return a if a <= b else b             # <<<<<<<<<<<<<<
 * 
 * def cpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh):
 */
  if (((__pyx_v_a <= __pyx_v_b) != 0)) {
    __pyx_t_1 = __pyx_v_a;
  } else {
    __pyx_t_1 = __pyx_v_b;
  }
  __pyx_r = __pyx_t_1;
  goto __pyx_L0;

  /* "cpu_nms.pyx":14
 *     return a if a >= b else b
 * 
 * cdef inline np.float32_t min(np.float32_t a, np.float32_t b):             # <<<<<<<<<<<<<<
 *     return a if a <= b else b
 * 
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "cpu_nms.pyx":17
 *     return a if a <= b else b
 * 
 * def cpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh):             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
 */

/* Python wrapper */
static PyObject *__pyx_pw_7cpu_nms_1cpu_nms(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_7cpu_nms_1cpu_nms = {"cpu_nms", (PyCFunction)__pyx_pw_7cpu_nms_1cpu_nms, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_7cpu_nms_1cpu_nms(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyArrayObject *__pyx_v_dets = 0;
  PyObject *__pyx_v_thresh = 0;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("cpu_nms (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_dets,&__pyx_n_s_thresh,0};
    PyObject* values[2] = {0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_dets)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_thresh)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("cpu_nms", 1, 2, 2, 1); __PYX_ERR(0, 17, __pyx_L3_error)
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "cpu_nms") < 0)) __PYX_ERR(0, 17, __pyx_L3_error)
      }
    } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
      goto __pyx_L5_argtuple_error;
    } else {
      values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
      values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
    }
    __pyx_v_dets = ((PyArrayObject *)values[0]);
    __pyx_v_thresh = ((PyObject*)values[1]);
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("cpu_nms", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 17, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("cpu_nms.cpu_nms", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dets), __pyx_ptype_5numpy_ndarray, 1, "dets", 0))) __PYX_ERR(0, 17, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_thresh), (&PyFloat_Type), 1, "thresh", 1))) __PYX_ERR(0, 17, __pyx_L1_error)
  __pyx_r = __pyx_pf_7cpu_nms_cpu_nms(__pyx_self, __pyx_v_dets, __pyx_v_thresh);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_7cpu_nms_cpu_nms(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_dets, PyObject *__pyx_v_thresh) {
  PyArrayObject *__pyx_v_x1 = 0;
  PyArrayObject *__pyx_v_y1 = 0;
  PyArrayObject *__pyx_v_x2 = 0;
  PyArrayObject *__pyx_v_y2 = 0;
  PyArrayObject *__pyx_v_scores = 0;
  PyArrayObject *__pyx_v_areas = 0;
  PyArrayObject *__pyx_v_order = 0;
  int __pyx_v_ndets;
  PyArrayObject *__pyx_v_suppressed = 0;
  int __pyx_v__i;
  int __pyx_v__j;
  int __pyx_v_i;
  int __pyx_v_j;
  __pyx_t_5numpy_float32_t __pyx_v_ix1;
  __pyx_t_5numpy_float32_t __pyx_v_iy1;
  __pyx_t_5numpy_float32_t __pyx_v_ix2;
  __pyx_t_5numpy_float32_t __pyx_v_iy2;
  __pyx_t_5numpy_float32_t __pyx_v_iarea;
  __pyx_t_5numpy_float32_t __pyx_v_xx1;
  __pyx_t_5numpy_float32_t __pyx_v_yy1;
  __pyx_t_5numpy_float32_t __pyx_v_xx2;
  __pyx_t_5numpy_float32_t __pyx_v_yy2;
  __pyx_t_5numpy_float32_t __pyx_v_w;
  __pyx_t_5numpy_float32_t __pyx_v_h;
  __pyx_t_5numpy_float32_t __pyx_v_inter;
  __pyx_t_5numpy_float32_t __pyx_v_ovr;
  PyObject *__pyx_v_keep = NULL;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_areas;
  __Pyx_Buffer __pyx_pybuffer_areas;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_dets;
  __Pyx_Buffer __pyx_pybuffer_dets;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_order;
  __Pyx_Buffer __pyx_pybuffer_order;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_scores;
  __Pyx_Buffer __pyx_pybuffer_scores;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_suppressed;
  __Pyx_Buffer __pyx_pybuffer_suppressed;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_x1;
  __Pyx_Buffer __pyx_pybuffer_x1;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_x2;
  __Pyx_Buffer __pyx_pybuffer_x2;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_y1;
  __Pyx_Buffer __pyx_pybuffer_y1;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_y2;
  __Pyx_Buffer __pyx_pybuffer_y2;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyArrayObject *__pyx_t_2 = NULL;
  PyArrayObject *__pyx_t_3 = NULL;
  PyArrayObject *__pyx_t_4 = NULL;
  PyArrayObject *__pyx_t_5 = NULL;
  PyArrayObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  PyArrayObject *__pyx_t_9 = NULL;
  PyArrayObject *__pyx_t_10 = NULL;
  PyObject *__pyx_t_11 = NULL;
  PyObject *__pyx_t_12 = NULL;
  PyArrayObject *__pyx_t_13 = NULL;
  int __pyx_t_14;
  int __pyx_t_15;
  int __pyx_t_16;
  Py_ssize_t __pyx_t_17;
  int __pyx_t_18;
  Py_ssize_t __pyx_t_19;
  int __pyx_t_20;
  int __pyx_t_21;
  Py_ssize_t __pyx_t_22;
  Py_ssize_t __pyx_t_23;
  Py_ssize_t __pyx_t_24;
  Py_ssize_t __pyx_t_25;
  Py_ssize_t __pyx_t_26;
  int __pyx_t_27;
  int __pyx_t_28;
  Py_ssize_t __pyx_t_29;
  int __pyx_t_30;
  Py_ssize_t __pyx_t_31;
  Py_ssize_t __pyx_t_32;
  Py_ssize_t __pyx_t_33;
  Py_ssize_t __pyx_t_34;
  Py_ssize_t __pyx_t_35;
  Py_ssize_t __pyx_t_36;
  __pyx_t_5numpy_float32_t __pyx_t_37;
  Py_ssize_t __pyx_t_38;
  __Pyx_RefNannySetupContext("cpu_nms", 0);
  __pyx_pybuffer_x1.pybuffer.buf = NULL;
  __pyx_pybuffer_x1.refcount = 0;
  __pyx_pybuffernd_x1.data = NULL;
  __pyx_pybuffernd_x1.rcbuffer = &__pyx_pybuffer_x1;
  __pyx_pybuffer_y1.pybuffer.buf = NULL;
  __pyx_pybuffer_y1.refcount = 0;
  __pyx_pybuffernd_y1.data = NULL;
  __pyx_pybuffernd_y1.rcbuffer = &__pyx_pybuffer_y1;
  __pyx_pybuffer_x2.pybuffer.buf = NULL;
  __pyx_pybuffer_x2.refcount = 0;
  __pyx_pybuffernd_x2.data = NULL;
  __pyx_pybuffernd_x2.rcbuffer = &__pyx_pybuffer_x2;
  __pyx_pybuffer_y2.pybuffer.buf = NULL;
  __pyx_pybuffer_y2.refcount = 0;
  __pyx_pybuffernd_y2.data = NULL;
  __pyx_pybuffernd_y2.rcbuffer = &__pyx_pybuffer_y2;
  __pyx_pybuffer_scores.pybuffer.buf = NULL;
  __pyx_pybuffer_scores.refcount = 0;
  __pyx_pybuffernd_scores.data = NULL;
  __pyx_pybuffernd_scores.rcbuffer = &__pyx_pybuffer_scores;
  __pyx_pybuffer_areas.pybuffer.buf = NULL;
  __pyx_pybuffer_areas.refcount = 0;
  __pyx_pybuffernd_areas.data = NULL;
  __pyx_pybuffernd_areas.rcbuffer = &__pyx_pybuffer_areas;
  __pyx_pybuffer_order.pybuffer.buf = NULL;
  __pyx_pybuffer_order.refcount = 0;
  __pyx_pybuffernd_order.data = NULL;
  __pyx_pybuffernd_order.rcbuffer = &__pyx_pybuffer_order;
  __pyx_pybuffer_suppressed.pybuffer.buf = NULL;
  __pyx_pybuffer_suppressed.refcount = 0;
  __pyx_pybuffernd_suppressed.data = NULL;
  __pyx_pybuffernd_suppressed.rcbuffer = &__pyx_pybuffer_suppressed;
  __pyx_pybuffer_dets.pybuffer.buf = NULL;
  __pyx_pybuffer_dets.refcount = 0;
  __pyx_pybuffernd_dets.data = NULL;
  __pyx_pybuffernd_dets.rcbuffer = &__pyx_pybuffer_dets;
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_dets.rcbuffer->pybuffer, (PyObject*)__pyx_v_dets, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 17, __pyx_L1_error)
  }
  __pyx_pybuffernd_dets.diminfo[0].strides = __pyx_pybuffernd_dets.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_dets.diminfo[0].shape = __pyx_pybuffernd_dets.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_dets.diminfo[1].strides = __pyx_pybuffernd_dets.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_dets.diminfo[1].shape = __pyx_pybuffernd_dets.rcbuffer->pybuffer.shape[1];

  /* "cpu_nms.pyx":18
 * 
 * def cpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh):
 *     cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
 *     cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]
 */
  __pyx_t_1 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_dets), __pyx_tuple__2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 18, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 18, __pyx_L1_error)
  __pyx_t_2 = ((PyArrayObject *)__pyx_t_1);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_x1.rcbuffer->pybuffer, (PyObject*)__pyx_t_2, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_x1 = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_x1.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 18, __pyx_L1_error)
    } else {__pyx_pybuffernd_x1.diminfo[0].strides = __pyx_pybuffernd_x1.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_x1.diminfo[0].shape = __pyx_pybuffernd_x1.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_2 = 0;
  __pyx_v_x1 = ((PyArrayObject *)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "cpu_nms.pyx":19
 * def cpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh):
 *     cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]
 *     cdef np.ndarray[np.float32_t, ndim=1] y2 = dets[:, 3]
 */
  __pyx_t_1 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_dets), __pyx_tuple__4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 19, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 19, __pyx_L1_error)
  __pyx_t_3 = ((PyArrayObject *)__pyx_t_1);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_y1.rcbuffer->pybuffer, (PyObject*)__pyx_t_3, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_y1 = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_y1.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 19, __pyx_L1_error)
    } else {__pyx_pybuffernd_y1.diminfo[0].strides = __pyx_pybuffernd_y1.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_y1.diminfo[0].shape = __pyx_pybuffernd_y1.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_3 = 0;
  __pyx_v_y1 = ((PyArrayObject *)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "cpu_nms.pyx":20
 *     cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
 *     cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] y2 = dets[:, 3]
 *     cdef np.ndarray[np.float32_t, ndim=1] scores = dets[:, 4]
 */
  __pyx_t_1 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_dets), __pyx_tuple__6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 20, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 20, __pyx_L1_error)
  __pyx_t_4 = ((PyArrayObject *)__pyx_t_1);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_x2.rcbuffer->pybuffer, (PyObject*)__pyx_t_4, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_x2 = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_x2.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 20, __pyx_L1_error)
    } else {__pyx_pybuffernd_x2.diminfo[0].strides = __pyx_pybuffernd_x2.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_x2.diminfo[0].shape = __pyx_pybuffernd_x2.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_4 = 0;
  __pyx_v_x2 = ((PyArrayObject *)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "cpu_nms.pyx":21
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
 *     cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]
 *     cdef np.ndarray[np.float32_t, ndim=1] y2 = dets[:, 3]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] scores = dets[:, 4]
 * 
 */
  __pyx_t_1 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_dets), __pyx_tuple__8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 21, __pyx_L1_error)
  __pyx_t_5 = ((PyArrayObject *)__pyx_t_1);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_y2.rcbuffer->pybuffer, (PyObject*)__pyx_t_5, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_y2 = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_y2.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 21, __pyx_L1_error)
    } else {__pyx_pybuffernd_y2.diminfo[0].strides = __pyx_pybuffernd_y2.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_y2.diminfo[0].shape = __pyx_pybuffernd_y2.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_5 = 0;
  __pyx_v_y2 = ((PyArrayObject *)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "cpu_nms.pyx":22
 *     cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]
 *     cdef np.ndarray[np.float32_t, ndim=1] y2 = dets[:, 3]
 *     cdef np.ndarray[np.float32_t, ndim=1] scores = dets[:, 4]             # <<<<<<<<<<<<<<
 * 
 *     cdef np.ndarray[np.float32_t, ndim=1] areas = (x2 - x1 + 1) * (y2 - y1 + 1)
 */
  __pyx_t_1 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_dets), __pyx_tuple__10); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 22, __pyx_L1_error)
  __pyx_t_6 = ((PyArrayObject *)__pyx_t_1);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_scores.rcbuffer->pybuffer, (PyObject*)__pyx_t_6, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_scores = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_scores.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 22, __pyx_L1_error)
    } else {__pyx_pybuffernd_scores.diminfo[0].strides = __pyx_pybuffernd_scores.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_scores.diminfo[0].shape = __pyx_pybuffernd_scores.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_6 = 0;
  __pyx_v_scores = ((PyArrayObject *)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "cpu_nms.pyx":24
 *     cdef np.ndarray[np.float32_t, ndim=1] scores = dets[:, 4]
 * 
 *     cdef np.ndarray[np.float32_t, ndim=1] areas = (x2 - x1 + 1) * (y2 - y1 + 1)             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.int_t, ndim=1] order = scores.argsort()[::-1]
 * 
 */
  __pyx_t_1 = PyNumber_Subtract(((PyObject *)__pyx_v_x2), ((PyObject *)__pyx_v_x1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_7 = __Pyx_PyInt_AddObjC(__pyx_t_1, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Subtract(((PyObject *)__pyx_v_y2), ((PyObject *)__pyx_v_y1)); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_8 = __Pyx_PyInt_AddObjC(__pyx_t_1, __pyx_int_1, 1, 0); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = PyNumber_Multiply(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 24, __pyx_L1_error)
  __pyx_t_9 = ((PyArrayObject *)__pyx_t_1);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_areas.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_areas = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_areas.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 24, __pyx_L1_error)
    } else {__pyx_pybuffernd_areas.diminfo[0].strides = __pyx_pybuffernd_areas.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_areas.diminfo[0].shape = __pyx_pybuffernd_areas.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_9 = 0;
  __pyx_v_areas = ((PyArrayObject *)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "cpu_nms.pyx":25
 * 
 *     cdef np.ndarray[np.float32_t, ndim=1] areas = (x2 - x1 + 1) * (y2 - y1 + 1)
 *     cdef np.ndarray[np.int_t, ndim=1] order = scores.argsort()[::-1]             # <<<<<<<<<<<<<<
 * 
 *     cdef int ndets = dets.shape[0]
 */
  __pyx_t_8 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_scores), __pyx_n_s_argsort); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 25, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __pyx_t_7 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_8))) {
    __pyx_t_7 = PyMethod_GET_SELF(__pyx_t_8);
    if (likely(__pyx_t_7)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_8);
      __Pyx_INCREF(__pyx_t_7);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_8, function);
    }
  }
  if (__pyx_t_7) {
    __pyx_t_1 = __Pyx_PyObject_CallOneArg(__pyx_t_8, __pyx_t_7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 25, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  } else {
    __pyx_t_1 = __Pyx_PyObject_CallNoArg(__pyx_t_8); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 25, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  __pyx_t_8 = __Pyx_PyObject_GetItem(__pyx_t_1, __pyx_slice__11); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 25, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (!(likely(((__pyx_t_8) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_8, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 25, __pyx_L1_error)
  __pyx_t_10 = ((PyArrayObject *)__pyx_t_8);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_order.rcbuffer->pybuffer, (PyObject*)__pyx_t_10, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_order = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_order.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 25, __pyx_L1_error)
    } else {__pyx_pybuffernd_order.diminfo[0].strides = __pyx_pybuffernd_order.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_order.diminfo[0].shape = __pyx_pybuffernd_order.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_10 = 0;
  __pyx_v_order = ((PyArrayObject *)__pyx_t_8);
  __pyx_t_8 = 0;

  /* "cpu_nms.pyx":27
 *     cdef np.ndarray[np.int_t, ndim=1] order = scores.argsort()[::-1]
 * 
 *     cdef int ndets = dets.shape[0]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.int_t, ndim=1] suppressed = \
 *             np.zeros((ndets), dtype=np.int)
 */
  __pyx_v_ndets = (__pyx_v_dets->dimensions[0]);

  /* "cpu_nms.pyx":29
 *     cdef int ndets = dets.shape[0]
 *     cdef np.ndarray[np.int_t, ndim=1] suppressed = \
 *             np.zeros((ndets), dtype=np.int)             # <<<<<<<<<<<<<<
 * 
 *     # nominal indices
 */
  __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  __pyx_t_8 = __Pyx_PyInt_From_int(__pyx_v_ndets); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_7);
  __Pyx_GIVEREF(__pyx_t_8);
  PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_8);
  __pyx_t_8 = 0;
  __pyx_t_8 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_8);
  __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_11);
  __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_int); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_12);
  __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
  if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_t_12) < 0) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
  __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 29, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_12);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
  __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
  if (!(likely(((__pyx_t_12) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_12, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 29, __pyx_L1_error)
  __pyx_t_13 = ((PyArrayObject *)__pyx_t_12);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_suppressed.rcbuffer->pybuffer, (PyObject*)__pyx_t_13, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES| PyBUF_WRITABLE, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_suppressed = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_suppressed.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 28, __pyx_L1_error)
    } else {__pyx_pybuffernd_suppressed.diminfo[0].strides = __pyx_pybuffernd_suppressed.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_suppressed.diminfo[0].shape = __pyx_pybuffernd_suppressed.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_13 = 0;
  __pyx_v_suppressed = ((PyArrayObject *)__pyx_t_12);
  __pyx_t_12 = 0;

  /* "cpu_nms.pyx":42
 *     cdef np.float32_t inter, ovr
 * 
 *     keep = []             # <<<<<<<<<<<<<<
 *     for _i in range(ndets):
 *         i = order[_i]
 */
  __pyx_t_12 = PyList_New(0); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 42, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_12);
  __pyx_v_keep = ((PyObject*)__pyx_t_12);
  __pyx_t_12 = 0;

  /* "cpu_nms.pyx":43
 * 
 *     keep = []
 *     for _i in range(ndets):             # <<<<<<<<<<<<<<
 *         i = order[_i]
 *         if suppressed[i] == 1:
 */
  __pyx_t_14 = __pyx_v_ndets;
  __pyx_t_15 = __pyx_t_14;
  for (__pyx_t_16 = 0; __pyx_t_16 < __pyx_t_15; __pyx_t_16+=1) {
    __pyx_v__i = __pyx_t_16;

    /* "cpu_nms.pyx":44
 *     keep = []
 *     for _i in range(ndets):
 *         i = order[_i]             # <<<<<<<<<<<<<<
 *         if suppressed[i] == 1:
 *             continue
 */
    __pyx_t_17 = __pyx_v__i;
    __pyx_t_18 = -1;
    if (__pyx_t_17 < 0) {
      __pyx_t_17 += __pyx_pybuffernd_order.diminfo[0].shape;
      if (unlikely(__pyx_t_17 < 0)) __pyx_t_18 = 0;
    } else if (unlikely(__pyx_t_17 >= __pyx_pybuffernd_order.diminfo[0].shape)) __pyx_t_18 = 0;
    if (unlikely(__pyx_t_18 != -1)) {
      __Pyx_RaiseBufferIndexError(__pyx_t_18);
      __PYX_ERR(0, 44, __pyx_L1_error)
    }
    __pyx_v_i = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_order.rcbuffer->pybuffer.buf, __pyx_t_17, __pyx_pybuffernd_order.diminfo[0].strides));

    /* "cpu_nms.pyx":45
 *     for _i in range(ndets):
 *         i = order[_i]
 *         if suppressed[i] == 1:             # <<<<<<<<<<<<<<
 *             continue
 *         keep.append(i)
 */
    __pyx_t_19 = __pyx_v_i;
    __pyx_t_18 = -1;
    if (__pyx_t_19 < 0) {
      __pyx_t_19 += __pyx_pybuffernd_suppressed.diminfo[0].shape;
      if (unlikely(__pyx_t_19 < 0)) __pyx_t_18 = 0;
    } else if (unlikely(__pyx_t_19 >= __pyx_pybuffernd_suppressed.diminfo[0].shape)) __pyx_t_18 = 0;
    if (unlikely(__pyx_t_18 != -1)) {
      __Pyx_RaiseBufferIndexError(__pyx_t_18);
      __PYX_ERR(0, 45, __pyx_L1_error)
    }
    __pyx_t_20 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_suppressed.rcbuffer->pybuffer.buf, __pyx_t_19, __pyx_pybuffernd_suppressed.diminfo[0].strides)) == 1) != 0);
    if (__pyx_t_20) {

      /* "cpu_nms.pyx":46
 *         i = order[_i]
 *         if suppressed[i] == 1:
 *             continue             # <<<<<<<<<<<<<<
 *         keep.append(i)
 *         ix1 = x1[i]
 */
      goto __pyx_L3_continue;

      /* "cpu_nms.pyx":45
 *     for _i in range(ndets):
 *         i = order[_i]
 *         if suppressed[i] == 1:             # <<<<<<<<<<<<<<
 *             continue
 *         keep.append(i)
 */
    }

    /* "cpu_nms.pyx":47
 *         if suppressed[i] == 1:
 *             continue
 *         keep.append(i)             # <<<<<<<<<<<<<<
 *         ix1 = x1[i]
 *         iy1 = y1[i]
 */
    __pyx_t_12 = __Pyx_PyInt_From_int(__pyx_v_i); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 47, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_12);
    __pyx_t_21 = __Pyx_PyList_Append(__pyx_v_keep, __pyx_t_12); if (unlikely(__pyx_t_21 == ((int)-1))) __PYX_ERR(0, 47, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;

    /* "cpu_nms.pyx":48
 *             continue
 *         keep.append(i)
 *         ix1 = x1[i]             # <<<<<<<<<<<<<<
 *         iy1 = y1[i]
 *         ix2 = x2[i]
 */
    __pyx_t_22 = __pyx_v_i;
    __pyx_t_18 = -1;
    if (__pyx_t_22 < 0) {
      __pyx_t_22 += __pyx_pybuffernd_x1.diminfo[0].shape;
      if (unlikely(__pyx_t_22 < 0)) __pyx_t_18 = 0;
    } else if (unlikely(__pyx_t_22 >= __pyx_pybuffernd_x1.diminfo[0].shape)) __pyx_t_18 = 0;
    if (unlikely(__pyx_t_18 != -1)) {
      __Pyx_RaiseBufferIndexError(__pyx_t_18);
      __PYX_ERR(0, 48, __pyx_L1_error)
    }
    __pyx_v_ix1 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_x1.rcbuffer->pybuffer.buf, __pyx_t_22, __pyx_pybuffernd_x1.diminfo[0].strides));

    /* "cpu_nms.pyx":49
 *         keep.append(i)
 *         ix1 = x1[i]
 *         iy1 = y1[i]             # <<<<<<<<<<<<<<
 *         ix2 = x2[i]
 *         iy2 = y2[i]
 */
    __pyx_t_23 = __pyx_v_i;
    __pyx_t_18 = -1;
    if (__pyx_t_23 < 0) {
      __pyx_t_23 += __pyx_pybuffernd_y1.diminfo[0].shape;
      if (unlikely(__pyx_t_23 < 0)) __pyx_t_18 = 0;
    } else if (unlikely(__pyx_t_23 >= __pyx_pybuffernd_y1.diminfo[0].shape)) __pyx_t_18 = 0;
    if (unlikely(__pyx_t_18 != -1)) {
      __Pyx_RaiseBufferIndexError(__pyx_t_18);
      __PYX_ERR(0, 49, __pyx_L1_error)
    }
    __pyx_v_iy1 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_y1.rcbuffer->pybuffer.buf, __pyx_t_23, __pyx_pybuffernd_y1.diminfo[0].strides));

    /* "cpu_nms.pyx":50
 *         ix1 = x1[i]
 *         iy1 = y1[i]
 *         ix2 = x2[i]             # <<<<<<<<<<<<<<
 *         iy2 = y2[i]
 *         iarea = areas[i]
 */
    __pyx_t_24 = __pyx_v_i;
    __pyx_t_18 = -1;
    if (__pyx_t_24 < 0) {
      __pyx_t_24 += __pyx_pybuffernd_x2.diminfo[0].shape;
      if (unlikely(__pyx_t_24 < 0)) __pyx_t_18 = 0;
    } else if (unlikely(__pyx_t_24 >= __pyx_pybuffernd_x2.diminfo[0].shape)) __pyx_t_18 = 0;
    if (unlikely(__pyx_t_18 != -1)) {
      __Pyx_RaiseBufferIndexError(__pyx_t_18);
      __PYX_ERR(0, 50, __pyx_L1_error)
    }
    __pyx_v_ix2 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_x2.rcbuffer->pybuffer.buf, __pyx_t_24, __pyx_pybuffernd_x2.diminfo[0].strides));

    /* "cpu_nms.pyx":51
 *         iy1 = y1[i]
 *         ix2 = x2[i]
 *         iy2 = y2[i]             # <<<<<<<<<<<<<<
 *         iarea = areas[i]
 *         for _j in range(_i + 1, ndets):
 */
    __pyx_t_25 = __pyx_v_i;
    __pyx_t_18 = -1;
    if (__pyx_t_25 < 0) {
      __pyx_t_25 += __pyx_pybuffernd_y2.diminfo[0].shape;
      if (unlikely(__pyx_t_25 < 0)) __pyx_t_18 = 0;
    } else if (unlikely(__pyx_t_25 >= __pyx_pybuffernd_y2.diminfo[0].shape)) __pyx_t_18 = 0;
    if (unlikely(__pyx_t_18 != -1)) {
      __Pyx_RaiseBufferIndexError(__pyx_t_18);
      __PYX_ERR(0, 51, __pyx_L1_error)
    }
    __pyx_v_iy2 = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_y2.rcbuffer->pybuffer.buf, __pyx_t_25, __pyx_pybuffernd_y2.diminfo[0].strides));

    /* "cpu_nms.pyx":52
 *         ix2 = x2[i]
 *         iy2 = y2[i]
 *         iarea = areas[i]             # <<<<<<<<<<<<<<
 *         for _j in range(_i + 1, ndets):
 *             j = order[_j]
 */
    __pyx_t_26 = __pyx_v_i;
    __pyx_t_18 = -1;
    if (__pyx_t_26 < 0) {
      __pyx_t_26 += __pyx_pybuffernd_areas.diminfo[0].shape;
      if (unlikely(__pyx_t_26 < 0)) __pyx_t_18 = 0;
    } else if (unlikely(__pyx_t_26 >= __pyx_pybuffernd_areas.diminfo[0].shape)) __pyx_t_18 = 0;
    if (unlikely(__pyx_t_18 != -1)) {
      __Pyx_RaiseBufferIndexError(__pyx_t_18);
      __PYX_ERR(0, 52, __pyx_L1_error)
    }
    __pyx_v_iarea = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_areas.rcbuffer->pybuffer.buf, __pyx_t_26, __pyx_pybuffernd_areas.diminfo[0].strides));

    /* "cpu_nms.pyx":53
 *         iy2 = y2[i]
 *         iarea = areas[i]
 *         for _j in range(_i + 1, ndets):             # <<<<<<<<<<<<<<
 *             j = order[_j]
 *             if suppressed[j] == 1:
 */
    __pyx_t_18 = __pyx_v_ndets;
    __pyx_t_27 = __pyx_t_18;
    for (__pyx_t_28 = (__pyx_v__i + 1); __pyx_t_28 < __pyx_t_27; __pyx_t_28+=1) {
      __pyx_v__j = __pyx_t_28;

      /* "cpu_nms.pyx":54
 *         iarea = areas[i]
 *         for _j in range(_i + 1, ndets):
 *             j = order[_j]             # <<<<<<<<<<<<<<
 *             if suppressed[j] == 1:
 *                 continue
 */
      __pyx_t_29 = __pyx_v__j;
      __pyx_t_30 = -1;
      if (__pyx_t_29 < 0) {
        __pyx_t_29 += __pyx_pybuffernd_order.diminfo[0].shape;
        if (unlikely(__pyx_t_29 < 0)) __pyx_t_30 = 0;
      } else if (unlikely(__pyx_t_29 >= __pyx_pybuffernd_order.diminfo[0].shape)) __pyx_t_30 = 0;
      if (unlikely(__pyx_t_30 != -1)) {
        __Pyx_RaiseBufferIndexError(__pyx_t_30);
        __PYX_ERR(0, 54, __pyx_L1_error)
      }
      __pyx_v_j = (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_order.rcbuffer->pybuffer.buf, __pyx_t_29, __pyx_pybuffernd_order.diminfo[0].strides));

      /* "cpu_nms.pyx":55
 *         for _j in range(_i + 1, ndets):
 *             j = order[_j]
 *             if suppressed[j] == 1:             # <<<<<<<<<<<<<<
 *                 continue
 *             xx1 = max(ix1, x1[j])
 */
      __pyx_t_31 = __pyx_v_j;
      __pyx_t_30 = -1;
      if (__pyx_t_31 < 0) {
        __pyx_t_31 += __pyx_pybuffernd_suppressed.diminfo[0].shape;
        if (unlikely(__pyx_t_31 < 0)) __pyx_t_30 = 0;
      } else if (unlikely(__pyx_t_31 >= __pyx_pybuffernd_suppressed.diminfo[0].shape)) __pyx_t_30 = 0;
      if (unlikely(__pyx_t_30 != -1)) {
        __Pyx_RaiseBufferIndexError(__pyx_t_30);
        __PYX_ERR(0, 55, __pyx_L1_error)
      }
      __pyx_t_20 = (((*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_suppressed.rcbuffer->pybuffer.buf, __pyx_t_31, __pyx_pybuffernd_suppressed.diminfo[0].strides)) == 1) != 0);
      if (__pyx_t_20) {

        /* "cpu_nms.pyx":56
 *             j = order[_j]
 *             if suppressed[j] == 1:
 *                 continue             # <<<<<<<<<<<<<<
 *             xx1 = max(ix1, x1[j])
 *             yy1 = max(iy1, y1[j])
 */
        goto __pyx_L6_continue;

        /* "cpu_nms.pyx":55
 *         for _j in range(_i + 1, ndets):
 *             j = order[_j]
 *             if suppressed[j] == 1:             # <<<<<<<<<<<<<<
 *                 continue
 *             xx1 = max(ix1, x1[j])
 */
      }

      /* "cpu_nms.pyx":57
 *             if suppressed[j] == 1:
 *                 continue
 *             xx1 = max(ix1, x1[j])             # <<<<<<<<<<<<<<
 *             yy1 = max(iy1, y1[j])
 *             xx2 = min(ix2, x2[j])
 */
      __pyx_t_32 = __pyx_v_j;
      __pyx_t_30 = -1;
      if (__pyx_t_32 < 0) {
        __pyx_t_32 += __pyx_pybuffernd_x1.diminfo[0].shape;
        if (unlikely(__pyx_t_32 < 0)) __pyx_t_30 = 0;
      } else if (unlikely(__pyx_t_32 >= __pyx_pybuffernd_x1.diminfo[0].shape)) __pyx_t_30 = 0;
      if (unlikely(__pyx_t_30 != -1)) {
        __Pyx_RaiseBufferIndexError(__pyx_t_30);
        __PYX_ERR(0, 57, __pyx_L1_error)
      }
      __pyx_v_xx1 = __pyx_f_7cpu_nms_max(__pyx_v_ix1, (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_x1.rcbuffer->pybuffer.buf, __pyx_t_32, __pyx_pybuffernd_x1.diminfo[0].strides)));

      /* "cpu_nms.pyx":58
 *                 continue
 *             xx1 = max(ix1, x1[j])
 *             yy1 = max(iy1, y1[j])             # <<<<<<<<<<<<<<
 *             xx2 = min(ix2, x2[j])
 *             yy2 = min(iy2, y2[j])
 */
      __pyx_t_33 = __pyx_v_j;
      __pyx_t_30 = -1;
      if (__pyx_t_33 < 0) {
        __pyx_t_33 += __pyx_pybuffernd_y1.diminfo[0].shape;
        if (unlikely(__pyx_t_33 < 0)) __pyx_t_30 = 0;
      } else if (unlikely(__pyx_t_33 >= __pyx_pybuffernd_y1.diminfo[0].shape)) __pyx_t_30 = 0;
      if (unlikely(__pyx_t_30 != -1)) {
        __Pyx_RaiseBufferIndexError(__pyx_t_30);
        __PYX_ERR(0, 58, __pyx_L1_error)
      }
      __pyx_v_yy1 = __pyx_f_7cpu_nms_max(__pyx_v_iy1, (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_y1.rcbuffer->pybuffer.buf, __pyx_t_33, __pyx_pybuffernd_y1.diminfo[0].strides)));

      /* "cpu_nms.pyx":59
 *             xx1 = max(ix1, x1[j])
 *             yy1 = max(iy1, y1[j])
 *             xx2 = min(ix2, x2[j])             # <<<<<<<<<<<<<<
 *             yy2 = min(iy2, y2[j])
 *             w = max(0.0, xx2 - xx1 + 1)
 */
      __pyx_t_34 = __pyx_v_j;
      __pyx_t_30 = -1;
      if (__pyx_t_34 < 0) {
        __pyx_t_34 += __pyx_pybuffernd_x2.diminfo[0].shape;
        if (unlikely(__pyx_t_34 < 0)) __pyx_t_30 = 0;
      } else if (unlikely(__pyx_t_34 >= __pyx_pybuffernd_x2.diminfo[0].shape)) __pyx_t_30 = 0;
      if (unlikely(__pyx_t_30 != -1)) {
        __Pyx_RaiseBufferIndexError(__pyx_t_30);
        __PYX_ERR(0, 59, __pyx_L1_error)
      }
      __pyx_v_xx2 = __pyx_f_7cpu_nms_min(__pyx_v_ix2, (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_x2.rcbuffer->pybuffer.buf, __pyx_t_34, __pyx_pybuffernd_x2.diminfo[0].strides)));

      /* "cpu_nms.pyx":60
 *             yy1 = max(iy1, y1[j])
 *             xx2 = min(ix2, x2[j])
 *             yy2 = min(iy2, y2[j])             # <<<<<<<<<<<<<<
 *             w = max(0.0, xx2 - xx1 + 1)
 *             h = max(0.0, yy2 - yy1 + 1)
 */
      __pyx_t_35 = __pyx_v_j;
      __pyx_t_30 = -1;
      if (__pyx_t_35 < 0) {
        __pyx_t_35 += __pyx_pybuffernd_y2.diminfo[0].shape;
        if (unlikely(__pyx_t_35 < 0)) __pyx_t_30 = 0;
      } else if (unlikely(__pyx_t_35 >= __pyx_pybuffernd_y2.diminfo[0].shape)) __pyx_t_30 = 0;
      if (unlikely(__pyx_t_30 != -1)) {
        __Pyx_RaiseBufferIndexError(__pyx_t_30);
        __PYX_ERR(0, 60, __pyx_L1_error)
      }
      __pyx_v_yy2 = __pyx_f_7cpu_nms_min(__pyx_v_iy2, (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_y2.rcbuffer->pybuffer.buf, __pyx_t_35, __pyx_pybuffernd_y2.diminfo[0].strides)));

      /* "cpu_nms.pyx":61
 *             xx2 = min(ix2, x2[j])
 *             yy2 = min(iy2, y2[j])
 *             w = max(0.0, xx2 - xx1 + 1)             # <<<<<<<<<<<<<<
 *             h = max(0.0, yy2 - yy1 + 1)
 *             inter = w * h
 */
      __pyx_v_w = __pyx_f_7cpu_nms_max(0.0, ((__pyx_v_xx2 - __pyx_v_xx1) + 1.0));

      /* "cpu_nms.pyx":62
 *             yy2 = min(iy2, y2[j])
 *             w = max(0.0, xx2 - xx1 + 1)
 *             h = max(0.0, yy2 - yy1 + 1)             # <<<<<<<<<<<<<<
 *             inter = w * h
 *             ovr = inter / (iarea + areas[j] - inter)
 */
      __pyx_v_h = __pyx_f_7cpu_nms_max(0.0, ((__pyx_v_yy2 - __pyx_v_yy1) + 1.0));

      /* "cpu_nms.pyx":63
 *             w = max(0.0, xx2 - xx1 + 1)
 *             h = max(0.0, yy2 - yy1 + 1)
 *             inter = w * h             # <<<<<<<<<<<<<<
 *             ovr = inter / (iarea + areas[j] - inter)
 *             if ovr >= thresh:
 */
      __pyx_v_inter = (__pyx_v_w * __pyx_v_h);

      /* "cpu_nms.pyx":64
 *             h = max(0.0, yy2 - yy1 + 1)
 *             inter = w * h
 *             ovr = inter / (iarea + areas[j] - inter)             # <<<<<<<<<<<<<<
 *             if ovr >= thresh:
 *                 suppressed[j] = 1
 */
      __pyx_t_36 = __pyx_v_j;
      __pyx_t_30 = -1;
      if (__pyx_t_36 < 0) {
        __pyx_t_36 += __pyx_pybuffernd_areas.diminfo[0].shape;
        if (unlikely(__pyx_t_36 < 0)) __pyx_t_30 = 0;
      } else if (unlikely(__pyx_t_36 >= __pyx_pybuffernd_areas.diminfo[0].shape)) __pyx_t_30 = 0;
      if (unlikely(__pyx_t_30 != -1)) {
        __Pyx_RaiseBufferIndexError(__pyx_t_30);
        __PYX_ERR(0, 64, __pyx_L1_error)
      }
      __pyx_t_37 = ((__pyx_v_iarea + (*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_areas.rcbuffer->pybuffer.buf, __pyx_t_36, __pyx_pybuffernd_areas.diminfo[0].strides))) - __pyx_v_inter);
      if (unlikely(__pyx_t_37 == 0)) {
        PyErr_SetString(PyExc_ZeroDivisionError, "float division");
        __PYX_ERR(0, 64, __pyx_L1_error)
      }
      __pyx_v_ovr = (__pyx_v_inter / __pyx_t_37);

      /* "cpu_nms.pyx":65
 *             inter = w * h
 *             ovr = inter / (iarea + areas[j] - inter)
 *             if ovr >= thresh:             # <<<<<<<<<<<<<<
 *                 suppressed[j] = 1
 * 
 */
      __pyx_t_12 = PyFloat_FromDouble(__pyx_v_ovr); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 65, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_8 = PyObject_RichCompare(__pyx_t_12, __pyx_v_thresh, Py_GE); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 65, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_20 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_20 < 0)) __PYX_ERR(0, 65, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      if (__pyx_t_20) {

        /* "cpu_nms.pyx":66
 *             ovr = inter / (iarea + areas[j] - inter)
 *             if ovr >= thresh:
 *                 suppressed[j] = 1             # <<<<<<<<<<<<<<
 * 
 *     return keep
 */
        __pyx_t_38 = __pyx_v_j;
        __pyx_t_30 = -1;
        if (__pyx_t_38 < 0) {
          __pyx_t_38 += __pyx_pybuffernd_suppressed.diminfo[0].shape;
          if (unlikely(__pyx_t_38 < 0)) __pyx_t_30 = 0;
        } else if (unlikely(__pyx_t_38 >= __pyx_pybuffernd_suppressed.diminfo[0].shape)) __pyx_t_30 = 0;
        if (unlikely(__pyx_t_30 != -1)) {
          __Pyx_RaiseBufferIndexError(__pyx_t_30);
          __PYX_ERR(0, 66, __pyx_L1_error)
        }
        *__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int_t *, __pyx_pybuffernd_suppressed.rcbuffer->pybuffer.buf, __pyx_t_38, __pyx_pybuffernd_suppressed.diminfo[0].strides) = 1;

        /* "cpu_nms.pyx":65
 *             inter = w * h
 *             ovr = inter / (iarea + areas[j] - inter)
 *             if ovr >= thresh:             # <<<<<<<<<<<<<<
 *                 suppressed[j] = 1
 * 
 */
      }
      __pyx_L6_continue:;
    }
    __pyx_L3_continue:;
  }

  /* "cpu_nms.pyx":68
 *                 suppressed[j] = 1
 * 
 *     return keep             # <<<<<<<<<<<<<<
 */
  __Pyx_XDECREF(__pyx_r);
  __Pyx_INCREF(__pyx_v_keep);
  __pyx_r = __pyx_v_keep;
  goto __pyx_L0;

  /* "cpu_nms.pyx":17
 *     return a if a <= b else b
 * 
 * def cpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh):             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_XDECREF(__pyx_t_11);
  __Pyx_XDECREF(__pyx_t_12);
  { PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_areas.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_dets.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_order.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_scores.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_suppressed.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_x1.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_x2.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_y1.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_y2.rcbuffer->pybuffer);
  __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
  __Pyx_AddTraceback("cpu_nms.cpu_nms", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  goto __pyx_L2;
  __pyx_L0:;
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_areas.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_dets.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_order.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_scores.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_suppressed.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_x1.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_x2.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_y1.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_y2.rcbuffer->pybuffer);
  __pyx_L2:;
  __Pyx_XDECREF((PyObject *)__pyx_v_x1);
  __Pyx_XDECREF((PyObject *)__pyx_v_y1);
  __Pyx_XDECREF((PyObject *)__pyx_v_x2);
  __Pyx_XDECREF((PyObject *)__pyx_v_y2);
  __Pyx_XDECREF((PyObject *)__pyx_v_scores);
  __Pyx_XDECREF((PyObject *)__pyx_v_areas);
  __Pyx_XDECREF((PyObject *)__pyx_v_order);
  __Pyx_XDECREF((PyObject *)__pyx_v_suppressed);
  __Pyx_XDECREF(__pyx_v_keep);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":215
 *         # experimental exception made for __getbuffer__ and __releasebuffer__
 *         # -- the details of this may change.
 *         def __getbuffer__(ndarray self, Py_buffer* info, int flags):             # <<<<<<<<<<<<<<
 *             # This implementation of getbuffer is geared towards Cython
 *             # requirements, and does not yet fulfill the PEP.
 */

/* Python wrapper */
static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /*proto*/
static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__getbuffer__ (wrapper)", 0);
  __pyx_r = __pyx_pf_5numpy_7ndarray___getbuffer__(((PyArrayObject *)__pyx_v_self), ((Py_buffer *)__pyx_v_info), ((int)__pyx_v_flags));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {
  int __pyx_v_i;
  int __pyx_v_ndim;
  int __pyx_v_endian_detector;
  int __pyx_v_little_endian;
  int __pyx_v_t;
  char *__pyx_v_f;
  PyArray_Descr *__pyx_v_descr = 0;
  int __pyx_v_offset;
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  int __pyx_t_5;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  char *__pyx_t_8;
  if (__pyx_v_info == NULL) {
    PyErr_SetString(PyExc_BufferError, "PyObject_GetBuffer: view==NULL argument is obsolete");
    return -1;
  }
  __Pyx_RefNannySetupContext("__getbuffer__", 0);
  __pyx_v_info->obj = Py_None; __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(__pyx_v_info->obj);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":222
 * 
 *             cdef int i, ndim
 *             cdef int endian_detector = 1             # <<<<<<<<<<<<<<
 *             cdef bint little_endian = ((&endian_detector)[0] != 0)
 * 
 */
  __pyx_v_endian_detector = 1;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":223
 *             cdef int i, ndim
 *             cdef int endian_detector = 1
 *             cdef bint little_endian = ((&endian_detector)[0] != 0)             # <<<<<<<<<<<<<<
 * 
 *             ndim = PyArray_NDIM(self)
 */
  __pyx_v_little_endian = ((((char *)(&__pyx_v_endian_detector))[0]) != 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":225
 *             cdef bint little_endian = ((&endian_detector)[0] != 0)
 * 
 *             ndim = PyArray_NDIM(self)             # <<<<<<<<<<<<<<
 * 
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)
 */
  __pyx_v_ndim = PyArray_NDIM(__pyx_v_self);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":227
 *             ndim = PyArray_NDIM(self)
 * 
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not C contiguous")
 */
  __pyx_t_2 = (((__pyx_v_flags & PyBUF_C_CONTIGUOUS) == PyBUF_C_CONTIGUOUS) != 0);
  if (__pyx_t_2) {
  } else {
    __pyx_t_1 = __pyx_t_2;
    goto __pyx_L4_bool_binop_done;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":228
 * 
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):             # <<<<<<<<<<<<<<
 *                 raise ValueError(u"ndarray is not C contiguous")
 * 
 */
  __pyx_t_2 = ((!(PyArray_CHKFLAGS(__pyx_v_self, NPY_C_CONTIGUOUS) != 0)) != 0);
  __pyx_t_1 = __pyx_t_2;
  __pyx_L4_bool_binop_done:;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":227
 *             ndim = PyArray_NDIM(self)
 * 
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not C contiguous")
 */
  if (unlikely(__pyx_t_1)) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":229
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not C contiguous")             # <<<<<<<<<<<<<<
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)
 */
    __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 229, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_Raise(__pyx_t_3, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __PYX_ERR(1, 229, __pyx_L1_error)

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":227
 *             ndim = PyArray_NDIM(self)
 * 
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not C contiguous")
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":231
 *                 raise ValueError(u"ndarray is not C contiguous")
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not Fortran contiguous")
 */
  __pyx_t_2 = (((__pyx_v_flags & PyBUF_F_CONTIGUOUS) == PyBUF_F_CONTIGUOUS) != 0);
  if (__pyx_t_2) {
  } else {
    __pyx_t_1 = __pyx_t_2;
    goto __pyx_L7_bool_binop_done;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":232
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):             # <<<<<<<<<<<<<<
 *                 raise ValueError(u"ndarray is not Fortran contiguous")
 * 
 */
  __pyx_t_2 = ((!(PyArray_CHKFLAGS(__pyx_v_self, NPY_F_CONTIGUOUS) != 0)) != 0);
  __pyx_t_1 = __pyx_t_2;
  __pyx_L7_bool_binop_done:;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":231
 *                 raise ValueError(u"ndarray is not C contiguous")
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not Fortran contiguous")
 */
  if (unlikely(__pyx_t_1)) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":233
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not Fortran contiguous")             # <<<<<<<<<<<<<<
 * 
 *             info.buf = PyArray_DATA(self)
 */
    __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 233, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_Raise(__pyx_t_3, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __PYX_ERR(1, 233, __pyx_L1_error)

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":231
 *                 raise ValueError(u"ndarray is not C contiguous")
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not Fortran contiguous")
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":235
 *                 raise ValueError(u"ndarray is not Fortran contiguous")
 * 
 *             info.buf = PyArray_DATA(self)             # <<<<<<<<<<<<<<
 *             info.ndim = ndim
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 */
  __pyx_v_info->buf = PyArray_DATA(__pyx_v_self);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":236
 * 
 *             info.buf = PyArray_DATA(self)
 *             info.ndim = ndim             # <<<<<<<<<<<<<<
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 *                 # Allocate new buffer for strides and shape info.
 */
  __pyx_v_info->ndim = __pyx_v_ndim;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":237
 *             info.buf = PyArray_DATA(self)
 *             info.ndim = ndim
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):             # <<<<<<<<<<<<<<
 *                 # Allocate new buffer for strides and shape info.
 *                 # This is allocated as one block, strides first.
 */
  __pyx_t_1 = (((sizeof(npy_intp)) != (sizeof(Py_ssize_t))) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":240
 *                 # Allocate new buffer for strides and shape info.
 *                 # This is allocated as one block, strides first.
 *                 info.strides = PyObject_Malloc(sizeof(Py_ssize_t) * 2 * ndim)             # <<<<<<<<<<<<<<
 *                 info.shape = info.strides + ndim
 *                 for i in range(ndim):
 */
    __pyx_v_info->strides = ((Py_ssize_t *)PyObject_Malloc((((sizeof(Py_ssize_t)) * 2) * ((size_t)__pyx_v_ndim))));

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":241
 *                 # This is allocated as one block, strides first.
 *                 info.strides = PyObject_Malloc(sizeof(Py_ssize_t) * 2 * ndim)
 *                 info.shape = info.strides + ndim             # <<<<<<<<<<<<<<
 *                 for i in range(ndim):
 *                     info.strides[i] = PyArray_STRIDES(self)[i]
 */
    __pyx_v_info->shape = (__pyx_v_info->strides + __pyx_v_ndim);

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":242
 *                 info.strides = PyObject_Malloc(sizeof(Py_ssize_t) * 2 * ndim)
 *                 info.shape = info.strides + ndim
 *                 for i in range(ndim):             # <<<<<<<<<<<<<<
 *                     info.strides[i] = PyArray_STRIDES(self)[i]
 *                     info.shape[i] = PyArray_DIMS(self)[i]
 */
    __pyx_t_4 = __pyx_v_ndim;
    __pyx_t_5 = __pyx_t_4;
    for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
      __pyx_v_i = __pyx_t_6;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":243
 *                 info.shape = info.strides + ndim
 *                 for i in range(ndim):
 *                     info.strides[i] = PyArray_STRIDES(self)[i]             # <<<<<<<<<<<<<<
 *                     info.shape[i] = PyArray_DIMS(self)[i]
 *             else:
 */
      (__pyx_v_info->strides[__pyx_v_i]) = (PyArray_STRIDES(__pyx_v_self)[__pyx_v_i]);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":244
 *                 for i in range(ndim):
 *                     info.strides[i] = PyArray_STRIDES(self)[i]
 *                     info.shape[i] = PyArray_DIMS(self)[i]             # <<<<<<<<<<<<<<
 *             else:
 *                 info.strides = PyArray_STRIDES(self)
 */
      (__pyx_v_info->shape[__pyx_v_i]) = (PyArray_DIMS(__pyx_v_self)[__pyx_v_i]);
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":237
 *             info.buf = PyArray_DATA(self)
 *             info.ndim = ndim
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):             # <<<<<<<<<<<<<<
 *                 # Allocate new buffer for strides and shape info.
 *                 # This is allocated as one block, strides first.
 */
    goto __pyx_L9;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":246
 *                     info.shape[i] = PyArray_DIMS(self)[i]
 *             else:
 *                 info.strides = PyArray_STRIDES(self)             # <<<<<<<<<<<<<<
 *                 info.shape = PyArray_DIMS(self)
 *             info.suboffsets = NULL
 */
  /*else*/ {
    __pyx_v_info->strides = ((Py_ssize_t *)PyArray_STRIDES(__pyx_v_self));

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":247
 *             else:
 *                 info.strides = PyArray_STRIDES(self)
 *                 info.shape = PyArray_DIMS(self)             # <<<<<<<<<<<<<<
 *             info.suboffsets = NULL
 *             info.itemsize = PyArray_ITEMSIZE(self)
 */
    __pyx_v_info->shape = ((Py_ssize_t *)PyArray_DIMS(__pyx_v_self));
  }
  __pyx_L9:;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":248
 *                 info.strides = PyArray_STRIDES(self)
 *                 info.shape = PyArray_DIMS(self)
 *             info.suboffsets = NULL             # <<<<<<<<<<<<<<
 *             info.itemsize = PyArray_ITEMSIZE(self)
 *             info.readonly = not PyArray_ISWRITEABLE(self)
 */
  __pyx_v_info->suboffsets = NULL;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":249
 *                 info.shape = PyArray_DIMS(self)
 *             info.suboffsets = NULL
 *             info.itemsize = PyArray_ITEMSIZE(self)             # <<<<<<<<<<<<<<
 *             info.readonly = not PyArray_ISWRITEABLE(self)
 * 
 */
  __pyx_v_info->itemsize = PyArray_ITEMSIZE(__pyx_v_self);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":250
 *             info.suboffsets = NULL
 *             info.itemsize = PyArray_ITEMSIZE(self)
 *             info.readonly = not PyArray_ISWRITEABLE(self)             # <<<<<<<<<<<<<<
 * 
 *             cdef int t
 */
  __pyx_v_info->readonly = (!(PyArray_ISWRITEABLE(__pyx_v_self) != 0));

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":253
 * 
 *             cdef int t
 *             cdef char* f = NULL             # <<<<<<<<<<<<<<
 *             cdef dtype descr = self.descr
 *             cdef int offset
 */
  __pyx_v_f = NULL;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":254
 *             cdef int t
 *             cdef char* f = NULL
 *             cdef dtype descr = self.descr             # <<<<<<<<<<<<<<
 *             cdef int offset
 * 
 */
  __pyx_t_3 = ((PyObject *)__pyx_v_self->descr);
  __Pyx_INCREF(__pyx_t_3);
  __pyx_v_descr = ((PyArray_Descr *)__pyx_t_3);
  __pyx_t_3 = 0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":257
 *             cdef int offset
 * 
 *             info.obj = self             # <<<<<<<<<<<<<<
 * 
 *             if not PyDataType_HASFIELDS(descr):
 */
  __Pyx_INCREF(((PyObject *)__pyx_v_self));
  __Pyx_GIVEREF(((PyObject *)__pyx_v_self));
  __Pyx_GOTREF(__pyx_v_info->obj);
  __Pyx_DECREF(__pyx_v_info->obj);
  __pyx_v_info->obj = ((PyObject *)__pyx_v_self);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":259
 *             info.obj = self
 * 
 *             if not PyDataType_HASFIELDS(descr):             # <<<<<<<<<<<<<<
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or
 */
  __pyx_t_1 = ((!(PyDataType_HASFIELDS(__pyx_v_descr) != 0)) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":260
 * 
 *             if not PyDataType_HASFIELDS(descr):
 *                 t = descr.type_num             # <<<<<<<<<<<<<<
 *                 if ((descr.byteorder == c'>' and little_endian) or
 *                     (descr.byteorder == c'<' and not little_endian)):
 */
    __pyx_t_4 = __pyx_v_descr->type_num;
    __pyx_v_t = __pyx_t_4;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":261
 *             if not PyDataType_HASFIELDS(descr):
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")
 */
    __pyx_t_2 = ((__pyx_v_descr->byteorder == '>') != 0);
    if (!__pyx_t_2) {
      goto __pyx_L15_next_or;
    } else {
    }
    __pyx_t_2 = (__pyx_v_little_endian != 0);
    if (!__pyx_t_2) {
    } else {
      __pyx_t_1 = __pyx_t_2;
      goto __pyx_L14_bool_binop_done;
    }
    __pyx_L15_next_or:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":262
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or
 *                     (descr.byteorder == c'<' and not little_endian)):             # <<<<<<<<<<<<<<
 *                     raise ValueError(u"Non-native byte order not supported")
 *                 if   t == NPY_BYTE:        f = "b"
 */
    __pyx_t_2 = ((__pyx_v_descr->byteorder == '<') != 0);
    if (__pyx_t_2) {
    } else {
      __pyx_t_1 = __pyx_t_2;
      goto __pyx_L14_bool_binop_done;
    }
    __pyx_t_2 = ((!(__pyx_v_little_endian != 0)) != 0);
    __pyx_t_1 = __pyx_t_2;
    __pyx_L14_bool_binop_done:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":261
 *             if not PyDataType_HASFIELDS(descr):
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")
 */
    if (unlikely(__pyx_t_1)) {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":263
 *                 if ((descr.byteorder == c'>' and little_endian) or
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")             # <<<<<<<<<<<<<<
 *                 if   t == NPY_BYTE:        f = "b"
 *                 elif t == NPY_UBYTE:       f = "B"
 */
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__14, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 263, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_Raise(__pyx_t_3, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(1, 263, __pyx_L1_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":261
 *             if not PyDataType_HASFIELDS(descr):
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")
 */
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":264
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")
 *                 if   t == NPY_BYTE:        f = "b"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_UBYTE:       f = "B"
 *                 elif t == NPY_SHORT:       f = "h"
 */
    switch (__pyx_v_t) {
      case NPY_BYTE:
      __pyx_v_f = ((char *)"b");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":265
 *                     raise ValueError(u"Non-native byte order not supported")
 *                 if   t == NPY_BYTE:        f = "b"
 *                 elif t == NPY_UBYTE:       f = "B"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_SHORT:       f = "h"
 *                 elif t == NPY_USHORT:      f = "H"
 */
      case NPY_UBYTE:
      __pyx_v_f = ((char *)"B");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":266
 *                 if   t == NPY_BYTE:        f = "b"
 *                 elif t == NPY_UBYTE:       f = "B"
 *                 elif t == NPY_SHORT:       f = "h"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_USHORT:      f = "H"
 *                 elif t == NPY_INT:         f = "i"
 */
      case NPY_SHORT:
      __pyx_v_f = ((char *)"h");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":267
 *                 elif t == NPY_UBYTE:       f = "B"
 *                 elif t == NPY_SHORT:       f = "h"
 *                 elif t == NPY_USHORT:      f = "H"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_INT:         f = "i"
 *                 elif t == NPY_UINT:        f = "I"
 */
      case NPY_USHORT:
      __pyx_v_f = ((char *)"H");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":268
 *                 elif t == NPY_SHORT:       f = "h"
 *                 elif t == NPY_USHORT:      f = "H"
 *                 elif t == NPY_INT:         f = "i"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_UINT:        f = "I"
 *                 elif t == NPY_LONG:        f = "l"
 */
      case NPY_INT:
      __pyx_v_f = ((char *)"i");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":269
 *                 elif t == NPY_USHORT:      f = "H"
 *                 elif t == NPY_INT:         f = "i"
 *                 elif t == NPY_UINT:        f = "I"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_LONG:        f = "l"
 *                 elif t == NPY_ULONG:       f = "L"
 */
      case NPY_UINT:
      __pyx_v_f = ((char *)"I");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":270
 *                 elif t == NPY_INT:         f = "i"
 *                 elif t == NPY_UINT:        f = "I"
 *                 elif t == NPY_LONG:        f = "l"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_ULONG:       f = "L"
 *                 elif t == NPY_LONGLONG:    f = "q"
 */
      case NPY_LONG:
      __pyx_v_f = ((char *)"l");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":271
 *                 elif t == NPY_UINT:        f = "I"
 *                 elif t == NPY_LONG:        f = "l"
 *                 elif t == NPY_ULONG:       f = "L"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_LONGLONG:    f = "q"
 *                 elif t == NPY_ULONGLONG:   f = "Q"
 */
      case NPY_ULONG:
      __pyx_v_f = ((char *)"L");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":272
 *                 elif t == NPY_LONG:        f = "l"
 *                 elif t == NPY_ULONG:       f = "L"
 *                 elif t == NPY_LONGLONG:    f = "q"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_ULONGLONG:   f = "Q"
 *                 elif t == NPY_FLOAT:       f = "f"
 */
      case NPY_LONGLONG:
      __pyx_v_f = ((char *)"q");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":273
 *                 elif t == NPY_ULONG:       f = "L"
 *                 elif t == NPY_LONGLONG:    f = "q"
 *                 elif t == NPY_ULONGLONG:   f = "Q"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_FLOAT:       f = "f"
 *                 elif t == NPY_DOUBLE:      f = "d"
 */
      case NPY_ULONGLONG:
      __pyx_v_f = ((char *)"Q");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":274
 *                 elif t == NPY_LONGLONG:    f = "q"
 *                 elif t == NPY_ULONGLONG:   f = "Q"
 *                 elif t == NPY_FLOAT:       f = "f"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_DOUBLE:      f = "d"
 *                 elif t == NPY_LONGDOUBLE:  f = "g"
 */
      case NPY_FLOAT:
      __pyx_v_f = ((char *)"f");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":275
 *                 elif t == NPY_ULONGLONG:   f = "Q"
 *                 elif t == NPY_FLOAT:       f = "f"
 *                 elif t == NPY_DOUBLE:      f = "d"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_LONGDOUBLE:  f = "g"
 *                 elif t == NPY_CFLOAT:      f = "Zf"
 */
      case NPY_DOUBLE:
      __pyx_v_f = ((char *)"d");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":276
 *                 elif t == NPY_FLOAT:       f = "f"
 *                 elif t == NPY_DOUBLE:      f = "d"
 *                 elif t == NPY_LONGDOUBLE:  f = "g"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_CFLOAT:      f = "Zf"
 *                 elif t == NPY_CDOUBLE:     f = "Zd"
 */
      case NPY_LONGDOUBLE:
      __pyx_v_f = ((char *)"g");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":277
 *                 elif t == NPY_DOUBLE:      f = "d"
 *                 elif t == NPY_LONGDOUBLE:  f = "g"
 *                 elif t == NPY_CFLOAT:      f = "Zf"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_CDOUBLE:     f = "Zd"
 *                 elif t == NPY_CLONGDOUBLE: f = "Zg"
 */
      case NPY_CFLOAT:
      __pyx_v_f = ((char *)"Zf");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":278
 *                 elif t == NPY_LONGDOUBLE:  f = "g"
 *                 elif t == NPY_CFLOAT:      f = "Zf"
 *                 elif t == NPY_CDOUBLE:     f = "Zd"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_CLONGDOUBLE: f = "Zg"
 *                 elif t == NPY_OBJECT:      f = "O"
 */
      case NPY_CDOUBLE:
      __pyx_v_f = ((char *)"Zd");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":279
 *                 elif t == NPY_CFLOAT:      f = "Zf"
 *                 elif t == NPY_CDOUBLE:     f = "Zd"
 *                 elif t == NPY_CLONGDOUBLE: f = "Zg"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_OBJECT:      f = "O"
 *                 else:
 */
      case NPY_CLONGDOUBLE:
      __pyx_v_f = ((char *)"Zg");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":280
 *                 elif t == NPY_CDOUBLE:     f = "Zd"
 *                 elif t == NPY_CLONGDOUBLE: f = "Zg"
 *                 elif t == NPY_OBJECT:      f = "O"             # <<<<<<<<<<<<<<
 *                 else:
 *                     raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)
 */
      case NPY_OBJECT:
      __pyx_v_f = ((char *)"O");
      break;
      default:

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":282
 *                 elif t == NPY_OBJECT:      f = "O"
 *                 else:
 *                     raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)             # <<<<<<<<<<<<<<
 *                 info.format = f
 *                 return
 */
      __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_t); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 282, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_7 = PyUnicode_Format(__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 282, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 282, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_Raise(__pyx_t_3, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(1, 282, __pyx_L1_error)
      break;
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":283
 *                 else:
 *                     raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)
 *                 info.format = f             # <<<<<<<<<<<<<<
 *                 return
 *             else:
 */
    __pyx_v_info->format = __pyx_v_f;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":284
 *                     raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)
 *                 info.format = f
 *                 return             # <<<<<<<<<<<<<<
 *             else:
 *                 info.format = PyObject_Malloc(_buffer_format_string_len)
 */
    __pyx_r = 0;
    goto __pyx_L0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":259
 *             info.obj = self
 * 
 *             if not PyDataType_HASFIELDS(descr):             # <<<<<<<<<<<<<<
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":286
 *                 return
 *             else:
 *                 info.format = PyObject_Malloc(_buffer_format_string_len)             # <<<<<<<<<<<<<<
 *                 info.format[0] = c'^' # Native data types, manual alignment
 *                 offset = 0
 */
  /*else*/ {
    __pyx_v_info->format = ((char *)PyObject_Malloc(0xFF));

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":287
 *             else:
 *                 info.format = PyObject_Malloc(_buffer_format_string_len)
 *                 info.format[0] = c'^' # Native data types, manual alignment             # <<<<<<<<<<<<<<
 *                 offset = 0
 *                 f = _util_dtypestring(descr, info.format + 1,
 */
    (__pyx_v_info->format[0]) = '^';

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":288
 *                 info.format = PyObject_Malloc(_buffer_format_string_len)
 *                 info.format[0] = c'^' # Native data types, manual alignment
 *                 offset = 0             # <<<<<<<<<<<<<<
 *                 f = _util_dtypestring(descr, info.format + 1,
 *                                       info.format + _buffer_format_string_len,
 */
    __pyx_v_offset = 0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":289
 *                 info.format[0] = c'^' # Native data types, manual alignment
 *                 offset = 0
 *                 f = _util_dtypestring(descr, info.format + 1,             # <<<<<<<<<<<<<<
 *                                       info.format + _buffer_format_string_len,
 *                                       &offset)
 */
    __pyx_t_8 = __pyx_f_5numpy__util_dtypestring(__pyx_v_descr, (__pyx_v_info->format + 1), (__pyx_v_info->format + 0xFF), (&__pyx_v_offset)); if (unlikely(__pyx_t_8 == ((char *)NULL))) __PYX_ERR(1, 289, __pyx_L1_error)
    __pyx_v_f = __pyx_t_8;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":292
 *                                       info.format + _buffer_format_string_len,
 *                                       &offset)
 *                 f[0] = c'\0' # Terminate format string             # <<<<<<<<<<<<<<
 * 
 *         def __releasebuffer__(ndarray self, Py_buffer* info):
 */
    (__pyx_v_f[0]) = '\x00';
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":215
 *         # experimental exception made for __getbuffer__ and __releasebuffer__
 *         # -- the details of this may change.
 *         def __getbuffer__(ndarray self, Py_buffer* info, int flags):             # <<<<<<<<<<<<<<
 *             # This implementation of getbuffer is geared towards Cython
 *             # requirements, and does not yet fulfill the PEP.
 */

  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("numpy.ndarray.__getbuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  if (__pyx_v_info->obj != NULL) {
    __Pyx_GOTREF(__pyx_v_info->obj);
    __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = 0;
  }
  goto __pyx_L2;
  __pyx_L0:;
  if (__pyx_v_info->obj == Py_None) {
    __Pyx_GOTREF(__pyx_v_info->obj);
    __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = 0;
  }
  __pyx_L2:;
  __Pyx_XDECREF((PyObject *)__pyx_v_descr);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":294
 *                 f[0] = c'\0' # Terminate format string
 * 
 *         def __releasebuffer__(ndarray self, Py_buffer* info):             # <<<<<<<<<<<<<<
 *             if PyArray_HASFIELDS(self):
 *                 PyObject_Free(info.format)
 */

/* Python wrapper */
static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info); /*proto*/
static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__releasebuffer__ (wrapper)", 0);
  __pyx_pf_5numpy_7ndarray_2__releasebuffer__(((PyArrayObject *)__pyx_v_self), ((Py_buffer *)__pyx_v_info));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
}

static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info) {
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  __Pyx_RefNannySetupContext("__releasebuffer__", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":295
 * 
 *         def __releasebuffer__(ndarray self, Py_buffer* info):
 *             if PyArray_HASFIELDS(self):             # <<<<<<<<<<<<<<
 *                 PyObject_Free(info.format)
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 */
  __pyx_t_1 = (PyArray_HASFIELDS(__pyx_v_self) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":296
 *         def __releasebuffer__(ndarray self, Py_buffer* info):
 *             if PyArray_HASFIELDS(self):
 *                 PyObject_Free(info.format)             # <<<<<<<<<<<<<<
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 *                 PyObject_Free(info.strides)
 */
    PyObject_Free(__pyx_v_info->format);

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":295
 * 
 *         def __releasebuffer__(ndarray self, Py_buffer* info):
 *             if PyArray_HASFIELDS(self):             # <<<<<<<<<<<<<<
 *                 PyObject_Free(info.format)
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":297
 *             if PyArray_HASFIELDS(self):
 *                 PyObject_Free(info.format)
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):             # <<<<<<<<<<<<<<
 *                 PyObject_Free(info.strides)
 *                 # info.shape was stored after info.strides in the same block
 */
  __pyx_t_1 = (((sizeof(npy_intp)) != (sizeof(Py_ssize_t))) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":298
 *                 PyObject_Free(info.format)
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 *                 PyObject_Free(info.strides)             # <<<<<<<<<<<<<<
 *                 # info.shape was stored after info.strides in the same block
 * 
 */
    PyObject_Free(__pyx_v_info->strides);

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":297
 *             if PyArray_HASFIELDS(self):
 *                 PyObject_Free(info.format)
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):             # <<<<<<<<<<<<<<
 *                 PyObject_Free(info.strides)
 *                 # info.shape was stored after info.strides in the same block
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":294
 *                 f[0] = c'\0' # Terminate format string
 * 
 *         def __releasebuffer__(ndarray self, Py_buffer* info):             # <<<<<<<<<<<<<<
 *             if PyArray_HASFIELDS(self):
 *                 PyObject_Free(info.format)
 */

  /* function exit code */
  __Pyx_RefNannyFinishContext();
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":775
 * ctypedef npy_cdouble     complex_t
 * 
 * cdef inline object PyArray_MultiIterNew1(a):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(1, a)
 * 
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__pyx_v_a) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew1", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":776
 * 
 * cdef inline object PyArray_MultiIterNew1(a):
 *     return PyArray_MultiIterNew(1, a)             # <<<<<<<<<<<<<<
 * 
 * cdef inline object PyArray_MultiIterNew2(a, b):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyArray_MultiIterNew(1, ((void *)__pyx_v_a)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 776, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":775
 * ctypedef npy_cdouble     complex_t
 * 
 * cdef inline object PyArray_MultiIterNew1(a):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(1, a)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("numpy.PyArray_MultiIterNew1", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":778
 *     return PyArray_MultiIterNew(1, a)
 * 
 * cdef inline object PyArray_MultiIterNew2(a, b):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(2, a, b)
 * 
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__pyx_v_a, PyObject *__pyx_v_b) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew2", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":779
 * 
 * cdef inline object PyArray_MultiIterNew2(a, b):
 *     return PyArray_MultiIterNew(2, a, b)             # <<<<<<<<<<<<<<
 * 
 * cdef inline object PyArray_MultiIterNew3(a, b, c):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyArray_MultiIterNew(2, ((void *)__pyx_v_a), ((void *)__pyx_v_b)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 779, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":778
 *     return PyArray_MultiIterNew(1, a)
 * 
 * cdef inline object PyArray_MultiIterNew2(a, b):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(2, a, b)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("numpy.PyArray_MultiIterNew2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":781
 *     return PyArray_MultiIterNew(2, a, b)
 * 
 * cdef inline object PyArray_MultiIterNew3(a, b, c):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(3, a, b,  c)
 * 
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew3", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":782
 * 
 * cdef inline object PyArray_MultiIterNew3(a, b, c):
 *     return PyArray_MultiIterNew(3, a, b,  c)             # <<<<<<<<<<<<<<
 * 
 * cdef inline object PyArray_MultiIterNew4(a, b, c, d):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyArray_MultiIterNew(3, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 782, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":781
 *     return PyArray_MultiIterNew(2, a, b)
 * 
 * cdef inline object PyArray_MultiIterNew3(a, b, c):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(3, a, b,  c)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("numpy.PyArray_MultiIterNew3", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":784
 *     return PyArray_MultiIterNew(3, a, b,  c)
 * 
 * cdef inline object PyArray_MultiIterNew4(a, b, c, d):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(4, a, b, c,  d)
 * 
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew4", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":785
 * 
 * cdef inline object PyArray_MultiIterNew4(a, b, c, d):
 *     return PyArray_MultiIterNew(4, a, b, c,  d)             # <<<<<<<<<<<<<<
 * 
 * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyArray_MultiIterNew(4, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c), ((void *)__pyx_v_d)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 785, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":784
 *     return PyArray_MultiIterNew(3, a, b,  c)
 * 
 * cdef inline object PyArray_MultiIterNew4(a, b, c, d):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(4, a, b, c,  d)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("numpy.PyArray_MultiIterNew4", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":787
 *     return PyArray_MultiIterNew(4, a, b, c,  d)
 * 
 * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(5, a, b, c,  d,  e)
 * 
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d, PyObject *__pyx_v_e) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew5", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":788
 * 
 * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e):
 *     return PyArray_MultiIterNew(5, a, b, c,  d,  e)             # <<<<<<<<<<<<<<
 * 
 * cdef inline tuple PyDataType_SHAPE(dtype d):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyArray_MultiIterNew(5, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c), ((void *)__pyx_v_d), ((void *)__pyx_v_e)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 788, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":787
 *     return PyArray_MultiIterNew(4, a, b, c,  d)
 * 
 * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(5, a, b, c,  d,  e)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("numpy.PyArray_MultiIterNew5", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":790
 *     return PyArray_MultiIterNew(5, a, b, c,  d,  e)
 * 
 * cdef inline tuple PyDataType_SHAPE(dtype d):             # <<<<<<<<<<<<<<
 *     if PyDataType_HASSUBARRAY(d):
 *         return d.subarray.shape
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__pyx_v_d) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  __Pyx_RefNannySetupContext("PyDataType_SHAPE", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":791
 * 
 * cdef inline tuple PyDataType_SHAPE(dtype d):
 *     if PyDataType_HASSUBARRAY(d):             # <<<<<<<<<<<<<<
 *         return d.subarray.shape
 *     else:
 */
  __pyx_t_1 = (PyDataType_HASSUBARRAY(__pyx_v_d) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":792
 * cdef inline tuple PyDataType_SHAPE(dtype d):
 *     if PyDataType_HASSUBARRAY(d):
 *         return d.subarray.shape             # <<<<<<<<<<<<<<
 *     else:
 *         return ()
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(((PyObject*)__pyx_v_d->subarray->shape));
    __pyx_r = ((PyObject*)__pyx_v_d->subarray->shape);
    goto __pyx_L0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":791
 * 
 * cdef inline tuple PyDataType_SHAPE(dtype d):
 *     if PyDataType_HASSUBARRAY(d):             # <<<<<<<<<<<<<<
 *         return d.subarray.shape
 *     else:
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":794
 *         return d.subarray.shape
 *     else:
 *         return ()             # <<<<<<<<<<<<<<
 * 
 * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL:
 */
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_empty_tuple);
    __pyx_r = __pyx_empty_tuple;
    goto __pyx_L0;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":790
 *     return PyArray_MultiIterNew(5, a, b, c,  d,  e)
 * 
 * cdef inline tuple PyDataType_SHAPE(dtype d):             # <<<<<<<<<<<<<<
 *     if PyDataType_HASSUBARRAY(d):
 *         return d.subarray.shape
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":796
 *         return ()
 * 
 * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL:             # <<<<<<<<<<<<<<
 *     # Recursive utility function used in __getbuffer__ to get format
 *     # string. The new location in the format string is returned.
 */

static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *__pyx_v_descr, char *__pyx_v_f, char *__pyx_v_end, int *__pyx_v_offset) {
  PyArray_Descr *__pyx_v_child = 0;
  int __pyx_v_endian_detector;
  int __pyx_v_little_endian;
  PyObject *__pyx_v_fields = 0;
  PyObject *__pyx_v_childname = NULL;
  PyObject *__pyx_v_new_offset = NULL;
  PyObject *__pyx_v_t = NULL;
  char *__pyx_r;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  Py_ssize_t __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  int __pyx_t_6;
  int __pyx_t_7;
  long __pyx_t_8;
  char *__pyx_t_9;
  __Pyx_RefNannySetupContext("_util_dtypestring", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":801
 * 
 *     cdef dtype child
 *     cdef int endian_detector = 1             # <<<<<<<<<<<<<<
 *     cdef bint little_endian = ((&endian_detector)[0] != 0)
 *     cdef tuple fields
 */
  __pyx_v_endian_detector = 1;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":802
 *     cdef dtype child
 *     cdef int endian_detector = 1
 *     cdef bint little_endian = ((&endian_detector)[0] != 0)             # <<<<<<<<<<<<<<
 *     cdef tuple fields
 * 
 */
  __pyx_v_little_endian = ((((char *)(&__pyx_v_endian_detector))[0]) != 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":805
 *     cdef tuple fields
 * 
 *     for childname in descr.names:             # <<<<<<<<<<<<<<
 *         fields = descr.fields[childname]
 *         child, new_offset = fields
 */
  if (unlikely(__pyx_v_descr->names == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
    __PYX_ERR(1, 805, __pyx_L1_error)
  }
  __pyx_t_1 = __pyx_v_descr->names; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0;
  for (;;) {
    if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
    #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely(0 < 0)) __PYX_ERR(1, 805, __pyx_L1_error)
    #else
    __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 805, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    #endif
    __Pyx_XDECREF_SET(__pyx_v_childname, __pyx_t_3);
    __pyx_t_3 = 0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":806
 * 
 *     for childname in descr.names:
 *         fields = descr.fields[childname]             # <<<<<<<<<<<<<<
 *         child, new_offset = fields
 * 
 */
    if (unlikely(__pyx_v_descr->fields == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(1, 806, __pyx_L1_error)
    }
    __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_descr->fields, __pyx_v_childname); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 806, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    if (!(likely(PyTuple_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_t_3)->tp_name), 0))) __PYX_ERR(1, 806, __pyx_L1_error)
    __Pyx_XDECREF_SET(__pyx_v_fields, ((PyObject*)__pyx_t_3));
    __pyx_t_3 = 0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":807
 *     for childname in descr.names:
 *         fields = descr.fields[childname]
 *         child, new_offset = fields             # <<<<<<<<<<<<<<
 * 
 *         if (end - f) - (new_offset - offset[0]) < 15:
 */
    if (likely(__pyx_v_fields != Py_None)) {
      PyObject* sequence = __pyx_v_fields;
      Py_ssize_t size = __Pyx_PySequence_SIZE(sequence);
      if (unlikely(size != 2)) {
        if (size > 2) __Pyx_RaiseTooManyValuesError(2);
        else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
        __PYX_ERR(1, 807, __pyx_L1_error)
      }
      #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
      __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0); 
      __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); 
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_4);
      #else
      __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 807, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 807, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      #endif
    } else {
      __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(1, 807, __pyx_L1_error)
    }
    if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_5numpy_dtype))))) __PYX_ERR(1, 807, __pyx_L1_error)
    __Pyx_XDECREF_SET(__pyx_v_child, ((PyArray_Descr *)__pyx_t_3));
    __pyx_t_3 = 0;
    __Pyx_XDECREF_SET(__pyx_v_new_offset, __pyx_t_4);
    __pyx_t_4 = 0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":809
 *         child, new_offset = fields
 * 
 *         if (end - f) - (new_offset - offset[0]) < 15:             # <<<<<<<<<<<<<<
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")
 * 
 */
    __pyx_t_4 = __Pyx_PyInt_From_int((__pyx_v_offset[0])); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 809, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = PyNumber_Subtract(__pyx_v_new_offset, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 809, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 809, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_6 = ((((__pyx_v_end - __pyx_v_f) - ((int)__pyx_t_5)) < 15) != 0);
    if (unlikely(__pyx_t_6)) {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":810
 * 
 *         if (end - f) - (new_offset - offset[0]) < 15:
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")             # <<<<<<<<<<<<<<
 * 
 *         if ((child.byteorder == c'>' and little_endian) or
 */
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__15, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 810, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_Raise(__pyx_t_3, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(1, 810, __pyx_L1_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":809
 *         child, new_offset = fields
 * 
 *         if (end - f) - (new_offset - offset[0]) < 15:             # <<<<<<<<<<<<<<
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")
 * 
 */
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":812
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")
 * 
 *         if ((child.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *             (child.byteorder == c'<' and not little_endian)):
 *             raise ValueError(u"Non-native byte order not supported")
 */
    __pyx_t_7 = ((__pyx_v_child->byteorder == '>') != 0);
    if (!__pyx_t_7) {
      goto __pyx_L8_next_or;
    } else {
    }
    __pyx_t_7 = (__pyx_v_little_endian != 0);
    if (!__pyx_t_7) {
    } else {
      __pyx_t_6 = __pyx_t_7;
      goto __pyx_L7_bool_binop_done;
    }
    __pyx_L8_next_or:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":813
 * 
 *         if ((child.byteorder == c'>' and little_endian) or
 *             (child.byteorder == c'<' and not little_endian)):             # <<<<<<<<<<<<<<
 *             raise ValueError(u"Non-native byte order not supported")
 *             # One could encode it in the format string and have Cython
 */
    __pyx_t_7 = ((__pyx_v_child->byteorder == '<') != 0);
    if (__pyx_t_7) {
    } else {
      __pyx_t_6 = __pyx_t_7;
      goto __pyx_L7_bool_binop_done;
    }
    __pyx_t_7 = ((!(__pyx_v_little_endian != 0)) != 0);
    __pyx_t_6 = __pyx_t_7;
    __pyx_L7_bool_binop_done:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":812
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")
 * 
 *         if ((child.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *             (child.byteorder == c'<' and not little_endian)):
 *             raise ValueError(u"Non-native byte order not supported")
 */
    if (unlikely(__pyx_t_6)) {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":814
 *         if ((child.byteorder == c'>' and little_endian) or
 *             (child.byteorder == c'<' and not little_endian)):
 *             raise ValueError(u"Non-native byte order not supported")             # <<<<<<<<<<<<<<
 *             # One could encode it in the format string and have Cython
 *             # complain instead, BUT: < and > in format strings also imply
 */
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__16, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 814, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_Raise(__pyx_t_3, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(1, 814, __pyx_L1_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":812
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")
 * 
 *         if ((child.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *             (child.byteorder == c'<' and not little_endian)):
 *             raise ValueError(u"Non-native byte order not supported")
 */
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":824
 * 
 *         # Output padding bytes
 *         while offset[0] < new_offset:             # <<<<<<<<<<<<<<
 *             f[0] = 120 # "x"; pad byte
 *             f += 1
 */
    while (1) {
      __pyx_t_3 = __Pyx_PyInt_From_int((__pyx_v_offset[0])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 824, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, __pyx_v_new_offset, Py_LT); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 824, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 824, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (!__pyx_t_6) break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":825
 *         # Output padding bytes
 *         while offset[0] < new_offset:
 *             f[0] = 120 # "x"; pad byte             # <<<<<<<<<<<<<<
 *             f += 1
 *             offset[0] += 1
 */
      (__pyx_v_f[0]) = 0x78;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":826
 *         while offset[0] < new_offset:
 *             f[0] = 120 # "x"; pad byte
 *             f += 1             # <<<<<<<<<<<<<<
 *             offset[0] += 1
 * 
 */
      __pyx_v_f = (__pyx_v_f + 1);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":827
 *             f[0] = 120 # "x"; pad byte
 *             f += 1
 *             offset[0] += 1             # <<<<<<<<<<<<<<
 * 
 *         offset[0] += child.itemsize
 */
      __pyx_t_8 = 0;
      (__pyx_v_offset[__pyx_t_8]) = ((__pyx_v_offset[__pyx_t_8]) + 1);
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":829
 *             offset[0] += 1
 * 
 *         offset[0] += child.itemsize             # <<<<<<<<<<<<<<
 * 
 *         if not PyDataType_HASFIELDS(child):
 */
    __pyx_t_8 = 0;
    (__pyx_v_offset[__pyx_t_8]) = ((__pyx_v_offset[__pyx_t_8]) + __pyx_v_child->elsize);

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":831
 *         offset[0] += child.itemsize
 * 
 *         if not PyDataType_HASFIELDS(child):             # <<<<<<<<<<<<<<
 *             t = child.type_num
 *             if end - f < 5:
 */
    __pyx_t_6 = ((!(PyDataType_HASFIELDS(__pyx_v_child) != 0)) != 0);
    if (__pyx_t_6) {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":832
 * 
 *         if not PyDataType_HASFIELDS(child):
 *             t = child.type_num             # <<<<<<<<<<<<<<
 *             if end - f < 5:
 *                 raise RuntimeError(u"Format string allocated too short.")
 */
      __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_child->type_num); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 832, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_XDECREF_SET(__pyx_v_t, __pyx_t_4);
      __pyx_t_4 = 0;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":833
 *         if not PyDataType_HASFIELDS(child):
 *             t = child.type_num
 *             if end - f < 5:             # <<<<<<<<<<<<<<
 *                 raise RuntimeError(u"Format string allocated too short.")
 * 
 */
      __pyx_t_6 = (((__pyx_v_end - __pyx_v_f) < 5) != 0);
      if (unlikely(__pyx_t_6)) {

        /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":834
 *             t = child.type_num
 *             if end - f < 5:
 *                 raise RuntimeError(u"Format string allocated too short.")             # <<<<<<<<<<<<<<
 * 
 *             # Until ticket #99 is fixed, use integers to avoid warnings
 */
        __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__17, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 834, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_Raise(__pyx_t_4, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __PYX_ERR(1, 834, __pyx_L1_error)

        /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":833
 *         if not PyDataType_HASFIELDS(child):
 *             t = child.type_num
 *             if end - f < 5:             # <<<<<<<<<<<<<<
 *                 raise RuntimeError(u"Format string allocated too short.")
 * 
 */
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":837
 * 
 *             # Until ticket #99 is fixed, use integers to avoid warnings
 *             if   t == NPY_BYTE:        f[0] =  98 #"b"             # <<<<<<<<<<<<<<
 *             elif t == NPY_UBYTE:       f[0] =  66 #"B"
 *             elif t == NPY_SHORT:       f[0] = 104 #"h"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_BYTE); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 837, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 837, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 837, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 98;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":838
 *             # Until ticket #99 is fixed, use integers to avoid warnings
 *             if   t == NPY_BYTE:        f[0] =  98 #"b"
 *             elif t == NPY_UBYTE:       f[0] =  66 #"B"             # <<<<<<<<<<<<<<
 *             elif t == NPY_SHORT:       f[0] = 104 #"h"
 *             elif t == NPY_USHORT:      f[0] =  72 #"H"
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_UBYTE); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 838, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 838, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 838, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 66;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":839
 *             if   t == NPY_BYTE:        f[0] =  98 #"b"
 *             elif t == NPY_UBYTE:       f[0] =  66 #"B"
 *             elif t == NPY_SHORT:       f[0] = 104 #"h"             # <<<<<<<<<<<<<<
 *             elif t == NPY_USHORT:      f[0] =  72 #"H"
 *             elif t == NPY_INT:         f[0] = 105 #"i"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_SHORT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 839, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 839, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 839, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x68;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":840
 *             elif t == NPY_UBYTE:       f[0] =  66 #"B"
 *             elif t == NPY_SHORT:       f[0] = 104 #"h"
 *             elif t == NPY_USHORT:      f[0] =  72 #"H"             # <<<<<<<<<<<<<<
 *             elif t == NPY_INT:         f[0] = 105 #"i"
 *             elif t == NPY_UINT:        f[0] =  73 #"I"
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_USHORT); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 840, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 840, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 840, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 72;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":841
 *             elif t == NPY_SHORT:       f[0] = 104 #"h"
 *             elif t == NPY_USHORT:      f[0] =  72 #"H"
 *             elif t == NPY_INT:         f[0] = 105 #"i"             # <<<<<<<<<<<<<<
 *             elif t == NPY_UINT:        f[0] =  73 #"I"
 *             elif t == NPY_LONG:        f[0] = 108 #"l"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_INT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 841, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 841, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 841, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x69;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":842
 *             elif t == NPY_USHORT:      f[0] =  72 #"H"
 *             elif t == NPY_INT:         f[0] = 105 #"i"
 *             elif t == NPY_UINT:        f[0] =  73 #"I"             # <<<<<<<<<<<<<<
 *             elif t == NPY_LONG:        f[0] = 108 #"l"
 *             elif t == NPY_ULONG:       f[0] = 76  #"L"
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_UINT); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 842, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 842, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 842, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 73;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":843
 *             elif t == NPY_INT:         f[0] = 105 #"i"
 *             elif t == NPY_UINT:        f[0] =  73 #"I"
 *             elif t == NPY_LONG:        f[0] = 108 #"l"             # <<<<<<<<<<<<<<
 *             elif t == NPY_ULONG:       f[0] = 76  #"L"
 *             elif t == NPY_LONGLONG:    f[0] = 113 #"q"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_LONG); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 843, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 843, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 843, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x6C;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":844
 *             elif t == NPY_UINT:        f[0] =  73 #"I"
 *             elif t == NPY_LONG:        f[0] = 108 #"l"
 *             elif t == NPY_ULONG:       f[0] = 76  #"L"             # <<<<<<<<<<<<<<
 *             elif t == NPY_LONGLONG:    f[0] = 113 #"q"
 *             elif t == NPY_ULONGLONG:   f[0] = 81  #"Q"
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_ULONG); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 844, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 844, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 844, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 76;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":845
 *             elif t == NPY_LONG:        f[0] = 108 #"l"
 *             elif t == NPY_ULONG:       f[0] = 76  #"L"
 *             elif t == NPY_LONGLONG:    f[0] = 113 #"q"             # <<<<<<<<<<<<<<
 *             elif t == NPY_ULONGLONG:   f[0] = 81  #"Q"
 *             elif t == NPY_FLOAT:       f[0] = 102 #"f"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_LONGLONG); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 845, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 845, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 845, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x71;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":846
 *             elif t == NPY_ULONG:       f[0] = 76  #"L"
 *             elif t == NPY_LONGLONG:    f[0] = 113 #"q"
 *             elif t == NPY_ULONGLONG:   f[0] = 81  #"Q"             # <<<<<<<<<<<<<<
 *             elif t == NPY_FLOAT:       f[0] = 102 #"f"
 *             elif t == NPY_DOUBLE:      f[0] = 100 #"d"
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_ULONGLONG); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 846, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 846, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 846, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 81;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":847
 *             elif t == NPY_LONGLONG:    f[0] = 113 #"q"
 *             elif t == NPY_ULONGLONG:   f[0] = 81  #"Q"
 *             elif t == NPY_FLOAT:       f[0] = 102 #"f"             # <<<<<<<<<<<<<<
 *             elif t == NPY_DOUBLE:      f[0] = 100 #"d"
 *             elif t == NPY_LONGDOUBLE:  f[0] = 103 #"g"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_FLOAT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 847, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 847, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 847, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x66;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":848
 *             elif t == NPY_ULONGLONG:   f[0] = 81  #"Q"
 *             elif t == NPY_FLOAT:       f[0] = 102 #"f"
 *             elif t == NPY_DOUBLE:      f[0] = 100 #"d"             # <<<<<<<<<<<<<<
 *             elif t == NPY_LONGDOUBLE:  f[0] = 103 #"g"
 *             elif t == NPY_CFLOAT:      f[0] = 90; f[1] = 102; f += 1 # Zf
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_DOUBLE); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 848, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 848, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 848, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x64;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":849
 *             elif t == NPY_FLOAT:       f[0] = 102 #"f"
 *             elif t == NPY_DOUBLE:      f[0] = 100 #"d"
 *             elif t == NPY_LONGDOUBLE:  f[0] = 103 #"g"             # <<<<<<<<<<<<<<
 *             elif t == NPY_CFLOAT:      f[0] = 90; f[1] = 102; f += 1 # Zf
 *             elif t == NPY_CDOUBLE:     f[0] = 90; f[1] = 100; f += 1 # Zd
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_LONGDOUBLE); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 849, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 849, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 849, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x67;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":850
 *             elif t == NPY_DOUBLE:      f[0] = 100 #"d"
 *             elif t == NPY_LONGDOUBLE:  f[0] = 103 #"g"
 *             elif t == NPY_CFLOAT:      f[0] = 90; f[1] = 102; f += 1 # Zf             # <<<<<<<<<<<<<<
 *             elif t == NPY_CDOUBLE:     f[0] = 90; f[1] = 100; f += 1 # Zd
 *             elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_CFLOAT); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 850, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 850, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 850, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 90;
        (__pyx_v_f[1]) = 0x66;
        __pyx_v_f = (__pyx_v_f + 1);
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":851
 *             elif t == NPY_LONGDOUBLE:  f[0] = 103 #"g"
 *             elif t == NPY_CFLOAT:      f[0] = 90; f[1] = 102; f += 1 # Zf
 *             elif t == NPY_CDOUBLE:     f[0] = 90; f[1] = 100; f += 1 # Zd             # <<<<<<<<<<<<<<
 *             elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg
 *             elif t == NPY_OBJECT:      f[0] = 79 #"O"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_CDOUBLE); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 851, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 851, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 851, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 90;
        (__pyx_v_f[1]) = 0x64;
        __pyx_v_f = (__pyx_v_f + 1);
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":852
 *             elif t == NPY_CFLOAT:      f[0] = 90; f[1] = 102; f += 1 # Zf
 *             elif t == NPY_CDOUBLE:     f[0] = 90; f[1] = 100; f += 1 # Zd
 *             elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg             # <<<<<<<<<<<<<<
 *             elif t == NPY_OBJECT:      f[0] = 79 #"O"
 *             else:
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_CLONGDOUBLE); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 852, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 852, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 852, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 90;
        (__pyx_v_f[1]) = 0x67;
        __pyx_v_f = (__pyx_v_f + 1);
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":853
 *             elif t == NPY_CDOUBLE:     f[0] = 90; f[1] = 100; f += 1 # Zd
 *             elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg
 *             elif t == NPY_OBJECT:      f[0] = 79 #"O"             # <<<<<<<<<<<<<<
 *             else:
 *                 raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_OBJECT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 853, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 853, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 853, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (likely(__pyx_t_6)) {
        (__pyx_v_f[0]) = 79;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":855
 *             elif t == NPY_OBJECT:      f[0] = 79 #"O"
 *             else:
 *                 raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)             # <<<<<<<<<<<<<<
 *             f += 1
 *         else:
 */
      /*else*/ {
        __pyx_t_3 = PyUnicode_Format(__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_v_t); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 855, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 855, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_Raise(__pyx_t_4, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __PYX_ERR(1, 855, __pyx_L1_error)
      }
      __pyx_L15:;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":856
 *             else:
 *                 raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)
 *             f += 1             # <<<<<<<<<<<<<<
 *         else:
 *             # Cython ignores struct boundary information ("T{...}"),
 */
      __pyx_v_f = (__pyx_v_f + 1);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":831
 *         offset[0] += child.itemsize
 * 
 *         if not PyDataType_HASFIELDS(child):             # <<<<<<<<<<<<<<
 *             t = child.type_num
 *             if end - f < 5:
 */
      goto __pyx_L13;
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":860
 *             # Cython ignores struct boundary information ("T{...}"),
 *             # so don't output it
 *             f = _util_dtypestring(child, f, end, offset)             # <<<<<<<<<<<<<<
 *     return f
 * 
 */
    /*else*/ {
      __pyx_t_9 = __pyx_f_5numpy__util_dtypestring(__pyx_v_child, __pyx_v_f, __pyx_v_end, __pyx_v_offset); if (unlikely(__pyx_t_9 == ((char *)NULL))) __PYX_ERR(1, 860, __pyx_L1_error)
      __pyx_v_f = __pyx_t_9;
    }
    __pyx_L13:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":805
 *     cdef tuple fields
 * 
 *     for childname in descr.names:             # <<<<<<<<<<<<<<
 *         fields = descr.fields[childname]
 *         child, new_offset = fields
 */
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":861
 *             # so don't output it
 *             f = _util_dtypestring(child, f, end, offset)
 *     return f             # <<<<<<<<<<<<<<
 * 
 * 
 */
  __pyx_r = __pyx_v_f;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":796
 *         return ()
 * 
 * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL:             # <<<<<<<<<<<<<<
 *     # Recursive utility function used in __getbuffer__ to get format
 *     # string. The new location in the format string is returned.
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("numpy._util_dtypestring", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF((PyObject *)__pyx_v_child);
  __Pyx_XDECREF(__pyx_v_fields);
  __Pyx_XDECREF(__pyx_v_childname);
  __Pyx_XDECREF(__pyx_v_new_offset);
  __Pyx_XDECREF(__pyx_v_t);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":977
 * 
 * 
 * cdef inline void set_array_base(ndarray arr, object base):             # <<<<<<<<<<<<<<
 *      cdef PyObject* baseptr
 *      if base is None:
 */

static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_arr, PyObject *__pyx_v_base) {
  PyObject *__pyx_v_baseptr;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  __Pyx_RefNannySetupContext("set_array_base", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":979
 * cdef inline void set_array_base(ndarray arr, object base):
 *      cdef PyObject* baseptr
 *      if base is None:             # <<<<<<<<<<<<<<
 *          baseptr = NULL
 *      else:
 */
  __pyx_t_1 = (__pyx_v_base == Py_None);
  __pyx_t_2 = (__pyx_t_1 != 0);
  if (__pyx_t_2) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":980
 *      cdef PyObject* baseptr
 *      if base is None:
 *          baseptr = NULL             # <<<<<<<<<<<<<<
 *      else:
 *          Py_INCREF(base) # important to do this before decref below!
 */
    __pyx_v_baseptr = NULL;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":979
 * cdef inline void set_array_base(ndarray arr, object base):
 *      cdef PyObject* baseptr
 *      if base is None:             # <<<<<<<<<<<<<<
 *          baseptr = NULL
 *      else:
 */
    goto __pyx_L3;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":982
 *          baseptr = NULL
 *      else:
 *          Py_INCREF(base) # important to do this before decref below!             # <<<<<<<<<<<<<<
 *          baseptr = base
 *      Py_XDECREF(arr.base)
 */
  /*else*/ {
    Py_INCREF(__pyx_v_base);

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":983
 *      else:
 *          Py_INCREF(base) # important to do this before decref below!
 *          baseptr = base             # <<<<<<<<<<<<<<
 *      Py_XDECREF(arr.base)
 *      arr.base = baseptr
 */
    __pyx_v_baseptr = ((PyObject *)__pyx_v_base);
  }
  __pyx_L3:;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":984
 *          Py_INCREF(base) # important to do this before decref below!
 *          baseptr = base
 *      Py_XDECREF(arr.base)             # <<<<<<<<<<<<<<
 *      arr.base = baseptr
 * 
 */
  Py_XDECREF(__pyx_v_arr->base);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":985
 *          baseptr = base
 *      Py_XDECREF(arr.base)
 *      arr.base = baseptr             # <<<<<<<<<<<<<<
 * 
 * cdef inline object get_array_base(ndarray arr):
 */
  __pyx_v_arr->base = __pyx_v_baseptr;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":977
 * 
 * 
 * cdef inline void set_array_base(ndarray arr, object base):             # <<<<<<<<<<<<<<
 *      cdef PyObject* baseptr
 *      if base is None:
 */

  /* function exit code */
  __Pyx_RefNannyFinishContext();
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":987
 *      arr.base = baseptr
 * 
 * cdef inline object get_array_base(ndarray arr):             # <<<<<<<<<<<<<<
 *     if arr.base is NULL:
 *         return None
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__pyx_v_arr) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  __Pyx_RefNannySetupContext("get_array_base", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":988
 * 
 * cdef inline object get_array_base(ndarray arr):
 *     if arr.base is NULL:             # <<<<<<<<<<<<<<
 *         return None
 *     else:
 */
  __pyx_t_1 = ((__pyx_v_arr->base == NULL) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":989
 * cdef inline object get_array_base(ndarray arr):
 *     if arr.base is NULL:
 *         return None             # <<<<<<<<<<<<<<
 *     else:
 *         return arr.base
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_r = Py_None; __Pyx_INCREF(Py_None);
    goto __pyx_L0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":988
 * 
 * cdef inline object get_array_base(ndarray arr):
 *     if arr.base is NULL:             # <<<<<<<<<<<<<<
 *         return None
 *     else:
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":991
 *         return None
 *     else:
 *         return arr.base             # <<<<<<<<<<<<<<
 * 
 * 
 */
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(((PyObject *)__pyx_v_arr->base));
    __pyx_r = ((PyObject *)__pyx_v_arr->base);
    goto __pyx_L0;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":987
 *      arr.base = baseptr
 * 
 * cdef inline object get_array_base(ndarray arr):             # <<<<<<<<<<<<<<
 *     if arr.base is NULL:
 *         return None
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":996
 * # Versions of the import_* functions which are more suitable for
 * # Cython code.
 * cdef inline int import_array() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_array()
 */

static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("import_array", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":997
 * # Cython code.
 * cdef inline int import_array() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_array()
 *     except Exception:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":998
 * cdef inline int import_array() except -1:
 *     try:
 *         _import_array()             # <<<<<<<<<<<<<<
 *     except Exception:
 *         raise ImportError("numpy.core.multiarray failed to import")
 */
      __pyx_t_4 = _import_array(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 998, __pyx_L3_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":997
 * # Cython code.
 * cdef inline int import_array() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_array()
 *     except Exception:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":999
 *     try:
 *         _import_array()
 *     except Exception:             # <<<<<<<<<<<<<<
 *         raise ImportError("numpy.core.multiarray failed to import")
 * 
 */
    __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0])));
    if (__pyx_t_4) {
      __Pyx_AddTraceback("numpy.import_array", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 999, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_GOTREF(__pyx_t_7);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1000
 *         _import_array()
 *     except Exception:
 *         raise ImportError("numpy.core.multiarray failed to import")             # <<<<<<<<<<<<<<
 * 
 * cdef inline int import_umath() except -1:
 */
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__18, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1000, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_Raise(__pyx_t_8, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __PYX_ERR(1, 1000, __pyx_L5_except_error)
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":997
 * # Cython code.
 * cdef inline int import_array() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_array()
 *     except Exception:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L8_try_end:;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":996
 * # Versions of the import_* functions which are more suitable for
 * # Cython code.
 * cdef inline int import_array() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_array()
 */

  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("numpy.import_array", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1002
 *         raise ImportError("numpy.core.multiarray failed to import")
 * 
 * cdef inline int import_umath() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_umath()
 */

static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("import_umath", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1003
 * 
 * cdef inline int import_umath() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1004
 * cdef inline int import_umath() except -1:
 *     try:
 *         _import_umath()             # <<<<<<<<<<<<<<
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")
 */
      __pyx_t_4 = _import_umath(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 1004, __pyx_L3_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1003
 * 
 * cdef inline int import_umath() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1005
 *     try:
 *         _import_umath()
 *     except Exception:             # <<<<<<<<<<<<<<
 *         raise ImportError("numpy.core.umath failed to import")
 * 
 */
    __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0])));
    if (__pyx_t_4) {
      __Pyx_AddTraceback("numpy.import_umath", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 1005, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_GOTREF(__pyx_t_7);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1006
 *         _import_umath()
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")             # <<<<<<<<<<<<<<
 * 
 * cdef inline int import_ufunc() except -1:
 */
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__19, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1006, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_Raise(__pyx_t_8, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __PYX_ERR(1, 1006, __pyx_L5_except_error)
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1003
 * 
 * cdef inline int import_umath() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L8_try_end:;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1002
 *         raise ImportError("numpy.core.multiarray failed to import")
 * 
 * cdef inline int import_umath() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_umath()
 */

  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("numpy.import_umath", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1008
 *         raise ImportError("numpy.core.umath failed to import")
 * 
 * cdef inline int import_ufunc() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_umath()
 */

static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("import_ufunc", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1009
 * 
 * cdef inline int import_ufunc() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1010
 * cdef inline int import_ufunc() except -1:
 *     try:
 *         _import_umath()             # <<<<<<<<<<<<<<
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")
 */
      __pyx_t_4 = _import_umath(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 1010, __pyx_L3_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1009
 * 
 * cdef inline int import_ufunc() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1011
 *     try:
 *         _import_umath()
 *     except Exception:             # <<<<<<<<<<<<<<
 *         raise ImportError("numpy.core.umath failed to import")
 */
    __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0])));
    if (__pyx_t_4) {
      __Pyx_AddTraceback("numpy.import_ufunc", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 1011, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_GOTREF(__pyx_t_7);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1012
 *         _import_umath()
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")             # <<<<<<<<<<<<<<
 */
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__20, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1012, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_Raise(__pyx_t_8, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __PYX_ERR(1, 1012, __pyx_L5_except_error)
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1009
 * 
 * cdef inline int import_ufunc() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L8_try_end:;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1008
 *         raise ImportError("numpy.core.umath failed to import")
 * 
 * cdef inline int import_ufunc() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_umath()
 */

  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("numpy.import_ufunc", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyMethodDef __pyx_methods[] = {
  {0, 0, 0, 0}
};

#if PY_MAJOR_VERSION >= 3
#if CYTHON_PEP489_MULTI_PHASE_INIT
static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/
static int __pyx_pymod_exec_cpu_nms(PyObject* module); /*proto*/
static PyModuleDef_Slot __pyx_moduledef_slots[] = {
  {Py_mod_create, (void*)__pyx_pymod_create},
  {Py_mod_exec, (void*)__pyx_pymod_exec_cpu_nms},
  {0, NULL}
};
#endif

static struct PyModuleDef __pyx_moduledef = {
    PyModuleDef_HEAD_INIT,
    "cpu_nms",
    0, /* m_doc */
  #if CYTHON_PEP489_MULTI_PHASE_INIT
    0, /* m_size */
  #else
    -1, /* m_size */
  #endif
    __pyx_methods /* m_methods */,
  #if CYTHON_PEP489_MULTI_PHASE_INIT
    __pyx_moduledef_slots, /* m_slots */
  #else
    NULL, /* m_reload */
  #endif
    NULL, /* m_traverse */
    NULL, /* m_clear */
    NULL /* m_free */
};
#endif

static __Pyx_StringTabEntry __pyx_string_tab[] = {
  {&__pyx_kp_u_Format_string_allocated_too_shor, __pyx_k_Format_string_allocated_too_shor, sizeof(__pyx_k_Format_string_allocated_too_shor), 0, 1, 0, 0},
  {&__pyx_kp_u_Format_string_allocated_too_shor_2, __pyx_k_Format_string_allocated_too_shor_2, sizeof(__pyx_k_Format_string_allocated_too_shor_2), 0, 1, 0, 0},
  {&__pyx_n_s_ImportError, __pyx_k_ImportError, sizeof(__pyx_k_ImportError), 0, 0, 1, 1},
  {&__pyx_kp_u_Non_native_byte_order_not_suppor, __pyx_k_Non_native_byte_order_not_suppor, sizeof(__pyx_k_Non_native_byte_order_not_suppor), 0, 1, 0, 0},
  {&__pyx_n_s_RuntimeError, __pyx_k_RuntimeError, sizeof(__pyx_k_RuntimeError), 0, 0, 1, 1},
  {&__pyx_n_s_ValueError, __pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 0, 1, 1},
  {&__pyx_n_s_areas, __pyx_k_areas, sizeof(__pyx_k_areas), 0, 0, 1, 1},
  {&__pyx_n_s_argsort, __pyx_k_argsort, sizeof(__pyx_k_argsort), 0, 0, 1, 1},
  {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1},
  {&__pyx_n_s_cpu_nms, __pyx_k_cpu_nms, sizeof(__pyx_k_cpu_nms), 0, 0, 1, 1},
  {&__pyx_kp_s_cpu_nms_pyx, __pyx_k_cpu_nms_pyx, sizeof(__pyx_k_cpu_nms_pyx), 0, 0, 1, 0},
  {&__pyx_n_s_dets, __pyx_k_dets, sizeof(__pyx_k_dets), 0, 0, 1, 1},
  {&__pyx_n_s_dtype, __pyx_k_dtype, sizeof(__pyx_k_dtype), 0, 0, 1, 1},
  {&__pyx_n_s_h, __pyx_k_h, sizeof(__pyx_k_h), 0, 0, 1, 1},
  {&__pyx_n_s_i, __pyx_k_i, sizeof(__pyx_k_i), 0, 0, 1, 1},
  {&__pyx_n_s_i_2, __pyx_k_i_2, sizeof(__pyx_k_i_2), 0, 0, 1, 1},
  {&__pyx_n_s_iarea, __pyx_k_iarea, sizeof(__pyx_k_iarea), 0, 0, 1, 1},
  {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1},
  {&__pyx_n_s_int, __pyx_k_int, sizeof(__pyx_k_int), 0, 0, 1, 1},
  {&__pyx_n_s_inter, __pyx_k_inter, sizeof(__pyx_k_inter), 0, 0, 1, 1},
  {&__pyx_n_s_ix1, __pyx_k_ix1, sizeof(__pyx_k_ix1), 0, 0, 1, 1},
  {&__pyx_n_s_ix2, __pyx_k_ix2, sizeof(__pyx_k_ix2), 0, 0, 1, 1},
  {&__pyx_n_s_iy1, __pyx_k_iy1, sizeof(__pyx_k_iy1), 0, 0, 1, 1},
  {&__pyx_n_s_iy2, __pyx_k_iy2, sizeof(__pyx_k_iy2), 0, 0, 1, 1},
  {&__pyx_n_s_j, __pyx_k_j, sizeof(__pyx_k_j), 0, 0, 1, 1},
  {&__pyx_n_s_j_2, __pyx_k_j_2, sizeof(__pyx_k_j_2), 0, 0, 1, 1},
  {&__pyx_n_s_keep, __pyx_k_keep, sizeof(__pyx_k_keep), 0, 0, 1, 1},
  {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1},
  {&__pyx_kp_u_ndarray_is_not_C_contiguous, __pyx_k_ndarray_is_not_C_contiguous, sizeof(__pyx_k_ndarray_is_not_C_contiguous), 0, 1, 0, 0},
  {&__pyx_kp_u_ndarray_is_not_Fortran_contiguou, __pyx_k_ndarray_is_not_Fortran_contiguou, sizeof(__pyx_k_ndarray_is_not_Fortran_contiguou), 0, 1, 0, 0},
  {&__pyx_n_s_ndets, __pyx_k_ndets, sizeof(__pyx_k_ndets), 0, 0, 1, 1},
  {&__pyx_n_s_np, __pyx_k_np, sizeof(__pyx_k_np), 0, 0, 1, 1},
  {&__pyx_n_s_numpy, __pyx_k_numpy, sizeof(__pyx_k_numpy), 0, 0, 1, 1},
  {&__pyx_kp_s_numpy_core_multiarray_failed_to, __pyx_k_numpy_core_multiarray_failed_to, sizeof(__pyx_k_numpy_core_multiarray_failed_to), 0, 0, 1, 0},
  {&__pyx_kp_s_numpy_core_umath_failed_to_impor, __pyx_k_numpy_core_umath_failed_to_impor, sizeof(__pyx_k_numpy_core_umath_failed_to_impor), 0, 0, 1, 0},
  {&__pyx_n_s_order, __pyx_k_order, sizeof(__pyx_k_order), 0, 0, 1, 1},
  {&__pyx_n_s_ovr, __pyx_k_ovr, sizeof(__pyx_k_ovr), 0, 0, 1, 1},
  {&__pyx_n_s_range, __pyx_k_range, sizeof(__pyx_k_range), 0, 0, 1, 1},
  {&__pyx_n_s_scores, __pyx_k_scores, sizeof(__pyx_k_scores), 0, 0, 1, 1},
  {&__pyx_n_s_suppressed, __pyx_k_suppressed, sizeof(__pyx_k_suppressed), 0, 0, 1, 1},
  {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1},
  {&__pyx_n_s_thresh, __pyx_k_thresh, sizeof(__pyx_k_thresh), 0, 0, 1, 1},
  {&__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_k_unknown_dtype_code_in_numpy_pxd, sizeof(__pyx_k_unknown_dtype_code_in_numpy_pxd), 0, 1, 0, 0},
  {&__pyx_n_s_w, __pyx_k_w, sizeof(__pyx_k_w), 0, 0, 1, 1},
  {&__pyx_n_s_x1, __pyx_k_x1, sizeof(__pyx_k_x1), 0, 0, 1, 1},
  {&__pyx_n_s_x2, __pyx_k_x2, sizeof(__pyx_k_x2), 0, 0, 1, 1},
  {&__pyx_n_s_xx1, __pyx_k_xx1, sizeof(__pyx_k_xx1), 0, 0, 1, 1},
  {&__pyx_n_s_xx2, __pyx_k_xx2, sizeof(__pyx_k_xx2), 0, 0, 1, 1},
  {&__pyx_n_s_y1, __pyx_k_y1, sizeof(__pyx_k_y1), 0, 0, 1, 1},
  {&__pyx_n_s_y2, __pyx_k_y2, sizeof(__pyx_k_y2), 0, 0, 1, 1},
  {&__pyx_n_s_yy1, __pyx_k_yy1, sizeof(__pyx_k_yy1), 0, 0, 1, 1},
  {&__pyx_n_s_yy2, __pyx_k_yy2, sizeof(__pyx_k_yy2), 0, 0, 1, 1},
  {&__pyx_n_s_zeros, __pyx_k_zeros, sizeof(__pyx_k_zeros), 0, 0, 1, 1},
  {0, 0, 0, 0, 0, 0, 0}
};
static int __Pyx_InitCachedBuiltins(void) {
  __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(0, 43, __pyx_L1_error)
  __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(1, 229, __pyx_L1_error)
  __pyx_builtin_RuntimeError = __Pyx_GetBuiltinName(__pyx_n_s_RuntimeError); if (!__pyx_builtin_RuntimeError) __PYX_ERR(1, 810, __pyx_L1_error)
  __pyx_builtin_ImportError = __Pyx_GetBuiltinName(__pyx_n_s_ImportError); if (!__pyx_builtin_ImportError) __PYX_ERR(1, 1000, __pyx_L1_error)
  return 0;
  __pyx_L1_error:;
  return -1;
}

static int __Pyx_InitCachedConstants(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0);

  /* "cpu_nms.pyx":18
 * 
 * def cpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh):
 *     cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
 *     cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]
 */
  __pyx_slice_ = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice_)) __PYX_ERR(0, 18, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice_);
  __Pyx_GIVEREF(__pyx_slice_);
  __pyx_tuple__2 = PyTuple_Pack(2, __pyx_slice_, __pyx_int_0); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(0, 18, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__2);
  __Pyx_GIVEREF(__pyx_tuple__2);

  /* "cpu_nms.pyx":19
 * def cpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh):
 *     cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]
 *     cdef np.ndarray[np.float32_t, ndim=1] y2 = dets[:, 3]
 */
  __pyx_slice__3 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__3)) __PYX_ERR(0, 19, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__3);
  __Pyx_GIVEREF(__pyx_slice__3);
  __pyx_tuple__4 = PyTuple_Pack(2, __pyx_slice__3, __pyx_int_1); if (unlikely(!__pyx_tuple__4)) __PYX_ERR(0, 19, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__4);
  __Pyx_GIVEREF(__pyx_tuple__4);

  /* "cpu_nms.pyx":20
 *     cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
 *     cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] y2 = dets[:, 3]
 *     cdef np.ndarray[np.float32_t, ndim=1] scores = dets[:, 4]
 */
  __pyx_slice__5 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__5)) __PYX_ERR(0, 20, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__5);
  __Pyx_GIVEREF(__pyx_slice__5);
  __pyx_tuple__6 = PyTuple_Pack(2, __pyx_slice__5, __pyx_int_2); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(0, 20, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__6);
  __Pyx_GIVEREF(__pyx_tuple__6);

  /* "cpu_nms.pyx":21
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
 *     cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]
 *     cdef np.ndarray[np.float32_t, ndim=1] y2 = dets[:, 3]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] scores = dets[:, 4]
 * 
 */
  __pyx_slice__7 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__7)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__7);
  __Pyx_GIVEREF(__pyx_slice__7);
  __pyx_tuple__8 = PyTuple_Pack(2, __pyx_slice__7, __pyx_int_3); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(0, 21, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__8);
  __Pyx_GIVEREF(__pyx_tuple__8);

  /* "cpu_nms.pyx":22
 *     cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]
 *     cdef np.ndarray[np.float32_t, ndim=1] y2 = dets[:, 3]
 *     cdef np.ndarray[np.float32_t, ndim=1] scores = dets[:, 4]             # <<<<<<<<<<<<<<
 * 
 *     cdef np.ndarray[np.float32_t, ndim=1] areas = (x2 - x1 + 1) * (y2 - y1 + 1)
 */
  __pyx_slice__9 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__9)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__9);
  __Pyx_GIVEREF(__pyx_slice__9);
  __pyx_tuple__10 = PyTuple_Pack(2, __pyx_slice__9, __pyx_int_4); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__10);
  __Pyx_GIVEREF(__pyx_tuple__10);

  /* "cpu_nms.pyx":25
 * 
 *     cdef np.ndarray[np.float32_t, ndim=1] areas = (x2 - x1 + 1) * (y2 - y1 + 1)
 *     cdef np.ndarray[np.int_t, ndim=1] order = scores.argsort()[::-1]             # <<<<<<<<<<<<<<
 * 
 *     cdef int ndets = dets.shape[0]
 */
  __pyx_slice__11 = PySlice_New(Py_None, Py_None, __pyx_int_neg_1); if (unlikely(!__pyx_slice__11)) __PYX_ERR(0, 25, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__11);
  __Pyx_GIVEREF(__pyx_slice__11);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":229
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not C contiguous")             # <<<<<<<<<<<<<<
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)
 */
  __pyx_tuple__12 = PyTuple_Pack(1, __pyx_kp_u_ndarray_is_not_C_contiguous); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(1, 229, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__12);
  __Pyx_GIVEREF(__pyx_tuple__12);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":233
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not Fortran contiguous")             # <<<<<<<<<<<<<<
 * 
 *             info.buf = PyArray_DATA(self)
 */
  __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_u_ndarray_is_not_Fortran_contiguou); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(1, 233, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__13);
  __Pyx_GIVEREF(__pyx_tuple__13);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":263
 *                 if ((descr.byteorder == c'>' and little_endian) or
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")             # <<<<<<<<<<<<<<
 *                 if   t == NPY_BYTE:        f = "b"
 *                 elif t == NPY_UBYTE:       f = "B"
 */
  __pyx_tuple__14 = PyTuple_Pack(1, __pyx_kp_u_Non_native_byte_order_not_suppor); if (unlikely(!__pyx_tuple__14)) __PYX_ERR(1, 263, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__14);
  __Pyx_GIVEREF(__pyx_tuple__14);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":810
 * 
 *         if (end - f) - (new_offset - offset[0]) < 15:
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")             # <<<<<<<<<<<<<<
 * 
 *         if ((child.byteorder == c'>' and little_endian) or
 */
  __pyx_tuple__15 = PyTuple_Pack(1, __pyx_kp_u_Format_string_allocated_too_shor); if (unlikely(!__pyx_tuple__15)) __PYX_ERR(1, 810, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__15);
  __Pyx_GIVEREF(__pyx_tuple__15);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":814
 *         if ((child.byteorder == c'>' and little_endian) or
 *             (child.byteorder == c'<' and not little_endian)):
 *             raise ValueError(u"Non-native byte order not supported")             # <<<<<<<<<<<<<<
 *             # One could encode it in the format string and have Cython
 *             # complain instead, BUT: < and > in format strings also imply
 */
  __pyx_tuple__16 = PyTuple_Pack(1, __pyx_kp_u_Non_native_byte_order_not_suppor); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(1, 814, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__16);
  __Pyx_GIVEREF(__pyx_tuple__16);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":834
 *             t = child.type_num
 *             if end - f < 5:
 *                 raise RuntimeError(u"Format string allocated too short.")             # <<<<<<<<<<<<<<
 * 
 *             # Until ticket #99 is fixed, use integers to avoid warnings
 */
  __pyx_tuple__17 = PyTuple_Pack(1, __pyx_kp_u_Format_string_allocated_too_shor_2); if (unlikely(!__pyx_tuple__17)) __PYX_ERR(1, 834, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__17);
  __Pyx_GIVEREF(__pyx_tuple__17);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1000
 *         _import_array()
 *     except Exception:
 *         raise ImportError("numpy.core.multiarray failed to import")             # <<<<<<<<<<<<<<
 * 
 * cdef inline int import_umath() except -1:
 */
  __pyx_tuple__18 = PyTuple_Pack(1, __pyx_kp_s_numpy_core_multiarray_failed_to); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(1, 1000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__18);
  __Pyx_GIVEREF(__pyx_tuple__18);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1006
 *         _import_umath()
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")             # <<<<<<<<<<<<<<
 * 
 * cdef inline int import_ufunc() except -1:
 */
  __pyx_tuple__19 = PyTuple_Pack(1, __pyx_kp_s_numpy_core_umath_failed_to_impor); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(1, 1006, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__19);
  __Pyx_GIVEREF(__pyx_tuple__19);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1012
 *         _import_umath()
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")             # <<<<<<<<<<<<<<
 */
  __pyx_tuple__20 = PyTuple_Pack(1, __pyx_kp_s_numpy_core_umath_failed_to_impor); if (unlikely(!__pyx_tuple__20)) __PYX_ERR(1, 1012, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__20);
  __Pyx_GIVEREF(__pyx_tuple__20);

  /* "cpu_nms.pyx":17
 *     return a if a <= b else b
 * 
 * def cpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh):             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
 */
  __pyx_tuple__21 = PyTuple_Pack(29, __pyx_n_s_dets, __pyx_n_s_thresh, __pyx_n_s_x1, __pyx_n_s_y1, __pyx_n_s_x2, __pyx_n_s_y2, __pyx_n_s_scores, __pyx_n_s_areas, __pyx_n_s_order, __pyx_n_s_ndets, __pyx_n_s_suppressed, __pyx_n_s_i, __pyx_n_s_j, __pyx_n_s_i_2, __pyx_n_s_j_2, __pyx_n_s_ix1, __pyx_n_s_iy1, __pyx_n_s_ix2, __pyx_n_s_iy2, __pyx_n_s_iarea, __pyx_n_s_xx1, __pyx_n_s_yy1, __pyx_n_s_xx2, __pyx_n_s_yy2, __pyx_n_s_w, __pyx_n_s_h, __pyx_n_s_inter, __pyx_n_s_ovr, __pyx_n_s_keep); if (unlikely(!__pyx_tuple__21)) __PYX_ERR(0, 17, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__21);
  __Pyx_GIVEREF(__pyx_tuple__21);
  __pyx_codeobj__22 = (PyObject*)__Pyx_PyCode_New(2, 0, 29, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__21, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_cpu_nms_pyx, __pyx_n_s_cpu_nms, 17, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__22)) __PYX_ERR(0, 17, __pyx_L1_error)
  __Pyx_RefNannyFinishContext();
  return 0;
  __pyx_L1_error:;
  __Pyx_RefNannyFinishContext();
  return -1;
}

static int __Pyx_InitGlobals(void) {
  if (__Pyx_InitStrings(__pyx_string_tab) < 0) __PYX_ERR(0, 1, __pyx_L1_error);
  __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_2 = PyInt_FromLong(2); if (unlikely(!__pyx_int_2)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_3 = PyInt_FromLong(3); if (unlikely(!__pyx_int_3)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_4 = PyInt_FromLong(4); if (unlikely(!__pyx_int_4)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_neg_1 = PyInt_FromLong(-1); if (unlikely(!__pyx_int_neg_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  return 0;
  __pyx_L1_error:;
  return -1;
}

static int __Pyx_modinit_global_init_code(void); /*proto*/
static int __Pyx_modinit_variable_export_code(void); /*proto*/
static int __Pyx_modinit_function_export_code(void); /*proto*/
static int __Pyx_modinit_type_init_code(void); /*proto*/
static int __Pyx_modinit_type_import_code(void); /*proto*/
static int __Pyx_modinit_variable_import_code(void); /*proto*/
static int __Pyx_modinit_function_import_code(void); /*proto*/

static int __Pyx_modinit_global_init_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0);
  /*--- Global init code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_variable_export_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0);
  /*--- Variable export code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_function_export_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0);
  /*--- Function export code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_type_init_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0);
  /*--- Type init code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_type_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0);
  /*--- Type import code ---*/
  __pyx_ptype_7cpython_4type_type = __Pyx_ImportType(__Pyx_BUILTIN_MODULE_NAME, "type", 
  #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
  sizeof(PyTypeObject),
  #else
  sizeof(PyHeapTypeObject),
  #endif
  0); if (unlikely(!__pyx_ptype_7cpython_4type_type)) __PYX_ERR(2, 9, __pyx_L1_error)
  __pyx_ptype_5numpy_dtype = __Pyx_ImportType("numpy", "dtype", sizeof(PyArray_Descr), 0); if (unlikely(!__pyx_ptype_5numpy_dtype)) __PYX_ERR(1, 164, __pyx_L1_error)
  __pyx_ptype_5numpy_flatiter = __Pyx_ImportType("numpy", "flatiter", sizeof(PyArrayIterObject), 0); if (unlikely(!__pyx_ptype_5numpy_flatiter)) __PYX_ERR(1, 186, __pyx_L1_error)
  __pyx_ptype_5numpy_broadcast = __Pyx_ImportType("numpy", "broadcast", sizeof(PyArrayMultiIterObject), 0); if (unlikely(!__pyx_ptype_5numpy_broadcast)) __PYX_ERR(1, 190, __pyx_L1_error)
  __pyx_ptype_5numpy_ndarray = __Pyx_ImportType("numpy", "ndarray", sizeof(PyArrayObject), 0); if (unlikely(!__pyx_ptype_5numpy_ndarray)) __PYX_ERR(1, 199, __pyx_L1_error)
  __pyx_ptype_5numpy_ufunc = __Pyx_ImportType("numpy", "ufunc", sizeof(PyUFuncObject), 0); if (unlikely(!__pyx_ptype_5numpy_ufunc)) __PYX_ERR(1, 872, __pyx_L1_error)
  __Pyx_RefNannyFinishContext();
  return 0;
  __pyx_L1_error:;
  __Pyx_RefNannyFinishContext();
  return -1;
}

static int __Pyx_modinit_variable_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0);
  /*--- Variable import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_function_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0);
  /*--- Function import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}


#if PY_MAJOR_VERSION < 3
#ifdef CYTHON_NO_PYINIT_EXPORT
#define __Pyx_PyMODINIT_FUNC void
#else
#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC
#endif
#else
#ifdef CYTHON_NO_PYINIT_EXPORT
#define __Pyx_PyMODINIT_FUNC PyObject *
#else
#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC
#endif
#endif
#ifndef CYTHON_SMALL_CODE
#if defined(__clang__)
    #define CYTHON_SMALL_CODE
#elif defined(__GNUC__)
    #define CYTHON_SMALL_CODE __attribute__((optimize("Os")))
#else
    #define CYTHON_SMALL_CODE
#endif
#endif


#if PY_MAJOR_VERSION < 3
__Pyx_PyMODINIT_FUNC initcpu_nms(void) CYTHON_SMALL_CODE; /*proto*/
__Pyx_PyMODINIT_FUNC initcpu_nms(void)
#else
__Pyx_PyMODINIT_FUNC PyInit_cpu_nms(void) CYTHON_SMALL_CODE; /*proto*/
__Pyx_PyMODINIT_FUNC PyInit_cpu_nms(void)
#if CYTHON_PEP489_MULTI_PHASE_INIT
{
  return PyModuleDef_Init(&__pyx_moduledef);
}
static int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name) {
    PyObject *value = PyObject_GetAttrString(spec, from_name);
    int result = 0;
    if (likely(value)) {
        result = PyDict_SetItemString(moddict, to_name, value);
        Py_DECREF(value);
    } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) {
        PyErr_Clear();
    } else {
        result = -1;
    }
    return result;
}
static PyObject* __pyx_pymod_create(PyObject *spec, CYTHON_UNUSED PyModuleDef *def) {
    PyObject *module = NULL, *moddict, *modname;
    if (__pyx_m)
        return __Pyx_NewRef(__pyx_m);
    modname = PyObject_GetAttrString(spec, "name");
    if (unlikely(!modname)) goto bad;
    module = PyModule_NewObject(modname);
    Py_DECREF(modname);
    if (unlikely(!module)) goto bad;
    moddict = PyModule_GetDict(module);
    if (unlikely(!moddict)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__") < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__") < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__") < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__") < 0)) goto bad;
    return module;
bad:
    Py_XDECREF(module);
    return NULL;
}


static int __pyx_pymod_exec_cpu_nms(PyObject *__pyx_pyinit_module)
#endif
#endif
{
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannyDeclarations
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  if (__pyx_m && __pyx_m == __pyx_pyinit_module) return 0;
  #elif PY_MAJOR_VERSION >= 3
  if (__pyx_m) return __Pyx_NewRef(__pyx_m);
  #endif
  #if CYTHON_REFNANNY
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny");
if (!__Pyx_RefNanny) {
  PyErr_Clear();
  __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny");
  if (!__Pyx_RefNanny)
      Py_FatalError("failed to import 'refnanny' module");
}
#endif
  __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_cpu_nms(void)", 0);
  if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error)
  #ifdef __Pyx_CyFunction_USED
  if (__pyx_CyFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_FusedFunction_USED
  if (__pyx_FusedFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_Coroutine_USED
  if (__pyx_Coroutine_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_Generator_USED
  if (__pyx_Generator_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_AsyncGen_USED
  if (__pyx_AsyncGen_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_StopAsyncIteration_USED
  if (__pyx_StopAsyncIteration_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  /*--- Library function declarations ---*/
  /*--- Threads initialization code ---*/
  #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS
  #ifdef WITH_THREAD /* Python build with threading support? */
  PyEval_InitThreads();
  #endif
  #endif
  /*--- Module creation code ---*/
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  __pyx_m = __pyx_pyinit_module;
  Py_INCREF(__pyx_m);
  #else
  #if PY_MAJOR_VERSION < 3
  __pyx_m = Py_InitModule4("cpu_nms", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m);
  #else
  __pyx_m = PyModule_Create(&__pyx_moduledef);
  #endif
  if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error)
  Py_INCREF(__pyx_d);
  __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error)
  #if CYTHON_COMPILING_IN_PYPY
  Py_INCREF(__pyx_b);
  #endif
  if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error);
  /*--- Initialize various global constants etc. ---*/
  if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT)
  if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  if (__pyx_module_is_main_cpu_nms) {
    if (PyObject_SetAttrString(__pyx_m, "__name__", __pyx_n_s_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  }
  #if PY_MAJOR_VERSION >= 3
  {
    PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error)
    if (!PyDict_GetItemString(modules, "cpu_nms")) {
      if (unlikely(PyDict_SetItemString(modules, "cpu_nms", __pyx_m) < 0)) __PYX_ERR(0, 1, __pyx_L1_error)
    }
  }
  #endif
  /*--- Builtin init code ---*/
  if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Constants init code ---*/
  if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Global type/function init code ---*/
  (void)__Pyx_modinit_global_init_code();
  (void)__Pyx_modinit_variable_export_code();
  (void)__Pyx_modinit_function_export_code();
  (void)__Pyx_modinit_type_init_code();
  if (unlikely(__Pyx_modinit_type_import_code() != 0)) goto __pyx_L1_error;
  (void)__Pyx_modinit_variable_import_code();
  (void)__Pyx_modinit_function_import_code();
  /*--- Execution code ---*/
  #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED)
  if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif

  /* "cpu_nms.pyx":8
 * # --------------------------------------------------------
 * 
 * import numpy as np             # <<<<<<<<<<<<<<
 * cimport numpy as np
 * 
 */
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_numpy, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_np, __pyx_t_1) < 0) __PYX_ERR(0, 8, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "cpu_nms.pyx":17
 *     return a if a <= b else b
 * 
 * def cpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh):             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]
 *     cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
 */
  __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_7cpu_nms_1cpu_nms, NULL, __pyx_n_s_cpu_nms); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 17, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_cpu_nms, __pyx_t_1) < 0) __PYX_ERR(0, 17, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "cpu_nms.pyx":1
 * # --------------------------------------------------------             # <<<<<<<<<<<<<<
 * # Fast R-CNN
 * # Copyright (c) 2015 Microsoft
 */
  __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_1) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1008
 *         raise ImportError("numpy.core.umath failed to import")
 * 
 * cdef inline int import_ufunc() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_umath()
 */

  /*--- Wrapped vars code ---*/

  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  if (__pyx_m) {
    if (__pyx_d) {
      __Pyx_AddTraceback("init cpu_nms", 0, __pyx_lineno, __pyx_filename);
    }
    Py_DECREF(__pyx_m); __pyx_m = 0;
  } else if (!PyErr_Occurred()) {
    PyErr_SetString(PyExc_ImportError, "init cpu_nms");
  }
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  return (__pyx_m != NULL) ? 0 : -1;
  #elif PY_MAJOR_VERSION >= 3
  return __pyx_m;
  #else
  return;
  #endif
}

/* --- Runtime support code --- */
/* Refnanny */
#if CYTHON_REFNANNY
static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {
    PyObject *m = NULL, *p = NULL;
    void *r = NULL;
    m = PyImport_ImportModule((char *)modname);
    if (!m) goto end;
    p = PyObject_GetAttrString(m, (char *)"RefNannyAPI");
    if (!p) goto end;
    r = PyLong_AsVoidPtr(p);
end:
    Py_XDECREF(p);
    Py_XDECREF(m);
    return (__Pyx_RefNannyAPIStruct *)r;
}
#endif

/* PyObjectGetAttrStr */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {
    PyTypeObject* tp = Py_TYPE(obj);
    if (likely(tp->tp_getattro))
        return tp->tp_getattro(obj, attr_name);
#if PY_MAJOR_VERSION < 3
    if (likely(tp->tp_getattr))
        return tp->tp_getattr(obj, PyString_AS_STRING(attr_name));
#endif
    return PyObject_GetAttr(obj, attr_name);
}
#endif

/* GetBuiltinName */
static PyObject *__Pyx_GetBuiltinName(PyObject *name) {
    PyObject* result = __Pyx_PyObject_GetAttrStr(__pyx_b, name);
    if (unlikely(!result)) {
        PyErr_Format(PyExc_NameError,
#if PY_MAJOR_VERSION >= 3
            "name '%U' is not defined", name);
#else
            "name '%.200s' is not defined", PyString_AS_STRING(name));
#endif
    }
    return result;
}

/* RaiseArgTupleInvalid */
static void __Pyx_RaiseArgtupleInvalid(
    const char* func_name,
    int exact,
    Py_ssize_t num_min,
    Py_ssize_t num_max,
    Py_ssize_t num_found)
{
    Py_ssize_t num_expected;
    const char *more_or_less;
    if (num_found < num_min) {
        num_expected = num_min;
        more_or_less = "at least";
    } else {
        num_expected = num_max;
        more_or_less = "at most";
    }
    if (exact) {
        more_or_less = "exactly";
    }
    PyErr_Format(PyExc_TypeError,
                 "%.200s() takes %.8s %" CYTHON_FORMAT_SSIZE_T "d positional argument%.1s (%" CYTHON_FORMAT_SSIZE_T "d given)",
                 func_name, more_or_less, num_expected,
                 (num_expected == 1) ? "" : "s", num_found);
}

/* RaiseDoubleKeywords */
static void __Pyx_RaiseDoubleKeywordsError(
    const char* func_name,
    PyObject* kw_name)
{
    PyErr_Format(PyExc_TypeError,
        #if PY_MAJOR_VERSION >= 3
        "%s() got multiple values for keyword argument '%U'", func_name, kw_name);
        #else
        "%s() got multiple values for keyword argument '%s'", func_name,
        PyString_AsString(kw_name));
        #endif
}

/* ParseKeywords */
static int __Pyx_ParseOptionalKeywords(
    PyObject *kwds,
    PyObject **argnames[],
    PyObject *kwds2,
    PyObject *values[],
    Py_ssize_t num_pos_args,
    const char* function_name)
{
    PyObject *key = 0, *value = 0;
    Py_ssize_t pos = 0;
    PyObject*** name;
    PyObject*** first_kw_arg = argnames + num_pos_args;
    while (PyDict_Next(kwds, &pos, &key, &value)) {
        name = first_kw_arg;
        while (*name && (**name != key)) name++;
        if (*name) {
            values[name-argnames] = value;
            continue;
        }
        name = first_kw_arg;
        #if PY_MAJOR_VERSION < 3
        if (likely(PyString_CheckExact(key)) || likely(PyString_Check(key))) {
            while (*name) {
                if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key))
                        && _PyString_Eq(**name, key)) {
                    values[name-argnames] = value;
                    break;
                }
                name++;
            }
            if (*name) continue;
            else {
                PyObject*** argname = argnames;
                while (argname != first_kw_arg) {
                    if ((**argname == key) || (
                            (CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**argname) == PyString_GET_SIZE(key))
                             && _PyString_Eq(**argname, key))) {
                        goto arg_passed_twice;
                    }
                    argname++;
                }
            }
        } else
        #endif
        if (likely(PyUnicode_Check(key))) {
            while (*name) {
                int cmp = (**name == key) ? 0 :
                #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3
                    (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
                #endif
                    PyUnicode_Compare(**name, key);
                if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad;
                if (cmp == 0) {
                    values[name-argnames] = value;
                    break;
                }
                name++;
            }
            if (*name) continue;
            else {
                PyObject*** argname = argnames;
                while (argname != first_kw_arg) {
                    int cmp = (**argname == key) ? 0 :
                    #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3
                        (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                    #endif
                        PyUnicode_Compare(**argname, key);
                    if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad;
                    if (cmp == 0) goto arg_passed_twice;
                    argname++;
                }
            }
        } else
            goto invalid_keyword_type;
        if (kwds2) {
            if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad;
        } else {
            goto invalid_keyword;
        }
    }
    return 0;
arg_passed_twice:
    __Pyx_RaiseDoubleKeywordsError(function_name, key);
    goto bad;
invalid_keyword_type:
    PyErr_Format(PyExc_TypeError,
        "%.200s() keywords must be strings", function_name);
    goto bad;
invalid_keyword:
    PyErr_Format(PyExc_TypeError,
    #if PY_MAJOR_VERSION < 3
        "%.200s() got an unexpected keyword argument '%.200s'",
        function_name, PyString_AsString(key));
    #else
        "%s() got an unexpected keyword argument '%U'",
        function_name, key);
    #endif
bad:
    return -1;
}

/* ArgTypeTest */
static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact)
{
    if (unlikely(!type)) {
        PyErr_SetString(PyExc_SystemError, "Missing type object");
        return 0;
    }
    else if (exact) {
        #if PY_MAJOR_VERSION == 2
        if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1;
        #endif
    }
    else {
        if (likely(__Pyx_TypeCheck(obj, type))) return 1;
    }
    PyErr_Format(PyExc_TypeError,
        "Argument '%.200s' has incorrect type (expected %.200s, got %.200s)",
        name, type->tp_name, Py_TYPE(obj)->tp_name);
    return 0;
}

/* IsLittleEndian */
static CYTHON_INLINE int __Pyx_Is_Little_Endian(void)
{
  union {
    uint32_t u32;
    uint8_t u8[4];
  } S;
  S.u32 = 0x01020304;
  return S.u8[0] == 4;
}

/* BufferFormatCheck */
static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx,
                              __Pyx_BufFmt_StackElem* stack,
                              __Pyx_TypeInfo* type) {
  stack[0].field = &ctx->root;
  stack[0].parent_offset = 0;
  ctx->root.type = type;
  ctx->root.name = "buffer dtype";
  ctx->root.offset = 0;
  ctx->head = stack;
  ctx->head->field = &ctx->root;
  ctx->fmt_offset = 0;
  ctx->head->parent_offset = 0;
  ctx->new_packmode = '@';
  ctx->enc_packmode = '@';
  ctx->new_count = 1;
  ctx->enc_count = 0;
  ctx->enc_type = 0;
  ctx->is_complex = 0;
  ctx->is_valid_array = 0;
  ctx->struct_alignment = 0;
  while (type->typegroup == 'S') {
    ++ctx->head;
    ctx->head->field = type->fields;
    ctx->head->parent_offset = 0;
    type = type->fields->type;
  }
}
static int __Pyx_BufFmt_ParseNumber(const char** ts) {
    int count;
    const char* t = *ts;
    if (*t < '0' || *t > '9') {
      return -1;
    } else {
        count = *t++ - '0';
        while (*t >= '0' && *t < '9') {
            count *= 10;
            count += *t++ - '0';
        }
    }
    *ts = t;
    return count;
}
static int __Pyx_BufFmt_ExpectNumber(const char **ts) {
    int number = __Pyx_BufFmt_ParseNumber(ts);
    if (number == -1)
        PyErr_Format(PyExc_ValueError,\
                     "Does not understand character buffer dtype format string ('%c')", **ts);
    return number;
}
static void __Pyx_BufFmt_RaiseUnexpectedChar(char ch) {
  PyErr_Format(PyExc_ValueError,
               "Unexpected format string character: '%c'", ch);
}
static const char* __Pyx_BufFmt_DescribeTypeChar(char ch, int is_complex) {
  switch (ch) {
    case 'c': return "'char'";
    case 'b': return "'signed char'";
    case 'B': return "'unsigned char'";
    case 'h': return "'short'";
    case 'H': return "'unsigned short'";
    case 'i': return "'int'";
    case 'I': return "'unsigned int'";
    case 'l': return "'long'";
    case 'L': return "'unsigned long'";
    case 'q': return "'long long'";
    case 'Q': return "'unsigned long long'";
    case 'f': return (is_complex ? "'complex float'" : "'float'");
    case 'd': return (is_complex ? "'complex double'" : "'double'");
    case 'g': return (is_complex ? "'complex long double'" : "'long double'");
    case 'T': return "a struct";
    case 'O': return "Python object";
    case 'P': return "a pointer";
    case 's': case 'p': return "a string";
    case 0: return "end";
    default: return "unparseable format string";
  }
}
static size_t __Pyx_BufFmt_TypeCharToStandardSize(char ch, int is_complex) {
  switch (ch) {
    case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1;
    case 'h': case 'H': return 2;
    case 'i': case 'I': case 'l': case 'L': return 4;
    case 'q': case 'Q': return 8;
    case 'f': return (is_complex ? 8 : 4);
    case 'd': return (is_complex ? 16 : 8);
    case 'g': {
      PyErr_SetString(PyExc_ValueError, "Python does not define a standard format string size for long double ('g')..");
      return 0;
    }
    case 'O': case 'P': return sizeof(void*);
    default:
      __Pyx_BufFmt_RaiseUnexpectedChar(ch);
      return 0;
    }
}
static size_t __Pyx_BufFmt_TypeCharToNativeSize(char ch, int is_complex) {
  switch (ch) {
    case 'c': case 'b': case 'B': case 's': case 'p': return 1;
    case 'h': case 'H': return sizeof(short);
    case 'i': case 'I': return sizeof(int);
    case 'l': case 'L': return sizeof(long);
    #ifdef HAVE_LONG_LONG
    case 'q': case 'Q': return sizeof(PY_LONG_LONG);
    #endif
    case 'f': return sizeof(float) * (is_complex ? 2 : 1);
    case 'd': return sizeof(double) * (is_complex ? 2 : 1);
    case 'g': return sizeof(long double) * (is_complex ? 2 : 1);
    case 'O': case 'P': return sizeof(void*);
    default: {
      __Pyx_BufFmt_RaiseUnexpectedChar(ch);
      return 0;
    }
  }
}
typedef struct { char c; short x; } __Pyx_st_short;
typedef struct { char c; int x; } __Pyx_st_int;
typedef struct { char c; long x; } __Pyx_st_long;
typedef struct { char c; float x; } __Pyx_st_float;
typedef struct { char c; double x; } __Pyx_st_double;
typedef struct { char c; long double x; } __Pyx_st_longdouble;
typedef struct { char c; void *x; } __Pyx_st_void_p;
#ifdef HAVE_LONG_LONG
typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;
#endif
static size_t __Pyx_BufFmt_TypeCharToAlignment(char ch, CYTHON_UNUSED int is_complex) {
  switch (ch) {
    case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1;
    case 'h': case 'H': return sizeof(__Pyx_st_short) - sizeof(short);
    case 'i': case 'I': return sizeof(__Pyx_st_int) - sizeof(int);
    case 'l': case 'L': return sizeof(__Pyx_st_long) - sizeof(long);
#ifdef HAVE_LONG_LONG
    case 'q': case 'Q': return sizeof(__Pyx_st_longlong) - sizeof(PY_LONG_LONG);
#endif
    case 'f': return sizeof(__Pyx_st_float) - sizeof(float);
    case 'd': return sizeof(__Pyx_st_double) - sizeof(double);
    case 'g': return sizeof(__Pyx_st_longdouble) - sizeof(long double);
    case 'P': case 'O': return sizeof(__Pyx_st_void_p) - sizeof(void*);
    default:
      __Pyx_BufFmt_RaiseUnexpectedChar(ch);
      return 0;
    }
}
/* These are for computing the padding at the end of the struct to align
   on the first member of the struct. This will probably the same as above,
   but we don't have any guarantees.
 */
typedef struct { short x; char c; } __Pyx_pad_short;
typedef struct { int x; char c; } __Pyx_pad_int;
typedef struct { long x; char c; } __Pyx_pad_long;
typedef struct { float x; char c; } __Pyx_pad_float;
typedef struct { double x; char c; } __Pyx_pad_double;
typedef struct { long double x; char c; } __Pyx_pad_longdouble;
typedef struct { void *x; char c; } __Pyx_pad_void_p;
#ifdef HAVE_LONG_LONG
typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;
#endif
static size_t __Pyx_BufFmt_TypeCharToPadding(char ch, CYTHON_UNUSED int is_complex) {
  switch (ch) {
    case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1;
    case 'h': case 'H': return sizeof(__Pyx_pad_short) - sizeof(short);
    case 'i': case 'I': return sizeof(__Pyx_pad_int) - sizeof(int);
    case 'l': case 'L': return sizeof(__Pyx_pad_long) - sizeof(long);
#ifdef HAVE_LONG_LONG
    case 'q': case 'Q': return sizeof(__Pyx_pad_longlong) - sizeof(PY_LONG_LONG);
#endif
    case 'f': return sizeof(__Pyx_pad_float) - sizeof(float);
    case 'd': return sizeof(__Pyx_pad_double) - sizeof(double);
    case 'g': return sizeof(__Pyx_pad_longdouble) - sizeof(long double);
    case 'P': case 'O': return sizeof(__Pyx_pad_void_p) - sizeof(void*);
    default:
      __Pyx_BufFmt_RaiseUnexpectedChar(ch);
      return 0;
    }
}
static char __Pyx_BufFmt_TypeCharToGroup(char ch, int is_complex) {
  switch (ch) {
    case 'c':
        return 'H';
    case 'b': case 'h': case 'i':
    case 'l': case 'q': case 's': case 'p':
        return 'I';
    case 'B': case 'H': case 'I': case 'L': case 'Q':
        return 'U';
    case 'f': case 'd': case 'g':
        return (is_complex ? 'C' : 'R');
    case 'O':
        return 'O';
    case 'P':
        return 'P';
    default: {
      __Pyx_BufFmt_RaiseUnexpectedChar(ch);
      return 0;
    }
  }
}
static void __Pyx_BufFmt_RaiseExpected(__Pyx_BufFmt_Context* ctx) {
  if (ctx->head == NULL || ctx->head->field == &ctx->root) {
    const char* expected;
    const char* quote;
    if (ctx->head == NULL) {
      expected = "end";
      quote = "";
    } else {
      expected = ctx->head->field->type->name;
      quote = "'";
    }
    PyErr_Format(PyExc_ValueError,
                 "Buffer dtype mismatch, expected %s%s%s but got %s",
                 quote, expected, quote,
                 __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex));
  } else {
    __Pyx_StructField* field = ctx->head->field;
    __Pyx_StructField* parent = (ctx->head - 1)->field;
    PyErr_Format(PyExc_ValueError,
                 "Buffer dtype mismatch, expected '%s' but got %s in '%s.%s'",
                 field->type->name, __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex),
                 parent->type->name, field->name);
  }
}
static int __Pyx_BufFmt_ProcessTypeChunk(__Pyx_BufFmt_Context* ctx) {
  char group;
  size_t size, offset, arraysize = 1;
  if (ctx->enc_type == 0) return 0;
  if (ctx->head->field->type->arraysize[0]) {
    int i, ndim = 0;
    if (ctx->enc_type == 's' || ctx->enc_type == 'p') {
        ctx->is_valid_array = ctx->head->field->type->ndim == 1;
        ndim = 1;
        if (ctx->enc_count != ctx->head->field->type->arraysize[0]) {
            PyErr_Format(PyExc_ValueError,
                         "Expected a dimension of size %zu, got %zu",
                         ctx->head->field->type->arraysize[0], ctx->enc_count);
            return -1;
        }
    }
    if (!ctx->is_valid_array) {
      PyErr_Format(PyExc_ValueError, "Expected %d dimensions, got %d",
                   ctx->head->field->type->ndim, ndim);
      return -1;
    }
    for (i = 0; i < ctx->head->field->type->ndim; i++) {
      arraysize *= ctx->head->field->type->arraysize[i];
    }
    ctx->is_valid_array = 0;
    ctx->enc_count = 1;
  }
  group = __Pyx_BufFmt_TypeCharToGroup(ctx->enc_type, ctx->is_complex);
  do {
    __Pyx_StructField* field = ctx->head->field;
    __Pyx_TypeInfo* type = field->type;
    if (ctx->enc_packmode == '@' || ctx->enc_packmode == '^') {
      size = __Pyx_BufFmt_TypeCharToNativeSize(ctx->enc_type, ctx->is_complex);
    } else {
      size = __Pyx_BufFmt_TypeCharToStandardSize(ctx->enc_type, ctx->is_complex);
    }
    if (ctx->enc_packmode == '@') {
      size_t align_at = __Pyx_BufFmt_TypeCharToAlignment(ctx->enc_type, ctx->is_complex);
      size_t align_mod_offset;
      if (align_at == 0) return -1;
      align_mod_offset = ctx->fmt_offset % align_at;
      if (align_mod_offset > 0) ctx->fmt_offset += align_at - align_mod_offset;
      if (ctx->struct_alignment == 0)
          ctx->struct_alignment = __Pyx_BufFmt_TypeCharToPadding(ctx->enc_type,
                                                                 ctx->is_complex);
    }
    if (type->size != size || type->typegroup != group) {
      if (type->typegroup == 'C' && type->fields != NULL) {
        size_t parent_offset = ctx->head->parent_offset + field->offset;
        ++ctx->head;
        ctx->head->field = type->fields;
        ctx->head->parent_offset = parent_offset;
        continue;
      }
      if ((type->typegroup == 'H' || group == 'H') && type->size == size) {
      } else {
          __Pyx_BufFmt_RaiseExpected(ctx);
          return -1;
      }
    }
    offset = ctx->head->parent_offset + field->offset;
    if (ctx->fmt_offset != offset) {
      PyErr_Format(PyExc_ValueError,
                   "Buffer dtype mismatch; next field is at offset %" CYTHON_FORMAT_SSIZE_T "d but %" CYTHON_FORMAT_SSIZE_T "d expected",
                   (Py_ssize_t)ctx->fmt_offset, (Py_ssize_t)offset);
      return -1;
    }
    ctx->fmt_offset += size;
    if (arraysize)
      ctx->fmt_offset += (arraysize - 1) * size;
    --ctx->enc_count;
    while (1) {
      if (field == &ctx->root) {
        ctx->head = NULL;
        if (ctx->enc_count != 0) {
          __Pyx_BufFmt_RaiseExpected(ctx);
          return -1;
        }
        break;
      }
      ctx->head->field = ++field;
      if (field->type == NULL) {
        --ctx->head;
        field = ctx->head->field;
        continue;
      } else if (field->type->typegroup == 'S') {
        size_t parent_offset = ctx->head->parent_offset + field->offset;
        if (field->type->fields->type == NULL) continue;
        field = field->type->fields;
        ++ctx->head;
        ctx->head->field = field;
        ctx->head->parent_offset = parent_offset;
        break;
      } else {
        break;
      }
    }
  } while (ctx->enc_count);
  ctx->enc_type = 0;
  ctx->is_complex = 0;
  return 0;
}
static PyObject *
__pyx_buffmt_parse_array(__Pyx_BufFmt_Context* ctx, const char** tsp)
{
    const char *ts = *tsp;
    int i = 0, number;
    int ndim = ctx->head->field->type->ndim;
;
    ++ts;
    if (ctx->new_count != 1) {
        PyErr_SetString(PyExc_ValueError,
                        "Cannot handle repeated arrays in format string");
        return NULL;
    }
    if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
    while (*ts && *ts != ')') {
        switch (*ts) {
            case ' ': case '\f': case '\r': case '\n': case '\t': case '\v':  continue;
            default:  break;
        }
        number = __Pyx_BufFmt_ExpectNumber(&ts);
        if (number == -1) return NULL;
        if (i < ndim && (size_t) number != ctx->head->field->type->arraysize[i])
            return PyErr_Format(PyExc_ValueError,
                        "Expected a dimension of size %zu, got %d",
                        ctx->head->field->type->arraysize[i], number);
        if (*ts != ',' && *ts != ')')
            return PyErr_Format(PyExc_ValueError,
                                "Expected a comma in format string, got '%c'", *ts);
        if (*ts == ',') ts++;
        i++;
    }
    if (i != ndim)
        return PyErr_Format(PyExc_ValueError, "Expected %d dimension(s), got %d",
                            ctx->head->field->type->ndim, i);
    if (!*ts) {
        PyErr_SetString(PyExc_ValueError,
                        "Unexpected end of format string, expected ')'");
        return NULL;
    }
    ctx->is_valid_array = 1;
    ctx->new_count = 1;
    *tsp = ++ts;
    return Py_None;
}
static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts) {
  int got_Z = 0;
  while (1) {
    switch(*ts) {
      case 0:
        if (ctx->enc_type != 0 && ctx->head == NULL) {
          __Pyx_BufFmt_RaiseExpected(ctx);
          return NULL;
        }
        if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
        if (ctx->head != NULL) {
          __Pyx_BufFmt_RaiseExpected(ctx);
          return NULL;
        }
        return ts;
      case ' ':
      case '\r':
      case '\n':
        ++ts;
        break;
      case '<':
        if (!__Pyx_Is_Little_Endian()) {
          PyErr_SetString(PyExc_ValueError, "Little-endian buffer not supported on big-endian compiler");
          return NULL;
        }
        ctx->new_packmode = '=';
        ++ts;
        break;
      case '>':
      case '!':
        if (__Pyx_Is_Little_Endian()) {
          PyErr_SetString(PyExc_ValueError, "Big-endian buffer not supported on little-endian compiler");
          return NULL;
        }
        ctx->new_packmode = '=';
        ++ts;
        break;
      case '=':
      case '@':
      case '^':
        ctx->new_packmode = *ts++;
        break;
      case 'T':
        {
          const char* ts_after_sub;
          size_t i, struct_count = ctx->new_count;
          size_t struct_alignment = ctx->struct_alignment;
          ctx->new_count = 1;
          ++ts;
          if (*ts != '{') {
            PyErr_SetString(PyExc_ValueError, "Buffer acquisition: Expected '{' after 'T'");
            return NULL;
          }
          if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
          ctx->enc_type = 0;
          ctx->enc_count = 0;
          ctx->struct_alignment = 0;
          ++ts;
          ts_after_sub = ts;
          for (i = 0; i != struct_count; ++i) {
            ts_after_sub = __Pyx_BufFmt_CheckString(ctx, ts);
            if (!ts_after_sub) return NULL;
          }
          ts = ts_after_sub;
          if (struct_alignment) ctx->struct_alignment = struct_alignment;
        }
        break;
      case '}':
        {
          size_t alignment = ctx->struct_alignment;
          ++ts;
          if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
          ctx->enc_type = 0;
          if (alignment && ctx->fmt_offset % alignment) {
            ctx->fmt_offset += alignment - (ctx->fmt_offset % alignment);
          }
        }
        return ts;
      case 'x':
        if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
        ctx->fmt_offset += ctx->new_count;
        ctx->new_count = 1;
        ctx->enc_count = 0;
        ctx->enc_type = 0;
        ctx->enc_packmode = ctx->new_packmode;
        ++ts;
        break;
      case 'Z':
        got_Z = 1;
        ++ts;
        if (*ts != 'f' && *ts != 'd' && *ts != 'g') {
          __Pyx_BufFmt_RaiseUnexpectedChar('Z');
          return NULL;
        }
        CYTHON_FALLTHROUGH;
      case 'c': case 'b': case 'B': case 'h': case 'H': case 'i': case 'I':
      case 'l': case 'L': case 'q': case 'Q':
      case 'f': case 'd': case 'g':
      case 'O': case 'p':
        if (ctx->enc_type == *ts && got_Z == ctx->is_complex &&
            ctx->enc_packmode == ctx->new_packmode) {
          ctx->enc_count += ctx->new_count;
          ctx->new_count = 1;
          got_Z = 0;
          ++ts;
          break;
        }
        CYTHON_FALLTHROUGH;
      case 's':
        if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
        ctx->enc_count = ctx->new_count;
        ctx->enc_packmode = ctx->new_packmode;
        ctx->enc_type = *ts;
        ctx->is_complex = got_Z;
        ++ts;
        ctx->new_count = 1;
        got_Z = 0;
        break;
      case ':':
        ++ts;
        while(*ts != ':') ++ts;
        ++ts;
        break;
      case '(':
        if (!__pyx_buffmt_parse_array(ctx, &ts)) return NULL;
        break;
      default:
        {
          int number = __Pyx_BufFmt_ExpectNumber(&ts);
          if (number == -1) return NULL;
          ctx->new_count = (size_t)number;
        }
    }
  }
}

/* BufferGetAndValidate */
  static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info) {
  if (unlikely(info->buf == NULL)) return;
  if (info->suboffsets == __Pyx_minusones) info->suboffsets = NULL;
  __Pyx_ReleaseBuffer(info);
}
static void __Pyx_ZeroBuffer(Py_buffer* buf) {
  buf->buf = NULL;
  buf->obj = NULL;
  buf->strides = __Pyx_zeros;
  buf->shape = __Pyx_zeros;
  buf->suboffsets = __Pyx_minusones;
}
static int __Pyx__GetBufferAndValidate(
        Py_buffer* buf, PyObject* obj,  __Pyx_TypeInfo* dtype, int flags,
        int nd, int cast, __Pyx_BufFmt_StackElem* stack)
{
  buf->buf = NULL;
  if (unlikely(__Pyx_GetBuffer(obj, buf, flags) == -1)) {
    __Pyx_ZeroBuffer(buf);
    return -1;
  }
  if (unlikely(buf->ndim != nd)) {
    PyErr_Format(PyExc_ValueError,
                 "Buffer has wrong number of dimensions (expected %d, got %d)",
                 nd, buf->ndim);
    goto fail;
  }
  if (!cast) {
    __Pyx_BufFmt_Context ctx;
    __Pyx_BufFmt_Init(&ctx, stack, dtype);
    if (!__Pyx_BufFmt_CheckString(&ctx, buf->format)) goto fail;
  }
  if (unlikely((unsigned)buf->itemsize != dtype->size)) {
    PyErr_Format(PyExc_ValueError,
      "Item size of buffer (%" CYTHON_FORMAT_SSIZE_T "d byte%s) does not match size of '%s' (%" CYTHON_FORMAT_SSIZE_T "d byte%s)",
      buf->itemsize, (buf->itemsize > 1) ? "s" : "",
      dtype->name, (Py_ssize_t)dtype->size, (dtype->size > 1) ? "s" : "");
    goto fail;
  }
  if (buf->suboffsets == NULL) buf->suboffsets = __Pyx_minusones;
  return 0;
fail:;
  __Pyx_SafeReleaseBuffer(buf);
  return -1;
}

/* GetItemInt */
  static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {
    PyObject *r;
    if (!j) return NULL;
    r = PyObject_GetItem(o, j);
    Py_DECREF(j);
    return r;
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
                                                              CYTHON_NCP_UNUSED int wraparound,
                                                              CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    Py_ssize_t wrapped_i = i;
    if (wraparound & unlikely(i < 0)) {
        wrapped_i += PyList_GET_SIZE(o);
    }
    if ((!boundscheck) || likely((0 <= wrapped_i) & (wrapped_i < PyList_GET_SIZE(o)))) {
        PyObject *r = PyList_GET_ITEM(o, wrapped_i);
        Py_INCREF(r);
        return r;
    }
    return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
#else
    return PySequence_GetItem(o, i);
#endif
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
                                                              CYTHON_NCP_UNUSED int wraparound,
                                                              CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    Py_ssize_t wrapped_i = i;
    if (wraparound & unlikely(i < 0)) {
        wrapped_i += PyTuple_GET_SIZE(o);
    }
    if ((!boundscheck) || likely((0 <= wrapped_i) & (wrapped_i < PyTuple_GET_SIZE(o)))) {
        PyObject *r = PyTuple_GET_ITEM(o, wrapped_i);
        Py_INCREF(r);
        return r;
    }
    return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
#else
    return PySequence_GetItem(o, i);
#endif
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list,
                                                     CYTHON_NCP_UNUSED int wraparound,
                                                     CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS
    if (is_list || PyList_CheckExact(o)) {
        Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyList_GET_SIZE(o);
        if ((!boundscheck) || (likely((n >= 0) & (n < PyList_GET_SIZE(o))))) {
            PyObject *r = PyList_GET_ITEM(o, n);
            Py_INCREF(r);
            return r;
        }
    }
    else if (PyTuple_CheckExact(o)) {
        Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyTuple_GET_SIZE(o);
        if ((!boundscheck) || likely((n >= 0) & (n < PyTuple_GET_SIZE(o)))) {
            PyObject *r = PyTuple_GET_ITEM(o, n);
            Py_INCREF(r);
            return r;
        }
    } else {
        PySequenceMethods *m = Py_TYPE(o)->tp_as_sequence;
        if (likely(m && m->sq_item)) {
            if (wraparound && unlikely(i < 0) && likely(m->sq_length)) {
                Py_ssize_t l = m->sq_length(o);
                if (likely(l >= 0)) {
                    i += l;
                } else {
                    if (!PyErr_ExceptionMatches(PyExc_OverflowError))
                        return NULL;
                    PyErr_Clear();
                }
            }
            return m->sq_item(o, i);
        }
    }
#else
    if (is_list || PySequence_Check(o)) {
        return PySequence_GetItem(o, i);
    }
#endif
    return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
}

/* ObjectGetItem */
  #if CYTHON_USE_TYPE_SLOTS
static PyObject *__Pyx_PyObject_GetIndex(PyObject *obj, PyObject* index) {
    PyObject *runerr;
    Py_ssize_t key_value;
    PySequenceMethods *m = Py_TYPE(obj)->tp_as_sequence;
    if (unlikely(!(m && m->sq_item))) {
        PyErr_Format(PyExc_TypeError, "'%.200s' object is not subscriptable", Py_TYPE(obj)->tp_name);
        return NULL;
    }
    key_value = __Pyx_PyIndex_AsSsize_t(index);
    if (likely(key_value != -1 || !(runerr = PyErr_Occurred()))) {
        return __Pyx_GetItemInt_Fast(obj, key_value, 0, 1, 1);
    }
    if (PyErr_GivenExceptionMatches(runerr, PyExc_OverflowError)) {
        PyErr_Clear();
        PyErr_Format(PyExc_IndexError, "cannot fit '%.200s' into an index-sized integer", Py_TYPE(index)->tp_name);
    }
    return NULL;
}
static PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key) {
    PyMappingMethods *m = Py_TYPE(obj)->tp_as_mapping;
    if (likely(m && m->mp_subscript)) {
        return m->mp_subscript(obj, key);
    }
    return __Pyx_PyObject_GetIndex(obj, key);
}
#endif

/* ExtTypeTest */
  static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {
    if (unlikely(!type)) {
        PyErr_SetString(PyExc_SystemError, "Missing type object");
        return 0;
    }
    if (likely(__Pyx_TypeCheck(obj, type)))
        return 1;
    PyErr_Format(PyExc_TypeError, "Cannot convert %.200s to %.200s",
                 Py_TYPE(obj)->tp_name, type->tp_name);
    return 0;
}

/* PyIntBinop */
  #if !CYTHON_COMPILING_IN_PYPY
static PyObject* __Pyx_PyInt_AddObjC(PyObject *op1, PyObject *op2, CYTHON_UNUSED long intval, CYTHON_UNUSED int inplace) {
    #if PY_MAJOR_VERSION < 3
    if (likely(PyInt_CheckExact(op1))) {
        const long b = intval;
        long x;
        long a = PyInt_AS_LONG(op1);
            x = (long)((unsigned long)a + b);
            if (likely((x^a) >= 0 || (x^b) >= 0))
                return PyInt_FromLong(x);
            return PyLong_Type.tp_as_number->nb_add(op1, op2);
    }
    #endif
    #if CYTHON_USE_PYLONG_INTERNALS
    if (likely(PyLong_CheckExact(op1))) {
        const long b = intval;
        long a, x;
#ifdef HAVE_LONG_LONG
        const PY_LONG_LONG llb = intval;
        PY_LONG_LONG lla, llx;
#endif
        const digit* digits = ((PyLongObject*)op1)->ob_digit;
        const Py_ssize_t size = Py_SIZE(op1);
        if (likely(__Pyx_sst_abs(size) <= 1)) {
            a = likely(size) ? digits[0] : 0;
            if (size == -1) a = -a;
        } else {
            switch (size) {
                case -2:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        a = -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 2:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        a = (long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 2 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case -3:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        a = -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 3:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        a = (long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 3 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((((unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case -4:
                    if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                        a = -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                        lla = -(PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                case 4:
                    if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                        a = (long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0]));
                        break;
#ifdef HAVE_LONG_LONG
                    } else if (8 * sizeof(PY_LONG_LONG) - 1 > 4 * PyLong_SHIFT) {
                        lla = (PY_LONG_LONG) (((((((((unsigned PY_LONG_LONG)digits[3]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[2]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[1]) << PyLong_SHIFT) | (unsigned PY_LONG_LONG)digits[0]));
                        goto long_long;
#endif
                    }
                    CYTHON_FALLTHROUGH;
                default: return PyLong_Type.tp_as_number->nb_add(op1, op2);
            }
        }
                x = a + b;
            return PyLong_FromLong(x);
#ifdef HAVE_LONG_LONG
        long_long:
                llx = lla + llb;
            return PyLong_FromLongLong(llx);
#endif
        
        
    }
    #endif
    if (PyFloat_CheckExact(op1)) {
        const long b = intval;
        double a = PyFloat_AS_DOUBLE(op1);
            double result;
            PyFPE_START_PROTECT("add", return NULL)
            result = ((double)a) + (double)b;
            PyFPE_END_PROTECT(result)
            return PyFloat_FromDouble(result);
    }
    return (inplace ? PyNumber_InPlaceAdd : PyNumber_Add)(op1, op2);
}
#endif

/* PyCFunctionFastCall */
  #if CYTHON_FAST_PYCCALL
static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) {
    PyCFunctionObject *func = (PyCFunctionObject*)func_obj;
    PyCFunction meth = PyCFunction_GET_FUNCTION(func);
    PyObject *self = PyCFunction_GET_SELF(func);
    int flags = PyCFunction_GET_FLAGS(func);
    assert(PyCFunction_Check(func));
    assert(METH_FASTCALL == (flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS)));
    assert(nargs >= 0);
    assert(nargs == 0 || args != NULL);
    /* _PyCFunction_FastCallDict() must not be called with an exception set,
       because it may clear it (directly or indirectly) and so the
       caller loses its exception */
    assert(!PyErr_Occurred());
    if ((PY_VERSION_HEX < 0x030700A0) || unlikely(flags & METH_KEYWORDS)) {
        return (*((__Pyx_PyCFunctionFastWithKeywords)meth)) (self, args, nargs, NULL);
    } else {
        return (*((__Pyx_PyCFunctionFast)meth)) (self, args, nargs);
    }
}
#endif

/* PyFunctionFastCall */
  #if CYTHON_FAST_PYCALL
#include "frameobject.h"
static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na,
                                               PyObject *globals) {
    PyFrameObject *f;
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    PyObject **fastlocals;
    Py_ssize_t i;
    PyObject *result;
    assert(globals != NULL);
    /* XXX Perhaps we should create a specialized
       PyFrame_New() that doesn't take locals, but does
       take builtins without sanity checking them.
       */
    assert(tstate != NULL);
    f = PyFrame_New(tstate, co, globals, NULL);
    if (f == NULL) {
        return NULL;
    }
    fastlocals = f->f_localsplus;
    for (i = 0; i < na; i++) {
        Py_INCREF(*args);
        fastlocals[i] = *args++;
    }
    result = PyEval_EvalFrameEx(f,0);
    ++tstate->recursion_depth;
    Py_DECREF(f);
    --tstate->recursion_depth;
    return result;
}
#if 1 || PY_VERSION_HEX < 0x030600B1
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs) {
    PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func);
    PyObject *globals = PyFunction_GET_GLOBALS(func);
    PyObject *argdefs = PyFunction_GET_DEFAULTS(func);
    PyObject *closure;
#if PY_MAJOR_VERSION >= 3
    PyObject *kwdefs;
#endif
    PyObject *kwtuple, **k;
    PyObject **d;
    Py_ssize_t nd;
    Py_ssize_t nk;
    PyObject *result;
    assert(kwargs == NULL || PyDict_Check(kwargs));
    nk = kwargs ? PyDict_Size(kwargs) : 0;
    if (Py_EnterRecursiveCall((char*)" while calling a Python object")) {
        return NULL;
    }
    if (
#if PY_MAJOR_VERSION >= 3
            co->co_kwonlyargcount == 0 &&
#endif
            likely(kwargs == NULL || nk == 0) &&
            co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) {
        if (argdefs == NULL && co->co_argcount == nargs) {
            result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals);
            goto done;
        }
        else if (nargs == 0 && argdefs != NULL
                 && co->co_argcount == Py_SIZE(argdefs)) {
            /* function called with no arguments, but all parameters have
               a default value: use default values as arguments .*/
            args = &PyTuple_GET_ITEM(argdefs, 0);
            result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals);
            goto done;
        }
    }
    if (kwargs != NULL) {
        Py_ssize_t pos, i;
        kwtuple = PyTuple_New(2 * nk);
        if (kwtuple == NULL) {
            result = NULL;
            goto done;
        }
        k = &PyTuple_GET_ITEM(kwtuple, 0);
        pos = i = 0;
        while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) {
            Py_INCREF(k[i]);
            Py_INCREF(k[i+1]);
            i += 2;
        }
        nk = i / 2;
    }
    else {
        kwtuple = NULL;
        k = NULL;
    }
    closure = PyFunction_GET_CLOSURE(func);
#if PY_MAJOR_VERSION >= 3
    kwdefs = PyFunction_GET_KW_DEFAULTS(func);
#endif
    if (argdefs != NULL) {
        d = &PyTuple_GET_ITEM(argdefs, 0);
        nd = Py_SIZE(argdefs);
    }
    else {
        d = NULL;
        nd = 0;
    }
#if PY_MAJOR_VERSION >= 3
    result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL,
                               args, nargs,
                               k, (int)nk,
                               d, (int)nd, kwdefs, closure);
#else
    result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL,
                               args, nargs,
                               k, (int)nk,
                               d, (int)nd, closure);
#endif
    Py_XDECREF(kwtuple);
done:
    Py_LeaveRecursiveCall();
    return result;
}
#endif
#endif

/* PyObjectCall */
  #if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {
    PyObject *result;
    ternaryfunc call = func->ob_type->tp_call;
    if (unlikely(!call))
        return PyObject_Call(func, arg, kw);
    if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
        return NULL;
    result = (*call)(func, arg, kw);
    Py_LeaveRecursiveCall();
    if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
        PyErr_SetString(
            PyExc_SystemError,
            "NULL result without error in PyObject_Call");
    }
    return result;
}
#endif

/* PyObjectCallMethO */
  #if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {
    PyObject *self, *result;
    PyCFunction cfunc;
    cfunc = PyCFunction_GET_FUNCTION(func);
    self = PyCFunction_GET_SELF(func);
    if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
        return NULL;
    result = cfunc(self, arg);
    Py_LeaveRecursiveCall();
    if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
        PyErr_SetString(
            PyExc_SystemError,
            "NULL result without error in PyObject_Call");
    }
    return result;
}
#endif

/* PyObjectCallOneArg */
  #if CYTHON_COMPILING_IN_CPYTHON
static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) {
    PyObject *result;
    PyObject *args = PyTuple_New(1);
    if (unlikely(!args)) return NULL;
    Py_INCREF(arg);
    PyTuple_SET_ITEM(args, 0, arg);
    result = __Pyx_PyObject_Call(func, args, NULL);
    Py_DECREF(args);
    return result;
}
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
#if CYTHON_FAST_PYCALL
    if (PyFunction_Check(func)) {
        return __Pyx_PyFunction_FastCall(func, &arg, 1);
    }
#endif
    if (likely(PyCFunction_Check(func))) {
        if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) {
            return __Pyx_PyObject_CallMethO(func, arg);
#if CYTHON_FAST_PYCCALL
        } else if (PyCFunction_GET_FLAGS(func) & METH_FASTCALL) {
            return __Pyx_PyCFunction_FastCall(func, &arg, 1);
#endif
        }
    }
    return __Pyx__PyObject_CallOneArg(func, arg);
}
#else
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
    PyObject *result;
    PyObject *args = PyTuple_Pack(1, arg);
    if (unlikely(!args)) return NULL;
    result = __Pyx_PyObject_Call(func, args, NULL);
    Py_DECREF(args);
    return result;
}
#endif

/* PyObjectCallNoArg */
  #if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) {
#if CYTHON_FAST_PYCALL
    if (PyFunction_Check(func)) {
        return __Pyx_PyFunction_FastCall(func, NULL, 0);
    }
#endif
#ifdef __Pyx_CyFunction_USED
    if (likely(PyCFunction_Check(func) || __Pyx_TypeCheck(func, __pyx_CyFunctionType))) {
#else
    if (likely(PyCFunction_Check(func))) {
#endif
        if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) {
            return __Pyx_PyObject_CallMethO(func, NULL);
        }
    }
    return __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL);
}
#endif

/* GetModuleGlobalName */
    static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name) {
    PyObject *result;
#if !CYTHON_AVOID_BORROWED_REFS
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1
    result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash);
    if (likely(result)) {
        Py_INCREF(result);
    } else if (unlikely(PyErr_Occurred())) {
        result = NULL;
    } else {
#else
    result = PyDict_GetItem(__pyx_d, name);
    if (likely(result)) {
        Py_INCREF(result);
    } else {
#endif
#else
    result = PyObject_GetItem(__pyx_d, name);
    if (!result) {
        PyErr_Clear();
#endif
        result = __Pyx_GetBuiltinName(name);
    }
    return result;
}

/* BufferIndexError */
        static void __Pyx_RaiseBufferIndexError(int axis) {
  PyErr_Format(PyExc_IndexError,
     "Out of bounds on buffer access (axis %d)", axis);
}

/* PyErrFetchRestore */
        #if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    tmp_type = tstate->curexc_type;
    tmp_value = tstate->curexc_value;
    tmp_tb = tstate->curexc_traceback;
    tstate->curexc_type = type;
    tstate->curexc_value = value;
    tstate->curexc_traceback = tb;
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
}
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
    *type = tstate->curexc_type;
    *value = tstate->curexc_value;
    *tb = tstate->curexc_traceback;
    tstate->curexc_type = 0;
    tstate->curexc_value = 0;
    tstate->curexc_traceback = 0;
}
#endif

/* RaiseException */
        #if PY_MAJOR_VERSION < 3
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb,
                        CYTHON_UNUSED PyObject *cause) {
    __Pyx_PyThreadState_declare
    Py_XINCREF(type);
    if (!value || value == Py_None)
        value = NULL;
    else
        Py_INCREF(value);
    if (!tb || tb == Py_None)
        tb = NULL;
    else {
        Py_INCREF(tb);
        if (!PyTraceBack_Check(tb)) {
            PyErr_SetString(PyExc_TypeError,
                "raise: arg 3 must be a traceback or None");
            goto raise_error;
        }
    }
    if (PyType_Check(type)) {
#if CYTHON_COMPILING_IN_PYPY
        if (!value) {
            Py_INCREF(Py_None);
            value = Py_None;
        }
#endif
        PyErr_NormalizeException(&type, &value, &tb);
    } else {
        if (value) {
            PyErr_SetString(PyExc_TypeError,
                "instance exception may not have a separate value");
            goto raise_error;
        }
        value = type;
        type = (PyObject*) Py_TYPE(type);
        Py_INCREF(type);
        if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) {
            PyErr_SetString(PyExc_TypeError,
                "raise: exception class must be a subclass of BaseException");
            goto raise_error;
        }
    }
    __Pyx_PyThreadState_assign
    __Pyx_ErrRestore(type, value, tb);
    return;
raise_error:
    Py_XDECREF(value);
    Py_XDECREF(type);
    Py_XDECREF(tb);
    return;
}
#else
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {
    PyObject* owned_instance = NULL;
    if (tb == Py_None) {
        tb = 0;
    } else if (tb && !PyTraceBack_Check(tb)) {
        PyErr_SetString(PyExc_TypeError,
            "raise: arg 3 must be a traceback or None");
        goto bad;
    }
    if (value == Py_None)
        value = 0;
    if (PyExceptionInstance_Check(type)) {
        if (value) {
            PyErr_SetString(PyExc_TypeError,
                "instance exception may not have a separate value");
            goto bad;
        }
        value = type;
        type = (PyObject*) Py_TYPE(value);
    } else if (PyExceptionClass_Check(type)) {
        PyObject *instance_class = NULL;
        if (value && PyExceptionInstance_Check(value)) {
            instance_class = (PyObject*) Py_TYPE(value);
            if (instance_class != type) {
                int is_subclass = PyObject_IsSubclass(instance_class, type);
                if (!is_subclass) {
                    instance_class = NULL;
                } else if (unlikely(is_subclass == -1)) {
                    goto bad;
                } else {
                    type = instance_class;
                }
            }
        }
        if (!instance_class) {
            PyObject *args;
            if (!value)
                args = PyTuple_New(0);
            else if (PyTuple_Check(value)) {
                Py_INCREF(value);
                args = value;
            } else
                args = PyTuple_Pack(1, value);
            if (!args)
                goto bad;
            owned_instance = PyObject_Call(type, args, NULL);
            Py_DECREF(args);
            if (!owned_instance)
                goto bad;
            value = owned_instance;
            if (!PyExceptionInstance_Check(value)) {
                PyErr_Format(PyExc_TypeError,
                             "calling %R should have returned an instance of "
                             "BaseException, not %R",
                             type, Py_TYPE(value));
                goto bad;
            }
        }
    } else {
        PyErr_SetString(PyExc_TypeError,
            "raise: exception class must be a subclass of BaseException");
        goto bad;
    }
    if (cause) {
        PyObject *fixed_cause;
        if (cause == Py_None) {
            fixed_cause = NULL;
        } else if (PyExceptionClass_Check(cause)) {
            fixed_cause = PyObject_CallObject(cause, NULL);
            if (fixed_cause == NULL)
                goto bad;
        } else if (PyExceptionInstance_Check(cause)) {
            fixed_cause = cause;
            Py_INCREF(fixed_cause);
        } else {
            PyErr_SetString(PyExc_TypeError,
                            "exception causes must derive from "
                            "BaseException");
            goto bad;
        }
        PyException_SetCause(value, fixed_cause);
    }
    PyErr_SetObject(type, value);
    if (tb) {
#if CYTHON_COMPILING_IN_PYPY
        PyObject *tmp_type, *tmp_value, *tmp_tb;
        PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb);
        Py_INCREF(tb);
        PyErr_Restore(tmp_type, tmp_value, tb);
        Py_XDECREF(tmp_tb);
#else
        PyThreadState *tstate = __Pyx_PyThreadState_Current;
        PyObject* tmp_tb = tstate->curexc_traceback;
        if (tb != tmp_tb) {
            Py_INCREF(tb);
            tstate->curexc_traceback = tb;
            Py_XDECREF(tmp_tb);
        }
#endif
    }
bad:
    Py_XDECREF(owned_instance);
    return;
}
#endif

/* DictGetItem */
        #if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY
static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) {
    PyObject *value;
    value = PyDict_GetItemWithError(d, key);
    if (unlikely(!value)) {
        if (!PyErr_Occurred()) {
            PyObject* args = PyTuple_Pack(1, key);
            if (likely(args))
                PyErr_SetObject(PyExc_KeyError, args);
            Py_XDECREF(args);
        }
        return NULL;
    }
    Py_INCREF(value);
    return value;
}
#endif

/* RaiseTooManyValuesToUnpack */
        static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) {
    PyErr_Format(PyExc_ValueError,
                 "too many values to unpack (expected %" CYTHON_FORMAT_SSIZE_T "d)", expected);
}

/* RaiseNeedMoreValuesToUnpack */
        static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) {
    PyErr_Format(PyExc_ValueError,
                 "need more than %" CYTHON_FORMAT_SSIZE_T "d value%.1s to unpack",
                 index, (index == 1) ? "" : "s");
}

/* RaiseNoneIterError */
        static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) {
    PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
}

/* SaveResetException */
        #if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
    #if PY_VERSION_HEX >= 0x030700A2
    *type = tstate->exc_state.exc_type;
    *value = tstate->exc_state.exc_value;
    *tb = tstate->exc_state.exc_traceback;
    #else
    *type = tstate->exc_type;
    *value = tstate->exc_value;
    *tb = tstate->exc_traceback;
    #endif
    Py_XINCREF(*type);
    Py_XINCREF(*value);
    Py_XINCREF(*tb);
}
static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    #if PY_VERSION_HEX >= 0x030700A2
    tmp_type = tstate->exc_state.exc_type;
    tmp_value = tstate->exc_state.exc_value;
    tmp_tb = tstate->exc_state.exc_traceback;
    tstate->exc_state.exc_type = type;
    tstate->exc_state.exc_value = value;
    tstate->exc_state.exc_traceback = tb;
    #else
    tmp_type = tstate->exc_type;
    tmp_value = tstate->exc_value;
    tmp_tb = tstate->exc_traceback;
    tstate->exc_type = type;
    tstate->exc_value = value;
    tstate->exc_traceback = tb;
    #endif
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
}
#endif

/* PyErrExceptionMatches */
        #if CYTHON_FAST_THREAD_STATE
static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
    Py_ssize_t i, n;
    n = PyTuple_GET_SIZE(tuple);
#if PY_MAJOR_VERSION >= 3
    for (i=0; icurexc_type;
    if (exc_type == err) return 1;
    if (unlikely(!exc_type)) return 0;
    if (unlikely(PyTuple_Check(err)))
        return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err);
    return __Pyx_PyErr_GivenExceptionMatches(exc_type, err);
}
#endif

/* GetException */
        #if CYTHON_FAST_THREAD_STATE
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
#else
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) {
#endif
    PyObject *local_type, *local_value, *local_tb;
#if CYTHON_FAST_THREAD_STATE
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    local_type = tstate->curexc_type;
    local_value = tstate->curexc_value;
    local_tb = tstate->curexc_traceback;
    tstate->curexc_type = 0;
    tstate->curexc_value = 0;
    tstate->curexc_traceback = 0;
#else
    PyErr_Fetch(&local_type, &local_value, &local_tb);
#endif
    PyErr_NormalizeException(&local_type, &local_value, &local_tb);
#if CYTHON_FAST_THREAD_STATE
    if (unlikely(tstate->curexc_type))
#else
    if (unlikely(PyErr_Occurred()))
#endif
        goto bad;
    #if PY_MAJOR_VERSION >= 3
    if (local_tb) {
        if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0))
            goto bad;
    }
    #endif
    Py_XINCREF(local_tb);
    Py_XINCREF(local_type);
    Py_XINCREF(local_value);
    *type = local_type;
    *value = local_value;
    *tb = local_tb;
#if CYTHON_FAST_THREAD_STATE
    #if PY_VERSION_HEX >= 0x030700A2
    tmp_type = tstate->exc_state.exc_type;
    tmp_value = tstate->exc_state.exc_value;
    tmp_tb = tstate->exc_state.exc_traceback;
    tstate->exc_state.exc_type = local_type;
    tstate->exc_state.exc_value = local_value;
    tstate->exc_state.exc_traceback = local_tb;
    #else
    tmp_type = tstate->exc_type;
    tmp_value = tstate->exc_value;
    tmp_tb = tstate->exc_traceback;
    tstate->exc_type = local_type;
    tstate->exc_value = local_value;
    tstate->exc_traceback = local_tb;
    #endif
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
#else
    PyErr_SetExcInfo(local_type, local_value, local_tb);
#endif
    return 0;
bad:
    *type = 0;
    *value = 0;
    *tb = 0;
    Py_XDECREF(local_type);
    Py_XDECREF(local_value);
    Py_XDECREF(local_tb);
    return -1;
}

/* Import */
          static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {
    PyObject *empty_list = 0;
    PyObject *module = 0;
    PyObject *global_dict = 0;
    PyObject *empty_dict = 0;
    PyObject *list;
    #if PY_MAJOR_VERSION < 3
    PyObject *py_import;
    py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import);
    if (!py_import)
        goto bad;
    #endif
    if (from_list)
        list = from_list;
    else {
        empty_list = PyList_New(0);
        if (!empty_list)
            goto bad;
        list = empty_list;
    }
    global_dict = PyModule_GetDict(__pyx_m);
    if (!global_dict)
        goto bad;
    empty_dict = PyDict_New();
    if (!empty_dict)
        goto bad;
    {
        #if PY_MAJOR_VERSION >= 3
        if (level == -1) {
            if (strchr(__Pyx_MODULE_NAME, '.')) {
                module = PyImport_ImportModuleLevelObject(
                    name, global_dict, empty_dict, list, 1);
                if (!module) {
                    if (!PyErr_ExceptionMatches(PyExc_ImportError))
                        goto bad;
                    PyErr_Clear();
                }
            }
            level = 0;
        }
        #endif
        if (!module) {
            #if PY_MAJOR_VERSION < 3
            PyObject *py_level = PyInt_FromLong(level);
            if (!py_level)
                goto bad;
            module = PyObject_CallFunctionObjArgs(py_import,
                name, global_dict, empty_dict, list, py_level, NULL);
            Py_DECREF(py_level);
            #else
            module = PyImport_ImportModuleLevelObject(
                name, global_dict, empty_dict, list, level);
            #endif
        }
    }
bad:
    #if PY_MAJOR_VERSION < 3
    Py_XDECREF(py_import);
    #endif
    Py_XDECREF(empty_list);
    Py_XDECREF(empty_dict);
    return module;
}

/* CLineInTraceback */
          #ifndef CYTHON_CLINE_IN_TRACEBACK
static int __Pyx_CLineForTraceback(CYTHON_UNUSED PyThreadState *tstate, int c_line) {
    PyObject *use_cline;
    PyObject *ptype, *pvalue, *ptraceback;
#if CYTHON_COMPILING_IN_CPYTHON
    PyObject **cython_runtime_dict;
#endif
    __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback);
#if CYTHON_COMPILING_IN_CPYTHON
    cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime);
    if (likely(cython_runtime_dict)) {
      use_cline = __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback);
    } else
#endif
    {
      PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback);
      if (use_cline_obj) {
        use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True;
        Py_DECREF(use_cline_obj);
      } else {
        PyErr_Clear();
        use_cline = NULL;
      }
    }
    if (!use_cline) {
        c_line = 0;
        PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False);
    }
    else if (PyObject_Not(use_cline) != 0) {
        c_line = 0;
    }
    __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback);
    return c_line;
}
#endif

/* CodeObjectCache */
          static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {
    int start = 0, mid = 0, end = count - 1;
    if (end >= 0 && code_line > entries[end].code_line) {
        return count;
    }
    while (start < end) {
        mid = start + (end - start) / 2;
        if (code_line < entries[mid].code_line) {
            end = mid;
        } else if (code_line > entries[mid].code_line) {
             start = mid + 1;
        } else {
            return mid;
        }
    }
    if (code_line <= entries[mid].code_line) {
        return mid;
    } else {
        return mid + 1;
    }
}
static PyCodeObject *__pyx_find_code_object(int code_line) {
    PyCodeObject* code_object;
    int pos;
    if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) {
        return NULL;
    }
    pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
    if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) {
        return NULL;
    }
    code_object = __pyx_code_cache.entries[pos].code_object;
    Py_INCREF(code_object);
    return code_object;
}
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
    int pos, i;
    __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries;
    if (unlikely(!code_line)) {
        return;
    }
    if (unlikely(!entries)) {
        entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry));
        if (likely(entries)) {
            __pyx_code_cache.entries = entries;
            __pyx_code_cache.max_count = 64;
            __pyx_code_cache.count = 1;
            entries[0].code_line = code_line;
            entries[0].code_object = code_object;
            Py_INCREF(code_object);
        }
        return;
    }
    pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
    if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) {
        PyCodeObject* tmp = entries[pos].code_object;
        entries[pos].code_object = code_object;
        Py_DECREF(tmp);
        return;
    }
    if (__pyx_code_cache.count == __pyx_code_cache.max_count) {
        int new_max = __pyx_code_cache.max_count + 64;
        entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc(
            __pyx_code_cache.entries, (size_t)new_max*sizeof(__Pyx_CodeObjectCacheEntry));
        if (unlikely(!entries)) {
            return;
        }
        __pyx_code_cache.entries = entries;
        __pyx_code_cache.max_count = new_max;
    }
    for (i=__pyx_code_cache.count; i>pos; i--) {
        entries[i] = entries[i-1];
    }
    entries[pos].code_line = code_line;
    entries[pos].code_object = code_object;
    __pyx_code_cache.count++;
    Py_INCREF(code_object);
}

/* AddTraceback */
          #include "compile.h"
#include "frameobject.h"
#include "traceback.h"
static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(
            const char *funcname, int c_line,
            int py_line, const char *filename) {
    PyCodeObject *py_code = 0;
    PyObject *py_srcfile = 0;
    PyObject *py_funcname = 0;
    #if PY_MAJOR_VERSION < 3
    py_srcfile = PyString_FromString(filename);
    #else
    py_srcfile = PyUnicode_FromString(filename);
    #endif
    if (!py_srcfile) goto bad;
    if (c_line) {
        #if PY_MAJOR_VERSION < 3
        py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
        #else
        py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
        #endif
    }
    else {
        #if PY_MAJOR_VERSION < 3
        py_funcname = PyString_FromString(funcname);
        #else
        py_funcname = PyUnicode_FromString(funcname);
        #endif
    }
    if (!py_funcname) goto bad;
    py_code = __Pyx_PyCode_New(
        0,
        0,
        0,
        0,
        0,
        __pyx_empty_bytes, /*PyObject *code,*/
        __pyx_empty_tuple, /*PyObject *consts,*/
        __pyx_empty_tuple, /*PyObject *names,*/
        __pyx_empty_tuple, /*PyObject *varnames,*/
        __pyx_empty_tuple, /*PyObject *freevars,*/
        __pyx_empty_tuple, /*PyObject *cellvars,*/
        py_srcfile,   /*PyObject *filename,*/
        py_funcname,  /*PyObject *name,*/
        py_line,
        __pyx_empty_bytes  /*PyObject *lnotab*/
    );
    Py_DECREF(py_srcfile);
    Py_DECREF(py_funcname);
    return py_code;
bad:
    Py_XDECREF(py_srcfile);
    Py_XDECREF(py_funcname);
    return NULL;
}
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename) {
    PyCodeObject *py_code = 0;
    PyFrameObject *py_frame = 0;
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    if (c_line) {
        c_line = __Pyx_CLineForTraceback(tstate, c_line);
    }
    py_code = __pyx_find_code_object(c_line ? -c_line : py_line);
    if (!py_code) {
        py_code = __Pyx_CreateCodeObjectForTraceback(
            funcname, c_line, py_line, filename);
        if (!py_code) goto bad;
        __pyx_insert_code_object(c_line ? -c_line : py_line, py_code);
    }
    py_frame = PyFrame_New(
        tstate,            /*PyThreadState *tstate,*/
        py_code,           /*PyCodeObject *code,*/
        __pyx_d,    /*PyObject *globals,*/
        0                  /*PyObject *locals*/
    );
    if (!py_frame) goto bad;
    __Pyx_PyFrame_SetLineNumber(py_frame, py_line);
    PyTraceBack_Here(py_frame);
bad:
    Py_XDECREF(py_code);
    Py_XDECREF(py_frame);
}

#if PY_MAJOR_VERSION < 3
static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags) {
    if (PyObject_CheckBuffer(obj)) return PyObject_GetBuffer(obj, view, flags);
        if (__Pyx_TypeCheck(obj, __pyx_ptype_5numpy_ndarray)) return __pyx_pw_5numpy_7ndarray_1__getbuffer__(obj, view, flags);
    PyErr_Format(PyExc_TypeError, "'%.200s' does not have the buffer interface", Py_TYPE(obj)->tp_name);
    return -1;
}
static void __Pyx_ReleaseBuffer(Py_buffer *view) {
    PyObject *obj = view->obj;
    if (!obj) return;
    if (PyObject_CheckBuffer(obj)) {
        PyBuffer_Release(view);
        return;
    }
    if ((0)) {}
        else if (__Pyx_TypeCheck(obj, __pyx_ptype_5numpy_ndarray)) __pyx_pw_5numpy_7ndarray_3__releasebuffer__(obj, view);
    view->obj = NULL;
    Py_DECREF(obj);
}
#endif


          /* CIntToPy */
          static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {
    const int neg_one = (int) -1, const_zero = (int) 0;
    const int is_unsigned = neg_one > const_zero;
    if (is_unsigned) {
        if (sizeof(int) < sizeof(long)) {
            return PyInt_FromLong((long) value);
        } else if (sizeof(int) <= sizeof(unsigned long)) {
            return PyLong_FromUnsignedLong((unsigned long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) {
            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
#endif
        }
    } else {
        if (sizeof(int) <= sizeof(long)) {
            return PyInt_FromLong((long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) {
            return PyLong_FromLongLong((PY_LONG_LONG) value);
#endif
        }
    }
    {
        int one = 1; int little = (int)*(unsigned char *)&one;
        unsigned char *bytes = (unsigned char *)&value;
        return _PyLong_FromByteArray(bytes, sizeof(int),
                                     little, !is_unsigned);
    }
}

/* CIntFromPyVerify */
          #define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\
    __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0)
#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\
    __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1)
#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\
    {\
        func_type value = func_value;\
        if (sizeof(target_type) < sizeof(func_type)) {\
            if (unlikely(value != (func_type) (target_type) value)) {\
                func_type zero = 0;\
                if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\
                    return (target_type) -1;\
                if (is_unsigned && unlikely(value < zero))\
                    goto raise_neg_overflow;\
                else\
                    goto raise_overflow;\
            }\
        }\
        return (target_type) value;\
    }

/* CIntToPy */
          static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
    const long neg_one = (long) -1, const_zero = (long) 0;
    const int is_unsigned = neg_one > const_zero;
    if (is_unsigned) {
        if (sizeof(long) < sizeof(long)) {
            return PyInt_FromLong((long) value);
        } else if (sizeof(long) <= sizeof(unsigned long)) {
            return PyLong_FromUnsignedLong((unsigned long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
#endif
        }
    } else {
        if (sizeof(long) <= sizeof(long)) {
            return PyInt_FromLong((long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
            return PyLong_FromLongLong((PY_LONG_LONG) value);
#endif
        }
    }
    {
        int one = 1; int little = (int)*(unsigned char *)&one;
        unsigned char *bytes = (unsigned char *)&value;
        return _PyLong_FromByteArray(bytes, sizeof(long),
                                     little, !is_unsigned);
    }
}

/* Declarations */
          #if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {
      return ::std::complex< float >(x, y);
    }
  #else
    static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {
      return x + y*(__pyx_t_float_complex)_Complex_I;
    }
  #endif
#else
    static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {
      __pyx_t_float_complex z;
      z.real = x;
      z.imag = y;
      return z;
    }
#endif

/* Arithmetic */
          #if CYTHON_CCOMPLEX
#else
    static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
       return (a.real == b.real) && (a.imag == b.imag);
    }
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
        __pyx_t_float_complex z;
        z.real = a.real + b.real;
        z.imag = a.imag + b.imag;
        return z;
    }
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
        __pyx_t_float_complex z;
        z.real = a.real - b.real;
        z.imag = a.imag - b.imag;
        return z;
    }
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
        __pyx_t_float_complex z;
        z.real = a.real * b.real - a.imag * b.imag;
        z.imag = a.real * b.imag + a.imag * b.real;
        return z;
    }
    #if 1
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
        if (b.imag == 0) {
            return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.real);
        } else if (fabsf(b.real) >= fabsf(b.imag)) {
            if (b.real == 0 && b.imag == 0) {
                return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.imag);
            } else {
                float r = b.imag / b.real;
                float s = 1.0 / (b.real + b.imag * r);
                return __pyx_t_float_complex_from_parts(
                    (a.real + a.imag * r) * s, (a.imag - a.real * r) * s);
            }
        } else {
            float r = b.real / b.imag;
            float s = 1.0 / (b.imag + b.real * r);
            return __pyx_t_float_complex_from_parts(
                (a.real * r + a.imag) * s, (a.imag * r - a.real) * s);
        }
    }
    #else
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
        if (b.imag == 0) {
            return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.real);
        } else {
            float denom = b.real * b.real + b.imag * b.imag;
            return __pyx_t_float_complex_from_parts(
                (a.real * b.real + a.imag * b.imag) / denom,
                (a.imag * b.real - a.real * b.imag) / denom);
        }
    }
    #endif
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex a) {
        __pyx_t_float_complex z;
        z.real = -a.real;
        z.imag = -a.imag;
        return z;
    }
    static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex a) {
       return (a.real == 0) && (a.imag == 0);
    }
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex a) {
        __pyx_t_float_complex z;
        z.real =  a.real;
        z.imag = -a.imag;
        return z;
    }
    #if 1
        static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex z) {
          #if !defined(HAVE_HYPOT) || defined(_MSC_VER)
            return sqrtf(z.real*z.real + z.imag*z.imag);
          #else
            return hypotf(z.real, z.imag);
          #endif
        }
        static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
            __pyx_t_float_complex z;
            float r, lnr, theta, z_r, z_theta;
            if (b.imag == 0 && b.real == (int)b.real) {
                if (b.real < 0) {
                    float denom = a.real * a.real + a.imag * a.imag;
                    a.real = a.real / denom;
                    a.imag = -a.imag / denom;
                    b.real = -b.real;
                }
                switch ((int)b.real) {
                    case 0:
                        z.real = 1;
                        z.imag = 0;
                        return z;
                    case 1:
                        return a;
                    case 2:
                        z = __Pyx_c_prod_float(a, a);
                        return __Pyx_c_prod_float(a, a);
                    case 3:
                        z = __Pyx_c_prod_float(a, a);
                        return __Pyx_c_prod_float(z, a);
                    case 4:
                        z = __Pyx_c_prod_float(a, a);
                        return __Pyx_c_prod_float(z, z);
                }
            }
            if (a.imag == 0) {
                if (a.real == 0) {
                    return a;
                } else if (b.imag == 0) {
                    z.real = powf(a.real, b.real);
                    z.imag = 0;
                    return z;
                } else if (a.real > 0) {
                    r = a.real;
                    theta = 0;
                } else {
                    r = -a.real;
                    theta = atan2f(0, -1);
                }
            } else {
                r = __Pyx_c_abs_float(a);
                theta = atan2f(a.imag, a.real);
            }
            lnr = logf(r);
            z_r = expf(lnr * b.real - theta * b.imag);
            z_theta = theta * b.real + lnr * b.imag;
            z.real = z_r * cosf(z_theta);
            z.imag = z_r * sinf(z_theta);
            return z;
        }
    #endif
#endif

/* Declarations */
          #if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {
      return ::std::complex< double >(x, y);
    }
  #else
    static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {
      return x + y*(__pyx_t_double_complex)_Complex_I;
    }
  #endif
#else
    static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {
      __pyx_t_double_complex z;
      z.real = x;
      z.imag = y;
      return z;
    }
#endif

/* Arithmetic */
          #if CYTHON_CCOMPLEX
#else
    static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
       return (a.real == b.real) && (a.imag == b.imag);
    }
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
        __pyx_t_double_complex z;
        z.real = a.real + b.real;
        z.imag = a.imag + b.imag;
        return z;
    }
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
        __pyx_t_double_complex z;
        z.real = a.real - b.real;
        z.imag = a.imag - b.imag;
        return z;
    }
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
        __pyx_t_double_complex z;
        z.real = a.real * b.real - a.imag * b.imag;
        z.imag = a.real * b.imag + a.imag * b.real;
        return z;
    }
    #if 1
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
        if (b.imag == 0) {
            return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.real);
        } else if (fabs(b.real) >= fabs(b.imag)) {
            if (b.real == 0 && b.imag == 0) {
                return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.imag);
            } else {
                double r = b.imag / b.real;
                double s = 1.0 / (b.real + b.imag * r);
                return __pyx_t_double_complex_from_parts(
                    (a.real + a.imag * r) * s, (a.imag - a.real * r) * s);
            }
        } else {
            double r = b.real / b.imag;
            double s = 1.0 / (b.imag + b.real * r);
            return __pyx_t_double_complex_from_parts(
                (a.real * r + a.imag) * s, (a.imag * r - a.real) * s);
        }
    }
    #else
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
        if (b.imag == 0) {
            return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.real);
        } else {
            double denom = b.real * b.real + b.imag * b.imag;
            return __pyx_t_double_complex_from_parts(
                (a.real * b.real + a.imag * b.imag) / denom,
                (a.imag * b.real - a.real * b.imag) / denom);
        }
    }
    #endif
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex a) {
        __pyx_t_double_complex z;
        z.real = -a.real;
        z.imag = -a.imag;
        return z;
    }
    static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex a) {
       return (a.real == 0) && (a.imag == 0);
    }
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex a) {
        __pyx_t_double_complex z;
        z.real =  a.real;
        z.imag = -a.imag;
        return z;
    }
    #if 1
        static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex z) {
          #if !defined(HAVE_HYPOT) || defined(_MSC_VER)
            return sqrt(z.real*z.real + z.imag*z.imag);
          #else
            return hypot(z.real, z.imag);
          #endif
        }
        static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
            __pyx_t_double_complex z;
            double r, lnr, theta, z_r, z_theta;
            if (b.imag == 0 && b.real == (int)b.real) {
                if (b.real < 0) {
                    double denom = a.real * a.real + a.imag * a.imag;
                    a.real = a.real / denom;
                    a.imag = -a.imag / denom;
                    b.real = -b.real;
                }
                switch ((int)b.real) {
                    case 0:
                        z.real = 1;
                        z.imag = 0;
                        return z;
                    case 1:
                        return a;
                    case 2:
                        z = __Pyx_c_prod_double(a, a);
                        return __Pyx_c_prod_double(a, a);
                    case 3:
                        z = __Pyx_c_prod_double(a, a);
                        return __Pyx_c_prod_double(z, a);
                    case 4:
                        z = __Pyx_c_prod_double(a, a);
                        return __Pyx_c_prod_double(z, z);
                }
            }
            if (a.imag == 0) {
                if (a.real == 0) {
                    return a;
                } else if (b.imag == 0) {
                    z.real = pow(a.real, b.real);
                    z.imag = 0;
                    return z;
                } else if (a.real > 0) {
                    r = a.real;
                    theta = 0;
                } else {
                    r = -a.real;
                    theta = atan2(0, -1);
                }
            } else {
                r = __Pyx_c_abs_double(a);
                theta = atan2(a.imag, a.real);
            }
            lnr = log(r);
            z_r = exp(lnr * b.real - theta * b.imag);
            z_theta = theta * b.real + lnr * b.imag;
            z.real = z_r * cos(z_theta);
            z.imag = z_r * sin(z_theta);
            return z;
        }
    #endif
#endif

/* CIntToPy */
          static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum__NPY_TYPES(enum NPY_TYPES value) {
    const enum NPY_TYPES neg_one = (enum NPY_TYPES) -1, const_zero = (enum NPY_TYPES) 0;
    const int is_unsigned = neg_one > const_zero;
    if (is_unsigned) {
        if (sizeof(enum NPY_TYPES) < sizeof(long)) {
            return PyInt_FromLong((long) value);
        } else if (sizeof(enum NPY_TYPES) <= sizeof(unsigned long)) {
            return PyLong_FromUnsignedLong((unsigned long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(enum NPY_TYPES) <= sizeof(unsigned PY_LONG_LONG)) {
            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
#endif
        }
    } else {
        if (sizeof(enum NPY_TYPES) <= sizeof(long)) {
            return PyInt_FromLong((long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(enum NPY_TYPES) <= sizeof(PY_LONG_LONG)) {
            return PyLong_FromLongLong((PY_LONG_LONG) value);
#endif
        }
    }
    {
        int one = 1; int little = (int)*(unsigned char *)&one;
        unsigned char *bytes = (unsigned char *)&value;
        return _PyLong_FromByteArray(bytes, sizeof(enum NPY_TYPES),
                                     little, !is_unsigned);
    }
}

/* CIntFromPy */
          static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {
    const int neg_one = (int) -1, const_zero = (int) 0;
    const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
    if (likely(PyInt_Check(x))) {
        if (sizeof(int) < sizeof(long)) {
            __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x))
        } else {
            long val = PyInt_AS_LONG(x);
            if (is_unsigned && unlikely(val < 0)) {
                goto raise_neg_overflow;
            }
            return (int) val;
        }
    } else
#endif
    if (likely(PyLong_Check(x))) {
        if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (int) 0;
                case  1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0])
                case 2:
                    if (8 * sizeof(int) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) >= 2 * PyLong_SHIFT) {
                            return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(int) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) >= 3 * PyLong_SHIFT) {
                            return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(int) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) >= 4 * PyLong_SHIFT) {
                            return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
            }
#endif
#if CYTHON_COMPILING_IN_CPYTHON
            if (unlikely(Py_SIZE(x) < 0)) {
                goto raise_neg_overflow;
            }
#else
            {
                int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                if (unlikely(result < 0))
                    return (int) -1;
                if (unlikely(result == 1))
                    goto raise_neg_overflow;
            }
#endif
            if (sizeof(int) <= sizeof(unsigned long)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
            }
        } else {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (int) 0;
                case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0]))
                case  1: __PYX_VERIFY_RETURN_INT(int,  digit, +digits[0])
                case -2:
                    if (8 * sizeof(int) - 1 > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) {
                            return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 2:
                    if (8 * sizeof(int) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) {
                            return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case -3:
                    if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) {
                            return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(int) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) {
                            return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case -4:
                    if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) {
                            return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(int) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) {
                            return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
            }
#endif
            if (sizeof(int) <= sizeof(long)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
            }
        }
        {
#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray)
            PyErr_SetString(PyExc_RuntimeError,
                            "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers");
#else
            int val;
            PyObject *v = __Pyx_PyNumber_IntOrLong(x);
 #if PY_MAJOR_VERSION < 3
            if (likely(v) && !PyLong_Check(v)) {
                PyObject *tmp = v;
                v = PyNumber_Long(tmp);
                Py_DECREF(tmp);
            }
 #endif
            if (likely(v)) {
                int one = 1; int is_little = (int)*(unsigned char *)&one;
                unsigned char *bytes = (unsigned char *)&val;
                int ret = _PyLong_AsByteArray((PyLongObject *)v,
                                              bytes, sizeof(val),
                                              is_little, !is_unsigned);
                Py_DECREF(v);
                if (likely(!ret))
                    return val;
            }
#endif
            return (int) -1;
        }
    } else {
        int val;
        PyObject *tmp = __Pyx_PyNumber_IntOrLong(x);
        if (!tmp) return (int) -1;
        val = __Pyx_PyInt_As_int(tmp);
        Py_DECREF(tmp);
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to int");
    return (int) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to int");
    return (int) -1;
}

/* CIntFromPy */
          static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {
    const long neg_one = (long) -1, const_zero = (long) 0;
    const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
    if (likely(PyInt_Check(x))) {
        if (sizeof(long) < sizeof(long)) {
            __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x))
        } else {
            long val = PyInt_AS_LONG(x);
            if (is_unsigned && unlikely(val < 0)) {
                goto raise_neg_overflow;
            }
            return (long) val;
        }
    } else
#endif
    if (likely(PyLong_Check(x))) {
        if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (long) 0;
                case  1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0])
                case 2:
                    if (8 * sizeof(long) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) >= 2 * PyLong_SHIFT) {
                            return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(long) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) >= 3 * PyLong_SHIFT) {
                            return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(long) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) >= 4 * PyLong_SHIFT) {
                            return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
            }
#endif
#if CYTHON_COMPILING_IN_CPYTHON
            if (unlikely(Py_SIZE(x) < 0)) {
                goto raise_neg_overflow;
            }
#else
            {
                int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                if (unlikely(result < 0))
                    return (long) -1;
                if (unlikely(result == 1))
                    goto raise_neg_overflow;
            }
#endif
            if (sizeof(long) <= sizeof(unsigned long)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
            }
        } else {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (long) 0;
                case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0]))
                case  1: __PYX_VERIFY_RETURN_INT(long,  digit, +digits[0])
                case -2:
                    if (8 * sizeof(long) - 1 > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                            return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 2:
                    if (8 * sizeof(long) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                            return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case -3:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                            return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(long) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                            return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case -4:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                            return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(long) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                            return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
            }
#endif
            if (sizeof(long) <= sizeof(long)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
            }
        }
        {
#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray)
            PyErr_SetString(PyExc_RuntimeError,
                            "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers");
#else
            long val;
            PyObject *v = __Pyx_PyNumber_IntOrLong(x);
 #if PY_MAJOR_VERSION < 3
            if (likely(v) && !PyLong_Check(v)) {
                PyObject *tmp = v;
                v = PyNumber_Long(tmp);
                Py_DECREF(tmp);
            }
 #endif
            if (likely(v)) {
                int one = 1; int is_little = (int)*(unsigned char *)&one;
                unsigned char *bytes = (unsigned char *)&val;
                int ret = _PyLong_AsByteArray((PyLongObject *)v,
                                              bytes, sizeof(val),
                                              is_little, !is_unsigned);
                Py_DECREF(v);
                if (likely(!ret))
                    return val;
            }
#endif
            return (long) -1;
        }
    } else {
        long val;
        PyObject *tmp = __Pyx_PyNumber_IntOrLong(x);
        if (!tmp) return (long) -1;
        val = __Pyx_PyInt_As_long(tmp);
        Py_DECREF(tmp);
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to long");
    return (long) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to long");
    return (long) -1;
}

/* FastTypeChecks */
          #if CYTHON_COMPILING_IN_CPYTHON
static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) {
    while (a) {
        a = a->tp_base;
        if (a == b)
            return 1;
    }
    return b == &PyBaseObject_Type;
}
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) {
    PyObject *mro;
    if (a == b) return 1;
    mro = a->tp_mro;
    if (likely(mro)) {
        Py_ssize_t i, n;
        n = PyTuple_GET_SIZE(mro);
        for (i = 0; i < n; i++) {
            if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b)
                return 1;
        }
        return 0;
    }
    return __Pyx_InBases(a, b);
}
#if PY_MAJOR_VERSION == 2
static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) {
    PyObject *exception, *value, *tb;
    int res;
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ErrFetch(&exception, &value, &tb);
    res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0;
    if (unlikely(res == -1)) {
        PyErr_WriteUnraisable(err);
        res = 0;
    }
    if (!res) {
        res = PyObject_IsSubclass(err, exc_type2);
        if (unlikely(res == -1)) {
            PyErr_WriteUnraisable(err);
            res = 0;
        }
    }
    __Pyx_ErrRestore(exception, value, tb);
    return res;
}
#else
static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) {
    int res = exc_type1 ? __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type1) : 0;
    if (!res) {
        res = __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2);
    }
    return res;
}
#endif
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject* exc_type) {
    if (likely(err == exc_type)) return 1;
    if (likely(PyExceptionClass_Check(err))) {
        return __Pyx_inner_PyErr_GivenExceptionMatches2(err, NULL, exc_type);
    }
    return PyErr_GivenExceptionMatches(err, exc_type);
}
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *exc_type1, PyObject *exc_type2) {
    if (likely(err == exc_type1 || err == exc_type2)) return 1;
    if (likely(PyExceptionClass_Check(err))) {
        return __Pyx_inner_PyErr_GivenExceptionMatches2(err, exc_type1, exc_type2);
    }
    return (PyErr_GivenExceptionMatches(err, exc_type1) || PyErr_GivenExceptionMatches(err, exc_type2));
}
#endif

/* CheckBinaryVersion */
          static int __Pyx_check_binary_version(void) {
    char ctversion[4], rtversion[4];
    PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION);
    PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion());
    if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) {
        char message[200];
        PyOS_snprintf(message, sizeof(message),
                      "compiletime version %s of module '%.100s' "
                      "does not match runtime version %s",
                      ctversion, __Pyx_MODULE_NAME, rtversion);
        return PyErr_WarnEx(NULL, message, 1);
    }
    return 0;
}

/* ModuleImport */
          #ifndef __PYX_HAVE_RT_ImportModule
#define __PYX_HAVE_RT_ImportModule
static PyObject *__Pyx_ImportModule(const char *name) {
    PyObject *py_name = 0;
    PyObject *py_module = 0;
    py_name = __Pyx_PyIdentifier_FromString(name);
    if (!py_name)
        goto bad;
    py_module = PyImport_Import(py_name);
    Py_DECREF(py_name);
    return py_module;
bad:
    Py_XDECREF(py_name);
    return 0;
}
#endif

/* TypeImport */
          #ifndef __PYX_HAVE_RT_ImportType
#define __PYX_HAVE_RT_ImportType
static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,
    size_t size, int strict)
{
    PyObject *py_module = 0;
    PyObject *result = 0;
    PyObject *py_name = 0;
    char warning[200];
    Py_ssize_t basicsize;
#ifdef Py_LIMITED_API
    PyObject *py_basicsize;
#endif
    py_module = __Pyx_ImportModule(module_name);
    if (!py_module)
        goto bad;
    py_name = __Pyx_PyIdentifier_FromString(class_name);
    if (!py_name)
        goto bad;
    result = PyObject_GetAttr(py_module, py_name);
    Py_DECREF(py_name);
    py_name = 0;
    Py_DECREF(py_module);
    py_module = 0;
    if (!result)
        goto bad;
    if (!PyType_Check(result)) {
        PyErr_Format(PyExc_TypeError,
            "%.200s.%.200s is not a type object",
            module_name, class_name);
        goto bad;
    }
#ifndef Py_LIMITED_API
    basicsize = ((PyTypeObject *)result)->tp_basicsize;
#else
    py_basicsize = PyObject_GetAttrString(result, "__basicsize__");
    if (!py_basicsize)
        goto bad;
    basicsize = PyLong_AsSsize_t(py_basicsize);
    Py_DECREF(py_basicsize);
    py_basicsize = 0;
    if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred())
        goto bad;
#endif
    if (!strict && (size_t)basicsize > size) {
        PyOS_snprintf(warning, sizeof(warning),
            "%s.%s size changed, may indicate binary incompatibility. Expected %zd, got %zd",
            module_name, class_name, basicsize, size);
        if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad;
    }
    else if ((size_t)basicsize != size) {
        PyErr_Format(PyExc_ValueError,
            "%.200s.%.200s has the wrong size, try recompiling. Expected %zd, got %zd",
            module_name, class_name, basicsize, size);
        goto bad;
    }
    return (PyTypeObject *)result;
bad:
    Py_XDECREF(py_module);
    Py_XDECREF(result);
    return NULL;
}
#endif

/* InitStrings */
          static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
    while (t->p) {
        #if PY_MAJOR_VERSION < 3
        if (t->is_unicode) {
            *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL);
        } else if (t->intern) {
            *t->p = PyString_InternFromString(t->s);
        } else {
            *t->p = PyString_FromStringAndSize(t->s, t->n - 1);
        }
        #else
        if (t->is_unicode | t->is_str) {
            if (t->intern) {
                *t->p = PyUnicode_InternFromString(t->s);
            } else if (t->encoding) {
                *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL);
            } else {
                *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1);
            }
        } else {
            *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1);
        }
        #endif
        if (!*t->p)
            return -1;
        if (PyObject_Hash(*t->p) == -1)
            return -1;
        ++t;
    }
    return 0;
}

static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
    return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str));
}
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) {
    Py_ssize_t ignore;
    return __Pyx_PyObject_AsStringAndSize(o, &ignore);
}
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
#if !CYTHON_PEP393_ENABLED
static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
    char* defenc_c;
    PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL);
    if (!defenc) return NULL;
    defenc_c = PyBytes_AS_STRING(defenc);
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
    {
        char* end = defenc_c + PyBytes_GET_SIZE(defenc);
        char* c;
        for (c = defenc_c; c < end; c++) {
            if ((unsigned char) (*c) >= 128) {
                PyUnicode_AsASCIIString(o);
                return NULL;
            }
        }
    }
#endif
    *length = PyBytes_GET_SIZE(defenc);
    return defenc_c;
}
#else
static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
    if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL;
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
    if (likely(PyUnicode_IS_ASCII(o))) {
        *length = PyUnicode_GET_LENGTH(o);
        return PyUnicode_AsUTF8(o);
    } else {
        PyUnicode_AsASCIIString(o);
        return NULL;
    }
#else
    return PyUnicode_AsUTF8AndSize(o, length);
#endif
}
#endif
#endif
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
    if (
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
            __Pyx_sys_getdefaultencoding_not_ascii &&
#endif
            PyUnicode_Check(o)) {
        return __Pyx_PyUnicode_AsStringAndSize(o, length);
    } else
#endif
#if (!CYTHON_COMPILING_IN_PYPY) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE))
    if (PyByteArray_Check(o)) {
        *length = PyByteArray_GET_SIZE(o);
        return PyByteArray_AS_STRING(o);
    } else
#endif
    {
        char* result;
        int r = PyBytes_AsStringAndSize(o, &result, length);
        if (unlikely(r < 0)) {
            return NULL;
        } else {
            return result;
        }
    }
}
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {
   int is_true = x == Py_True;
   if (is_true | (x == Py_False) | (x == Py_None)) return is_true;
   else return PyObject_IsTrue(x);
}
static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) {
#if PY_MAJOR_VERSION >= 3
    if (PyLong_Check(result)) {
        if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1,
                "__int__ returned non-int (type %.200s).  "
                "The ability to return an instance of a strict subclass of int "
                "is deprecated, and may be removed in a future version of Python.",
                Py_TYPE(result)->tp_name)) {
            Py_DECREF(result);
            return NULL;
        }
        return result;
    }
#endif
    PyErr_Format(PyExc_TypeError,
                 "__%.4s__ returned non-%.4s (type %.200s)",
                 type_name, type_name, Py_TYPE(result)->tp_name);
    Py_DECREF(result);
    return NULL;
}
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {
#if CYTHON_USE_TYPE_SLOTS
  PyNumberMethods *m;
#endif
  const char *name = NULL;
  PyObject *res = NULL;
#if PY_MAJOR_VERSION < 3
  if (likely(PyInt_Check(x) || PyLong_Check(x)))
#else
  if (likely(PyLong_Check(x)))
#endif
    return __Pyx_NewRef(x);
#if CYTHON_USE_TYPE_SLOTS
  m = Py_TYPE(x)->tp_as_number;
  #if PY_MAJOR_VERSION < 3
  if (m && m->nb_int) {
    name = "int";
    res = m->nb_int(x);
  }
  else if (m && m->nb_long) {
    name = "long";
    res = m->nb_long(x);
  }
  #else
  if (likely(m && m->nb_int)) {
    name = "int";
    res = m->nb_int(x);
  }
  #endif
#else
  if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) {
    res = PyNumber_Int(x);
  }
#endif
  if (likely(res)) {
#if PY_MAJOR_VERSION < 3
    if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) {
#else
    if (unlikely(!PyLong_CheckExact(res))) {
#endif
        return __Pyx_PyNumber_IntOrLongWrongResultType(res, name);
    }
  }
  else if (!PyErr_Occurred()) {
    PyErr_SetString(PyExc_TypeError,
                    "an integer is required");
  }
  return res;
}
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
  Py_ssize_t ival;
  PyObject *x;
#if PY_MAJOR_VERSION < 3
  if (likely(PyInt_CheckExact(b))) {
    if (sizeof(Py_ssize_t) >= sizeof(long))
        return PyInt_AS_LONG(b);
    else
        return PyInt_AsSsize_t(x);
  }
#endif
  if (likely(PyLong_CheckExact(b))) {
    #if CYTHON_USE_PYLONG_INTERNALS
    const digit* digits = ((PyLongObject*)b)->ob_digit;
    const Py_ssize_t size = Py_SIZE(b);
    if (likely(__Pyx_sst_abs(size) <= 1)) {
        ival = likely(size) ? digits[0] : 0;
        if (size == -1) ival = -ival;
        return ival;
    } else {
      switch (size) {
         case 2:
           if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -2:
           if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case 3:
           if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -3:
           if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case 4:
           if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -4:
           if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
      }
    }
    #endif
    return PyLong_AsSsize_t(b);
  }
  x = PyNumber_Index(b);
  if (!x) return -1;
  ival = PyInt_AsSsize_t(x);
  Py_DECREF(x);
  return ival;
}
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {
    return PyInt_FromSize_t(ival);
}


#endif /* Py_PYTHON_H */


================================================
FILE: lib/nms/cpu_nms.pyx
================================================
# --------------------------------------------------------
# Fast R-CNN
# Copyright (c) 2015 Microsoft
# Licensed under The MIT License [see LICENSE for details]
# Written by Ross Girshick
# --------------------------------------------------------

import numpy as np
cimport numpy as np

cdef inline np.float32_t max(np.float32_t a, np.float32_t b):
    return a if a >= b else b

cdef inline np.float32_t min(np.float32_t a, np.float32_t b):
    return a if a <= b else b

def cpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh):
    cdef np.ndarray[np.float32_t, ndim=1] x1 = dets[:, 0]
    cdef np.ndarray[np.float32_t, ndim=1] y1 = dets[:, 1]
    cdef np.ndarray[np.float32_t, ndim=1] x2 = dets[:, 2]
    cdef np.ndarray[np.float32_t, ndim=1] y2 = dets[:, 3]
    cdef np.ndarray[np.float32_t, ndim=1] scores = dets[:, 4]

    cdef np.ndarray[np.float32_t, ndim=1] areas = (x2 - x1 + 1) * (y2 - y1 + 1)
    cdef np.ndarray[np.int_t, ndim=1] order = scores.argsort()[::-1]

    cdef int ndets = dets.shape[0]
    cdef np.ndarray[np.int_t, ndim=1] suppressed = \
            np.zeros((ndets), dtype=np.int)

    # nominal indices
    cdef int _i, _j
    # sorted indices
    cdef int i, j
    # temp variables for box i's (the box currently under consideration)
    cdef np.float32_t ix1, iy1, ix2, iy2, iarea
    # variables for computing overlap with box j (lower scoring box)
    cdef np.float32_t xx1, yy1, xx2, yy2
    cdef np.float32_t w, h
    cdef np.float32_t inter, ovr

    keep = []
    for _i in range(ndets):
        i = order[_i]
        if suppressed[i] == 1:
            continue
        keep.append(i)
        ix1 = x1[i]
        iy1 = y1[i]
        ix2 = x2[i]
        iy2 = y2[i]
        iarea = areas[i]
        for _j in range(_i + 1, ndets):
            j = order[_j]
            if suppressed[j] == 1:
                continue
            xx1 = max(ix1, x1[j])
            yy1 = max(iy1, y1[j])
            xx2 = min(ix2, x2[j])
            yy2 = min(iy2, y2[j])
            w = max(0.0, xx2 - xx1 + 1)
            h = max(0.0, yy2 - yy1 + 1)
            inter = w * h
            ovr = inter / (iarea + areas[j] - inter)
            if ovr >= thresh:
                suppressed[j] = 1

    return keep


================================================
FILE: lib/nms/gpu_nms.cpp
================================================
/* Generated by Cython 0.28.2 */

#define PY_SSIZE_T_CLEAN
#include "Python.h"
#ifndef Py_PYTHON_H
    #error Python headers needed to compile C extensions, please install development version of Python.
#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03030000)
    #error Cython requires Python 2.6+ or Python 3.3+.
#else
#define CYTHON_ABI "0_28_2"
#define CYTHON_FUTURE_DIVISION 0
#include 
#ifndef offsetof
  #define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
#endif
#if !defined(WIN32) && !defined(MS_WINDOWS)
  #ifndef __stdcall
    #define __stdcall
  #endif
  #ifndef __cdecl
    #define __cdecl
  #endif
  #ifndef __fastcall
    #define __fastcall
  #endif
#endif
#ifndef DL_IMPORT
  #define DL_IMPORT(t) t
#endif
#ifndef DL_EXPORT
  #define DL_EXPORT(t) t
#endif
#define __PYX_COMMA ,
#ifndef HAVE_LONG_LONG
  #if PY_VERSION_HEX >= 0x02070000
    #define HAVE_LONG_LONG
  #endif
#endif
#ifndef PY_LONG_LONG
  #define PY_LONG_LONG LONG_LONG
#endif
#ifndef Py_HUGE_VAL
  #define Py_HUGE_VAL HUGE_VAL
#endif
#ifdef PYPY_VERSION
  #define CYTHON_COMPILING_IN_PYPY 1
  #define CYTHON_COMPILING_IN_PYSTON 0
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #undef CYTHON_USE_TYPE_SLOTS
  #define CYTHON_USE_TYPE_SLOTS 0
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #if PY_VERSION_HEX < 0x03050000
    #undef CYTHON_USE_ASYNC_SLOTS
    #define CYTHON_USE_ASYNC_SLOTS 0
  #elif !defined(CYTHON_USE_ASYNC_SLOTS)
    #define CYTHON_USE_ASYNC_SLOTS 1
  #endif
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #undef CYTHON_USE_UNICODE_INTERNALS
  #define CYTHON_USE_UNICODE_INTERNALS 0
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #undef CYTHON_AVOID_BORROWED_REFS
  #define CYTHON_AVOID_BORROWED_REFS 1
  #undef CYTHON_ASSUME_SAFE_MACROS
  #define CYTHON_ASSUME_SAFE_MACROS 0
  #undef CYTHON_UNPACK_METHODS
  #define CYTHON_UNPACK_METHODS 0
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #undef CYTHON_PEP489_MULTI_PHASE_INIT
  #define CYTHON_PEP489_MULTI_PHASE_INIT 0
  #undef CYTHON_USE_TP_FINALIZE
  #define CYTHON_USE_TP_FINALIZE 0
#elif defined(PYSTON_VERSION)
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_PYSTON 1
  #define CYTHON_COMPILING_IN_CPYTHON 0
  #ifndef CYTHON_USE_TYPE_SLOTS
    #define CYTHON_USE_TYPE_SLOTS 1
  #endif
  #undef CYTHON_USE_PYTYPE_LOOKUP
  #define CYTHON_USE_PYTYPE_LOOKUP 0
  #undef CYTHON_USE_ASYNC_SLOTS
  #define CYTHON_USE_ASYNC_SLOTS 0
  #undef CYTHON_USE_PYLIST_INTERNALS
  #define CYTHON_USE_PYLIST_INTERNALS 0
  #ifndef CYTHON_USE_UNICODE_INTERNALS
    #define CYTHON_USE_UNICODE_INTERNALS 1
  #endif
  #undef CYTHON_USE_UNICODE_WRITER
  #define CYTHON_USE_UNICODE_WRITER 0
  #undef CYTHON_USE_PYLONG_INTERNALS
  #define CYTHON_USE_PYLONG_INTERNALS 0
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #ifndef CYTHON_ASSUME_SAFE_MACROS
    #define CYTHON_ASSUME_SAFE_MACROS 1
  #endif
  #ifndef CYTHON_UNPACK_METHODS
    #define CYTHON_UNPACK_METHODS 1
  #endif
  #undef CYTHON_FAST_THREAD_STATE
  #define CYTHON_FAST_THREAD_STATE 0
  #undef CYTHON_FAST_PYCALL
  #define CYTHON_FAST_PYCALL 0
  #undef CYTHON_PEP489_MULTI_PHASE_INIT
  #define CYTHON_PEP489_MULTI_PHASE_INIT 0
  #undef CYTHON_USE_TP_FINALIZE
  #define CYTHON_USE_TP_FINALIZE 0
#else
  #define CYTHON_COMPILING_IN_PYPY 0
  #define CYTHON_COMPILING_IN_PYSTON 0
  #define CYTHON_COMPILING_IN_CPYTHON 1
  #ifndef CYTHON_USE_TYPE_SLOTS
    #define CYTHON_USE_TYPE_SLOTS 1
  #endif
  #if PY_VERSION_HEX < 0x02070000
    #undef CYTHON_USE_PYTYPE_LOOKUP
    #define CYTHON_USE_PYTYPE_LOOKUP 0
  #elif !defined(CYTHON_USE_PYTYPE_LOOKUP)
    #define CYTHON_USE_PYTYPE_LOOKUP 1
  #endif
  #if PY_MAJOR_VERSION < 3
    #undef CYTHON_USE_ASYNC_SLOTS
    #define CYTHON_USE_ASYNC_SLOTS 0
  #elif !defined(CYTHON_USE_ASYNC_SLOTS)
    #define CYTHON_USE_ASYNC_SLOTS 1
  #endif
  #if PY_VERSION_HEX < 0x02070000
    #undef CYTHON_USE_PYLONG_INTERNALS
    #define CYTHON_USE_PYLONG_INTERNALS 0
  #elif !defined(CYTHON_USE_PYLONG_INTERNALS)
    #define CYTHON_USE_PYLONG_INTERNALS 1
  #endif
  #ifndef CYTHON_USE_PYLIST_INTERNALS
    #define CYTHON_USE_PYLIST_INTERNALS 1
  #endif
  #ifndef CYTHON_USE_UNICODE_INTERNALS
    #define CYTHON_USE_UNICODE_INTERNALS 1
  #endif
  #if PY_VERSION_HEX < 0x030300F0
    #undef CYTHON_USE_UNICODE_WRITER
    #define CYTHON_USE_UNICODE_WRITER 0
  #elif !defined(CYTHON_USE_UNICODE_WRITER)
    #define CYTHON_USE_UNICODE_WRITER 1
  #endif
  #ifndef CYTHON_AVOID_BORROWED_REFS
    #define CYTHON_AVOID_BORROWED_REFS 0
  #endif
  #ifndef CYTHON_ASSUME_SAFE_MACROS
    #define CYTHON_ASSUME_SAFE_MACROS 1
  #endif
  #ifndef CYTHON_UNPACK_METHODS
    #define CYTHON_UNPACK_METHODS 1
  #endif
  #ifndef CYTHON_FAST_THREAD_STATE
    #define CYTHON_FAST_THREAD_STATE 1
  #endif
  #ifndef CYTHON_FAST_PYCALL
    #define CYTHON_FAST_PYCALL 1
  #endif
  #ifndef CYTHON_PEP489_MULTI_PHASE_INIT
    #define CYTHON_PEP489_MULTI_PHASE_INIT (0 && PY_VERSION_HEX >= 0x03050000)
  #endif
  #ifndef CYTHON_USE_TP_FINALIZE
    #define CYTHON_USE_TP_FINALIZE (PY_VERSION_HEX >= 0x030400a1)
  #endif
#endif
#if !defined(CYTHON_FAST_PYCCALL)
#define CYTHON_FAST_PYCCALL  (CYTHON_FAST_PYCALL && PY_VERSION_HEX >= 0x030600B1)
#endif
#if CYTHON_USE_PYLONG_INTERNALS
  #include "longintrepr.h"
  #undef SHIFT
  #undef BASE
  #undef MASK
#endif
#ifndef __has_attribute
  #define __has_attribute(x) 0
#endif
#ifndef __has_cpp_attribute
  #define __has_cpp_attribute(x) 0
#endif
#ifndef CYTHON_RESTRICT
  #if defined(__GNUC__)
    #define CYTHON_RESTRICT __restrict__
  #elif defined(_MSC_VER) && _MSC_VER >= 1400
    #define CYTHON_RESTRICT __restrict
  #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define CYTHON_RESTRICT restrict
  #else
    #define CYTHON_RESTRICT
  #endif
#endif
#ifndef CYTHON_UNUSED
# if defined(__GNUC__)
#   if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
#     define CYTHON_UNUSED __attribute__ ((__unused__))
#   else
#     define CYTHON_UNUSED
#   endif
# elif defined(__ICC) || (defined(__INTEL_COMPILER) && !defined(_MSC_VER))
#   define CYTHON_UNUSED __attribute__ ((__unused__))
# else
#   define CYTHON_UNUSED
# endif
#endif
#ifndef CYTHON_MAYBE_UNUSED_VAR
#  if defined(__cplusplus)
     template void CYTHON_MAYBE_UNUSED_VAR( const T& ) { }
#  else
#    define CYTHON_MAYBE_UNUSED_VAR(x) (void)(x)
#  endif
#endif
#ifndef CYTHON_NCP_UNUSED
# if CYTHON_COMPILING_IN_CPYTHON
#  define CYTHON_NCP_UNUSED
# else
#  define CYTHON_NCP_UNUSED CYTHON_UNUSED
# endif
#endif
#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None)
#ifdef _MSC_VER
    #ifndef _MSC_STDINT_H_
        #if _MSC_VER < 1300
           typedef unsigned char     uint8_t;
           typedef unsigned int      uint32_t;
        #else
           typedef unsigned __int8   uint8_t;
           typedef unsigned __int32  uint32_t;
        #endif
    #endif
#else
   #include 
#endif
#ifndef CYTHON_FALLTHROUGH
  #if defined(__cplusplus) && __cplusplus >= 201103L
    #if __has_cpp_attribute(fallthrough)
      #define CYTHON_FALLTHROUGH [[fallthrough]]
    #elif __has_cpp_attribute(clang::fallthrough)
      #define CYTHON_FALLTHROUGH [[clang::fallthrough]]
    #elif __has_cpp_attribute(gnu::fallthrough)
      #define CYTHON_FALLTHROUGH [[gnu::fallthrough]]
    #endif
  #endif
  #ifndef CYTHON_FALLTHROUGH
    #if __has_attribute(fallthrough)
      #define CYTHON_FALLTHROUGH __attribute__((fallthrough))
    #else
      #define CYTHON_FALLTHROUGH
    #endif
  #endif
  #if defined(__clang__ ) && defined(__apple_build_version__)
    #if __apple_build_version__ < 7000000
      #undef  CYTHON_FALLTHROUGH
      #define CYTHON_FALLTHROUGH
    #endif
  #endif
#endif

#ifndef __cplusplus
  #error "Cython files generated with the C++ option must be compiled with a C++ compiler."
#endif
#ifndef CYTHON_INLINE
  #if defined(__clang__)
    #define CYTHON_INLINE __inline__ __attribute__ ((__unused__))
  #else
    #define CYTHON_INLINE inline
  #endif
#endif
template
void __Pyx_call_destructor(T& x) {
    x.~T();
}
template
class __Pyx_FakeReference {
  public:
    __Pyx_FakeReference() : ptr(NULL) { }
    __Pyx_FakeReference(const T& ref) : ptr(const_cast(&ref)) { }
    T *operator->() { return ptr; }
    T *operator&() { return ptr; }
    operator T&() { return *ptr; }
    template bool operator ==(U other) { return *ptr == other; }
    template bool operator !=(U other) { return *ptr != other; }
  private:
    T *ptr;
};

#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag)
  #define Py_OptimizeFlag 0
#endif
#define __PYX_BUILD_PY_SSIZE_T "n"
#define CYTHON_FORMAT_SSIZE_T "z"
#if PY_MAJOR_VERSION < 3
  #define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
  #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
  #define __Pyx_DefaultClassType PyClass_Type
#else
  #define __Pyx_BUILTIN_MODULE_NAME "builtins"
  #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
          PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
  #define __Pyx_DefaultClassType PyType_Type
#endif
#ifndef Py_TPFLAGS_CHECKTYPES
  #define Py_TPFLAGS_CHECKTYPES 0
#endif
#ifndef Py_TPFLAGS_HAVE_INDEX
  #define Py_TPFLAGS_HAVE_INDEX 0
#endif
#ifndef Py_TPFLAGS_HAVE_NEWBUFFER
  #define Py_TPFLAGS_HAVE_NEWBUFFER 0
#endif
#ifndef Py_TPFLAGS_HAVE_FINALIZE
  #define Py_TPFLAGS_HAVE_FINALIZE 0
#endif
#if PY_VERSION_HEX <= 0x030700A3 || !defined(METH_FASTCALL)
  #ifndef METH_FASTCALL
     #define METH_FASTCALL 0x80
  #endif
  typedef PyObject *(*__Pyx_PyCFunctionFast) (PyObject *self, PyObject *const *args, Py_ssize_t nargs);
  typedef PyObject *(*__Pyx_PyCFunctionFastWithKeywords) (PyObject *self, PyObject *const *args,
                                                          Py_ssize_t nargs, PyObject *kwnames);
#else
  #define __Pyx_PyCFunctionFast _PyCFunctionFast
  #define __Pyx_PyCFunctionFastWithKeywords _PyCFunctionFastWithKeywords
#endif
#if CYTHON_FAST_PYCCALL
#define __Pyx_PyFastCFunction_Check(func)\
    ((PyCFunction_Check(func) && (METH_FASTCALL == (PyCFunction_GET_FLAGS(func) & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS)))))
#else
#define __Pyx_PyFastCFunction_Check(func) 0
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Malloc)
  #define PyObject_Malloc(s)   PyMem_Malloc(s)
  #define PyObject_Free(p)     PyMem_Free(p)
  #define PyObject_Realloc(p)  PyMem_Realloc(p)
#endif
#if CYTHON_COMPILING_IN_PYSTON
  #define __Pyx_PyCode_HasFreeVars(co)  PyCode_HasFreeVars(co)
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno) PyFrame_SetLineNumber(frame, lineno)
#else
  #define __Pyx_PyCode_HasFreeVars(co)  (PyCode_GetNumFree(co) > 0)
  #define __Pyx_PyFrame_SetLineNumber(frame, lineno)  (frame)->f_lineno = (lineno)
#endif
#if !CYTHON_FAST_THREAD_STATE || PY_VERSION_HEX < 0x02070000
  #define __Pyx_PyThreadState_Current PyThreadState_GET()
#elif PY_VERSION_HEX >= 0x03060000
  #define __Pyx_PyThreadState_Current _PyThreadState_UncheckedGet()
#elif PY_VERSION_HEX >= 0x03000000
  #define __Pyx_PyThreadState_Current PyThreadState_GET()
#else
  #define __Pyx_PyThreadState_Current _PyThreadState_Current
#endif
#if PY_VERSION_HEX < 0x030700A2 && !defined(PyThread_tss_create) && !defined(Py_tss_NEEDS_INIT)
#include "pythread.h"
#define Py_tss_NEEDS_INIT 0
typedef int Py_tss_t;
static CYTHON_INLINE int PyThread_tss_create(Py_tss_t *key) {
  *key = PyThread_create_key();
  return 0; // PyThread_create_key reports success always
}
static CYTHON_INLINE Py_tss_t * PyThread_tss_alloc(void) {
  Py_tss_t *key = (Py_tss_t *)PyObject_Malloc(sizeof(Py_tss_t));
  *key = Py_tss_NEEDS_INIT;
  return key;
}
static CYTHON_INLINE void PyThread_tss_free(Py_tss_t *key) {
  PyObject_Free(key);
}
static CYTHON_INLINE int PyThread_tss_is_created(Py_tss_t *key) {
  return *key != Py_tss_NEEDS_INIT;
}
static CYTHON_INLINE void PyThread_tss_delete(Py_tss_t *key) {
  PyThread_delete_key(*key);
  *key = Py_tss_NEEDS_INIT;
}
static CYTHON_INLINE int PyThread_tss_set(Py_tss_t *key, void *value) {
  return PyThread_set_key_value(*key, value);
}
static CYTHON_INLINE void * PyThread_tss_get(Py_tss_t *key) {
  return PyThread_get_key_value(*key);
}
#endif // TSS (Thread Specific Storage) API
#if CYTHON_COMPILING_IN_CPYTHON || defined(_PyDict_NewPresized)
#define __Pyx_PyDict_NewPresized(n)  ((n <= 8) ? PyDict_New() : _PyDict_NewPresized(n))
#else
#define __Pyx_PyDict_NewPresized(n)  PyDict_New()
#endif
#if PY_MAJOR_VERSION >= 3 || CYTHON_FUTURE_DIVISION
  #define __Pyx_PyNumber_Divide(x,y)         PyNumber_TrueDivide(x,y)
  #define __Pyx_PyNumber_InPlaceDivide(x,y)  PyNumber_InPlaceTrueDivide(x,y)
#else
  #define __Pyx_PyNumber_Divide(x,y)         PyNumber_Divide(x,y)
  #define __Pyx_PyNumber_InPlaceDivide(x,y)  PyNumber_InPlaceDivide(x,y)
#endif
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1 && CYTHON_USE_UNICODE_INTERNALS
#define __Pyx_PyDict_GetItemStr(dict, name)  _PyDict_GetItem_KnownHash(dict, name, ((PyASCIIObject *) name)->hash)
#else
#define __Pyx_PyDict_GetItemStr(dict, name)  PyDict_GetItem(dict, name)
#endif
#if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND)
  #define CYTHON_PEP393_ENABLED 1
  #define __Pyx_PyUnicode_READY(op)       (likely(PyUnicode_IS_READY(op)) ?\
                                              0 : _PyUnicode_Ready((PyObject *)(op)))
  #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_LENGTH(u)
  #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   PyUnicode_MAX_CHAR_VALUE(u)
  #define __Pyx_PyUnicode_KIND(u)         PyUnicode_KIND(u)
  #define __Pyx_PyUnicode_DATA(u)         PyUnicode_DATA(u)
  #define __Pyx_PyUnicode_READ(k, d, i)   PyUnicode_READ(k, d, i)
  #define __Pyx_PyUnicode_WRITE(k, d, i, ch)  PyUnicode_WRITE(k, d, i, ch)
  #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != (likely(PyUnicode_IS_READY(u)) ? PyUnicode_GET_LENGTH(u) : PyUnicode_GET_SIZE(u)))
#else
  #define CYTHON_PEP393_ENABLED 0
  #define PyUnicode_1BYTE_KIND  1
  #define PyUnicode_2BYTE_KIND  2
  #define PyUnicode_4BYTE_KIND  4
  #define __Pyx_PyUnicode_READY(op)       (0)
  #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_SIZE(u)
  #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i]))
  #define __Pyx_PyUnicode_MAX_CHAR_VALUE(u)   ((sizeof(Py_UNICODE) == 2) ? 65535 : 1114111)
  #define __Pyx_PyUnicode_KIND(u)         (sizeof(Py_UNICODE))
  #define __Pyx_PyUnicode_DATA(u)         ((void*)PyUnicode_AS_UNICODE(u))
  #define __Pyx_PyUnicode_READ(k, d, i)   ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i]))
  #define __Pyx_PyUnicode_WRITE(k, d, i, ch)  (((void)(k)), ((Py_UNICODE*)d)[i] = ch)
  #define __Pyx_PyUnicode_IS_TRUE(u)      (0 != PyUnicode_GET_SIZE(u))
#endif
#if CYTHON_COMPILING_IN_PYPY
  #define __Pyx_PyUnicode_Concat(a, b)      PyNumber_Add(a, b)
  #define __Pyx_PyUnicode_ConcatSafe(a, b)  PyNumber_Add(a, b)
#else
  #define __Pyx_PyUnicode_Concat(a, b)      PyUnicode_Concat(a, b)
  #define __Pyx_PyUnicode_ConcatSafe(a, b)  ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\
      PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b))
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains)
  #define PyUnicode_Contains(u, s)  PySequence_Contains(u, s)
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyByteArray_Check)
  #define PyByteArray_Check(obj)  PyObject_TypeCheck(obj, &PyByteArray_Type)
#endif
#if CYTHON_COMPILING_IN_PYPY && !defined(PyObject_Format)
  #define PyObject_Format(obj, fmt)  PyObject_CallMethod(obj, "__format__", "O", fmt)
#endif
#define __Pyx_PyString_FormatSafe(a, b)   ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b))
#define __Pyx_PyUnicode_FormatSafe(a, b)  ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyString_Format(a, b)  PyUnicode_Format(a, b)
#else
  #define __Pyx_PyString_Format(a, b)  PyString_Format(a, b)
#endif
#if PY_MAJOR_VERSION < 3 && !defined(PyObject_ASCII)
  #define PyObject_ASCII(o)            PyObject_Repr(o)
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyBaseString_Type            PyUnicode_Type
  #define PyStringObject               PyUnicodeObject
  #define PyString_Type                PyUnicode_Type
  #define PyString_Check               PyUnicode_Check
  #define PyString_CheckExact          PyUnicode_CheckExact
#endif
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj)
  #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj)
#else
  #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj))
  #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj))
#endif
#ifndef PySet_CheckExact
  #define PySet_CheckExact(obj)        (Py_TYPE(obj) == &PySet_Type)
#endif
#if CYTHON_ASSUME_SAFE_MACROS
  #define __Pyx_PySequence_SIZE(seq)  Py_SIZE(seq)
#else
  #define __Pyx_PySequence_SIZE(seq)  PySequence_Size(seq)
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyIntObject                  PyLongObject
  #define PyInt_Type                   PyLong_Type
  #define PyInt_Check(op)              PyLong_Check(op)
  #define PyInt_CheckExact(op)         PyLong_CheckExact(op)
  #define PyInt_FromString             PyLong_FromString
  #define PyInt_FromUnicode            PyLong_FromUnicode
  #define PyInt_FromLong               PyLong_FromLong
  #define PyInt_FromSize_t             PyLong_FromSize_t
  #define PyInt_FromSsize_t            PyLong_FromSsize_t
  #define PyInt_AsLong                 PyLong_AsLong
  #define PyInt_AS_LONG                PyLong_AS_LONG
  #define PyInt_AsSsize_t              PyLong_AsSsize_t
  #define PyInt_AsUnsignedLongMask     PyLong_AsUnsignedLongMask
  #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
  #define PyNumber_Int                 PyNumber_Long
#endif
#if PY_MAJOR_VERSION >= 3
  #define PyBoolObject                 PyLongObject
#endif
#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY
  #ifndef PyUnicode_InternFromString
    #define PyUnicode_InternFromString(s) PyUnicode_FromString(s)
  #endif
#endif
#if PY_VERSION_HEX < 0x030200A4
  typedef long Py_hash_t;
  #define __Pyx_PyInt_FromHash_t PyInt_FromLong
  #define __Pyx_PyInt_AsHash_t   PyInt_AsLong
#else
  #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t
  #define __Pyx_PyInt_AsHash_t   PyInt_AsSsize_t
#endif
#if PY_MAJOR_VERSION >= 3
  #define __Pyx_PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : (Py_INCREF(func), func))
#else
  #define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass)
#endif
#if CYTHON_USE_ASYNC_SLOTS
  #if PY_VERSION_HEX >= 0x030500B1
    #define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
    #define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async)
  #else
    #define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved))
  #endif
#else
  #define __Pyx_PyType_AsAsync(obj) NULL
#endif
#ifndef __Pyx_PyAsyncMethodsStruct
    typedef struct {
        unaryfunc am_await;
        unaryfunc am_aiter;
        unaryfunc am_anext;
    } __Pyx_PyAsyncMethodsStruct;
#endif

#if defined(WIN32) || defined(MS_WINDOWS)
  #define _USE_MATH_DEFINES
#endif
#include 
#ifdef NAN
#define __PYX_NAN() ((float) NAN)
#else
static CYTHON_INLINE float __PYX_NAN() {
  float value;
  memset(&value, 0xFF, sizeof(value));
  return value;
}
#endif
#if defined(__CYGWIN__) && defined(_LDBL_EQ_DBL)
#define __Pyx_truncl trunc
#else
#define __Pyx_truncl truncl
#endif


#define __PYX_ERR(f_index, lineno, Ln_error) \
{ \
  __pyx_filename = __pyx_f[f_index]; __pyx_lineno = lineno; __pyx_clineno = __LINE__; goto Ln_error; \
}

#ifndef __PYX_EXTERN_C
  #ifdef __cplusplus
    #define __PYX_EXTERN_C extern "C"
  #else
    #define __PYX_EXTERN_C extern
  #endif
#endif

#define __PYX_HAVE__gpu_nms
#define __PYX_HAVE_API__gpu_nms
/* Early includes */
#include 
#include 
#include "numpy/arrayobject.h"
#include "numpy/ufuncobject.h"
#include "gpu_nms.hpp"
#ifdef _OPENMP
#include 
#endif /* _OPENMP */

#if defined(PYREX_WITHOUT_ASSERTIONS) && !defined(CYTHON_WITHOUT_ASSERTIONS)
#define CYTHON_WITHOUT_ASSERTIONS
#endif

typedef struct {PyObject **p; const char *s; const Py_ssize_t n; const char* encoding;
                const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;

#define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0
#define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT 0
#define __PYX_DEFAULT_STRING_ENCODING ""
#define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString
#define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#define __Pyx_uchar_cast(c) ((unsigned char)c)
#define __Pyx_long_cast(x) ((long)x)
#define __Pyx_fits_Py_ssize_t(v, type, is_signed)  (\
    (sizeof(type) < sizeof(Py_ssize_t))  ||\
    (sizeof(type) > sizeof(Py_ssize_t) &&\
          likely(v < (type)PY_SSIZE_T_MAX ||\
                 v == (type)PY_SSIZE_T_MAX)  &&\
          (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\
                                v == (type)PY_SSIZE_T_MIN)))  ||\
    (sizeof(type) == sizeof(Py_ssize_t) &&\
          (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\
                               v == (type)PY_SSIZE_T_MAX)))  )
#if defined (__cplusplus) && __cplusplus >= 201103L
    #include 
    #define __Pyx_sst_abs(value) std::abs(value)
#elif SIZEOF_INT >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) abs(value)
#elif SIZEOF_LONG >= SIZEOF_SIZE_T
    #define __Pyx_sst_abs(value) labs(value)
#elif defined (_MSC_VER)
    #define __Pyx_sst_abs(value) ((Py_ssize_t)_abs64(value))
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
    #define __Pyx_sst_abs(value) llabs(value)
#elif defined (__GNUC__)
    #define __Pyx_sst_abs(value) __builtin_llabs(value)
#else
    #define __Pyx_sst_abs(value) ((value<0) ? -value : value)
#endif
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject*);
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s))
#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
#define __Pyx_PyBytes_FromString        PyBytes_FromString
#define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
#if PY_MAJOR_VERSION < 3
    #define __Pyx_PyStr_FromString        __Pyx_PyBytes_FromString
    #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
#else
    #define __Pyx_PyStr_FromString        __Pyx_PyUnicode_FromString
    #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize
#endif
#define __Pyx_PyBytes_AsWritableString(s)     ((char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableSString(s)    ((signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsWritableUString(s)    ((unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsString(s)     ((const char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsSString(s)    ((const signed char*) PyBytes_AS_STRING(s))
#define __Pyx_PyBytes_AsUString(s)    ((const unsigned char*) PyBytes_AS_STRING(s))
#define __Pyx_PyObject_AsWritableString(s)    ((char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableSString(s)    ((signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsWritableUString(s)    ((unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsSString(s)    ((const signed char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_AsUString(s)    ((const unsigned char*) __Pyx_PyObject_AsString(s))
#define __Pyx_PyObject_FromCString(s)  __Pyx_PyObject_FromString((const char*)s)
#define __Pyx_PyBytes_FromCString(s)   __Pyx_PyBytes_FromString((const char*)s)
#define __Pyx_PyByteArray_FromCString(s)   __Pyx_PyByteArray_FromString((const char*)s)
#define __Pyx_PyStr_FromCString(s)     __Pyx_PyStr_FromString((const char*)s)
#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u) {
    const Py_UNICODE *u_end = u;
    while (*u_end++) ;
    return (size_t)(u_end - u - 1);
}
#define __Pyx_PyUnicode_FromUnicode(u)       PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u))
#define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode
#define __Pyx_PyUnicode_AsUnicode            PyUnicode_AsUnicode
#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj)
#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None)
#define __Pyx_PyBool_FromLong(b) ((b) ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False))
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x);
#define __Pyx_PySequence_Tuple(obj)\
    (likely(PyTuple_CheckExact(obj)) ? __Pyx_NewRef(obj) : PySequence_Tuple(obj))
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
#if CYTHON_ASSUME_SAFE_MACROS
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
#else
#define __pyx_PyFloat_AsDouble(x) PyFloat_AsDouble(x)
#endif
#define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x))
#if PY_MAJOR_VERSION >= 3
#define __Pyx_PyNumber_Int(x) (PyLong_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Long(x))
#else
#define __Pyx_PyNumber_Int(x) (PyInt_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Int(x))
#endif
#define __Pyx_PyNumber_Float(x) (PyFloat_CheckExact(x) ? __Pyx_NewRef(x) : PyNumber_Float(x))
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
static int __Pyx_sys_getdefaultencoding_not_ascii;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
    PyObject* sys;
    PyObject* default_encoding = NULL;
    PyObject* ascii_chars_u = NULL;
    PyObject* ascii_chars_b = NULL;
    const char* default_encoding_c;
    sys = PyImport_ImportModule("sys");
    if (!sys) goto bad;
    default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL);
    Py_DECREF(sys);
    if (!default_encoding) goto bad;
    default_encoding_c = PyBytes_AsString(default_encoding);
    if (!default_encoding_c) goto bad;
    if (strcmp(default_encoding_c, "ascii") == 0) {
        __Pyx_sys_getdefaultencoding_not_ascii = 0;
    } else {
        char ascii_chars[128];
        int c;
        for (c = 0; c < 128; c++) {
            ascii_chars[c] = c;
        }
        __Pyx_sys_getdefaultencoding_not_ascii = 1;
        ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL);
        if (!ascii_chars_u) goto bad;
        ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL);
        if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) {
            PyErr_Format(
                PyExc_ValueError,
                "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.",
                default_encoding_c);
            goto bad;
        }
        Py_DECREF(ascii_chars_u);
        Py_DECREF(ascii_chars_b);
    }
    Py_DECREF(default_encoding);
    return 0;
bad:
    Py_XDECREF(default_encoding);
    Py_XDECREF(ascii_chars_u);
    Py_XDECREF(ascii_chars_b);
    return -1;
}
#endif
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT && PY_MAJOR_VERSION >= 3
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_DecodeUTF8(c_str, size, NULL)
#else
#define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL)
#if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
static char* __PYX_DEFAULT_STRING_ENCODING;
static int __Pyx_init_sys_getdefaultencoding_params(void) {
    PyObject* sys;
    PyObject* default_encoding = NULL;
    char* default_encoding_c;
    sys = PyImport_ImportModule("sys");
    if (!sys) goto bad;
    default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL);
    Py_DECREF(sys);
    if (!default_encoding) goto bad;
    default_encoding_c = PyBytes_AsString(default_encoding);
    if (!default_encoding_c) goto bad;
    __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c));
    if (!__PYX_DEFAULT_STRING_ENCODING) goto bad;
    strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c);
    Py_DECREF(default_encoding);
    return 0;
bad:
    Py_XDECREF(default_encoding);
    return -1;
}
#endif
#endif


/* Test for GCC > 2.95 */
#if defined(__GNUC__)     && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)))
  #define likely(x)   __builtin_expect(!!(x), 1)
  #define unlikely(x) __builtin_expect(!!(x), 0)
#else /* !__GNUC__ or GCC < 2.95 */
  #define likely(x)   (x)
  #define unlikely(x) (x)
#endif /* __GNUC__ */
static CYTHON_INLINE void __Pyx_pretend_to_initialize(void* ptr) { (void)ptr; }

static PyObject *__pyx_m = NULL;
static PyObject *__pyx_d;
static PyObject *__pyx_b;
static PyObject *__pyx_cython_runtime;
static PyObject *__pyx_empty_tuple;
static PyObject *__pyx_empty_bytes;
static PyObject *__pyx_empty_unicode;
static int __pyx_lineno;
static int __pyx_clineno = 0;
static const char * __pyx_cfilenm= __FILE__;
static const char *__pyx_filename;

/* Header.proto */
#if !defined(CYTHON_CCOMPLEX)
  #if defined(__cplusplus)
    #define CYTHON_CCOMPLEX 1
  #elif defined(_Complex_I)
    #define CYTHON_CCOMPLEX 1
  #else
    #define CYTHON_CCOMPLEX 0
  #endif
#endif
#if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    #include 
  #else
    #include 
  #endif
#endif
#if CYTHON_CCOMPLEX && !defined(__cplusplus) && defined(__sun__) && defined(__GNUC__)
  #undef _Complex_I
  #define _Complex_I 1.0fj
#endif


static const char *__pyx_f[] = {
  "gpu_nms.pyx",
  "__init__.pxd",
  "type.pxd",
};
/* BufferFormatStructs.proto */
#define IS_UNSIGNED(type) (((type) -1) > 0)
struct __Pyx_StructField_;
#define __PYX_BUF_FLAGS_PACKED_STRUCT (1 << 0)
typedef struct {
  const char* name;
  struct __Pyx_StructField_* fields;
  size_t size;
  size_t arraysize[8];
  int ndim;
  char typegroup;
  char is_unsigned;
  int flags;
} __Pyx_TypeInfo;
typedef struct __Pyx_StructField_ {
  __Pyx_TypeInfo* type;
  const char* name;
  size_t offset;
} __Pyx_StructField;
typedef struct {
  __Pyx_StructField* field;
  size_t parent_offset;
} __Pyx_BufFmt_StackElem;
typedef struct {
  __Pyx_StructField root;
  __Pyx_BufFmt_StackElem* head;
  size_t fmt_offset;
  size_t new_count, enc_count;
  size_t struct_alignment;
  int is_complex;
  char enc_type;
  char new_packmode;
  char enc_packmode;
  char is_valid_array;
} __Pyx_BufFmt_Context;


/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":730
 * # in Cython to enable them only on the right systems.
 * 
 * ctypedef npy_int8       int8_t             # <<<<<<<<<<<<<<
 * ctypedef npy_int16      int16_t
 * ctypedef npy_int32      int32_t
 */
typedef npy_int8 __pyx_t_5numpy_int8_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":731
 * 
 * ctypedef npy_int8       int8_t
 * ctypedef npy_int16      int16_t             # <<<<<<<<<<<<<<
 * ctypedef npy_int32      int32_t
 * ctypedef npy_int64      int64_t
 */
typedef npy_int16 __pyx_t_5numpy_int16_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":732
 * ctypedef npy_int8       int8_t
 * ctypedef npy_int16      int16_t
 * ctypedef npy_int32      int32_t             # <<<<<<<<<<<<<<
 * ctypedef npy_int64      int64_t
 * #ctypedef npy_int96      int96_t
 */
typedef npy_int32 __pyx_t_5numpy_int32_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":733
 * ctypedef npy_int16      int16_t
 * ctypedef npy_int32      int32_t
 * ctypedef npy_int64      int64_t             # <<<<<<<<<<<<<<
 * #ctypedef npy_int96      int96_t
 * #ctypedef npy_int128     int128_t
 */
typedef npy_int64 __pyx_t_5numpy_int64_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":737
 * #ctypedef npy_int128     int128_t
 * 
 * ctypedef npy_uint8      uint8_t             # <<<<<<<<<<<<<<
 * ctypedef npy_uint16     uint16_t
 * ctypedef npy_uint32     uint32_t
 */
typedef npy_uint8 __pyx_t_5numpy_uint8_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":738
 * 
 * ctypedef npy_uint8      uint8_t
 * ctypedef npy_uint16     uint16_t             # <<<<<<<<<<<<<<
 * ctypedef npy_uint32     uint32_t
 * ctypedef npy_uint64     uint64_t
 */
typedef npy_uint16 __pyx_t_5numpy_uint16_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":739
 * ctypedef npy_uint8      uint8_t
 * ctypedef npy_uint16     uint16_t
 * ctypedef npy_uint32     uint32_t             # <<<<<<<<<<<<<<
 * ctypedef npy_uint64     uint64_t
 * #ctypedef npy_uint96     uint96_t
 */
typedef npy_uint32 __pyx_t_5numpy_uint32_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":740
 * ctypedef npy_uint16     uint16_t
 * ctypedef npy_uint32     uint32_t
 * ctypedef npy_uint64     uint64_t             # <<<<<<<<<<<<<<
 * #ctypedef npy_uint96     uint96_t
 * #ctypedef npy_uint128    uint128_t
 */
typedef npy_uint64 __pyx_t_5numpy_uint64_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":744
 * #ctypedef npy_uint128    uint128_t
 * 
 * ctypedef npy_float32    float32_t             # <<<<<<<<<<<<<<
 * ctypedef npy_float64    float64_t
 * #ctypedef npy_float80    float80_t
 */
typedef npy_float32 __pyx_t_5numpy_float32_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":745
 * 
 * ctypedef npy_float32    float32_t
 * ctypedef npy_float64    float64_t             # <<<<<<<<<<<<<<
 * #ctypedef npy_float80    float80_t
 * #ctypedef npy_float128   float128_t
 */
typedef npy_float64 __pyx_t_5numpy_float64_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":754
 * # The int types are mapped a bit surprising --
 * # numpy.int corresponds to 'l' and numpy.long to 'q'
 * ctypedef npy_long       int_t             # <<<<<<<<<<<<<<
 * ctypedef npy_longlong   long_t
 * ctypedef npy_longlong   longlong_t
 */
typedef npy_long __pyx_t_5numpy_int_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":755
 * # numpy.int corresponds to 'l' and numpy.long to 'q'
 * ctypedef npy_long       int_t
 * ctypedef npy_longlong   long_t             # <<<<<<<<<<<<<<
 * ctypedef npy_longlong   longlong_t
 * 
 */
typedef npy_longlong __pyx_t_5numpy_long_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":756
 * ctypedef npy_long       int_t
 * ctypedef npy_longlong   long_t
 * ctypedef npy_longlong   longlong_t             # <<<<<<<<<<<<<<
 * 
 * ctypedef npy_ulong      uint_t
 */
typedef npy_longlong __pyx_t_5numpy_longlong_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":758
 * ctypedef npy_longlong   longlong_t
 * 
 * ctypedef npy_ulong      uint_t             # <<<<<<<<<<<<<<
 * ctypedef npy_ulonglong  ulong_t
 * ctypedef npy_ulonglong  ulonglong_t
 */
typedef npy_ulong __pyx_t_5numpy_uint_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":759
 * 
 * ctypedef npy_ulong      uint_t
 * ctypedef npy_ulonglong  ulong_t             # <<<<<<<<<<<<<<
 * ctypedef npy_ulonglong  ulonglong_t
 * 
 */
typedef npy_ulonglong __pyx_t_5numpy_ulong_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":760
 * ctypedef npy_ulong      uint_t
 * ctypedef npy_ulonglong  ulong_t
 * ctypedef npy_ulonglong  ulonglong_t             # <<<<<<<<<<<<<<
 * 
 * ctypedef npy_intp       intp_t
 */
typedef npy_ulonglong __pyx_t_5numpy_ulonglong_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":762
 * ctypedef npy_ulonglong  ulonglong_t
 * 
 * ctypedef npy_intp       intp_t             # <<<<<<<<<<<<<<
 * ctypedef npy_uintp      uintp_t
 * 
 */
typedef npy_intp __pyx_t_5numpy_intp_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":763
 * 
 * ctypedef npy_intp       intp_t
 * ctypedef npy_uintp      uintp_t             # <<<<<<<<<<<<<<
 * 
 * ctypedef npy_double     float_t
 */
typedef npy_uintp __pyx_t_5numpy_uintp_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":765
 * ctypedef npy_uintp      uintp_t
 * 
 * ctypedef npy_double     float_t             # <<<<<<<<<<<<<<
 * ctypedef npy_double     double_t
 * ctypedef npy_longdouble longdouble_t
 */
typedef npy_double __pyx_t_5numpy_float_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":766
 * 
 * ctypedef npy_double     float_t
 * ctypedef npy_double     double_t             # <<<<<<<<<<<<<<
 * ctypedef npy_longdouble longdouble_t
 * 
 */
typedef npy_double __pyx_t_5numpy_double_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":767
 * ctypedef npy_double     float_t
 * ctypedef npy_double     double_t
 * ctypedef npy_longdouble longdouble_t             # <<<<<<<<<<<<<<
 * 
 * ctypedef npy_cfloat      cfloat_t
 */
typedef npy_longdouble __pyx_t_5numpy_longdouble_t;
/* Declarations.proto */
#if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    typedef ::std::complex< float > __pyx_t_float_complex;
  #else
    typedef float _Complex __pyx_t_float_complex;
  #endif
#else
    typedef struct { float real, imag; } __pyx_t_float_complex;
#endif
static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float, float);

/* Declarations.proto */
#if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    typedef ::std::complex< double > __pyx_t_double_complex;
  #else
    typedef double _Complex __pyx_t_double_complex;
  #endif
#else
    typedef struct { double real, imag; } __pyx_t_double_complex;
#endif
static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double, double);


/*--- Type declarations ---*/

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":769
 * ctypedef npy_longdouble longdouble_t
 * 
 * ctypedef npy_cfloat      cfloat_t             # <<<<<<<<<<<<<<
 * ctypedef npy_cdouble     cdouble_t
 * ctypedef npy_clongdouble clongdouble_t
 */
typedef npy_cfloat __pyx_t_5numpy_cfloat_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":770
 * 
 * ctypedef npy_cfloat      cfloat_t
 * ctypedef npy_cdouble     cdouble_t             # <<<<<<<<<<<<<<
 * ctypedef npy_clongdouble clongdouble_t
 * 
 */
typedef npy_cdouble __pyx_t_5numpy_cdouble_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":771
 * ctypedef npy_cfloat      cfloat_t
 * ctypedef npy_cdouble     cdouble_t
 * ctypedef npy_clongdouble clongdouble_t             # <<<<<<<<<<<<<<
 * 
 * ctypedef npy_cdouble     complex_t
 */
typedef npy_clongdouble __pyx_t_5numpy_clongdouble_t;

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":773
 * ctypedef npy_clongdouble clongdouble_t
 * 
 * ctypedef npy_cdouble     complex_t             # <<<<<<<<<<<<<<
 * 
 * cdef inline object PyArray_MultiIterNew1(a):
 */
typedef npy_cdouble __pyx_t_5numpy_complex_t;

/* --- Runtime support code (head) --- */
/* Refnanny.proto */
#ifndef CYTHON_REFNANNY
  #define CYTHON_REFNANNY 0
#endif
#if CYTHON_REFNANNY
  typedef struct {
    void (*INCREF)(void*, PyObject*, int);
    void (*DECREF)(void*, PyObject*, int);
    void (*GOTREF)(void*, PyObject*, int);
    void (*GIVEREF)(void*, PyObject*, int);
    void* (*SetupContext)(const char*, int, const char*);
    void (*FinishContext)(void**);
  } __Pyx_RefNannyAPIStruct;
  static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;
  static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname);
  #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL;
#ifdef WITH_THREAD
  #define __Pyx_RefNannySetupContext(name, acquire_gil)\
          if (acquire_gil) {\
              PyGILState_STATE __pyx_gilstate_save = PyGILState_Ensure();\
              __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\
              PyGILState_Release(__pyx_gilstate_save);\
          } else {\
              __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__);\
          }
#else
  #define __Pyx_RefNannySetupContext(name, acquire_gil)\
          __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__)
#endif
  #define __Pyx_RefNannyFinishContext()\
          __Pyx_RefNanny->FinishContext(&__pyx_refnanny)
  #define __Pyx_INCREF(r)  __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_DECREF(r)  __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_GOTREF(r)  __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
  #define __Pyx_XINCREF(r)  do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0)
  #define __Pyx_XDECREF(r)  do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0)
  #define __Pyx_XGOTREF(r)  do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0)
  #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0)
#else
  #define __Pyx_RefNannyDeclarations
  #define __Pyx_RefNannySetupContext(name, acquire_gil)
  #define __Pyx_RefNannyFinishContext()
  #define __Pyx_INCREF(r) Py_INCREF(r)
  #define __Pyx_DECREF(r) Py_DECREF(r)
  #define __Pyx_GOTREF(r)
  #define __Pyx_GIVEREF(r)
  #define __Pyx_XINCREF(r) Py_XINCREF(r)
  #define __Pyx_XDECREF(r) Py_XDECREF(r)
  #define __Pyx_XGOTREF(r)
  #define __Pyx_XGIVEREF(r)
#endif
#define __Pyx_XDECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; __Pyx_XDECREF(tmp);\
    } while (0)
#define __Pyx_DECREF_SET(r, v) do {\
        PyObject *tmp = (PyObject *) r;\
        r = v; __Pyx_DECREF(tmp);\
    } while (0)
#define __Pyx_CLEAR(r)    do { PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);} while(0)
#define __Pyx_XCLEAR(r)   do { if((r) != NULL) {PyObject* tmp = ((PyObject*)(r)); r = NULL; __Pyx_DECREF(tmp);}} while(0)

/* RaiseArgTupleInvalid.proto */
static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact,
    Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found);

/* RaiseDoubleKeywords.proto */
static void __Pyx_RaiseDoubleKeywordsError(const char* func_name, PyObject* kw_name);

/* ParseKeywords.proto */
static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[],\
    PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args,\
    const char* function_name);

/* ArgTypeTest.proto */
#define __Pyx_ArgTypeTest(obj, type, none_allowed, name, exact)\
    ((likely((Py_TYPE(obj) == type) | (none_allowed && (obj == Py_None)))) ? 1 :\
        __Pyx__ArgTypeTest(obj, type, name, exact))
static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact);

/* IsLittleEndian.proto */
static CYTHON_INLINE int __Pyx_Is_Little_Endian(void);

/* BufferFormatCheck.proto */
static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts);
static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx,
                              __Pyx_BufFmt_StackElem* stack,
                              __Pyx_TypeInfo* type);

/* BufferGetAndValidate.proto */
#define __Pyx_GetBufferAndValidate(buf, obj, dtype, flags, nd, cast, stack)\
    ((obj == Py_None || obj == NULL) ?\
    (__Pyx_ZeroBuffer(buf), 0) :\
    __Pyx__GetBufferAndValidate(buf, obj, dtype, flags, nd, cast, stack))
static int  __Pyx__GetBufferAndValidate(Py_buffer* buf, PyObject* obj,
    __Pyx_TypeInfo* dtype, int flags, int nd, int cast, __Pyx_BufFmt_StackElem* stack);
static void __Pyx_ZeroBuffer(Py_buffer* buf);
static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info);
static Py_ssize_t __Pyx_minusones[] = { -1, -1, -1, -1, -1, -1, -1, -1 };
static Py_ssize_t __Pyx_zeros[] = { 0, 0, 0, 0, 0, 0, 0, 0 };

/* PyObjectGetAttrStr.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name);
#else
#define __Pyx_PyObject_GetAttrStr(o,n) PyObject_GetAttr(o,n)
#endif

/* GetBuiltinName.proto */
static PyObject *__Pyx_GetBuiltinName(PyObject *name);

/* GetModuleGlobalName.proto */
static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name);

/* PyObjectCall.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw);
#else
#define __Pyx_PyObject_Call(func, arg, kw) PyObject_Call(func, arg, kw)
#endif

/* ExtTypeTest.proto */
static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type);

/* GetItemInt.proto */
#define __Pyx_GetItemInt(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_Fast(o, (Py_ssize_t)i, is_list, wraparound, boundscheck) :\
    (is_list ? (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL) :\
               __Pyx_GetItemInt_Generic(o, to_py_func(i))))
#define __Pyx_GetItemInt_List(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_List_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\
    (PyErr_SetString(PyExc_IndexError, "list index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
                                                              int wraparound, int boundscheck);
#define __Pyx_GetItemInt_Tuple(o, i, type, is_signed, to_py_func, is_list, wraparound, boundscheck)\
    (__Pyx_fits_Py_ssize_t(i, type, is_signed) ?\
    __Pyx_GetItemInt_Tuple_Fast(o, (Py_ssize_t)i, wraparound, boundscheck) :\
    (PyErr_SetString(PyExc_IndexError, "tuple index out of range"), (PyObject*)NULL))
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
                                                              int wraparound, int boundscheck);
static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j);
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i,
                                                     int is_list, int wraparound, int boundscheck);

/* ObjectGetItem.proto */
#if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key);
#else
#define __Pyx_PyObject_GetItem(obj, key)  PyObject_GetItem(obj, key)
#endif

/* PyCFunctionFastCall.proto */
#if CYTHON_FAST_PYCCALL
static CYTHON_INLINE PyObject *__Pyx_PyCFunction_FastCall(PyObject *func, PyObject **args, Py_ssize_t nargs);
#else
#define __Pyx_PyCFunction_FastCall(func, args, nargs)  (assert(0), NULL)
#endif

/* PyFunctionFastCall.proto */
#if CYTHON_FAST_PYCALL
#define __Pyx_PyFunction_FastCall(func, args, nargs)\
    __Pyx_PyFunction_FastCallDict((func), (args), (nargs), NULL)
#if 1 || PY_VERSION_HEX < 0x030600B1
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs);
#else
#define __Pyx_PyFunction_FastCallDict(func, args, nargs, kwargs) _PyFunction_FastCallDict(func, args, nargs, kwargs)
#endif
#endif

/* PyObjectCallMethO.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg);
#endif

/* PyObjectCallOneArg.proto */
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg);

/* PyObjectCallNoArg.proto */
#if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func);
#else
#define __Pyx_PyObject_CallNoArg(func) __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL)
#endif

/* BufferIndexError.proto */
static void __Pyx_RaiseBufferIndexError(int axis);

#define __Pyx_BufPtrStrided1d(type, buf, i0, s0) (type)((char*)buf + i0 * s0)
#define __Pyx_BufPtrStrided2d(type, buf, i0, s0, i1, s1) (type)((char*)buf + i0 * s0 + i1 * s1)
/* BufferFallbackError.proto */
static void __Pyx_RaiseBufferFallbackError(void);

/* PyThreadStateGet.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyThreadState_declare  PyThreadState *__pyx_tstate;
#define __Pyx_PyThreadState_assign  __pyx_tstate = __Pyx_PyThreadState_Current;
#define __Pyx_PyErr_Occurred()  __pyx_tstate->curexc_type
#else
#define __Pyx_PyThreadState_declare
#define __Pyx_PyThreadState_assign
#define __Pyx_PyErr_Occurred()  PyErr_Occurred()
#endif

/* PyErrFetchRestore.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_Clear() __Pyx_ErrRestore(NULL, NULL, NULL)
#define __Pyx_ErrRestoreWithState(type, value, tb)  __Pyx_ErrRestoreInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb)    __Pyx_ErrFetchInState(PyThreadState_GET(), type, value, tb)
#define __Pyx_ErrRestore(type, value, tb)  __Pyx_ErrRestoreInState(__pyx_tstate, type, value, tb)
#define __Pyx_ErrFetch(type, value, tb)    __Pyx_ErrFetchInState(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_PyErr_SetNone(exc) (Py_INCREF(exc), __Pyx_ErrRestore((exc), NULL, NULL))
#else
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#endif
#else
#define __Pyx_PyErr_Clear() PyErr_Clear()
#define __Pyx_PyErr_SetNone(exc) PyErr_SetNone(exc)
#define __Pyx_ErrRestoreWithState(type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchWithState(type, value, tb)  PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestoreInState(tstate, type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetchInState(tstate, type, value, tb)  PyErr_Fetch(type, value, tb)
#define __Pyx_ErrRestore(type, value, tb)  PyErr_Restore(type, value, tb)
#define __Pyx_ErrFetch(type, value, tb)  PyErr_Fetch(type, value, tb)
#endif

/* RaiseException.proto */
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause);

/* DictGetItem.proto */
#if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY
static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key);
#define __Pyx_PyObject_Dict_GetItem(obj, name)\
    (likely(PyDict_CheckExact(obj)) ?\
     __Pyx_PyDict_GetItem(obj, name) : PyObject_GetItem(obj, name))
#else
#define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key)
#define __Pyx_PyObject_Dict_GetItem(obj, name)  PyObject_GetItem(obj, name)
#endif

/* RaiseTooManyValuesToUnpack.proto */
static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected);

/* RaiseNeedMoreValuesToUnpack.proto */
static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index);

/* RaiseNoneIterError.proto */
static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void);

/* SaveResetException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_ExceptionSave(type, value, tb)  __Pyx__ExceptionSave(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#define __Pyx_ExceptionReset(type, value, tb)  __Pyx__ExceptionReset(__pyx_tstate, type, value, tb)
static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb);
#else
#define __Pyx_ExceptionSave(type, value, tb)   PyErr_GetExcInfo(type, value, tb)
#define __Pyx_ExceptionReset(type, value, tb)  PyErr_SetExcInfo(type, value, tb)
#endif

/* PyErrExceptionMatches.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_PyErr_ExceptionMatches(err) __Pyx_PyErr_ExceptionMatchesInState(__pyx_tstate, err)
static CYTHON_INLINE int __Pyx_PyErr_ExceptionMatchesInState(PyThreadState* tstate, PyObject* err);
#else
#define __Pyx_PyErr_ExceptionMatches(err)  PyErr_ExceptionMatches(err)
#endif

/* GetException.proto */
#if CYTHON_FAST_THREAD_STATE
#define __Pyx_GetException(type, value, tb)  __Pyx__GetException(__pyx_tstate, type, value, tb)
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb);
#else
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb);
#endif

/* Import.proto */
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level);

/* CLineInTraceback.proto */
#ifdef CYTHON_CLINE_IN_TRACEBACK
#define __Pyx_CLineForTraceback(tstate, c_line)  (((CYTHON_CLINE_IN_TRACEBACK)) ? c_line : 0)
#else
static int __Pyx_CLineForTraceback(PyThreadState *tstate, int c_line);
#endif

/* CodeObjectCache.proto */
typedef struct {
    PyCodeObject* code_object;
    int code_line;
} __Pyx_CodeObjectCacheEntry;
struct __Pyx_CodeObjectCache {
    int count;
    int max_count;
    __Pyx_CodeObjectCacheEntry* entries;
};
static struct __Pyx_CodeObjectCache __pyx_code_cache = {0,0,NULL};
static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line);
static PyCodeObject *__pyx_find_code_object(int code_line);
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object);

/* AddTraceback.proto */
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename);

/* BufferStructDeclare.proto */
typedef struct {
  Py_ssize_t shape, strides, suboffsets;
} __Pyx_Buf_DimInfo;
typedef struct {
  size_t refcount;
  Py_buffer pybuffer;
} __Pyx_Buffer;
typedef struct {
  __Pyx_Buffer *rcbuffer;
  char *data;
  __Pyx_Buf_DimInfo diminfo[8];
} __Pyx_LocalBuf_ND;

#if PY_MAJOR_VERSION < 3
    static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags);
    static void __Pyx_ReleaseBuffer(Py_buffer *view);
#else
    #define __Pyx_GetBuffer PyObject_GetBuffer
    #define __Pyx_ReleaseBuffer PyBuffer_Release
#endif


/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value);

/* RealImag.proto */
#if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    #define __Pyx_CREAL(z) ((z).real())
    #define __Pyx_CIMAG(z) ((z).imag())
  #else
    #define __Pyx_CREAL(z) (__real__(z))
    #define __Pyx_CIMAG(z) (__imag__(z))
  #endif
#else
    #define __Pyx_CREAL(z) ((z).real)
    #define __Pyx_CIMAG(z) ((z).imag)
#endif
#if defined(__cplusplus) && CYTHON_CCOMPLEX\
        && (defined(_WIN32) || defined(__clang__) || (defined(__GNUC__) && (__GNUC__ >= 5 || __GNUC__ == 4 && __GNUC_MINOR__ >= 4 )) || __cplusplus >= 201103)
    #define __Pyx_SET_CREAL(z,x) ((z).real(x))
    #define __Pyx_SET_CIMAG(z,y) ((z).imag(y))
#else
    #define __Pyx_SET_CREAL(z,x) __Pyx_CREAL(z) = (x)
    #define __Pyx_SET_CIMAG(z,y) __Pyx_CIMAG(z) = (y)
#endif

/* Arithmetic.proto */
#if CYTHON_CCOMPLEX
    #define __Pyx_c_eq_float(a, b)   ((a)==(b))
    #define __Pyx_c_sum_float(a, b)  ((a)+(b))
    #define __Pyx_c_diff_float(a, b) ((a)-(b))
    #define __Pyx_c_prod_float(a, b) ((a)*(b))
    #define __Pyx_c_quot_float(a, b) ((a)/(b))
    #define __Pyx_c_neg_float(a)     (-(a))
  #ifdef __cplusplus
    #define __Pyx_c_is_zero_float(z) ((z)==(float)0)
    #define __Pyx_c_conj_float(z)    (::std::conj(z))
    #if 1
        #define __Pyx_c_abs_float(z)     (::std::abs(z))
        #define __Pyx_c_pow_float(a, b)  (::std::pow(a, b))
    #endif
  #else
    #define __Pyx_c_is_zero_float(z) ((z)==0)
    #define __Pyx_c_conj_float(z)    (conjf(z))
    #if 1
        #define __Pyx_c_abs_float(z)     (cabsf(z))
        #define __Pyx_c_pow_float(a, b)  (cpowf(a, b))
    #endif
 #endif
#else
    static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex, __pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex, __pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex, __pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex, __pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex, __pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex);
    static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex);
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex);
    #if 1
        static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex);
        static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex, __pyx_t_float_complex);
    #endif
#endif

/* Arithmetic.proto */
#if CYTHON_CCOMPLEX
    #define __Pyx_c_eq_double(a, b)   ((a)==(b))
    #define __Pyx_c_sum_double(a, b)  ((a)+(b))
    #define __Pyx_c_diff_double(a, b) ((a)-(b))
    #define __Pyx_c_prod_double(a, b) ((a)*(b))
    #define __Pyx_c_quot_double(a, b) ((a)/(b))
    #define __Pyx_c_neg_double(a)     (-(a))
  #ifdef __cplusplus
    #define __Pyx_c_is_zero_double(z) ((z)==(double)0)
    #define __Pyx_c_conj_double(z)    (::std::conj(z))
    #if 1
        #define __Pyx_c_abs_double(z)     (::std::abs(z))
        #define __Pyx_c_pow_double(a, b)  (::std::pow(a, b))
    #endif
  #else
    #define __Pyx_c_is_zero_double(z) ((z)==0)
    #define __Pyx_c_conj_double(z)    (conj(z))
    #if 1
        #define __Pyx_c_abs_double(z)     (cabs(z))
        #define __Pyx_c_pow_double(a, b)  (cpow(a, b))
    #endif
 #endif
#else
    static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex, __pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex, __pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex, __pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex, __pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex, __pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex);
    static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex);
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex);
    #if 1
        static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex);
        static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex, __pyx_t_double_complex);
    #endif
#endif

/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum__NPY_TYPES(enum NPY_TYPES value);

/* CIntFromPy.proto */
static CYTHON_INLINE npy_int32 __Pyx_PyInt_As_npy_int32(PyObject *);

/* CIntFromPy.proto */
static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *);

/* CIntToPy.proto */
static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value);

/* CIntFromPy.proto */
static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *);

/* FastTypeChecks.proto */
#if CYTHON_COMPILING_IN_CPYTHON
#define __Pyx_TypeCheck(obj, type) __Pyx_IsSubtype(Py_TYPE(obj), (PyTypeObject *)type)
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject *type);
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *type1, PyObject *type2);
#else
#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
#define __Pyx_PyErr_GivenExceptionMatches(err, type) PyErr_GivenExceptionMatches(err, type)
#define __Pyx_PyErr_GivenExceptionMatches2(err, type1, type2) (PyErr_GivenExceptionMatches(err, type1) || PyErr_GivenExceptionMatches(err, type2))
#endif
#define __Pyx_PyException_Check(obj) __Pyx_TypeCheck(obj, PyExc_Exception)

/* CheckBinaryVersion.proto */
static int __Pyx_check_binary_version(void);

/* PyIdentifierFromString.proto */
#if !defined(__Pyx_PyIdentifier_FromString)
#if PY_MAJOR_VERSION < 3
  #define __Pyx_PyIdentifier_FromString(s) PyString_FromString(s)
#else
  #define __Pyx_PyIdentifier_FromString(s) PyUnicode_FromString(s)
#endif
#endif

/* ModuleImport.proto */
static PyObject *__Pyx_ImportModule(const char *name);

/* TypeImport.proto */
static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name, size_t size, int strict);

/* InitStrings.proto */
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t);


/* Module declarations from 'cpython.buffer' */

/* Module declarations from 'libc.string' */

/* Module declarations from 'libc.stdio' */

/* Module declarations from '__builtin__' */

/* Module declarations from 'cpython.type' */
static PyTypeObject *__pyx_ptype_7cpython_4type_type = 0;

/* Module declarations from 'cpython' */

/* Module declarations from 'cpython.object' */

/* Module declarations from 'cpython.ref' */

/* Module declarations from 'cpython.mem' */

/* Module declarations from 'numpy' */

/* Module declarations from 'numpy' */
static PyTypeObject *__pyx_ptype_5numpy_dtype = 0;
static PyTypeObject *__pyx_ptype_5numpy_flatiter = 0;
static PyTypeObject *__pyx_ptype_5numpy_broadcast = 0;
static PyTypeObject *__pyx_ptype_5numpy_ndarray = 0;
static PyTypeObject *__pyx_ptype_5numpy_ufunc = 0;
static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *, char *, char *, int *); /*proto*/

/* Module declarations from 'gpu_nms' */
static __Pyx_TypeInfo __Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t = { "float32_t", NULL, sizeof(__pyx_t_5numpy_float32_t), { 0 }, 0, 'R', 0, 0 };
static __Pyx_TypeInfo __Pyx_TypeInfo_nn___pyx_t_5numpy_int32_t = { "int32_t", NULL, sizeof(__pyx_t_5numpy_int32_t), { 0 }, 0, IS_UNSIGNED(__pyx_t_5numpy_int32_t) ? 'U' : 'I', IS_UNSIGNED(__pyx_t_5numpy_int32_t), 0 };
static __Pyx_TypeInfo __Pyx_TypeInfo_nn___pyx_t_5numpy_int_t = { "int_t", NULL, sizeof(__pyx_t_5numpy_int_t), { 0 }, 0, IS_UNSIGNED(__pyx_t_5numpy_int_t) ? 'U' : 'I', IS_UNSIGNED(__pyx_t_5numpy_int_t), 0 };
#define __Pyx_MODULE_NAME "gpu_nms"
extern int __pyx_module_is_main_gpu_nms;
int __pyx_module_is_main_gpu_nms = 0;

/* Implementation of 'gpu_nms' */
static PyObject *__pyx_builtin_ValueError;
static PyObject *__pyx_builtin_range;
static PyObject *__pyx_builtin_RuntimeError;
static PyObject *__pyx_builtin_ImportError;
static const char __pyx_k_np[] = "np";
static const char __pyx_k_dets[] = "dets";
static const char __pyx_k_keep[] = "keep";
static const char __pyx_k_main[] = "__main__";
static const char __pyx_k_test[] = "__test__";
static const char __pyx_k_dtype[] = "dtype";
static const char __pyx_k_int32[] = "int32";
static const char __pyx_k_numpy[] = "numpy";
static const char __pyx_k_order[] = "order";
static const char __pyx_k_range[] = "range";
static const char __pyx_k_zeros[] = "zeros";
static const char __pyx_k_import[] = "__import__";
static const char __pyx_k_scores[] = "scores";
static const char __pyx_k_thresh[] = "thresh";
static const char __pyx_k_argsort[] = "argsort";
static const char __pyx_k_gpu_nms[] = "gpu_nms";
static const char __pyx_k_num_out[] = "num_out";
static const char __pyx_k_boxes_dim[] = "boxes_dim";
static const char __pyx_k_boxes_num[] = "boxes_num";
static const char __pyx_k_device_id[] = "device_id";
static const char __pyx_k_ValueError[] = "ValueError";
static const char __pyx_k_ImportError[] = "ImportError";
static const char __pyx_k_gpu_nms_pyx[] = "gpu_nms.pyx";
static const char __pyx_k_sorted_dets[] = "sorted_dets";
static const char __pyx_k_RuntimeError[] = "RuntimeError";
static const char __pyx_k_cline_in_traceback[] = "cline_in_traceback";
static const char __pyx_k_ndarray_is_not_C_contiguous[] = "ndarray is not C contiguous";
static const char __pyx_k_numpy_core_multiarray_failed_to[] = "numpy.core.multiarray failed to import";
static const char __pyx_k_unknown_dtype_code_in_numpy_pxd[] = "unknown dtype code in numpy.pxd (%d)";
static const char __pyx_k_Format_string_allocated_too_shor[] = "Format string allocated too short, see comment in numpy.pxd";
static const char __pyx_k_Non_native_byte_order_not_suppor[] = "Non-native byte order not supported";
static const char __pyx_k_ndarray_is_not_Fortran_contiguou[] = "ndarray is not Fortran contiguous";
static const char __pyx_k_numpy_core_umath_failed_to_impor[] = "numpy.core.umath failed to import";
static const char __pyx_k_Format_string_allocated_too_shor_2[] = "Format string allocated too short.";
static PyObject *__pyx_kp_u_Format_string_allocated_too_shor;
static PyObject *__pyx_kp_u_Format_string_allocated_too_shor_2;
static PyObject *__pyx_n_s_ImportError;
static PyObject *__pyx_kp_u_Non_native_byte_order_not_suppor;
static PyObject *__pyx_n_s_RuntimeError;
static PyObject *__pyx_n_s_ValueError;
static PyObject *__pyx_n_s_argsort;
static PyObject *__pyx_n_s_boxes_dim;
static PyObject *__pyx_n_s_boxes_num;
static PyObject *__pyx_n_s_cline_in_traceback;
static PyObject *__pyx_n_s_dets;
static PyObject *__pyx_n_s_device_id;
static PyObject *__pyx_n_s_dtype;
static PyObject *__pyx_n_s_gpu_nms;
static PyObject *__pyx_kp_s_gpu_nms_pyx;
static PyObject *__pyx_n_s_import;
static PyObject *__pyx_n_s_int32;
static PyObject *__pyx_n_s_keep;
static PyObject *__pyx_n_s_main;
static PyObject *__pyx_kp_u_ndarray_is_not_C_contiguous;
static PyObject *__pyx_kp_u_ndarray_is_not_Fortran_contiguou;
static PyObject *__pyx_n_s_np;
static PyObject *__pyx_n_s_num_out;
static PyObject *__pyx_n_s_numpy;
static PyObject *__pyx_kp_s_numpy_core_multiarray_failed_to;
static PyObject *__pyx_kp_s_numpy_core_umath_failed_to_impor;
static PyObject *__pyx_n_s_order;
static PyObject *__pyx_n_s_range;
static PyObject *__pyx_n_s_scores;
static PyObject *__pyx_n_s_sorted_dets;
static PyObject *__pyx_n_s_test;
static PyObject *__pyx_n_s_thresh;
static PyObject *__pyx_kp_u_unknown_dtype_code_in_numpy_pxd;
static PyObject *__pyx_n_s_zeros;
static PyObject *__pyx_pf_7gpu_nms_gpu_nms(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_dets, PyObject *__pyx_v_thresh, __pyx_t_5numpy_int32_t __pyx_v_device_id); /* proto */
static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /* proto */
static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info); /* proto */
static PyObject *__pyx_int_4;
static PyObject *__pyx_int_neg_1;
static PyObject *__pyx_slice_;
static PyObject *__pyx_slice__3;
static PyObject *__pyx_slice__4;
static PyObject *__pyx_tuple__2;
static PyObject *__pyx_tuple__5;
static PyObject *__pyx_tuple__6;
static PyObject *__pyx_tuple__7;
static PyObject *__pyx_tuple__8;
static PyObject *__pyx_tuple__9;
static PyObject *__pyx_tuple__10;
static PyObject *__pyx_tuple__11;
static PyObject *__pyx_tuple__12;
static PyObject *__pyx_tuple__13;
static PyObject *__pyx_tuple__14;
static PyObject *__pyx_codeobj__15;
/* Late includes */

/* "gpu_nms.pyx":16
 *     void _nms(np.int32_t*, int*, np.float32_t*, int, int, float, int)
 * 
 * def gpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh,             # <<<<<<<<<<<<<<
 *             np.int32_t device_id=0):
 *     cdef int boxes_num = dets.shape[0]
 */

/* Python wrapper */
static PyObject *__pyx_pw_7gpu_nms_1gpu_nms(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
static PyMethodDef __pyx_mdef_7gpu_nms_1gpu_nms = {"gpu_nms", (PyCFunction)__pyx_pw_7gpu_nms_1gpu_nms, METH_VARARGS|METH_KEYWORDS, 0};
static PyObject *__pyx_pw_7gpu_nms_1gpu_nms(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
  PyArrayObject *__pyx_v_dets = 0;
  PyObject *__pyx_v_thresh = 0;
  __pyx_t_5numpy_int32_t __pyx_v_device_id;
  PyObject *__pyx_r = 0;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("gpu_nms (wrapper)", 0);
  {
    static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_dets,&__pyx_n_s_thresh,&__pyx_n_s_device_id,0};
    PyObject* values[3] = {0,0,0};
    if (unlikely(__pyx_kwds)) {
      Py_ssize_t kw_args;
      const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
      switch (pos_args) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        CYTHON_FALLTHROUGH;
        case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        CYTHON_FALLTHROUGH;
        case  0: break;
        default: goto __pyx_L5_argtuple_error;
      }
      kw_args = PyDict_Size(__pyx_kwds);
      switch (pos_args) {
        case  0:
        if (likely((values[0] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_dets)) != 0)) kw_args--;
        else goto __pyx_L5_argtuple_error;
        CYTHON_FALLTHROUGH;
        case  1:
        if (likely((values[1] = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_thresh)) != 0)) kw_args--;
        else {
          __Pyx_RaiseArgtupleInvalid("gpu_nms", 0, 2, 3, 1); __PYX_ERR(0, 16, __pyx_L3_error)
        }
        CYTHON_FALLTHROUGH;
        case  2:
        if (kw_args > 0) {
          PyObject* value = __Pyx_PyDict_GetItemStr(__pyx_kwds, __pyx_n_s_device_id);
          if (value) { values[2] = value; kw_args--; }
        }
      }
      if (unlikely(kw_args > 0)) {
        if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "gpu_nms") < 0)) __PYX_ERR(0, 16, __pyx_L3_error)
      }
    } else {
      switch (PyTuple_GET_SIZE(__pyx_args)) {
        case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        CYTHON_FALLTHROUGH;
        case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        break;
        default: goto __pyx_L5_argtuple_error;
      }
    }
    __pyx_v_dets = ((PyArrayObject *)values[0]);
    __pyx_v_thresh = ((PyObject*)values[1]);
    if (values[2]) {
      __pyx_v_device_id = __Pyx_PyInt_As_npy_int32(values[2]); if (unlikely((__pyx_v_device_id == ((npy_int32)-1)) && PyErr_Occurred())) __PYX_ERR(0, 17, __pyx_L3_error)
    } else {
      __pyx_v_device_id = ((__pyx_t_5numpy_int32_t)0);
    }
  }
  goto __pyx_L4_argument_unpacking_done;
  __pyx_L5_argtuple_error:;
  __Pyx_RaiseArgtupleInvalid("gpu_nms", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); __PYX_ERR(0, 16, __pyx_L3_error)
  __pyx_L3_error:;
  __Pyx_AddTraceback("gpu_nms.gpu_nms", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __Pyx_RefNannyFinishContext();
  return NULL;
  __pyx_L4_argument_unpacking_done:;
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_dets), __pyx_ptype_5numpy_ndarray, 1, "dets", 0))) __PYX_ERR(0, 16, __pyx_L1_error)
  if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_thresh), (&PyFloat_Type), 1, "thresh", 1))) __PYX_ERR(0, 16, __pyx_L1_error)
  __pyx_r = __pyx_pf_7gpu_nms_gpu_nms(__pyx_self, __pyx_v_dets, __pyx_v_thresh, __pyx_v_device_id);

  /* function exit code */
  goto __pyx_L0;
  __pyx_L1_error:;
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyObject *__pyx_pf_7gpu_nms_gpu_nms(CYTHON_UNUSED PyObject *__pyx_self, PyArrayObject *__pyx_v_dets, PyObject *__pyx_v_thresh, __pyx_t_5numpy_int32_t __pyx_v_device_id) {
  int __pyx_v_boxes_num;
  int __pyx_v_boxes_dim;
  int __pyx_v_num_out;
  PyArrayObject *__pyx_v_keep = 0;
  PyArrayObject *__pyx_v_scores = 0;
  PyArrayObject *__pyx_v_order = 0;
  PyArrayObject *__pyx_v_sorted_dets = 0;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_dets;
  __Pyx_Buffer __pyx_pybuffer_dets;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_keep;
  __Pyx_Buffer __pyx_pybuffer_keep;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_order;
  __Pyx_Buffer __pyx_pybuffer_order;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_scores;
  __Pyx_Buffer __pyx_pybuffer_scores;
  __Pyx_LocalBuf_ND __pyx_pybuffernd_sorted_dets;
  __Pyx_Buffer __pyx_pybuffer_sorted_dets;
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  PyObject *__pyx_t_5 = NULL;
  PyArrayObject *__pyx_t_6 = NULL;
  PyArrayObject *__pyx_t_7 = NULL;
  PyArrayObject *__pyx_t_8 = NULL;
  PyArrayObject *__pyx_t_9 = NULL;
  Py_ssize_t __pyx_t_10;
  int __pyx_t_11;
  Py_ssize_t __pyx_t_12;
  Py_ssize_t __pyx_t_13;
  float __pyx_t_14;
  PyObject *__pyx_t_15 = NULL;
  PyObject *__pyx_t_16 = NULL;
  PyObject *__pyx_t_17 = NULL;
  __Pyx_RefNannySetupContext("gpu_nms", 0);
  __pyx_pybuffer_keep.pybuffer.buf = NULL;
  __pyx_pybuffer_keep.refcount = 0;
  __pyx_pybuffernd_keep.data = NULL;
  __pyx_pybuffernd_keep.rcbuffer = &__pyx_pybuffer_keep;
  __pyx_pybuffer_scores.pybuffer.buf = NULL;
  __pyx_pybuffer_scores.refcount = 0;
  __pyx_pybuffernd_scores.data = NULL;
  __pyx_pybuffernd_scores.rcbuffer = &__pyx_pybuffer_scores;
  __pyx_pybuffer_order.pybuffer.buf = NULL;
  __pyx_pybuffer_order.refcount = 0;
  __pyx_pybuffernd_order.data = NULL;
  __pyx_pybuffernd_order.rcbuffer = &__pyx_pybuffer_order;
  __pyx_pybuffer_sorted_dets.pybuffer.buf = NULL;
  __pyx_pybuffer_sorted_dets.refcount = 0;
  __pyx_pybuffernd_sorted_dets.data = NULL;
  __pyx_pybuffernd_sorted_dets.rcbuffer = &__pyx_pybuffer_sorted_dets;
  __pyx_pybuffer_dets.pybuffer.buf = NULL;
  __pyx_pybuffer_dets.refcount = 0;
  __pyx_pybuffernd_dets.data = NULL;
  __pyx_pybuffernd_dets.rcbuffer = &__pyx_pybuffer_dets;
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_dets.rcbuffer->pybuffer, (PyObject*)__pyx_v_dets, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) __PYX_ERR(0, 16, __pyx_L1_error)
  }
  __pyx_pybuffernd_dets.diminfo[0].strides = __pyx_pybuffernd_dets.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_dets.diminfo[0].shape = __pyx_pybuffernd_dets.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_dets.diminfo[1].strides = __pyx_pybuffernd_dets.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_dets.diminfo[1].shape = __pyx_pybuffernd_dets.rcbuffer->pybuffer.shape[1];

  /* "gpu_nms.pyx":18
 * def gpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh,
 *             np.int32_t device_id=0):
 *     cdef int boxes_num = dets.shape[0]             # <<<<<<<<<<<<<<
 *     cdef int boxes_dim = dets.shape[1]
 *     cdef int num_out
 */
  __pyx_v_boxes_num = (__pyx_v_dets->dimensions[0]);

  /* "gpu_nms.pyx":19
 *             np.int32_t device_id=0):
 *     cdef int boxes_num = dets.shape[0]
 *     cdef int boxes_dim = dets.shape[1]             # <<<<<<<<<<<<<<
 *     cdef int num_out
 *     cdef np.ndarray[np.int32_t, ndim=1] \
 */
  __pyx_v_boxes_dim = (__pyx_v_dets->dimensions[1]);

  /* "gpu_nms.pyx":22
 *     cdef int num_out
 *     cdef np.ndarray[np.int32_t, ndim=1] \
 *         keep = np.zeros(boxes_num, dtype=np.int32)             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=1] \
 *         scores = dets[:, 4]
 */
  __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_zeros); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_2);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyInt_From_int(__pyx_v_boxes_num); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_3);
  __Pyx_GIVEREF(__pyx_t_1);
  PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
  __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_4);
  __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_int32); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
  if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_5) < 0) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_t_3, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 22, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 22, __pyx_L1_error)
  __pyx_t_6 = ((PyArrayObject *)__pyx_t_5);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_keep.rcbuffer->pybuffer, (PyObject*)__pyx_t_6, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int32_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_keep = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_keep.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 21, __pyx_L1_error)
    } else {__pyx_pybuffernd_keep.diminfo[0].strides = __pyx_pybuffernd_keep.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_keep.diminfo[0].shape = __pyx_pybuffernd_keep.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_6 = 0;
  __pyx_v_keep = ((PyArrayObject *)__pyx_t_5);
  __pyx_t_5 = 0;

  /* "gpu_nms.pyx":24
 *         keep = np.zeros(boxes_num, dtype=np.int32)
 *     cdef np.ndarray[np.float32_t, ndim=1] \
 *         scores = dets[:, 4]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.int_t, ndim=1] \
 *         order = scores.argsort()[::-1]
 */
  __pyx_t_5 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_dets), __pyx_tuple__2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 24, __pyx_L1_error)
  __pyx_t_7 = ((PyArrayObject *)__pyx_t_5);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_scores.rcbuffer->pybuffer, (PyObject*)__pyx_t_7, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_scores = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_scores.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 23, __pyx_L1_error)
    } else {__pyx_pybuffernd_scores.diminfo[0].strides = __pyx_pybuffernd_scores.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_scores.diminfo[0].shape = __pyx_pybuffernd_scores.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_7 = 0;
  __pyx_v_scores = ((PyArrayObject *)__pyx_t_5);
  __pyx_t_5 = 0;

  /* "gpu_nms.pyx":26
 *         scores = dets[:, 4]
 *     cdef np.ndarray[np.int_t, ndim=1] \
 *         order = scores.argsort()[::-1]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=2] \
 *         sorted_dets = dets[order, :]
 */
  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(((PyObject *)__pyx_v_scores), __pyx_n_s_argsort); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 26, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_t_3 = NULL;
  if (CYTHON_UNPACK_METHODS && likely(PyMethod_Check(__pyx_t_1))) {
    __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_1);
    if (likely(__pyx_t_3)) {
      PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(function);
      __Pyx_DECREF_SET(__pyx_t_1, function);
    }
  }
  if (__pyx_t_3) {
    __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 26, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
  } else {
    __pyx_t_5 = __Pyx_PyObject_CallNoArg(__pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 26, __pyx_L1_error)
  }
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  __pyx_t_1 = __Pyx_PyObject_GetItem(__pyx_t_5, __pyx_slice__3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 26, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  if (!(likely(((__pyx_t_1) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_1, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 26, __pyx_L1_error)
  __pyx_t_8 = ((PyArrayObject *)__pyx_t_1);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_order.rcbuffer->pybuffer, (PyObject*)__pyx_t_8, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
      __pyx_v_order = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_order.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 25, __pyx_L1_error)
    } else {__pyx_pybuffernd_order.diminfo[0].strides = __pyx_pybuffernd_order.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_order.diminfo[0].shape = __pyx_pybuffernd_order.rcbuffer->pybuffer.shape[0];
    }
  }
  __pyx_t_8 = 0;
  __pyx_v_order = ((PyArrayObject *)__pyx_t_1);
  __pyx_t_1 = 0;

  /* "gpu_nms.pyx":28
 *         order = scores.argsort()[::-1]
 *     cdef np.ndarray[np.float32_t, ndim=2] \
 *         sorted_dets = dets[order, :]             # <<<<<<<<<<<<<<
 *     _nms(&keep[0], &num_out, &sorted_dets[0, 0], boxes_num, boxes_dim, thresh, device_id)
 *     keep = keep[:num_out]
 */
  __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 28, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_INCREF(((PyObject *)__pyx_v_order));
  __Pyx_GIVEREF(((PyObject *)__pyx_v_order));
  PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_order));
  __Pyx_INCREF(__pyx_slice__4);
  __Pyx_GIVEREF(__pyx_slice__4);
  PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_slice__4);
  __pyx_t_5 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_dets), __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 28, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 28, __pyx_L1_error)
  __pyx_t_9 = ((PyArrayObject *)__pyx_t_5);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_sorted_dets.rcbuffer->pybuffer, (PyObject*)__pyx_t_9, &__Pyx_TypeInfo_nn___pyx_t_5numpy_float32_t, PyBUF_FORMAT| PyBUF_STRIDES, 2, 0, __pyx_stack) == -1)) {
      __pyx_v_sorted_dets = ((PyArrayObject *)Py_None); __Pyx_INCREF(Py_None); __pyx_pybuffernd_sorted_dets.rcbuffer->pybuffer.buf = NULL;
      __PYX_ERR(0, 27, __pyx_L1_error)
    } else {__pyx_pybuffernd_sorted_dets.diminfo[0].strides = __pyx_pybuffernd_sorted_dets.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_sorted_dets.diminfo[0].shape = __pyx_pybuffernd_sorted_dets.rcbuffer->pybuffer.shape[0]; __pyx_pybuffernd_sorted_dets.diminfo[1].strides = __pyx_pybuffernd_sorted_dets.rcbuffer->pybuffer.strides[1]; __pyx_pybuffernd_sorted_dets.diminfo[1].shape = __pyx_pybuffernd_sorted_dets.rcbuffer->pybuffer.shape[1];
    }
  }
  __pyx_t_9 = 0;
  __pyx_v_sorted_dets = ((PyArrayObject *)__pyx_t_5);
  __pyx_t_5 = 0;

  /* "gpu_nms.pyx":29
 *     cdef np.ndarray[np.float32_t, ndim=2] \
 *         sorted_dets = dets[order, :]
 *     _nms(&keep[0], &num_out, &sorted_dets[0, 0], boxes_num, boxes_dim, thresh, device_id)             # <<<<<<<<<<<<<<
 *     keep = keep[:num_out]
 *     return list(order[keep])
 */
  __pyx_t_10 = 0;
  __pyx_t_11 = -1;
  if (__pyx_t_10 < 0) {
    __pyx_t_10 += __pyx_pybuffernd_keep.diminfo[0].shape;
    if (unlikely(__pyx_t_10 < 0)) __pyx_t_11 = 0;
  } else if (unlikely(__pyx_t_10 >= __pyx_pybuffernd_keep.diminfo[0].shape)) __pyx_t_11 = 0;
  if (unlikely(__pyx_t_11 != -1)) {
    __Pyx_RaiseBufferIndexError(__pyx_t_11);
    __PYX_ERR(0, 29, __pyx_L1_error)
  }
  __pyx_t_12 = 0;
  __pyx_t_13 = 0;
  __pyx_t_11 = -1;
  if (__pyx_t_12 < 0) {
    __pyx_t_12 += __pyx_pybuffernd_sorted_dets.diminfo[0].shape;
    if (unlikely(__pyx_t_12 < 0)) __pyx_t_11 = 0;
  } else if (unlikely(__pyx_t_12 >= __pyx_pybuffernd_sorted_dets.diminfo[0].shape)) __pyx_t_11 = 0;
  if (__pyx_t_13 < 0) {
    __pyx_t_13 += __pyx_pybuffernd_sorted_dets.diminfo[1].shape;
    if (unlikely(__pyx_t_13 < 0)) __pyx_t_11 = 1;
  } else if (unlikely(__pyx_t_13 >= __pyx_pybuffernd_sorted_dets.diminfo[1].shape)) __pyx_t_11 = 1;
  if (unlikely(__pyx_t_11 != -1)) {
    __Pyx_RaiseBufferIndexError(__pyx_t_11);
    __PYX_ERR(0, 29, __pyx_L1_error)
  }
  __pyx_t_14 = __pyx_PyFloat_AsFloat(__pyx_v_thresh); if (unlikely((__pyx_t_14 == (float)-1) && PyErr_Occurred())) __PYX_ERR(0, 29, __pyx_L1_error)
  _nms((&(*__Pyx_BufPtrStrided1d(__pyx_t_5numpy_int32_t *, __pyx_pybuffernd_keep.rcbuffer->pybuffer.buf, __pyx_t_10, __pyx_pybuffernd_keep.diminfo[0].strides))), (&__pyx_v_num_out), (&(*__Pyx_BufPtrStrided2d(__pyx_t_5numpy_float32_t *, __pyx_pybuffernd_sorted_dets.rcbuffer->pybuffer.buf, __pyx_t_12, __pyx_pybuffernd_sorted_dets.diminfo[0].strides, __pyx_t_13, __pyx_pybuffernd_sorted_dets.diminfo[1].strides))), __pyx_v_boxes_num, __pyx_v_boxes_dim, __pyx_t_14, __pyx_v_device_id);

  /* "gpu_nms.pyx":30
 *         sorted_dets = dets[order, :]
 *     _nms(&keep[0], &num_out, &sorted_dets[0, 0], boxes_num, boxes_dim, thresh, device_id)
 *     keep = keep[:num_out]             # <<<<<<<<<<<<<<
 *     return list(order[keep])
 */
  __pyx_t_5 = __Pyx_PyInt_From_int(__pyx_v_num_out); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 30, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_1 = PySlice_New(Py_None, __pyx_t_5, Py_None); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 30, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_t_5 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_keep), __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 30, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
  if (!(likely(((__pyx_t_5) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_5, __pyx_ptype_5numpy_ndarray))))) __PYX_ERR(0, 30, __pyx_L1_error)
  __pyx_t_6 = ((PyArrayObject *)__pyx_t_5);
  {
    __Pyx_BufFmt_StackElem __pyx_stack[1];
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_keep.rcbuffer->pybuffer);
    __pyx_t_11 = __Pyx_GetBufferAndValidate(&__pyx_pybuffernd_keep.rcbuffer->pybuffer, (PyObject*)__pyx_t_6, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int32_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack);
    if (unlikely(__pyx_t_11 < 0)) {
      PyErr_Fetch(&__pyx_t_15, &__pyx_t_16, &__pyx_t_17);
      if (unlikely(__Pyx_GetBufferAndValidate(&__pyx_pybuffernd_keep.rcbuffer->pybuffer, (PyObject*)__pyx_v_keep, &__Pyx_TypeInfo_nn___pyx_t_5numpy_int32_t, PyBUF_FORMAT| PyBUF_STRIDES, 1, 0, __pyx_stack) == -1)) {
        Py_XDECREF(__pyx_t_15); Py_XDECREF(__pyx_t_16); Py_XDECREF(__pyx_t_17);
        __Pyx_RaiseBufferFallbackError();
      } else {
        PyErr_Restore(__pyx_t_15, __pyx_t_16, __pyx_t_17);
      }
      __pyx_t_15 = __pyx_t_16 = __pyx_t_17 = 0;
    }
    __pyx_pybuffernd_keep.diminfo[0].strides = __pyx_pybuffernd_keep.rcbuffer->pybuffer.strides[0]; __pyx_pybuffernd_keep.diminfo[0].shape = __pyx_pybuffernd_keep.rcbuffer->pybuffer.shape[0];
    if (unlikely(__pyx_t_11 < 0)) __PYX_ERR(0, 30, __pyx_L1_error)
  }
  __pyx_t_6 = 0;
  __Pyx_DECREF_SET(__pyx_v_keep, ((PyArrayObject *)__pyx_t_5));
  __pyx_t_5 = 0;

  /* "gpu_nms.pyx":31
 *     _nms(&keep[0], &num_out, &sorted_dets[0, 0], boxes_num, boxes_dim, thresh, device_id)
 *     keep = keep[:num_out]
 *     return list(order[keep])             # <<<<<<<<<<<<<<
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_5 = __Pyx_PyObject_GetItem(((PyObject *)__pyx_v_order), ((PyObject *)__pyx_v_keep)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 31, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_5);
  __pyx_t_1 = PySequence_List(__pyx_t_5); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 31, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "gpu_nms.pyx":16
 *     void _nms(np.int32_t*, int*, np.float32_t*, int, int, float, int)
 * 
 * def gpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh,             # <<<<<<<<<<<<<<
 *             np.int32_t device_id=0):
 *     cdef int boxes_num = dets.shape[0]
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_2);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_XDECREF(__pyx_t_5);
  { PyObject *__pyx_type, *__pyx_value, *__pyx_tb;
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ErrFetch(&__pyx_type, &__pyx_value, &__pyx_tb);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_dets.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_keep.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_order.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_scores.rcbuffer->pybuffer);
    __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_sorted_dets.rcbuffer->pybuffer);
  __Pyx_ErrRestore(__pyx_type, __pyx_value, __pyx_tb);}
  __Pyx_AddTraceback("gpu_nms.gpu_nms", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  goto __pyx_L2;
  __pyx_L0:;
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_dets.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_keep.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_order.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_scores.rcbuffer->pybuffer);
  __Pyx_SafeReleaseBuffer(&__pyx_pybuffernd_sorted_dets.rcbuffer->pybuffer);
  __pyx_L2:;
  __Pyx_XDECREF((PyObject *)__pyx_v_keep);
  __Pyx_XDECREF((PyObject *)__pyx_v_scores);
  __Pyx_XDECREF((PyObject *)__pyx_v_order);
  __Pyx_XDECREF((PyObject *)__pyx_v_sorted_dets);
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":215
 *         # experimental exception made for __getbuffer__ and __releasebuffer__
 *         # -- the details of this may change.
 *         def __getbuffer__(ndarray self, Py_buffer* info, int flags):             # <<<<<<<<<<<<<<
 *             # This implementation of getbuffer is geared towards Cython
 *             # requirements, and does not yet fulfill the PEP.
 */

/* Python wrapper */
static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags); /*proto*/
static CYTHON_UNUSED int __pyx_pw_5numpy_7ndarray_1__getbuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__getbuffer__ (wrapper)", 0);
  __pyx_r = __pyx_pf_5numpy_7ndarray___getbuffer__(((PyArrayObject *)__pyx_v_self), ((Py_buffer *)__pyx_v_info), ((int)__pyx_v_flags));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static int __pyx_pf_5numpy_7ndarray___getbuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info, int __pyx_v_flags) {
  int __pyx_v_i;
  int __pyx_v_ndim;
  int __pyx_v_endian_detector;
  int __pyx_v_little_endian;
  int __pyx_v_t;
  char *__pyx_v_f;
  PyArray_Descr *__pyx_v_descr = 0;
  int __pyx_v_offset;
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  int __pyx_t_5;
  int __pyx_t_6;
  PyObject *__pyx_t_7 = NULL;
  char *__pyx_t_8;
  if (__pyx_v_info == NULL) {
    PyErr_SetString(PyExc_BufferError, "PyObject_GetBuffer: view==NULL argument is obsolete");
    return -1;
  }
  __Pyx_RefNannySetupContext("__getbuffer__", 0);
  __pyx_v_info->obj = Py_None; __Pyx_INCREF(Py_None);
  __Pyx_GIVEREF(__pyx_v_info->obj);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":222
 * 
 *             cdef int i, ndim
 *             cdef int endian_detector = 1             # <<<<<<<<<<<<<<
 *             cdef bint little_endian = ((&endian_detector)[0] != 0)
 * 
 */
  __pyx_v_endian_detector = 1;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":223
 *             cdef int i, ndim
 *             cdef int endian_detector = 1
 *             cdef bint little_endian = ((&endian_detector)[0] != 0)             # <<<<<<<<<<<<<<
 * 
 *             ndim = PyArray_NDIM(self)
 */
  __pyx_v_little_endian = ((((char *)(&__pyx_v_endian_detector))[0]) != 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":225
 *             cdef bint little_endian = ((&endian_detector)[0] != 0)
 * 
 *             ndim = PyArray_NDIM(self)             # <<<<<<<<<<<<<<
 * 
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)
 */
  __pyx_v_ndim = PyArray_NDIM(__pyx_v_self);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":227
 *             ndim = PyArray_NDIM(self)
 * 
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not C contiguous")
 */
  __pyx_t_2 = (((__pyx_v_flags & PyBUF_C_CONTIGUOUS) == PyBUF_C_CONTIGUOUS) != 0);
  if (__pyx_t_2) {
  } else {
    __pyx_t_1 = __pyx_t_2;
    goto __pyx_L4_bool_binop_done;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":228
 * 
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):             # <<<<<<<<<<<<<<
 *                 raise ValueError(u"ndarray is not C contiguous")
 * 
 */
  __pyx_t_2 = ((!(PyArray_CHKFLAGS(__pyx_v_self, NPY_C_CONTIGUOUS) != 0)) != 0);
  __pyx_t_1 = __pyx_t_2;
  __pyx_L4_bool_binop_done:;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":227
 *             ndim = PyArray_NDIM(self)
 * 
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not C contiguous")
 */
  if (unlikely(__pyx_t_1)) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":229
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not C contiguous")             # <<<<<<<<<<<<<<
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)
 */
    __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 229, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_Raise(__pyx_t_3, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __PYX_ERR(1, 229, __pyx_L1_error)

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":227
 *             ndim = PyArray_NDIM(self)
 * 
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not C contiguous")
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":231
 *                 raise ValueError(u"ndarray is not C contiguous")
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not Fortran contiguous")
 */
  __pyx_t_2 = (((__pyx_v_flags & PyBUF_F_CONTIGUOUS) == PyBUF_F_CONTIGUOUS) != 0);
  if (__pyx_t_2) {
  } else {
    __pyx_t_1 = __pyx_t_2;
    goto __pyx_L7_bool_binop_done;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":232
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):             # <<<<<<<<<<<<<<
 *                 raise ValueError(u"ndarray is not Fortran contiguous")
 * 
 */
  __pyx_t_2 = ((!(PyArray_CHKFLAGS(__pyx_v_self, NPY_F_CONTIGUOUS) != 0)) != 0);
  __pyx_t_1 = __pyx_t_2;
  __pyx_L7_bool_binop_done:;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":231
 *                 raise ValueError(u"ndarray is not C contiguous")
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not Fortran contiguous")
 */
  if (unlikely(__pyx_t_1)) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":233
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not Fortran contiguous")             # <<<<<<<<<<<<<<
 * 
 *             info.buf = PyArray_DATA(self)
 */
    __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__6, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 233, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_Raise(__pyx_t_3, 0, 0, 0);
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __PYX_ERR(1, 233, __pyx_L1_error)

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":231
 *                 raise ValueError(u"ndarray is not C contiguous")
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)             # <<<<<<<<<<<<<<
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not Fortran contiguous")
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":235
 *                 raise ValueError(u"ndarray is not Fortran contiguous")
 * 
 *             info.buf = PyArray_DATA(self)             # <<<<<<<<<<<<<<
 *             info.ndim = ndim
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 */
  __pyx_v_info->buf = PyArray_DATA(__pyx_v_self);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":236
 * 
 *             info.buf = PyArray_DATA(self)
 *             info.ndim = ndim             # <<<<<<<<<<<<<<
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 *                 # Allocate new buffer for strides and shape info.
 */
  __pyx_v_info->ndim = __pyx_v_ndim;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":237
 *             info.buf = PyArray_DATA(self)
 *             info.ndim = ndim
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):             # <<<<<<<<<<<<<<
 *                 # Allocate new buffer for strides and shape info.
 *                 # This is allocated as one block, strides first.
 */
  __pyx_t_1 = (((sizeof(npy_intp)) != (sizeof(Py_ssize_t))) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":240
 *                 # Allocate new buffer for strides and shape info.
 *                 # This is allocated as one block, strides first.
 *                 info.strides = PyObject_Malloc(sizeof(Py_ssize_t) * 2 * ndim)             # <<<<<<<<<<<<<<
 *                 info.shape = info.strides + ndim
 *                 for i in range(ndim):
 */
    __pyx_v_info->strides = ((Py_ssize_t *)PyObject_Malloc((((sizeof(Py_ssize_t)) * 2) * ((size_t)__pyx_v_ndim))));

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":241
 *                 # This is allocated as one block, strides first.
 *                 info.strides = PyObject_Malloc(sizeof(Py_ssize_t) * 2 * ndim)
 *                 info.shape = info.strides + ndim             # <<<<<<<<<<<<<<
 *                 for i in range(ndim):
 *                     info.strides[i] = PyArray_STRIDES(self)[i]
 */
    __pyx_v_info->shape = (__pyx_v_info->strides + __pyx_v_ndim);

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":242
 *                 info.strides = PyObject_Malloc(sizeof(Py_ssize_t) * 2 * ndim)
 *                 info.shape = info.strides + ndim
 *                 for i in range(ndim):             # <<<<<<<<<<<<<<
 *                     info.strides[i] = PyArray_STRIDES(self)[i]
 *                     info.shape[i] = PyArray_DIMS(self)[i]
 */
    __pyx_t_4 = __pyx_v_ndim;
    __pyx_t_5 = __pyx_t_4;
    for (__pyx_t_6 = 0; __pyx_t_6 < __pyx_t_5; __pyx_t_6+=1) {
      __pyx_v_i = __pyx_t_6;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":243
 *                 info.shape = info.strides + ndim
 *                 for i in range(ndim):
 *                     info.strides[i] = PyArray_STRIDES(self)[i]             # <<<<<<<<<<<<<<
 *                     info.shape[i] = PyArray_DIMS(self)[i]
 *             else:
 */
      (__pyx_v_info->strides[__pyx_v_i]) = (PyArray_STRIDES(__pyx_v_self)[__pyx_v_i]);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":244
 *                 for i in range(ndim):
 *                     info.strides[i] = PyArray_STRIDES(self)[i]
 *                     info.shape[i] = PyArray_DIMS(self)[i]             # <<<<<<<<<<<<<<
 *             else:
 *                 info.strides = PyArray_STRIDES(self)
 */
      (__pyx_v_info->shape[__pyx_v_i]) = (PyArray_DIMS(__pyx_v_self)[__pyx_v_i]);
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":237
 *             info.buf = PyArray_DATA(self)
 *             info.ndim = ndim
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):             # <<<<<<<<<<<<<<
 *                 # Allocate new buffer for strides and shape info.
 *                 # This is allocated as one block, strides first.
 */
    goto __pyx_L9;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":246
 *                     info.shape[i] = PyArray_DIMS(self)[i]
 *             else:
 *                 info.strides = PyArray_STRIDES(self)             # <<<<<<<<<<<<<<
 *                 info.shape = PyArray_DIMS(self)
 *             info.suboffsets = NULL
 */
  /*else*/ {
    __pyx_v_info->strides = ((Py_ssize_t *)PyArray_STRIDES(__pyx_v_self));

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":247
 *             else:
 *                 info.strides = PyArray_STRIDES(self)
 *                 info.shape = PyArray_DIMS(self)             # <<<<<<<<<<<<<<
 *             info.suboffsets = NULL
 *             info.itemsize = PyArray_ITEMSIZE(self)
 */
    __pyx_v_info->shape = ((Py_ssize_t *)PyArray_DIMS(__pyx_v_self));
  }
  __pyx_L9:;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":248
 *                 info.strides = PyArray_STRIDES(self)
 *                 info.shape = PyArray_DIMS(self)
 *             info.suboffsets = NULL             # <<<<<<<<<<<<<<
 *             info.itemsize = PyArray_ITEMSIZE(self)
 *             info.readonly = not PyArray_ISWRITEABLE(self)
 */
  __pyx_v_info->suboffsets = NULL;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":249
 *                 info.shape = PyArray_DIMS(self)
 *             info.suboffsets = NULL
 *             info.itemsize = PyArray_ITEMSIZE(self)             # <<<<<<<<<<<<<<
 *             info.readonly = not PyArray_ISWRITEABLE(self)
 * 
 */
  __pyx_v_info->itemsize = PyArray_ITEMSIZE(__pyx_v_self);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":250
 *             info.suboffsets = NULL
 *             info.itemsize = PyArray_ITEMSIZE(self)
 *             info.readonly = not PyArray_ISWRITEABLE(self)             # <<<<<<<<<<<<<<
 * 
 *             cdef int t
 */
  __pyx_v_info->readonly = (!(PyArray_ISWRITEABLE(__pyx_v_self) != 0));

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":253
 * 
 *             cdef int t
 *             cdef char* f = NULL             # <<<<<<<<<<<<<<
 *             cdef dtype descr = self.descr
 *             cdef int offset
 */
  __pyx_v_f = NULL;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":254
 *             cdef int t
 *             cdef char* f = NULL
 *             cdef dtype descr = self.descr             # <<<<<<<<<<<<<<
 *             cdef int offset
 * 
 */
  __pyx_t_3 = ((PyObject *)__pyx_v_self->descr);
  __Pyx_INCREF(__pyx_t_3);
  __pyx_v_descr = ((PyArray_Descr *)__pyx_t_3);
  __pyx_t_3 = 0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":257
 *             cdef int offset
 * 
 *             info.obj = self             # <<<<<<<<<<<<<<
 * 
 *             if not PyDataType_HASFIELDS(descr):
 */
  __Pyx_INCREF(((PyObject *)__pyx_v_self));
  __Pyx_GIVEREF(((PyObject *)__pyx_v_self));
  __Pyx_GOTREF(__pyx_v_info->obj);
  __Pyx_DECREF(__pyx_v_info->obj);
  __pyx_v_info->obj = ((PyObject *)__pyx_v_self);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":259
 *             info.obj = self
 * 
 *             if not PyDataType_HASFIELDS(descr):             # <<<<<<<<<<<<<<
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or
 */
  __pyx_t_1 = ((!(PyDataType_HASFIELDS(__pyx_v_descr) != 0)) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":260
 * 
 *             if not PyDataType_HASFIELDS(descr):
 *                 t = descr.type_num             # <<<<<<<<<<<<<<
 *                 if ((descr.byteorder == c'>' and little_endian) or
 *                     (descr.byteorder == c'<' and not little_endian)):
 */
    __pyx_t_4 = __pyx_v_descr->type_num;
    __pyx_v_t = __pyx_t_4;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":261
 *             if not PyDataType_HASFIELDS(descr):
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")
 */
    __pyx_t_2 = ((__pyx_v_descr->byteorder == '>') != 0);
    if (!__pyx_t_2) {
      goto __pyx_L15_next_or;
    } else {
    }
    __pyx_t_2 = (__pyx_v_little_endian != 0);
    if (!__pyx_t_2) {
    } else {
      __pyx_t_1 = __pyx_t_2;
      goto __pyx_L14_bool_binop_done;
    }
    __pyx_L15_next_or:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":262
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or
 *                     (descr.byteorder == c'<' and not little_endian)):             # <<<<<<<<<<<<<<
 *                     raise ValueError(u"Non-native byte order not supported")
 *                 if   t == NPY_BYTE:        f = "b"
 */
    __pyx_t_2 = ((__pyx_v_descr->byteorder == '<') != 0);
    if (__pyx_t_2) {
    } else {
      __pyx_t_1 = __pyx_t_2;
      goto __pyx_L14_bool_binop_done;
    }
    __pyx_t_2 = ((!(__pyx_v_little_endian != 0)) != 0);
    __pyx_t_1 = __pyx_t_2;
    __pyx_L14_bool_binop_done:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":261
 *             if not PyDataType_HASFIELDS(descr):
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")
 */
    if (unlikely(__pyx_t_1)) {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":263
 *                 if ((descr.byteorder == c'>' and little_endian) or
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")             # <<<<<<<<<<<<<<
 *                 if   t == NPY_BYTE:        f = "b"
 *                 elif t == NPY_UBYTE:       f = "B"
 */
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__7, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 263, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_Raise(__pyx_t_3, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(1, 263, __pyx_L1_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":261
 *             if not PyDataType_HASFIELDS(descr):
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")
 */
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":264
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")
 *                 if   t == NPY_BYTE:        f = "b"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_UBYTE:       f = "B"
 *                 elif t == NPY_SHORT:       f = "h"
 */
    switch (__pyx_v_t) {
      case NPY_BYTE:
      __pyx_v_f = ((char *)"b");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":265
 *                     raise ValueError(u"Non-native byte order not supported")
 *                 if   t == NPY_BYTE:        f = "b"
 *                 elif t == NPY_UBYTE:       f = "B"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_SHORT:       f = "h"
 *                 elif t == NPY_USHORT:      f = "H"
 */
      case NPY_UBYTE:
      __pyx_v_f = ((char *)"B");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":266
 *                 if   t == NPY_BYTE:        f = "b"
 *                 elif t == NPY_UBYTE:       f = "B"
 *                 elif t == NPY_SHORT:       f = "h"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_USHORT:      f = "H"
 *                 elif t == NPY_INT:         f = "i"
 */
      case NPY_SHORT:
      __pyx_v_f = ((char *)"h");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":267
 *                 elif t == NPY_UBYTE:       f = "B"
 *                 elif t == NPY_SHORT:       f = "h"
 *                 elif t == NPY_USHORT:      f = "H"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_INT:         f = "i"
 *                 elif t == NPY_UINT:        f = "I"
 */
      case NPY_USHORT:
      __pyx_v_f = ((char *)"H");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":268
 *                 elif t == NPY_SHORT:       f = "h"
 *                 elif t == NPY_USHORT:      f = "H"
 *                 elif t == NPY_INT:         f = "i"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_UINT:        f = "I"
 *                 elif t == NPY_LONG:        f = "l"
 */
      case NPY_INT:
      __pyx_v_f = ((char *)"i");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":269
 *                 elif t == NPY_USHORT:      f = "H"
 *                 elif t == NPY_INT:         f = "i"
 *                 elif t == NPY_UINT:        f = "I"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_LONG:        f = "l"
 *                 elif t == NPY_ULONG:       f = "L"
 */
      case NPY_UINT:
      __pyx_v_f = ((char *)"I");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":270
 *                 elif t == NPY_INT:         f = "i"
 *                 elif t == NPY_UINT:        f = "I"
 *                 elif t == NPY_LONG:        f = "l"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_ULONG:       f = "L"
 *                 elif t == NPY_LONGLONG:    f = "q"
 */
      case NPY_LONG:
      __pyx_v_f = ((char *)"l");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":271
 *                 elif t == NPY_UINT:        f = "I"
 *                 elif t == NPY_LONG:        f = "l"
 *                 elif t == NPY_ULONG:       f = "L"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_LONGLONG:    f = "q"
 *                 elif t == NPY_ULONGLONG:   f = "Q"
 */
      case NPY_ULONG:
      __pyx_v_f = ((char *)"L");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":272
 *                 elif t == NPY_LONG:        f = "l"
 *                 elif t == NPY_ULONG:       f = "L"
 *                 elif t == NPY_LONGLONG:    f = "q"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_ULONGLONG:   f = "Q"
 *                 elif t == NPY_FLOAT:       f = "f"
 */
      case NPY_LONGLONG:
      __pyx_v_f = ((char *)"q");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":273
 *                 elif t == NPY_ULONG:       f = "L"
 *                 elif t == NPY_LONGLONG:    f = "q"
 *                 elif t == NPY_ULONGLONG:   f = "Q"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_FLOAT:       f = "f"
 *                 elif t == NPY_DOUBLE:      f = "d"
 */
      case NPY_ULONGLONG:
      __pyx_v_f = ((char *)"Q");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":274
 *                 elif t == NPY_LONGLONG:    f = "q"
 *                 elif t == NPY_ULONGLONG:   f = "Q"
 *                 elif t == NPY_FLOAT:       f = "f"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_DOUBLE:      f = "d"
 *                 elif t == NPY_LONGDOUBLE:  f = "g"
 */
      case NPY_FLOAT:
      __pyx_v_f = ((char *)"f");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":275
 *                 elif t == NPY_ULONGLONG:   f = "Q"
 *                 elif t == NPY_FLOAT:       f = "f"
 *                 elif t == NPY_DOUBLE:      f = "d"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_LONGDOUBLE:  f = "g"
 *                 elif t == NPY_CFLOAT:      f = "Zf"
 */
      case NPY_DOUBLE:
      __pyx_v_f = ((char *)"d");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":276
 *                 elif t == NPY_FLOAT:       f = "f"
 *                 elif t == NPY_DOUBLE:      f = "d"
 *                 elif t == NPY_LONGDOUBLE:  f = "g"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_CFLOAT:      f = "Zf"
 *                 elif t == NPY_CDOUBLE:     f = "Zd"
 */
      case NPY_LONGDOUBLE:
      __pyx_v_f = ((char *)"g");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":277
 *                 elif t == NPY_DOUBLE:      f = "d"
 *                 elif t == NPY_LONGDOUBLE:  f = "g"
 *                 elif t == NPY_CFLOAT:      f = "Zf"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_CDOUBLE:     f = "Zd"
 *                 elif t == NPY_CLONGDOUBLE: f = "Zg"
 */
      case NPY_CFLOAT:
      __pyx_v_f = ((char *)"Zf");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":278
 *                 elif t == NPY_LONGDOUBLE:  f = "g"
 *                 elif t == NPY_CFLOAT:      f = "Zf"
 *                 elif t == NPY_CDOUBLE:     f = "Zd"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_CLONGDOUBLE: f = "Zg"
 *                 elif t == NPY_OBJECT:      f = "O"
 */
      case NPY_CDOUBLE:
      __pyx_v_f = ((char *)"Zd");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":279
 *                 elif t == NPY_CFLOAT:      f = "Zf"
 *                 elif t == NPY_CDOUBLE:     f = "Zd"
 *                 elif t == NPY_CLONGDOUBLE: f = "Zg"             # <<<<<<<<<<<<<<
 *                 elif t == NPY_OBJECT:      f = "O"
 *                 else:
 */
      case NPY_CLONGDOUBLE:
      __pyx_v_f = ((char *)"Zg");
      break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":280
 *                 elif t == NPY_CDOUBLE:     f = "Zd"
 *                 elif t == NPY_CLONGDOUBLE: f = "Zg"
 *                 elif t == NPY_OBJECT:      f = "O"             # <<<<<<<<<<<<<<
 *                 else:
 *                     raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)
 */
      case NPY_OBJECT:
      __pyx_v_f = ((char *)"O");
      break;
      default:

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":282
 *                 elif t == NPY_OBJECT:      f = "O"
 *                 else:
 *                     raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)             # <<<<<<<<<<<<<<
 *                 info.format = f
 *                 return
 */
      __pyx_t_3 = __Pyx_PyInt_From_int(__pyx_v_t); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 282, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_7 = PyUnicode_Format(__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_t_3); if (unlikely(!__pyx_t_7)) __PYX_ERR(1, 282, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 282, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_Raise(__pyx_t_3, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(1, 282, __pyx_L1_error)
      break;
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":283
 *                 else:
 *                     raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)
 *                 info.format = f             # <<<<<<<<<<<<<<
 *                 return
 *             else:
 */
    __pyx_v_info->format = __pyx_v_f;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":284
 *                     raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)
 *                 info.format = f
 *                 return             # <<<<<<<<<<<<<<
 *             else:
 *                 info.format = PyObject_Malloc(_buffer_format_string_len)
 */
    __pyx_r = 0;
    goto __pyx_L0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":259
 *             info.obj = self
 * 
 *             if not PyDataType_HASFIELDS(descr):             # <<<<<<<<<<<<<<
 *                 t = descr.type_num
 *                 if ((descr.byteorder == c'>' and little_endian) or
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":286
 *                 return
 *             else:
 *                 info.format = PyObject_Malloc(_buffer_format_string_len)             # <<<<<<<<<<<<<<
 *                 info.format[0] = c'^' # Native data types, manual alignment
 *                 offset = 0
 */
  /*else*/ {
    __pyx_v_info->format = ((char *)PyObject_Malloc(0xFF));

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":287
 *             else:
 *                 info.format = PyObject_Malloc(_buffer_format_string_len)
 *                 info.format[0] = c'^' # Native data types, manual alignment             # <<<<<<<<<<<<<<
 *                 offset = 0
 *                 f = _util_dtypestring(descr, info.format + 1,
 */
    (__pyx_v_info->format[0]) = '^';

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":288
 *                 info.format = PyObject_Malloc(_buffer_format_string_len)
 *                 info.format[0] = c'^' # Native data types, manual alignment
 *                 offset = 0             # <<<<<<<<<<<<<<
 *                 f = _util_dtypestring(descr, info.format + 1,
 *                                       info.format + _buffer_format_string_len,
 */
    __pyx_v_offset = 0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":289
 *                 info.format[0] = c'^' # Native data types, manual alignment
 *                 offset = 0
 *                 f = _util_dtypestring(descr, info.format + 1,             # <<<<<<<<<<<<<<
 *                                       info.format + _buffer_format_string_len,
 *                                       &offset)
 */
    __pyx_t_8 = __pyx_f_5numpy__util_dtypestring(__pyx_v_descr, (__pyx_v_info->format + 1), (__pyx_v_info->format + 0xFF), (&__pyx_v_offset)); if (unlikely(__pyx_t_8 == ((char *)NULL))) __PYX_ERR(1, 289, __pyx_L1_error)
    __pyx_v_f = __pyx_t_8;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":292
 *                                       info.format + _buffer_format_string_len,
 *                                       &offset)
 *                 f[0] = c'\0' # Terminate format string             # <<<<<<<<<<<<<<
 * 
 *         def __releasebuffer__(ndarray self, Py_buffer* info):
 */
    (__pyx_v_f[0]) = '\x00';
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":215
 *         # experimental exception made for __getbuffer__ and __releasebuffer__
 *         # -- the details of this may change.
 *         def __getbuffer__(ndarray self, Py_buffer* info, int flags):             # <<<<<<<<<<<<<<
 *             # This implementation of getbuffer is geared towards Cython
 *             # requirements, and does not yet fulfill the PEP.
 */

  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_AddTraceback("numpy.ndarray.__getbuffer__", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  if (__pyx_v_info->obj != NULL) {
    __Pyx_GOTREF(__pyx_v_info->obj);
    __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = 0;
  }
  goto __pyx_L2;
  __pyx_L0:;
  if (__pyx_v_info->obj == Py_None) {
    __Pyx_GOTREF(__pyx_v_info->obj);
    __Pyx_DECREF(__pyx_v_info->obj); __pyx_v_info->obj = 0;
  }
  __pyx_L2:;
  __Pyx_XDECREF((PyObject *)__pyx_v_descr);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":294
 *                 f[0] = c'\0' # Terminate format string
 * 
 *         def __releasebuffer__(ndarray self, Py_buffer* info):             # <<<<<<<<<<<<<<
 *             if PyArray_HASFIELDS(self):
 *                 PyObject_Free(info.format)
 */

/* Python wrapper */
static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info); /*proto*/
static CYTHON_UNUSED void __pyx_pw_5numpy_7ndarray_3__releasebuffer__(PyObject *__pyx_v_self, Py_buffer *__pyx_v_info) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__releasebuffer__ (wrapper)", 0);
  __pyx_pf_5numpy_7ndarray_2__releasebuffer__(((PyArrayObject *)__pyx_v_self), ((Py_buffer *)__pyx_v_info));

  /* function exit code */
  __Pyx_RefNannyFinishContext();
}

static void __pyx_pf_5numpy_7ndarray_2__releasebuffer__(PyArrayObject *__pyx_v_self, Py_buffer *__pyx_v_info) {
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  __Pyx_RefNannySetupContext("__releasebuffer__", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":295
 * 
 *         def __releasebuffer__(ndarray self, Py_buffer* info):
 *             if PyArray_HASFIELDS(self):             # <<<<<<<<<<<<<<
 *                 PyObject_Free(info.format)
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 */
  __pyx_t_1 = (PyArray_HASFIELDS(__pyx_v_self) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":296
 *         def __releasebuffer__(ndarray self, Py_buffer* info):
 *             if PyArray_HASFIELDS(self):
 *                 PyObject_Free(info.format)             # <<<<<<<<<<<<<<
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 *                 PyObject_Free(info.strides)
 */
    PyObject_Free(__pyx_v_info->format);

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":295
 * 
 *         def __releasebuffer__(ndarray self, Py_buffer* info):
 *             if PyArray_HASFIELDS(self):             # <<<<<<<<<<<<<<
 *                 PyObject_Free(info.format)
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":297
 *             if PyArray_HASFIELDS(self):
 *                 PyObject_Free(info.format)
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):             # <<<<<<<<<<<<<<
 *                 PyObject_Free(info.strides)
 *                 # info.shape was stored after info.strides in the same block
 */
  __pyx_t_1 = (((sizeof(npy_intp)) != (sizeof(Py_ssize_t))) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":298
 *                 PyObject_Free(info.format)
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):
 *                 PyObject_Free(info.strides)             # <<<<<<<<<<<<<<
 *                 # info.shape was stored after info.strides in the same block
 * 
 */
    PyObject_Free(__pyx_v_info->strides);

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":297
 *             if PyArray_HASFIELDS(self):
 *                 PyObject_Free(info.format)
 *             if sizeof(npy_intp) != sizeof(Py_ssize_t):             # <<<<<<<<<<<<<<
 *                 PyObject_Free(info.strides)
 *                 # info.shape was stored after info.strides in the same block
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":294
 *                 f[0] = c'\0' # Terminate format string
 * 
 *         def __releasebuffer__(ndarray self, Py_buffer* info):             # <<<<<<<<<<<<<<
 *             if PyArray_HASFIELDS(self):
 *                 PyObject_Free(info.format)
 */

  /* function exit code */
  __Pyx_RefNannyFinishContext();
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":775
 * ctypedef npy_cdouble     complex_t
 * 
 * cdef inline object PyArray_MultiIterNew1(a):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(1, a)
 * 
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew1(PyObject *__pyx_v_a) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew1", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":776
 * 
 * cdef inline object PyArray_MultiIterNew1(a):
 *     return PyArray_MultiIterNew(1, a)             # <<<<<<<<<<<<<<
 * 
 * cdef inline object PyArray_MultiIterNew2(a, b):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyArray_MultiIterNew(1, ((void *)__pyx_v_a)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 776, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":775
 * ctypedef npy_cdouble     complex_t
 * 
 * cdef inline object PyArray_MultiIterNew1(a):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(1, a)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("numpy.PyArray_MultiIterNew1", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":778
 *     return PyArray_MultiIterNew(1, a)
 * 
 * cdef inline object PyArray_MultiIterNew2(a, b):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(2, a, b)
 * 
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew2(PyObject *__pyx_v_a, PyObject *__pyx_v_b) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew2", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":779
 * 
 * cdef inline object PyArray_MultiIterNew2(a, b):
 *     return PyArray_MultiIterNew(2, a, b)             # <<<<<<<<<<<<<<
 * 
 * cdef inline object PyArray_MultiIterNew3(a, b, c):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyArray_MultiIterNew(2, ((void *)__pyx_v_a), ((void *)__pyx_v_b)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 779, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":778
 *     return PyArray_MultiIterNew(1, a)
 * 
 * cdef inline object PyArray_MultiIterNew2(a, b):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(2, a, b)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("numpy.PyArray_MultiIterNew2", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":781
 *     return PyArray_MultiIterNew(2, a, b)
 * 
 * cdef inline object PyArray_MultiIterNew3(a, b, c):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(3, a, b,  c)
 * 
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew3(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew3", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":782
 * 
 * cdef inline object PyArray_MultiIterNew3(a, b, c):
 *     return PyArray_MultiIterNew(3, a, b,  c)             # <<<<<<<<<<<<<<
 * 
 * cdef inline object PyArray_MultiIterNew4(a, b, c, d):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyArray_MultiIterNew(3, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 782, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":781
 *     return PyArray_MultiIterNew(2, a, b)
 * 
 * cdef inline object PyArray_MultiIterNew3(a, b, c):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(3, a, b,  c)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("numpy.PyArray_MultiIterNew3", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":784
 *     return PyArray_MultiIterNew(3, a, b,  c)
 * 
 * cdef inline object PyArray_MultiIterNew4(a, b, c, d):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(4, a, b, c,  d)
 * 
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew4(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew4", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":785
 * 
 * cdef inline object PyArray_MultiIterNew4(a, b, c, d):
 *     return PyArray_MultiIterNew(4, a, b, c,  d)             # <<<<<<<<<<<<<<
 * 
 * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyArray_MultiIterNew(4, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c), ((void *)__pyx_v_d)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 785, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":784
 *     return PyArray_MultiIterNew(3, a, b,  c)
 * 
 * cdef inline object PyArray_MultiIterNew4(a, b, c, d):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(4, a, b, c,  d)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("numpy.PyArray_MultiIterNew4", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":787
 *     return PyArray_MultiIterNew(4, a, b, c,  d)
 * 
 * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(5, a, b, c,  d,  e)
 * 
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyArray_MultiIterNew5(PyObject *__pyx_v_a, PyObject *__pyx_v_b, PyObject *__pyx_v_c, PyObject *__pyx_v_d, PyObject *__pyx_v_e) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannySetupContext("PyArray_MultiIterNew5", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":788
 * 
 * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e):
 *     return PyArray_MultiIterNew(5, a, b, c,  d,  e)             # <<<<<<<<<<<<<<
 * 
 * cdef inline tuple PyDataType_SHAPE(dtype d):
 */
  __Pyx_XDECREF(__pyx_r);
  __pyx_t_1 = PyArray_MultiIterNew(5, ((void *)__pyx_v_a), ((void *)__pyx_v_b), ((void *)__pyx_v_c), ((void *)__pyx_v_d), ((void *)__pyx_v_e)); if (unlikely(!__pyx_t_1)) __PYX_ERR(1, 788, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  __pyx_r = __pyx_t_1;
  __pyx_t_1 = 0;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":787
 *     return PyArray_MultiIterNew(4, a, b, c,  d)
 * 
 * cdef inline object PyArray_MultiIterNew5(a, b, c, d, e):             # <<<<<<<<<<<<<<
 *     return PyArray_MultiIterNew(5, a, b, c,  d,  e)
 * 
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_AddTraceback("numpy.PyArray_MultiIterNew5", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = 0;
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":790
 *     return PyArray_MultiIterNew(5, a, b, c,  d,  e)
 * 
 * cdef inline tuple PyDataType_SHAPE(dtype d):             # <<<<<<<<<<<<<<
 *     if PyDataType_HASSUBARRAY(d):
 *         return d.subarray.shape
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_PyDataType_SHAPE(PyArray_Descr *__pyx_v_d) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  __Pyx_RefNannySetupContext("PyDataType_SHAPE", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":791
 * 
 * cdef inline tuple PyDataType_SHAPE(dtype d):
 *     if PyDataType_HASSUBARRAY(d):             # <<<<<<<<<<<<<<
 *         return d.subarray.shape
 *     else:
 */
  __pyx_t_1 = (PyDataType_HASSUBARRAY(__pyx_v_d) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":792
 * cdef inline tuple PyDataType_SHAPE(dtype d):
 *     if PyDataType_HASSUBARRAY(d):
 *         return d.subarray.shape             # <<<<<<<<<<<<<<
 *     else:
 *         return ()
 */
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(((PyObject*)__pyx_v_d->subarray->shape));
    __pyx_r = ((PyObject*)__pyx_v_d->subarray->shape);
    goto __pyx_L0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":791
 * 
 * cdef inline tuple PyDataType_SHAPE(dtype d):
 *     if PyDataType_HASSUBARRAY(d):             # <<<<<<<<<<<<<<
 *         return d.subarray.shape
 *     else:
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":794
 *         return d.subarray.shape
 *     else:
 *         return ()             # <<<<<<<<<<<<<<
 * 
 * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL:
 */
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(__pyx_empty_tuple);
    __pyx_r = __pyx_empty_tuple;
    goto __pyx_L0;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":790
 *     return PyArray_MultiIterNew(5, a, b, c,  d,  e)
 * 
 * cdef inline tuple PyDataType_SHAPE(dtype d):             # <<<<<<<<<<<<<<
 *     if PyDataType_HASSUBARRAY(d):
 *         return d.subarray.shape
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":796
 *         return ()
 * 
 * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL:             # <<<<<<<<<<<<<<
 *     # Recursive utility function used in __getbuffer__ to get format
 *     # string. The new location in the format string is returned.
 */

static CYTHON_INLINE char *__pyx_f_5numpy__util_dtypestring(PyArray_Descr *__pyx_v_descr, char *__pyx_v_f, char *__pyx_v_end, int *__pyx_v_offset) {
  PyArray_Descr *__pyx_v_child = 0;
  int __pyx_v_endian_detector;
  int __pyx_v_little_endian;
  PyObject *__pyx_v_fields = 0;
  PyObject *__pyx_v_childname = NULL;
  PyObject *__pyx_v_new_offset = NULL;
  PyObject *__pyx_v_t = NULL;
  char *__pyx_r;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  Py_ssize_t __pyx_t_2;
  PyObject *__pyx_t_3 = NULL;
  PyObject *__pyx_t_4 = NULL;
  int __pyx_t_5;
  int __pyx_t_6;
  int __pyx_t_7;
  long __pyx_t_8;
  char *__pyx_t_9;
  __Pyx_RefNannySetupContext("_util_dtypestring", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":801
 * 
 *     cdef dtype child
 *     cdef int endian_detector = 1             # <<<<<<<<<<<<<<
 *     cdef bint little_endian = ((&endian_detector)[0] != 0)
 *     cdef tuple fields
 */
  __pyx_v_endian_detector = 1;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":802
 *     cdef dtype child
 *     cdef int endian_detector = 1
 *     cdef bint little_endian = ((&endian_detector)[0] != 0)             # <<<<<<<<<<<<<<
 *     cdef tuple fields
 * 
 */
  __pyx_v_little_endian = ((((char *)(&__pyx_v_endian_detector))[0]) != 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":805
 *     cdef tuple fields
 * 
 *     for childname in descr.names:             # <<<<<<<<<<<<<<
 *         fields = descr.fields[childname]
 *         child, new_offset = fields
 */
  if (unlikely(__pyx_v_descr->names == Py_None)) {
    PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
    __PYX_ERR(1, 805, __pyx_L1_error)
  }
  __pyx_t_1 = __pyx_v_descr->names; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0;
  for (;;) {
    if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
    #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++; if (unlikely(0 < 0)) __PYX_ERR(1, 805, __pyx_L1_error)
    #else
    __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 805, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    #endif
    __Pyx_XDECREF_SET(__pyx_v_childname, __pyx_t_3);
    __pyx_t_3 = 0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":806
 * 
 *     for childname in descr.names:
 *         fields = descr.fields[childname]             # <<<<<<<<<<<<<<
 *         child, new_offset = fields
 * 
 */
    if (unlikely(__pyx_v_descr->fields == Py_None)) {
      PyErr_SetString(PyExc_TypeError, "'NoneType' object is not subscriptable");
      __PYX_ERR(1, 806, __pyx_L1_error)
    }
    __pyx_t_3 = __Pyx_PyDict_GetItem(__pyx_v_descr->fields, __pyx_v_childname); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 806, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    if (!(likely(PyTuple_CheckExact(__pyx_t_3))||((__pyx_t_3) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected %.16s, got %.200s", "tuple", Py_TYPE(__pyx_t_3)->tp_name), 0))) __PYX_ERR(1, 806, __pyx_L1_error)
    __Pyx_XDECREF_SET(__pyx_v_fields, ((PyObject*)__pyx_t_3));
    __pyx_t_3 = 0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":807
 *     for childname in descr.names:
 *         fields = descr.fields[childname]
 *         child, new_offset = fields             # <<<<<<<<<<<<<<
 * 
 *         if (end - f) - (new_offset - offset[0]) < 15:
 */
    if (likely(__pyx_v_fields != Py_None)) {
      PyObject* sequence = __pyx_v_fields;
      Py_ssize_t size = __Pyx_PySequence_SIZE(sequence);
      if (unlikely(size != 2)) {
        if (size > 2) __Pyx_RaiseTooManyValuesError(2);
        else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
        __PYX_ERR(1, 807, __pyx_L1_error)
      }
      #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
      __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0); 
      __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1); 
      __Pyx_INCREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_t_4);
      #else
      __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 807, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 807, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      #endif
    } else {
      __Pyx_RaiseNoneNotIterableError(); __PYX_ERR(1, 807, __pyx_L1_error)
    }
    if (!(likely(((__pyx_t_3) == Py_None) || likely(__Pyx_TypeTest(__pyx_t_3, __pyx_ptype_5numpy_dtype))))) __PYX_ERR(1, 807, __pyx_L1_error)
    __Pyx_XDECREF_SET(__pyx_v_child, ((PyArray_Descr *)__pyx_t_3));
    __pyx_t_3 = 0;
    __Pyx_XDECREF_SET(__pyx_v_new_offset, __pyx_t_4);
    __pyx_t_4 = 0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":809
 *         child, new_offset = fields
 * 
 *         if (end - f) - (new_offset - offset[0]) < 15:             # <<<<<<<<<<<<<<
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")
 * 
 */
    __pyx_t_4 = __Pyx_PyInt_From_int((__pyx_v_offset[0])); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 809, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_4);
    __pyx_t_3 = PyNumber_Subtract(__pyx_v_new_offset, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 809, __pyx_L1_error)
    __Pyx_GOTREF(__pyx_t_3);
    __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
    __pyx_t_5 = __Pyx_PyInt_As_int(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) __PYX_ERR(1, 809, __pyx_L1_error)
    __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
    __pyx_t_6 = ((((__pyx_v_end - __pyx_v_f) - ((int)__pyx_t_5)) < 15) != 0);
    if (unlikely(__pyx_t_6)) {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":810
 * 
 *         if (end - f) - (new_offset - offset[0]) < 15:
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")             # <<<<<<<<<<<<<<
 * 
 *         if ((child.byteorder == c'>' and little_endian) or
 */
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__8, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 810, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_Raise(__pyx_t_3, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(1, 810, __pyx_L1_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":809
 *         child, new_offset = fields
 * 
 *         if (end - f) - (new_offset - offset[0]) < 15:             # <<<<<<<<<<<<<<
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")
 * 
 */
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":812
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")
 * 
 *         if ((child.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *             (child.byteorder == c'<' and not little_endian)):
 *             raise ValueError(u"Non-native byte order not supported")
 */
    __pyx_t_7 = ((__pyx_v_child->byteorder == '>') != 0);
    if (!__pyx_t_7) {
      goto __pyx_L8_next_or;
    } else {
    }
    __pyx_t_7 = (__pyx_v_little_endian != 0);
    if (!__pyx_t_7) {
    } else {
      __pyx_t_6 = __pyx_t_7;
      goto __pyx_L7_bool_binop_done;
    }
    __pyx_L8_next_or:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":813
 * 
 *         if ((child.byteorder == c'>' and little_endian) or
 *             (child.byteorder == c'<' and not little_endian)):             # <<<<<<<<<<<<<<
 *             raise ValueError(u"Non-native byte order not supported")
 *             # One could encode it in the format string and have Cython
 */
    __pyx_t_7 = ((__pyx_v_child->byteorder == '<') != 0);
    if (__pyx_t_7) {
    } else {
      __pyx_t_6 = __pyx_t_7;
      goto __pyx_L7_bool_binop_done;
    }
    __pyx_t_7 = ((!(__pyx_v_little_endian != 0)) != 0);
    __pyx_t_6 = __pyx_t_7;
    __pyx_L7_bool_binop_done:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":812
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")
 * 
 *         if ((child.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *             (child.byteorder == c'<' and not little_endian)):
 *             raise ValueError(u"Non-native byte order not supported")
 */
    if (unlikely(__pyx_t_6)) {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":814
 *         if ((child.byteorder == c'>' and little_endian) or
 *             (child.byteorder == c'<' and not little_endian)):
 *             raise ValueError(u"Non-native byte order not supported")             # <<<<<<<<<<<<<<
 *             # One could encode it in the format string and have Cython
 *             # complain instead, BUT: < and > in format strings also imply
 */
      __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__9, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 814, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_Raise(__pyx_t_3, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __PYX_ERR(1, 814, __pyx_L1_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":812
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")
 * 
 *         if ((child.byteorder == c'>' and little_endian) or             # <<<<<<<<<<<<<<
 *             (child.byteorder == c'<' and not little_endian)):
 *             raise ValueError(u"Non-native byte order not supported")
 */
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":824
 * 
 *         # Output padding bytes
 *         while offset[0] < new_offset:             # <<<<<<<<<<<<<<
 *             f[0] = 120 # "x"; pad byte
 *             f += 1
 */
    while (1) {
      __pyx_t_3 = __Pyx_PyInt_From_int((__pyx_v_offset[0])); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 824, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, __pyx_v_new_offset, Py_LT); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 824, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 824, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (!__pyx_t_6) break;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":825
 *         # Output padding bytes
 *         while offset[0] < new_offset:
 *             f[0] = 120 # "x"; pad byte             # <<<<<<<<<<<<<<
 *             f += 1
 *             offset[0] += 1
 */
      (__pyx_v_f[0]) = 0x78;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":826
 *         while offset[0] < new_offset:
 *             f[0] = 120 # "x"; pad byte
 *             f += 1             # <<<<<<<<<<<<<<
 *             offset[0] += 1
 * 
 */
      __pyx_v_f = (__pyx_v_f + 1);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":827
 *             f[0] = 120 # "x"; pad byte
 *             f += 1
 *             offset[0] += 1             # <<<<<<<<<<<<<<
 * 
 *         offset[0] += child.itemsize
 */
      __pyx_t_8 = 0;
      (__pyx_v_offset[__pyx_t_8]) = ((__pyx_v_offset[__pyx_t_8]) + 1);
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":829
 *             offset[0] += 1
 * 
 *         offset[0] += child.itemsize             # <<<<<<<<<<<<<<
 * 
 *         if not PyDataType_HASFIELDS(child):
 */
    __pyx_t_8 = 0;
    (__pyx_v_offset[__pyx_t_8]) = ((__pyx_v_offset[__pyx_t_8]) + __pyx_v_child->elsize);

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":831
 *         offset[0] += child.itemsize
 * 
 *         if not PyDataType_HASFIELDS(child):             # <<<<<<<<<<<<<<
 *             t = child.type_num
 *             if end - f < 5:
 */
    __pyx_t_6 = ((!(PyDataType_HASFIELDS(__pyx_v_child) != 0)) != 0);
    if (__pyx_t_6) {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":832
 * 
 *         if not PyDataType_HASFIELDS(child):
 *             t = child.type_num             # <<<<<<<<<<<<<<
 *             if end - f < 5:
 *                 raise RuntimeError(u"Format string allocated too short.")
 */
      __pyx_t_4 = __Pyx_PyInt_From_int(__pyx_v_child->type_num); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 832, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_XDECREF_SET(__pyx_v_t, __pyx_t_4);
      __pyx_t_4 = 0;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":833
 *         if not PyDataType_HASFIELDS(child):
 *             t = child.type_num
 *             if end - f < 5:             # <<<<<<<<<<<<<<
 *                 raise RuntimeError(u"Format string allocated too short.")
 * 
 */
      __pyx_t_6 = (((__pyx_v_end - __pyx_v_f) < 5) != 0);
      if (unlikely(__pyx_t_6)) {

        /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":834
 *             t = child.type_num
 *             if end - f < 5:
 *                 raise RuntimeError(u"Format string allocated too short.")             # <<<<<<<<<<<<<<
 * 
 *             # Until ticket #99 is fixed, use integers to avoid warnings
 */
        __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_RuntimeError, __pyx_tuple__10, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 834, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_Raise(__pyx_t_4, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __PYX_ERR(1, 834, __pyx_L1_error)

        /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":833
 *         if not PyDataType_HASFIELDS(child):
 *             t = child.type_num
 *             if end - f < 5:             # <<<<<<<<<<<<<<
 *                 raise RuntimeError(u"Format string allocated too short.")
 * 
 */
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":837
 * 
 *             # Until ticket #99 is fixed, use integers to avoid warnings
 *             if   t == NPY_BYTE:        f[0] =  98 #"b"             # <<<<<<<<<<<<<<
 *             elif t == NPY_UBYTE:       f[0] =  66 #"B"
 *             elif t == NPY_SHORT:       f[0] = 104 #"h"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_BYTE); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 837, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 837, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 837, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 98;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":838
 *             # Until ticket #99 is fixed, use integers to avoid warnings
 *             if   t == NPY_BYTE:        f[0] =  98 #"b"
 *             elif t == NPY_UBYTE:       f[0] =  66 #"B"             # <<<<<<<<<<<<<<
 *             elif t == NPY_SHORT:       f[0] = 104 #"h"
 *             elif t == NPY_USHORT:      f[0] =  72 #"H"
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_UBYTE); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 838, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 838, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 838, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 66;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":839
 *             if   t == NPY_BYTE:        f[0] =  98 #"b"
 *             elif t == NPY_UBYTE:       f[0] =  66 #"B"
 *             elif t == NPY_SHORT:       f[0] = 104 #"h"             # <<<<<<<<<<<<<<
 *             elif t == NPY_USHORT:      f[0] =  72 #"H"
 *             elif t == NPY_INT:         f[0] = 105 #"i"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_SHORT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 839, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 839, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 839, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x68;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":840
 *             elif t == NPY_UBYTE:       f[0] =  66 #"B"
 *             elif t == NPY_SHORT:       f[0] = 104 #"h"
 *             elif t == NPY_USHORT:      f[0] =  72 #"H"             # <<<<<<<<<<<<<<
 *             elif t == NPY_INT:         f[0] = 105 #"i"
 *             elif t == NPY_UINT:        f[0] =  73 #"I"
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_USHORT); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 840, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 840, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 840, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 72;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":841
 *             elif t == NPY_SHORT:       f[0] = 104 #"h"
 *             elif t == NPY_USHORT:      f[0] =  72 #"H"
 *             elif t == NPY_INT:         f[0] = 105 #"i"             # <<<<<<<<<<<<<<
 *             elif t == NPY_UINT:        f[0] =  73 #"I"
 *             elif t == NPY_LONG:        f[0] = 108 #"l"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_INT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 841, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 841, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 841, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x69;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":842
 *             elif t == NPY_USHORT:      f[0] =  72 #"H"
 *             elif t == NPY_INT:         f[0] = 105 #"i"
 *             elif t == NPY_UINT:        f[0] =  73 #"I"             # <<<<<<<<<<<<<<
 *             elif t == NPY_LONG:        f[0] = 108 #"l"
 *             elif t == NPY_ULONG:       f[0] = 76  #"L"
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_UINT); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 842, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 842, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 842, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 73;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":843
 *             elif t == NPY_INT:         f[0] = 105 #"i"
 *             elif t == NPY_UINT:        f[0] =  73 #"I"
 *             elif t == NPY_LONG:        f[0] = 108 #"l"             # <<<<<<<<<<<<<<
 *             elif t == NPY_ULONG:       f[0] = 76  #"L"
 *             elif t == NPY_LONGLONG:    f[0] = 113 #"q"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_LONG); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 843, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 843, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 843, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x6C;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":844
 *             elif t == NPY_UINT:        f[0] =  73 #"I"
 *             elif t == NPY_LONG:        f[0] = 108 #"l"
 *             elif t == NPY_ULONG:       f[0] = 76  #"L"             # <<<<<<<<<<<<<<
 *             elif t == NPY_LONGLONG:    f[0] = 113 #"q"
 *             elif t == NPY_ULONGLONG:   f[0] = 81  #"Q"
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_ULONG); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 844, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 844, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 844, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 76;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":845
 *             elif t == NPY_LONG:        f[0] = 108 #"l"
 *             elif t == NPY_ULONG:       f[0] = 76  #"L"
 *             elif t == NPY_LONGLONG:    f[0] = 113 #"q"             # <<<<<<<<<<<<<<
 *             elif t == NPY_ULONGLONG:   f[0] = 81  #"Q"
 *             elif t == NPY_FLOAT:       f[0] = 102 #"f"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_LONGLONG); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 845, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 845, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 845, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x71;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":846
 *             elif t == NPY_ULONG:       f[0] = 76  #"L"
 *             elif t == NPY_LONGLONG:    f[0] = 113 #"q"
 *             elif t == NPY_ULONGLONG:   f[0] = 81  #"Q"             # <<<<<<<<<<<<<<
 *             elif t == NPY_FLOAT:       f[0] = 102 #"f"
 *             elif t == NPY_DOUBLE:      f[0] = 100 #"d"
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_ULONGLONG); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 846, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 846, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 846, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 81;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":847
 *             elif t == NPY_LONGLONG:    f[0] = 113 #"q"
 *             elif t == NPY_ULONGLONG:   f[0] = 81  #"Q"
 *             elif t == NPY_FLOAT:       f[0] = 102 #"f"             # <<<<<<<<<<<<<<
 *             elif t == NPY_DOUBLE:      f[0] = 100 #"d"
 *             elif t == NPY_LONGDOUBLE:  f[0] = 103 #"g"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_FLOAT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 847, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 847, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 847, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x66;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":848
 *             elif t == NPY_ULONGLONG:   f[0] = 81  #"Q"
 *             elif t == NPY_FLOAT:       f[0] = 102 #"f"
 *             elif t == NPY_DOUBLE:      f[0] = 100 #"d"             # <<<<<<<<<<<<<<
 *             elif t == NPY_LONGDOUBLE:  f[0] = 103 #"g"
 *             elif t == NPY_CFLOAT:      f[0] = 90; f[1] = 102; f += 1 # Zf
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_DOUBLE); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 848, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 848, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 848, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x64;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":849
 *             elif t == NPY_FLOAT:       f[0] = 102 #"f"
 *             elif t == NPY_DOUBLE:      f[0] = 100 #"d"
 *             elif t == NPY_LONGDOUBLE:  f[0] = 103 #"g"             # <<<<<<<<<<<<<<
 *             elif t == NPY_CFLOAT:      f[0] = 90; f[1] = 102; f += 1 # Zf
 *             elif t == NPY_CDOUBLE:     f[0] = 90; f[1] = 100; f += 1 # Zd
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_LONGDOUBLE); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 849, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 849, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 849, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 0x67;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":850
 *             elif t == NPY_DOUBLE:      f[0] = 100 #"d"
 *             elif t == NPY_LONGDOUBLE:  f[0] = 103 #"g"
 *             elif t == NPY_CFLOAT:      f[0] = 90; f[1] = 102; f += 1 # Zf             # <<<<<<<<<<<<<<
 *             elif t == NPY_CDOUBLE:     f[0] = 90; f[1] = 100; f += 1 # Zd
 *             elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_CFLOAT); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 850, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 850, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 850, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 90;
        (__pyx_v_f[1]) = 0x66;
        __pyx_v_f = (__pyx_v_f + 1);
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":851
 *             elif t == NPY_LONGDOUBLE:  f[0] = 103 #"g"
 *             elif t == NPY_CFLOAT:      f[0] = 90; f[1] = 102; f += 1 # Zf
 *             elif t == NPY_CDOUBLE:     f[0] = 90; f[1] = 100; f += 1 # Zd             # <<<<<<<<<<<<<<
 *             elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg
 *             elif t == NPY_OBJECT:      f[0] = 79 #"O"
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_CDOUBLE); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 851, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 851, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 851, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 90;
        (__pyx_v_f[1]) = 0x64;
        __pyx_v_f = (__pyx_v_f + 1);
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":852
 *             elif t == NPY_CFLOAT:      f[0] = 90; f[1] = 102; f += 1 # Zf
 *             elif t == NPY_CDOUBLE:     f[0] = 90; f[1] = 100; f += 1 # Zd
 *             elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg             # <<<<<<<<<<<<<<
 *             elif t == NPY_OBJECT:      f[0] = 79 #"O"
 *             else:
 */
      __pyx_t_3 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_CLONGDOUBLE); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 852, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_t, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 852, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 852, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_6) {
        (__pyx_v_f[0]) = 90;
        (__pyx_v_f[1]) = 0x67;
        __pyx_v_f = (__pyx_v_f + 1);
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":853
 *             elif t == NPY_CDOUBLE:     f[0] = 90; f[1] = 100; f += 1 # Zd
 *             elif t == NPY_CLONGDOUBLE: f[0] = 90; f[1] = 103; f += 1 # Zg
 *             elif t == NPY_OBJECT:      f[0] = 79 #"O"             # <<<<<<<<<<<<<<
 *             else:
 *                 raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)
 */
      __pyx_t_4 = __Pyx_PyInt_From_enum__NPY_TYPES(NPY_OBJECT); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 853, __pyx_L1_error)
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_t, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 853, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) __PYX_ERR(1, 853, __pyx_L1_error)
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (likely(__pyx_t_6)) {
        (__pyx_v_f[0]) = 79;
        goto __pyx_L15;
      }

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":855
 *             elif t == NPY_OBJECT:      f[0] = 79 #"O"
 *             else:
 *                 raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)             # <<<<<<<<<<<<<<
 *             f += 1
 *         else:
 */
      /*else*/ {
        __pyx_t_3 = PyUnicode_Format(__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_v_t); if (unlikely(!__pyx_t_3)) __PYX_ERR(1, 855, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_builtin_ValueError, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(1, 855, __pyx_L1_error)
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_Raise(__pyx_t_4, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __PYX_ERR(1, 855, __pyx_L1_error)
      }
      __pyx_L15:;

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":856
 *             else:
 *                 raise ValueError(u"unknown dtype code in numpy.pxd (%d)" % t)
 *             f += 1             # <<<<<<<<<<<<<<
 *         else:
 *             # Cython ignores struct boundary information ("T{...}"),
 */
      __pyx_v_f = (__pyx_v_f + 1);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":831
 *         offset[0] += child.itemsize
 * 
 *         if not PyDataType_HASFIELDS(child):             # <<<<<<<<<<<<<<
 *             t = child.type_num
 *             if end - f < 5:
 */
      goto __pyx_L13;
    }

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":860
 *             # Cython ignores struct boundary information ("T{...}"),
 *             # so don't output it
 *             f = _util_dtypestring(child, f, end, offset)             # <<<<<<<<<<<<<<
 *     return f
 * 
 */
    /*else*/ {
      __pyx_t_9 = __pyx_f_5numpy__util_dtypestring(__pyx_v_child, __pyx_v_f, __pyx_v_end, __pyx_v_offset); if (unlikely(__pyx_t_9 == ((char *)NULL))) __PYX_ERR(1, 860, __pyx_L1_error)
      __pyx_v_f = __pyx_t_9;
    }
    __pyx_L13:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":805
 *     cdef tuple fields
 * 
 *     for childname in descr.names:             # <<<<<<<<<<<<<<
 *         fields = descr.fields[childname]
 *         child, new_offset = fields
 */
  }
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":861
 *             # so don't output it
 *             f = _util_dtypestring(child, f, end, offset)
 *     return f             # <<<<<<<<<<<<<<
 * 
 * 
 */
  __pyx_r = __pyx_v_f;
  goto __pyx_L0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":796
 *         return ()
 * 
 * cdef inline char* _util_dtypestring(dtype descr, char* f, char* end, int* offset) except NULL:             # <<<<<<<<<<<<<<
 *     # Recursive utility function used in __getbuffer__ to get format
 *     # string. The new location in the format string is returned.
 */

  /* function exit code */
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  __Pyx_XDECREF(__pyx_t_3);
  __Pyx_XDECREF(__pyx_t_4);
  __Pyx_AddTraceback("numpy._util_dtypestring", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = NULL;
  __pyx_L0:;
  __Pyx_XDECREF((PyObject *)__pyx_v_child);
  __Pyx_XDECREF(__pyx_v_fields);
  __Pyx_XDECREF(__pyx_v_childname);
  __Pyx_XDECREF(__pyx_v_new_offset);
  __Pyx_XDECREF(__pyx_v_t);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":977
 * 
 * 
 * cdef inline void set_array_base(ndarray arr, object base):             # <<<<<<<<<<<<<<
 *      cdef PyObject* baseptr
 *      if base is None:
 */

static CYTHON_INLINE void __pyx_f_5numpy_set_array_base(PyArrayObject *__pyx_v_arr, PyObject *__pyx_v_base) {
  PyObject *__pyx_v_baseptr;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  int __pyx_t_2;
  __Pyx_RefNannySetupContext("set_array_base", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":979
 * cdef inline void set_array_base(ndarray arr, object base):
 *      cdef PyObject* baseptr
 *      if base is None:             # <<<<<<<<<<<<<<
 *          baseptr = NULL
 *      else:
 */
  __pyx_t_1 = (__pyx_v_base == Py_None);
  __pyx_t_2 = (__pyx_t_1 != 0);
  if (__pyx_t_2) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":980
 *      cdef PyObject* baseptr
 *      if base is None:
 *          baseptr = NULL             # <<<<<<<<<<<<<<
 *      else:
 *          Py_INCREF(base) # important to do this before decref below!
 */
    __pyx_v_baseptr = NULL;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":979
 * cdef inline void set_array_base(ndarray arr, object base):
 *      cdef PyObject* baseptr
 *      if base is None:             # <<<<<<<<<<<<<<
 *          baseptr = NULL
 *      else:
 */
    goto __pyx_L3;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":982
 *          baseptr = NULL
 *      else:
 *          Py_INCREF(base) # important to do this before decref below!             # <<<<<<<<<<<<<<
 *          baseptr = base
 *      Py_XDECREF(arr.base)
 */
  /*else*/ {
    Py_INCREF(__pyx_v_base);

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":983
 *      else:
 *          Py_INCREF(base) # important to do this before decref below!
 *          baseptr = base             # <<<<<<<<<<<<<<
 *      Py_XDECREF(arr.base)
 *      arr.base = baseptr
 */
    __pyx_v_baseptr = ((PyObject *)__pyx_v_base);
  }
  __pyx_L3:;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":984
 *          Py_INCREF(base) # important to do this before decref below!
 *          baseptr = base
 *      Py_XDECREF(arr.base)             # <<<<<<<<<<<<<<
 *      arr.base = baseptr
 * 
 */
  Py_XDECREF(__pyx_v_arr->base);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":985
 *          baseptr = base
 *      Py_XDECREF(arr.base)
 *      arr.base = baseptr             # <<<<<<<<<<<<<<
 * 
 * cdef inline object get_array_base(ndarray arr):
 */
  __pyx_v_arr->base = __pyx_v_baseptr;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":977
 * 
 * 
 * cdef inline void set_array_base(ndarray arr, object base):             # <<<<<<<<<<<<<<
 *      cdef PyObject* baseptr
 *      if base is None:
 */

  /* function exit code */
  __Pyx_RefNannyFinishContext();
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":987
 *      arr.base = baseptr
 * 
 * cdef inline object get_array_base(ndarray arr):             # <<<<<<<<<<<<<<
 *     if arr.base is NULL:
 *         return None
 */

static CYTHON_INLINE PyObject *__pyx_f_5numpy_get_array_base(PyArrayObject *__pyx_v_arr) {
  PyObject *__pyx_r = NULL;
  __Pyx_RefNannyDeclarations
  int __pyx_t_1;
  __Pyx_RefNannySetupContext("get_array_base", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":988
 * 
 * cdef inline object get_array_base(ndarray arr):
 *     if arr.base is NULL:             # <<<<<<<<<<<<<<
 *         return None
 *     else:
 */
  __pyx_t_1 = ((__pyx_v_arr->base == NULL) != 0);
  if (__pyx_t_1) {

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":989
 * cdef inline object get_array_base(ndarray arr):
 *     if arr.base is NULL:
 *         return None             # <<<<<<<<<<<<<<
 *     else:
 *         return arr.base
 */
    __Pyx_XDECREF(__pyx_r);
    __pyx_r = Py_None; __Pyx_INCREF(Py_None);
    goto __pyx_L0;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":988
 * 
 * cdef inline object get_array_base(ndarray arr):
 *     if arr.base is NULL:             # <<<<<<<<<<<<<<
 *         return None
 *     else:
 */
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":991
 *         return None
 *     else:
 *         return arr.base             # <<<<<<<<<<<<<<
 * 
 * 
 */
  /*else*/ {
    __Pyx_XDECREF(__pyx_r);
    __Pyx_INCREF(((PyObject *)__pyx_v_arr->base));
    __pyx_r = ((PyObject *)__pyx_v_arr->base);
    goto __pyx_L0;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":987
 *      arr.base = baseptr
 * 
 * cdef inline object get_array_base(ndarray arr):             # <<<<<<<<<<<<<<
 *     if arr.base is NULL:
 *         return None
 */

  /* function exit code */
  __pyx_L0:;
  __Pyx_XGIVEREF(__pyx_r);
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":996
 * # Versions of the import_* functions which are more suitable for
 * # Cython code.
 * cdef inline int import_array() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_array()
 */

static CYTHON_INLINE int __pyx_f_5numpy_import_array(void) {
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("import_array", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":997
 * # Cython code.
 * cdef inline int import_array() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_array()
 *     except Exception:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":998
 * cdef inline int import_array() except -1:
 *     try:
 *         _import_array()             # <<<<<<<<<<<<<<
 *     except Exception:
 *         raise ImportError("numpy.core.multiarray failed to import")
 */
      __pyx_t_4 = _import_array(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 998, __pyx_L3_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":997
 * # Cython code.
 * cdef inline int import_array() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_array()
 *     except Exception:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":999
 *     try:
 *         _import_array()
 *     except Exception:             # <<<<<<<<<<<<<<
 *         raise ImportError("numpy.core.multiarray failed to import")
 * 
 */
    __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0])));
    if (__pyx_t_4) {
      __Pyx_AddTraceback("numpy.import_array", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 999, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_GOTREF(__pyx_t_7);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1000
 *         _import_array()
 *     except Exception:
 *         raise ImportError("numpy.core.multiarray failed to import")             # <<<<<<<<<<<<<<
 * 
 * cdef inline int import_umath() except -1:
 */
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__11, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1000, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_Raise(__pyx_t_8, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __PYX_ERR(1, 1000, __pyx_L5_except_error)
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":997
 * # Cython code.
 * cdef inline int import_array() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_array()
 *     except Exception:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L8_try_end:;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":996
 * # Versions of the import_* functions which are more suitable for
 * # Cython code.
 * cdef inline int import_array() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_array()
 */

  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("numpy.import_array", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1002
 *         raise ImportError("numpy.core.multiarray failed to import")
 * 
 * cdef inline int import_umath() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_umath()
 */

static CYTHON_INLINE int __pyx_f_5numpy_import_umath(void) {
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("import_umath", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1003
 * 
 * cdef inline int import_umath() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1004
 * cdef inline int import_umath() except -1:
 *     try:
 *         _import_umath()             # <<<<<<<<<<<<<<
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")
 */
      __pyx_t_4 = _import_umath(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 1004, __pyx_L3_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1003
 * 
 * cdef inline int import_umath() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1005
 *     try:
 *         _import_umath()
 *     except Exception:             # <<<<<<<<<<<<<<
 *         raise ImportError("numpy.core.umath failed to import")
 * 
 */
    __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0])));
    if (__pyx_t_4) {
      __Pyx_AddTraceback("numpy.import_umath", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 1005, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_GOTREF(__pyx_t_7);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1006
 *         _import_umath()
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")             # <<<<<<<<<<<<<<
 * 
 * cdef inline int import_ufunc() except -1:
 */
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__12, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1006, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_Raise(__pyx_t_8, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __PYX_ERR(1, 1006, __pyx_L5_except_error)
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1003
 * 
 * cdef inline int import_umath() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L8_try_end:;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1002
 *         raise ImportError("numpy.core.multiarray failed to import")
 * 
 * cdef inline int import_umath() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_umath()
 */

  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("numpy.import_umath", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

/* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1008
 *         raise ImportError("numpy.core.umath failed to import")
 * 
 * cdef inline int import_ufunc() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_umath()
 */

static CYTHON_INLINE int __pyx_f_5numpy_import_ufunc(void) {
  int __pyx_r;
  __Pyx_RefNannyDeclarations
  PyObject *__pyx_t_1 = NULL;
  PyObject *__pyx_t_2 = NULL;
  PyObject *__pyx_t_3 = NULL;
  int __pyx_t_4;
  PyObject *__pyx_t_5 = NULL;
  PyObject *__pyx_t_6 = NULL;
  PyObject *__pyx_t_7 = NULL;
  PyObject *__pyx_t_8 = NULL;
  __Pyx_RefNannySetupContext("import_ufunc", 0);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1009
 * 
 * cdef inline int import_ufunc() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
  {
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3);
    __Pyx_XGOTREF(__pyx_t_1);
    __Pyx_XGOTREF(__pyx_t_2);
    __Pyx_XGOTREF(__pyx_t_3);
    /*try:*/ {

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1010
 * cdef inline int import_ufunc() except -1:
 *     try:
 *         _import_umath()             # <<<<<<<<<<<<<<
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")
 */
      __pyx_t_4 = _import_umath(); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(1, 1010, __pyx_L3_error)

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1009
 * 
 * cdef inline int import_ufunc() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
    }
    __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
    __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
    __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
    goto __pyx_L8_try_end;
    __pyx_L3_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1011
 *     try:
 *         _import_umath()
 *     except Exception:             # <<<<<<<<<<<<<<
 *         raise ImportError("numpy.core.umath failed to import")
 */
    __pyx_t_4 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0])));
    if (__pyx_t_4) {
      __Pyx_AddTraceback("numpy.import_ufunc", __pyx_clineno, __pyx_lineno, __pyx_filename);
      if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) __PYX_ERR(1, 1011, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_GOTREF(__pyx_t_7);

      /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1012
 *         _import_umath()
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")             # <<<<<<<<<<<<<<
 */
      __pyx_t_8 = __Pyx_PyObject_Call(__pyx_builtin_ImportError, __pyx_tuple__13, NULL); if (unlikely(!__pyx_t_8)) __PYX_ERR(1, 1012, __pyx_L5_except_error)
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_Raise(__pyx_t_8, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __PYX_ERR(1, 1012, __pyx_L5_except_error)
    }
    goto __pyx_L5_except_error;
    __pyx_L5_except_error:;

    /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1009
 * 
 * cdef inline int import_ufunc() except -1:
 *     try:             # <<<<<<<<<<<<<<
 *         _import_umath()
 *     except Exception:
 */
    __Pyx_XGIVEREF(__pyx_t_1);
    __Pyx_XGIVEREF(__pyx_t_2);
    __Pyx_XGIVEREF(__pyx_t_3);
    __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
    goto __pyx_L1_error;
    __pyx_L8_try_end:;
  }

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1008
 *         raise ImportError("numpy.core.umath failed to import")
 * 
 * cdef inline int import_ufunc() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_umath()
 */

  /* function exit code */
  __pyx_r = 0;
  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_5);
  __Pyx_XDECREF(__pyx_t_6);
  __Pyx_XDECREF(__pyx_t_7);
  __Pyx_XDECREF(__pyx_t_8);
  __Pyx_AddTraceback("numpy.import_ufunc", __pyx_clineno, __pyx_lineno, __pyx_filename);
  __pyx_r = -1;
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  return __pyx_r;
}

static PyMethodDef __pyx_methods[] = {
  {0, 0, 0, 0}
};

#if PY_MAJOR_VERSION >= 3
#if CYTHON_PEP489_MULTI_PHASE_INIT
static PyObject* __pyx_pymod_create(PyObject *spec, PyModuleDef *def); /*proto*/
static int __pyx_pymod_exec_gpu_nms(PyObject* module); /*proto*/
static PyModuleDef_Slot __pyx_moduledef_slots[] = {
  {Py_mod_create, (void*)__pyx_pymod_create},
  {Py_mod_exec, (void*)__pyx_pymod_exec_gpu_nms},
  {0, NULL}
};
#endif

static struct PyModuleDef __pyx_moduledef = {
    PyModuleDef_HEAD_INIT,
    "gpu_nms",
    0, /* m_doc */
  #if CYTHON_PEP489_MULTI_PHASE_INIT
    0, /* m_size */
  #else
    -1, /* m_size */
  #endif
    __pyx_methods /* m_methods */,
  #if CYTHON_PEP489_MULTI_PHASE_INIT
    __pyx_moduledef_slots, /* m_slots */
  #else
    NULL, /* m_reload */
  #endif
    NULL, /* m_traverse */
    NULL, /* m_clear */
    NULL /* m_free */
};
#endif

static __Pyx_StringTabEntry __pyx_string_tab[] = {
  {&__pyx_kp_u_Format_string_allocated_too_shor, __pyx_k_Format_string_allocated_too_shor, sizeof(__pyx_k_Format_string_allocated_too_shor), 0, 1, 0, 0},
  {&__pyx_kp_u_Format_string_allocated_too_shor_2, __pyx_k_Format_string_allocated_too_shor_2, sizeof(__pyx_k_Format_string_allocated_too_shor_2), 0, 1, 0, 0},
  {&__pyx_n_s_ImportError, __pyx_k_ImportError, sizeof(__pyx_k_ImportError), 0, 0, 1, 1},
  {&__pyx_kp_u_Non_native_byte_order_not_suppor, __pyx_k_Non_native_byte_order_not_suppor, sizeof(__pyx_k_Non_native_byte_order_not_suppor), 0, 1, 0, 0},
  {&__pyx_n_s_RuntimeError, __pyx_k_RuntimeError, sizeof(__pyx_k_RuntimeError), 0, 0, 1, 1},
  {&__pyx_n_s_ValueError, __pyx_k_ValueError, sizeof(__pyx_k_ValueError), 0, 0, 1, 1},
  {&__pyx_n_s_argsort, __pyx_k_argsort, sizeof(__pyx_k_argsort), 0, 0, 1, 1},
  {&__pyx_n_s_boxes_dim, __pyx_k_boxes_dim, sizeof(__pyx_k_boxes_dim), 0, 0, 1, 1},
  {&__pyx_n_s_boxes_num, __pyx_k_boxes_num, sizeof(__pyx_k_boxes_num), 0, 0, 1, 1},
  {&__pyx_n_s_cline_in_traceback, __pyx_k_cline_in_traceback, sizeof(__pyx_k_cline_in_traceback), 0, 0, 1, 1},
  {&__pyx_n_s_dets, __pyx_k_dets, sizeof(__pyx_k_dets), 0, 0, 1, 1},
  {&__pyx_n_s_device_id, __pyx_k_device_id, sizeof(__pyx_k_device_id), 0, 0, 1, 1},
  {&__pyx_n_s_dtype, __pyx_k_dtype, sizeof(__pyx_k_dtype), 0, 0, 1, 1},
  {&__pyx_n_s_gpu_nms, __pyx_k_gpu_nms, sizeof(__pyx_k_gpu_nms), 0, 0, 1, 1},
  {&__pyx_kp_s_gpu_nms_pyx, __pyx_k_gpu_nms_pyx, sizeof(__pyx_k_gpu_nms_pyx), 0, 0, 1, 0},
  {&__pyx_n_s_import, __pyx_k_import, sizeof(__pyx_k_import), 0, 0, 1, 1},
  {&__pyx_n_s_int32, __pyx_k_int32, sizeof(__pyx_k_int32), 0, 0, 1, 1},
  {&__pyx_n_s_keep, __pyx_k_keep, sizeof(__pyx_k_keep), 0, 0, 1, 1},
  {&__pyx_n_s_main, __pyx_k_main, sizeof(__pyx_k_main), 0, 0, 1, 1},
  {&__pyx_kp_u_ndarray_is_not_C_contiguous, __pyx_k_ndarray_is_not_C_contiguous, sizeof(__pyx_k_ndarray_is_not_C_contiguous), 0, 1, 0, 0},
  {&__pyx_kp_u_ndarray_is_not_Fortran_contiguou, __pyx_k_ndarray_is_not_Fortran_contiguou, sizeof(__pyx_k_ndarray_is_not_Fortran_contiguou), 0, 1, 0, 0},
  {&__pyx_n_s_np, __pyx_k_np, sizeof(__pyx_k_np), 0, 0, 1, 1},
  {&__pyx_n_s_num_out, __pyx_k_num_out, sizeof(__pyx_k_num_out), 0, 0, 1, 1},
  {&__pyx_n_s_numpy, __pyx_k_numpy, sizeof(__pyx_k_numpy), 0, 0, 1, 1},
  {&__pyx_kp_s_numpy_core_multiarray_failed_to, __pyx_k_numpy_core_multiarray_failed_to, sizeof(__pyx_k_numpy_core_multiarray_failed_to), 0, 0, 1, 0},
  {&__pyx_kp_s_numpy_core_umath_failed_to_impor, __pyx_k_numpy_core_umath_failed_to_impor, sizeof(__pyx_k_numpy_core_umath_failed_to_impor), 0, 0, 1, 0},
  {&__pyx_n_s_order, __pyx_k_order, sizeof(__pyx_k_order), 0, 0, 1, 1},
  {&__pyx_n_s_range, __pyx_k_range, sizeof(__pyx_k_range), 0, 0, 1, 1},
  {&__pyx_n_s_scores, __pyx_k_scores, sizeof(__pyx_k_scores), 0, 0, 1, 1},
  {&__pyx_n_s_sorted_dets, __pyx_k_sorted_dets, sizeof(__pyx_k_sorted_dets), 0, 0, 1, 1},
  {&__pyx_n_s_test, __pyx_k_test, sizeof(__pyx_k_test), 0, 0, 1, 1},
  {&__pyx_n_s_thresh, __pyx_k_thresh, sizeof(__pyx_k_thresh), 0, 0, 1, 1},
  {&__pyx_kp_u_unknown_dtype_code_in_numpy_pxd, __pyx_k_unknown_dtype_code_in_numpy_pxd, sizeof(__pyx_k_unknown_dtype_code_in_numpy_pxd), 0, 1, 0, 0},
  {&__pyx_n_s_zeros, __pyx_k_zeros, sizeof(__pyx_k_zeros), 0, 0, 1, 1},
  {0, 0, 0, 0, 0, 0, 0}
};
static int __Pyx_InitCachedBuiltins(void) {
  __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(1, 229, __pyx_L1_error)
  __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(1, 242, __pyx_L1_error)
  __pyx_builtin_RuntimeError = __Pyx_GetBuiltinName(__pyx_n_s_RuntimeError); if (!__pyx_builtin_RuntimeError) __PYX_ERR(1, 810, __pyx_L1_error)
  __pyx_builtin_ImportError = __Pyx_GetBuiltinName(__pyx_n_s_ImportError); if (!__pyx_builtin_ImportError) __PYX_ERR(1, 1000, __pyx_L1_error)
  return 0;
  __pyx_L1_error:;
  return -1;
}

static int __Pyx_InitCachedConstants(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0);

  /* "gpu_nms.pyx":24
 *         keep = np.zeros(boxes_num, dtype=np.int32)
 *     cdef np.ndarray[np.float32_t, ndim=1] \
 *         scores = dets[:, 4]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.int_t, ndim=1] \
 *         order = scores.argsort()[::-1]
 */
  __pyx_slice_ = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice_)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice_);
  __Pyx_GIVEREF(__pyx_slice_);
  __pyx_tuple__2 = PyTuple_Pack(2, __pyx_slice_, __pyx_int_4); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(0, 24, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__2);
  __Pyx_GIVEREF(__pyx_tuple__2);

  /* "gpu_nms.pyx":26
 *         scores = dets[:, 4]
 *     cdef np.ndarray[np.int_t, ndim=1] \
 *         order = scores.argsort()[::-1]             # <<<<<<<<<<<<<<
 *     cdef np.ndarray[np.float32_t, ndim=2] \
 *         sorted_dets = dets[order, :]
 */
  __pyx_slice__3 = PySlice_New(Py_None, Py_None, __pyx_int_neg_1); if (unlikely(!__pyx_slice__3)) __PYX_ERR(0, 26, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__3);
  __Pyx_GIVEREF(__pyx_slice__3);

  /* "gpu_nms.pyx":28
 *         order = scores.argsort()[::-1]
 *     cdef np.ndarray[np.float32_t, ndim=2] \
 *         sorted_dets = dets[order, :]             # <<<<<<<<<<<<<<
 *     _nms(&keep[0], &num_out, &sorted_dets[0, 0], boxes_num, boxes_dim, thresh, device_id)
 *     keep = keep[:num_out]
 */
  __pyx_slice__4 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__4)) __PYX_ERR(0, 28, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_slice__4);
  __Pyx_GIVEREF(__pyx_slice__4);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":229
 *             if ((flags & pybuf.PyBUF_C_CONTIGUOUS == pybuf.PyBUF_C_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_C_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not C contiguous")             # <<<<<<<<<<<<<<
 * 
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)
 */
  __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_u_ndarray_is_not_C_contiguous); if (unlikely(!__pyx_tuple__5)) __PYX_ERR(1, 229, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__5);
  __Pyx_GIVEREF(__pyx_tuple__5);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":233
 *             if ((flags & pybuf.PyBUF_F_CONTIGUOUS == pybuf.PyBUF_F_CONTIGUOUS)
 *                 and not PyArray_CHKFLAGS(self, NPY_F_CONTIGUOUS)):
 *                 raise ValueError(u"ndarray is not Fortran contiguous")             # <<<<<<<<<<<<<<
 * 
 *             info.buf = PyArray_DATA(self)
 */
  __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_u_ndarray_is_not_Fortran_contiguou); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(1, 233, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__6);
  __Pyx_GIVEREF(__pyx_tuple__6);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":263
 *                 if ((descr.byteorder == c'>' and little_endian) or
 *                     (descr.byteorder == c'<' and not little_endian)):
 *                     raise ValueError(u"Non-native byte order not supported")             # <<<<<<<<<<<<<<
 *                 if   t == NPY_BYTE:        f = "b"
 *                 elif t == NPY_UBYTE:       f = "B"
 */
  __pyx_tuple__7 = PyTuple_Pack(1, __pyx_kp_u_Non_native_byte_order_not_suppor); if (unlikely(!__pyx_tuple__7)) __PYX_ERR(1, 263, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__7);
  __Pyx_GIVEREF(__pyx_tuple__7);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":810
 * 
 *         if (end - f) - (new_offset - offset[0]) < 15:
 *             raise RuntimeError(u"Format string allocated too short, see comment in numpy.pxd")             # <<<<<<<<<<<<<<
 * 
 *         if ((child.byteorder == c'>' and little_endian) or
 */
  __pyx_tuple__8 = PyTuple_Pack(1, __pyx_kp_u_Format_string_allocated_too_shor); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(1, 810, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__8);
  __Pyx_GIVEREF(__pyx_tuple__8);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":814
 *         if ((child.byteorder == c'>' and little_endian) or
 *             (child.byteorder == c'<' and not little_endian)):
 *             raise ValueError(u"Non-native byte order not supported")             # <<<<<<<<<<<<<<
 *             # One could encode it in the format string and have Cython
 *             # complain instead, BUT: < and > in format strings also imply
 */
  __pyx_tuple__9 = PyTuple_Pack(1, __pyx_kp_u_Non_native_byte_order_not_suppor); if (unlikely(!__pyx_tuple__9)) __PYX_ERR(1, 814, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__9);
  __Pyx_GIVEREF(__pyx_tuple__9);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":834
 *             t = child.type_num
 *             if end - f < 5:
 *                 raise RuntimeError(u"Format string allocated too short.")             # <<<<<<<<<<<<<<
 * 
 *             # Until ticket #99 is fixed, use integers to avoid warnings
 */
  __pyx_tuple__10 = PyTuple_Pack(1, __pyx_kp_u_Format_string_allocated_too_shor_2); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(1, 834, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__10);
  __Pyx_GIVEREF(__pyx_tuple__10);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1000
 *         _import_array()
 *     except Exception:
 *         raise ImportError("numpy.core.multiarray failed to import")             # <<<<<<<<<<<<<<
 * 
 * cdef inline int import_umath() except -1:
 */
  __pyx_tuple__11 = PyTuple_Pack(1, __pyx_kp_s_numpy_core_multiarray_failed_to); if (unlikely(!__pyx_tuple__11)) __PYX_ERR(1, 1000, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__11);
  __Pyx_GIVEREF(__pyx_tuple__11);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1006
 *         _import_umath()
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")             # <<<<<<<<<<<<<<
 * 
 * cdef inline int import_ufunc() except -1:
 */
  __pyx_tuple__12 = PyTuple_Pack(1, __pyx_kp_s_numpy_core_umath_failed_to_impor); if (unlikely(!__pyx_tuple__12)) __PYX_ERR(1, 1006, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__12);
  __Pyx_GIVEREF(__pyx_tuple__12);

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1012
 *         _import_umath()
 *     except Exception:
 *         raise ImportError("numpy.core.umath failed to import")             # <<<<<<<<<<<<<<
 */
  __pyx_tuple__13 = PyTuple_Pack(1, __pyx_kp_s_numpy_core_umath_failed_to_impor); if (unlikely(!__pyx_tuple__13)) __PYX_ERR(1, 1012, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__13);
  __Pyx_GIVEREF(__pyx_tuple__13);

  /* "gpu_nms.pyx":16
 *     void _nms(np.int32_t*, int*, np.float32_t*, int, int, float, int)
 * 
 * def gpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh,             # <<<<<<<<<<<<<<
 *             np.int32_t device_id=0):
 *     cdef int boxes_num = dets.shape[0]
 */
  __pyx_tuple__14 = PyTuple_Pack(10, __pyx_n_s_dets, __pyx_n_s_thresh, __pyx_n_s_device_id, __pyx_n_s_boxes_num, __pyx_n_s_boxes_dim, __pyx_n_s_num_out, __pyx_n_s_keep, __pyx_n_s_scores, __pyx_n_s_order, __pyx_n_s_sorted_dets); if (unlikely(!__pyx_tuple__14)) __PYX_ERR(0, 16, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_tuple__14);
  __Pyx_GIVEREF(__pyx_tuple__14);
  __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(3, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__14, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_gpu_nms_pyx, __pyx_n_s_gpu_nms, 16, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) __PYX_ERR(0, 16, __pyx_L1_error)
  __Pyx_RefNannyFinishContext();
  return 0;
  __pyx_L1_error:;
  __Pyx_RefNannyFinishContext();
  return -1;
}

static int __Pyx_InitGlobals(void) {
  if (__Pyx_InitStrings(__pyx_string_tab) < 0) __PYX_ERR(0, 1, __pyx_L1_error);
  __pyx_int_4 = PyInt_FromLong(4); if (unlikely(!__pyx_int_4)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_int_neg_1 = PyInt_FromLong(-1); if (unlikely(!__pyx_int_neg_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  return 0;
  __pyx_L1_error:;
  return -1;
}

static int __Pyx_modinit_global_init_code(void); /*proto*/
static int __Pyx_modinit_variable_export_code(void); /*proto*/
static int __Pyx_modinit_function_export_code(void); /*proto*/
static int __Pyx_modinit_type_init_code(void); /*proto*/
static int __Pyx_modinit_type_import_code(void); /*proto*/
static int __Pyx_modinit_variable_import_code(void); /*proto*/
static int __Pyx_modinit_function_import_code(void); /*proto*/

static int __Pyx_modinit_global_init_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_global_init_code", 0);
  /*--- Global init code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_variable_export_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_variable_export_code", 0);
  /*--- Variable export code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_function_export_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_function_export_code", 0);
  /*--- Function export code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_type_init_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0);
  /*--- Type init code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_type_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_type_import_code", 0);
  /*--- Type import code ---*/
  __pyx_ptype_7cpython_4type_type = __Pyx_ImportType(__Pyx_BUILTIN_MODULE_NAME, "type", 
  #if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x050B0000
  sizeof(PyTypeObject),
  #else
  sizeof(PyHeapTypeObject),
  #endif
  0); if (unlikely(!__pyx_ptype_7cpython_4type_type)) __PYX_ERR(2, 9, __pyx_L1_error)
  __pyx_ptype_5numpy_dtype = __Pyx_ImportType("numpy", "dtype", sizeof(PyArray_Descr), 0); if (unlikely(!__pyx_ptype_5numpy_dtype)) __PYX_ERR(1, 164, __pyx_L1_error)
  __pyx_ptype_5numpy_flatiter = __Pyx_ImportType("numpy", "flatiter", sizeof(PyArrayIterObject), 0); if (unlikely(!__pyx_ptype_5numpy_flatiter)) __PYX_ERR(1, 186, __pyx_L1_error)
  __pyx_ptype_5numpy_broadcast = __Pyx_ImportType("numpy", "broadcast", sizeof(PyArrayMultiIterObject), 0); if (unlikely(!__pyx_ptype_5numpy_broadcast)) __PYX_ERR(1, 190, __pyx_L1_error)
  __pyx_ptype_5numpy_ndarray = __Pyx_ImportType("numpy", "ndarray", sizeof(PyArrayObject), 0); if (unlikely(!__pyx_ptype_5numpy_ndarray)) __PYX_ERR(1, 199, __pyx_L1_error)
  __pyx_ptype_5numpy_ufunc = __Pyx_ImportType("numpy", "ufunc", sizeof(PyUFuncObject), 0); if (unlikely(!__pyx_ptype_5numpy_ufunc)) __PYX_ERR(1, 872, __pyx_L1_error)
  __Pyx_RefNannyFinishContext();
  return 0;
  __pyx_L1_error:;
  __Pyx_RefNannyFinishContext();
  return -1;
}

static int __Pyx_modinit_variable_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_variable_import_code", 0);
  /*--- Variable import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}

static int __Pyx_modinit_function_import_code(void) {
  __Pyx_RefNannyDeclarations
  __Pyx_RefNannySetupContext("__Pyx_modinit_function_import_code", 0);
  /*--- Function import code ---*/
  __Pyx_RefNannyFinishContext();
  return 0;
}


#if PY_MAJOR_VERSION < 3
#ifdef CYTHON_NO_PYINIT_EXPORT
#define __Pyx_PyMODINIT_FUNC void
#else
#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC
#endif
#else
#ifdef CYTHON_NO_PYINIT_EXPORT
#define __Pyx_PyMODINIT_FUNC PyObject *
#else
#define __Pyx_PyMODINIT_FUNC PyMODINIT_FUNC
#endif
#endif
#ifndef CYTHON_SMALL_CODE
#if defined(__clang__)
    #define CYTHON_SMALL_CODE
#elif defined(__GNUC__)
    #define CYTHON_SMALL_CODE __attribute__((optimize("Os")))
#else
    #define CYTHON_SMALL_CODE
#endif
#endif


#if PY_MAJOR_VERSION < 3
__Pyx_PyMODINIT_FUNC initgpu_nms(void) CYTHON_SMALL_CODE; /*proto*/
__Pyx_PyMODINIT_FUNC initgpu_nms(void)
#else
__Pyx_PyMODINIT_FUNC PyInit_gpu_nms(void) CYTHON_SMALL_CODE; /*proto*/
__Pyx_PyMODINIT_FUNC PyInit_gpu_nms(void)
#if CYTHON_PEP489_MULTI_PHASE_INIT
{
  return PyModuleDef_Init(&__pyx_moduledef);
}
static int __Pyx_copy_spec_to_module(PyObject *spec, PyObject *moddict, const char* from_name, const char* to_name) {
    PyObject *value = PyObject_GetAttrString(spec, from_name);
    int result = 0;
    if (likely(value)) {
        result = PyDict_SetItemString(moddict, to_name, value);
        Py_DECREF(value);
    } else if (PyErr_ExceptionMatches(PyExc_AttributeError)) {
        PyErr_Clear();
    } else {
        result = -1;
    }
    return result;
}
static PyObject* __pyx_pymod_create(PyObject *spec, CYTHON_UNUSED PyModuleDef *def) {
    PyObject *module = NULL, *moddict, *modname;
    if (__pyx_m)
        return __Pyx_NewRef(__pyx_m);
    modname = PyObject_GetAttrString(spec, "name");
    if (unlikely(!modname)) goto bad;
    module = PyModule_NewObject(modname);
    Py_DECREF(modname);
    if (unlikely(!module)) goto bad;
    moddict = PyModule_GetDict(module);
    if (unlikely(!moddict)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "loader", "__loader__") < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "origin", "__file__") < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "parent", "__package__") < 0)) goto bad;
    if (unlikely(__Pyx_copy_spec_to_module(spec, moddict, "submodule_search_locations", "__path__") < 0)) goto bad;
    return module;
bad:
    Py_XDECREF(module);
    return NULL;
}


static int __pyx_pymod_exec_gpu_nms(PyObject *__pyx_pyinit_module)
#endif
#endif
{
  PyObject *__pyx_t_1 = NULL;
  __Pyx_RefNannyDeclarations
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  if (__pyx_m && __pyx_m == __pyx_pyinit_module) return 0;
  #elif PY_MAJOR_VERSION >= 3
  if (__pyx_m) return __Pyx_NewRef(__pyx_m);
  #endif
  #if CYTHON_REFNANNY
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny");
if (!__Pyx_RefNanny) {
  PyErr_Clear();
  __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny");
  if (!__Pyx_RefNanny)
      Py_FatalError("failed to import 'refnanny' module");
}
#endif
  __Pyx_RefNannySetupContext("__Pyx_PyMODINIT_FUNC PyInit_gpu_nms(void)", 0);
  if (__Pyx_check_binary_version() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_empty_unicode = PyUnicode_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_unicode)) __PYX_ERR(0, 1, __pyx_L1_error)
  #ifdef __Pyx_CyFunction_USED
  if (__pyx_CyFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_FusedFunction_USED
  if (__pyx_FusedFunction_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_Coroutine_USED
  if (__pyx_Coroutine_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_Generator_USED
  if (__pyx_Generator_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_AsyncGen_USED
  if (__pyx_AsyncGen_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  #ifdef __Pyx_StopAsyncIteration_USED
  if (__pyx_StopAsyncIteration_init() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  /*--- Library function declarations ---*/
  /*--- Threads initialization code ---*/
  #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS
  #ifdef WITH_THREAD /* Python build with threading support? */
  PyEval_InitThreads();
  #endif
  #endif
  /*--- Module creation code ---*/
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  __pyx_m = __pyx_pyinit_module;
  Py_INCREF(__pyx_m);
  #else
  #if PY_MAJOR_VERSION < 3
  __pyx_m = Py_InitModule4("gpu_nms", __pyx_methods, 0, 0, PYTHON_API_VERSION); Py_XINCREF(__pyx_m);
  #else
  __pyx_m = PyModule_Create(&__pyx_moduledef);
  #endif
  if (unlikely(!__pyx_m)) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  __pyx_d = PyModule_GetDict(__pyx_m); if (unlikely(!__pyx_d)) __PYX_ERR(0, 1, __pyx_L1_error)
  Py_INCREF(__pyx_d);
  __pyx_b = PyImport_AddModule(__Pyx_BUILTIN_MODULE_NAME); if (unlikely(!__pyx_b)) __PYX_ERR(0, 1, __pyx_L1_error)
  __pyx_cython_runtime = PyImport_AddModule((char *) "cython_runtime"); if (unlikely(!__pyx_cython_runtime)) __PYX_ERR(0, 1, __pyx_L1_error)
  #if CYTHON_COMPILING_IN_PYPY
  Py_INCREF(__pyx_b);
  #endif
  if (PyObject_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) __PYX_ERR(0, 1, __pyx_L1_error);
  /*--- Initialize various global constants etc. ---*/
  if (__Pyx_InitGlobals() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #if PY_MAJOR_VERSION < 3 && (__PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT)
  if (__Pyx_init_sys_getdefaultencoding_params() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif
  if (__pyx_module_is_main_gpu_nms) {
    if (PyObject_SetAttrString(__pyx_m, "__name__", __pyx_n_s_main) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  }
  #if PY_MAJOR_VERSION >= 3
  {
    PyObject *modules = PyImport_GetModuleDict(); if (unlikely(!modules)) __PYX_ERR(0, 1, __pyx_L1_error)
    if (!PyDict_GetItemString(modules, "gpu_nms")) {
      if (unlikely(PyDict_SetItemString(modules, "gpu_nms", __pyx_m) < 0)) __PYX_ERR(0, 1, __pyx_L1_error)
    }
  }
  #endif
  /*--- Builtin init code ---*/
  if (__Pyx_InitCachedBuiltins() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Constants init code ---*/
  if (__Pyx_InitCachedConstants() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  /*--- Global type/function init code ---*/
  (void)__Pyx_modinit_global_init_code();
  (void)__Pyx_modinit_variable_export_code();
  (void)__Pyx_modinit_function_export_code();
  (void)__Pyx_modinit_type_init_code();
  if (unlikely(__Pyx_modinit_type_import_code() != 0)) goto __pyx_L1_error;
  (void)__Pyx_modinit_variable_import_code();
  (void)__Pyx_modinit_function_import_code();
  /*--- Execution code ---*/
  #if defined(__Pyx_Generator_USED) || defined(__Pyx_Coroutine_USED)
  if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  #endif

  /* "gpu_nms.pyx":8
 * # --------------------------------------------------------
 * 
 * import numpy as np             # <<<<<<<<<<<<<<
 * cimport numpy as np
 * 
 */
  __pyx_t_1 = __Pyx_Import(__pyx_n_s_numpy, 0, -1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 8, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_np, __pyx_t_1) < 0) __PYX_ERR(0, 8, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "gpu_nms.pyx":11
 * cimport numpy as np
 * 
 * assert sizeof(int) == sizeof(np.int32_t)             # <<<<<<<<<<<<<<
 * 
 * cdef extern from "gpu_nms.hpp":
 */
  #ifndef CYTHON_WITHOUT_ASSERTIONS
  if (unlikely(!Py_OptimizeFlag)) {
    if (unlikely(!(((sizeof(int)) == (sizeof(__pyx_t_5numpy_int32_t))) != 0))) {
      PyErr_SetNone(PyExc_AssertionError);
      __PYX_ERR(0, 11, __pyx_L1_error)
    }
  }
  #endif

  /* "gpu_nms.pyx":16
 *     void _nms(np.int32_t*, int*, np.float32_t*, int, int, float, int)
 * 
 * def gpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh,             # <<<<<<<<<<<<<<
 *             np.int32_t device_id=0):
 *     cdef int boxes_num = dets.shape[0]
 */
  __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_7gpu_nms_1gpu_nms, NULL, __pyx_n_s_gpu_nms); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 16, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_gpu_nms, __pyx_t_1) < 0) __PYX_ERR(0, 16, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "gpu_nms.pyx":1
 * # --------------------------------------------------------             # <<<<<<<<<<<<<<
 * # Faster R-CNN
 * # Copyright (c) 2015 Microsoft
 */
  __pyx_t_1 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_GOTREF(__pyx_t_1);
  if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_1) < 0) __PYX_ERR(0, 1, __pyx_L1_error)
  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

  /* "../../../../anaconda3/lib/python3.6/site-packages/Cython/Includes/numpy/__init__.pxd":1008
 *         raise ImportError("numpy.core.umath failed to import")
 * 
 * cdef inline int import_ufunc() except -1:             # <<<<<<<<<<<<<<
 *     try:
 *         _import_umath()
 */

  /*--- Wrapped vars code ---*/

  goto __pyx_L0;
  __pyx_L1_error:;
  __Pyx_XDECREF(__pyx_t_1);
  if (__pyx_m) {
    if (__pyx_d) {
      __Pyx_AddTraceback("init gpu_nms", 0, __pyx_lineno, __pyx_filename);
    }
    Py_DECREF(__pyx_m); __pyx_m = 0;
  } else if (!PyErr_Occurred()) {
    PyErr_SetString(PyExc_ImportError, "init gpu_nms");
  }
  __pyx_L0:;
  __Pyx_RefNannyFinishContext();
  #if CYTHON_PEP489_MULTI_PHASE_INIT
  return (__pyx_m != NULL) ? 0 : -1;
  #elif PY_MAJOR_VERSION >= 3
  return __pyx_m;
  #else
  return;
  #endif
}

/* --- Runtime support code --- */
/* Refnanny */
#if CYTHON_REFNANNY
static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) {
    PyObject *m = NULL, *p = NULL;
    void *r = NULL;
    m = PyImport_ImportModule((char *)modname);
    if (!m) goto end;
    p = PyObject_GetAttrString(m, (char *)"RefNannyAPI");
    if (!p) goto end;
    r = PyLong_AsVoidPtr(p);
end:
    Py_XDECREF(p);
    Py_XDECREF(m);
    return (__Pyx_RefNannyAPIStruct *)r;
}
#endif

/* RaiseArgTupleInvalid */
static void __Pyx_RaiseArgtupleInvalid(
    const char* func_name,
    int exact,
    Py_ssize_t num_min,
    Py_ssize_t num_max,
    Py_ssize_t num_found)
{
    Py_ssize_t num_expected;
    const char *more_or_less;
    if (num_found < num_min) {
        num_expected = num_min;
        more_or_less = "at least";
    } else {
        num_expected = num_max;
        more_or_less = "at most";
    }
    if (exact) {
        more_or_less = "exactly";
    }
    PyErr_Format(PyExc_TypeError,
                 "%.200s() takes %.8s %" CYTHON_FORMAT_SSIZE_T "d positional argument%.1s (%" CYTHON_FORMAT_SSIZE_T "d given)",
                 func_name, more_or_less, num_expected,
                 (num_expected == 1) ? "" : "s", num_found);
}

/* RaiseDoubleKeywords */
static void __Pyx_RaiseDoubleKeywordsError(
    const char* func_name,
    PyObject* kw_name)
{
    PyErr_Format(PyExc_TypeError,
        #if PY_MAJOR_VERSION >= 3
        "%s() got multiple values for keyword argument '%U'", func_name, kw_name);
        #else
        "%s() got multiple values for keyword argument '%s'", func_name,
        PyString_AsString(kw_name));
        #endif
}

/* ParseKeywords */
static int __Pyx_ParseOptionalKeywords(
    PyObject *kwds,
    PyObject **argnames[],
    PyObject *kwds2,
    PyObject *values[],
    Py_ssize_t num_pos_args,
    const char* function_name)
{
    PyObject *key = 0, *value = 0;
    Py_ssize_t pos = 0;
    PyObject*** name;
    PyObject*** first_kw_arg = argnames + num_pos_args;
    while (PyDict_Next(kwds, &pos, &key, &value)) {
        name = first_kw_arg;
        while (*name && (**name != key)) name++;
        if (*name) {
            values[name-argnames] = value;
            continue;
        }
        name = first_kw_arg;
        #if PY_MAJOR_VERSION < 3
        if (likely(PyString_CheckExact(key)) || likely(PyString_Check(key))) {
            while (*name) {
                if ((CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**name) == PyString_GET_SIZE(key))
                        && _PyString_Eq(**name, key)) {
                    values[name-argnames] = value;
                    break;
                }
                name++;
            }
            if (*name) continue;
            else {
                PyObject*** argname = argnames;
                while (argname != first_kw_arg) {
                    if ((**argname == key) || (
                            (CYTHON_COMPILING_IN_PYPY || PyString_GET_SIZE(**argname) == PyString_GET_SIZE(key))
                             && _PyString_Eq(**argname, key))) {
                        goto arg_passed_twice;
                    }
                    argname++;
                }
            }
        } else
        #endif
        if (likely(PyUnicode_Check(key))) {
            while (*name) {
                int cmp = (**name == key) ? 0 :
                #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3
                    (PyUnicode_GET_SIZE(**name) != PyUnicode_GET_SIZE(key)) ? 1 :
                #endif
                    PyUnicode_Compare(**name, key);
                if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad;
                if (cmp == 0) {
                    values[name-argnames] = value;
                    break;
                }
                name++;
            }
            if (*name) continue;
            else {
                PyObject*** argname = argnames;
                while (argname != first_kw_arg) {
                    int cmp = (**argname == key) ? 0 :
                    #if !CYTHON_COMPILING_IN_PYPY && PY_MAJOR_VERSION >= 3
                        (PyUnicode_GET_SIZE(**argname) != PyUnicode_GET_SIZE(key)) ? 1 :
                    #endif
                        PyUnicode_Compare(**argname, key);
                    if (cmp < 0 && unlikely(PyErr_Occurred())) goto bad;
                    if (cmp == 0) goto arg_passed_twice;
                    argname++;
                }
            }
        } else
            goto invalid_keyword_type;
        if (kwds2) {
            if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad;
        } else {
            goto invalid_keyword;
        }
    }
    return 0;
arg_passed_twice:
    __Pyx_RaiseDoubleKeywordsError(function_name, key);
    goto bad;
invalid_keyword_type:
    PyErr_Format(PyExc_TypeError,
        "%.200s() keywords must be strings", function_name);
    goto bad;
invalid_keyword:
    PyErr_Format(PyExc_TypeError,
    #if PY_MAJOR_VERSION < 3
        "%.200s() got an unexpected keyword argument '%.200s'",
        function_name, PyString_AsString(key));
    #else
        "%s() got an unexpected keyword argument '%U'",
        function_name, key);
    #endif
bad:
    return -1;
}

/* ArgTypeTest */
static int __Pyx__ArgTypeTest(PyObject *obj, PyTypeObject *type, const char *name, int exact)
{
    if (unlikely(!type)) {
        PyErr_SetString(PyExc_SystemError, "Missing type object");
        return 0;
    }
    else if (exact) {
        #if PY_MAJOR_VERSION == 2
        if ((type == &PyBaseString_Type) && likely(__Pyx_PyBaseString_CheckExact(obj))) return 1;
        #endif
    }
    else {
        if (likely(__Pyx_TypeCheck(obj, type))) return 1;
    }
    PyErr_Format(PyExc_TypeError,
        "Argument '%.200s' has incorrect type (expected %.200s, got %.200s)",
        name, type->tp_name, Py_TYPE(obj)->tp_name);
    return 0;
}

/* IsLittleEndian */
static CYTHON_INLINE int __Pyx_Is_Little_Endian(void)
{
  union {
    uint32_t u32;
    uint8_t u8[4];
  } S;
  S.u32 = 0x01020304;
  return S.u8[0] == 4;
}

/* BufferFormatCheck */
static void __Pyx_BufFmt_Init(__Pyx_BufFmt_Context* ctx,
                              __Pyx_BufFmt_StackElem* stack,
                              __Pyx_TypeInfo* type) {
  stack[0].field = &ctx->root;
  stack[0].parent_offset = 0;
  ctx->root.type = type;
  ctx->root.name = "buffer dtype";
  ctx->root.offset = 0;
  ctx->head = stack;
  ctx->head->field = &ctx->root;
  ctx->fmt_offset = 0;
  ctx->head->parent_offset = 0;
  ctx->new_packmode = '@';
  ctx->enc_packmode = '@';
  ctx->new_count = 1;
  ctx->enc_count = 0;
  ctx->enc_type = 0;
  ctx->is_complex = 0;
  ctx->is_valid_array = 0;
  ctx->struct_alignment = 0;
  while (type->typegroup == 'S') {
    ++ctx->head;
    ctx->head->field = type->fields;
    ctx->head->parent_offset = 0;
    type = type->fields->type;
  }
}
static int __Pyx_BufFmt_ParseNumber(const char** ts) {
    int count;
    const char* t = *ts;
    if (*t < '0' || *t > '9') {
      return -1;
    } else {
        count = *t++ - '0';
        while (*t >= '0' && *t < '9') {
            count *= 10;
            count += *t++ - '0';
        }
    }
    *ts = t;
    return count;
}
static int __Pyx_BufFmt_ExpectNumber(const char **ts) {
    int number = __Pyx_BufFmt_ParseNumber(ts);
    if (number == -1)
        PyErr_Format(PyExc_ValueError,\
                     "Does not understand character buffer dtype format string ('%c')", **ts);
    return number;
}
static void __Pyx_BufFmt_RaiseUnexpectedChar(char ch) {
  PyErr_Format(PyExc_ValueError,
               "Unexpected format string character: '%c'", ch);
}
static const char* __Pyx_BufFmt_DescribeTypeChar(char ch, int is_complex) {
  switch (ch) {
    case 'c': return "'char'";
    case 'b': return "'signed char'";
    case 'B': return "'unsigned char'";
    case 'h': return "'short'";
    case 'H': return "'unsigned short'";
    case 'i': return "'int'";
    case 'I': return "'unsigned int'";
    case 'l': return "'long'";
    case 'L': return "'unsigned long'";
    case 'q': return "'long long'";
    case 'Q': return "'unsigned long long'";
    case 'f': return (is_complex ? "'complex float'" : "'float'");
    case 'd': return (is_complex ? "'complex double'" : "'double'");
    case 'g': return (is_complex ? "'complex long double'" : "'long double'");
    case 'T': return "a struct";
    case 'O': return "Python object";
    case 'P': return "a pointer";
    case 's': case 'p': return "a string";
    case 0: return "end";
    default: return "unparseable format string";
  }
}
static size_t __Pyx_BufFmt_TypeCharToStandardSize(char ch, int is_complex) {
  switch (ch) {
    case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1;
    case 'h': case 'H': return 2;
    case 'i': case 'I': case 'l': case 'L': return 4;
    case 'q': case 'Q': return 8;
    case 'f': return (is_complex ? 8 : 4);
    case 'd': return (is_complex ? 16 : 8);
    case 'g': {
      PyErr_SetString(PyExc_ValueError, "Python does not define a standard format string size for long double ('g')..");
      return 0;
    }
    case 'O': case 'P': return sizeof(void*);
    default:
      __Pyx_BufFmt_RaiseUnexpectedChar(ch);
      return 0;
    }
}
static size_t __Pyx_BufFmt_TypeCharToNativeSize(char ch, int is_complex) {
  switch (ch) {
    case 'c': case 'b': case 'B': case 's': case 'p': return 1;
    case 'h': case 'H': return sizeof(short);
    case 'i': case 'I': return sizeof(int);
    case 'l': case 'L': return sizeof(long);
    #ifdef HAVE_LONG_LONG
    case 'q': case 'Q': return sizeof(PY_LONG_LONG);
    #endif
    case 'f': return sizeof(float) * (is_complex ? 2 : 1);
    case 'd': return sizeof(double) * (is_complex ? 2 : 1);
    case 'g': return sizeof(long double) * (is_complex ? 2 : 1);
    case 'O': case 'P': return sizeof(void*);
    default: {
      __Pyx_BufFmt_RaiseUnexpectedChar(ch);
      return 0;
    }
  }
}
typedef struct { char c; short x; } __Pyx_st_short;
typedef struct { char c; int x; } __Pyx_st_int;
typedef struct { char c; long x; } __Pyx_st_long;
typedef struct { char c; float x; } __Pyx_st_float;
typedef struct { char c; double x; } __Pyx_st_double;
typedef struct { char c; long double x; } __Pyx_st_longdouble;
typedef struct { char c; void *x; } __Pyx_st_void_p;
#ifdef HAVE_LONG_LONG
typedef struct { char c; PY_LONG_LONG x; } __Pyx_st_longlong;
#endif
static size_t __Pyx_BufFmt_TypeCharToAlignment(char ch, CYTHON_UNUSED int is_complex) {
  switch (ch) {
    case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1;
    case 'h': case 'H': return sizeof(__Pyx_st_short) - sizeof(short);
    case 'i': case 'I': return sizeof(__Pyx_st_int) - sizeof(int);
    case 'l': case 'L': return sizeof(__Pyx_st_long) - sizeof(long);
#ifdef HAVE_LONG_LONG
    case 'q': case 'Q': return sizeof(__Pyx_st_longlong) - sizeof(PY_LONG_LONG);
#endif
    case 'f': return sizeof(__Pyx_st_float) - sizeof(float);
    case 'd': return sizeof(__Pyx_st_double) - sizeof(double);
    case 'g': return sizeof(__Pyx_st_longdouble) - sizeof(long double);
    case 'P': case 'O': return sizeof(__Pyx_st_void_p) - sizeof(void*);
    default:
      __Pyx_BufFmt_RaiseUnexpectedChar(ch);
      return 0;
    }
}
/* These are for computing the padding at the end of the struct to align
   on the first member of the struct. This will probably the same as above,
   but we don't have any guarantees.
 */
typedef struct { short x; char c; } __Pyx_pad_short;
typedef struct { int x; char c; } __Pyx_pad_int;
typedef struct { long x; char c; } __Pyx_pad_long;
typedef struct { float x; char c; } __Pyx_pad_float;
typedef struct { double x; char c; } __Pyx_pad_double;
typedef struct { long double x; char c; } __Pyx_pad_longdouble;
typedef struct { void *x; char c; } __Pyx_pad_void_p;
#ifdef HAVE_LONG_LONG
typedef struct { PY_LONG_LONG x; char c; } __Pyx_pad_longlong;
#endif
static size_t __Pyx_BufFmt_TypeCharToPadding(char ch, CYTHON_UNUSED int is_complex) {
  switch (ch) {
    case '?': case 'c': case 'b': case 'B': case 's': case 'p': return 1;
    case 'h': case 'H': return sizeof(__Pyx_pad_short) - sizeof(short);
    case 'i': case 'I': return sizeof(__Pyx_pad_int) - sizeof(int);
    case 'l': case 'L': return sizeof(__Pyx_pad_long) - sizeof(long);
#ifdef HAVE_LONG_LONG
    case 'q': case 'Q': return sizeof(__Pyx_pad_longlong) - sizeof(PY_LONG_LONG);
#endif
    case 'f': return sizeof(__Pyx_pad_float) - sizeof(float);
    case 'd': return sizeof(__Pyx_pad_double) - sizeof(double);
    case 'g': return sizeof(__Pyx_pad_longdouble) - sizeof(long double);
    case 'P': case 'O': return sizeof(__Pyx_pad_void_p) - sizeof(void*);
    default:
      __Pyx_BufFmt_RaiseUnexpectedChar(ch);
      return 0;
    }
}
static char __Pyx_BufFmt_TypeCharToGroup(char ch, int is_complex) {
  switch (ch) {
    case 'c':
        return 'H';
    case 'b': case 'h': case 'i':
    case 'l': case 'q': case 's': case 'p':
        return 'I';
    case 'B': case 'H': case 'I': case 'L': case 'Q':
        return 'U';
    case 'f': case 'd': case 'g':
        return (is_complex ? 'C' : 'R');
    case 'O':
        return 'O';
    case 'P':
        return 'P';
    default: {
      __Pyx_BufFmt_RaiseUnexpectedChar(ch);
      return 0;
    }
  }
}
static void __Pyx_BufFmt_RaiseExpected(__Pyx_BufFmt_Context* ctx) {
  if (ctx->head == NULL || ctx->head->field == &ctx->root) {
    const char* expected;
    const char* quote;
    if (ctx->head == NULL) {
      expected = "end";
      quote = "";
    } else {
      expected = ctx->head->field->type->name;
      quote = "'";
    }
    PyErr_Format(PyExc_ValueError,
                 "Buffer dtype mismatch, expected %s%s%s but got %s",
                 quote, expected, quote,
                 __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex));
  } else {
    __Pyx_StructField* field = ctx->head->field;
    __Pyx_StructField* parent = (ctx->head - 1)->field;
    PyErr_Format(PyExc_ValueError,
                 "Buffer dtype mismatch, expected '%s' but got %s in '%s.%s'",
                 field->type->name, __Pyx_BufFmt_DescribeTypeChar(ctx->enc_type, ctx->is_complex),
                 parent->type->name, field->name);
  }
}
static int __Pyx_BufFmt_ProcessTypeChunk(__Pyx_BufFmt_Context* ctx) {
  char group;
  size_t size, offset, arraysize = 1;
  if (ctx->enc_type == 0) return 0;
  if (ctx->head->field->type->arraysize[0]) {
    int i, ndim = 0;
    if (ctx->enc_type == 's' || ctx->enc_type == 'p') {
        ctx->is_valid_array = ctx->head->field->type->ndim == 1;
        ndim = 1;
        if (ctx->enc_count != ctx->head->field->type->arraysize[0]) {
            PyErr_Format(PyExc_ValueError,
                         "Expected a dimension of size %zu, got %zu",
                         ctx->head->field->type->arraysize[0], ctx->enc_count);
            return -1;
        }
    }
    if (!ctx->is_valid_array) {
      PyErr_Format(PyExc_ValueError, "Expected %d dimensions, got %d",
                   ctx->head->field->type->ndim, ndim);
      return -1;
    }
    for (i = 0; i < ctx->head->field->type->ndim; i++) {
      arraysize *= ctx->head->field->type->arraysize[i];
    }
    ctx->is_valid_array = 0;
    ctx->enc_count = 1;
  }
  group = __Pyx_BufFmt_TypeCharToGroup(ctx->enc_type, ctx->is_complex);
  do {
    __Pyx_StructField* field = ctx->head->field;
    __Pyx_TypeInfo* type = field->type;
    if (ctx->enc_packmode == '@' || ctx->enc_packmode == '^') {
      size = __Pyx_BufFmt_TypeCharToNativeSize(ctx->enc_type, ctx->is_complex);
    } else {
      size = __Pyx_BufFmt_TypeCharToStandardSize(ctx->enc_type, ctx->is_complex);
    }
    if (ctx->enc_packmode == '@') {
      size_t align_at = __Pyx_BufFmt_TypeCharToAlignment(ctx->enc_type, ctx->is_complex);
      size_t align_mod_offset;
      if (align_at == 0) return -1;
      align_mod_offset = ctx->fmt_offset % align_at;
      if (align_mod_offset > 0) ctx->fmt_offset += align_at - align_mod_offset;
      if (ctx->struct_alignment == 0)
          ctx->struct_alignment = __Pyx_BufFmt_TypeCharToPadding(ctx->enc_type,
                                                                 ctx->is_complex);
    }
    if (type->size != size || type->typegroup != group) {
      if (type->typegroup == 'C' && type->fields != NULL) {
        size_t parent_offset = ctx->head->parent_offset + field->offset;
        ++ctx->head;
        ctx->head->field = type->fields;
        ctx->head->parent_offset = parent_offset;
        continue;
      }
      if ((type->typegroup == 'H' || group == 'H') && type->size == size) {
      } else {
          __Pyx_BufFmt_RaiseExpected(ctx);
          return -1;
      }
    }
    offset = ctx->head->parent_offset + field->offset;
    if (ctx->fmt_offset != offset) {
      PyErr_Format(PyExc_ValueError,
                   "Buffer dtype mismatch; next field is at offset %" CYTHON_FORMAT_SSIZE_T "d but %" CYTHON_FORMAT_SSIZE_T "d expected",
                   (Py_ssize_t)ctx->fmt_offset, (Py_ssize_t)offset);
      return -1;
    }
    ctx->fmt_offset += size;
    if (arraysize)
      ctx->fmt_offset += (arraysize - 1) * size;
    --ctx->enc_count;
    while (1) {
      if (field == &ctx->root) {
        ctx->head = NULL;
        if (ctx->enc_count != 0) {
          __Pyx_BufFmt_RaiseExpected(ctx);
          return -1;
        }
        break;
      }
      ctx->head->field = ++field;
      if (field->type == NULL) {
        --ctx->head;
        field = ctx->head->field;
        continue;
      } else if (field->type->typegroup == 'S') {
        size_t parent_offset = ctx->head->parent_offset + field->offset;
        if (field->type->fields->type == NULL) continue;
        field = field->type->fields;
        ++ctx->head;
        ctx->head->field = field;
        ctx->head->parent_offset = parent_offset;
        break;
      } else {
        break;
      }
    }
  } while (ctx->enc_count);
  ctx->enc_type = 0;
  ctx->is_complex = 0;
  return 0;
}
static PyObject *
__pyx_buffmt_parse_array(__Pyx_BufFmt_Context* ctx, const char** tsp)
{
    const char *ts = *tsp;
    int i = 0, number;
    int ndim = ctx->head->field->type->ndim;
;
    ++ts;
    if (ctx->new_count != 1) {
        PyErr_SetString(PyExc_ValueError,
                        "Cannot handle repeated arrays in format string");
        return NULL;
    }
    if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
    while (*ts && *ts != ')') {
        switch (*ts) {
            case ' ': case '\f': case '\r': case '\n': case '\t': case '\v':  continue;
            default:  break;
        }
        number = __Pyx_BufFmt_ExpectNumber(&ts);
        if (number == -1) return NULL;
        if (i < ndim && (size_t) number != ctx->head->field->type->arraysize[i])
            return PyErr_Format(PyExc_ValueError,
                        "Expected a dimension of size %zu, got %d",
                        ctx->head->field->type->arraysize[i], number);
        if (*ts != ',' && *ts != ')')
            return PyErr_Format(PyExc_ValueError,
                                "Expected a comma in format string, got '%c'", *ts);
        if (*ts == ',') ts++;
        i++;
    }
    if (i != ndim)
        return PyErr_Format(PyExc_ValueError, "Expected %d dimension(s), got %d",
                            ctx->head->field->type->ndim, i);
    if (!*ts) {
        PyErr_SetString(PyExc_ValueError,
                        "Unexpected end of format string, expected ')'");
        return NULL;
    }
    ctx->is_valid_array = 1;
    ctx->new_count = 1;
    *tsp = ++ts;
    return Py_None;
}
static const char* __Pyx_BufFmt_CheckString(__Pyx_BufFmt_Context* ctx, const char* ts) {
  int got_Z = 0;
  while (1) {
    switch(*ts) {
      case 0:
        if (ctx->enc_type != 0 && ctx->head == NULL) {
          __Pyx_BufFmt_RaiseExpected(ctx);
          return NULL;
        }
        if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
        if (ctx->head != NULL) {
          __Pyx_BufFmt_RaiseExpected(ctx);
          return NULL;
        }
        return ts;
      case ' ':
      case '\r':
      case '\n':
        ++ts;
        break;
      case '<':
        if (!__Pyx_Is_Little_Endian()) {
          PyErr_SetString(PyExc_ValueError, "Little-endian buffer not supported on big-endian compiler");
          return NULL;
        }
        ctx->new_packmode = '=';
        ++ts;
        break;
      case '>':
      case '!':
        if (__Pyx_Is_Little_Endian()) {
          PyErr_SetString(PyExc_ValueError, "Big-endian buffer not supported on little-endian compiler");
          return NULL;
        }
        ctx->new_packmode = '=';
        ++ts;
        break;
      case '=':
      case '@':
      case '^':
        ctx->new_packmode = *ts++;
        break;
      case 'T':
        {
          const char* ts_after_sub;
          size_t i, struct_count = ctx->new_count;
          size_t struct_alignment = ctx->struct_alignment;
          ctx->new_count = 1;
          ++ts;
          if (*ts != '{') {
            PyErr_SetString(PyExc_ValueError, "Buffer acquisition: Expected '{' after 'T'");
            return NULL;
          }
          if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
          ctx->enc_type = 0;
          ctx->enc_count = 0;
          ctx->struct_alignment = 0;
          ++ts;
          ts_after_sub = ts;
          for (i = 0; i != struct_count; ++i) {
            ts_after_sub = __Pyx_BufFmt_CheckString(ctx, ts);
            if (!ts_after_sub) return NULL;
          }
          ts = ts_after_sub;
          if (struct_alignment) ctx->struct_alignment = struct_alignment;
        }
        break;
      case '}':
        {
          size_t alignment = ctx->struct_alignment;
          ++ts;
          if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
          ctx->enc_type = 0;
          if (alignment && ctx->fmt_offset % alignment) {
            ctx->fmt_offset += alignment - (ctx->fmt_offset % alignment);
          }
        }
        return ts;
      case 'x':
        if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
        ctx->fmt_offset += ctx->new_count;
        ctx->new_count = 1;
        ctx->enc_count = 0;
        ctx->enc_type = 0;
        ctx->enc_packmode = ctx->new_packmode;
        ++ts;
        break;
      case 'Z':
        got_Z = 1;
        ++ts;
        if (*ts != 'f' && *ts != 'd' && *ts != 'g') {
          __Pyx_BufFmt_RaiseUnexpectedChar('Z');
          return NULL;
        }
        CYTHON_FALLTHROUGH;
      case 'c': case 'b': case 'B': case 'h': case 'H': case 'i': case 'I':
      case 'l': case 'L': case 'q': case 'Q':
      case 'f': case 'd': case 'g':
      case 'O': case 'p':
        if (ctx->enc_type == *ts && got_Z == ctx->is_complex &&
            ctx->enc_packmode == ctx->new_packmode) {
          ctx->enc_count += ctx->new_count;
          ctx->new_count = 1;
          got_Z = 0;
          ++ts;
          break;
        }
        CYTHON_FALLTHROUGH;
      case 's':
        if (__Pyx_BufFmt_ProcessTypeChunk(ctx) == -1) return NULL;
        ctx->enc_count = ctx->new_count;
        ctx->enc_packmode = ctx->new_packmode;
        ctx->enc_type = *ts;
        ctx->is_complex = got_Z;
        ++ts;
        ctx->new_count = 1;
        got_Z = 0;
        break;
      case ':':
        ++ts;
        while(*ts != ':') ++ts;
        ++ts;
        break;
      case '(':
        if (!__pyx_buffmt_parse_array(ctx, &ts)) return NULL;
        break;
      default:
        {
          int number = __Pyx_BufFmt_ExpectNumber(&ts);
          if (number == -1) return NULL;
          ctx->new_count = (size_t)number;
        }
    }
  }
}

/* BufferGetAndValidate */
  static CYTHON_INLINE void __Pyx_SafeReleaseBuffer(Py_buffer* info) {
  if (unlikely(info->buf == NULL)) return;
  if (info->suboffsets == __Pyx_minusones) info->suboffsets = NULL;
  __Pyx_ReleaseBuffer(info);
}
static void __Pyx_ZeroBuffer(Py_buffer* buf) {
  buf->buf = NULL;
  buf->obj = NULL;
  buf->strides = __Pyx_zeros;
  buf->shape = __Pyx_zeros;
  buf->suboffsets = __Pyx_minusones;
}
static int __Pyx__GetBufferAndValidate(
        Py_buffer* buf, PyObject* obj,  __Pyx_TypeInfo* dtype, int flags,
        int nd, int cast, __Pyx_BufFmt_StackElem* stack)
{
  buf->buf = NULL;
  if (unlikely(__Pyx_GetBuffer(obj, buf, flags) == -1)) {
    __Pyx_ZeroBuffer(buf);
    return -1;
  }
  if (unlikely(buf->ndim != nd)) {
    PyErr_Format(PyExc_ValueError,
                 "Buffer has wrong number of dimensions (expected %d, got %d)",
                 nd, buf->ndim);
    goto fail;
  }
  if (!cast) {
    __Pyx_BufFmt_Context ctx;
    __Pyx_BufFmt_Init(&ctx, stack, dtype);
    if (!__Pyx_BufFmt_CheckString(&ctx, buf->format)) goto fail;
  }
  if (unlikely((unsigned)buf->itemsize != dtype->size)) {
    PyErr_Format(PyExc_ValueError,
      "Item size of buffer (%" CYTHON_FORMAT_SSIZE_T "d byte%s) does not match size of '%s' (%" CYTHON_FORMAT_SSIZE_T "d byte%s)",
      buf->itemsize, (buf->itemsize > 1) ? "s" : "",
      dtype->name, (Py_ssize_t)dtype->size, (dtype->size > 1) ? "s" : "");
    goto fail;
  }
  if (buf->suboffsets == NULL) buf->suboffsets = __Pyx_minusones;
  return 0;
fail:;
  __Pyx_SafeReleaseBuffer(buf);
  return -1;
}

/* PyObjectGetAttrStr */
  #if CYTHON_USE_TYPE_SLOTS
static CYTHON_INLINE PyObject* __Pyx_PyObject_GetAttrStr(PyObject* obj, PyObject* attr_name) {
    PyTypeObject* tp = Py_TYPE(obj);
    if (likely(tp->tp_getattro))
        return tp->tp_getattro(obj, attr_name);
#if PY_MAJOR_VERSION < 3
    if (likely(tp->tp_getattr))
        return tp->tp_getattr(obj, PyString_AS_STRING(attr_name));
#endif
    return PyObject_GetAttr(obj, attr_name);
}
#endif

/* GetBuiltinName */
  static PyObject *__Pyx_GetBuiltinName(PyObject *name) {
    PyObject* result = __Pyx_PyObject_GetAttrStr(__pyx_b, name);
    if (unlikely(!result)) {
        PyErr_Format(PyExc_NameError,
#if PY_MAJOR_VERSION >= 3
            "name '%U' is not defined", name);
#else
            "name '%.200s' is not defined", PyString_AS_STRING(name));
#endif
    }
    return result;
}

/* GetModuleGlobalName */
  static CYTHON_INLINE PyObject *__Pyx_GetModuleGlobalName(PyObject *name) {
    PyObject *result;
#if !CYTHON_AVOID_BORROWED_REFS
#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x030500A1
    result = _PyDict_GetItem_KnownHash(__pyx_d, name, ((PyASCIIObject *) name)->hash);
    if (likely(result)) {
        Py_INCREF(result);
    } else if (unlikely(PyErr_Occurred())) {
        result = NULL;
    } else {
#else
    result = PyDict_GetItem(__pyx_d, name);
    if (likely(result)) {
        Py_INCREF(result);
    } else {
#endif
#else
    result = PyObject_GetItem(__pyx_d, name);
    if (!result) {
        PyErr_Clear();
#endif
        result = __Pyx_GetBuiltinName(name);
    }
    return result;
}

/* PyObjectCall */
      #if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_Call(PyObject *func, PyObject *arg, PyObject *kw) {
    PyObject *result;
    ternaryfunc call = func->ob_type->tp_call;
    if (unlikely(!call))
        return PyObject_Call(func, arg, kw);
    if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
        return NULL;
    result = (*call)(func, arg, kw);
    Py_LeaveRecursiveCall();
    if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
        PyErr_SetString(
            PyExc_SystemError,
            "NULL result without error in PyObject_Call");
    }
    return result;
}
#endif

/* ExtTypeTest */
      static CYTHON_INLINE int __Pyx_TypeTest(PyObject *obj, PyTypeObject *type) {
    if (unlikely(!type)) {
        PyErr_SetString(PyExc_SystemError, "Missing type object");
        return 0;
    }
    if (likely(__Pyx_TypeCheck(obj, type)))
        return 1;
    PyErr_Format(PyExc_TypeError, "Cannot convert %.200s to %.200s",
                 Py_TYPE(obj)->tp_name, type->tp_name);
    return 0;
}

/* GetItemInt */
      static PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {
    PyObject *r;
    if (!j) return NULL;
    r = PyObject_GetItem(o, j);
    Py_DECREF(j);
    return r;
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i,
                                                              CYTHON_NCP_UNUSED int wraparound,
                                                              CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    Py_ssize_t wrapped_i = i;
    if (wraparound & unlikely(i < 0)) {
        wrapped_i += PyList_GET_SIZE(o);
    }
    if ((!boundscheck) || likely((0 <= wrapped_i) & (wrapped_i < PyList_GET_SIZE(o)))) {
        PyObject *r = PyList_GET_ITEM(o, wrapped_i);
        Py_INCREF(r);
        return r;
    }
    return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
#else
    return PySequence_GetItem(o, i);
#endif
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i,
                                                              CYTHON_NCP_UNUSED int wraparound,
                                                              CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS
    Py_ssize_t wrapped_i = i;
    if (wraparound & unlikely(i < 0)) {
        wrapped_i += PyTuple_GET_SIZE(o);
    }
    if ((!boundscheck) || likely((0 <= wrapped_i) & (wrapped_i < PyTuple_GET_SIZE(o)))) {
        PyObject *r = PyTuple_GET_ITEM(o, wrapped_i);
        Py_INCREF(r);
        return r;
    }
    return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
#else
    return PySequence_GetItem(o, i);
#endif
}
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i, int is_list,
                                                     CYTHON_NCP_UNUSED int wraparound,
                                                     CYTHON_NCP_UNUSED int boundscheck) {
#if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS && CYTHON_USE_TYPE_SLOTS
    if (is_list || PyList_CheckExact(o)) {
        Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyList_GET_SIZE(o);
        if ((!boundscheck) || (likely((n >= 0) & (n < PyList_GET_SIZE(o))))) {
            PyObject *r = PyList_GET_ITEM(o, n);
            Py_INCREF(r);
            return r;
        }
    }
    else if (PyTuple_CheckExact(o)) {
        Py_ssize_t n = ((!wraparound) | likely(i >= 0)) ? i : i + PyTuple_GET_SIZE(o);
        if ((!boundscheck) || likely((n >= 0) & (n < PyTuple_GET_SIZE(o)))) {
            PyObject *r = PyTuple_GET_ITEM(o, n);
            Py_INCREF(r);
            return r;
        }
    } else {
        PySequenceMethods *m = Py_TYPE(o)->tp_as_sequence;
        if (likely(m && m->sq_item)) {
            if (wraparound && unlikely(i < 0) && likely(m->sq_length)) {
                Py_ssize_t l = m->sq_length(o);
                if (likely(l >= 0)) {
                    i += l;
                } else {
                    if (!PyErr_ExceptionMatches(PyExc_OverflowError))
                        return NULL;
                    PyErr_Clear();
                }
            }
            return m->sq_item(o, i);
        }
    }
#else
    if (is_list || PySequence_Check(o)) {
        return PySequence_GetItem(o, i);
    }
#endif
    return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
}

/* ObjectGetItem */
      #if CYTHON_USE_TYPE_SLOTS
static PyObject *__Pyx_PyObject_GetIndex(PyObject *obj, PyObject* index) {
    PyObject *runerr;
    Py_ssize_t key_value;
    PySequenceMethods *m = Py_TYPE(obj)->tp_as_sequence;
    if (unlikely(!(m && m->sq_item))) {
        PyErr_Format(PyExc_TypeError, "'%.200s' object is not subscriptable", Py_TYPE(obj)->tp_name);
        return NULL;
    }
    key_value = __Pyx_PyIndex_AsSsize_t(index);
    if (likely(key_value != -1 || !(runerr = PyErr_Occurred()))) {
        return __Pyx_GetItemInt_Fast(obj, key_value, 0, 1, 1);
    }
    if (PyErr_GivenExceptionMatches(runerr, PyExc_OverflowError)) {
        PyErr_Clear();
        PyErr_Format(PyExc_IndexError, "cannot fit '%.200s' into an index-sized integer", Py_TYPE(index)->tp_name);
    }
    return NULL;
}
static PyObject *__Pyx_PyObject_GetItem(PyObject *obj, PyObject* key) {
    PyMappingMethods *m = Py_TYPE(obj)->tp_as_mapping;
    if (likely(m && m->mp_subscript)) {
        return m->mp_subscript(obj, key);
    }
    return __Pyx_PyObject_GetIndex(obj, key);
}
#endif

/* PyCFunctionFastCall */
      #if CYTHON_FAST_PYCCALL
static CYTHON_INLINE PyObject * __Pyx_PyCFunction_FastCall(PyObject *func_obj, PyObject **args, Py_ssize_t nargs) {
    PyCFunctionObject *func = (PyCFunctionObject*)func_obj;
    PyCFunction meth = PyCFunction_GET_FUNCTION(func);
    PyObject *self = PyCFunction_GET_SELF(func);
    int flags = PyCFunction_GET_FLAGS(func);
    assert(PyCFunction_Check(func));
    assert(METH_FASTCALL == (flags & ~(METH_CLASS | METH_STATIC | METH_COEXIST | METH_KEYWORDS)));
    assert(nargs >= 0);
    assert(nargs == 0 || args != NULL);
    /* _PyCFunction_FastCallDict() must not be called with an exception set,
       because it may clear it (directly or indirectly) and so the
       caller loses its exception */
    assert(!PyErr_Occurred());
    if ((PY_VERSION_HEX < 0x030700A0) || unlikely(flags & METH_KEYWORDS)) {
        return (*((__Pyx_PyCFunctionFastWithKeywords)meth)) (self, args, nargs, NULL);
    } else {
        return (*((__Pyx_PyCFunctionFast)meth)) (self, args, nargs);
    }
}
#endif

/* PyFunctionFastCall */
      #if CYTHON_FAST_PYCALL
#include "frameobject.h"
static PyObject* __Pyx_PyFunction_FastCallNoKw(PyCodeObject *co, PyObject **args, Py_ssize_t na,
                                               PyObject *globals) {
    PyFrameObject *f;
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    PyObject **fastlocals;
    Py_ssize_t i;
    PyObject *result;
    assert(globals != NULL);
    /* XXX Perhaps we should create a specialized
       PyFrame_New() that doesn't take locals, but does
       take builtins without sanity checking them.
       */
    assert(tstate != NULL);
    f = PyFrame_New(tstate, co, globals, NULL);
    if (f == NULL) {
        return NULL;
    }
    fastlocals = f->f_localsplus;
    for (i = 0; i < na; i++) {
        Py_INCREF(*args);
        fastlocals[i] = *args++;
    }
    result = PyEval_EvalFrameEx(f,0);
    ++tstate->recursion_depth;
    Py_DECREF(f);
    --tstate->recursion_depth;
    return result;
}
#if 1 || PY_VERSION_HEX < 0x030600B1
static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args, int nargs, PyObject *kwargs) {
    PyCodeObject *co = (PyCodeObject *)PyFunction_GET_CODE(func);
    PyObject *globals = PyFunction_GET_GLOBALS(func);
    PyObject *argdefs = PyFunction_GET_DEFAULTS(func);
    PyObject *closure;
#if PY_MAJOR_VERSION >= 3
    PyObject *kwdefs;
#endif
    PyObject *kwtuple, **k;
    PyObject **d;
    Py_ssize_t nd;
    Py_ssize_t nk;
    PyObject *result;
    assert(kwargs == NULL || PyDict_Check(kwargs));
    nk = kwargs ? PyDict_Size(kwargs) : 0;
    if (Py_EnterRecursiveCall((char*)" while calling a Python object")) {
        return NULL;
    }
    if (
#if PY_MAJOR_VERSION >= 3
            co->co_kwonlyargcount == 0 &&
#endif
            likely(kwargs == NULL || nk == 0) &&
            co->co_flags == (CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE)) {
        if (argdefs == NULL && co->co_argcount == nargs) {
            result = __Pyx_PyFunction_FastCallNoKw(co, args, nargs, globals);
            goto done;
        }
        else if (nargs == 0 && argdefs != NULL
                 && co->co_argcount == Py_SIZE(argdefs)) {
            /* function called with no arguments, but all parameters have
               a default value: use default values as arguments .*/
            args = &PyTuple_GET_ITEM(argdefs, 0);
            result =__Pyx_PyFunction_FastCallNoKw(co, args, Py_SIZE(argdefs), globals);
            goto done;
        }
    }
    if (kwargs != NULL) {
        Py_ssize_t pos, i;
        kwtuple = PyTuple_New(2 * nk);
        if (kwtuple == NULL) {
            result = NULL;
            goto done;
        }
        k = &PyTuple_GET_ITEM(kwtuple, 0);
        pos = i = 0;
        while (PyDict_Next(kwargs, &pos, &k[i], &k[i+1])) {
            Py_INCREF(k[i]);
            Py_INCREF(k[i+1]);
            i += 2;
        }
        nk = i / 2;
    }
    else {
        kwtuple = NULL;
        k = NULL;
    }
    closure = PyFunction_GET_CLOSURE(func);
#if PY_MAJOR_VERSION >= 3
    kwdefs = PyFunction_GET_KW_DEFAULTS(func);
#endif
    if (argdefs != NULL) {
        d = &PyTuple_GET_ITEM(argdefs, 0);
        nd = Py_SIZE(argdefs);
    }
    else {
        d = NULL;
        nd = 0;
    }
#if PY_MAJOR_VERSION >= 3
    result = PyEval_EvalCodeEx((PyObject*)co, globals, (PyObject *)NULL,
                               args, nargs,
                               k, (int)nk,
                               d, (int)nd, kwdefs, closure);
#else
    result = PyEval_EvalCodeEx(co, globals, (PyObject *)NULL,
                               args, nargs,
                               k, (int)nk,
                               d, (int)nd, closure);
#endif
    Py_XDECREF(kwtuple);
done:
    Py_LeaveRecursiveCall();
    return result;
}
#endif
#endif

/* PyObjectCallMethO */
      #if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallMethO(PyObject *func, PyObject *arg) {
    PyObject *self, *result;
    PyCFunction cfunc;
    cfunc = PyCFunction_GET_FUNCTION(func);
    self = PyCFunction_GET_SELF(func);
    if (unlikely(Py_EnterRecursiveCall((char*)" while calling a Python object")))
        return NULL;
    result = cfunc(self, arg);
    Py_LeaveRecursiveCall();
    if (unlikely(!result) && unlikely(!PyErr_Occurred())) {
        PyErr_SetString(
            PyExc_SystemError,
            "NULL result without error in PyObject_Call");
    }
    return result;
}
#endif

/* PyObjectCallOneArg */
      #if CYTHON_COMPILING_IN_CPYTHON
static PyObject* __Pyx__PyObject_CallOneArg(PyObject *func, PyObject *arg) {
    PyObject *result;
    PyObject *args = PyTuple_New(1);
    if (unlikely(!args)) return NULL;
    Py_INCREF(arg);
    PyTuple_SET_ITEM(args, 0, arg);
    result = __Pyx_PyObject_Call(func, args, NULL);
    Py_DECREF(args);
    return result;
}
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
#if CYTHON_FAST_PYCALL
    if (PyFunction_Check(func)) {
        return __Pyx_PyFunction_FastCall(func, &arg, 1);
    }
#endif
    if (likely(PyCFunction_Check(func))) {
        if (likely(PyCFunction_GET_FLAGS(func) & METH_O)) {
            return __Pyx_PyObject_CallMethO(func, arg);
#if CYTHON_FAST_PYCCALL
        } else if (PyCFunction_GET_FLAGS(func) & METH_FASTCALL) {
            return __Pyx_PyCFunction_FastCall(func, &arg, 1);
#endif
        }
    }
    return __Pyx__PyObject_CallOneArg(func, arg);
}
#else
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallOneArg(PyObject *func, PyObject *arg) {
    PyObject *result;
    PyObject *args = PyTuple_Pack(1, arg);
    if (unlikely(!args)) return NULL;
    result = __Pyx_PyObject_Call(func, args, NULL);
    Py_DECREF(args);
    return result;
}
#endif

/* PyObjectCallNoArg */
      #if CYTHON_COMPILING_IN_CPYTHON
static CYTHON_INLINE PyObject* __Pyx_PyObject_CallNoArg(PyObject *func) {
#if CYTHON_FAST_PYCALL
    if (PyFunction_Check(func)) {
        return __Pyx_PyFunction_FastCall(func, NULL, 0);
    }
#endif
#ifdef __Pyx_CyFunction_USED
    if (likely(PyCFunction_Check(func) || __Pyx_TypeCheck(func, __pyx_CyFunctionType))) {
#else
    if (likely(PyCFunction_Check(func))) {
#endif
        if (likely(PyCFunction_GET_FLAGS(func) & METH_NOARGS)) {
            return __Pyx_PyObject_CallMethO(func, NULL);
        }
    }
    return __Pyx_PyObject_Call(func, __pyx_empty_tuple, NULL);
}
#endif

/* BufferIndexError */
        static void __Pyx_RaiseBufferIndexError(int axis) {
  PyErr_Format(PyExc_IndexError,
     "Out of bounds on buffer access (axis %d)", axis);
}

/* BufferFallbackError */
        static void __Pyx_RaiseBufferFallbackError(void) {
  PyErr_SetString(PyExc_ValueError,
     "Buffer acquisition failed on assignment; and then reacquiring the old buffer failed too!");
}

/* PyErrFetchRestore */
        #if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx_ErrRestoreInState(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    tmp_type = tstate->curexc_type;
    tmp_value = tstate->curexc_value;
    tmp_tb = tstate->curexc_traceback;
    tstate->curexc_type = type;
    tstate->curexc_value = value;
    tstate->curexc_traceback = tb;
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
}
static CYTHON_INLINE void __Pyx_ErrFetchInState(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
    *type = tstate->curexc_type;
    *value = tstate->curexc_value;
    *tb = tstate->curexc_traceback;
    tstate->curexc_type = 0;
    tstate->curexc_value = 0;
    tstate->curexc_traceback = 0;
}
#endif

/* RaiseException */
        #if PY_MAJOR_VERSION < 3
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb,
                        CYTHON_UNUSED PyObject *cause) {
    __Pyx_PyThreadState_declare
    Py_XINCREF(type);
    if (!value || value == Py_None)
        value = NULL;
    else
        Py_INCREF(value);
    if (!tb || tb == Py_None)
        tb = NULL;
    else {
        Py_INCREF(tb);
        if (!PyTraceBack_Check(tb)) {
            PyErr_SetString(PyExc_TypeError,
                "raise: arg 3 must be a traceback or None");
            goto raise_error;
        }
    }
    if (PyType_Check(type)) {
#if CYTHON_COMPILING_IN_PYPY
        if (!value) {
            Py_INCREF(Py_None);
            value = Py_None;
        }
#endif
        PyErr_NormalizeException(&type, &value, &tb);
    } else {
        if (value) {
            PyErr_SetString(PyExc_TypeError,
                "instance exception may not have a separate value");
            goto raise_error;
        }
        value = type;
        type = (PyObject*) Py_TYPE(type);
        Py_INCREF(type);
        if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) {
            PyErr_SetString(PyExc_TypeError,
                "raise: exception class must be a subclass of BaseException");
            goto raise_error;
        }
    }
    __Pyx_PyThreadState_assign
    __Pyx_ErrRestore(type, value, tb);
    return;
raise_error:
    Py_XDECREF(value);
    Py_XDECREF(type);
    Py_XDECREF(tb);
    return;
}
#else
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) {
    PyObject* owned_instance = NULL;
    if (tb == Py_None) {
        tb = 0;
    } else if (tb && !PyTraceBack_Check(tb)) {
        PyErr_SetString(PyExc_TypeError,
            "raise: arg 3 must be a traceback or None");
        goto bad;
    }
    if (value == Py_None)
        value = 0;
    if (PyExceptionInstance_Check(type)) {
        if (value) {
            PyErr_SetString(PyExc_TypeError,
                "instance exception may not have a separate value");
            goto bad;
        }
        value = type;
        type = (PyObject*) Py_TYPE(value);
    } else if (PyExceptionClass_Check(type)) {
        PyObject *instance_class = NULL;
        if (value && PyExceptionInstance_Check(value)) {
            instance_class = (PyObject*) Py_TYPE(value);
            if (instance_class != type) {
                int is_subclass = PyObject_IsSubclass(instance_class, type);
                if (!is_subclass) {
                    instance_class = NULL;
                } else if (unlikely(is_subclass == -1)) {
                    goto bad;
                } else {
                    type = instance_class;
                }
            }
        }
        if (!instance_class) {
            PyObject *args;
            if (!value)
                args = PyTuple_New(0);
            else if (PyTuple_Check(value)) {
                Py_INCREF(value);
                args = value;
            } else
                args = PyTuple_Pack(1, value);
            if (!args)
                goto bad;
            owned_instance = PyObject_Call(type, args, NULL);
            Py_DECREF(args);
            if (!owned_instance)
                goto bad;
            value = owned_instance;
            if (!PyExceptionInstance_Check(value)) {
                PyErr_Format(PyExc_TypeError,
                             "calling %R should have returned an instance of "
                             "BaseException, not %R",
                             type, Py_TYPE(value));
                goto bad;
            }
        }
    } else {
        PyErr_SetString(PyExc_TypeError,
            "raise: exception class must be a subclass of BaseException");
        goto bad;
    }
    if (cause) {
        PyObject *fixed_cause;
        if (cause == Py_None) {
            fixed_cause = NULL;
        } else if (PyExceptionClass_Check(cause)) {
            fixed_cause = PyObject_CallObject(cause, NULL);
            if (fixed_cause == NULL)
                goto bad;
        } else if (PyExceptionInstance_Check(cause)) {
            fixed_cause = cause;
            Py_INCREF(fixed_cause);
        } else {
            PyErr_SetString(PyExc_TypeError,
                            "exception causes must derive from "
                            "BaseException");
            goto bad;
        }
        PyException_SetCause(value, fixed_cause);
    }
    PyErr_SetObject(type, value);
    if (tb) {
#if CYTHON_COMPILING_IN_PYPY
        PyObject *tmp_type, *tmp_value, *tmp_tb;
        PyErr_Fetch(&tmp_type, &tmp_value, &tmp_tb);
        Py_INCREF(tb);
        PyErr_Restore(tmp_type, tmp_value, tb);
        Py_XDECREF(tmp_tb);
#else
        PyThreadState *tstate = __Pyx_PyThreadState_Current;
        PyObject* tmp_tb = tstate->curexc_traceback;
        if (tb != tmp_tb) {
            Py_INCREF(tb);
            tstate->curexc_traceback = tb;
            Py_XDECREF(tmp_tb);
        }
#endif
    }
bad:
    Py_XDECREF(owned_instance);
    return;
}
#endif

/* DictGetItem */
        #if PY_MAJOR_VERSION >= 3 && !CYTHON_COMPILING_IN_PYPY
static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) {
    PyObject *value;
    value = PyDict_GetItemWithError(d, key);
    if (unlikely(!value)) {
        if (!PyErr_Occurred()) {
            PyObject* args = PyTuple_Pack(1, key);
            if (likely(args))
                PyErr_SetObject(PyExc_KeyError, args);
            Py_XDECREF(args);
        }
        return NULL;
    }
    Py_INCREF(value);
    return value;
}
#endif

/* RaiseTooManyValuesToUnpack */
        static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) {
    PyErr_Format(PyExc_ValueError,
                 "too many values to unpack (expected %" CYTHON_FORMAT_SSIZE_T "d)", expected);
}

/* RaiseNeedMoreValuesToUnpack */
        static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) {
    PyErr_Format(PyExc_ValueError,
                 "need more than %" CYTHON_FORMAT_SSIZE_T "d value%.1s to unpack",
                 index, (index == 1) ? "" : "s");
}

/* RaiseNoneIterError */
        static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) {
    PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
}

/* SaveResetException */
        #if CYTHON_FAST_THREAD_STATE
static CYTHON_INLINE void __Pyx__ExceptionSave(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
    #if PY_VERSION_HEX >= 0x030700A2
    *type = tstate->exc_state.exc_type;
    *value = tstate->exc_state.exc_value;
    *tb = tstate->exc_state.exc_traceback;
    #else
    *type = tstate->exc_type;
    *value = tstate->exc_value;
    *tb = tstate->exc_traceback;
    #endif
    Py_XINCREF(*type);
    Py_XINCREF(*value);
    Py_XINCREF(*tb);
}
static CYTHON_INLINE void __Pyx__ExceptionReset(PyThreadState *tstate, PyObject *type, PyObject *value, PyObject *tb) {
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    #if PY_VERSION_HEX >= 0x030700A2
    tmp_type = tstate->exc_state.exc_type;
    tmp_value = tstate->exc_state.exc_value;
    tmp_tb = tstate->exc_state.exc_traceback;
    tstate->exc_state.exc_type = type;
    tstate->exc_state.exc_value = value;
    tstate->exc_state.exc_traceback = tb;
    #else
    tmp_type = tstate->exc_type;
    tmp_value = tstate->exc_value;
    tmp_tb = tstate->exc_traceback;
    tstate->exc_type = type;
    tstate->exc_value = value;
    tstate->exc_traceback = tb;
    #endif
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
}
#endif

/* PyErrExceptionMatches */
        #if CYTHON_FAST_THREAD_STATE
static int __Pyx_PyErr_ExceptionMatchesTuple(PyObject *exc_type, PyObject *tuple) {
    Py_ssize_t i, n;
    n = PyTuple_GET_SIZE(tuple);
#if PY_MAJOR_VERSION >= 3
    for (i=0; icurexc_type;
    if (exc_type == err) return 1;
    if (unlikely(!exc_type)) return 0;
    if (unlikely(PyTuple_Check(err)))
        return __Pyx_PyErr_ExceptionMatchesTuple(exc_type, err);
    return __Pyx_PyErr_GivenExceptionMatches(exc_type, err);
}
#endif

/* GetException */
        #if CYTHON_FAST_THREAD_STATE
static int __Pyx__GetException(PyThreadState *tstate, PyObject **type, PyObject **value, PyObject **tb) {
#else
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) {
#endif
    PyObject *local_type, *local_value, *local_tb;
#if CYTHON_FAST_THREAD_STATE
    PyObject *tmp_type, *tmp_value, *tmp_tb;
    local_type = tstate->curexc_type;
    local_value = tstate->curexc_value;
    local_tb = tstate->curexc_traceback;
    tstate->curexc_type = 0;
    tstate->curexc_value = 0;
    tstate->curexc_traceback = 0;
#else
    PyErr_Fetch(&local_type, &local_value, &local_tb);
#endif
    PyErr_NormalizeException(&local_type, &local_value, &local_tb);
#if CYTHON_FAST_THREAD_STATE
    if (unlikely(tstate->curexc_type))
#else
    if (unlikely(PyErr_Occurred()))
#endif
        goto bad;
    #if PY_MAJOR_VERSION >= 3
    if (local_tb) {
        if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0))
            goto bad;
    }
    #endif
    Py_XINCREF(local_tb);
    Py_XINCREF(local_type);
    Py_XINCREF(local_value);
    *type = local_type;
    *value = local_value;
    *tb = local_tb;
#if CYTHON_FAST_THREAD_STATE
    #if PY_VERSION_HEX >= 0x030700A2
    tmp_type = tstate->exc_state.exc_type;
    tmp_value = tstate->exc_state.exc_value;
    tmp_tb = tstate->exc_state.exc_traceback;
    tstate->exc_state.exc_type = local_type;
    tstate->exc_state.exc_value = local_value;
    tstate->exc_state.exc_traceback = local_tb;
    #else
    tmp_type = tstate->exc_type;
    tmp_value = tstate->exc_value;
    tmp_tb = tstate->exc_traceback;
    tstate->exc_type = local_type;
    tstate->exc_value = local_value;
    tstate->exc_traceback = local_tb;
    #endif
    Py_XDECREF(tmp_type);
    Py_XDECREF(tmp_value);
    Py_XDECREF(tmp_tb);
#else
    PyErr_SetExcInfo(local_type, local_value, local_tb);
#endif
    return 0;
bad:
    *type = 0;
    *value = 0;
    *tb = 0;
    Py_XDECREF(local_type);
    Py_XDECREF(local_value);
    Py_XDECREF(local_tb);
    return -1;
}

/* Import */
          static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, int level) {
    PyObject *empty_list = 0;
    PyObject *module = 0;
    PyObject *global_dict = 0;
    PyObject *empty_dict = 0;
    PyObject *list;
    #if PY_MAJOR_VERSION < 3
    PyObject *py_import;
    py_import = __Pyx_PyObject_GetAttrStr(__pyx_b, __pyx_n_s_import);
    if (!py_import)
        goto bad;
    #endif
    if (from_list)
        list = from_list;
    else {
        empty_list = PyList_New(0);
        if (!empty_list)
            goto bad;
        list = empty_list;
    }
    global_dict = PyModule_GetDict(__pyx_m);
    if (!global_dict)
        goto bad;
    empty_dict = PyDict_New();
    if (!empty_dict)
        goto bad;
    {
        #if PY_MAJOR_VERSION >= 3
        if (level == -1) {
            if (strchr(__Pyx_MODULE_NAME, '.')) {
                module = PyImport_ImportModuleLevelObject(
                    name, global_dict, empty_dict, list, 1);
                if (!module) {
                    if (!PyErr_ExceptionMatches(PyExc_ImportError))
                        goto bad;
                    PyErr_Clear();
                }
            }
            level = 0;
        }
        #endif
        if (!module) {
            #if PY_MAJOR_VERSION < 3
            PyObject *py_level = PyInt_FromLong(level);
            if (!py_level)
                goto bad;
            module = PyObject_CallFunctionObjArgs(py_import,
                name, global_dict, empty_dict, list, py_level, NULL);
            Py_DECREF(py_level);
            #else
            module = PyImport_ImportModuleLevelObject(
                name, global_dict, empty_dict, list, level);
            #endif
        }
    }
bad:
    #if PY_MAJOR_VERSION < 3
    Py_XDECREF(py_import);
    #endif
    Py_XDECREF(empty_list);
    Py_XDECREF(empty_dict);
    return module;
}

/* CLineInTraceback */
          #ifndef CYTHON_CLINE_IN_TRACEBACK
static int __Pyx_CLineForTraceback(CYTHON_UNUSED PyThreadState *tstate, int c_line) {
    PyObject *use_cline;
    PyObject *ptype, *pvalue, *ptraceback;
#if CYTHON_COMPILING_IN_CPYTHON
    PyObject **cython_runtime_dict;
#endif
    __Pyx_ErrFetchInState(tstate, &ptype, &pvalue, &ptraceback);
#if CYTHON_COMPILING_IN_CPYTHON
    cython_runtime_dict = _PyObject_GetDictPtr(__pyx_cython_runtime);
    if (likely(cython_runtime_dict)) {
      use_cline = __Pyx_PyDict_GetItemStr(*cython_runtime_dict, __pyx_n_s_cline_in_traceback);
    } else
#endif
    {
      PyObject *use_cline_obj = __Pyx_PyObject_GetAttrStr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback);
      if (use_cline_obj) {
        use_cline = PyObject_Not(use_cline_obj) ? Py_False : Py_True;
        Py_DECREF(use_cline_obj);
      } else {
        PyErr_Clear();
        use_cline = NULL;
      }
    }
    if (!use_cline) {
        c_line = 0;
        PyObject_SetAttr(__pyx_cython_runtime, __pyx_n_s_cline_in_traceback, Py_False);
    }
    else if (PyObject_Not(use_cline) != 0) {
        c_line = 0;
    }
    __Pyx_ErrRestoreInState(tstate, ptype, pvalue, ptraceback);
    return c_line;
}
#endif

/* CodeObjectCache */
          static int __pyx_bisect_code_objects(__Pyx_CodeObjectCacheEntry* entries, int count, int code_line) {
    int start = 0, mid = 0, end = count - 1;
    if (end >= 0 && code_line > entries[end].code_line) {
        return count;
    }
    while (start < end) {
        mid = start + (end - start) / 2;
        if (code_line < entries[mid].code_line) {
            end = mid;
        } else if (code_line > entries[mid].code_line) {
             start = mid + 1;
        } else {
            return mid;
        }
    }
    if (code_line <= entries[mid].code_line) {
        return mid;
    } else {
        return mid + 1;
    }
}
static PyCodeObject *__pyx_find_code_object(int code_line) {
    PyCodeObject* code_object;
    int pos;
    if (unlikely(!code_line) || unlikely(!__pyx_code_cache.entries)) {
        return NULL;
    }
    pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
    if (unlikely(pos >= __pyx_code_cache.count) || unlikely(__pyx_code_cache.entries[pos].code_line != code_line)) {
        return NULL;
    }
    code_object = __pyx_code_cache.entries[pos].code_object;
    Py_INCREF(code_object);
    return code_object;
}
static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
    int pos, i;
    __Pyx_CodeObjectCacheEntry* entries = __pyx_code_cache.entries;
    if (unlikely(!code_line)) {
        return;
    }
    if (unlikely(!entries)) {
        entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Malloc(64*sizeof(__Pyx_CodeObjectCacheEntry));
        if (likely(entries)) {
            __pyx_code_cache.entries = entries;
            __pyx_code_cache.max_count = 64;
            __pyx_code_cache.count = 1;
            entries[0].code_line = code_line;
            entries[0].code_object = code_object;
            Py_INCREF(code_object);
        }
        return;
    }
    pos = __pyx_bisect_code_objects(__pyx_code_cache.entries, __pyx_code_cache.count, code_line);
    if ((pos < __pyx_code_cache.count) && unlikely(__pyx_code_cache.entries[pos].code_line == code_line)) {
        PyCodeObject* tmp = entries[pos].code_object;
        entries[pos].code_object = code_object;
        Py_DECREF(tmp);
        return;
    }
    if (__pyx_code_cache.count == __pyx_code_cache.max_count) {
        int new_max = __pyx_code_cache.max_count + 64;
        entries = (__Pyx_CodeObjectCacheEntry*)PyMem_Realloc(
            __pyx_code_cache.entries, (size_t)new_max*sizeof(__Pyx_CodeObjectCacheEntry));
        if (unlikely(!entries)) {
            return;
        }
        __pyx_code_cache.entries = entries;
        __pyx_code_cache.max_count = new_max;
    }
    for (i=__pyx_code_cache.count; i>pos; i--) {
        entries[i] = entries[i-1];
    }
    entries[pos].code_line = code_line;
    entries[pos].code_object = code_object;
    __pyx_code_cache.count++;
    Py_INCREF(code_object);
}

/* AddTraceback */
          #include "compile.h"
#include "frameobject.h"
#include "traceback.h"
static PyCodeObject* __Pyx_CreateCodeObjectForTraceback(
            const char *funcname, int c_line,
            int py_line, const char *filename) {
    PyCodeObject *py_code = 0;
    PyObject *py_srcfile = 0;
    PyObject *py_funcname = 0;
    #if PY_MAJOR_VERSION < 3
    py_srcfile = PyString_FromString(filename);
    #else
    py_srcfile = PyUnicode_FromString(filename);
    #endif
    if (!py_srcfile) goto bad;
    if (c_line) {
        #if PY_MAJOR_VERSION < 3
        py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
        #else
        py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, c_line);
        #endif
    }
    else {
        #if PY_MAJOR_VERSION < 3
        py_funcname = PyString_FromString(funcname);
        #else
        py_funcname = PyUnicode_FromString(funcname);
        #endif
    }
    if (!py_funcname) goto bad;
    py_code = __Pyx_PyCode_New(
        0,
        0,
        0,
        0,
        0,
        __pyx_empty_bytes, /*PyObject *code,*/
        __pyx_empty_tuple, /*PyObject *consts,*/
        __pyx_empty_tuple, /*PyObject *names,*/
        __pyx_empty_tuple, /*PyObject *varnames,*/
        __pyx_empty_tuple, /*PyObject *freevars,*/
        __pyx_empty_tuple, /*PyObject *cellvars,*/
        py_srcfile,   /*PyObject *filename,*/
        py_funcname,  /*PyObject *name,*/
        py_line,
        __pyx_empty_bytes  /*PyObject *lnotab*/
    );
    Py_DECREF(py_srcfile);
    Py_DECREF(py_funcname);
    return py_code;
bad:
    Py_XDECREF(py_srcfile);
    Py_XDECREF(py_funcname);
    return NULL;
}
static void __Pyx_AddTraceback(const char *funcname, int c_line,
                               int py_line, const char *filename) {
    PyCodeObject *py_code = 0;
    PyFrameObject *py_frame = 0;
    PyThreadState *tstate = __Pyx_PyThreadState_Current;
    if (c_line) {
        c_line = __Pyx_CLineForTraceback(tstate, c_line);
    }
    py_code = __pyx_find_code_object(c_line ? -c_line : py_line);
    if (!py_code) {
        py_code = __Pyx_CreateCodeObjectForTraceback(
            funcname, c_line, py_line, filename);
        if (!py_code) goto bad;
        __pyx_insert_code_object(c_line ? -c_line : py_line, py_code);
    }
    py_frame = PyFrame_New(
        tstate,            /*PyThreadState *tstate,*/
        py_code,           /*PyCodeObject *code,*/
        __pyx_d,    /*PyObject *globals,*/
        0                  /*PyObject *locals*/
    );
    if (!py_frame) goto bad;
    __Pyx_PyFrame_SetLineNumber(py_frame, py_line);
    PyTraceBack_Here(py_frame);
bad:
    Py_XDECREF(py_code);
    Py_XDECREF(py_frame);
}

#if PY_MAJOR_VERSION < 3
static int __Pyx_GetBuffer(PyObject *obj, Py_buffer *view, int flags) {
    if (PyObject_CheckBuffer(obj)) return PyObject_GetBuffer(obj, view, flags);
        if (__Pyx_TypeCheck(obj, __pyx_ptype_5numpy_ndarray)) return __pyx_pw_5numpy_7ndarray_1__getbuffer__(obj, view, flags);
    PyErr_Format(PyExc_TypeError, "'%.200s' does not have the buffer interface", Py_TYPE(obj)->tp_name);
    return -1;
}
static void __Pyx_ReleaseBuffer(Py_buffer *view) {
    PyObject *obj = view->obj;
    if (!obj) return;
    if (PyObject_CheckBuffer(obj)) {
        PyBuffer_Release(view);
        return;
    }
    if ((0)) {}
        else if (__Pyx_TypeCheck(obj, __pyx_ptype_5numpy_ndarray)) __pyx_pw_5numpy_7ndarray_3__releasebuffer__(obj, view);
    view->obj = NULL;
    Py_DECREF(obj);
}
#endif


          /* CIntFromPyVerify */
          #define __PYX_VERIFY_RETURN_INT(target_type, func_type, func_value)\
    __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 0)
#define __PYX_VERIFY_RETURN_INT_EXC(target_type, func_type, func_value)\
    __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, 1)
#define __PYX__VERIFY_RETURN_INT(target_type, func_type, func_value, exc)\
    {\
        func_type value = func_value;\
        if (sizeof(target_type) < sizeof(func_type)) {\
            if (unlikely(value != (func_type) (target_type) value)) {\
                func_type zero = 0;\
                if (exc && unlikely(value == (func_type)-1 && PyErr_Occurred()))\
                    return (target_type) -1;\
                if (is_unsigned && unlikely(value < zero))\
                    goto raise_neg_overflow;\
                else\
                    goto raise_overflow;\
            }\
        }\
        return (target_type) value;\
    }

/* CIntToPy */
          static CYTHON_INLINE PyObject* __Pyx_PyInt_From_int(int value) {
    const int neg_one = (int) -1, const_zero = (int) 0;
    const int is_unsigned = neg_one > const_zero;
    if (is_unsigned) {
        if (sizeof(int) < sizeof(long)) {
            return PyInt_FromLong((long) value);
        } else if (sizeof(int) <= sizeof(unsigned long)) {
            return PyLong_FromUnsignedLong((unsigned long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) {
            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
#endif
        }
    } else {
        if (sizeof(int) <= sizeof(long)) {
            return PyInt_FromLong((long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) {
            return PyLong_FromLongLong((PY_LONG_LONG) value);
#endif
        }
    }
    {
        int one = 1; int little = (int)*(unsigned char *)&one;
        unsigned char *bytes = (unsigned char *)&value;
        return _PyLong_FromByteArray(bytes, sizeof(int),
                                     little, !is_unsigned);
    }
}

/* Declarations */
          #if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {
      return ::std::complex< float >(x, y);
    }
  #else
    static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {
      return x + y*(__pyx_t_float_complex)_Complex_I;
    }
  #endif
#else
    static CYTHON_INLINE __pyx_t_float_complex __pyx_t_float_complex_from_parts(float x, float y) {
      __pyx_t_float_complex z;
      z.real = x;
      z.imag = y;
      return z;
    }
#endif

/* Arithmetic */
          #if CYTHON_CCOMPLEX
#else
    static CYTHON_INLINE int __Pyx_c_eq_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
       return (a.real == b.real) && (a.imag == b.imag);
    }
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_sum_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
        __pyx_t_float_complex z;
        z.real = a.real + b.real;
        z.imag = a.imag + b.imag;
        return z;
    }
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_diff_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
        __pyx_t_float_complex z;
        z.real = a.real - b.real;
        z.imag = a.imag - b.imag;
        return z;
    }
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_prod_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
        __pyx_t_float_complex z;
        z.real = a.real * b.real - a.imag * b.imag;
        z.imag = a.real * b.imag + a.imag * b.real;
        return z;
    }
    #if 1
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
        if (b.imag == 0) {
            return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.real);
        } else if (fabsf(b.real) >= fabsf(b.imag)) {
            if (b.real == 0 && b.imag == 0) {
                return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.imag);
            } else {
                float r = b.imag / b.real;
                float s = 1.0 / (b.real + b.imag * r);
                return __pyx_t_float_complex_from_parts(
                    (a.real + a.imag * r) * s, (a.imag - a.real * r) * s);
            }
        } else {
            float r = b.real / b.imag;
            float s = 1.0 / (b.imag + b.real * r);
            return __pyx_t_float_complex_from_parts(
                (a.real * r + a.imag) * s, (a.imag * r - a.real) * s);
        }
    }
    #else
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_quot_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
        if (b.imag == 0) {
            return __pyx_t_float_complex_from_parts(a.real / b.real, a.imag / b.real);
        } else {
            float denom = b.real * b.real + b.imag * b.imag;
            return __pyx_t_float_complex_from_parts(
                (a.real * b.real + a.imag * b.imag) / denom,
                (a.imag * b.real - a.real * b.imag) / denom);
        }
    }
    #endif
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_neg_float(__pyx_t_float_complex a) {
        __pyx_t_float_complex z;
        z.real = -a.real;
        z.imag = -a.imag;
        return z;
    }
    static CYTHON_INLINE int __Pyx_c_is_zero_float(__pyx_t_float_complex a) {
       return (a.real == 0) && (a.imag == 0);
    }
    static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_conj_float(__pyx_t_float_complex a) {
        __pyx_t_float_complex z;
        z.real =  a.real;
        z.imag = -a.imag;
        return z;
    }
    #if 1
        static CYTHON_INLINE float __Pyx_c_abs_float(__pyx_t_float_complex z) {
          #if !defined(HAVE_HYPOT) || defined(_MSC_VER)
            return sqrtf(z.real*z.real + z.imag*z.imag);
          #else
            return hypotf(z.real, z.imag);
          #endif
        }
        static CYTHON_INLINE __pyx_t_float_complex __Pyx_c_pow_float(__pyx_t_float_complex a, __pyx_t_float_complex b) {
            __pyx_t_float_complex z;
            float r, lnr, theta, z_r, z_theta;
            if (b.imag == 0 && b.real == (int)b.real) {
                if (b.real < 0) {
                    float denom = a.real * a.real + a.imag * a.imag;
                    a.real = a.real / denom;
                    a.imag = -a.imag / denom;
                    b.real = -b.real;
                }
                switch ((int)b.real) {
                    case 0:
                        z.real = 1;
                        z.imag = 0;
                        return z;
                    case 1:
                        return a;
                    case 2:
                        z = __Pyx_c_prod_float(a, a);
                        return __Pyx_c_prod_float(a, a);
                    case 3:
                        z = __Pyx_c_prod_float(a, a);
                        return __Pyx_c_prod_float(z, a);
                    case 4:
                        z = __Pyx_c_prod_float(a, a);
                        return __Pyx_c_prod_float(z, z);
                }
            }
            if (a.imag == 0) {
                if (a.real == 0) {
                    return a;
                } else if (b.imag == 0) {
                    z.real = powf(a.real, b.real);
                    z.imag = 0;
                    return z;
                } else if (a.real > 0) {
                    r = a.real;
                    theta = 0;
                } else {
                    r = -a.real;
                    theta = atan2f(0, -1);
                }
            } else {
                r = __Pyx_c_abs_float(a);
                theta = atan2f(a.imag, a.real);
            }
            lnr = logf(r);
            z_r = expf(lnr * b.real - theta * b.imag);
            z_theta = theta * b.real + lnr * b.imag;
            z.real = z_r * cosf(z_theta);
            z.imag = z_r * sinf(z_theta);
            return z;
        }
    #endif
#endif

/* Declarations */
          #if CYTHON_CCOMPLEX
  #ifdef __cplusplus
    static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {
      return ::std::complex< double >(x, y);
    }
  #else
    static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {
      return x + y*(__pyx_t_double_complex)_Complex_I;
    }
  #endif
#else
    static CYTHON_INLINE __pyx_t_double_complex __pyx_t_double_complex_from_parts(double x, double y) {
      __pyx_t_double_complex z;
      z.real = x;
      z.imag = y;
      return z;
    }
#endif

/* Arithmetic */
          #if CYTHON_CCOMPLEX
#else
    static CYTHON_INLINE int __Pyx_c_eq_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
       return (a.real == b.real) && (a.imag == b.imag);
    }
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_sum_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
        __pyx_t_double_complex z;
        z.real = a.real + b.real;
        z.imag = a.imag + b.imag;
        return z;
    }
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_diff_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
        __pyx_t_double_complex z;
        z.real = a.real - b.real;
        z.imag = a.imag - b.imag;
        return z;
    }
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_prod_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
        __pyx_t_double_complex z;
        z.real = a.real * b.real - a.imag * b.imag;
        z.imag = a.real * b.imag + a.imag * b.real;
        return z;
    }
    #if 1
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
        if (b.imag == 0) {
            return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.real);
        } else if (fabs(b.real) >= fabs(b.imag)) {
            if (b.real == 0 && b.imag == 0) {
                return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.imag);
            } else {
                double r = b.imag / b.real;
                double s = 1.0 / (b.real + b.imag * r);
                return __pyx_t_double_complex_from_parts(
                    (a.real + a.imag * r) * s, (a.imag - a.real * r) * s);
            }
        } else {
            double r = b.real / b.imag;
            double s = 1.0 / (b.imag + b.real * r);
            return __pyx_t_double_complex_from_parts(
                (a.real * r + a.imag) * s, (a.imag * r - a.real) * s);
        }
    }
    #else
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_quot_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
        if (b.imag == 0) {
            return __pyx_t_double_complex_from_parts(a.real / b.real, a.imag / b.real);
        } else {
            double denom = b.real * b.real + b.imag * b.imag;
            return __pyx_t_double_complex_from_parts(
                (a.real * b.real + a.imag * b.imag) / denom,
                (a.imag * b.real - a.real * b.imag) / denom);
        }
    }
    #endif
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_neg_double(__pyx_t_double_complex a) {
        __pyx_t_double_complex z;
        z.real = -a.real;
        z.imag = -a.imag;
        return z;
    }
    static CYTHON_INLINE int __Pyx_c_is_zero_double(__pyx_t_double_complex a) {
       return (a.real == 0) && (a.imag == 0);
    }
    static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_conj_double(__pyx_t_double_complex a) {
        __pyx_t_double_complex z;
        z.real =  a.real;
        z.imag = -a.imag;
        return z;
    }
    #if 1
        static CYTHON_INLINE double __Pyx_c_abs_double(__pyx_t_double_complex z) {
          #if !defined(HAVE_HYPOT) || defined(_MSC_VER)
            return sqrt(z.real*z.real + z.imag*z.imag);
          #else
            return hypot(z.real, z.imag);
          #endif
        }
        static CYTHON_INLINE __pyx_t_double_complex __Pyx_c_pow_double(__pyx_t_double_complex a, __pyx_t_double_complex b) {
            __pyx_t_double_complex z;
            double r, lnr, theta, z_r, z_theta;
            if (b.imag == 0 && b.real == (int)b.real) {
                if (b.real < 0) {
                    double denom = a.real * a.real + a.imag * a.imag;
                    a.real = a.real / denom;
                    a.imag = -a.imag / denom;
                    b.real = -b.real;
                }
                switch ((int)b.real) {
                    case 0:
                        z.real = 1;
                        z.imag = 0;
                        return z;
                    case 1:
                        return a;
                    case 2:
                        z = __Pyx_c_prod_double(a, a);
                        return __Pyx_c_prod_double(a, a);
                    case 3:
                        z = __Pyx_c_prod_double(a, a);
                        return __Pyx_c_prod_double(z, a);
                    case 4:
                        z = __Pyx_c_prod_double(a, a);
                        return __Pyx_c_prod_double(z, z);
                }
            }
            if (a.imag == 0) {
                if (a.real == 0) {
                    return a;
                } else if (b.imag == 0) {
                    z.real = pow(a.real, b.real);
                    z.imag = 0;
                    return z;
                } else if (a.real > 0) {
                    r = a.real;
                    theta = 0;
                } else {
                    r = -a.real;
                    theta = atan2(0, -1);
                }
            } else {
                r = __Pyx_c_abs_double(a);
                theta = atan2(a.imag, a.real);
            }
            lnr = log(r);
            z_r = exp(lnr * b.real - theta * b.imag);
            z_theta = theta * b.real + lnr * b.imag;
            z.real = z_r * cos(z_theta);
            z.imag = z_r * sin(z_theta);
            return z;
        }
    #endif
#endif

/* CIntToPy */
          static CYTHON_INLINE PyObject* __Pyx_PyInt_From_enum__NPY_TYPES(enum NPY_TYPES value) {
    const enum NPY_TYPES neg_one = (enum NPY_TYPES) -1, const_zero = (enum NPY_TYPES) 0;
    const int is_unsigned = neg_one > const_zero;
    if (is_unsigned) {
        if (sizeof(enum NPY_TYPES) < sizeof(long)) {
            return PyInt_FromLong((long) value);
        } else if (sizeof(enum NPY_TYPES) <= sizeof(unsigned long)) {
            return PyLong_FromUnsignedLong((unsigned long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(enum NPY_TYPES) <= sizeof(unsigned PY_LONG_LONG)) {
            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
#endif
        }
    } else {
        if (sizeof(enum NPY_TYPES) <= sizeof(long)) {
            return PyInt_FromLong((long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(enum NPY_TYPES) <= sizeof(PY_LONG_LONG)) {
            return PyLong_FromLongLong((PY_LONG_LONG) value);
#endif
        }
    }
    {
        int one = 1; int little = (int)*(unsigned char *)&one;
        unsigned char *bytes = (unsigned char *)&value;
        return _PyLong_FromByteArray(bytes, sizeof(enum NPY_TYPES),
                                     little, !is_unsigned);
    }
}

/* CIntFromPy */
          static CYTHON_INLINE npy_int32 __Pyx_PyInt_As_npy_int32(PyObject *x) {
    const npy_int32 neg_one = (npy_int32) -1, const_zero = (npy_int32) 0;
    const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
    if (likely(PyInt_Check(x))) {
        if (sizeof(npy_int32) < sizeof(long)) {
            __PYX_VERIFY_RETURN_INT(npy_int32, long, PyInt_AS_LONG(x))
        } else {
            long val = PyInt_AS_LONG(x);
            if (is_unsigned && unlikely(val < 0)) {
                goto raise_neg_overflow;
            }
            return (npy_int32) val;
        }
    } else
#endif
    if (likely(PyLong_Check(x))) {
        if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (npy_int32) 0;
                case  1: __PYX_VERIFY_RETURN_INT(npy_int32, digit, digits[0])
                case 2:
                    if (8 * sizeof(npy_int32) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(npy_int32, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(npy_int32) >= 2 * PyLong_SHIFT) {
                            return (npy_int32) (((((npy_int32)digits[1]) << PyLong_SHIFT) | (npy_int32)digits[0]));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(npy_int32) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(npy_int32, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(npy_int32) >= 3 * PyLong_SHIFT) {
                            return (npy_int32) (((((((npy_int32)digits[2]) << PyLong_SHIFT) | (npy_int32)digits[1]) << PyLong_SHIFT) | (npy_int32)digits[0]));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(npy_int32) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(npy_int32, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(npy_int32) >= 4 * PyLong_SHIFT) {
                            return (npy_int32) (((((((((npy_int32)digits[3]) << PyLong_SHIFT) | (npy_int32)digits[2]) << PyLong_SHIFT) | (npy_int32)digits[1]) << PyLong_SHIFT) | (npy_int32)digits[0]));
                        }
                    }
                    break;
            }
#endif
#if CYTHON_COMPILING_IN_CPYTHON
            if (unlikely(Py_SIZE(x) < 0)) {
                goto raise_neg_overflow;
            }
#else
            {
                int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                if (unlikely(result < 0))
                    return (npy_int32) -1;
                if (unlikely(result == 1))
                    goto raise_neg_overflow;
            }
#endif
            if (sizeof(npy_int32) <= sizeof(unsigned long)) {
                __PYX_VERIFY_RETURN_INT_EXC(npy_int32, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(npy_int32) <= sizeof(unsigned PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(npy_int32, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
            }
        } else {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (npy_int32) 0;
                case -1: __PYX_VERIFY_RETURN_INT(npy_int32, sdigit, (sdigit) (-(sdigit)digits[0]))
                case  1: __PYX_VERIFY_RETURN_INT(npy_int32,  digit, +digits[0])
                case -2:
                    if (8 * sizeof(npy_int32) - 1 > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(npy_int32, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(npy_int32) - 1 > 2 * PyLong_SHIFT) {
                            return (npy_int32) (((npy_int32)-1)*(((((npy_int32)digits[1]) << PyLong_SHIFT) | (npy_int32)digits[0])));
                        }
                    }
                    break;
                case 2:
                    if (8 * sizeof(npy_int32) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(npy_int32, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(npy_int32) - 1 > 2 * PyLong_SHIFT) {
                            return (npy_int32) ((((((npy_int32)digits[1]) << PyLong_SHIFT) | (npy_int32)digits[0])));
                        }
                    }
                    break;
                case -3:
                    if (8 * sizeof(npy_int32) - 1 > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(npy_int32, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(npy_int32) - 1 > 3 * PyLong_SHIFT) {
                            return (npy_int32) (((npy_int32)-1)*(((((((npy_int32)digits[2]) << PyLong_SHIFT) | (npy_int32)digits[1]) << PyLong_SHIFT) | (npy_int32)digits[0])));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(npy_int32) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(npy_int32, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(npy_int32) - 1 > 3 * PyLong_SHIFT) {
                            return (npy_int32) ((((((((npy_int32)digits[2]) << PyLong_SHIFT) | (npy_int32)digits[1]) << PyLong_SHIFT) | (npy_int32)digits[0])));
                        }
                    }
                    break;
                case -4:
                    if (8 * sizeof(npy_int32) - 1 > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(npy_int32, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(npy_int32) - 1 > 4 * PyLong_SHIFT) {
                            return (npy_int32) (((npy_int32)-1)*(((((((((npy_int32)digits[3]) << PyLong_SHIFT) | (npy_int32)digits[2]) << PyLong_SHIFT) | (npy_int32)digits[1]) << PyLong_SHIFT) | (npy_int32)digits[0])));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(npy_int32) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(npy_int32, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(npy_int32) - 1 > 4 * PyLong_SHIFT) {
                            return (npy_int32) ((((((((((npy_int32)digits[3]) << PyLong_SHIFT) | (npy_int32)digits[2]) << PyLong_SHIFT) | (npy_int32)digits[1]) << PyLong_SHIFT) | (npy_int32)digits[0])));
                        }
                    }
                    break;
            }
#endif
            if (sizeof(npy_int32) <= sizeof(long)) {
                __PYX_VERIFY_RETURN_INT_EXC(npy_int32, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(npy_int32) <= sizeof(PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(npy_int32, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
            }
        }
        {
#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray)
            PyErr_SetString(PyExc_RuntimeError,
                            "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers");
#else
            npy_int32 val;
            PyObject *v = __Pyx_PyNumber_IntOrLong(x);
 #if PY_MAJOR_VERSION < 3
            if (likely(v) && !PyLong_Check(v)) {
                PyObject *tmp = v;
                v = PyNumber_Long(tmp);
                Py_DECREF(tmp);
            }
 #endif
            if (likely(v)) {
                int one = 1; int is_little = (int)*(unsigned char *)&one;
                unsigned char *bytes = (unsigned char *)&val;
                int ret = _PyLong_AsByteArray((PyLongObject *)v,
                                              bytes, sizeof(val),
                                              is_little, !is_unsigned);
                Py_DECREF(v);
                if (likely(!ret))
                    return val;
            }
#endif
            return (npy_int32) -1;
        }
    } else {
        npy_int32 val;
        PyObject *tmp = __Pyx_PyNumber_IntOrLong(x);
        if (!tmp) return (npy_int32) -1;
        val = __Pyx_PyInt_As_npy_int32(tmp);
        Py_DECREF(tmp);
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to npy_int32");
    return (npy_int32) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to npy_int32");
    return (npy_int32) -1;
}

/* CIntFromPy */
          static CYTHON_INLINE int __Pyx_PyInt_As_int(PyObject *x) {
    const int neg_one = (int) -1, const_zero = (int) 0;
    const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
    if (likely(PyInt_Check(x))) {
        if (sizeof(int) < sizeof(long)) {
            __PYX_VERIFY_RETURN_INT(int, long, PyInt_AS_LONG(x))
        } else {
            long val = PyInt_AS_LONG(x);
            if (is_unsigned && unlikely(val < 0)) {
                goto raise_neg_overflow;
            }
            return (int) val;
        }
    } else
#endif
    if (likely(PyLong_Check(x))) {
        if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (int) 0;
                case  1: __PYX_VERIFY_RETURN_INT(int, digit, digits[0])
                case 2:
                    if (8 * sizeof(int) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) >= 2 * PyLong_SHIFT) {
                            return (int) (((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(int) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) >= 3 * PyLong_SHIFT) {
                            return (int) (((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(int) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) >= 4 * PyLong_SHIFT) {
                            return (int) (((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0]));
                        }
                    }
                    break;
            }
#endif
#if CYTHON_COMPILING_IN_CPYTHON
            if (unlikely(Py_SIZE(x) < 0)) {
                goto raise_neg_overflow;
            }
#else
            {
                int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                if (unlikely(result < 0))
                    return (int) -1;
                if (unlikely(result == 1))
                    goto raise_neg_overflow;
            }
#endif
            if (sizeof(int) <= sizeof(unsigned long)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(int) <= sizeof(unsigned PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
            }
        } else {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (int) 0;
                case -1: __PYX_VERIFY_RETURN_INT(int, sdigit, (sdigit) (-(sdigit)digits[0]))
                case  1: __PYX_VERIFY_RETURN_INT(int,  digit, +digits[0])
                case -2:
                    if (8 * sizeof(int) - 1 > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) {
                            return (int) (((int)-1)*(((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 2:
                    if (8 * sizeof(int) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) {
                            return (int) ((((((int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case -3:
                    if (8 * sizeof(int) - 1 > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) {
                            return (int) (((int)-1)*(((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(int) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) {
                            return (int) ((((((((int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case -4:
                    if (8 * sizeof(int) - 1 > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) {
                            return (int) (((int)-1)*(((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(int) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(int, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(int) - 1 > 4 * PyLong_SHIFT) {
                            return (int) ((((((((((int)digits[3]) << PyLong_SHIFT) | (int)digits[2]) << PyLong_SHIFT) | (int)digits[1]) << PyLong_SHIFT) | (int)digits[0])));
                        }
                    }
                    break;
            }
#endif
            if (sizeof(int) <= sizeof(long)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(int) <= sizeof(PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(int, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
            }
        }
        {
#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray)
            PyErr_SetString(PyExc_RuntimeError,
                            "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers");
#else
            int val;
            PyObject *v = __Pyx_PyNumber_IntOrLong(x);
 #if PY_MAJOR_VERSION < 3
            if (likely(v) && !PyLong_Check(v)) {
                PyObject *tmp = v;
                v = PyNumber_Long(tmp);
                Py_DECREF(tmp);
            }
 #endif
            if (likely(v)) {
                int one = 1; int is_little = (int)*(unsigned char *)&one;
                unsigned char *bytes = (unsigned char *)&val;
                int ret = _PyLong_AsByteArray((PyLongObject *)v,
                                              bytes, sizeof(val),
                                              is_little, !is_unsigned);
                Py_DECREF(v);
                if (likely(!ret))
                    return val;
            }
#endif
            return (int) -1;
        }
    } else {
        int val;
        PyObject *tmp = __Pyx_PyNumber_IntOrLong(x);
        if (!tmp) return (int) -1;
        val = __Pyx_PyInt_As_int(tmp);
        Py_DECREF(tmp);
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to int");
    return (int) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to int");
    return (int) -1;
}

/* CIntToPy */
          static CYTHON_INLINE PyObject* __Pyx_PyInt_From_long(long value) {
    const long neg_one = (long) -1, const_zero = (long) 0;
    const int is_unsigned = neg_one > const_zero;
    if (is_unsigned) {
        if (sizeof(long) < sizeof(long)) {
            return PyInt_FromLong((long) value);
        } else if (sizeof(long) <= sizeof(unsigned long)) {
            return PyLong_FromUnsignedLong((unsigned long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
            return PyLong_FromUnsignedLongLong((unsigned PY_LONG_LONG) value);
#endif
        }
    } else {
        if (sizeof(long) <= sizeof(long)) {
            return PyInt_FromLong((long) value);
#ifdef HAVE_LONG_LONG
        } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
            return PyLong_FromLongLong((PY_LONG_LONG) value);
#endif
        }
    }
    {
        int one = 1; int little = (int)*(unsigned char *)&one;
        unsigned char *bytes = (unsigned char *)&value;
        return _PyLong_FromByteArray(bytes, sizeof(long),
                                     little, !is_unsigned);
    }
}

/* CIntFromPy */
          static CYTHON_INLINE long __Pyx_PyInt_As_long(PyObject *x) {
    const long neg_one = (long) -1, const_zero = (long) 0;
    const int is_unsigned = neg_one > const_zero;
#if PY_MAJOR_VERSION < 3
    if (likely(PyInt_Check(x))) {
        if (sizeof(long) < sizeof(long)) {
            __PYX_VERIFY_RETURN_INT(long, long, PyInt_AS_LONG(x))
        } else {
            long val = PyInt_AS_LONG(x);
            if (is_unsigned && unlikely(val < 0)) {
                goto raise_neg_overflow;
            }
            return (long) val;
        }
    } else
#endif
    if (likely(PyLong_Check(x))) {
        if (is_unsigned) {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (long) 0;
                case  1: __PYX_VERIFY_RETURN_INT(long, digit, digits[0])
                case 2:
                    if (8 * sizeof(long) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) >= 2 * PyLong_SHIFT) {
                            return (long) (((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(long) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) >= 3 * PyLong_SHIFT) {
                            return (long) (((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(long) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) >= 4 * PyLong_SHIFT) {
                            return (long) (((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0]));
                        }
                    }
                    break;
            }
#endif
#if CYTHON_COMPILING_IN_CPYTHON
            if (unlikely(Py_SIZE(x) < 0)) {
                goto raise_neg_overflow;
            }
#else
            {
                int result = PyObject_RichCompareBool(x, Py_False, Py_LT);
                if (unlikely(result < 0))
                    return (long) -1;
                if (unlikely(result == 1))
                    goto raise_neg_overflow;
            }
#endif
            if (sizeof(long) <= sizeof(unsigned long)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, unsigned long, PyLong_AsUnsignedLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(long) <= sizeof(unsigned PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, unsigned PY_LONG_LONG, PyLong_AsUnsignedLongLong(x))
#endif
            }
        } else {
#if CYTHON_USE_PYLONG_INTERNALS
            const digit* digits = ((PyLongObject*)x)->ob_digit;
            switch (Py_SIZE(x)) {
                case  0: return (long) 0;
                case -1: __PYX_VERIFY_RETURN_INT(long, sdigit, (sdigit) (-(sdigit)digits[0]))
                case  1: __PYX_VERIFY_RETURN_INT(long,  digit, +digits[0])
                case -2:
                    if (8 * sizeof(long) - 1 > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                            return (long) (((long)-1)*(((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 2:
                    if (8 * sizeof(long) > 1 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 2 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                            return (long) ((((((long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case -3:
                    if (8 * sizeof(long) - 1 > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                            return (long) (((long)-1)*(((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 3:
                    if (8 * sizeof(long) > 2 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 3 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                            return (long) ((((((((long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case -4:
                    if (8 * sizeof(long) - 1 > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, long, -(long) (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                            return (long) (((long)-1)*(((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
                case 4:
                    if (8 * sizeof(long) > 3 * PyLong_SHIFT) {
                        if (8 * sizeof(unsigned long) > 4 * PyLong_SHIFT) {
                            __PYX_VERIFY_RETURN_INT(long, unsigned long, (((((((((unsigned long)digits[3]) << PyLong_SHIFT) | (unsigned long)digits[2]) << PyLong_SHIFT) | (unsigned long)digits[1]) << PyLong_SHIFT) | (unsigned long)digits[0])))
                        } else if (8 * sizeof(long) - 1 > 4 * PyLong_SHIFT) {
                            return (long) ((((((((((long)digits[3]) << PyLong_SHIFT) | (long)digits[2]) << PyLong_SHIFT) | (long)digits[1]) << PyLong_SHIFT) | (long)digits[0])));
                        }
                    }
                    break;
            }
#endif
            if (sizeof(long) <= sizeof(long)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, long, PyLong_AsLong(x))
#ifdef HAVE_LONG_LONG
            } else if (sizeof(long) <= sizeof(PY_LONG_LONG)) {
                __PYX_VERIFY_RETURN_INT_EXC(long, PY_LONG_LONG, PyLong_AsLongLong(x))
#endif
            }
        }
        {
#if CYTHON_COMPILING_IN_PYPY && !defined(_PyLong_AsByteArray)
            PyErr_SetString(PyExc_RuntimeError,
                            "_PyLong_AsByteArray() not available in PyPy, cannot convert large numbers");
#else
            long val;
            PyObject *v = __Pyx_PyNumber_IntOrLong(x);
 #if PY_MAJOR_VERSION < 3
            if (likely(v) && !PyLong_Check(v)) {
                PyObject *tmp = v;
                v = PyNumber_Long(tmp);
                Py_DECREF(tmp);
            }
 #endif
            if (likely(v)) {
                int one = 1; int is_little = (int)*(unsigned char *)&one;
                unsigned char *bytes = (unsigned char *)&val;
                int ret = _PyLong_AsByteArray((PyLongObject *)v,
                                              bytes, sizeof(val),
                                              is_little, !is_unsigned);
                Py_DECREF(v);
                if (likely(!ret))
                    return val;
            }
#endif
            return (long) -1;
        }
    } else {
        long val;
        PyObject *tmp = __Pyx_PyNumber_IntOrLong(x);
        if (!tmp) return (long) -1;
        val = __Pyx_PyInt_As_long(tmp);
        Py_DECREF(tmp);
        return val;
    }
raise_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "value too large to convert to long");
    return (long) -1;
raise_neg_overflow:
    PyErr_SetString(PyExc_OverflowError,
        "can't convert negative value to long");
    return (long) -1;
}

/* FastTypeChecks */
          #if CYTHON_COMPILING_IN_CPYTHON
static int __Pyx_InBases(PyTypeObject *a, PyTypeObject *b) {
    while (a) {
        a = a->tp_base;
        if (a == b)
            return 1;
    }
    return b == &PyBaseObject_Type;
}
static CYTHON_INLINE int __Pyx_IsSubtype(PyTypeObject *a, PyTypeObject *b) {
    PyObject *mro;
    if (a == b) return 1;
    mro = a->tp_mro;
    if (likely(mro)) {
        Py_ssize_t i, n;
        n = PyTuple_GET_SIZE(mro);
        for (i = 0; i < n; i++) {
            if (PyTuple_GET_ITEM(mro, i) == (PyObject *)b)
                return 1;
        }
        return 0;
    }
    return __Pyx_InBases(a, b);
}
#if PY_MAJOR_VERSION == 2
static int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject* exc_type2) {
    PyObject *exception, *value, *tb;
    int res;
    __Pyx_PyThreadState_declare
    __Pyx_PyThreadState_assign
    __Pyx_ErrFetch(&exception, &value, &tb);
    res = exc_type1 ? PyObject_IsSubclass(err, exc_type1) : 0;
    if (unlikely(res == -1)) {
        PyErr_WriteUnraisable(err);
        res = 0;
    }
    if (!res) {
        res = PyObject_IsSubclass(err, exc_type2);
        if (unlikely(res == -1)) {
            PyErr_WriteUnraisable(err);
            res = 0;
        }
    }
    __Pyx_ErrRestore(exception, value, tb);
    return res;
}
#else
static CYTHON_INLINE int __Pyx_inner_PyErr_GivenExceptionMatches2(PyObject *err, PyObject* exc_type1, PyObject *exc_type2) {
    int res = exc_type1 ? __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type1) : 0;
    if (!res) {
        res = __Pyx_IsSubtype((PyTypeObject*)err, (PyTypeObject*)exc_type2);
    }
    return res;
}
#endif
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches(PyObject *err, PyObject* exc_type) {
    if (likely(err == exc_type)) return 1;
    if (likely(PyExceptionClass_Check(err))) {
        return __Pyx_inner_PyErr_GivenExceptionMatches2(err, NULL, exc_type);
    }
    return PyErr_GivenExceptionMatches(err, exc_type);
}
static CYTHON_INLINE int __Pyx_PyErr_GivenExceptionMatches2(PyObject *err, PyObject *exc_type1, PyObject *exc_type2) {
    if (likely(err == exc_type1 || err == exc_type2)) return 1;
    if (likely(PyExceptionClass_Check(err))) {
        return __Pyx_inner_PyErr_GivenExceptionMatches2(err, exc_type1, exc_type2);
    }
    return (PyErr_GivenExceptionMatches(err, exc_type1) || PyErr_GivenExceptionMatches(err, exc_type2));
}
#endif

/* CheckBinaryVersion */
          static int __Pyx_check_binary_version(void) {
    char ctversion[4], rtversion[4];
    PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION);
    PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion());
    if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) {
        char message[200];
        PyOS_snprintf(message, sizeof(message),
                      "compiletime version %s of module '%.100s' "
                      "does not match runtime version %s",
                      ctversion, __Pyx_MODULE_NAME, rtversion);
        return PyErr_WarnEx(NULL, message, 1);
    }
    return 0;
}

/* ModuleImport */
          #ifndef __PYX_HAVE_RT_ImportModule
#define __PYX_HAVE_RT_ImportModule
static PyObject *__Pyx_ImportModule(const char *name) {
    PyObject *py_name = 0;
    PyObject *py_module = 0;
    py_name = __Pyx_PyIdentifier_FromString(name);
    if (!py_name)
        goto bad;
    py_module = PyImport_Import(py_name);
    Py_DECREF(py_name);
    return py_module;
bad:
    Py_XDECREF(py_name);
    return 0;
}
#endif

/* TypeImport */
          #ifndef __PYX_HAVE_RT_ImportType
#define __PYX_HAVE_RT_ImportType
static PyTypeObject *__Pyx_ImportType(const char *module_name, const char *class_name,
    size_t size, int strict)
{
    PyObject *py_module = 0;
    PyObject *result = 0;
    PyObject *py_name = 0;
    char warning[200];
    Py_ssize_t basicsize;
#ifdef Py_LIMITED_API
    PyObject *py_basicsize;
#endif
    py_module = __Pyx_ImportModule(module_name);
    if (!py_module)
        goto bad;
    py_name = __Pyx_PyIdentifier_FromString(class_name);
    if (!py_name)
        goto bad;
    result = PyObject_GetAttr(py_module, py_name);
    Py_DECREF(py_name);
    py_name = 0;
    Py_DECREF(py_module);
    py_module = 0;
    if (!result)
        goto bad;
    if (!PyType_Check(result)) {
        PyErr_Format(PyExc_TypeError,
            "%.200s.%.200s is not a type object",
            module_name, class_name);
        goto bad;
    }
#ifndef Py_LIMITED_API
    basicsize = ((PyTypeObject *)result)->tp_basicsize;
#else
    py_basicsize = PyObject_GetAttrString(result, "__basicsize__");
    if (!py_basicsize)
        goto bad;
    basicsize = PyLong_AsSsize_t(py_basicsize);
    Py_DECREF(py_basicsize);
    py_basicsize = 0;
    if (basicsize == (Py_ssize_t)-1 && PyErr_Occurred())
        goto bad;
#endif
    if (!strict && (size_t)basicsize > size) {
        PyOS_snprintf(warning, sizeof(warning),
            "%s.%s size changed, may indicate binary incompatibility. Expected %zd, got %zd",
            module_name, class_name, basicsize, size);
        if (PyErr_WarnEx(NULL, warning, 0) < 0) goto bad;
    }
    else if ((size_t)basicsize != size) {
        PyErr_Format(PyExc_ValueError,
            "%.200s.%.200s has the wrong size, try recompiling. Expected %zd, got %zd",
            module_name, class_name, basicsize, size);
        goto bad;
    }
    return (PyTypeObject *)result;
bad:
    Py_XDECREF(py_module);
    Py_XDECREF(result);
    return NULL;
}
#endif

/* InitStrings */
          static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
    while (t->p) {
        #if PY_MAJOR_VERSION < 3
        if (t->is_unicode) {
            *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL);
        } else if (t->intern) {
            *t->p = PyString_InternFromString(t->s);
        } else {
            *t->p = PyString_FromStringAndSize(t->s, t->n - 1);
        }
        #else
        if (t->is_unicode | t->is_str) {
            if (t->intern) {
                *t->p = PyUnicode_InternFromString(t->s);
            } else if (t->encoding) {
                *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL);
            } else {
                *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1);
            }
        } else {
            *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1);
        }
        #endif
        if (!*t->p)
            return -1;
        if (PyObject_Hash(*t->p) == -1)
            return -1;
        ++t;
    }
    return 0;
}

static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char* c_str) {
    return __Pyx_PyUnicode_FromStringAndSize(c_str, (Py_ssize_t)strlen(c_str));
}
static CYTHON_INLINE const char* __Pyx_PyObject_AsString(PyObject* o) {
    Py_ssize_t ignore;
    return __Pyx_PyObject_AsStringAndSize(o, &ignore);
}
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
#if !CYTHON_PEP393_ENABLED
static const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
    char* defenc_c;
    PyObject* defenc = _PyUnicode_AsDefaultEncodedString(o, NULL);
    if (!defenc) return NULL;
    defenc_c = PyBytes_AS_STRING(defenc);
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
    {
        char* end = defenc_c + PyBytes_GET_SIZE(defenc);
        char* c;
        for (c = defenc_c; c < end; c++) {
            if ((unsigned char) (*c) >= 128) {
                PyUnicode_AsASCIIString(o);
                return NULL;
            }
        }
    }
#endif
    *length = PyBytes_GET_SIZE(defenc);
    return defenc_c;
}
#else
static CYTHON_INLINE const char* __Pyx_PyUnicode_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
    if (unlikely(__Pyx_PyUnicode_READY(o) == -1)) return NULL;
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
    if (likely(PyUnicode_IS_ASCII(o))) {
        *length = PyUnicode_GET_LENGTH(o);
        return PyUnicode_AsUTF8(o);
    } else {
        PyUnicode_AsASCIIString(o);
        return NULL;
    }
#else
    return PyUnicode_AsUTF8AndSize(o, length);
#endif
}
#endif
#endif
static CYTHON_INLINE const char* __Pyx_PyObject_AsStringAndSize(PyObject* o, Py_ssize_t *length) {
#if __PYX_DEFAULT_STRING_ENCODING_IS_ASCII || __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
    if (
#if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
            __Pyx_sys_getdefaultencoding_not_ascii &&
#endif
            PyUnicode_Check(o)) {
        return __Pyx_PyUnicode_AsStringAndSize(o, length);
    } else
#endif
#if (!CYTHON_COMPILING_IN_PYPY) || (defined(PyByteArray_AS_STRING) && defined(PyByteArray_GET_SIZE))
    if (PyByteArray_Check(o)) {
        *length = PyByteArray_GET_SIZE(o);
        return PyByteArray_AS_STRING(o);
    } else
#endif
    {
        char* result;
        int r = PyBytes_AsStringAndSize(o, &result, length);
        if (unlikely(r < 0)) {
            return NULL;
        } else {
            return result;
        }
    }
}
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {
   int is_true = x == Py_True;
   if (is_true | (x == Py_False) | (x == Py_None)) return is_true;
   else return PyObject_IsTrue(x);
}
static PyObject* __Pyx_PyNumber_IntOrLongWrongResultType(PyObject* result, const char* type_name) {
#if PY_MAJOR_VERSION >= 3
    if (PyLong_Check(result)) {
        if (PyErr_WarnFormat(PyExc_DeprecationWarning, 1,
                "__int__ returned non-int (type %.200s).  "
                "The ability to return an instance of a strict subclass of int "
                "is deprecated, and may be removed in a future version of Python.",
                Py_TYPE(result)->tp_name)) {
            Py_DECREF(result);
            return NULL;
        }
        return result;
    }
#endif
    PyErr_Format(PyExc_TypeError,
                 "__%.4s__ returned non-%.4s (type %.200s)",
                 type_name, type_name, Py_TYPE(result)->tp_name);
    Py_DECREF(result);
    return NULL;
}
static CYTHON_INLINE PyObject* __Pyx_PyNumber_IntOrLong(PyObject* x) {
#if CYTHON_USE_TYPE_SLOTS
  PyNumberMethods *m;
#endif
  const char *name = NULL;
  PyObject *res = NULL;
#if PY_MAJOR_VERSION < 3
  if (likely(PyInt_Check(x) || PyLong_Check(x)))
#else
  if (likely(PyLong_Check(x)))
#endif
    return __Pyx_NewRef(x);
#if CYTHON_USE_TYPE_SLOTS
  m = Py_TYPE(x)->tp_as_number;
  #if PY_MAJOR_VERSION < 3
  if (m && m->nb_int) {
    name = "int";
    res = m->nb_int(x);
  }
  else if (m && m->nb_long) {
    name = "long";
    res = m->nb_long(x);
  }
  #else
  if (likely(m && m->nb_int)) {
    name = "int";
    res = m->nb_int(x);
  }
  #endif
#else
  if (!PyBytes_CheckExact(x) && !PyUnicode_CheckExact(x)) {
    res = PyNumber_Int(x);
  }
#endif
  if (likely(res)) {
#if PY_MAJOR_VERSION < 3
    if (unlikely(!PyInt_Check(res) && !PyLong_Check(res))) {
#else
    if (unlikely(!PyLong_CheckExact(res))) {
#endif
        return __Pyx_PyNumber_IntOrLongWrongResultType(res, name);
    }
  }
  else if (!PyErr_Occurred()) {
    PyErr_SetString(PyExc_TypeError,
                    "an integer is required");
  }
  return res;
}
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
  Py_ssize_t ival;
  PyObject *x;
#if PY_MAJOR_VERSION < 3
  if (likely(PyInt_CheckExact(b))) {
    if (sizeof(Py_ssize_t) >= sizeof(long))
        return PyInt_AS_LONG(b);
    else
        return PyInt_AsSsize_t(x);
  }
#endif
  if (likely(PyLong_CheckExact(b))) {
    #if CYTHON_USE_PYLONG_INTERNALS
    const digit* digits = ((PyLongObject*)b)->ob_digit;
    const Py_ssize_t size = Py_SIZE(b);
    if (likely(__Pyx_sst_abs(size) <= 1)) {
        ival = likely(size) ? digits[0] : 0;
        if (size == -1) ival = -ival;
        return ival;
    } else {
      switch (size) {
         case 2:
           if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -2:
           if (8 * sizeof(Py_ssize_t) > 2 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case 3:
           if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -3:
           if (8 * sizeof(Py_ssize_t) > 3 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((((size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case 4:
           if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) {
             return (Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
         case -4:
           if (8 * sizeof(Py_ssize_t) > 4 * PyLong_SHIFT) {
             return -(Py_ssize_t) (((((((((size_t)digits[3]) << PyLong_SHIFT) | (size_t)digits[2]) << PyLong_SHIFT) | (size_t)digits[1]) << PyLong_SHIFT) | (size_t)digits[0]));
           }
           break;
      }
    }
    #endif
    return PyLong_AsSsize_t(b);
  }
  x = PyNumber_Index(b);
  if (!x) return -1;
  ival = PyInt_AsSsize_t(x);
  Py_DECREF(x);
  return ival;
}
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {
    return PyInt_FromSize_t(ival);
}


#endif /* Py_PYTHON_H */


================================================
FILE: lib/nms/gpu_nms.hpp
================================================
void _nms(int* keep_out, int* num_out, const float* boxes_host, int boxes_num,
          int boxes_dim, float nms_overlap_thresh, int device_id);


================================================
FILE: lib/nms/gpu_nms.pyx
================================================
# --------------------------------------------------------
# Faster R-CNN
# Copyright (c) 2015 Microsoft
# Licensed under The MIT License [see LICENSE for details]
# Written by Ross Girshick
# --------------------------------------------------------

import numpy as np
cimport numpy as np

assert sizeof(int) == sizeof(np.int32_t)

cdef extern from "gpu_nms.hpp":
    void _nms(np.int32_t*, int*, np.float32_t*, int, int, float, int)

def gpu_nms(np.ndarray[np.float32_t, ndim=2] dets, np.float thresh,
            np.int32_t device_id=0):
    cdef int boxes_num = dets.shape[0]
    cdef int boxes_dim = dets.shape[1]
    cdef int num_out
    cdef np.ndarray[np.int32_t, ndim=1] \
        keep = np.zeros(boxes_num, dtype=np.int32)
    cdef np.ndarray[np.float32_t, ndim=1] \
        scores = dets[:, 4]
    cdef np.ndarray[np.int_t, ndim=1] \
        order = scores.argsort()[::-1]
    cdef np.ndarray[np.float32_t, ndim=2] \
        sorted_dets = dets[order, :]
    _nms(&keep[0], &num_out, &sorted_dets[0, 0], boxes_num, boxes_dim, thresh, device_id)
    keep = keep[:num_out]
    return list(order[keep])


================================================
FILE: lib/nms/nms_kernel.cu
================================================
// ------------------------------------------------------------------
// Faster R-CNN
// Copyright (c) 2015 Microsoft
// Licensed under The MIT License [see fast-rcnn/LICENSE for details]
// Written by Shaoqing Ren
// ------------------------------------------------------------------

#include "gpu_nms.hpp"
#include 
#include 

#define CUDA_CHECK(condition) \
  /* Code block avoids redefinition of cudaError_t error */ \
  do { \
    cudaError_t error = condition; \
    if (error != cudaSuccess) { \
      std::cout << cudaGetErrorString(error) << std::endl; \
    } \
  } while (0)

#define DIVUP(m,n) ((m) / (n) + ((m) % (n) > 0))
int const threadsPerBlock = sizeof(unsigned long long) * 8;

__device__ inline float devIoU(float const * const a, float const * const b) {
  float left = max(a[0], b[0]), right = min(a[2], b[2]);
  float top = max(a[1], b[1]), bottom = min(a[3], b[3]);
  float width = max(right - left + 1, 0.f), height = max(bottom - top + 1, 0.f);
  float interS = width * height;
  float Sa = (a[2] - a[0] + 1) * (a[3] - a[1] + 1);
  float Sb = (b[2] - b[0] + 1) * (b[3] - b[1] + 1);
  return interS / (Sa + Sb - interS);
}

__global__ void nms_kernel(const int n_boxes, const float nms_overlap_thresh,
                           const float *dev_boxes, unsigned long long *dev_mask) {
  const int row_start = blockIdx.y;
  const int col_start = blockIdx.x;

  // if (row_start > col_start) return;

  const int row_size =
        min(n_boxes - row_start * threadsPerBlock, threadsPerBlock);
  const int col_size =
        min(n_boxes - col_start * threadsPerBlock, threadsPerBlock);

  __shared__ float block_boxes[threadsPerBlock * 5];
  if (threadIdx.x < col_size) {
    block_boxes[threadIdx.x * 5 + 0] =
        dev_boxes[(threadsPerBlock * col_start + threadIdx.x) * 5 + 0];
    block_boxes[threadIdx.x * 5 + 1] =
        dev_boxes[(threadsPerBlock * col_start + threadIdx.x) * 5 + 1];
    block_boxes[threadIdx.x * 5 + 2] =
        dev_boxes[(threadsPerBlock * col_start + threadIdx.x) * 5 + 2];
    block_boxes[threadIdx.x * 5 + 3] =
        dev_boxes[(threadsPerBlock * col_start + threadIdx.x) * 5 + 3];
    block_boxes[threadIdx.x * 5 + 4] =
        dev_boxes[(threadsPerBlock * col_start + threadIdx.x) * 5 + 4];
  }
  __syncthreads();

  if (threadIdx.x < row_size) {
    const int cur_box_idx = threadsPerBlock * row_start + threadIdx.x;
    const float *cur_box = dev_boxes + cur_box_idx * 5;
    int i = 0;
    unsigned long long t = 0;
    int start = 0;
    if (row_start == col_start) {
      start = threadIdx.x + 1;
    }
    for (i = start; i < col_size; i++) {
      if (devIoU(cur_box, block_boxes + i * 5) > nms_overlap_thresh) {
        t |= 1ULL << i;
      }
    }
    const int col_blocks = DIVUP(n_boxes, threadsPerBlock);
    dev_mask[cur_box_idx * col_blocks + col_start] = t;
  }
}

void _set_device(int device_id) {
  int current_device;
  CUDA_CHECK(cudaGetDevice(¤t_device));
  if (current_device == device_id) {
    return;
  }
  // The call to cudaSetDevice must come before any calls to Get, which
  // may perform initialization using the GPU.
  CUDA_CHECK(cudaSetDevice(device_id));
}

void _nms(int* keep_out, int* num_out, const float* boxes_host, int boxes_num,
          int boxes_dim, float nms_overlap_thresh, int device_id) {
  _set_device(device_id);

  float* boxes_dev = NULL;
  unsigned long long* mask_dev = NULL;

  const int col_blocks = DIVUP(boxes_num, threadsPerBlock);

  CUDA_CHECK(cudaMalloc(&boxes_dev,
                        boxes_num * boxes_dim * sizeof(float)));
  CUDA_CHECK(cudaMemcpy(boxes_dev,
                        boxes_host,
                        boxes_num * boxes_dim * sizeof(float),
                        cudaMemcpyHostToDevice));

  CUDA_CHECK(cudaMalloc(&mask_dev,
                        boxes_num * col_blocks * sizeof(unsigned long long)));

  dim3 blocks(DIVUP(boxes_num, threadsPerBlock),
              DIVUP(boxes_num, threadsPerBlock));
  dim3 threads(threadsPerBlock);
  nms_kernel<<>>(boxes_num,
                                  nms_overlap_thresh,
                                  boxes_dev,
                                  mask_dev);

  std::vector mask_host(boxes_num * col_blocks);
  CUDA_CHECK(cudaMemcpy(&mask_host[0],
                        mask_dev,
                        sizeof(unsigned long long) * boxes_num * col_blocks,
                        cudaMemcpyDeviceToHost));

  std::vector remv(col_blocks);
  memset(&remv[0], 0, sizeof(unsigned long long) * col_blocks);

  int num_to_keep = 0;
  for (int i = 0; i < boxes_num; i++) {
    int nblock = i / threadsPerBlock;
    int inblock = i % threadsPerBlock;

    if (!(remv[nblock] & (1ULL << inblock))) {
      keep_out[num_to_keep++] = i;
      unsigned long long *p = &mask_host[0] + i * col_blocks;
      for (int j = nblock; j < col_blocks; j++) {
        remv[j] |= p[j];
      }
    }
  }
  *num_out = num_to_keep;

  CUDA_CHECK(cudaFree(boxes_dev));
  CUDA_CHECK(cudaFree(mask_dev));
}


================================================
FILE: lib/nms/py_cpu_nms.py
================================================
# --------------------------------------------------------
# Fast R-CNN
# Copyright (c) 2015 Microsoft
# Licensed under The MIT License [see LICENSE for details]
# Written by Ross Girshick
# --------------------------------------------------------

import numpy as np

def py_cpu_nms(dets, thresh):
    """Pure Python NMS baseline."""
    x1 = dets[:, 0]
    y1 = dets[:, 1]
    x2 = dets[:, 2]
    y2 = dets[:, 3]
    scores = dets[:, 4]

    areas = (x2 - x1 + 1) * (y2 - y1 + 1)
    order = scores.argsort()[::-1]

    keep = []
    while order.size > 0:
        i = order[0]
        keep.append(i)
        xx1 = np.maximum(x1[i], x1[order[1:]])
        yy1 = np.maximum(y1[i], y1[order[1:]])
        xx2 = np.minimum(x2[i], x2[order[1:]])
        yy2 = np.minimum(y2[i], y2[order[1:]])

        w = np.maximum(0.0, xx2 - xx1 + 1)
        h = np.maximum(0.0, yy2 - yy1 + 1)
        inter = w * h
        ovr = inter / (areas[i] + areas[order[1:]] - inter)

        inds = np.where(ovr <= thresh)[0]
        order = order[inds + 1]

    return keep


================================================
FILE: lib/nms/setup.py
================================================
# --------------------------------------------------------
# Fast R-CNN
# Copyright (c) 2015 Microsoft
# Licensed under The MIT License [see LICENSE for details]
# Written by Ross Girshick
# --------------------------------------------------------

import os
from os.path import join as pjoin
from setuptools import setup
from distutils.extension import Extension
from Cython.Distutils import build_ext
import subprocess
import numpy as np

def find_in_path(name, path):
    "Find a file in a search path"
    # Adapted fom
    # http://code.activestate.com/recipes/52224-find-a-file-given-a-search-path/
    for dir in path.split(os.pathsep):
        binpath = pjoin(dir, name)
        if os.path.exists(binpath):
            return os.path.abspath(binpath)
    return None


def locate_cuda():
    """Locate the CUDA environment on the system

    Returns a dict with keys 'home', 'nvcc', 'include', and 'lib64'
    and values giving the absolute path to each directory.

    Starts by looking for the CUDAHOME env variable. If not found, everything
    is based on finding 'nvcc' in the PATH.
    """

    # first check if the CUDAHOME env variable is in use
    if 'CUDAHOME' in os.environ:
        home = os.environ['CUDAHOME']
        nvcc = pjoin(home, 'bin', 'nvcc')
    else:
        # otherwise, search the PATH for NVCC
        default_path = pjoin(os.sep, 'usr', 'local', 'cuda', 'bin')
        nvcc = find_in_path('nvcc', os.environ['PATH'] + os.pathsep + default_path)
        if nvcc is None:
            raise EnvironmentError('The nvcc binary could not be '
                'located in your $PATH. Either add it to your path, or set $CUDAHOME')
        home = os.path.dirname(os.path.dirname(nvcc))

    cudaconfig = {'home':home, 'nvcc':nvcc,
                  'include': pjoin(home, 'include'),
                  'lib64': pjoin(home, 'lib64')}
    for k, v in cudaconfig.items():
        if not os.path.exists(v):
            raise EnvironmentError('The CUDA %s path could not be located in %s' % (k, v))

    return cudaconfig
CUDA = locate_cuda()


# Obtain the numpy include directory.  This logic works across numpy versions.
try:
    numpy_include = np.get_include()
except AttributeError:
    numpy_include = np.get_numpy_include()

def customize_compiler_for_nvcc(self):
    """inject deep into distutils to customize how the dispatch
    to gcc/nvcc works.

    If you subclass UnixCCompiler, it's not trivial to get your subclass
    injected in, and still have the right customizations (i.e.
    distutils.sysconfig.customize_compiler) run on it. So instead of going
    the OO route, I have this. Note, it's kindof like a wierd functional
    subclassing going on."""

    # tell the compiler it can processes .cu
    self.src_extensions.append('.cu')

    # save references to the default compiler_so and _comple methods
    default_compiler_so = self.compiler_so
    super = self._compile

    # now redefine the _compile method. This gets executed for each
    # object but distutils doesn't have the ability to change compilers
    # based on source extension: we add it.
    def _compile(obj, src, ext, cc_args, extra_postargs, pp_opts):
        if os.path.splitext(src)[1] == '.cu':
            # use the cuda for .cu files
            self.set_executable('compiler_so', CUDA['nvcc'])
            # use only a subset of the extra_postargs, which are 1-1 translated
            # from the extra_compile_args in the Extension class
            postargs = extra_postargs['nvcc']
        else:
            postargs = extra_postargs['gcc']

        super(obj, src, ext, cc_args, postargs, pp_opts)
        # reset the default compiler_so, which we might have changed for cuda
        self.compiler_so = default_compiler_so

    # inject our redefined _compile method into the class
    self._compile = _compile


# run the customize_compiler
class custom_build_ext(build_ext):
    def build_extensions(self):
        customize_compiler_for_nvcc(self.compiler)
        build_ext.build_extensions(self)


ext_modules = [
    Extension(
        "cpu_nms",
        ["cpu_nms.pyx"],
        extra_compile_args={'gcc': ["-Wno-cpp", "-Wno-unused-function"]},
        include_dirs = [numpy_include]
    ),
    Extension('gpu_nms',
        ['nms_kernel.cu', 'gpu_nms.pyx'],
        library_dirs=[CUDA['lib64']],
        libraries=['cudart'],
        language='c++',
        runtime_library_dirs=[CUDA['lib64']],
        # this syntax is specific to this build system
        # we're only going to use certain compiler args with nvcc and not with
        # gcc the implementation of this trick is in customize_compiler() below
        extra_compile_args={'gcc': ["-Wno-unused-function"],
                            'nvcc': ['-arch=sm_35',
                                     '--ptxas-options=-v',
                                     '-c',
                                     '--compiler-options',
                                     "'-fPIC'"]},
        include_dirs = [numpy_include, CUDA['include']]
    ),

]

setup(
    name='fast_rcnn',
    ext_modules=ext_modules,
    # inject our custom trigger
    cmdclass={'build_ext': custom_build_ext},
)


================================================
FILE: lib/rpn_util.py
================================================
"""
This file is meant to contain functions which are
specific to region proposal networks.
"""

import matplotlib.pyplot as plt
import subprocess
import torch
import math
import re
import gc

from lib.util import *
from lib.core import *
from lib.augmentations import *
from lib.nms.gpu_nms import gpu_nms
import torch.nn.functional as F

from copy import deepcopy


def generate_anchors(conf, imdb, cache_folder):
    """
    Generates the anchors according to the configuration and
    (optionally) based on the imdb properties.
    """

    # use cache?
    if (cache_folder is not None) and os.path.exists(os.path.join(cache_folder, 'anchors.pkl')):

        anchors = pickle_read(os.path.join(cache_folder, 'anchors.pkl'))

    # generate anchors
    else:

        anchors = np.zeros([len(conf.anchor_scales)*len(conf.anchor_ratios), 4], dtype=np.float32)

        aind = 0

        # compute simple anchors based on scale/ratios
        for scale in conf.anchor_scales:

            for ratio in conf.anchor_ratios:

                h = scale
                w = scale*ratio

                anchors[aind, 0:4] = anchor_center(w, h, conf.feat_stride)
                aind += 1


        # optionally cluster anchors
        if conf.cluster_anchors:
            anchors = cluster_anchors(conf.feat_stride, anchors, conf.test_scale, imdb, conf.lbls,
                                      conf.ilbls, conf.anchor_ratios, conf.min_gt_vis, conf.min_gt_h,
                                      conf.max_gt_h, conf.even_anchors, conf.expand_anchors)


        # has 3d? then need to compute stats for each new dimension
        # presuming that anchors are initialized in "2d"
        elif conf.has_3d:

            # compute the default stats for each anchor
            normalized_gts = []

            # check all images
            for imind, imobj in enumerate(imdb):

                # has ground truths?
                if len(imobj.gts) > 0:

                    scale = imobj.scale * conf.test_scale / imobj.imH

                    # determine ignores
                    igns, rmvs = determine_ignores(imobj.gts, conf.lbls, conf.ilbls, conf.min_gt_vis,
                                                   conf.min_gt_h, np.inf, scale)

                    # accumulate boxes
                    gts_all = bbXYWH2Coords(np.array([gt.bbox_full * scale for gt in imobj.gts]))
                    gts_val = gts_all[(rmvs == False) & (igns == False), :]

                    gts_3d = np.array([gt.bbox_3d for gt in imobj.gts])
                    gts_3d = gts_3d[(rmvs == False) & (igns == False), :]

                    if gts_val.shape[0] > 0:

                        # center all 2D ground truths
                        for gtind in range(0, gts_val.shape[0]):
                            w = gts_val[gtind, 2] - gts_val[gtind, 0] + 1
                            h = gts_val[gtind, 3] - gts_val[gtind, 1] + 1

                            gts_val[gtind, 0:4] = anchor_center(w, h, conf.feat_stride)

                    if gts_val.shape[0] > 0:
                        normalized_gts += np.concatenate((gts_val, gts_3d), axis=1).tolist()

            # convert to np
            normalized_gts = np.array(normalized_gts)

            # expand dimensions
            anchors = np.concatenate((anchors, np.zeros([anchors.shape[0], 5])), axis=1)

            # bbox_3d order --> [cx3d, cy3d, cz3d, w3d, h3d, l3d, rotY]
            anchors_z3d = [[] for x in range(anchors.shape[0])]
            anchors_w3d = [[] for x in range(anchors.shape[0])]
            anchors_h3d = [[] for x in range(anchors.shape[0])]
            anchors_l3d = [[] for x in range(anchors.shape[0])]
            anchors_rotY = [[] for x in range(anchors.shape[0])]

            # find best matches for each ground truth
            ols = iou(anchors[:, 0:4], normalized_gts[:, 0:4])
            gt_target_ols = np.amax(ols, axis=0)
            gt_target_anchor = np.argmax(ols, axis=0)

            # assign each box to an anchor
            for gtind, gt in enumerate(normalized_gts):

                anum = gt_target_anchor[gtind]

                if gt_target_ols[gtind] > 0.2:
                    anchors_z3d[anum].append(gt[6])
                    anchors_w3d[anum].append(gt[7])
                    anchors_h3d[anum].append(gt[8])
                    anchors_l3d[anum].append(gt[9])
                    anchors_rotY[anum].append(gt[10])

            # compute global means
            anchors_z3d_gl = np.empty(0)
            anchors_w3d_gl = np.empty(0)
            anchors_h3d_gl = np.empty(0)
            anchors_l3d_gl = np.empty(0)
            anchors_rotY_gl = np.empty(0)

            # update anchors
            for aind in range(0, anchors.shape[0]):

                if len(np.array(anchors_z3d[aind])) > 0:

                    if conf.has_3d:

                        anchors_z3d_gl = np.hstack((anchors_z3d_gl, np.array(anchors_z3d[aind])))
                        anchors_w3d_gl = np.hstack((anchors_w3d_gl, np.array(anchors_w3d[aind])))
                        anchors_h3d_gl = np.hstack((anchors_h3d_gl, np.array(anchors_h3d[aind])))
                        anchors_l3d_gl = np.hstack((anchors_l3d_gl, np.array(anchors_l3d[aind])))
                        anchors_rotY_gl = np.hstack((anchors_rotY_gl, np.array(anchors_rotY[aind])))

                        anchors[aind, 4] = np.mean(np.array(anchors_z3d[aind]))
                        anchors[aind, 5] = np.mean(np.array(anchors_w3d[aind]))
                        anchors[aind, 6] = np.mean(np.array(anchors_h3d[aind]))
                        anchors[aind, 7] = np.mean(np.array(anchors_l3d[aind]))
                        anchors[aind, 8] = np.mean(np.array(anchors_rotY[aind]))

                else:
                    raise ValueError('Non-used anchor #{} found'.format(aind))

        if (cache_folder is not None):
            pickle_write(os.path.join(cache_folder, 'anchors.pkl'), anchors)

    conf.anchors = anchors


def anchor_center(w, h, stride):
    """
    Centers an anchor based on a stride and the anchor shape (w, h).

    center ground truths with steps of half stride
    hence box 0 is centered at (7.5, 7.5) rather than (0, 0)
    for a feature stride of 16 px.
    """

    anchor = np.zeros([4], dtype=np.float32)

    anchor[0] = -w / 2 + (stride - 1) / 2
    anchor[1] = -h / 2 + (stride - 1) / 2
    anchor[2] = w / 2 + (stride - 1) / 2
    anchor[3] = h / 2 + (stride - 1) / 2

    return anchor


def cluster_anchors(feat_stride, anchors, test_scale, imdb, lbls, ilbls, anchor_ratios, min_gt_vis=0.99,
                    min_gt_h=0, max_gt_h=10e10, even_anchor_distribution=False, expand_anchors=False,
                    expand_stop_dt=0.0025):
    """
    Clusters the anchors based on the imdb boxes (in 2D and/or 3D).

    Generally, this method does a custom k-means clustering using 2D IoU
    as a distance metric.
    """

    normalized_gts = []

    # keep track if using 3d
    has_3d = False

    # check all images
    for imind, imobj in enumerate(imdb):

        # has ground truths?
        if len(imobj.gts) > 0:

            scale = imobj.scale * test_scale / imobj.imH

            # determine ignores
            igns, rmvs = determine_ignores(imobj.gts, lbls, ilbls, min_gt_vis, min_gt_h, np.inf, scale)

            # check for 3d box
            has_3d = 'bbox_3d' in imobj.gts[0]

            # accumulate boxes
            gts_all = bbXYWH2Coords(np.array([gt.bbox_full * scale for gt in imobj.gts]))
            gts_val = gts_all[(rmvs == False) & (igns == False), :]

            if has_3d:
                gts_3d = np.array([gt.bbox_3d for gt in imobj.gts])
                gts_3d = gts_3d[(rmvs == False) & (igns == False), :]

            if gts_val.shape[0] > 0:

                # center all 2D ground truths
                for gtind in range(0, gts_val.shape[0]):

                    w = gts_val[gtind, 2] - gts_val[gtind, 0] + 1
                    h = gts_val[gtind, 3] - gts_val[gtind, 1] + 1

                    gts_val[gtind, 0:4] = anchor_center(w, h, feat_stride)

            if gts_val.shape[0] > 0:

                # add normalized gts given 3d or 2d boxes
                if has_3d: normalized_gts += np.concatenate((gts_val, gts_3d), axis=1).tolist()
                else: normalized_gts += gts_val.tolist()


    # convert to np
    normalized_gts = np.array(normalized_gts)

    # sort by height
    sorted_inds = np.argsort((normalized_gts[:, 3] - normalized_gts[:, 1] + 1))
    normalized_gts = normalized_gts[sorted_inds, :]

    min_h = normalized_gts[0, 3] - normalized_gts[0, 1] + 1
    max_h = normalized_gts[-1, 3] - normalized_gts[-1, 1] + 1

    # for 3d, expand dimensions
    if has_3d: anchors = np.concatenate((anchors, np.zeros([anchors.shape[0], 5])), axis=1)

    # init expand
    best_anchors = anchors
    expand_last_iou = 0
    expand_dif = 1
    best_iou = 0
    best_cov = 0

    while np.round(expand_dif, 5) > expand_stop_dt:

        # init cluster
        max_rounds = 1000
        round = 0
        last_iou = 0
        dif = 1

        if even_anchor_distribution:

            sample_num = int(np.floor(normalized_gts.shape[0] / anchors.shape[0]))

            # evenly distribute the anchors
            for aind in range(0, anchors.shape[0]):

                x1 = normalized_gts[aind * sample_num:(aind * sample_num + sample_num), 0]
                y1 = normalized_gts[aind * sample_num:(aind * sample_num + sample_num), 1]
                x2 = normalized_gts[aind * sample_num:(aind * sample_num + sample_num), 2]
                y2 = normalized_gts[aind * sample_num:(aind * sample_num + sample_num), 3]

                w = np.mean(x2 - x1 + 1)
                h = np.mean(y2 - y1 + 1)

                anchors[aind, 0:4] = anchor_center(w, h, feat_stride)

        else:

            base = ((max_gt_h) / (min_gt_h)) ** (1 / (anchors.shape[0] - 1))
            anchor_scales = np.array([(min_gt_h) * (base ** i) for i in range(0, anchors.shape[0])])

            aind = 0

            # compute new anchors
            for scale in anchor_scales:

                for ratio in anchor_ratios:

                    h = scale
                    w = scale * ratio

                    anchors[aind, 0:4] = anchor_center(w, h, feat_stride)

                    aind += 1

        while round < max_rounds and dif > -0.0:

            # make empty arrays for each anchor
            anchors_h = [[] for x in range(anchors.shape[0])]
            anchors_w = [[] for x in range(anchors.shape[0])]

            if has_3d:

                # bbox_3d order --> [cx3d, cy3d, cz3d, w3d, h3d, l3d, rotY]
                anchors_z3d = [[] for x in range(anchors.shape[0])]
                anchors_w3d = [[] for x in range(anchors.shape[0])]
                anchors_h3d = [[] for x in range(anchors.shape[0])]
                anchors_l3d = [[] for x in range(anchors.shape[0])]
                anchors_rotY = [[] for x in range(anchors.shape[0])]

            round_ious = []

            # find best matches for each ground truth
            ols = iou(anchors[:, 0:4], normalized_gts[:, 0:4])
            gt_target_ols = np.amax(ols, axis=0)
            gt_target_anchor = np.argmax(ols, axis=0)

            # assign each box to an anchor
            for gtind, gt in enumerate(normalized_gts):

                anum = gt_target_anchor[gtind]

                w = gt[2] - gt[0] + 1
                h = gt[3] - gt[1] + 1

                anchors_h[anum].append(h)
                anchors_w[anum].append(w)

                if has_3d:
                    anchors_z3d[anum].append(gt[6])
                    anchors_w3d[anum].append(gt[7])
                    anchors_h3d[anum].append(gt[8])
                    anchors_l3d[anum].append(gt[9])
                    anchors_rotY[anum].append(gt[10])

                round_ious.append(gt_target_ols[gtind])

            # compute current iou
            cur_iou = np.mean(np.array(round_ious))

            # update anchors
            for aind in range(0, anchors.shape[0]):

                # compute mean h/w
                if len(np.array(anchors_h[aind])) > 0:

                    mean_h = np.mean(np.array(anchors_h[aind]))
                    mean_w = np.mean(np.array(anchors_w[aind]))

                    anchors[aind, 0:4] = anchor_center(mean_w, mean_h, feat_stride)

                    if has_3d:
                        anchors[aind, 4] = np.mean(np.array(anchors_z3d[aind]))
                        anchors[aind, 5] = np.mean(np.array(anchors_w3d[aind]))
                        anchors[aind, 6] = np.mean(np.array(anchors_h3d[aind]))
                        anchors[aind, 7] = np.mean(np.array(anchors_l3d[aind]))
                        anchors[aind, 8] = np.mean(np.array(anchors_rotY[aind]))

                else:

                    # anchor not used
                    anchors[aind, :] = 0

            anchors = np.nan_to_num(anchors)
            valid_anchors = np.invert(np.all(anchors == 0, axis=1))

            # redistribute non-valid anchors
            valid_anchors_inds = np.flatnonzero(valid_anchors)

            # determine most heavy anchors (to be split up)
            valid_multi = np.array([len(x) for x in anchors_h])
            valid_multi = valid_multi[valid_anchors_inds]
            valid_multi = valid_multi / np.sum(valid_multi)

            # store best configuration
            if cur_iou > best_iou:
                best_iou = cur_iou
                best_anchors = anchors[valid_anchors, :]
                best_cov = np.mean(np.array(round_ious) > 0.5)

            # add random new anchors for any not used
            for aind in range(0, anchors.shape[0]):

                # make a new anchor
                if not valid_anchors[aind]:
                    randomness = 0.5
                    multi = randomness*np.random.rand(len(valid_anchors_inds))
                    multi += valid_multi
                    multi /= np.sum(multi)
                    anchors[aind, :] = np.dot(anchors[valid_anchors_inds, :].T, multi.T)


            if not all(valid_anchors):
                logging.info('warning: round {} some anchors not used during clustering'.format(round))

            dif = cur_iou - last_iou
            last_iou = cur_iou

            round += 1

        logging.info('anchors={}, rounds={}, mean_iou={:.4f}, gt_coverage={:.4f}'.format(anchors.shape[0], round,
                                                                                         best_iou, best_cov))

        expand_dif = best_iou - expand_last_iou
        expand_last_iou = best_iou

        # expand anchors to next size
        if anchors.shape[0] < expand_anchors and expand_dif > expand_stop_dt:

            # append blank anchor
            if has_3d: anchors = np.vstack((anchors, [0, 0, 0, 0, 0, 0, 0, 0 ,0]))
            else: anchors = np.vstack((anchors, [0, 0, 0, 0]))

        # force stop
        else: expand_dif = -1

    logging.info('final_iou={:.4f}, final_coverage={:.4f}'.format(best_iou, best_cov))

    return best_anchors


def compute_targets(gts_val, gts_ign, box_lbls, rois, fg_thresh, ign_thresh, bg_thresh_lo, bg_thresh_hi, best_thresh,
                    gts_3d=None, anchors=[], tracker=[]):
    """
    Computes the bbox targets of a set of rois and a set
    of ground truth boxes, provided various ignore
    settings in configuration
    """

    ols = None
    has_3d = gts_3d is not None

    # init transforms which respectively hold [dx, dy, dw, dh, label]
    # for labels bg=-1, ign=0, fg>=1
    transforms = np.zeros([len(rois), 5], dtype=np.float32)
    raw_gt = np.zeros([len(rois), 5], dtype=np.float32)

    # if 3d, then init other terms after
    if has_3d:
        transforms = np.pad(transforms, [(0, 0), (0, gts_3d.shape[1])], 'constant')
        raw_gt = np.pad(raw_gt, [(0, 0), (0, gts_3d.shape[1])], 'constant')

    if gts_val.shape[0] > 0 or gts_ign.shape[0] > 0:

        if gts_ign.shape[0] > 0:

            # compute overlaps ign
            ols_ign = iou_ign(rois, gts_ign)
            ols_ign_max = np.amax(ols_ign, axis=1)

        else:
            ols_ign_max = np.zeros([rois.shape[0]], dtype=np.float32)

        if gts_val.shape[0] > 0:

            # compute overlaps valid
            ols = iou(rois, gts_val)
            ols_max = np.amax(ols, axis=1)
            targets = np.argmax(ols, axis=1)

            # find best matches for each ground truth
            gt_best_rois = np.argmax(ols, axis=0)
            gt_best_ols = np.amax(ols, axis=0)

            gt_best_rois = gt_best_rois[gt_best_ols >= best_thresh]
            gt_best_ols = gt_best_ols[gt_best_ols >= best_thresh]

            fg_inds = np.flatnonzero(ols_max >= fg_thresh)
            fg_inds = np.concatenate((fg_inds, gt_best_rois))
            fg_inds = np.unique(fg_inds)

            target_rois = gts_val[targets[fg_inds], :]
            src_rois = rois[fg_inds, :]

            if len(fg_inds) > 0:

                # compute 2d transform
                transforms[fg_inds, 0:4] = bbox_transform(src_rois, target_rois)

                raw_gt[fg_inds, 0:4] = target_rois

                if has_3d:

                    tracker = tracker.astype(np.int64)
                    src_3d = anchors[tracker[fg_inds], 4:]
                    target_3d = gts_3d[targets[fg_inds]]

                    raw_gt[fg_inds, 5:] = target_3d

                    # compute 3d transform
                    transforms[fg_inds, 5:] = bbox_transform_3d(src_rois, src_3d, target_3d)


                # store labels
                transforms[fg_inds, 4] = [box_lbls[x] for x in targets[fg_inds]]
                assert (all(transforms[fg_inds, 4] >= 1))

        else:

            ols_max = np.zeros(rois.shape[0], dtype=int)
            fg_inds = np.empty(shape=[0])
            gt_best_rois = np.empty(shape=[0])

        # determine ignores
        ign_inds = np.flatnonzero(ols_ign_max >= ign_thresh)

        # determine background
        bg_inds = np.flatnonzero((ols_max >= bg_thresh_lo) & (ols_max < bg_thresh_hi))

        # subtract fg and igns from background
        bg_inds = np.setdiff1d(bg_inds, ign_inds)
        bg_inds = np.setdiff1d(bg_inds, fg_inds)
        bg_inds = np.setdiff1d(bg_inds, gt_best_rois)

        # mark background
        transforms[bg_inds, 4] = -1

    else:

        # all background
        transforms[:, 4] = -1


    return transforms, ols, raw_gt


def hill_climb(p2, p2_inv, box_2d, x2d, y2d, z2d, w3d, h3d, l3d, ry3d, step_z_init=0, step_r_init=0, z_lim=0, r_lim=0, min_ol_dif=0.0):

    step_z = step_z_init
    step_r = step_r_init

    ol_best, verts_best, _, invalid = test_projection(p2, p2_inv, box_2d, x2d, y2d, z2d, w3d, h3d, l3d, ry3d)

    if invalid: return z2d, ry3d, verts_best

    # attempt to fit z/rot more properly
    while (step_z > z_lim or step_r > r_lim):

        if step_z > z_lim:

            ol_neg, verts_neg, _, invalid_neg = test_projection(p2, p2_inv, box_2d, x2d, y2d, z2d - step_z, w3d, h3d, l3d, ry3d)
            ol_pos, verts_pos, _, invalid_pos = test_projection(p2, p2_inv, box_2d, x2d, y2d, z2d + step_z, w3d, h3d, l3d, ry3d)

            invalid = ((ol_pos - ol_best) <= min_ol_dif) and ((ol_neg - ol_best) <= min_ol_dif)

            if invalid:
                step_z = step_z * 0.5

            elif (ol_pos - ol_best) > min_ol_dif and ol_pos > ol_neg and not invalid_pos:
                z2d += step_z
                ol_best = ol_pos
                verts_best = verts_pos
            elif (ol_neg - ol_best) > min_ol_dif and not invalid_neg:
                z2d -= step_z
                ol_best = ol_neg
                verts_best = verts_neg
            else:
                step_z = step_z * 0.5

        if step_r > r_lim:

            ol_neg, verts_neg, _, invalid_neg = test_projection(p2, p2_inv, box_2d, x2d, y2d, z2d, w3d, h3d, l3d, ry3d - step_r)
            ol_pos, verts_pos, _, invalid_pos = test_projection(p2, p2_inv, box_2d, x2d, y2d, z2d, w3d, h3d, l3d, ry3d + step_r)

            invalid = ((ol_pos - ol_best) <= min_ol_dif) and ((ol_neg - ol_best) <= min_ol_dif)

            if invalid:
                step_r = step_r * 0.5

            elif (ol_pos - ol_best) > min_ol_dif and ol_pos > ol_neg and not invalid_pos:
                ry3d += step_r
                ol_best = ol_pos
                verts_best = verts_pos
            elif (ol_neg - ol_best) > min_ol_dif and not invalid_neg:
                ry3d -= step_r
                ol_best = ol_neg
                verts_best = verts_neg
            else:
                step_r = step_r * 0.5

    while ry3d > math.pi: ry3d -= math.pi * 2
    while ry3d < (-math.pi): ry3d += math.pi * 2

    return z2d, ry3d, verts_best


def clsInd2Name(lbls, ind):
    """
    Converts a cls ind to string name
    """

    if ind>=0 and ind 0:

                scale_factor = imobj.scale * conf.test_scale / imobj.imH
                feat_size = calc_output_size(np.array([imobj.imH, imobj.imW]) * scale_factor, conf.feat_stride)
                rois = locate_anchors(conf.anchors, feat_size, conf.feat_stride)

                # determine ignores
                igns, rmvs = determine_ignores(imobj.gts, conf.lbls, conf.ilbls, conf.min_gt_vis,
                                               conf.min_gt_h, np.inf, scale_factor)

                # accumulate boxes
                gts_all = bbXYWH2Coords(np.array([gt.bbox_full * scale_factor for gt in imobj.gts]))

                # filter out irrelevant cls, and ignore cls
                gts_val = gts_all[(rmvs == False) & (igns == False), :]
                gts_ign = gts_all[(rmvs == False) & (igns == True), :]

                # accumulate labels
                box_lbls = np.array([gt.cls for gt in imobj.gts])
                box_lbls = box_lbls[(rmvs == False) & (igns == False)]
                box_lbls = np.array([clsName2Ind(conf.lbls, cls) for cls in box_lbls])

                if conf.has_3d:

                    # accumulate 3d boxes
                    gts_3d = np.array([gt.bbox_3d for gt in imobj.gts])
                    gts_3d = gts_3d[(rmvs == False) & (igns == False), :]

                    # rescale centers (in 2d)
                    for gtind, gt in enumerate(gts_3d):
                        gts_3d[gtind, 0:2] *= scale_factor

                    # compute transforms for all 3d
                    transforms, _, _= compute_targets(gts_val, gts_ign, box_lbls, rois, conf.fg_thresh, conf.ign_thresh,
                                                    conf.bg_thresh_lo, conf.bg_thresh_hi, conf.best_thresh, gts_3d=gts_3d,
                                                    anchors=conf.anchors, tracker=rois[:, 4])
                else:

                    # compute transforms for 2d
                    transforms, _, _ = compute_targets(gts_val, gts_ign, box_lbls, rois, conf.fg_thresh, conf.ign_thresh,
                                                    conf.bg_thresh_lo, conf.bg_thresh_hi, conf.best_thresh)

                gt_inds = np.flatnonzero(transforms[:, 4] > 0)

                if len(gt_inds) > 0:

                    if conf.has_3d:
                        sums[:, 0:4] += np.sum(transforms[gt_inds, 0:4], axis=0)
                        sums[:, 4:] += np.sum(transforms[gt_inds, 5:12], axis=0)
                    else:
                        sums += np.sum(transforms[gt_inds, 0:4], axis=0)

                    class_counts += len(gt_inds)

        means = sums/class_counts

        logging.info('Computing bbox regression stds..')

        for imobj in imdb:

            if len(imobj.gts) > 0:

                scale_factor = imobj.scale * conf.test_scale / imobj.imH
                feat_size = calc_output_size(np.array([imobj.imH, imobj.imW]) * scale_factor, conf.feat_stride)
                rois = locate_anchors(conf.anchors, feat_size, conf.feat_stride)

                # determine ignores
                igns, rmvs = determine_ignores(imobj.gts, conf.lbls, conf.ilbls, conf.min_gt_vis, conf.min_gt_h, np.inf, scale_factor)

                # accumulate boxes
                gts_all = bbXYWH2Coords(np.array([gt.bbox_full * scale_factor for gt in imobj.gts]))

                # filter out irrelevant cls, and ignore cls
                gts_val = gts_all[(rmvs == False) & (igns == False), :]
                gts_ign = gts_all[(rmvs == False) & (igns == True), :]

                # accumulate labels
                box_lbls = np.array([gt.cls for gt in imobj.gts])
                box_lbls = box_lbls[(rmvs == False) & (igns == False)]
                box_lbls = np.array([clsName2Ind(conf.lbls, cls) for cls in box_lbls])

                if conf.has_3d:

                    # accumulate 3d boxes
                    gts_3d = np.array([gt.bbox_3d for gt in imobj.gts])
                    gts_3d = gts_3d[(rmvs == False) & (igns == False), :]

                    # rescale centers (in 2d)
                    for gtind, gt in enumerate(gts_3d):
                        gts_3d[gtind, 0:2] *= scale_factor

                    # compute transforms for all 3d
                    transforms, _, _ = compute_targets(gts_val, gts_ign, box_lbls, rois, conf.fg_thresh, conf.ign_thresh,
                                                    conf.bg_thresh_lo, conf.bg_thresh_hi, conf.best_thresh, gts_3d=gts_3d,
                                                    anchors=conf.anchors, tracker=rois[:, 4])
                else:

                    # compute transforms for 2d
                    transforms, _, _ = compute_targets(gts_val, gts_ign, box_lbls, rois, conf.fg_thresh, conf.ign_thresh,
                                                    conf.bg_thresh_lo, conf.bg_thresh_hi, conf.best_thresh)

                gt_inds = np.flatnonzero(transforms[:, 4] > 0)

                if len(gt_inds) > 0:

                    if conf.has_3d:
                        squared_sums[:, 0:4] += np.sum(np.power(transforms[gt_inds, 0:4] - means[:, 0:4], 2), axis=0)
                        squared_sums[:, 4:] += np.sum(np.power(transforms[gt_inds, 5:12] - means[:, 4:], 2), axis=0)

                    else:
                        squared_sums += np.sum(np.power(transforms[gt_inds, 0:4] - means, 2), axis=0)


        stds = np.sqrt((squared_sums/class_counts))

        means = means.astype(float)
        stds = stds.astype(float)

        logging.info('used {:d} boxes with avg std {:.4f}'.format(int(class_counts[0]), np.mean(stds)))

        if (cache_folder is not None):
            pickle_write(os.path.join(cache_folder, 'bbox_means.pkl'), means)
            pickle_write(os.path.join(cache_folder, 'bbox_stds.pkl'), stds)

    conf.bbox_means = means
    conf.bbox_stds = stds


def flatten_tensor(input):
    """
    Flattens and permutes a tensor from size
    [B x C x W x H] --> [B x (W x H) x C]
    """

    bsize = input.shape[0]
    csize = input.shape[1]

    return input.permute(0, 2, 3, 1).contiguous().view(bsize, -1, csize)


def unflatten_tensor(input, feat_size, anchors):
    """
    Un-flattens and un-permutes a tensor from size
    [B x (W x H) x C] --> [B x C x W x H]
    """

    bsize = input.shape[0]

    if len(input.shape) >= 3: csize = input.shape[2]
    else: csize = 1

    input = input.view(bsize, feat_size[0] * anchors.shape[0], feat_size[1], csize)
    input = input.permute(0, 3, 1, 2).contiguous()

    return input


def project_3d(p2, x3d, y3d, z3d, w3d, h3d, l3d, ry3d, return_3d=False):
    """
    Projects a 3D box into 2D vertices

    Args:
        p2 (nparray): projection matrix of size 4x3
        x3d: x-coordinate of center of object
        y3d: y-coordinate of center of object
        z3d: z-cordinate of center of object
        w3d: width of object
        h3d: height of object
        l3d: length of object
        ry3d: rotation w.r.t y-axis
    """

    # compute rotational matrix around yaw axis
    R = np.array([[+math.cos(ry3d), 0, +math.sin(ry3d)],
                  [0, 1, 0],
                  [-math.sin(ry3d), 0, +math.cos(ry3d)]])

    # 3D bounding box corners
    x_corners = np.array([0, l3d, l3d, l3d, l3d,   0,   0,   0])
    y_corners = np.array([0, 0,   h3d, h3d,   0,   0, h3d, h3d])
    z_corners = np.array([0, 0,     0, w3d, w3d, w3d, w3d,   0])

    x_corners += -l3d / 2
    y_corners += -h3d / 2
    z_corners += -w3d / 2

    # bounding box in object co-ordinate
    corners_3d = np.array([x_corners, y_corners, z_corners])

    # rotate
    corners_3d = R.dot(corners_3d)

    # translate
    corners_3d += np.array([x3d, y3d, z3d]).reshape((3, 1))

    corners_3D_1 = np.vstack((corners_3d, np.ones((corners_3d.shape[-1]))))
    corners_2D = p2.dot(corners_3D_1)
    corners_2D = corners_2D / corners_2D[2]

    bb3d_lines_verts_idx = [0, 1, 2, 3, 4, 5, 6, 7, 0, 5, 4, 1, 2, 7, 6, 3]

    verts3d = (corners_2D[:, bb3d_lines_verts_idx][:2]).astype(float).T

    if return_3d:
        return verts3d, corners_3d
    else:
        return verts3d


def project_3d_corners(p2, x3d, y3d, z3d, w3d, h3d, l3d, ry3d):
    """
    Projects a 3D box into 2D vertices

    Args:
        p2 (nparray): projection matrix of size 4x3
        x3d: x-coordinate of center of object
        y3d: y-coordinate of center of object
        z3d: z-cordinate of center of object
        w3d: width of object
        h3d: height of object
        l3d: length of object
        ry3d: rotation w.r.t y-axis
    """

    # compute rotational matrix around yaw axis
    R = np.array([[+math.cos(ry3d), 0, +math.sin(ry3d)],
                  [0, 1, 0],
                  [-math.sin(ry3d), 0, +math.cos(ry3d)]])

    # 3D bounding box corners
    x_corners = np.array([0, l3d, l3d, l3d, l3d, 0, 0, 0])
    y_corners = np.array([0, 0, h3d, h3d, 0, 0, h3d, h3d])
    z_corners = np.array([0, 0, 0, w3d, w3d, w3d, w3d, 0])

    '''
    order of vertices
    0  upper back right
    1  upper front right
    2  bottom front right
    3  bottom front left
    4  upper front left
    5  upper back left
    6  bottom back left
    7  bottom back right
    
    bot_inds = np.array([2,3,6,7])
    top_inds = np.array([0,1,4,5])
    '''

    x_corners += -l3d / 2
    y_corners += -h3d / 2
    z_corners += -w3d / 2

    # bounding box in object co-ordinate
    corners_3d = np.array([x_corners, y_corners, z_corners])

    # rotate
    corners_3d = R.dot(corners_3d)

    # translate
    corners_3d += np.array([x3d, y3d, z3d]).reshape((3, 1))

    corners_3D_1 = np.vstack((corners_3d, np.ones((corners_3d.shape[-1]))))
    corners_2D = p2.dot(corners_3D_1)
    corners_2D = corners_2D / corners_2D[2]

    return corners_2D, corners_3D_1


def bbCoords2XYWH(box):
    """
    Convert from [x1, y1, x2, y2] to [x,y,w,h]
    """

    if box.shape[0] == 0: return np.empty([0, 4], dtype=float)

    box[:, 2] -= box[:, 0] + 1
    box[:, 3] -= box[:, 1] + 1

    return box


def bbXYWH2Coords(box):
    """
    Convert from [x,y,w,h] to [x1, y1, x2, y2]
    """

    if box.shape[0] == 0: return np.empty([0,4], dtype=float)

    box[:, 2] += box[:, 0] - 1
    box[:, 3] += box[:, 1] - 1

    return box


def bbox_transform_3d(ex_rois_2d, ex_rois_3d, gt_rois):
    """
    Compute the bbox target transforms in 3D.

    Translations are done as simple difference, whereas others involving
    scaling are done in log space (hence, log(1) = 0, log(0.8) < 0 and
    log(1.2) > 0 which is a good property).
    """

    ex_widths = ex_rois_2d[:, 2] - ex_rois_2d[:, 0] + 1.0
    ex_heights = ex_rois_2d[:, 3] - ex_rois_2d[:, 1] + 1.0
    ex_ctr_x = ex_rois_2d[:, 0] + 0.5 * (ex_widths - 1)
    ex_ctr_y = ex_rois_2d[:, 1] + 0.5 * (ex_heights - 1)

    gt_ctr_x = gt_rois[:, 0]
    gt_ctr_y = gt_rois[:, 1]

    targets_dx = (gt_ctr_x - ex_ctr_x) / ex_widths
    targets_dy = (gt_ctr_y - ex_ctr_y) / ex_heights

    delta_z = gt_rois[:, 2] - ex_rois_3d[:, 0]
    scale_w = np.log(gt_rois[:, 3] / ex_rois_3d[:, 1])
    scale_h = np.log(gt_rois[:, 4] / ex_rois_3d[:, 2])
    scale_l = np.log(gt_rois[:, 5] / ex_rois_3d[:, 3])
    deltaRotY = gt_rois[:, 6] - ex_rois_3d[:, 4]

    targets = np.vstack((targets_dx, targets_dy, delta_z, scale_w, scale_h, scale_l, deltaRotY)).transpose()
    targets = np.hstack((targets, gt_rois[:, 7:]))


    return targets


def bbox_transform(ex_rois, gt_rois):
    """
    Compute the bbox target transforms in 2D.

    Translations are done as simple difference, whereas others involving
    scaling are done in log space (hence, log(1) = 0, log(0.8) < 0 and
    log(1.2) > 0 which is a good property).
    """

    ex_widths = ex_rois[:, 2] - ex_rois[:, 0] + 1.0
    ex_heights = ex_rois[:, 3] - ex_rois[:, 1] + 1.0
    ex_ctr_x = ex_rois[:, 0] + 0.5 * (ex_widths - 1)
    ex_ctr_y = ex_rois[:, 1] + 0.5 * (ex_heights - 1)

    gt_widths = gt_rois[:, 2] - gt_rois[:, 0] + 1.0
    gt_heights = gt_rois[:, 3] - gt_rois[:, 1] + 1.0
    gt_ctr_x = gt_rois[:, 0] + 0.5 * (gt_widths - 1.0)
    gt_ctr_y = gt_rois[:, 1] + 0.5 * (gt_heights - 1.0)

    targets_dx = (gt_ctr_x - ex_ctr_x) / ex_widths
    targets_dy = (gt_ctr_y - ex_ctr_y) / ex_heights
    targets_dw = np.log(gt_widths / ex_widths)
    targets_dh = np.log(gt_heights / ex_heights)

    targets = np.vstack((targets_dx, targets_dy, targets_dw, targets_dh)).transpose()

    return targets


def bbox_transform_inv(boxes, deltas, means=None, stds=None):
    """
    Compute the bbox target transforms in 3D.

    Translations are done as simple difference, whereas others involving
    scaling are done in log space (hence, log(1) = 0, log(0.8) < 0 and
    log(1.2) > 0 which is a good property).
    """

    if boxes.shape[0] == 0:
        return np.zeros((0, deltas.shape[1]), dtype=deltas.dtype)

    # boxes = boxes.astype(deltas.dtype, copy=False)

    widths = boxes[:, 2] - boxes[:, 0] + 1.0
    heights = boxes[:, 3] - boxes[:, 1] + 1.0
    ctr_x = boxes[:, 0] + 0.5 * widths
    ctr_y = boxes[:, 1] + 0.5 * heights

    dx = deltas[:, 0]
    dy = deltas[:, 1]
    dw = deltas[:, 2]
    dh = deltas[:, 3]

    if stds is not None:
        dx *= stds[0]
        dy *= stds[1]
        dw *= stds[2]
        dh *= stds[3]

    if means is not None:
        dx += means[0]
        dy += means[1]
        dw += means[2]
        dh += means[3]

    pred_ctr_x = dx * widths + ctr_x
    pred_ctr_y = dy * heights + ctr_y
    pred_w = torch.exp(dw) * widths
    pred_h = torch.exp(dh) * heights

    pred_boxes = torch.zeros(deltas.shape)

    # x1, y1, x2, y2
    pred_boxes[:, 0] = pred_ctr_x - 0.5 * pred_w
    pred_boxes[:, 1] = pred_ctr_y - 0.5 * pred_h
    pred_boxes[:, 2] = pred_ctr_x + 0.5 * pred_w
    pred_boxes[:, 3] = pred_ctr_y + 0.5 * pred_h

    return pred_boxes


def determine_ignores(gts, lbls, ilbls, min_gt_vis=0.99, min_gt_h=0, max_gt_h=10e10, scale_factor=1):
    """
    Given various configuration settings, determine which ground truths
    are ignored and which are relevant.
    """

    igns = np.zeros([len(gts)], dtype=bool)
    rmvs = np.zeros([len(gts)], dtype=bool)

    for gtind, gt in enumerate(gts):

        ign = gt.ign
        ign |= gt.visibility < min_gt_vis
        ign |= gt.bbox_full[3] * scale_factor < min_gt_h
        ign |= gt.bbox_full[3] * scale_factor > max_gt_h
        ign |= gt.cls in ilbls

        rmv = not gt.cls in (lbls + ilbls)

        igns[gtind] = ign
        rmvs[gtind] = rmv

    return igns, rmvs


def locate_anchors(anchors, feat_size, stride, convert_tensor=False):
    """
    Spreads each anchor shape across a feature map of size feat_size spaced by a known stride.

    Args:
        anchors (ndarray): N x 4 array describing [x1, y1, x2, y2] displacements for N anchors
        feat_size (ndarray): the downsampled resolution W x H to spread anchors across
        stride (int): stride of a network
        convert_tensor (bool, optional): whether to return a torch tensor, otherwise ndarray [default=False]

    Returns:
         ndarray: 2D array = [(W x H) x 5] array consisting of [x1, y1, x2, y2, anchor_index]
    """

    # compute rois
    shift_x = np.array(range(0, feat_size[1], 1)) * float(stride)
    shift_y = np.array(range(0, feat_size[0], 1)) * float(stride)
    [shift_x, shift_y] = np.meshgrid(shift_x, shift_y)

    rois = np.expand_dims(anchors[:, 0:4], axis=1)
    shift_x = np.expand_dims(shift_x, axis=0)
    shift_y = np.expand_dims(shift_y, axis=0)

    shift_x1 = shift_x + np.expand_dims(rois[:, :, 0], axis=2)
    shift_y1 = shift_y + np.expand_dims(rois[:, :, 1], axis=2)
    shift_x2 = shift_x + np.expand_dims(rois[:, :, 2], axis=2)
    shift_y2 = shift_y + np.expand_dims(rois[:, :, 3], axis=2)

    # compute anchor tracker
    anchor_tracker = np.zeros(shift_x1.shape, dtype=float)
    for aind in range(0, rois.shape[0]): anchor_tracker[aind, :, :] = aind

    stack_size = feat_size[0] * anchors.shape[0]

    # torch and numpy MAY have different calls for reshaping, although
    # it is not very important which is used as long as it is CONSISTENT
    if convert_tensor:

        # important to unroll according to pytorch
        shift_x1 = torch.from_numpy(shift_x1).view(1, stack_size, feat_size[1])
        shift_y1 = torch.from_numpy(shift_y1).view(1, stack_size, feat_size[1])
        shift_x2 = torch.from_numpy(shift_x2).view(1, stack_size, feat_size[1])
        shift_y2 = torch.from_numpy(shift_y2).view(1, stack_size, feat_size[1])
        anchor_tracker = torch.from_numpy(anchor_tracker).view(1, stack_size, feat_size[1])

        shift_x1.requires_grad = False
        shift_y1.requires_grad = False
        shift_x2.requires_grad = False
        shift_y2.requires_grad = False
        anchor_tracker.requires_grad = False

        shift_x1 = shift_x1.permute(1, 2, 0).contiguous().view(-1, 1)
        shift_y1 = shift_y1.permute(1, 2, 0).contiguous().view(-1, 1)
        shift_x2 = shift_x2.permute(1, 2, 0).contiguous().view(-1, 1)
        shift_y2 = shift_y2.permute(1, 2, 0).contiguous().view(-1, 1)
        anchor_tracker = anchor_tracker.permute(1, 2, 0).contiguous().view(-1, 1)

        rois = torch.cat((shift_x1, shift_y1, shift_x2, shift_y2, anchor_tracker), 1)

    else:

        shift_x1 = shift_x1.reshape(1, stack_size, feat_size[1]).reshape(-1, 1)
        shift_y1 = shift_y1.reshape(1, stack_size, feat_size[1]).reshape(-1, 1)
        shift_x2 = shift_x2.reshape(1, stack_size, feat_size[1]).reshape(-1, 1)
        shift_y2 = shift_y2.reshape(1, stack_size, feat_size[1]).reshape(-1, 1)
        anchor_tracker = anchor_tracker.reshape(1, stack_size, feat_size[1]).reshape(-1, 1)

        rois = np.concatenate((shift_x1, shift_y1, shift_x2, shift_y2, anchor_tracker), 1)

    return rois


def calc_output_size(res, stride):
    """
    Approximate the output size of a network

    Args:
        res (ndarray): input resolution
        stride (int): stride of a network

    Returns:
         ndarray: output resolution
    """

    return np.ceil(np.array(res)/stride).astype(int)


def im_detect_3d(im, net, rpn_conf, preprocess, p2, gpu=0, synced=False):
    """
    Object detection in 3D
    """

    imH_orig = im.shape[0]
    imW_orig = im.shape[1]

    im = preprocess(im)

    # move to GPU
    im = torch.from_numpy(im[np.newaxis, :, :, :]).cuda()

    imH = im.shape[2]
    imW = im.shape[3]

    scale_factor = imH / imH_orig

    cls, prob, bbox_2d, bbox_3d, feat_size, rois = net(im)

    # compute feature resolution
    num_anchors = rpn_conf.anchors.shape[0]

    bbox_x = bbox_2d[:, :, 0]
    bbox_y = bbox_2d[:, :, 1]
    bbox_w = bbox_2d[:, :, 2]
    bbox_h = bbox_2d[:, :, 3]

    bbox_x3d = bbox_3d[:, :, 0]
    bbox_y3d = bbox_3d[:, :, 1]
    bbox_z3d = bbox_3d[:, :, 2]
    bbox_w3d = bbox_3d[:, :, 3]
    bbox_h3d = bbox_3d[:, :, 4]
    bbox_l3d = bbox_3d[:, :, 5]
    bbox_ry3d = bbox_3d[:, :, 6]

    # detransform 3d
    bbox_x3d = bbox_x3d * rpn_conf.bbox_stds[:, 4][0] + rpn_conf.bbox_means[:, 4][0]
    bbox_y3d = bbox_y3d * rpn_conf.bbox_stds[:, 5][0] + rpn_conf.bbox_means[:, 5][0]
    bbox_z3d = bbox_z3d * rpn_conf.bbox_stds[:, 6][0] + rpn_conf.bbox_means[:, 6][0]
    bbox_w3d = bbox_w3d * rpn_conf.bbox_stds[:, 7][0] + rpn_conf.bbox_means[:, 7][0]
    bbox_h3d = bbox_h3d * rpn_conf.bbox_stds[:, 8][0] + rpn_conf.bbox_means[:, 8][0]
    bbox_l3d = bbox_l3d * rpn_conf.bbox_stds[:, 9][0] + rpn_conf.bbox_means[:, 9][0]
    bbox_ry3d = bbox_ry3d * rpn_conf.bbox_stds[:, 10][0] + rpn_conf.bbox_means[:, 10][0]

    # find 3d source
    tracker = rois[:, 4].cpu().detach().numpy().astype(np.int64)
    src_3d = torch.from_numpy(rpn_conf.anchors[tracker, 4:]).cuda().type(torch.cuda.FloatTensor)

    #tracker_sca = rois_sca[:, 4].cpu().detach().numpy().astype(np.int64)
    #src_3d_sca = torch.from_numpy(rpn_conf.anchors[tracker_sca, 4:]).cuda().type(torch.cuda.FloatTensor)

    # compute 3d transform
    widths = rois[:, 2] - rois[:, 0] + 1.0
    heights = rois[:, 3] - rois[:, 1] + 1.0
    ctr_x = rois[:, 0] + 0.5 * widths
    ctr_y = rois[:, 1] + 0.5 * heights

    bbox_x3d = bbox_x3d[0, :] * widths + ctr_x
    bbox_y3d = bbox_y3d[0, :] * heights + ctr_y
    bbox_z3d = src_3d[:, 0] + bbox_z3d[0, :]
    bbox_w3d = torch.exp(bbox_w3d[0, :]) * src_3d[:, 1]
    bbox_h3d = torch.exp(bbox_h3d[0, :]) * src_3d[:, 2]
    bbox_l3d = torch.exp(bbox_l3d[0, :]) * src_3d[:, 3]
    bbox_ry3d = src_3d[:, 4] + bbox_ry3d[0, :]

    # bundle
    coords_3d = torch.stack((bbox_x3d, bbox_y3d, bbox_z3d[:bbox_x3d.shape[0]], bbox_w3d[:bbox_x3d.shape[0]], bbox_h3d[:bbox_x3d.shape[0]], bbox_l3d[:bbox_x3d.shape[0]], bbox_ry3d[:bbox_x3d.shape[0]]), dim=1)

    # compile deltas pred
    deltas_2d = torch.cat((bbox_x[0, :, np.newaxis], bbox_y[0, :, np.newaxis], bbox_w[0, :, np.newaxis], bbox_h[0, :, np.newaxis]), dim=1)
    coords_2d = bbox_transform_inv(rois, deltas_2d, means=rpn_conf.bbox_means[0, :], stds=rpn_conf.bbox_stds[0, :])

    # detach onto cpu
    coords_2d = coords_2d.cpu().detach().numpy()
    coords_3d = coords_3d.cpu().detach().numpy()
    prob = prob[0, :, :].cpu().detach().numpy()

    # scale coords
    coords_2d[:, 0:4] /= scale_factor
    coords_3d[:, 0:2] /= scale_factor

    cls_pred = np.argmax(prob[:, 1:], axis=1) + 1
    scores = np.amax(prob[:, 1:], axis=1)

    aboxes = np.hstack((coords_2d, scores[:, np.newaxis]))

    sorted_inds = (-aboxes[:, 4]).argsort()
    original_inds = (sorted_inds).argsort()
    aboxes = aboxes[sorted_inds, :]
    coords_3d = coords_3d[sorted_inds, :]
    cls_pred = cls_pred[sorted_inds]
    tracker = tracker[sorted_inds]

    if synced:

        # nms
        keep_inds = gpu_nms(aboxes[:, 0:5].astype(np.float32), rpn_conf.nms_thres, device_id=gpu)

        # convert to bool
        keep = np.zeros([aboxes.shape[0], 1], dtype=bool)
        keep[keep_inds, :] = True

        # stack the keep array,
        # sync to the original order
        aboxes = np.hstack((aboxes, keep))
        aboxes[original_inds, :]

    else:

        # pre-nms
        cls_pred = cls_pred[0:min(rpn_conf.nms_topN_pre, cls_pred.shape[0])]
        tracker = tracker[0:min(rpn_conf.nms_topN_pre, tracker.shape[0])]
        aboxes = aboxes[0:min(rpn_conf.nms_topN_pre, aboxes.shape[0]), :]
        coords_3d = coords_3d[0:min(rpn_conf.nms_topN_pre, coords_3d.shape[0])]

        # nms
        keep_inds = gpu_nms(aboxes[:, 0:5].astype(np.float32), rpn_conf.nms_thres, device_id=gpu)

        # stack cls prediction
        aboxes = np.hstack((aboxes, cls_pred[:, np.newaxis], coords_3d, tracker[:, np.newaxis]))

        # suppress boxes
        aboxes = aboxes[keep_inds, :]

    # clip boxes
    if rpn_conf.clip_boxes:
        aboxes[:, 0] = np.clip(aboxes[:, 0], 0, imW_orig - 1)
        aboxes[:, 1] = np.clip(aboxes[:, 1], 0, imH_orig - 1)
        aboxes[:, 2] = np.clip(aboxes[:, 2], 0, imW_orig - 1)
        aboxes[:, 3] = np.clip(aboxes[:, 3], 0, imH_orig - 1)

    return aboxes


def get_2D_from_3D(p2, cx3d, cy3d, cz3d, w3d, h3d, l3d, rotY):

    verts3d, corners_3d = project_3d(p2, cx3d, cy3d, cz3d, w3d, h3d, l3d, rotY, return_3d=True)

    # any boxes behind camera plane?
    if np.any(corners_3d[2, :] <= 0):
        ign = True

    else:
        x = min(verts3d[:, 0])
        y = min(verts3d[:, 1])
        x2 = max(verts3d[:, 0])
        y2 = max(verts3d[:, 1])

    return np.array([x, y, x2, y2])


def test_kitti_3d(dataset_test, net, rpn_conf, results_path, test_path, use_log=True):
    """
    Test the KITTI framework for object detection in 3D
    """

    # import read_kitti_cal
    from lib.imdb_util import read_kitti_cal

    imlist = list_files(os.path.join(test_path, dataset_test, 'validation', 'image_2', ''), '*.png')

    preprocess = Preprocess([rpn_conf.test_scale], rpn_conf.image_means, rpn_conf.image_stds)

    # fix paths slightly
    _, test_iter, _ = file_parts(results_path.replace('/data', ''))
    test_iter = test_iter.replace('results_', '')

    # init
    test_start = time()

    for imind, impath in enumerate(imlist):

        im = cv2.imread(impath)

        base_path, name, ext = file_parts(impath)

        # read in calib
        p2 = read_kitti_cal(os.path.join(test_path, dataset_test, 'validation', 'calib', name + '.txt'))
        p2_inv = np.linalg.inv(p2)

        # forward test batch
        aboxes = im_detect_3d(im, net, rpn_conf, preprocess, p2)

        base_path, name, ext = file_parts(impath)

        file = open(os.path.join(results_path, name + '.txt'), 'w')
        text_to_write = ''
        
        for boxind in range(0, min(rpn_conf.nms_topN_post, aboxes.shape[0])):

            box = aboxes[boxind, :]
            score = box[4]
            cls = rpn_conf.lbls[int(box[5] - 1)]

            if score >= 0.75:

                x1 = box[0]
                y1 = box[1]
                x2 = box[2]
                y2 = box[3]
                width = (x2 - x1 + 1)
                height = (y2 - y1 + 1)

                # plot 3D box
                x3d = box[6]
                y3d = box[7]
                z3d = box[8]
                w3d = box[9]
                h3d = box[10]
                l3d = box[11]
                ry3d = box[12]

                # convert alpha into ry3d
                coord3d = np.linalg.inv(p2).dot(np.array([x3d * z3d, y3d * z3d, 1 * z3d, 1]))
                ry3d = convertAlpha2Rot(ry3d, coord3d[2], coord3d[0])

                step_r = 0.3*math.pi
                r_lim = 0.01
                box_2d = np.array([x1, y1, width, height])

                z3d, ry3d, verts_best = hill_climb(p2, p2_inv, box_2d, x3d, y3d, z3d, w3d, h3d, l3d, ry3d, step_r_init=step_r, r_lim=r_lim)

                # predict a more accurate projection
                coord3d = np.linalg.inv(p2).dot(np.array([x3d * z3d, y3d * z3d, 1 * z3d, 1]))
                alpha = convertRot2Alpha(ry3d, coord3d[2], coord3d[0])

                x3d = coord3d[0]
                y3d = coord3d[1]
                z3d = coord3d[2]

                y3d += h3d/2
                
                text_to_write += ('{} -1 -1 {:.6f} {:.6f} {:.6f} {:.6f} {:.6f} {:.6f} {:.6f} {:.6f} {:.6f} {:.6f} {:.6f} '
                           + '{:.6f} {:.6f}\n').format(cls, alpha, x1, y1, x2, y2, h3d, w3d, l3d, x3d, y3d, z3d, ry3d, score)
                           
        file.write(text_to_write)
        file.close()

        # display stats
        if (imind + 1) % 1000 == 0:
            time_str, dt = compute_eta(test_start, imind + 1, len(imlist))

            print_str = 'testing {}/{}, dt: {:0.3f}, eta: {}'.format(imind + 1, len(imlist), dt, time_str)

            if use_log: logging.info(print_str)
            else: print(print_str)


    # evaluate
    script = os.path.join(test_path, dataset_test, 'devkit', 'cpp', 'evaluate_object')
    with open(os.devnull, 'w') as devnull:
        out = subprocess.check_output([script, results_path.replace('/data', '')], stderr=devnull)

    for lbl in rpn_conf.lbls:

        lbl = lbl.lower()

        respath_2d = os.path.join(results_path.replace('/data', ''), 'stats_{}_detection.txt'.format(lbl))
        respath_gr = os.path.join(results_path.replace('/data', ''), 'stats_{}_detection_ground.txt'.format(lbl))
        respath_3d = os.path.join(results_path.replace('/data', ''), 'stats_{}_detection_3d.txt'.format(lbl))

        if os.path.exists(respath_2d):
            easy, mod, hard = parse_kitti_result(respath_2d)

            print_str = 'test_iter {} 2d {} --> easy: {:0.4f}, mod: {:0.4f}, hard: {:0.4f}'.format(test_iter, lbl,
                                                                                                    easy, mod, hard)
            if use_log: logging.info(print_str)
            else: print(print_str)

        if os.path.exists(respath_gr):
            easy, mod, hard = parse_kitti_result(respath_gr)

            print_str = 'test_iter {} gr {} --> easy: {:0.4f}, mod: {:0.4f}, hard: {:0.4f}'.format(test_iter, lbl,
                                                                                                    easy, mod, hard)

            if use_log: logging.info(print_str)
            else: print(print_str)

        if os.path.exists(respath_3d):
            easy, mod, hard = parse_kitti_result(respath_3d)

            print_str = 'test_iter {} 3d {} --> easy: {:0.4f}, mod: {:0.4f}, hard: {:0.4f}'.format(test_iter, lbl,
                                                                                                    easy, mod, hard)

            if use_log: logging.info(print_str)
            else: print(print_str)


def parse_kitti_result(respath):

    text_file = open(respath, 'r')

    acc = np.zeros([3, 41], dtype=float)

    lind = 0
    for line in text_file:

        parsed = re.findall('([\d]+\.?[\d]*)', line)

        for i, num in enumerate(parsed):
            acc[lind, i] = float(num)

        lind += 1

    text_file.close()

    easy = np.mean(acc[0, 0:41:4])
    mod = np.mean(acc[1, 0:41:4])
    hard = np.mean(acc[2, 0:41:4])

    #easy = np.mean(acc[0, 1:41:1])
    #mod = np.mean(acc[1, 1:41:1])
    #hard = np.mean(acc[2, 1:41:1])

    return easy, mod, hard


def parse_kitti_vo(respath):

    text_file = open(respath, 'r')

    acc = np.zeros([1, 2], dtype=float)

    lind = 0
    for line in text_file:

        parsed = re.findall('([\d]+\.?[\d]*)', line)

        for i, num in enumerate(parsed):
            acc[lind, i] = float(num)

        lind += 1

    text_file.close()

    t = acc[0, 0]*100
    r = acc[0, 1]

    return t, r


def test_projection(p2, p2_inv, box_2d, cx, cy, z, w3d, h3d, l3d, rotY):
    """
    Tests the consistency of a 3D projection compared to a 2D box
    """

    x = box_2d[0]
    y = box_2d[1]
    x2 = x + box_2d[2] - 1
    y2 = y + box_2d[3] - 1

    coord3d = p2_inv.dot(np.array([cx * z, cy * z, z, 1]))

    cx3d = coord3d[0]
    cy3d = coord3d[1]
    cz3d = coord3d[2]

    # put back on ground first
    #cy3d += h3d/2

    # re-compute the 2D box using 3D (finally, avoids clipped boxes)
    verts3d, corners_3d = project_3d(p2, cx3d, cy3d, cz3d, w3d, h3d, l3d, rotY, return_3d=True)

    invalid = np.any(corners_3d[2, :] <= 0)

    x_new = min(verts3d[:, 0])
    y_new = min(verts3d[:, 1])
    x2_new = max(verts3d[:, 0])
    y2_new = max(verts3d[:, 1])

    b1 = np.array([x, y, x2, y2])[np.newaxis, :]
    b2 = np.array([x_new, y_new, x2_new, y2_new])[np.newaxis, :]

    #ol = iou(b1, b2)[0][0]
    ol = -(np.abs(x - x_new) + np.abs(y - y_new) + np.abs(x2 - x2_new) + np.abs(y2 - y2_new))

    return ol, verts3d, b2, invalid




================================================
FILE: lib/util.py
================================================
"""
This file is meant to contain generic utility functions
which can be easily re-used in any project, and are not
specific to any project or framework (except python!).
"""

import os
import sys
from glob import glob
from time import time
import matplotlib.pyplot as plt
import numpy as np
import importlib
import pickle
import logging
import datetime
import pprint
import shutil
import math
import copy
import cv2
#from scipy.spatial.transform import Rotation as scipy_R
from mpl_toolkits.mplot3d import Axes3D
from matplotlib.backends.backend_agg import FigureCanvasAgg as FigureCanvas
from PIL import Image


def copyfile(src, dst):
    shutil.copyfile(src, dst)


def pretty_print(name, input, val_width=40, key_width=0):
    """
    This function creates a formatted string from a given dictionary input.
    It may not support all data types, but can probably be extended.

    Args:
        name (str): name of the variable root
        input (dict): dictionary to print
        val_width (int): the width of the right hand side values
        key_width (int): the minimum key width, (always auto-defaults to the longest key!)

    Example:
        pretty_str = pretty_print('conf', conf.__dict__)
        pretty_str = pretty_print('conf', {'key1': 'example', 'key2': [1,2,3,4,5], 'key3': np.random.rand(4,4)})

        print(pretty_str)
        or
        logging.info(pretty_str)
    """

    # root
    pretty_str = name + ': {\n'

    # determine key width
    for key in input.keys(): key_width = max(key_width, len(str(key)) + 4)

    # cycle keys
    for key in input.keys():

        val = input[key]

        # round values to 3 decimals..
        if type(val) == np.ndarray: val = np.round(val, 3).tolist()

        # difficult formatting
        val_str = str(val)
        if len(val_str) > val_width:
            val_str = pprint.pformat(val, width=val_width, compact=True)
            val_str = val_str.replace('\n', '\n{tab}')
            tab = ('{0:' + str(4 + key_width) + '}').format('')
            val_str = val_str.replace('{tab}', tab)

        # more difficult formatting
        format_str = '{0:' + str(4) + '}{1:' + str(key_width) + '} {2:' + str(val_width) + '}\n'
        pretty_str += format_str.format('', key + ':', val_str)

    # close root object
    pretty_str += '}'

    return pretty_str


def absolute_import(file_path):
    """
    Imports a python module / file given its ABSOLUTE path.

    Args:
         file_path (str): absolute path to a python file to attempt to import
    """

    # module name
    _, name, _ = file_parts(file_path)

    # load the spec and module
    spec = importlib.util.spec_from_file_location(name, file_path)
    module = importlib.util.module_from_spec(spec)
    spec.loader.exec_module(module)

    return module


def init_log_file(folder_path, suffix=None, log_level=logging.INFO):
    """
    This function inits a log file given a folder to write the log to.
    it automatically adds a timestamp and optional suffix to the log.
    Anything written to the log will automatically write to console too.

    Example:
        import logging

        init_log_file('output/logs/')
        logging.info('this will show up in both the log AND console!')
    """

    timestamp = datetime.datetime.now().strftime("%Y%m%d_%H%M%S")
    log_format = '[%(levelname)s]: %(asctime)s %(message)s'

    if suffix is not None:
        file_name = timestamp + '_' + suffix
    else:
        file_name = timestamp

    file_path = os.path.join(folder_path, file_name)
    logging.basicConfig(filename=file_path, level=log_level, format=log_format)
    logging.getLogger().addHandler(logging.StreamHandler(sys.stdout))

    return file_path


def denorm_image(im, image_means, image_stds):

    im = copy.deepcopy(im)
    im[:, :, 0] *= image_stds[0]
    im[:, :, 1] *= image_stds[1]
    im[:, :, 2] *= image_stds[2]

    im[:, :, 0] += image_means[0]
    im[:, :, 1] += image_means[1]
    im[:, :, 2] += image_means[2]

    return im


def compute_eta(start_time, idx, total):
    """
    Computes the estimated time as a formatted string as well
    as the change in delta time dt.

    Example:
        from time import time

        start_time = time()

        for i in range(0, total):
            
            time_str, dt = compute_eta(start_time, i, total)
    """

    dt = (time() - start_time)/idx
    timeleft = np.max([dt * (total - idx), 0])
    if timeleft > 3600: time_str = '{:.1f}h'.format(timeleft / 3600);
    elif timeleft > 60: time_str = '{:.1f}m'.format(timeleft / 60);
    else: time_str = '{:.1f}s'.format(timeleft);

    return time_str, dt


def interp_color(dist, bounds=[0, 1], color_lo=(0,0, 250), color_hi=(0, 250, 250)):

    percent = (dist - bounds[0]) / (bounds[1] - bounds[0])
    b = color_lo[0] * (1 - percent) + color_hi[0] * percent
    g = color_lo[1] * (1 - percent) + color_hi[1] * percent
    r = color_lo[2] * (1 - percent) + color_hi[2] * percent

    return (b, g, r)


def create_colorbar(height, width, color_lo=(0,0, 250), color_hi=(0, 250, 250)):

    im = np.zeros([height, width, 3])

    for h in range(0, height):

        color = interp_color(h + 0.5, [0, height], color_hi, color_lo)
        im[h, :, 0] = (color[0])
        im[h, :, 1] = (color[1])
        im[h, :, 2] = (color[2])

    return im.astype(np.uint8)


def mkdir_if_missing(directory, delete_if_exist=False):
    """
    Recursively make a directory structure even if missing.

    if delete_if_exist=True then we will delete it first
    which can be useful when better control over initialization is needed.
    """

    if delete_if_exist and os.path.exists(directory): shutil.rmtree(directory)

    # check if not exist, then make
    if not os.path.exists(directory):
        os.makedirs(directory)


def list_files(base_dir, file_pattern):
    """
    Returns a list of files given a directory and pattern
    The results are sorted alphabetically

    Example:
        files = list_files('path/to/images/', '*.jpg')
    """

    return sorted(glob(os.path.join(base_dir) + file_pattern))


def file_parts(file_path):
    """
    Lists a files parts such as base_path, file name and extension

    Example
        base, name, ext = file_parts('path/to/file/dog.jpg')
        print(base, name, ext) --> ('path/to/file/', 'dog', '.jpg')
    """

    base_path, tail = os.path.split(file_path)
    name, ext = os.path.splitext(tail)

    return base_path, name, ext


def pickle_write(file_path, obj):
    """
    Serialize an object to a provided file_path
    """

    with open(file_path, 'wb') as file:
        pickle.dump(obj, file)


def pickle_read(file_path):
    """
    De-serialize an object from a provided file_path
    """

    with open(file_path, 'rb') as file:
        return pickle.load(file)


def get_color(ind, hex=False):

    colors = [(111, 74, 0),
        (81, 0, 81),
        (128, 64, 128),
        (244, 35, 232),
        (250, 170, 160),
        (230, 150, 140),
        (70, 70, 70),
        (102, 102, 156),
        (190, 153, 153),
        (180, 165, 180),
        (150, 100, 100),
        (150, 120, 90),
        (153, 153, 153),
        (250, 170, 30),
        (220, 220, 0),
        (107, 142, 35),
        (152, 251, 152),
        (70, 130, 180),
        (220, 20, 60),
        (255, 0, 0),
        (0, 0, 142),
        (0, 0, 70),
        (0, 60, 100),
        (0, 0, 90),
        (0, 0, 110),
        (0, 80, 100),
        (0, 0, 230),
        (119, 11, 32),
        (0, 0, 142), ]

    color = colors[ind % len(colors)]

    if hex:
        return '#%02x%02x%02x' % (color[0], color[1], color[2])
    else:
        return color


def draw_3d_box(im, verts, color=(0, 200, 200), thickness=1):

    for lind in range(0, verts.shape[0] - 1):
        v1 = verts[lind]
        v2 = verts[lind + 1]
        cv2.line(im, (int(v1[0]), int(v1[1])), (int(v2[0]), int(v2[1])), color, thickness)


def draw_bev(canvas_bev, z3d, l3d, w3d, x3d, ry3d, color=(0, 200, 200), scale=1, thickness=2):

    w = l3d * scale
    l = w3d * scale
    x = x3d * scale
    z = z3d * scale
    r = ry3d*-1

    corners1 = np.array([
        [-w / 2, -l / 2, 1],
        [+w / 2, -l / 2, 1],
        [+w / 2, +l / 2, 1],
        [-w / 2, +l / 2, 1]
    ])

    ry = np.array([
        [+math.cos(r), -math.sin(r), 0],
        [+math.sin(r), math.cos(r), 0],
        [0, 0, 1],
    ])

    corners2 = ry.dot(corners1.T).T

    corners2[:, 0] += w/2 + x + canvas_bev.shape[1] / 2
    corners2[:, 1] += l/2 + z

    draw_line(canvas_bev, corners2[0], corners2[1], color=color, thickness=thickness)
    draw_line(canvas_bev, corners2[1], corners2[2], color=color, thickness=thickness)
    draw_line(canvas_bev, corners2[2], corners2[3], color=color, thickness=thickness)
    draw_line(canvas_bev, corners2[3], corners2[0], color=color, thickness=thickness)


def draw_line(im, v1, v2, color=(0, 200, 200), thickness=1):

    cv2.line(im, (int(v1[0]), int(v1[1])), (int(v2[0]), int(v2[1])), color, thickness)


def draw_circle(im, pos, radius=5, thickness=1, color=(250, 100, 100), fill=True):

    if fill: thickness = -1

    cv2.circle(im, (int(pos[0]), int(pos[1])), radius, color=color, thickness=thickness)


def draw_2d_box(im, box, color=(0, 200, 200), thickness=1):

    x = box[0]
    y = box[1]
    w = box[2]
    h = box[3]
    x2 = (x + w) - 1
    y2 = (y + h) - 1

    cv2.rectangle(im, (int(x), int(y)), (int(x2), int(y2)), color, thickness)


def imshow(im, fig_num=None):

    if fig_num is not None: plt.figure(fig_num)

    if len(im.shape) == 2:
        im = np.tile(im, [3, 1, 1]).transpose([1, 2, 0])

    plt.imshow(cv2.cvtColor(im.astype(np.uint8), cv2.COLOR_RGB2BGR))
    plt.show(block=False)


def imwrite(im, path):

    cv2.imwrite(path, im)


def imread(path):

    return cv2.imread(path)


def draw_tick_marks(im, ticks):

    ticks_loc = list(range(0, im.shape[0] + 1, int((im.shape[0]) / (len(ticks) - 1))))

    for tind, tick in enumerate(ticks):
        y = min(max(ticks_loc[tind], 50), im.shape[0] - 10)
        x = im.shape[1] - 115

        draw_text(im, '-{}m'.format(tick), (x, y), lineType=2, scale=1.1, bg_color=None)


def draw_text(im, text, pos, scale=0.4, color=(0, 0, 0), font=cv2.FONT_HERSHEY_SIMPLEX, bg_color=(0, 255, 255),
              blend=0.33, lineType=1):

    pos = [int(pos[0]), int(pos[1])]

    if bg_color is not None:

        text_size, _ = cv2.getTextSize(text, font, scale, lineType)
        x_s = int(np.clip(pos[0], a_min=0, a_max=im.shape[1]))
        x_e = int(np.clip(pos[0] + text_size[0] - 1 + 4, a_min=0, a_max=im.shape[1]))
        y_s = int(np.clip(pos[1] - text_size[1] - 2, a_min=0, a_max=im.shape[0]))
        y_e = int(np.clip(pos[1] + 1 - 2, a_min=0, a_max=im.shape[0]))

        im[y_s:y_e + 1, x_s:x_e + 1, 0] = im[y_s:y_e + 1, x_s:x_e + 1, 0]*blend + bg_color[0] * (1 - blend)
        im[y_s:y_e + 1, x_s:x_e + 1, 1] = im[y_s:y_e + 1, x_s:x_e + 1, 1]*blend + bg_color[1] * (1 - blend)
        im[y_s:y_e + 1, x_s:x_e + 1, 2] = im[y_s:y_e + 1, x_s:x_e + 1, 2]*blend + bg_color[2] * (1 - blend)

        pos[0] = int(np.clip(pos[0] + 2, a_min=0, a_max=im.shape[1]))
        pos[1] = int(np.clip(pos[1] - 2, a_min=0, a_max=im.shape[0]))

    cv2.putText(im, text, tuple(pos), font, scale, color, lineType)


# Calculates rotation matrix to euler angles
# The result is the same as MATLAB except the order
# of the euler angles ( x and z are swapped ).
# adopted from https://www.learnopencv.com/rotation-matrix-to-euler-angles/
def mat2euler(R):

    sy = math.sqrt(R[0, 0] * R[0, 0] + R[1, 0] * R[1, 0])

    singular = sy < 1e-6

    if not singular:
        x = math.atan2(R[2, 1], R[2, 2])
        y = math.atan2(-R[2, 0], sy)
        z = math.atan2(R[1, 0], R[0, 0])

    else: raise ValueError('singular matrix found in mat2euler')

    return np.array([x, y, z])


def fig_to_im(fig):

    fig.canvas.draw()

    # Get the RGBA buffer from the figure
    w, h = fig.canvas.get_width_height()
    buf = np.fromstring(fig.canvas.tostring_argb(), dtype=np.uint8)
    buf.shape = (w, h, 4)

    # canvas.tostring_argb give pixmap in ARGB mode. Roll the ALPHA channel to have it in RGBA mode
    buf = np.roll(buf, 3, axis=2)

    w, h, d = buf.shape

    im_pil = Image.frombytes("RGBA", (w, h), buf.tostring())
    im_np = np.array(im_pil)[:,:,:3]

    return im_np


def imzoom(im, zoom=0):

    # single value passed in for both axis?
    # extend same val for w, h
    zoom = np.array(zoom)
    if zoom.size == 1: zoom = np.array([zoom, zoom])

    zoom = np.clip(zoom, a_min=0, a_max=0.99)

    cx = im.shape[1]/2
    cy = im.shape[0]/2

    w = im.shape[1]*(1 - zoom[0])
    h = im.shape[0]*(1 - zoom[-1])

    x1 = int(np.clip(cx - w / 2, a_min=0, a_max=im.shape[1] - 1))
    x2 = int(np.clip(cx + w / 2, a_min=0, a_max=im.shape[1] - 1))
    y1 = int(np.clip(cy - h / 2, a_min=0, a_max=im.shape[0] - 1))
    y2 = int(np.clip(cy + h / 2, a_min=0, a_max=im.shape[0] - 1))

    im = im[y1:y2+1, x1:x2+1, :]

    return im


def imhstack(im1, im2):

    sf = im1.shape[0] / im2.shape[0]

    if sf > 1:
        im2 = cv2.resize(im2, (int(im2.shape[1] / sf), im1.shape[0]))
    else:
        im1 = cv2.resize(im1, (int(im1.shape[1] / sf), im2.shape[0]))


    im_concat = np.hstack((im1, im2))

    return im_concat


# Calculates Rotation Matrix given euler angles.
# adopted from https://www.learnopencv.com/rotation-matrix-to-euler-angles/
def euler2mat(x, y, z):

    R_x = np.array([[1, 0, 0],
                    [0, math.cos(x), -math.sin(x)],
                    [0, math.sin(x), math.cos(x)]
                    ])

    R_y = np.array([[math.cos(y), 0, math.sin(y)],
                    [0, 1, 0],
                    [-math.sin(y), 0, math.cos(y)]
                    ])

    R_z = np.array([[math.cos(z), -math.sin(z), 0],
                    [math.sin(z), math.cos(z), 0],
                    [0, 0, 1]
                    ])

    R = np.dot(R_z, np.dot(R_y, R_x))

    return R


def convertAlpha2Rot(alpha, z3d, x3d):

    ry3d = alpha + math.atan2(-z3d, x3d) + 0.5 * math.pi
    #ry3d = alpha + math.atan2(x3d, z3d)# + 0.5 * math.pi

    while ry3d > math.pi: ry3d -= math.pi * 2
    while ry3d < (-math.pi): ry3d += math.pi * 2

    return ry3d


def convertRot2Alpha(ry3d, z3d, x3d):

    alpha = ry3d - math.atan2(-z3d, x3d) - 0.5 * math.pi
    #alpha = ry3d - math.atan2(x3d, z3d)# - 0.5 * math.pi

    while alpha > math.pi: alpha -= math.pi * 2
    while alpha < (-math.pi): alpha += math.pi * 2

    return alpha


================================================
FILE: models/densenet121_3d_dilate.py
================================================
import torch.nn as nn
from torchvision import models
from lib.rpn_util import *
import torch


def dilate_layer(layer, val):

    layer.dilation = val
    layer.padding = val


class RPN(nn.Module):


    def __init__(self, phase, base, conf):
        super(RPN, self).__init__()

        self.base = base

        del self.base.transition3.pool

        # dilate
        dilate_layer(self.base.denseblock4.denselayer1.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer2.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer3.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer4.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer5.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer6.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer7.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer8.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer9.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer10.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer11.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer12.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer13.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer14.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer15.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer16.conv2, 2)

        # settings
        self.phase = phase
        self.num_classes = len(conf['lbls']) + 1
        self.num_anchors = conf['anchors'].shape[0]

        self.prop_feats = nn.Sequential(
            nn.Conv2d(self.base[-1].num_features, 512, 3, padding=1),
            nn.ReLU(inplace=True),
        )

        # outputs
        self.cls = nn.Conv2d(self.prop_feats[0].out_channels, self.num_classes * self.num_anchors, 1)

        # bbox 2d
        self.bbox_x = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_y = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_w = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_h = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)

        # bbox 3d
        self.bbox_x3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_y3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_z3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_w3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_h3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_l3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_rY3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)

        self.softmax = nn.Softmax(dim=1)

        self.feat_stride = conf.feat_stride
        self.feat_size = calc_output_size(np.array(conf.crop_size), self.feat_stride)
        self.rois = locate_anchors(conf.anchors, self.feat_size, conf.feat_stride, convert_tensor=True)
        self.rois = self.rois.type(torch.cuda.FloatTensor)
        self.anchors = conf.anchors


    def forward(self, x):

        batch_size = x.size(0)

        # resnet
        x = self.base(x)

        prop_feats = self.prop_feats(x)

        cls = self.cls(prop_feats)

        # bbox 2d
        bbox_x = self.bbox_x(prop_feats)
        bbox_y = self.bbox_y(prop_feats)
        bbox_w = self.bbox_w(prop_feats)
        bbox_h = self.bbox_h(prop_feats)

        # bbox 3d
        bbox_x3d = self.bbox_x3d(prop_feats)
        bbox_y3d = self.bbox_y3d(prop_feats)
        bbox_z3d = self.bbox_z3d(prop_feats)
        bbox_w3d = self.bbox_w3d(prop_feats)
        bbox_h3d = self.bbox_h3d(prop_feats)
        bbox_l3d = self.bbox_l3d(prop_feats)
        bbox_rY3d = self.bbox_rY3d(prop_feats)

        feat_h = cls.size(2)
        feat_w = cls.size(3)

        # reshape for cross entropy
        cls = cls.view(batch_size, self.num_classes, feat_h * self.num_anchors, feat_w)

        # score probabilities
        prob = self.softmax(cls)

        # reshape for consistency
        bbox_x = flatten_tensor(bbox_x.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_y = flatten_tensor(bbox_y.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_w = flatten_tensor(bbox_w.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_h = flatten_tensor(bbox_h.view(batch_size, 1, feat_h * self.num_anchors, feat_w))

        bbox_x3d = flatten_tensor(bbox_x3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_y3d = flatten_tensor(bbox_y3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_z3d = flatten_tensor(bbox_z3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_w3d = flatten_tensor(bbox_w3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_h3d = flatten_tensor(bbox_h3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_l3d = flatten_tensor(bbox_l3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_rY3d = flatten_tensor(bbox_rY3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))

        # bundle
        bbox_2d = torch.cat((bbox_x, bbox_y, bbox_w, bbox_h), dim=2)
        bbox_3d = torch.cat((bbox_x3d, bbox_y3d, bbox_z3d, bbox_w3d, bbox_h3d, bbox_l3d, bbox_rY3d), dim=2)

        feat_size = [feat_h, feat_w]

        cls = flatten_tensor(cls)
        prob = flatten_tensor(prob)

        if self.training:
            return cls, prob, bbox_2d, bbox_3d, feat_size

        else:

            if self.feat_size[0] != feat_h or self.feat_size[1] != feat_w:
                self.feat_size = [feat_h, feat_w]
                self.rois = locate_anchors(self.anchors, self.feat_size, self.feat_stride, convert_tensor=True)
                self.rois = self.rois.type(torch.cuda.FloatTensor)

            return cls, prob, bbox_2d, bbox_3d, feat_size, self.rois


def build(conf, phase='train'):

    train = phase.lower() == 'train'

    densenet121 = models.densenet121(pretrained=train)

    rpn_net = RPN(phase, densenet121.features, conf)

    if train: rpn_net.train()
    else: rpn_net.eval()

    return rpn_net


================================================
FILE: models/densenet121_3d_dilate_depth_aware.py
================================================
import torch.nn as nn
from torchvision import models
from lib.rpn_util import *
import torch.nn.functional as F
import torch


def dilate_layer(layer, val):
    layer.dilation = val
    layer.padding = val


class LocalConv2d(nn.Module):

    def __init__(self, num_rows, num_feats_in, num_feats_out, kernel=1, padding=0):
        super(LocalConv2d, self).__init__()

        self.num_rows = num_rows
        self.out_channels = num_feats_out
        self.kernel = kernel
        self.pad = padding

        self.group_conv = nn.Conv2d(num_feats_in * num_rows, num_feats_out * num_rows, kernel, stride=1, groups=num_rows)

    def forward(self, x):

        b, c, h, w = x.size()

        if self.pad: x = F.pad(x, (self.pad, self.pad, self.pad, self.pad), mode='constant', value=0)

        t = int(h / self.num_rows)

        # unfold by rows
        x = x.unfold(2, t + self.pad*2, t)
        x = x.permute([0, 2, 1, 4, 3]).contiguous()
        x = x.view(b, c * self.num_rows, t + self.pad*2, (w+self.pad*2)).contiguous()

        # group convolution for efficient parallel processing
        y = self.group_conv(x)
        y = y.view(b, self.num_rows, self.out_channels, t, w).contiguous()
        y = y.permute([0, 2, 1, 3, 4]).contiguous()
        y = y.view(b, self.out_channels, h, w)

        return y


class RPN(nn.Module):

    def __init__(self, phase, base, conf):
        super(RPN, self).__init__()

        self.base = base

        del self.base.transition3.pool

        # dilate
        dilate_layer(self.base.denseblock4.denselayer1.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer2.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer3.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer4.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer5.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer6.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer7.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer8.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer9.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer10.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer11.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer12.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer13.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer14.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer15.conv2, 2)
        dilate_layer(self.base.denseblock4.denselayer16.conv2, 2)

        # settings
        self.phase = phase
        self.num_classes = len(conf['lbls']) + 1
        self.num_anchors = conf['anchors'].shape[0]

        self.num_rows = int(min(conf.bins, calc_output_size(conf.test_scale, conf.feat_stride)))

        self.prop_feats = nn.Sequential(
            nn.Conv2d(self.base[-1].num_features, 512, 3, padding=1),
            nn.ReLU(inplace=True)
        )
        # outputs
        self.cls = nn.Conv2d(self.prop_feats[0].out_channels, self.num_classes * self.num_anchors, 1, )

        # bbox 2d
        self.bbox_x = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_y = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_w = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_h = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)

        # bbox 3d
        self.bbox_x3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_y3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_z3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_w3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_h3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_l3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_rY3d = nn.Conv2d(self.prop_feats[0].out_channels, self.num_anchors, 1)

        self.prop_feats_loc = nn.Sequential(
            LocalConv2d(self.num_rows, self.base[-1].num_features, 512, 3, padding=1),
            nn.ReLU(inplace=True)
        )

        # outputs
        self.cls_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_classes * self.num_anchors, 1, )

        # bbox 2d
        self.bbox_x_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_y_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_w_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_h_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)

        # bbox 3d
        self.bbox_x3d_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_y3d_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_z3d_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_w3d_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_h3d_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_l3d_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)
        self.bbox_rY3d_loc = LocalConv2d(self.num_rows, self.prop_feats[0].out_channels, self.num_anchors, 1)

        self.cls_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))

        self.bbox_x_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))
        self.bbox_y_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))
        self.bbox_w_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))
        self.bbox_h_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))

        self.bbox_x3d_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))
        self.bbox_y3d_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))
        self.bbox_z3d_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))
        self.bbox_w3d_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))
        self.bbox_h3d_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))
        self.bbox_l3d_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))
        self.bbox_rY3d_ble = nn.Parameter(torch.tensor(10e-5).type(torch.cuda.FloatTensor))

        self.sigmoid = nn.Sigmoid()
        self.softmax = nn.Softmax(dim=1)

        self.feat_stride = conf.feat_stride
        self.feat_size = calc_output_size(np.array(conf.crop_size), self.feat_stride)
        self.rois = locate_anchors(conf.anchors, self.feat_size, conf.feat_stride, convert_tensor=True)
        self.rois = self.rois.type(torch.cuda.FloatTensor)
        self.anchors = conf.anchors
        self.bbox_means = conf.bbox_means
        self.bbox_stds = conf.bbox_stds

    def forward(self, x):

        batch_size = x.size(0)

        # resnet
        x = self.base(x)

        prop_feats = self.prop_feats(x)
        prop_feats_loc = self.prop_feats_loc(x)

        cls = self.cls(prop_feats)

        # bbox 2d
        bbox_x = self.bbox_x(prop_feats)
        bbox_y = self.bbox_y(prop_feats)
        bbox_w = self.bbox_w(prop_feats)
        bbox_h = self.bbox_h(prop_feats)

        # bbox 3d
        bbox_x3d = self.bbox_x3d(prop_feats)
        bbox_y3d = self.bbox_y3d(prop_feats)
        bbox_z3d = self.bbox_z3d(prop_feats)
        bbox_w3d = self.bbox_w3d(prop_feats)
        bbox_h3d = self.bbox_h3d(prop_feats)
        bbox_l3d = self.bbox_l3d(prop_feats)
        bbox_rY3d = self.bbox_rY3d(prop_feats)

        cls_loc = self.cls_loc(prop_feats_loc)

        # bbox 2d
        bbox_x_loc = self.bbox_x_loc(prop_feats_loc)
        bbox_y_loc = self.bbox_y_loc(prop_feats_loc)
        bbox_w_loc = self.bbox_w_loc(prop_feats_loc)
        bbox_h_loc = self.bbox_h_loc(prop_feats_loc)

        # bbox 3d
        bbox_x3d_loc = self.bbox_x3d_loc(prop_feats_loc)
        bbox_y3d_loc = self.bbox_y3d_loc(prop_feats_loc)
        bbox_z3d_loc = self.bbox_z3d_loc(prop_feats_loc)
        bbox_w3d_loc = self.bbox_w3d_loc(prop_feats_loc)
        bbox_h3d_loc = self.bbox_h3d_loc(prop_feats_loc)
        bbox_l3d_loc = self.bbox_l3d_loc(prop_feats_loc)
        bbox_rY3d_loc = self.bbox_rY3d_loc(prop_feats_loc)

        cls_ble = self.sigmoid(self.cls_ble)

        # bbox 2d
        bbox_x_ble = self.sigmoid(self.bbox_x_ble)
        bbox_y_ble = self.sigmoid(self.bbox_y_ble)
        bbox_w_ble = self.sigmoid(self.bbox_w_ble)
        bbox_h_ble = self.sigmoid(self.bbox_h_ble)

        # bbox 3d
        bbox_x3d_ble = self.sigmoid(self.bbox_x3d_ble)
        bbox_y3d_ble = self.sigmoid(self.bbox_y3d_ble)
        bbox_z3d_ble = self.sigmoid(self.bbox_z3d_ble)
        bbox_w3d_ble = self.sigmoid(self.bbox_w3d_ble)
        bbox_h3d_ble = self.sigmoid(self.bbox_h3d_ble)
        bbox_l3d_ble = self.sigmoid(self.bbox_l3d_ble)
        bbox_rY3d_ble = self.sigmoid(self.bbox_rY3d_ble)

        # blend
        cls = (cls * cls_ble) + (cls_loc * (1 - cls_ble))

        bbox_x = (bbox_x * bbox_x_ble) + (bbox_x_loc * (1 - bbox_x_ble))
        bbox_y = (bbox_y * bbox_y_ble) + (bbox_y_loc * (1 - bbox_y_ble))
        bbox_w = (bbox_w * bbox_w_ble) + (bbox_w_loc * (1 - bbox_w_ble))
        bbox_h = (bbox_h * bbox_h_ble) + (bbox_h_loc * (1 - bbox_h_ble))

        bbox_x3d = (bbox_x3d * bbox_x3d_ble) + (bbox_x3d_loc * (1 - bbox_x3d_ble))
        bbox_y3d = (bbox_y3d * bbox_y3d_ble) + (bbox_y3d_loc * (1 - bbox_y3d_ble))
        bbox_z3d = (bbox_z3d * bbox_z3d_ble) + (bbox_z3d_loc * (1 - bbox_z3d_ble))
        bbox_h3d = (bbox_h3d * bbox_h3d_ble) + (bbox_h3d_loc * (1 - bbox_h3d_ble))
        bbox_w3d = (bbox_w3d * bbox_w3d_ble) + (bbox_w3d_loc * (1 - bbox_w3d_ble))
        bbox_l3d = (bbox_l3d * bbox_l3d_ble) + (bbox_l3d_loc * (1 - bbox_l3d_ble))
        bbox_rY3d = (bbox_rY3d * bbox_rY3d_ble) + (bbox_rY3d_loc * (1 - bbox_rY3d_ble))

        feat_h = cls.size(2)
        feat_w = cls.size(3)

        # reshape for cross entropy
        cls = cls.view(batch_size, self.num_classes, feat_h * self.num_anchors, feat_w)

        # score probabilities
        prob = self.softmax(cls)

        # reshape for consistency
        bbox_x = flatten_tensor(bbox_x.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_y = flatten_tensor(bbox_y.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_w = flatten_tensor(bbox_w.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_h = flatten_tensor(bbox_h.view(batch_size, 1, feat_h * self.num_anchors, feat_w))

        bbox_x3d = flatten_tensor(bbox_x3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_y3d = flatten_tensor(bbox_y3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_z3d = flatten_tensor(bbox_z3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_w3d = flatten_tensor(bbox_w3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_h3d = flatten_tensor(bbox_h3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_l3d = flatten_tensor(bbox_l3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))
        bbox_rY3d = flatten_tensor(bbox_rY3d.view(batch_size, 1, feat_h * self.num_anchors, feat_w))

        # bundle
        bbox_2d = torch.cat((bbox_x, bbox_y, bbox_w, bbox_h), dim=2)
        bbox_3d = torch.cat((bbox_x3d, bbox_y3d, bbox_z3d, bbox_w3d, bbox_h3d, bbox_l3d, bbox_rY3d), dim=2)

        feat_size = [feat_h, feat_w]

        cls = flatten_tensor(cls)
        prob = flatten_tensor(prob)

        if self.feat_size[0] != feat_h or self.feat_size[1] != feat_w:
            self.feat_size = [feat_h, feat_w]
            self.rois = locate_anchors(self.anchors, self.feat_size, self.feat_stride, convert_tensor=True)
            self.rois = self.rois.type(torch.cuda.FloatTensor)

        if self.training:
            return cls, prob, bbox_2d, bbox_3d, feat_size

        else:
            return cls, prob, bbox_2d, bbox_3d, feat_size, self.rois


def build(conf, phase='train'):
    train = phase.lower() == 'train'

    densenet121 = models.densenet121(pretrained=train)

    num_cls = len(conf['lbls']) + 1
    num_anchors = conf['anchors'].shape[0]

    # make network
    rpn_net = RPN(phase, densenet121.features, conf)

    dst_weights = rpn_net.state_dict()
    dst_keylist = list(dst_weights.keys())

    if 'pretrained' in conf and conf.pretrained is not None:

        src_weights = torch.load(conf.pretrained)
        src_keylist = list(src_weights.keys())

        conv_layers = ['cls', 'bbox_x', 'bbox_y', 'bbox_w', 'bbox_h', 'bbox_x3d', 'bbox_y3d', 'bbox_w3d', 'bbox_h3d', 'bbox_l3d', 'bbox_z3d', 'bbox_rY3d']

        # prop_feats
        src_weight_key = 'module.{}.0.weight'.format('prop_feats')
        src_bias_key = 'module.{}.0.bias'.format('prop_feats')

        dst_weight_key = 'module.{}.0.group_conv.weight'.format('prop_feats_loc')
        dst_bias_key = 'module.{}.0.group_conv.bias'.format('prop_feats_loc')

        src_weights[dst_weight_key] = src_weights[src_weight_key].repeat(conf.bins, 1, 1, 1)
        src_weights[dst_bias_key] = src_weights[src_bias_key].repeat(conf.bins, )

        #del src_weights[src_weight_key]
        #del src_weights[src_bias_key]

        for layer in conv_layers:
            src_weight_key = 'module.{}.weight'.format(layer)
            src_bias_key = 'module.{}.bias'.format(layer)

            dst_weight_key = 'module.{}.group_conv.weight'.format(layer+'_loc')
            dst_bias_key = 'module.{}.group_conv.bias'.format(layer+'_loc')

            src_weights[dst_weight_key] = src_weights[src_weight_key].repeat(conf.bins, 1, 1, 1)
            src_weights[dst_bias_key] = src_weights[src_bias_key].repeat(conf.bins, )

            #del src_weights[src_weight_key]
            #del src_weights[src_bias_key]

        src_keylist = list(src_weights.keys())

        # rename layers without module..
        for key in src_keylist:

            key_new = key.replace('module.', '')
            if key_new in dst_keylist:
                src_weights[key_new] = src_weights[key]
                del src_weights[key]

        src_keylist = list(src_weights.keys())

        # new layers?
        for key in dst_keylist:
            if key not in src_keylist:
                src_weights[key] = dst_weights[key]

        # remove keys not in dst
        for key in src_keylist:
            if key not in dst_keylist:
                del src_weights[key]

        rpn_net.load_state_dict(src_weights)

    if train:
        rpn_net.train()
    else:
        rpn_net.eval()

    return rpn_net


================================================
FILE: python_packages.txt
================================================
# packages in environment at /home/garrick/anaconda3:
#
# Name                    Version                   Build  Channel
_ipyw_jlab_nb_ext_conf    0.1.0            py36he11e457_0  
_libgcc_mutex             0.1                        main  
alabaster                 0.7.10           py36h306e16b_0  
anaconda-client           1.6.14                   py36_0  
anaconda-navigator        1.8.7                    py36_0  
anaconda-project          0.8.2            py36h44fb852_0  
asn1crypto                0.24.0                   py36_0  
astroid                   1.6.3                    py36_0  
astropy                   3.0.2            py36h3010b51_1  
atlas                     3.8.4                         0    https://repo.anaconda.com/pkgs/free
attrs                     18.1.0                   py36_0  
babel                     2.5.3                    py36_0  
backcall                  0.1.0                    py36_0  
backports                 1.0              py36hfa02d7e_1  
backports.shutil_get_terminal_size 1.0.0            py36hfea85ff_2  
beautifulsoup4            4.6.0            py36h49b8c8c_1  
bitarray                  0.8.1            py36h14c3975_1  
bkcharts                  0.2              py36h735825a_0  
blas                      1.0                         mkl  
blaze                     0.11.3           py36h4e06776_0  
bleach                    2.1.3                    py36_0  
blosc                     1.14.3               hdbcaa40_0  
bokeh                     0.12.16                  py36_0  
boto                      2.48.0           py36h6e4cd66_1  
bottleneck                1.2.1            py36haac1ea0_0  
bzip2                     1.0.6                h14c3975_5  
ca-certificates           2019.5.15                     0  
cairo                     1.14.12              h8948797_3  
certifi                   2019.6.16                py36_0  
cffi                      1.11.5           py36h9745a5d_0  
chardet                   3.0.4            py36h0f667ec_1  
click                     6.7              py36h5253387_0  
cloudpickle               0.5.3                    py36_0  
clyent                    1.2.2            py36h7e57e65_1  
colorama                  0.3.9            py36h489cec4_0  
conda                     4.7.10                   py36_0  
conda-build               3.10.5                   py36_0  
conda-env                 2.6.0                h36134e3_1  
conda-package-handling    1.3.11                   py36_0  
conda-verify              2.0.0            py36h98955d8_0  
contextlib2               0.5.5            py36h6c84a62_0  
cryptography              2.7              py36h1ba5d50_0  
curl                      7.65.2               hbc83047_0  
cycler                    0.10.0           py36h93f1223_0  
cython                    0.28.2           py36h14c3975_0  
cytoolz                   0.9.0.1          py36h14c3975_0  
dask                      0.17.5                   py36_0  
dask-core                 0.17.5                   py36_0  
datashape                 0.5.4            py36h3ad6b5c_0  
dbus                      1.13.2               h714fa37_1  
decorator                 4.3.0                    py36_0  
distributed               1.21.8                   py36_0  
docutils                  0.14             py36hb0f60f5_0  
easydict                  1.9                        py_0    conda-forge
entrypoints               0.2.3            py36h1aec115_2  
et_xmlfile                1.0.1            py36hd6bccc3_0  
expat                     2.2.6                he6710b0_0  
fastcache                 1.0.2            py36h14c3975_2  
filelock                  3.0.4                    py36_0  
flask                     1.0.2                    py36_1  
flask-cors                3.0.4                    py36_0  
fontconfig                2.13.0               h9420a91_0  
freetype                  2.9.1                h8a8886c_1  
fribidi                   1.0.5                h7b6447c_0  
geos                      3.7.0                hfc679d8_0    conda-forge
get_terminal_size         1.0.0                haa9412d_0  
gevent                    1.3.0            py36h14c3975_0  
glib                      2.56.2               hd408876_0  
glob2                     0.6              py36he249c77_0  
gmp                       6.1.2                h6c8ec71_1  
gmpy2                     2.0.8            py36hc8893dd_2  
graphite2                 1.3.11               h16798f4_2  
greenlet                  0.4.13           py36h14c3975_0  
gst-plugins-base          1.14.0               hbbd80ab_1  
gstreamer                 1.14.0               hb453b48_1  
h5py                      2.7.1            py36ha1f6525_2  
harfbuzz                  1.8.8                hffaf4a1_0  
hdf5                      1.10.2               hba1933b_1  
hdf5storage               0.1.14                   py36_0    conda-forge
heapdict                  1.0.0                    py36_2  
html5lib                  1.0.1            py36h2f9c1c0_0  
icu                       58.2                 h9c2bf20_1  
idna                      2.6              py36h82fb2a8_1  
imageio                   2.3.0                    py36_0  
imagesize                 1.0.0                    py36_0  
intel-openmp              2018.0.0                      8  
ipykernel                 4.8.2                    py36_0  
ipython                   6.4.0                    py36_0  
ipython_genutils          0.2.0            py36hb52b0d5_0  
ipywidgets                7.2.1                    py36_0  
isort                     4.3.4                    py36_0  
itsdangerous              0.24             py36h93cc618_1  
jbig                      2.1                  hdba287a_0  
jdcal                     1.4                      py36_0  
jedi                      0.12.0                   py36_1  
jinja2                    2.10             py36ha16c418_0  
joblib                    0.13.2                   py36_0  
jpeg                      9b                   h024ee3a_2  
jsonschema                2.6.0            py36h006f8b5_0  
jupyter                   1.0.0                    py36_4  
jupyter_client            5.2.3                    py36_0  
jupyter_console           5.2.0            py36he59e554_1  
jupyter_core              4.4.0            py36h7c827e3_0  
jupyterlab                0.32.1                   py36_0  
jupyterlab_launcher       0.10.5                   py36_0  
kiwisolver                1.0.1            py36h764f252_0  
krb5                      1.16.1               h173b8e3_7  
lazy-object-proxy         1.3.1            py36h10fcdad_0  
libarchive                3.3.3                h5d8350f_5  
libcurl                   7.65.2               h20c2e04_0  
libedit                   3.1.20170329         h6b74fdf_2  
libffi                    3.2.1                hd88cf55_4  
libgcc-ng                 9.1.0                hdf63c60_0  
libgfortran               3.0.0                         1    https://repo.anaconda.com/pkgs/free
libgfortran-ng            7.2.0                hdf63c60_3  
libpng                    1.6.37               hbc83047_0  
libprotobuf               3.6.0                hdbcaa40_0  
libsodium                 1.0.16               h1bed415_0  
libssh2                   1.8.2                h1ba5d50_0  
libstdcxx-ng              9.1.0                hdf63c60_0  
libtiff                   4.0.9                he85c1e1_1  
libtool                   2.4.6                h544aabb_3  
libuuid                   1.0.3                h1bed415_2  
libxcb                    1.13                 h1bed415_1  
libxml2                   2.9.8                h26e45fe_1  
libxslt                   1.1.32               h1312cb7_0  
llvmlite                  0.23.1           py36hdbcaa40_0  
locket                    0.2.0            py36h787c0ad_1  
lxml                      4.2.1            py36h23eabaa_0  
lz4-c                     1.8.1.2              h14c3975_0  
lzo                       2.10                 h49e0be7_2  
markupsafe                1.0              py36hd9260cd_1  
matplotlib                3.1.0            py36h5429711_0  
mccabe                    0.6.1            py36h5ad9710_1  
mistune                   0.8.3            py36h14c3975_1  
mkl                       2019.4                      243  
mkl-service               2.0.2            py36h7b6447c_0  
mkl_fft                   1.0.12           py36ha843d7b_0  
mkl_random                1.0.2            py36hd81dba3_0  
more-itertools            4.1.0                    py36_0  
mpc                       1.0.3                hec55b23_5  
mpfr                      3.1.5                h11a74b3_2  
mpmath                    1.0.0            py36hfeacd6b_2  
msgpack-python            0.5.6            py36h6bb024c_0  
multipledispatch          0.5.0                    py36_0  
navigator-updater         0.2.1                    py36_0  
nbconvert                 5.3.1            py36hb41ffb7_0  
nbformat                  4.4.0            py36h31c9010_0  
ncurses                   6.1                  hf484d3e_0  
networkx                  2.1                      py36_0  
ninja                     1.8.2            py36h6bb024c_1  
nltk                      3.3.0                    py36_0  
nose                      1.3.7            py36hcdf7029_2  
notebook                  5.5.0                    py36_0  
numba                     0.38.0           py36h637b7d7_0  
numexpr                   2.6.9            py36h9e4a6bb_0  
numpy                     1.16.4           py36h7e9f1db_0  
numpy-base                1.16.4           py36hde5b4d6_0  
numpydoc                  0.8.0                    py36_0  
odo                       0.5.1            py36h90ed295_0  
olefile                   0.45.1                   py36_0  
openblas                  0.2.19                        0    https://repo.anaconda.com/pkgs/free
opencv3                   3.1.0                    py36_0    menpo
openpyxl                  2.5.3                    py36_0  
openssl                   1.1.1c               h7b6447c_1  
packaging                 17.1                     py36_0  
pandas                    0.23.0           py36h637b7d7_0  
pandoc                    1.19.2.1             hea2e7c5_1  
pandocfilters             1.4.2            py36ha6701b7_1  
pango                     1.42.3               h8589676_0  
parso                     0.2.0                    py36_0  
partd                     0.3.8            py36h36fd896_0  
patchelf                  0.9                  hf79760b_2  
path.py                   11.0.1                   py36_0  
pathlib2                  2.3.2                    py36_0  
patsy                     0.5.0                    py36_0  
pcre                      8.42                 h439df22_0  
pep8                      1.7.1                    py36_0  
pexpect                   4.5.0                    py36_0  
pickleshare               0.7.4            py36h63277f8_0  
pillow                    5.4.1            py36h34e0f95_0  
pip                       10.0.1                   py36_0  
pixman                    0.34.0               hceecf20_3  
pkginfo                   1.4.2                    py36_1  
pluggy                    0.6.0            py36hb689045_0  
ply                       3.11                     py36_0  
prompt_toolkit            1.0.15           py36h17d85b1_0  
protobuf                  3.6.0            py36hf484d3e_0  
psutil                    5.4.5            py36h14c3975_0  
ptyprocess                0.5.2            py36h69acd42_0  
py                        1.5.3                    py36_0  
pycodestyle               2.4.0                    py36_0  
pycosat                   0.6.3            py36h0a5515d_0  
pycparser                 2.18             py36hf9f622e_1  
pycrypto                  2.6.1            py36h14c3975_8  
pycurl                    7.43.0.3         py36h1ba5d50_0  
pyflakes                  1.6.0            py36h7bd6a15_0  
pygments                  2.2.0            py36h0d3125c_0  
pylint                    1.8.4                    py36_0  
pyodbc                    4.0.23           py36hf484d3e_0  
pyopenssl                 18.0.0                   py36_0  
pyparsing                 2.2.0            py36hee85983_1  
pyqt                      5.9.2            py36h751905a_0  
pysocks                   1.6.8                    py36_0  
pytables                  3.4.3            py36h02b9ad4_2  
pytest                    3.5.1                    py36_0  
pytest-arraydiff          0.2                      py36_0  
pytest-astropy            0.3.0                    py36_0  
pytest-doctestplus        0.1.3                    py36_0  
pytest-openfiles          0.3.0                    py36_0  
pytest-remotedata         0.2.1                    py36_0  
python                    3.6.8                h0371630_0  
python-dateutil           2.7.3                    py36_0  
python-libarchive-c       2.8                     py36_11  
pytorch                   0.4.1           py36_py35_py27__9.0.176_7.1.2_2    pytorch
pytz                      2018.4                   py36_0  
pywavelets                0.5.2            py36he602eb0_0  
pyyaml                    3.12             py36hafb9ca4_1  
pyzmq                     17.0.0           py36h14c3975_0  
qt                        5.9.7                h5867ecd_1  
qtawesome                 0.4.4            py36h609ed8c_0  
qtconsole                 4.3.1            py36h8f73b5b_0  
qtpy                      1.4.1                    py36_0  
readline                  7.0                  ha6073c6_4  
requests                  2.18.4           py36he2e5f8d_1  
rope                      0.10.7           py36h147e2ec_0  
ruamel_yaml               0.15.35          py36h14c3975_1  
scikit-image              0.13.1           py36h14c3975_1  
scikit-learn              0.21.2           py36hd81dba3_0  
scipy                     1.2.0            py36h7c811a0_0  
seaborn                   0.8.1            py36hfad7ec4_0  
send2trash                1.5.0                    py36_0  
setuptools                39.1.0                   py36_0  
shapely                   1.6.4            py36hcff0d60_1    conda-forge
simplegeneric             0.8.1                    py36_2  
singledispatch            3.4.0.3          py36h7a266c3_0  
sip                       4.19.8           py36hf484d3e_0  
six                       1.11.0           py36h372c433_1  
snappy                    1.1.7                hbae5bb6_3  
snowballstemmer           1.2.1            py36h6febd40_0  
sortedcollections         0.6.1                    py36_0  
sortedcontainers          1.5.10                   py36_0  
sphinx                    1.7.4                    py36_0  
sphinxcontrib             1.0              py36h6d0f590_1  
sphinxcontrib-websupport  1.0.1            py36hb5cb234_1  
spyder                    3.2.8                    py36_0  
sqlalchemy                1.2.7            py36h6b74fdf_0  
sqlite                    3.26.0               h7b6447c_0  
statsmodels               0.9.0            py36h3010b51_0  
sympy                     1.1.1            py36hc6d1c1c_0  
tblib                     1.3.2            py36h34cf8b6_0  
terminado                 0.8.1                    py36_1  
testpath                  0.3.1            py36h8cadb63_0  
tk                        8.6.8                hbc83047_0  
toolz                     0.9.0                    py36_0  
torchfile                 0.1.0                      py_0    conda-forge
torchvision               0.2.1                    py36_1    pytorch
tornado                   5.0.2                    py36_0  
tqdm                      4.26.0           py36h28b3542_0  
traitlets                 4.3.2            py36h674d592_0  
transforms3d              0.3.1                h2e23829_0    owlas
typing                    3.6.4                    py36_0  
unicodecsv                0.14.1           py36ha668878_0  
unixodbc                  2.3.6                h1bed415_0  
urllib3                   1.22             py36hbe7ace6_0  
visdom                    0.1.8.5                       0    conda-forge
wcwidth                   0.1.7            py36hdf4376a_0  
webencodings              0.5.1            py36h800622e_1  
websocket-client          0.53.0                py36_1000    conda-forge
werkzeug                  0.14.1                   py36_0  
wheel                     0.31.1                   py36_0  
widgetsnbextension        3.2.1                    py36_0  
wrapt                     1.10.11          py36h28b7045_0  
xlrd                      1.1.0            py36h1db9f0c_1  
xlsxwriter                1.0.4                    py36_0  
xlwt                      1.3.0            py36h7b00a1f_0  
xz                        5.2.4                h14c3975_4  
yaml                      0.1.7                had09818_2  
zeromq                    4.2.5                h439df22_0  
zict                      0.1.3            py36h3a3bf81_0  
zlib                      1.2.11               ha838bed_2  
zstd                      1.3.7                h0b5b093_0  


================================================
FILE: readme.md
================================================
# M3D-RPN: Monocular 3D Region Proposal Network for Object Detection

Garrick Brazil, Xiaoming Liu

## Introduction


Monocular 3D region proposal network source code as detailed in [arXiv report](https://arxiv.org/abs/1907.06038), accepted to ICCV 2019 (Oral). Please also visit our [project page](http://cvlab.cse.msu.edu/project-m3d-rpn.html).

Our framework is implemented and tested with Ubuntu 16.04, CUDA 8.0, Python 3, NVIDIA 1080 Ti GPU. Unless otherwise stated the below scripts and instructions assume working directory is the project root. 

If you utilize this framework, please cite our ICCV 2019 paper. 

    @inproceedings{brazil2019m3drpn,
        title={M3D-RPN: Monocular 3D Region Proposal Network for Object Detection},
        author={Brazil, Garrick and Liu, Xiaoming},
        booktitle={Proceedings of the IEEE International Conference on Computer Vision},
        address={Seoul, South Korea},
        year={2019}
    }
    

## Setup

- **Cuda & Python**

    In this project we utilize Pytorch with Python 3, Cuda 8, and a few Anaconda packages. Please review and follow this [installation guide](setup.md). However, feel free to try alternative versions or modes of installation. 

- **Data**

    Download the full [KITTI](http://www.cvlibs.net/datasets/kitti/eval_object.php?obj_benchmark=3d) detection dataset. Then place a softlink (or the actual data) in  *M3D-RPN/data/kitti*. 

	```
    cd M3D-RPN
	ln -s /path/to/kitti data/kitti
	```

	Then use the following scripts to extract the data splits, which use softlinks to the above directory for efficient storage. 

    ```
    python data/kitti_split1/setup_split.py
    python data/kitti_split2/setup_split.py
    ```
    
    Next, build the KITTI devkit eval for each split.

	```
	sh data/kitti_split1/devkit/cpp/build.sh
	sh data/kitti_split2/devkit/cpp/build.sh
	```
    
    Lastly, build the nms modules
    
    ```
	cd lib/nms
	make
	```

## Training

We use [visdom](https://github.com/facebookresearch/visdom) for visualization and graphs. Optionally, start the server by command line

```
python -m visdom.server -port 8100 -readonly
```
The port can be customized in *scripts/config* files. The training monitor can be viewed at [http://localhost:8100](http://localhost:8100)

Training is split into a warmup and main configurations. Review the configurations in *scripts/config* for details. 

``` 
// First train the warmup (without depth-aware)
python scripts/train_rpn_3d.py --config=kitti_3d_multi_warmup

// Then train the main experiment (with depth-aware)
python scripts/train_rpn_3d.py --config=kitti_3d_multi_main
```

If your training is accidentally stopped, you can resume at a checkpoint based on the snapshot with the *restore* flag. 
For example to resume training starting at iteration 10k, use the following command.

```
python scripts/train_rpn_3d.py --config=kitti_3d_multi_main --restore=10000
```

## Testing

We provide models for the main experiments on val1 / val2 / test data splits available to download here [M3D-RPN-Release.zip](https://www.cse.msu.edu/computervision/M3D-RPN-Release.zip).

Testing requires paths to the configuration file and model weights, exposed variables near the top *scripts/test_rpn_3d.py*. To test a configuration and model, simply update the variables and run the test file as below. 

```
python scripts/test_rpn_3d.py 
```

## Contact
For questions regarding M3D-RPN, feel free to post here or directly contact the authors {[brazilga](http://garrickbrazil.com), [liuxm](http://www.cse.msu.edu/~liuxm/index2.html)}@msu.edu.


================================================
FILE: scripts/config/kitti_3d_multi_main.py
================================================
from easydict import EasyDict as edict
import numpy as np

def Config():

    conf = edict()
        
    # ----------------------------------------
    #  general
    # ----------------------------------------

    conf.model = 'densenet121_3d_dilate_depth_aware'
    
    # solver settings
    conf.solver_type = 'sgd'
    conf.lr = 0.004
    conf.momentum = 0.9
    conf.weight_decay = 0.0005
    conf.max_iter = 50000
    conf.snapshot_iter = 10000
    conf.display = 250
    conf.do_test = True
    
    # sgd parameters
    conf.lr_policy = 'poly'
    conf.lr_steps = None
    conf.lr_target = conf.lr * 0.00001
    
    # random
    conf.rng_seed = 2
    conf.cuda_seed = 2
    
    # misc network
    conf.image_means = [0.485, 0.456, 0.406]
    conf.image_stds = [0.229, 0.224, 0.225]
    conf.feat_stride = 16
    
    conf.has_3d = True

    # ----------------------------------------
    #  image sampling and datasets
    # ----------------------------------------

    # scale sampling  
    conf.test_scale = 512
    conf.crop_size = [512, 1760]
    conf.mirror_prob = 0.50
    conf.distort_prob = -1
    
    # datasets
    conf.dataset_test = 'kitti_split1'
    conf.datasets_train = [{'name': 'kitti_split1', 'anno_fmt': 'kitti_det', 'im_ext': '.png', 'scale': 1}]
    conf.use_3d_for_2d = True
    
    # percent expected height ranges based on test_scale
    # used for anchor selection 
    conf.percent_anc_h = [0.0625, 0.75]
    
    # labels settings
    conf.min_gt_h = conf.test_scale*conf.percent_anc_h[0]
    conf.max_gt_h = conf.test_scale*conf.percent_anc_h[1]
    conf.min_gt_vis = 0.65
    conf.ilbls = ['Van', 'ignore']
    conf.lbls = ['Car', 'Pedestrian', 'Cyclist']
    
    # ----------------------------------------
    #  detection sampling
    # ----------------------------------------
    
    # detection sampling
    conf.batch_size = 2
    conf.fg_image_ratio = 1.0
    conf.box_samples = 0.20
    conf.fg_fraction = 0.20
    conf.bg_thresh_lo = 0
    conf.bg_thresh_hi = 0.5
    conf.fg_thresh = 0.5
    conf.ign_thresh = 0.5
    conf.best_thresh = 0.35

    # ----------------------------------------
    #  inference and testing
    # ----------------------------------------

    # nms
    conf.nms_topN_pre = 3000
    conf.nms_topN_post = 40
    conf.nms_thres = 0.4
    conf.clip_boxes = False

    conf.test_protocol = 'kitti'
    conf.test_db = 'kitti'
    conf.test_min_h = 0
    conf.min_det_scales = [0, 0]

    # ----------------------------------------
    #  anchor settings
    # ----------------------------------------
    
    # clustering settings
    conf.cluster_anchors = 0
    conf.even_anchors = 0
    conf.expand_anchors = 0
                             
    conf.anchors = None

    conf.bbox_means = None
    conf.bbox_stds = None
    
    # initialize anchors
    base = (conf.max_gt_h / conf.min_gt_h) ** (1 / (12 - 1))
    conf.anchor_scales = np.array([conf.min_gt_h * (base ** i) for i in range(0, 12)])
    conf.anchor_ratios = np.array([0.5, 1.0, 1.5])
    
    # loss logic
    conf.hard_negatives = True
    conf.focal_loss = 0
    conf.cls_2d_lambda = 1
    conf.iou_2d_lambda = 1
    conf.bbox_2d_lambda = 0
    conf.bbox_3d_lambda = 1
    conf.bbox_3d_proj_lambda = 0.0
    
    conf.hill_climbing = True
    
    conf.bins = 32
    
    # visdom
    conf.visdom_port = 8100
    
    conf.pretrained = 'output/kitti_3d_multi_warmup/weights/model_50000_pkl'

    return conf



================================================
FILE: scripts/config/kitti_3d_multi_warmup.py
================================================
from easydict import EasyDict as edict
import numpy as np

def Config():

    conf = edict()
        
    # ----------------------------------------
    #  general
    # ----------------------------------------

    conf.model = 'densenet121_3d_dilate'
    
    # solver settings
    conf.solver_type = 'sgd'
    conf.lr = 0.004
    conf.momentum = 0.9
    conf.weight_decay = 0.0005
    conf.max_iter = 50000
    conf.snapshot_iter = 10000
    conf.display = 250
    conf.do_test = True
    
    # sgd parameters
    conf.lr_policy = 'poly'
    conf.lr_steps = None
    conf.lr_target = conf.lr * 0.00001
    
    # random
    conf.rng_seed = 2
    conf.cuda_seed = 2
    
    # misc network
    conf.image_means = [0.485, 0.456, 0.406]
    conf.image_stds = [0.229, 0.224, 0.225]
    conf.feat_stride = 16
    
    conf.has_3d = True

    # ----------------------------------------
    #  image sampling and datasets
    # ----------------------------------------

    # scale sampling  
    conf.test_scale = 512
    conf.crop_size = [512, 1760]
    conf.mirror_prob = 0.50
    conf.distort_prob = -1
    
    # datasets
    conf.dataset_test = 'kitti_split1'
    conf.datasets_train = [{'name': 'kitti_split1', 'anno_fmt': 'kitti_det', 'im_ext': '.png', 'scale': 1}]
    conf.use_3d_for_2d = True
    
    # percent expected height ranges based on test_scale
    # used for anchor selection 
    conf.percent_anc_h = [0.0625, 0.75]
    
    # labels settings
    conf.min_gt_h = conf.test_scale*conf.percent_anc_h[0]
    conf.max_gt_h = conf.test_scale*conf.percent_anc_h[1]
    conf.min_gt_vis = 0.65
    conf.ilbls = ['Van', 'ignore']
    conf.lbls = ['Car', 'Pedestrian', 'Cyclist']
    
    # ----------------------------------------
    #  detection sampling
    # ----------------------------------------
    
    # detection sampling
    conf.batch_size = 2
    conf.fg_image_ratio = 1.0
    conf.box_samples = 0.20
    conf.fg_fraction = 0.20
    conf.bg_thresh_lo = 0
    conf.bg_thresh_hi = 0.5
    conf.fg_thresh = 0.5
    conf.ign_thresh = 0.5
    conf.best_thresh = 0.35

    # ----------------------------------------
    #  inference and testing
    # ----------------------------------------

    # nms
    conf.nms_topN_pre = 3000
    conf.nms_topN_post = 40
    conf.nms_thres = 0.4
    conf.clip_boxes = False

    conf.test_protocol = 'kitti'
    conf.test_db = 'kitti'
    conf.test_min_h = 0
    conf.min_det_scales = [0, 0]

    # ----------------------------------------
    #  anchor settings
    # ----------------------------------------
    
    # clustering settings
    conf.cluster_anchors = 0
    conf.even_anchors = 0
    conf.expand_anchors = 0
                             
    conf.anchors = None

    conf.bbox_means = None
    conf.bbox_stds = None
    
    # initialize anchors
    base = (conf.max_gt_h / conf.min_gt_h) ** (1 / (12 - 1))
    conf.anchor_scales = np.array([conf.min_gt_h * (base ** i) for i in range(0, 12)])
    conf.anchor_ratios = np.array([0.5, 1.0, 1.5])
    
    # loss logic
    conf.hard_negatives = True
    conf.focal_loss = 0
    conf.cls_2d_lambda = 1
    conf.iou_2d_lambda = 1
    conf.bbox_2d_lambda = 0
    conf.bbox_3d_lambda = 1
    conf.bbox_3d_proj_lambda = 0.0
    
    conf.hill_climbing = True
    
    # visdom
    conf.visdom_port = 8100

    return conf



================================================
FILE: scripts/test_rpn_3d.py
================================================
# -----------------------------------------
# python modules
# -----------------------------------------
from importlib import import_module
from easydict import EasyDict as edict
import torch.backends.cudnn as cudnn
import sys
import numpy as np
import os

# stop python from writing so much bytecode
sys.dont_write_bytecode = True
sys.path.append(os.getcwd())
np.set_printoptions(suppress=True)

# -----------------------------------------
# custom modules
# -----------------------------------------
from lib.imdb_util import *

conf_path = '/home/garrick/Desktop/M3D-RPN-Release/m3d_rpn_depth_aware_test_config.pkl'
weights_path = '/home/garrick/Desktop/M3D-RPN-Release/m3d_rpn_depth_aware_test'

# load config
conf = edict(pickle_read(conf_path))
conf.pretrained = None

data_path = os.path.join(os.getcwd(), 'data')
results_path = os.path.join('output', 'tmp_results', 'data')

# make directory
mkdir_if_missing(results_path, delete_if_exist=True)

# -----------------------------------------
# torch defaults
# -----------------------------------------

# defaults
init_torch(conf.rng_seed, conf.cuda_seed)

# -----------------------------------------
# setup network
# -----------------------------------------

# net
net = import_module('models.' + conf.model).build(conf)

# load weights
load_weights(net, weights_path, remove_module=True)

# switch modes for evaluation
net.eval()

print(pretty_print('conf', conf))

# -----------------------------------------
# test kitti
# -----------------------------------------

test_kitti_3d(conf.dataset_test, net, conf, results_path, data_path, use_log=False)

================================================
FILE: scripts/train_rpn_3d.py
================================================
# -----------------------------------------
# python modules
# -----------------------------------------
from easydict import EasyDict as edict
from getopt import getopt
import numpy as np
import sys
import os

# stop python from writing so much bytecode
sys.dont_write_bytecode = True
sys.path.append(os.getcwd())
np.set_printoptions(suppress=True)

# -----------------------------------------
# custom modules
# -----------------------------------------
from lib.core import *
from lib.imdb_util import *
from lib.loss.rpn_3d import *


def main(argv):

    # -----------------------------------------
    # parse arguments
    # -----------------------------------------
    opts, args = getopt(argv, '', ['config=', 'restore='])

    # defaults
    conf_name = None
    restore = None

    # read opts
    for opt, arg in opts:

        if opt in ('--config'): conf_name = arg
        if opt in ('--restore'): restore = int(arg)

    # required opt
    if conf_name is None:
        raise ValueError('Please provide a configuration file name, e.g., --config=')

    # -----------------------------------------
    # basic setup
    # -----------------------------------------

    conf = init_config(conf_name)
    paths = init_training_paths(conf_name)

    init_torch(conf.rng_seed, conf.cuda_seed)
    init_log_file(paths.logs)

    vis = init_visdom(conf_name, conf.visdom_port)

    # defaults
    start_iter = 0
    tracker = edict()
    iterator = None
    has_visdom = vis is not None

    dataset = Dataset(conf, paths.data, paths.output)

    generate_anchors(conf, dataset.imdb, paths.output)
    compute_bbox_stats(conf, dataset.imdb, paths.output)


    # -----------------------------------------
    # store config
    # -----------------------------------------

    # store configuration
    pickle_write(os.path.join(paths.output, 'conf.pkl'), conf)

    # show configuration
    pretty = pretty_print('conf', conf)
    logging.info(pretty)


    # -----------------------------------------
    # network and loss
    # -----------------------------------------

    # training network
    rpn_net, optimizer = init_training_model(conf, paths.output)

    # setup loss
    criterion_det = RPN_3D_loss(conf)

    # custom pretrained network
    if 'pretrained' in conf:

        load_weights(rpn_net, conf.pretrained)

    # resume training
    if restore:
        start_iter = (restore - 1)
        resume_checkpoint(optimizer, rpn_net, paths.weights, restore)

    freeze_blacklist = None if 'freeze_blacklist' not in conf else conf.freeze_blacklist
    freeze_whitelist = None if 'freeze_whitelist' not in conf else conf.freeze_whitelist

    freeze_layers(rpn_net, freeze_blacklist, freeze_whitelist)

    optimizer.zero_grad()

    start_time = time()

    # -----------------------------------------
    # train
    # -----------------------------------------

    for iteration in range(start_iter, conf.max_iter):

        # next iteration
        iterator, images, imobjs = next_iteration(dataset.loader, iterator)

        #  learning rate
        adjust_lr(conf, optimizer, iteration)

        # forward
        cls, prob, bbox_2d, bbox_3d, feat_size = rpn_net(images)

        # loss
        det_loss, det_stats = criterion_det(cls, prob, bbox_2d, bbox_3d, imobjs, feat_size)

        total_loss = det_loss
        stats = det_stats

        # backprop
        if total_loss > 0:

            total_loss.backward()

            # batch skip, simulates larger batches by skipping gradient step
            if (not 'batch_skip' in conf) or ((iteration + 1) % conf.batch_skip) == 0:
                optimizer.step()
                optimizer.zero_grad()

        # keep track of stats
        compute_stats(tracker, stats)

        # -----------------------------------------
        # display
        # -----------------------------------------
        if (iteration + 1) % conf.display == 0 and iteration > start_iter:

            # log results
            log_stats(tracker, iteration, start_time, start_iter, conf.max_iter)

            # display results
            if has_visdom:
                display_stats(vis, tracker, iteration, start_time, start_iter, conf.max_iter, conf_name, pretty)

            # reset tracker
            tracker = edict()

        # -----------------------------------------
        # test network
        # -----------------------------------------
        if (iteration + 1) % conf.snapshot_iter == 0 and iteration > start_iter:

            # store checkpoint
            save_checkpoint(optimizer, rpn_net, paths.weights, (iteration + 1))

            if conf.do_test:

                # eval mode
                rpn_net.eval()

                # necessary paths
                results_path = os.path.join(paths.results, 'results_{}'.format((iteration + 1)))

                # -----------------------------------------
                # test kitti
                # -----------------------------------------
                if conf.test_protocol.lower() == 'kitti':

                    # delete and re-make
                    results_path = os.path.join(results_path, 'data')
                    mkdir_if_missing(results_path, delete_if_exist=True)

                    test_kitti_3d(conf.dataset_test, rpn_net, conf, results_path, paths.data)

                else:
                    logging.warning('Testing protocol {} not understood.'.format(conf.test_protocol))

                # train mode
                rpn_net.train()

                freeze_layers(rpn_net, freeze_blacklist, freeze_whitelist)


# run from command line
if __name__ == "__main__":
    main(sys.argv[1:])


================================================
FILE: setup.md
================================================

# Setup for M3D-RPN

This document acts as a (suggested) guide for setting up cuda, Python 3, and Anaconda. If components are already setup please feel encouraged to skip sections or use any alternative methods such as pip. 

*Note:* there are MANY alternative methods to install all below packages. This guide is only meant to serve as an example. 

#### Install cuda 8

1. Visit [https://developer.nvidia.com/cuda-80-ga2-download-archive]([https://developer.nvidia.com/cuda-80-ga2-download-archive)

1. Download the Linux -> x86_64 -> Ubuntu -> 16.04 -> deb (local) file.
	
1. Then install by
	```
	cd 
	sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb
	sudo apt-get update
	sudo apt-get install cuda-8-0
	```
	Dealing with multiple cuda versions?
	The default cuda is a softlink at */usr/local/cuda*

	If you want to change the default to cuda 8 follow the below lines, or update your environment variables. 
	```
	sudo rm /usr/local/cuda
	sudo ln /usr/local/cuda-8.0 /usr/local/cuda
    ```
	If you want to see the current default version: *ls -l /usr/local/*

#### Install proper cuDNN
		
For M3D-RPN we utilized cudnn-8.0-linux-x64-v5.1. However, please choose the appropriate package for your cuda. 

1. You must create an account to access this page: [https://developer.nvidia.com/rdp/cudnn-archive](https://developer.nvidia.com/rdp/cudnn-archive)

1. Then download your preferred version or use this link for [cudnn-8.0-linux-x64-v5.1](https://developer.nvidia.com/compute/machine-learning/cudnn/secure/v5.1/prod_20161129/8.0/cudnn-8.0-linux-x64-v5.1-tgz).

1. Extract somewhere temporary for example to downloads, e.g., *~/Downloads/cuda*.

1. Then copy the files into your cuda directory as below:
	```
	sudo cp ~/Downloads/cuda/include/* /usr/local/cuda-8.0/include/
	sudo cp ~/Downloads/cuda/lib64/* /usr/local/cuda-8.0/lib64/
	```

#### Install Anaconda / Python 3.6.5

For M3D-RPN we utilized Python 3.6.5 Anaconda. Other versions may also work.

1. Install your preferred version of Anaconda
	```
	cd ~
	wget https://repo.continuum.io/archive/Anaconda3-5.2.0-Linux-x86_64.sh
	sh Anaconda3-5.2.0-Linux-x86_64.sh
	```

	Defaults are usually fine. 
	Recommend letting the installer add to your path and avoid microsoft extention (unless on windows). 
	Before doing any of the below make sure that the path is setup properly:
	
    ```
    python --version
    ```
	Hopefully you see Python 3.6.5, Anaconda Inc. 

1. Install python packages.
	
	```
	conda install -c menpo opencv3=3.1.0 openblas
	conda install cython scikit-image h5py nose pandas protobuf atlas libgfortran
	```
    
    If there are compatibility issues. Refer to [python_packages.txt](python_packages.txt) for specific versions known to work. 

1. Install pytorch

	Assuming cuda-8.0 is installed. Otherwise, refer to the official [pytorch website](https://pytorch.org/). 

	```
	conda install pytorch torchvision cuda80 -c pytorch
	```

1. Install visdom (optional, for graph monitoring while training)
	```
	conda install -c conda-forge visdom
	```