diff --git a/mediapipe/tasks/cc/vision/face_landmarker/face_landmarker_graph_test.cc b/mediapipe/tasks/cc/vision/face_landmarker/face_landmarker_graph_test.cc index 251f788ac..063d6835e 100644 --- a/mediapipe/tasks/cc/vision/face_landmarker/face_landmarker_graph_test.cc +++ b/mediapipe/tasks/cc/vision/face_landmarker/face_landmarker_graph_test.cc @@ -68,19 +68,17 @@ using ::testing::proto::Approximately; using ::testing::proto::Partially; constexpr char kTestDataDirectory[] = "/mediapipe/tasks/testdata/vision/"; -constexpr char kFaceLandmarkerModelBundleName[] = "face_landmarker.task"; +constexpr char kFaceLandmarkerModelBundleName[] = "face_landmarker_v2.task"; constexpr char kFaceLandmarkerWithBlendshapesModelBundleName[] = - "face_landmarker_with_blendshapes.task"; + "face_landmarker_v2_with_blendshapes.task"; constexpr char kPortraitImageName[] = "portrait.jpg"; constexpr char kCatImageName[] = "cat.jpg"; -constexpr char kPortraitExpectedFaceLandamrksName[] = +constexpr char kPortraitExpectedFaceLandmarksName[] = "portrait_expected_face_landmarks.pbtxt"; -constexpr char kPortraitExpectedFaceLandamrksWithAttentionName[] = - "portrait_expected_face_landmarks_with_attention.pbtxt"; constexpr char kPortraitExpectedBlendshapesName[] = - "portrait_expected_blendshapes_with_attention.pbtxt"; + "portrait_expected_blendshapes.pbtxt"; constexpr char kPortraitExpectedFaceGeometryName[] = - "portrait_expected_face_geometry_with_attention.pbtxt"; + "portrait_expected_face_geometry.pbtxt"; constexpr char kImageTag[] = "IMAGE"; constexpr char kImageName[] = "image"; @@ -95,7 +93,7 @@ constexpr char kFaceGeometryName[] = "face_geometry"; constexpr float kLandmarksDiffMargin = 0.03; constexpr float kBlendshapesDiffMargin = 0.1; -constexpr float kFaceGeometryDiffMargin = 0.01; +constexpr float kFaceGeometryDiffMargin = 0.02; template ProtoT GetExpectedProto(absl::string_view filename) { @@ -250,7 +248,7 @@ INSTANTIATE_TEST_SUITE_P( /* test_image_name= */ kPortraitImageName, /* expected_landmarks_list= */ {{GetExpectedProto( - kPortraitExpectedFaceLandamrksName)}}, + kPortraitExpectedFaceLandmarksName)}}, /* expected_blendshapes= */ std::nullopt, /* expected_face_geometry= */ std::nullopt, /* landmarks_diff_threshold= */ kLandmarksDiffMargin, @@ -275,7 +273,7 @@ INSTANTIATE_TEST_SUITE_P( /* test_image_name= */ kPortraitImageName, /* expected_landmarks_list= */ {{GetExpectedProto( - kPortraitExpectedFaceLandamrksWithAttentionName)}}, + kPortraitExpectedFaceLandmarksName)}}, /* expected_blendshapes= */ {{GetExpectedProto( kPortraitExpectedBlendshapesName)}}, @@ -290,7 +288,7 @@ INSTANTIATE_TEST_SUITE_P( /* test_image_name= */ kPortraitImageName, /* expected_landmarks_list= */ {{GetExpectedProto( - kPortraitExpectedFaceLandamrksWithAttentionName)}}, + kPortraitExpectedFaceLandmarksName)}}, /* expected_blendshapes= */ {{GetExpectedProto( kPortraitExpectedBlendshapesName)}}, diff --git a/mediapipe/tasks/cc/vision/face_landmarker/face_landmarker_test.cc b/mediapipe/tasks/cc/vision/face_landmarker/face_landmarker_test.cc index 033f92cf1..411693ecf 100644 --- a/mediapipe/tasks/cc/vision/face_landmarker/face_landmarker_test.cc +++ b/mediapipe/tasks/cc/vision/face_landmarker/face_landmarker_test.cc @@ -43,6 +43,7 @@ limitations under the License. #include "mediapipe/tasks/cc/components/processors/proto/classifier_options.pb.h" #include "mediapipe/tasks/cc/core/base_options.h" #include "mediapipe/tasks/cc/vision/core/image_processing_options.h" +#include "mediapipe/tasks/cc/vision/face_geometry/proto/face_geometry.pb.h" #include "mediapipe/tasks/cc/vision/face_landmarker/face_landmarker_result.h" #include "mediapipe/tasks/cc/vision/utils/image_utils.h" @@ -59,19 +60,18 @@ using ::testing::TestWithParam; using ::testing::Values; constexpr char kTestDataDirectory[] = "/mediapipe/tasks/testdata/vision/"; -constexpr char kFaceLandmarkerModelBundleName[] = "face_landmarker.task"; constexpr char kFaceLandmarkerWithBlendshapesModelBundleName[] = - "face_landmarker_with_blendshapes.task"; + "face_landmarker_v2_with_blendshapes.task"; constexpr char kPortraitImageName[] = "portrait.jpg"; -constexpr char kPortraitExpectedFaceLandamrksName[] = +constexpr char kPortraitExpectedFaceLandmarksName[] = "portrait_expected_face_landmarks.pbtxt"; -constexpr char kPortraitExpectedFaceLandmarksWithAttentionName[] = - "portrait_expected_face_landmarks_with_attention.pbtxt"; constexpr char kPortraitExpectedBlendshapesName[] = - "portrait_expected_blendshapes_with_attention.pbtxt"; + "portrait_expected_blendshapes.pbtxt"; +constexpr char kPortaitExpectedFaceGeomertyName[] = + "portrait_expected_face_geometry.pbtxt"; constexpr float kLandmarksDiffMargin = 0.03; -constexpr float kBlendshapesDiffMargin = 0.1; +constexpr float kBlendshapesDiffMargin = 0.12; constexpr float kFacialTransformationMatrixDiffMargin = 0.02; template @@ -99,13 +99,9 @@ struct FaceLandmarkerTestParams { }; mediapipe::MatrixData MakePortraitExpectedFacialTransformationMatrix() { - const Matrix matrix{{0.9995292, -0.005092691, 0.030254554, -0.37340546}, - {0.0072318087, 0.99744856, -0.07102106, 22.212194}, - {-0.029815676, 0.07120642, 0.9970159, -64.76358}, - {0, 0, 0, 1}}; - mediapipe::MatrixData matrix_data; - MatrixDataProtoFromMatrix(matrix, &matrix_data); - return matrix_data; + auto face_geometry = GetExpectedProto( + kPortaitExpectedFaceGeomertyName); + return face_geometry.pose_transform_matrix(); } testing::Matcher LandmarkIs( @@ -232,51 +228,41 @@ TEST_P(ImageModeTest, Succeeds) { INSTANTIATE_TEST_SUITE_P( FaceLandmarkerTest, ImageModeTest, - Values(FaceLandmarkerTestParams{ - /* test_name= */ "Portrait", - /* input_model_name= */ kFaceLandmarkerModelBundleName, - /* test_image_name= */ kPortraitImageName, - /* rotation= */ 0, - /* expected_result= */ - ConvertToFaceLandmarkerResult( - {GetExpectedProto( - kPortraitExpectedFaceLandamrksName)})}, - FaceLandmarkerTestParams{ - /* test_name= */ "PortraitWithAttention", - /* input_model_name= */ - kFaceLandmarkerWithBlendshapesModelBundleName, - /* test_image_name= */ kPortraitImageName, - /* rotation= */ 0, - /* expected_result= */ - ConvertToFaceLandmarkerResult( - {GetExpectedProto( - kPortraitExpectedFaceLandmarksWithAttentionName)})}, - FaceLandmarkerTestParams{ - /* test_name= */ "PortraitWithBlendshapes", - /* input_model_name= */ - kFaceLandmarkerWithBlendshapesModelBundleName, - /* test_image_name= */ kPortraitImageName, - /* rotation= */ 0, - /* expected_result= */ - ConvertToFaceLandmarkerResult( - {GetExpectedProto( - kPortraitExpectedFaceLandmarksWithAttentionName)}, - {{GetExpectedProto( - kPortraitExpectedBlendshapesName)}})}, - FaceLandmarkerTestParams{ - /* test_name= */ "PortraitWithBlendshapesWithFacialTransformatio" - "nMatrix", - /* input_model_name= */ - kFaceLandmarkerWithBlendshapesModelBundleName, - /* test_image_name= */ kPortraitImageName, - /* rotation= */ 0, - /* expected_result= */ - ConvertToFaceLandmarkerResult( - {GetExpectedProto( - kPortraitExpectedFaceLandmarksWithAttentionName)}, - {{GetExpectedProto( - kPortraitExpectedBlendshapesName)}}, - {{MakePortraitExpectedFacialTransformationMatrix()}})}), + Values( + FaceLandmarkerTestParams{/* test_name= */ "PortraitV2", + /* input_model_name= */ + kFaceLandmarkerWithBlendshapesModelBundleName, + /* test_image_name= */ kPortraitImageName, + /* rotation= */ 0, + /* expected_result= */ + ConvertToFaceLandmarkerResult( + {GetExpectedProto( + kPortraitExpectedFaceLandmarksName)})}, + FaceLandmarkerTestParams{/* test_name= */ "PortraitWithBlendshapes", + /* input_model_name= */ + kFaceLandmarkerWithBlendshapesModelBundleName, + /* test_image_name= */ kPortraitImageName, + /* rotation= */ 0, + /* expected_result= */ + ConvertToFaceLandmarkerResult( + {GetExpectedProto( + kPortraitExpectedFaceLandmarksName)}, + {{GetExpectedProto( + kPortraitExpectedBlendshapesName)}})}, + FaceLandmarkerTestParams{ + /* test_name= */ "PortraitWithBlendshapesWithFacialTransformatio" + "nMatrix", + /* input_model_name= */ + kFaceLandmarkerWithBlendshapesModelBundleName, + /* test_image_name= */ kPortraitImageName, + /* rotation= */ 0, + /* expected_result= */ + ConvertToFaceLandmarkerResult( + {GetExpectedProto( + kPortraitExpectedFaceLandmarksName)}, + {{GetExpectedProto( + kPortraitExpectedBlendshapesName)}}, + {{MakePortraitExpectedFacialTransformationMatrix()}})}), [](const TestParamInfo& info) { return info.param.test_name; }); @@ -318,37 +304,28 @@ TEST_P(VideoModeTest, Succeeds) { INSTANTIATE_TEST_SUITE_P( FaceLandmarkerTest, VideoModeTest, - Values(FaceLandmarkerTestParams{ - /* test_name= */ "Portrait", - /* input_model_name= */ kFaceLandmarkerModelBundleName, - /* test_image_name= */ kPortraitImageName, - /* rotation= */ 0, - /* expected_result= */ - ConvertToFaceLandmarkerResult( - {GetExpectedProto( - kPortraitExpectedFaceLandamrksName)})}, - FaceLandmarkerTestParams{ - /* test_name= */ "PortraitWithAttention", - /* input_model_name= */ - kFaceLandmarkerWithBlendshapesModelBundleName, - /* test_image_name= */ kPortraitImageName, - /* rotation= */ 0, - /* expected_result= */ - ConvertToFaceLandmarkerResult( - {GetExpectedProto( - kPortraitExpectedFaceLandmarksWithAttentionName)})}, - FaceLandmarkerTestParams{ - /* test_name= */ "PortraitWithBlendshapes", - /* input_model_name= */ - kFaceLandmarkerWithBlendshapesModelBundleName, - /* test_image_name= */ kPortraitImageName, - /* rotation= */ 0, - /* expected_result= */ - ConvertToFaceLandmarkerResult( - {GetExpectedProto( - kPortraitExpectedFaceLandmarksWithAttentionName)}, - {{GetExpectedProto( - kPortraitExpectedBlendshapesName)}})}), + Values( + + FaceLandmarkerTestParams{/* test_name= */ "Portrait", + /* input_model_name= */ + kFaceLandmarkerWithBlendshapesModelBundleName, + /* test_image_name= */ kPortraitImageName, + /* rotation= */ 0, + /* expected_result= */ + ConvertToFaceLandmarkerResult( + {GetExpectedProto( + kPortraitExpectedFaceLandmarksName)})}, + FaceLandmarkerTestParams{/* test_name= */ "PortraitWithBlendshapes", + /* input_model_name= */ + kFaceLandmarkerWithBlendshapesModelBundleName, + /* test_image_name= */ kPortraitImageName, + /* rotation= */ 0, + /* expected_result= */ + ConvertToFaceLandmarkerResult( + {GetExpectedProto( + kPortraitExpectedFaceLandmarksName)}, + {{GetExpectedProto( + kPortraitExpectedBlendshapesName)}})}), [](const TestParamInfo& info) { return info.param.test_name; }); @@ -413,37 +390,27 @@ TEST_P(LiveStreamModeTest, Succeeds) { INSTANTIATE_TEST_SUITE_P( FaceLandmarkerTest, LiveStreamModeTest, - Values(FaceLandmarkerTestParams{ - /* test_name= */ "Portrait", - /* input_model_name= */ kFaceLandmarkerModelBundleName, - /* test_image_name= */ kPortraitImageName, - /* rotation= */ 0, - /* expected_result= */ - ConvertToFaceLandmarkerResult( - {GetExpectedProto( - kPortraitExpectedFaceLandamrksName)})}, - FaceLandmarkerTestParams{ - /* test_name= */ "PortraitWithAttention", - /* input_model_name= */ - kFaceLandmarkerWithBlendshapesModelBundleName, - /* test_image_name= */ kPortraitImageName, - /* rotation= */ 0, - /* expected_result= */ - ConvertToFaceLandmarkerResult( - {GetExpectedProto( - kPortraitExpectedFaceLandmarksWithAttentionName)})}, - FaceLandmarkerTestParams{ - /* test_name= */ "PortraitWithBlendshapes", - /* input_model_name= */ - kFaceLandmarkerWithBlendshapesModelBundleName, - /* test_image_name= */ kPortraitImageName, - /* rotation= */ 0, - /* expected_result= */ - ConvertToFaceLandmarkerResult( - {GetExpectedProto( - kPortraitExpectedFaceLandmarksWithAttentionName)}, - {{GetExpectedProto( - kPortraitExpectedBlendshapesName)}})}), + Values( + FaceLandmarkerTestParams{/* test_name= */ "Portrait", + /* input_model_name= */ + kFaceLandmarkerWithBlendshapesModelBundleName, + /* test_image_name= */ kPortraitImageName, + /* rotation= */ 0, + /* expected_result= */ + ConvertToFaceLandmarkerResult( + {GetExpectedProto( + kPortraitExpectedFaceLandmarksName)})}, + FaceLandmarkerTestParams{/* test_name= */ "PortraitWithBlendshapes", + /* input_model_name= */ + kFaceLandmarkerWithBlendshapesModelBundleName, + /* test_image_name= */ kPortraitImageName, + /* rotation= */ 0, + /* expected_result= */ + ConvertToFaceLandmarkerResult( + {GetExpectedProto( + kPortraitExpectedFaceLandmarksName)}, + {{GetExpectedProto( + kPortraitExpectedBlendshapesName)}})}), [](const TestParamInfo& info) { return info.param.test_name; }); diff --git a/mediapipe/tasks/cc/vision/face_landmarker/face_landmarks_detector_graph.cc b/mediapipe/tasks/cc/vision/face_landmarker/face_landmarks_detector_graph.cc index df9cab5b5..7ce0fcaa2 100644 --- a/mediapipe/tasks/cc/vision/face_landmarker/face_landmarks_detector_graph.cc +++ b/mediapipe/tasks/cc/vision/face_landmarker/face_landmarks_detector_graph.cc @@ -82,8 +82,6 @@ constexpr char kBlendshapesTag[] = "BLENDSHAPES"; // a landmarks tensor and a scores tensor constexpr int kFaceLandmarksOutputTensorsNum = 2; -// 6 landmarks tensors and a scores tensor. -constexpr int kAttentionMeshOutputTensorsNum = 7; struct SingleFaceLandmarksOutputs { Stream landmarks; @@ -116,28 +114,18 @@ absl::Status SanityCheckOptions( // Split face landmark detection model output tensor into two parts, // representing landmarks and face presence scores. void ConfigureSplitTensorVectorCalculator( - bool is_attention_model, mediapipe::SplitVectorCalculatorOptions* options) { - if (is_attention_model) { - auto* range = options->add_ranges(); - range->set_begin(0); - range->set_end(kAttentionMeshOutputTensorsNum - 1); - range = options->add_ranges(); - range->set_begin(kAttentionMeshOutputTensorsNum - 1); - range->set_end(kAttentionMeshOutputTensorsNum); - } else { - auto* range = options->add_ranges(); - range->set_begin(0); - range->set_end(kFaceLandmarksOutputTensorsNum - 1); - range = options->add_ranges(); - range->set_begin(kFaceLandmarksOutputTensorsNum - 1); - range->set_end(kFaceLandmarksOutputTensorsNum); - } + mediapipe::SplitVectorCalculatorOptions* options) { + auto* range = options->add_ranges(); + range->set_begin(0); + range->set_end(kFaceLandmarksOutputTensorsNum - 1); + range = options->add_ranges(); + range->set_begin(kFaceLandmarksOutputTensorsNum - 1); + range->set_end(kFaceLandmarksOutputTensorsNum); } void ConfigureTensorsToFaceLandmarksGraph( - const ImageTensorSpecs& input_image_tensor_spec, bool is_attention_model, + const ImageTensorSpecs& input_image_tensor_spec, proto::TensorsToFaceLandmarksGraphOptions* options) { - options->set_is_attention_model(is_attention_model); options->set_input_image_height(input_image_tensor_spec.image_height); options->set_input_image_width(input_image_tensor_spec.image_width); } @@ -160,12 +148,6 @@ void ConfigureFaceRectTransformationCalculator( options->set_square_long(true); } -bool IsAttentionModel(const core::ModelResources& model_resources) { - const auto* model = model_resources.GetTfLiteModel(); - const auto* primary_subgraph = (*model->subgraphs())[0]; - return primary_subgraph->outputs()->size() == kAttentionMeshOutputTensorsNum; -} - } // namespace // A "mediapipe.tasks.vision.face_landmarker.SingleFaceLandmarksDetectorGraph" @@ -342,10 +324,8 @@ class SingleFaceLandmarksDetectorGraph : public core::ModelTaskGraph { auto output_tensors = inference.Out(kTensorsTag); // Split model output tensors to multiple streams. - bool is_attention_model = IsAttentionModel(model_resources); auto& split_tensors_vector = graph.AddNode("SplitTensorVectorCalculator"); ConfigureSplitTensorVectorCalculator( - is_attention_model, &split_tensors_vector .GetOptions()); output_tensors >> split_tensors_vector.In(""); @@ -359,7 +339,7 @@ class SingleFaceLandmarksDetectorGraph : public core::ModelTaskGraph { auto& tensors_to_face_landmarks = graph.AddNode( "mediapipe.tasks.vision.face_landmarker.TensorsToFaceLandmarksGraph"); ConfigureTensorsToFaceLandmarksGraph( - image_tensor_specs, is_attention_model, + image_tensor_specs, &tensors_to_face_landmarks .GetOptions()); landmark_tensors >> tensors_to_face_landmarks.In(kTensorsTag); diff --git a/mediapipe/tasks/cc/vision/face_landmarker/face_landmarks_detector_graph_test.cc b/mediapipe/tasks/cc/vision/face_landmarker/face_landmarks_detector_graph_test.cc index 72e92be9d..a415125d9 100644 --- a/mediapipe/tasks/cc/vision/face_landmarker/face_landmarks_detector_graph_test.cc +++ b/mediapipe/tasks/cc/vision/face_landmarker/face_landmarks_detector_graph_test.cc @@ -65,18 +65,15 @@ using ::testing::proto::Approximately; using ::testing::proto::Partially; constexpr char kTestDataDirectory[] = "/mediapipe/tasks/testdata/vision/"; -constexpr char kFaceLandmarksDetectionModel[] = "face_landmark.tflite"; -constexpr char kFaceLandmarksDetectionWithAttentionModel[] = - "face_landmark_with_attention.tflite"; +constexpr char kFaceLandmarksV2Model[] = + "facemesh2_lite_iris_faceflag_2023_02_14.tflite"; constexpr char kPortraitImageName[] = "portrait.jpg"; constexpr char kCatImageName[] = "cat.jpg"; -constexpr char kPortraitExpectedFaceLandamrksName[] = +constexpr char kPortraitExpectedFaceLandmarksName[] = "portrait_expected_face_landmarks.pbtxt"; -constexpr char kPortraitExpectedFaceLandamrksWithAttentionName[] = - "portrait_expected_face_landmarks_with_attention.pbtxt"; constexpr char kFaceBlendshapesModel[] = "face_blendshapes.tflite"; constexpr char kPortraitExpectedBlendshapesName[] = - "portrait_expected_blendshapes_with_attention.pbtxt"; + "portrait_expected_blendshapes.pbtxt"; constexpr char kImageTag[] = "IMAGE"; constexpr char kImageName[] = "image"; @@ -363,35 +360,22 @@ TEST_P(MultiFaceLandmarksDetectionTest, Succeeds) { INSTANTIATE_TEST_SUITE_P( FaceLandmarksDetectionTest, SingleFaceLandmarksDetectionTest, Values(SingeFaceTestParams{ - /* test_name= */ "Portrait", - /* landmarks_model_name= */ kFaceLandmarksDetectionModel, - /* blendshape_model_name= */ std::nullopt, - /* test_image_name=*/kPortraitImageName, - /* norm_rect= */ MakeNormRect(0.4987, 0.2211, 0.2877, 0.2303, 0), - /* expected_presence= */ true, - /* expected_landmarks= */ - GetExpectedLandmarkList(kPortraitExpectedFaceLandamrksName), - /* expected_blendshapes= */ std::nullopt, - /* landmarks_diff_threshold= */ kFractionDiff, - /* blendshapes_diff_threshold= */ kBlendshapesDiffMargin}, - SingeFaceTestParams{ - /* test_name= */ "PortraitWithAttention", + /* test_name= */ "PortraitV2", /* landmarks_model_name= */ - kFaceLandmarksDetectionWithAttentionModel, + kFaceLandmarksV2Model, /* blendshape_model_name= */ std::nullopt, /* test_image_name= */ kPortraitImageName, /* norm_rect= */ MakeNormRect(0.4987, 0.2211, 0.2877, 0.2303, 0), /* expected_presence= */ true, /* expected_landmarks= */ - GetExpectedLandmarkList( - kPortraitExpectedFaceLandamrksWithAttentionName), + GetExpectedLandmarkList(kPortraitExpectedFaceLandmarksName), /* expected_blendshapes= */ std::nullopt, /* landmarks_diff_threshold= */ kFractionDiff, /* blendshapes_diff_threshold= */ kBlendshapesDiffMargin}, SingeFaceTestParams{ - /* test_name= */ "PortraitWithAttentionWithBlendshapes", + /* test_name= */ "PortraitV2WithBlendshapes", /* landmarks_model_name= */ - kFaceLandmarksDetectionWithAttentionModel, + kFaceLandmarksV2Model, /* blendshape_model_name= */ kFaceBlendshapesModel, /* test_image_name= */ kPortraitImageName, /* norm_rect= */ @@ -399,8 +383,7 @@ INSTANTIATE_TEST_SUITE_P( 0.008304443), /* expected_presence= */ true, /* expected_landmarks= */ - GetExpectedLandmarkList( - kPortraitExpectedFaceLandamrksWithAttentionName), + GetExpectedLandmarkList(kPortraitExpectedFaceLandmarksName), /* expected_blendshapes= */ GetBlendshapes(kPortraitExpectedBlendshapesName), /* landmarks_diff_threshold= */ kFractionDiff, @@ -414,35 +397,22 @@ INSTANTIATE_TEST_SUITE_P( FaceLandmarksDetectionTest, MultiFaceLandmarksDetectionTest, Values( MultiFaceTestParams{ - /* test_name= */ "Portrait", - /* landmarks_model_name= */ kFaceLandmarksDetectionModel, + /* test_name= */ "PortraitWithV2", + /* landmarks_model_name= */ + kFaceLandmarksV2Model, /* blendshape_model_name= */ std::nullopt, /* test_image_name= */ kPortraitImageName, /* norm_rects= */ {MakeNormRect(0.4987, 0.2211, 0.2877, 0.2303, 0)}, /* expected_presence= */ {true}, /* expected_landmarks_list= */ - {{GetExpectedLandmarkList(kPortraitExpectedFaceLandamrksName)}}, + {{GetExpectedLandmarkList(kPortraitExpectedFaceLandmarksName)}}, /* expected_blendshapes= */ std::nullopt, /* landmarks_diff_threshold= */ kFractionDiff, /* blendshapes_diff_threshold= */ kBlendshapesDiffMargin}, MultiFaceTestParams{ - /* test_name= */ "PortraitWithAttention", + /* test_name= */ "PortraitWithV2WithBlendshapes", /* landmarks_model_name= */ - kFaceLandmarksDetectionWithAttentionModel, - /* blendshape_model_name= */ std::nullopt, - /* test_image_name= */ kPortraitImageName, - /* norm_rects= */ {MakeNormRect(0.4987, 0.2211, 0.2877, 0.2303, 0)}, - /* expected_presence= */ {true}, - /* expected_landmarks_list= */ - {{GetExpectedLandmarkList( - kPortraitExpectedFaceLandamrksWithAttentionName)}}, - /* expected_blendshapes= */ std::nullopt, - /* landmarks_diff_threshold= */ kFractionDiff, - /* blendshapes_diff_threshold= */ kBlendshapesDiffMargin}, - MultiFaceTestParams{ - /* test_name= */ "PortraitWithAttentionWithBlendshapes", - /* landmarks_model_name= */ - kFaceLandmarksDetectionWithAttentionModel, + kFaceLandmarksV2Model, /* blendshape_model_name= */ kFaceBlendshapesModel, /* test_image_name= */ kPortraitImageName, /* norm_rects= */ @@ -450,8 +420,7 @@ INSTANTIATE_TEST_SUITE_P( 0.008304443)}, /* expected_presence= */ {true}, /* expected_landmarks_list= */ - {{GetExpectedLandmarkList( - kPortraitExpectedFaceLandamrksWithAttentionName)}}, + {{GetExpectedLandmarkList(kPortraitExpectedFaceLandmarksName)}}, /* expected_blendshapes= */ {{GetBlendshapes(kPortraitExpectedBlendshapesName)}}, /* landmarks_diff_threshold= */ kFractionDiff, @@ -459,7 +428,7 @@ INSTANTIATE_TEST_SUITE_P( MultiFaceTestParams{ /* test_name= */ "NoFace", /* landmarks_model_name= */ - kFaceLandmarksDetectionModel, + kFaceLandmarksV2Model, /* blendshape_model_name= */ std::nullopt, /* test_image_name= */ kCatImageName, /* norm_rects= */ {MakeNormRect(0.5, 0.5, 1.0, 1.0, 0)}, diff --git a/mediapipe/tasks/cc/vision/face_landmarker/proto/tensors_to_face_landmarks_graph_options.proto b/mediapipe/tasks/cc/vision/face_landmarker/proto/tensors_to_face_landmarks_graph_options.proto index 0ebecf002..22414b361 100644 --- a/mediapipe/tasks/cc/vision/face_landmarker/proto/tensors_to_face_landmarks_graph_options.proto +++ b/mediapipe/tasks/cc/vision/face_landmarker/proto/tensors_to_face_landmarks_graph_options.proto @@ -25,11 +25,7 @@ message TensorsToFaceLandmarksGraphOptions { optional TensorsToFaceLandmarksGraphOptions ext = 509621260; } - // Whether the landmarks model is with attention on lips and eyes. Attention - // provides more accuracy on lips and eye regions as well as iris landmarks. - optional bool is_attention_model = 1 [default = false]; + optional int32 input_image_width = 1; - optional int32 input_image_width = 2; - - optional int32 input_image_height = 3; + optional int32 input_image_height = 2; } diff --git a/mediapipe/tasks/cc/vision/face_landmarker/tensors_to_face_landmarks_graph.cc b/mediapipe/tasks/cc/vision/face_landmarker/tensors_to_face_landmarks_graph.cc index b93ee925e..4073c9e18 100644 --- a/mediapipe/tasks/cc/vision/face_landmarker/tensors_to_face_landmarks_graph.cc +++ b/mediapipe/tasks/cc/vision/face_landmarker/tensors_to_face_landmarks_graph.cc @@ -44,8 +44,8 @@ constexpr char kTensorsTag[] = "TENSORS"; constexpr char kNormLandmarksTag[] = "NORM_LANDMARKS"; constexpr char kLandmarksTag[] = "LANDMARKS"; constexpr char kRefinedLandmarksTag[] = "REFINED_LANDMARKS"; -constexpr int kAttentionModelSplitNum = 6; constexpr int kMeshLandmarksNum = 468; +constexpr int kMeshWithIrisLandmarksNum = 478; constexpr int kLipsLandmarksNum = 80; constexpr int kEyeLandmarksNum = 71; constexpr int kIrisLandmarksNum = 5; @@ -183,15 +183,6 @@ constexpr std::array kRightIrisAvgIndices = { // Upper contour (excluding corners). 466, 388, 387, 386, 385, 384, 398}; -void ConfigureSplitTensorVectorCalculator( - mediapipe::SplitVectorCalculatorOptions* options) { - for (int i = 0; i < kAttentionModelSplitNum; ++i) { - auto* range = options->add_ranges(); - range->set_begin(i); - range->set_end(i + 1); - } -} - Stream ConvertTensorsToLandmarks( int landmarks_num, int input_image_width, int input_image_height, Stream> tensors, Graph& graph) { @@ -207,79 +198,9 @@ Stream ConvertTensorsToLandmarks( .Cast(); } -Stream RefineFaceLandmarks( - Stream mesh_landmarks, - Stream lips_landmarks, - Stream left_eye_landmarks, - Stream right_eye_landmarks, - Stream left_iris_landmarks, - Stream right_iris_landmarks, Graph& graph) { - auto& refine_landmarks = graph.AddNode("LandmarksRefinementCalculator"); - auto& refinement_options = - refine_landmarks - .GetOptions(); - - // Face mesh landmarks. - auto* refinement_for_mesh = refinement_options.add_refinement(); - refinement_for_mesh->mutable_indexes_mapping()->Assign( - kMeshLandmarksIndicesMapping.begin(), kMeshLandmarksIndicesMapping.end()); - refinement_for_mesh->mutable_z_refinement()->mutable_copy(); - - // Lips landmarks. - auto* refinement_for_lips = refinement_options.add_refinement(); - refinement_for_lips->mutable_indexes_mapping()->Assign( - kLipsLandmarksIndicesMapping.begin(), kLipsLandmarksIndicesMapping.end()); - refinement_for_lips->mutable_z_refinement()->mutable_none(); - - // Left eye landmarks. - auto* refinement_for_left_eye = refinement_options.add_refinement(); - refinement_for_left_eye->mutable_indexes_mapping()->Assign( - kLeftEyeLandmarksIndicesMapping.begin(), - kLeftEyeLandmarksIndicesMapping.end()); - refinement_for_left_eye->mutable_z_refinement()->mutable_none(); - - // Right eye landmarks. - auto* refinement_for_right_eye = refinement_options.add_refinement(); - refinement_for_right_eye->mutable_indexes_mapping()->Assign( - kRightEyeLandmarksIndicesMapping.begin(), - kRightEyeLandmarksIndicesMapping.end()); - refinement_for_right_eye->mutable_z_refinement()->mutable_none(); - - // Left iris landmarks. - auto* refinement_for_left_iris = refinement_options.add_refinement(); - refinement_for_left_iris->mutable_indexes_mapping()->Assign( - kLeftIrisLandmarksIndicesMapping.begin(), - kLeftIrisLandmarksIndicesMapping.end()); - refinement_for_left_iris->mutable_z_refinement() - ->mutable_assign_average() - ->mutable_indexes_for_average() - ->Assign(kLeftIrisAvgIndices.begin(), kLeftIrisAvgIndices.end()); - - // Right iris landmarks. - auto* refinement_for_right_iris = refinement_options.add_refinement(); - refinement_for_right_iris->mutable_indexes_mapping()->Assign( - kRightIrisLandmarksIndicesMapping.begin(), - kRightIrisLandmarksIndicesMapping.end()); - refinement_for_right_iris->mutable_z_refinement() - ->mutable_assign_average() - ->mutable_indexes_for_average() - ->Assign(kRightIrisAvgIndices.begin(), kRightIrisAvgIndices.end()); - - mesh_landmarks >> refine_landmarks.In(kLandmarksTag)[0]; - lips_landmarks >> refine_landmarks.In(kLandmarksTag)[1]; - left_eye_landmarks >> refine_landmarks.In(kLandmarksTag)[2]; - right_eye_landmarks >> refine_landmarks.In(kLandmarksTag)[3]; - left_iris_landmarks >> refine_landmarks.In(kLandmarksTag)[4]; - right_iris_landmarks >> refine_landmarks.In(kLandmarksTag)[5]; - return refine_landmarks.Out(kRefinedLandmarksTag) - .Cast(); -} - } // namespace // Graph to transform face landmarks model output tensors into landmarks. -// The graph can support two types of model: regular and attention model with -// refined lips, eye and irises. // // Inputs: // TENSORS - std::vector @@ -324,41 +245,9 @@ class TensorsToFaceLandmarksGraph : public Subgraph { Stream> tensors, Graph& graph) { const int input_image_width = subgraph_options.input_image_width(); const int input_image_height = subgraph_options.input_image_height(); - if (subgraph_options.is_attention_model()) { - // Split tensors from attention model to 6 streams: mesh, lips, left_eye, - // right_eye, left_iris and right iris. - auto& split_tensors_vector = graph.AddNode("SplitTensorVectorCalculator"); - ConfigureSplitTensorVectorCalculator( - &split_tensors_vector - .GetOptions()); - tensors >> split_tensors_vector.In(""); - - auto mesh_landmarks = ConvertTensorsToLandmarks( - kMeshLandmarksNum, input_image_width, input_image_height, - split_tensors_vector.Out(0).Cast>(), graph); - auto lips_landmarks = ConvertTensorsToLandmarks( - kLipsLandmarksNum, input_image_width, input_image_height, - split_tensors_vector.Out(1).Cast>(), graph); - auto left_eye_landmarks = ConvertTensorsToLandmarks( - kEyeLandmarksNum, input_image_width, input_image_height, - split_tensors_vector.Out(2).Cast>(), graph); - auto right_eye_landmarks = ConvertTensorsToLandmarks( - kEyeLandmarksNum, input_image_width, input_image_height, - split_tensors_vector.Out(3).Cast>(), graph); - auto left_iris_landmarks = ConvertTensorsToLandmarks( - kIrisLandmarksNum, input_image_width, input_image_height, - split_tensors_vector.Out(4).Cast>(), graph); - auto right_iris_landmarks = ConvertTensorsToLandmarks( - kIrisLandmarksNum, input_image_width, input_image_height, - split_tensors_vector.Out(5).Cast>(), graph); - return RefineFaceLandmarks(mesh_landmarks, lips_landmarks, - left_eye_landmarks, right_eye_landmarks, - left_iris_landmarks, right_iris_landmarks, - graph); - } else { - return ConvertTensorsToLandmarks(kMeshLandmarksNum, input_image_width, - input_image_height, tensors, graph); - } + return ConvertTensorsToLandmarks(kMeshWithIrisLandmarksNum, + input_image_width, input_image_height, + tensors, graph); } }; diff --git a/mediapipe/tasks/javatests/com/google/mediapipe/tasks/vision/facelandmarker/FaceLandmarkerTest.java b/mediapipe/tasks/javatests/com/google/mediapipe/tasks/vision/facelandmarker/FaceLandmarkerTest.java index 4f8de86d8..0b21e863c 100644 --- a/mediapipe/tasks/javatests/com/google/mediapipe/tasks/vision/facelandmarker/FaceLandmarkerTest.java +++ b/mediapipe/tasks/javatests/com/google/mediapipe/tasks/vision/facelandmarker/FaceLandmarkerTest.java @@ -50,19 +50,16 @@ import org.junit.runners.Suite.SuiteClasses; @SuiteClasses({FaceLandmarkerTest.General.class, FaceLandmarkerTest.RunningModeTest.class}) public class FaceLandmarkerTest { private static final String FACE_LANDMARKER_BUNDLE_ASSET_FILE = - "face_landmarker_with_blendshapes.task"; + "face_landmarker_v2_with_blendshapes.task"; private static final String PORTRAIT_IMAGE = "portrait.jpg"; private static final String CAT_IMAGE = "cat.jpg"; - private static final String PORTRAIT_FACE_LANDMARKS = - "portrait_expected_face_landmarks_with_attention.pb"; - private static final String PORTRAIT_FACE_BLENDSHAPES = - "portrait_expected_blendshapes_with_attention.pb"; - private static final String PORTRAIT_FACE_GEOMETRY = - "portrait_expected_face_geometry_with_attention.pb"; + private static final String PORTRAIT_FACE_LANDMARKS = "portrait_expected_face_landmarks.pb"; + private static final String PORTRAIT_FACE_BLENDSHAPES = "portrait_expected_blendshapes.pb"; + private static final String PORTRAIT_FACE_GEOMETRY = "portrait_expected_face_geometry.pb"; private static final String TAG = "Face Landmarker Test"; private static final float FACE_LANDMARKS_ERROR_TOLERANCE = 0.01f; - private static final float FACE_BLENDSHAPES_ERROR_TOLERANCE = 0.1f; - private static final float FACIAL_TRANSFORMATION_MATRIX_ERROR_TOLERANCE = 0.01f; + private static final float FACE_BLENDSHAPES_ERROR_TOLERANCE = 0.13f; + private static final float FACIAL_TRANSFORMATION_MATRIX_ERROR_TOLERANCE = 0.02f; private static final int IMAGE_WIDTH = 820; private static final int IMAGE_HEIGHT = 1024; diff --git a/mediapipe/tasks/python/test/vision/face_landmarker_test.py b/mediapipe/tasks/python/test/vision/face_landmarker_test.py index 3c7026c3f..0cf16f3ea 100644 --- a/mediapipe/tasks/python/test/vision/face_landmarker_test.py +++ b/mediapipe/tasks/python/test/vision/face_landmarker_test.py @@ -46,16 +46,11 @@ _FaceLandmarkerOptions = face_landmarker.FaceLandmarkerOptions _RUNNING_MODE = running_mode_module.VisionTaskRunningMode _ImageProcessingOptions = image_processing_options_module.ImageProcessingOptions -_FACE_LANDMARKER_BUNDLE_ASSET_FILE = 'face_landmarker.task' +_FACE_LANDMARKER_BUNDLE_ASSET_FILE = 'face_landmarker_v2.task' _PORTRAIT_IMAGE = 'portrait.jpg' _CAT_IMAGE = 'cat.jpg' _PORTRAIT_EXPECTED_FACE_LANDMARKS = 'portrait_expected_face_landmarks.pbtxt' -_PORTRAIT_EXPECTED_FACE_LANDMARKS_WITH_ATTENTION = ( - 'portrait_expected_face_landmarks_with_attention.pbtxt' -) -_PORTRAIT_EXPECTED_BLENDSHAPES = ( - 'portrait_expected_blendshapes_with_attention.pbtxt' -) +_PORTRAIT_EXPECTED_BLENDSHAPES = 'portrait_expected_blendshapes.pbtxt' _LANDMARKS_DIFF_MARGIN = 0.03 _BLENDSHAPES_DIFF_MARGIN = 0.13 _FACIAL_TRANSFORMATION_MATRIX_DIFF_MARGIN = 0.02 @@ -94,9 +89,9 @@ def _get_expected_face_blendshapes(file_path: str): def _get_expected_facial_transformation_matrixes(): matrix = np.array([ - [0.9995292, -0.005092691, 0.030254554, -0.37340546], - [0.0072318087, 0.99744856, -0.07102106, 22.212194], - [-0.029815676, 0.07120642, 0.9970159, -64.76358], + [0.9995292, -0.01294756, 0.038823195, -0.3691378], + [0.0072318087, 0.9937692, -0.1101321, 22.75809], + [-0.03715533, 0.11070588, 0.99315894, -65.765925], [0, 0, 0, 1], ]) facial_transformation_matrixes_results = [] diff --git a/mediapipe/tasks/testdata/vision/BUILD b/mediapipe/tasks/testdata/vision/BUILD index d89a60625..649d8d452 100644 --- a/mediapipe/tasks/testdata/vision/BUILD +++ b/mediapipe/tasks/testdata/vision/BUILD @@ -45,8 +45,8 @@ mediapipe_files(srcs = [ "face_detection_full_range_sparse.tflite", "face_detection_short_range.tflite", "face_landmark.tflite", - "face_landmark_with_attention.tflite", "face_landmarker.task", + "face_landmarker_v2.task", "fist.jpg", "fist.png", "hair_segmentation.tflite", @@ -104,7 +104,7 @@ exports_files( "face_geometry_expected_out.pbtxt", "gesture_recognizer.task", "portrait_expected_detection.pbtxt", - "portrait_expected_face_geometry_with_attention.pbtxt", + "portrait_expected_face_geometry.pbtxt", "portrait_rotated_expected_detection.pbtxt", ], ) @@ -170,9 +170,8 @@ filegroup( "face_detection_full_range.tflite", "face_detection_full_range_sparse.tflite", "face_detection_short_range.tflite", - "face_landmark.tflite", - "face_landmark_with_attention.tflite", "face_landmarker.task", + "face_landmarker_v2.task", "hair_segmentation.tflite", "hand_landmark_full.tflite", "hand_landmark_lite.tflite", @@ -214,9 +213,8 @@ filegroup( "pointing_up_landmarks.pbtxt", "pointing_up_rotated_landmarks.pbtxt", "portrait_expected_detection.pbtxt", - "portrait_expected_face_geometry_with_attention.pbtxt", + "portrait_expected_face_geometry.pbtxt", "portrait_expected_face_landmarks.pbtxt", - "portrait_expected_face_landmarks_with_attention.pbtxt", "portrait_rotated_expected_detection.pbtxt", "pose_expected_detection.pbtxt", "pose_expected_expanded_rect.pbtxt", diff --git a/mediapipe/tasks/testdata/vision/face_landmarker_v2.task b/mediapipe/tasks/testdata/vision/face_landmarker_v2.task new file mode 100644 index 000000000..885f6e31d Binary files /dev/null and b/mediapipe/tasks/testdata/vision/face_landmarker_v2.task differ diff --git a/mediapipe/tasks/testdata/vision/face_landmarker_v2_with_blendshapes.task b/mediapipe/tasks/testdata/vision/face_landmarker_v2_with_blendshapes.task new file mode 100644 index 000000000..7749e045c Binary files /dev/null and b/mediapipe/tasks/testdata/vision/face_landmarker_v2_with_blendshapes.task differ diff --git a/mediapipe/tasks/testdata/vision/portrait_expected_blendshapes_with_attention.pbtxt b/mediapipe/tasks/testdata/vision/portrait_expected_blendshapes.pbtxt similarity index 100% rename from mediapipe/tasks/testdata/vision/portrait_expected_blendshapes_with_attention.pbtxt rename to mediapipe/tasks/testdata/vision/portrait_expected_blendshapes.pbtxt diff --git a/mediapipe/tasks/testdata/vision/portrait_expected_face_geometry_with_attention.pbtxt b/mediapipe/tasks/testdata/vision/portrait_expected_face_geometry.pbtxt similarity index 67% rename from mediapipe/tasks/testdata/vision/portrait_expected_face_geometry_with_attention.pbtxt rename to mediapipe/tasks/testdata/vision/portrait_expected_face_geometry.pbtxt index 7838a0fa9..84fcf22a2 100644 --- a/mediapipe/tasks/testdata/vision/portrait_expected_face_geometry_with_attention.pbtxt +++ b/mediapipe/tasks/testdata/vision/portrait_expected_face_geometry.pbtxt @@ -3,2344 +3,2344 @@ mesh { vertex_type: VERTEX_PT primitive_type: TRIANGLE - vertex_buffer: -0.03799689 - vertex_buffer: -3.8048906 - vertex_buffer: 6.2514343 + vertex_buffer: -0.0507586 + vertex_buffer: -3.6077604 + vertex_buffer: 6.285221 vertex_buffer: 0.499977 vertex_buffer: 0.652534 - vertex_buffer: -0.07643819 - vertex_buffer: -2.4758358 - vertex_buffer: 7.994301 + vertex_buffer: 0.008370638 + vertex_buffer: -2.398675 + vertex_buffer: 8.127373 vertex_buffer: 0.500026 vertex_buffer: 0.547487 - vertex_buffer: -0.06894338 - vertex_buffer: -2.574645 - vertex_buffer: 6.3893433 + vertex_buffer: 0.008864403 + vertex_buffer: -2.5351267 + vertex_buffer: 6.458145 vertex_buffer: 0.499974 vertex_buffer: 0.602372 - vertex_buffer: -0.5520295 - vertex_buffer: -0.112586975 - vertex_buffer: 6.816284 + vertex_buffer: -0.4717934 + vertex_buffer: -0.07299614 + vertex_buffer: 6.920368 vertex_buffer: 0.482113 vertex_buffer: 0.471979 - vertex_buffer: -0.07613778 - vertex_buffer: -1.8722029 - vertex_buffer: 8.131023 + vertex_buffer: 0.01600051 + vertex_buffer: -1.7957048 + vertex_buffer: 8.27182 vertex_buffer: 0.500151 vertex_buffer: 0.527156 - vertex_buffer: -0.06940973 - vertex_buffer: -0.9594631 - vertex_buffer: 7.760021 + vertex_buffer: 0.009208918 + vertex_buffer: -0.8802557 + vertex_buffer: 7.887768 vertex_buffer: 0.49991 vertex_buffer: 0.498253 - vertex_buffer: -0.02845478 - vertex_buffer: 1.6114273 - vertex_buffer: 5.7014885 + vertex_buffer: 0.037131786 + vertex_buffer: 1.6105528 + vertex_buffer: 5.800747 vertex_buffer: 0.499523 vertex_buffer: 0.401062 - vertex_buffer: -4.1439614 - vertex_buffer: 2.59441 - vertex_buffer: 2.9143295 + vertex_buffer: -4.1921606 + vertex_buffer: 2.5539198 + vertex_buffer: 2.873085 vertex_buffer: 0.289712 vertex_buffer: 0.380764 - vertex_buffer: -0.009713292 - vertex_buffer: 3.043995 - vertex_buffer: 5.0216713 + vertex_buffer: 0.039714813 + vertex_buffer: 2.984496 + vertex_buffer: 5.140789 vertex_buffer: 0.499955 vertex_buffer: 0.312398 - vertex_buffer: -9.417534e-05 - vertex_buffer: 3.827322 - vertex_buffer: 5.0039177 + vertex_buffer: 0.049476147 + vertex_buffer: 3.7680998 + vertex_buffer: 5.1329765 vertex_buffer: 0.499987 vertex_buffer: 0.269919 - vertex_buffer: 0.028620958 - vertex_buffer: 7.657343 - vertex_buffer: 3.8082962 + vertex_buffer: 0.054425478 + vertex_buffer: 7.591569 + vertex_buffer: 3.8969498 vertex_buffer: 0.500023 vertex_buffer: 0.10705 - vertex_buffer: -0.02941966 - vertex_buffer: -3.9522038 - vertex_buffer: 6.193901 + vertex_buffer: -0.05868745 + vertex_buffer: -3.77851 + vertex_buffer: 6.2252464 vertex_buffer: 0.500023 vertex_buffer: 0.666234 - vertex_buffer: -0.02399075 - vertex_buffer: -4.0650377 - vertex_buffer: 6.059799 + vertex_buffer: -0.061389446 + vertex_buffer: -3.9221811 + vertex_buffer: 6.0902023 vertex_buffer: 0.500016 vertex_buffer: 0.679224 - vertex_buffer: -0.013843775 - vertex_buffer: -4.092946 - vertex_buffer: 5.8469276 + vertex_buffer: -0.06335378 + vertex_buffer: -3.9696074 + vertex_buffer: 5.867592 vertex_buffer: 0.500023 vertex_buffer: 0.692348 - vertex_buffer: -0.0161618 - vertex_buffer: -5.430666 - vertex_buffer: 5.304981 + vertex_buffer: -0.13601232 + vertex_buffer: -5.3778963 + vertex_buffer: 5.393936 vertex_buffer: 0.499977 vertex_buffer: 0.695278 - vertex_buffer: 0.0042533875 - vertex_buffer: -5.682453 - vertex_buffer: 5.492058 + vertex_buffer: -0.14130497 + vertex_buffer: -5.629672 + vertex_buffer: 5.5836754 vertex_buffer: 0.499977 vertex_buffer: 0.705934 - vertex_buffer: 0.013091445 - vertex_buffer: -6.0028114 - vertex_buffer: 5.7031136 + vertex_buffer: -0.148139 + vertex_buffer: -5.95975 + vertex_buffer: 5.79768 vertex_buffer: 0.499977 vertex_buffer: 0.719385 - vertex_buffer: 0.026088238 - vertex_buffer: -6.3237896 - vertex_buffer: 5.6544724 + vertex_buffer: -0.14824009 + vertex_buffer: -6.2873907 + vertex_buffer: 5.751831 vertex_buffer: 0.499977 vertex_buffer: 0.737019 - vertex_buffer: -0.10522008 - vertex_buffer: -7.259756 - vertex_buffer: 5.2669945 + vertex_buffer: -0.12442708 + vertex_buffer: -6.9955587 + vertex_buffer: 5.339325 vertex_buffer: 0.499968 vertex_buffer: 0.781371 - vertex_buffer: -0.076699376 - vertex_buffer: -2.7312012 - vertex_buffer: 7.7023125 + vertex_buffer: 0.0016613007 + vertex_buffer: -2.6523447 + vertex_buffer: 7.829525 vertex_buffer: 0.499816 vertex_buffer: 0.562981 - vertex_buffer: -0.72562504 - vertex_buffer: -2.4384737 - vertex_buffer: 6.7941895 + vertex_buffer: -0.6709341 + vertex_buffer: -2.392911 + vertex_buffer: 6.8813095 vertex_buffer: 0.473773 vertex_buffer: 0.57391 - vertex_buffer: -7.2414055 - vertex_buffer: 6.0086823 - vertex_buffer: -0.49590302 + vertex_buffer: -7.380208 + vertex_buffer: 5.759473 + vertex_buffer: -0.57793427 vertex_buffer: 0.104907 vertex_buffer: 0.254141 - vertex_buffer: -2.4818525 - vertex_buffer: 2.006565 - vertex_buffer: 3.6005325 + vertex_buffer: -2.4644783 + vertex_buffer: 1.980649 + vertex_buffer: 3.5751266 vertex_buffer: 0.36593 vertex_buffer: 0.409576 - vertex_buffer: -3.0657644 - vertex_buffer: 1.9544983 - vertex_buffer: 3.5882378 + vertex_buffer: -3.0669076 + vertex_buffer: 1.9430094 + vertex_buffer: 3.559021 vertex_buffer: 0.338758 vertex_buffer: 0.413025 - vertex_buffer: -3.656791 - vertex_buffer: 1.9923954 - vertex_buffer: 3.433567 + vertex_buffer: -3.689094 + vertex_buffer: 1.9749537 + vertex_buffer: 3.398491 vertex_buffer: 0.31112 vertex_buffer: 0.40946 - vertex_buffer: -4.474508 - vertex_buffer: 2.3802433 - vertex_buffer: 2.8627968 + vertex_buffer: -4.5605307 + vertex_buffer: 2.323001 + vertex_buffer: 2.8216324 vertex_buffer: 0.274658 vertex_buffer: 0.389131 - vertex_buffer: -1.9909923 - vertex_buffer: 2.1325722 - vertex_buffer: 3.5453758 + vertex_buffer: -1.956515 + vertex_buffer: 2.0848684 + vertex_buffer: 3.5411987 vertex_buffer: 0.393362 vertex_buffer: 0.403706 - vertex_buffer: -3.4037266 - vertex_buffer: 3.2731247 - vertex_buffer: 3.6838531 + vertex_buffer: -3.466641 + vertex_buffer: 3.2295256 + vertex_buffer: 3.6887054 vertex_buffer: 0.345234 vertex_buffer: 0.344011 - vertex_buffer: -2.742147 - vertex_buffer: 3.2809734 - vertex_buffer: 3.636303 + vertex_buffer: -2.7605412 + vertex_buffer: 3.2483282 + vertex_buffer: 3.6428986 vertex_buffer: 0.370094 vertex_buffer: 0.346076 - vertex_buffer: -4.01511 - vertex_buffer: 3.199894 - vertex_buffer: 3.5126534 + vertex_buffer: -4.099605 + vertex_buffer: 3.1319666 + vertex_buffer: 3.5048752 vertex_buffer: 0.319322 vertex_buffer: 0.347265 - vertex_buffer: -4.424138 - vertex_buffer: 3.0624714 - vertex_buffer: 3.2636375 + vertex_buffer: -4.5206738 + vertex_buffer: 2.9817057 + vertex_buffer: 3.2407455 vertex_buffer: 0.297903 vertex_buffer: 0.353591 - vertex_buffer: -5.0990915 - vertex_buffer: 2.0961895 - vertex_buffer: 2.5969086 + vertex_buffer: -5.2292557 + vertex_buffer: 1.9983549 + vertex_buffer: 2.5423431 vertex_buffer: 0.247792 vertex_buffer: 0.41081 - vertex_buffer: -2.6055574 - vertex_buffer: -7.8491335 - vertex_buffer: 4.469631 + vertex_buffer: -2.6481655 + vertex_buffer: -7.784496 + vertex_buffer: 4.4858932 vertex_buffer: 0.396889 vertex_buffer: 0.842755 - vertex_buffer: -4.399359 - vertex_buffer: 2.7460155 - vertex_buffer: 2.691124 + vertex_buffer: -4.460559 + vertex_buffer: 2.6744184 + vertex_buffer: 2.6478271 vertex_buffer: 0.280098 vertex_buffer: 0.3756 - vertex_buffer: -7.487539 - vertex_buffer: 3.0465317 - vertex_buffer: -0.33402252 + vertex_buffer: -7.6068363 + vertex_buffer: 2.8506727 + vertex_buffer: -0.47640228 vertex_buffer: 0.10631 vertex_buffer: 0.399956 - vertex_buffer: -5.9338756 - vertex_buffer: 2.5897903 - vertex_buffer: 1.897171 + vertex_buffer: -6.0700245 + vertex_buffer: 2.4184923 + vertex_buffer: 1.8397522 vertex_buffer: 0.209925 vertex_buffer: 0.391353 - vertex_buffer: -3.3796797 - vertex_buffer: -0.83636856 - vertex_buffer: 4.6791306 + vertex_buffer: -3.3639438 + vertex_buffer: -0.79534435 + vertex_buffer: 4.6515617 vertex_buffer: 0.355808 vertex_buffer: 0.534406 - vertex_buffer: -1.1431469 - vertex_buffer: -3.6422768 - vertex_buffer: 6.1564445 + vertex_buffer: -1.135715 + vertex_buffer: -3.4718246 + vertex_buffer: 6.184471 vertex_buffer: 0.471751 vertex_buffer: 0.650404 - vertex_buffer: -1.0587544 - vertex_buffer: -3.9764395 - vertex_buffer: 5.9157333 + vertex_buffer: -1.0922087 + vertex_buffer: -3.831544 + vertex_buffer: 5.932873 vertex_buffer: 0.474155 vertex_buffer: 0.680192 - vertex_buffer: -2.1564624 - vertex_buffer: -3.6404037 - vertex_buffer: 5.6986084 + vertex_buffer: -2.1596298 + vertex_buffer: -3.428463 + vertex_buffer: 5.694832 vertex_buffer: 0.439785 vertex_buffer: 0.657229 - vertex_buffer: -2.8564057 - vertex_buffer: -3.6175175 - vertex_buffer: 4.973137 + vertex_buffer: -2.8633273 + vertex_buffer: -3.4026976 + vertex_buffer: 4.9184456 vertex_buffer: 0.414617 vertex_buffer: 0.666541 - vertex_buffer: -1.9194821 - vertex_buffer: -3.8669453 - vertex_buffer: 5.5120964 + vertex_buffer: -1.9505376 + vertex_buffer: -3.7061148 + vertex_buffer: 5.5004196 vertex_buffer: 0.450374 vertex_buffer: 0.680861 - vertex_buffer: -2.5821285 - vertex_buffer: -3.766097 - vertex_buffer: 4.852501 + vertex_buffer: -2.6188781 + vertex_buffer: -3.5874624 + vertex_buffer: 4.795677 vertex_buffer: 0.428771 vertex_buffer: 0.682691 - vertex_buffer: -3.5917614 - vertex_buffer: -4.703742 - vertex_buffer: 3.7772026 + vertex_buffer: -3.6391375 + vertex_buffer: -4.536689 + vertex_buffer: 3.6719894 vertex_buffer: 0.374971 vertex_buffer: 0.727805 - vertex_buffer: -0.5998187 - vertex_buffer: -2.4482555 - vertex_buffer: 7.9300194 + vertex_buffer: -0.5248654 + vertex_buffer: -2.3666706 + vertex_buffer: 8.063732 vertex_buffer: 0.486717 vertex_buffer: 0.547629 - vertex_buffer: -0.65349257 - vertex_buffer: -1.8527908 - vertex_buffer: 8.052216 + vertex_buffer: -0.5732273 + vertex_buffer: -1.7705488 + vertex_buffer: 8.18536 vertex_buffer: 0.485301 vertex_buffer: 0.527395 - vertex_buffer: -5.32553 - vertex_buffer: 3.3917809 - vertex_buffer: 3.106411 + vertex_buffer: -5.4700027 + vertex_buffer: 3.2546587 + vertex_buffer: 3.128006 vertex_buffer: 0.257765 vertex_buffer: 0.31449 - vertex_buffer: -1.9077028 - vertex_buffer: 0.6526489 - vertex_buffer: 4.574417 + vertex_buffer: -1.8585924 + vertex_buffer: 0.68641853 + vertex_buffer: 4.5743637 vertex_buffer: 0.401223 vertex_buffer: 0.455172 - vertex_buffer: -2.2276864 - vertex_buffer: -1.619669 - vertex_buffer: 6.250202 + vertex_buffer: -2.2261066 + vertex_buffer: -1.5421982 + vertex_buffer: 6.292347 vertex_buffer: 0.429819 vertex_buffer: 0.548615 - vertex_buffer: -2.2515945 - vertex_buffer: -1.2013035 - vertex_buffer: 5.9901733 + vertex_buffer: -2.2510605 + vertex_buffer: -1.1043015 + vertex_buffer: 6.0175705 vertex_buffer: 0.421352 vertex_buffer: 0.533741 - vertex_buffer: -5.325718 - vertex_buffer: -0.45529175 - vertex_buffer: 3.8242645 + vertex_buffer: -5.3602576 + vertex_buffer: -0.47330952 + vertex_buffer: 3.759224 vertex_buffer: 0.276896 vertex_buffer: 0.532057 - vertex_buffer: -0.6069536 - vertex_buffer: -0.96725845 - vertex_buffer: 7.5633163 + vertex_buffer: -0.5272609 + vertex_buffer: -0.8877764 + vertex_buffer: 7.683529 vertex_buffer: 0.48337 vertex_buffer: 0.499587 - vertex_buffer: -3.726408 - vertex_buffer: 3.6745567 - vertex_buffer: 4.177696 + vertex_buffer: -3.7964284 + vertex_buffer: 3.5883837 + vertex_buffer: 4.2516594 vertex_buffer: 0.337212 vertex_buffer: 0.282883 - vertex_buffer: -4.6320176 - vertex_buffer: 3.5891151 - vertex_buffer: 3.7231445 + vertex_buffer: -4.7393827 + vertex_buffer: 3.4790392 + vertex_buffer: 3.7868347 vertex_buffer: 0.296392 vertex_buffer: 0.293243 - vertex_buffer: -6.439913 - vertex_buffer: 6.825321 - vertex_buffer: 0.61094666 + vertex_buffer: -6.501255 + vertex_buffer: 6.6101923 + vertex_buffer: 0.5680008 vertex_buffer: 0.169295 vertex_buffer: 0.193814 - vertex_buffer: -1.1220497 - vertex_buffer: 3.1207333 - vertex_buffer: 4.790825 + vertex_buffer: -1.0872996 + vertex_buffer: 3.0895739 + vertex_buffer: 4.8927994 vertex_buffer: 0.44758 vertex_buffer: 0.30261 - vertex_buffer: -2.164742 - vertex_buffer: 3.177925 - vertex_buffer: 3.446045 + vertex_buffer: -2.153563 + vertex_buffer: 3.1617346 + vertex_buffer: 3.4439926 vertex_buffer: 0.39239 vertex_buffer: 0.353888 - vertex_buffer: -4.122795 - vertex_buffer: -3.7130547 - vertex_buffer: 3.6384811 + vertex_buffer: -4.216338 + vertex_buffer: -3.5605583 + vertex_buffer: 3.5100021 vertex_buffer: 0.35449 vertex_buffer: 0.696784 - vertex_buffer: -6.8614273 - vertex_buffer: -3.4052105 - vertex_buffer: -1.0797577 + vertex_buffer: -7.0028067 + vertex_buffer: -3.5587397 + vertex_buffer: -1.284256 vertex_buffer: 0.067305 vertex_buffer: 0.730105 - vertex_buffer: -1.7853736 - vertex_buffer: -1.9489326 - vertex_buffer: 6.0244827 + vertex_buffer: -1.7882469 + vertex_buffer: -1.9134283 + vertex_buffer: 6.065693 vertex_buffer: 0.442739 vertex_buffer: 0.572826 - vertex_buffer: -1.2388946 - vertex_buffer: -2.1901503 - vertex_buffer: 6.1651344 + vertex_buffer: -1.2070642 + vertex_buffer: -2.1541014 + vertex_buffer: 6.221546 vertex_buffer: 0.457098 vertex_buffer: 0.584792 - vertex_buffer: -3.7656596 - vertex_buffer: -3.7343445 - vertex_buffer: 3.5817146 + vertex_buffer: -3.7703311 + vertex_buffer: -3.479045 + vertex_buffer: 3.4293747 vertex_buffer: 0.381974 vertex_buffer: 0.694711 - vertex_buffer: -3.5737453 - vertex_buffer: -3.7919788 - vertex_buffer: 3.718319 + vertex_buffer: -3.5765162 + vertex_buffer: -3.5340052 + vertex_buffer: 3.5611572 vertex_buffer: 0.392389 vertex_buffer: 0.694203 - vertex_buffer: -5.018292 - vertex_buffer: 4.0599594 - vertex_buffer: 3.309475 + vertex_buffer: -5.1589956 + vertex_buffer: 3.944705 + vertex_buffer: 3.3636932 vertex_buffer: 0.277076 vertex_buffer: 0.271932 - vertex_buffer: -2.3280332 - vertex_buffer: -1.7253447 - vertex_buffer: 5.9079933 + vertex_buffer: -2.3350437 + vertex_buffer: -1.6366854 + vertex_buffer: 5.935074 vertex_buffer: 0.422552 vertex_buffer: 0.563233 - vertex_buffer: -2.5559115 - vertex_buffer: 3.553505 - vertex_buffer: 4.536995 + vertex_buffer: -2.57982 + vertex_buffer: 3.5067472 + vertex_buffer: 4.6273003 vertex_buffer: 0.385919 vertex_buffer: 0.281364 - vertex_buffer: -2.6780252 - vertex_buffer: 3.9824028 - vertex_buffer: 4.611759 + vertex_buffer: -2.7084143 + vertex_buffer: 3.953168 + vertex_buffer: 4.695408 vertex_buffer: 0.383103 vertex_buffer: 0.25584 - vertex_buffer: -3.5981717 - vertex_buffer: 7.5999775 - vertex_buffer: 2.9387283 + vertex_buffer: -3.5852873 + vertex_buffer: 7.4748297 + vertex_buffer: 2.9839096 vertex_buffer: 0.331431 vertex_buffer: 0.119714 - vertex_buffer: -5.7645855 - vertex_buffer: 5.532362 - vertex_buffer: 2.0800781 + vertex_buffer: -5.787017 + vertex_buffer: 5.334853 + vertex_buffer: 2.082512 vertex_buffer: 0.229924 vertex_buffer: 0.232003 - vertex_buffer: -3.0987196 - vertex_buffer: 5.958153 - vertex_buffer: 3.7703743 + vertex_buffer: -3.077217 + vertex_buffer: 5.8662214 + vertex_buffer: 3.8294373 vertex_buffer: 0.364501 vertex_buffer: 0.189114 - vertex_buffer: -5.7973075 - vertex_buffer: 3.8512268 - vertex_buffer: 2.486435 + vertex_buffer: -5.952711 + vertex_buffer: 3.6792345 + vertex_buffer: 2.502945 vertex_buffer: 0.229622 vertex_buffer: 0.299541 - vertex_buffer: -6.581504 - vertex_buffer: 4.970539 - vertex_buffer: 1.0281143 + vertex_buffer: -6.6503506 + vertex_buffer: 4.72062 + vertex_buffer: 0.98347473 vertex_buffer: 0.173287 vertex_buffer: 0.278748 - vertex_buffer: -1.1187562 - vertex_buffer: -3.8459435 - vertex_buffer: 6.082863 + vertex_buffer: -1.121763 + vertex_buffer: -3.6742754 + vertex_buffer: 6.1037903 vertex_buffer: 0.472879 vertex_buffer: 0.666198 - vertex_buffer: -2.0423577 - vertex_buffer: -3.7639866 - vertex_buffer: 5.604889 + vertex_buffer: -2.0601163 + vertex_buffer: -3.5892944 + vertex_buffer: 5.596016 vertex_buffer: 0.446828 vertex_buffer: 0.668527 - vertex_buffer: -2.7212105 - vertex_buffer: -3.706087 - vertex_buffer: 4.9539757 + vertex_buffer: -2.7441099 + vertex_buffer: -3.507308 + vertex_buffer: 4.8997116 vertex_buffer: 0.422762 vertex_buffer: 0.67389 - vertex_buffer: -1.6533456 - vertex_buffer: -2.0141506 - vertex_buffer: 5.9308434 + vertex_buffer: -1.6497866 + vertex_buffer: -1.9804192 + vertex_buffer: 5.978607 vertex_buffer: 0.445308 vertex_buffer: 0.580066 - vertex_buffer: -3.6680121 - vertex_buffer: -3.7637367 - vertex_buffer: 3.6537056 + vertex_buffer: -3.6639972 + vertex_buffer: -3.5100126 + vertex_buffer: 3.5015717 vertex_buffer: 0.388103 vertex_buffer: 0.693961 - vertex_buffer: -3.222347 - vertex_buffer: -4.4428825 - vertex_buffer: 4.0160255 + vertex_buffer: -3.2492912 + vertex_buffer: -4.206603 + vertex_buffer: 3.9017906 vertex_buffer: 0.403039 vertex_buffer: 0.70654 - vertex_buffer: -3.4893162 - vertex_buffer: -3.8121357 - vertex_buffer: 3.7417107 + vertex_buffer: -3.4896474 + vertex_buffer: -3.5671444 + vertex_buffer: 3.6003647 vertex_buffer: 0.403629 vertex_buffer: 0.693953 - vertex_buffer: -1.3609977 - vertex_buffer: -2.1381302 - vertex_buffer: 6.962082 + vertex_buffer: -1.3106184 + vertex_buffer: -2.0854874 + vertex_buffer: 7.0504837 vertex_buffer: 0.460042 vertex_buffer: 0.557139 - vertex_buffer: -2.4507256 - vertex_buffer: -3.808014 - vertex_buffer: 4.801964 + vertex_buffer: -2.504663 + vertex_buffer: -3.6295462 + vertex_buffer: 4.734413 vertex_buffer: 0.431158 vertex_buffer: 0.692366 - vertex_buffer: -1.7947234 - vertex_buffer: -3.8947744 - vertex_buffer: 5.3141365 + vertex_buffer: -1.843497 + vertex_buffer: -3.736907 + vertex_buffer: 5.285618 vertex_buffer: 0.452182 vertex_buffer: 0.692366 - vertex_buffer: -0.9848387 - vertex_buffer: -4.015774 - vertex_buffer: 5.7053223 + vertex_buffer: -1.0209597 + vertex_buffer: -3.880824 + vertex_buffer: 5.707962 vertex_buffer: 0.475387 vertex_buffer: 0.692366 - vertex_buffer: -1.2047725 - vertex_buffer: -7.1263103 - vertex_buffer: 5.168663 + vertex_buffer: -1.2019628 + vertex_buffer: -6.876767 + vertex_buffer: 5.2169113 vertex_buffer: 0.465828 vertex_buffer: 0.77919 - vertex_buffer: -1.064951 - vertex_buffer: -6.22723 - vertex_buffer: 5.540226 + vertex_buffer: -1.2113345 + vertex_buffer: -6.1683397 + vertex_buffer: 5.6159935 vertex_buffer: 0.472329 vertex_buffer: 0.736226 - vertex_buffer: -1.0445962 - vertex_buffer: -5.9030743 - vertex_buffer: 5.554451 + vertex_buffer: -1.1836903 + vertex_buffer: -5.83076 + vertex_buffer: 5.6326637 vertex_buffer: 0.473087 vertex_buffer: 0.717857 - vertex_buffer: -1.0066085 - vertex_buffer: -5.584341 - vertex_buffer: 5.3326263 + vertex_buffer: -1.1249423 + vertex_buffer: -5.4991026 + vertex_buffer: 5.4103203 vertex_buffer: 0.473122 vertex_buffer: 0.704626 - vertex_buffer: -0.9515377 - vertex_buffer: -5.351679 - vertex_buffer: 5.1639557 + vertex_buffer: -1.0649579 + vertex_buffer: -5.274087 + vertex_buffer: 5.2404823 vertex_buffer: 0.473033 vertex_buffer: 0.695278 - vertex_buffer: -2.4093351 - vertex_buffer: -4.7844896 - vertex_buffer: 4.3987465 + vertex_buffer: -2.4837246 + vertex_buffer: -4.6229544 + vertex_buffer: 4.3776665 vertex_buffer: 0.427942 vertex_buffer: 0.695278 - vertex_buffer: -2.5297885 - vertex_buffer: -4.884144 - vertex_buffer: 4.5233307 + vertex_buffer: -2.5842223 + vertex_buffer: -4.7112427 + vertex_buffer: 4.492466 vertex_buffer: 0.426479 vertex_buffer: 0.70354 - vertex_buffer: -2.6821685 - vertex_buffer: -5.048234 - vertex_buffer: 4.613613 + vertex_buffer: -2.726741 + vertex_buffer: -4.85688 + vertex_buffer: 4.5631905 vertex_buffer: 0.423162 vertex_buffer: 0.711846 - vertex_buffer: -2.7875483 - vertex_buffer: -5.20553 - vertex_buffer: 4.512268 + vertex_buffer: -2.829233 + vertex_buffer: -5.0127373 + vertex_buffer: 4.4499702 vertex_buffer: 0.418309 vertex_buffer: 0.720063 - vertex_buffer: -3.2743917 - vertex_buffer: -2.9418354 - vertex_buffer: 4.7704964 + vertex_buffer: -3.3100855 + vertex_buffer: -2.861703 + vertex_buffer: 4.714451 vertex_buffer: 0.390095 vertex_buffer: 0.639573 - vertex_buffer: -7.7813363 - vertex_buffer: 0.47852516 - vertex_buffer: -2.4707718 + vertex_buffer: -7.919713 + vertex_buffer: 0.20317078 + vertex_buffer: -2.6637344 vertex_buffer: 0.013954 vertex_buffer: 0.560034 - vertex_buffer: -0.067145586 - vertex_buffer: -2.6338978 - vertex_buffer: 6.8576508 + vertex_buffer: 0.0143466 + vertex_buffer: -2.5916996 + vertex_buffer: 6.9573517 vertex_buffer: 0.499914 vertex_buffer: 0.580147 - vertex_buffer: -2.905652 - vertex_buffer: -4.3900776 - vertex_buffer: 3.96727 + vertex_buffer: -2.9455776 + vertex_buffer: -4.1753607 + vertex_buffer: 3.8684082 vertex_buffer: 0.4132 vertex_buffer: 0.6954 - vertex_buffer: -3.0672488 - vertex_buffer: -4.40431 - vertex_buffer: 4.0290527 + vertex_buffer: -3.1094155 + vertex_buffer: -4.1747656 + vertex_buffer: 3.9257507 vertex_buffer: 0.409626 vertex_buffer: 0.701823 - vertex_buffer: -1.0340033 - vertex_buffer: -2.4281569 - vertex_buffer: 6.1949463 + vertex_buffer: -1.0012883 + vertex_buffer: -2.4037008 + vertex_buffer: 6.2444763 vertex_buffer: 0.46808 vertex_buffer: 0.601535 - vertex_buffer: -2.1638374 - vertex_buffer: -1.9118061 - vertex_buffer: 5.4391975 + vertex_buffer: -2.1604877 + vertex_buffer: -1.8415651 + vertex_buffer: 5.4459686 vertex_buffer: 0.422729 vertex_buffer: 0.585985 - vertex_buffer: -1.1306101 - vertex_buffer: -2.32267 - vertex_buffer: 6.2109756 + vertex_buffer: -1.0835419 + vertex_buffer: -2.2883606 + vertex_buffer: 6.267685 vertex_buffer: 0.46308 vertex_buffer: 0.593784 - vertex_buffer: -2.621181 - vertex_buffer: 0.40865707 - vertex_buffer: 4.4073486 + vertex_buffer: -2.5709677 + vertex_buffer: 0.44583797 + vertex_buffer: 4.3857994 vertex_buffer: 0.37212 vertex_buffer: 0.473414 - vertex_buffer: -3.70793 - vertex_buffer: 0.10049629 - vertex_buffer: 4.300907 + vertex_buffer: -3.6795633 + vertex_buffer: 0.10846424 + vertex_buffer: 4.2772446 vertex_buffer: 0.334562 vertex_buffer: 0.496073 - vertex_buffer: -2.4242415 - vertex_buffer: -1.335453 - vertex_buffer: 5.6347504 + vertex_buffer: -2.4243107 + vertex_buffer: -1.2356358 + vertex_buffer: 5.6441193 vertex_buffer: 0.411671 vertex_buffer: 0.546965 - vertex_buffer: -5.2518377 - vertex_buffer: 7.3554096 - vertex_buffer: 1.8238754 + vertex_buffer: -5.2710876 + vertex_buffer: 7.177987 + vertex_buffer: 1.8277588 vertex_buffer: 0.242176 vertex_buffer: 0.147676 - vertex_buffer: -4.6380343 - vertex_buffer: 5.8871956 - vertex_buffer: 2.963272 + vertex_buffer: -4.623791 + vertex_buffer: 5.736987 + vertex_buffer: 2.9940033 vertex_buffer: 0.290777 vertex_buffer: 0.201446 - vertex_buffer: -3.962061 - vertex_buffer: 4.1839104 - vertex_buffer: 3.9545898 + vertex_buffer: -4.034814 + vertex_buffer: 4.1128416 + vertex_buffer: 4.0151176 vertex_buffer: 0.327338 vertex_buffer: 0.256527 - vertex_buffer: -2.9955587 - vertex_buffer: -5.640915 - vertex_buffer: 4.2104836 + vertex_buffer: -3.019085 + vertex_buffer: -5.462367 + vertex_buffer: 4.153961 vertex_buffer: 0.39951 vertex_buffer: 0.748921 - vertex_buffer: -1.3229164 - vertex_buffer: 3.8033943 - vertex_buffer: 4.9257507 + vertex_buffer: -1.2839646 + vertex_buffer: 3.802308 + vertex_buffer: 5.0350266 vertex_buffer: 0.441728 vertex_buffer: 0.261676 - vertex_buffer: -1.6278172 - vertex_buffer: 5.9247894 - vertex_buffer: 4.227154 + vertex_buffer: -1.5792525 + vertex_buffer: 5.8562975 + vertex_buffer: 4.316807 vertex_buffer: 0.429765 vertex_buffer: 0.187834 - vertex_buffer: -1.9196519 - vertex_buffer: 7.665041 - vertex_buffer: 3.6081352 + vertex_buffer: -1.8923957 + vertex_buffer: 7.582349 + vertex_buffer: 3.6640854 vertex_buffer: 0.412198 vertex_buffer: 0.108901 - vertex_buffer: -4.1653175 - vertex_buffer: 2.1381493 - vertex_buffer: 3.1532745 + vertex_buffer: -4.234376 + vertex_buffer: 2.1011877 + vertex_buffer: 3.1175613 vertex_buffer: 0.288955 vertex_buffer: 0.398952 - vertex_buffer: -5.858503 - vertex_buffer: 1.7849693 - vertex_buffer: 2.274994 + vertex_buffer: -6.029139 + vertex_buffer: 1.6677408 + vertex_buffer: 2.1943665 vertex_buffer: 0.218937 vertex_buffer: 0.435411 - vertex_buffer: -1.673856 - vertex_buffer: 2.2758236 - vertex_buffer: 3.444664 + vertex_buffer: -1.6560878 + vertex_buffer: 2.2454062 + vertex_buffer: 3.445282 vertex_buffer: 0.412782 vertex_buffer: 0.39897 - vertex_buffer: -5.111949 - vertex_buffer: 2.958168 - vertex_buffer: 2.7280235 + vertex_buffer: -5.2383466 + vertex_buffer: 2.831235 + vertex_buffer: 2.7085342 vertex_buffer: 0.257135 vertex_buffer: 0.35544 - vertex_buffer: -1.42581 - vertex_buffer: 0.9485493 - vertex_buffer: 4.78524 + vertex_buffer: -1.3662415 + vertex_buffer: 0.9642687 + vertex_buffer: 4.8067055 vertex_buffer: 0.427685 vertex_buffer: 0.437961 - vertex_buffer: -1.7371975 - vertex_buffer: -1.6774244 - vertex_buffer: 6.8916054 + vertex_buffer: -1.6991432 + vertex_buffer: -1.6009359 + vertex_buffer: 6.9668274 vertex_buffer: 0.44834 vertex_buffer: 0.536936 - vertex_buffer: -6.7993464 - vertex_buffer: 1.4346638 - vertex_buffer: 1.6373291 + vertex_buffer: -6.851472 + vertex_buffer: 1.3155375 + vertex_buffer: 1.5242233 vertex_buffer: 0.17856 vertex_buffer: 0.457554 - vertex_buffer: -5.3350697 - vertex_buffer: 1.2620907 - vertex_buffer: 2.9170685 + vertex_buffer: -5.494712 + vertex_buffer: 1.1999178 + vertex_buffer: 2.8382416 vertex_buffer: 0.247308 vertex_buffer: 0.457194 - vertex_buffer: -4.4774485 - vertex_buffer: 0.9240799 - vertex_buffer: 3.5224838 + vertex_buffer: -4.620122 + vertex_buffer: 0.9070082 + vertex_buffer: 3.4616013 vertex_buffer: 0.286267 vertex_buffer: 0.467675 - vertex_buffer: -3.272394 - vertex_buffer: 0.9214077 - vertex_buffer: 3.8559914 + vertex_buffer: -3.3623075 + vertex_buffer: 0.89101124 + vertex_buffer: 3.8301697 vertex_buffer: 0.332828 vertex_buffer: 0.460712 - vertex_buffer: -2.402923 - vertex_buffer: 1.116169 - vertex_buffer: 3.9556198 + vertex_buffer: -2.4477098 + vertex_buffer: 1.0740423 + vertex_buffer: 3.935936 vertex_buffer: 0.368756 vertex_buffer: 0.447207 - vertex_buffer: -1.7723215 - vertex_buffer: 1.320797 - vertex_buffer: 4.1138306 + vertex_buffer: -1.7755914 + vertex_buffer: 1.2857428 + vertex_buffer: 4.1097145 vertex_buffer: 0.398964 vertex_buffer: 0.432655 - vertex_buffer: -0.59694576 - vertex_buffer: 1.5314617 - vertex_buffer: 5.4436264 + vertex_buffer: -0.5417669 + vertex_buffer: 1.530921 + vertex_buffer: 5.5305405 vertex_buffer: 0.47641 vertex_buffer: 0.405806 - vertex_buffer: -6.807497 - vertex_buffer: 0.09427452 - vertex_buffer: 1.993454 + vertex_buffer: -6.8914185 + vertex_buffer: -0.00017261505 + vertex_buffer: 1.8689499 vertex_buffer: 0.189241 vertex_buffer: 0.523924 - vertex_buffer: -5.688405 - vertex_buffer: 3.0851555 - vertex_buffer: 2.4322624 + vertex_buffer: -5.8266573 + vertex_buffer: 2.9283838 + vertex_buffer: 2.4036179 vertex_buffer: 0.228962 vertex_buffer: 0.348951 - vertex_buffer: -0.40799594 - vertex_buffer: -2.698841 - vertex_buffer: 7.6618958 + vertex_buffer: -0.33568 + vertex_buffer: -2.631054 + vertex_buffer: 7.783989 vertex_buffer: 0.490726 vertex_buffer: 0.562401 - vertex_buffer: -1.9559056 - vertex_buffer: -0.03848648 - vertex_buffer: 4.961746 + vertex_buffer: -1.9205292 + vertex_buffer: 0.016283989 + vertex_buffer: 4.9548416 vertex_buffer: 0.40467 vertex_buffer: 0.485133 - vertex_buffer: -7.9506507 - vertex_buffer: 3.688263 - vertex_buffer: -2.4635468 + vertex_buffer: -8.099627 + vertex_buffer: 3.4242811 + vertex_buffer: -2.625229 vertex_buffer: 0.019469 vertex_buffer: 0.401564 - vertex_buffer: -1.301323 - vertex_buffer: 1.5848694 - vertex_buffer: 4.180687 + vertex_buffer: -1.2919213 + vertex_buffer: 1.5624094 + vertex_buffer: 4.193695 vertex_buffer: 0.426243 vertex_buffer: 0.420431 - vertex_buffer: -2.5181937 - vertex_buffer: -1.1396294 - vertex_buffer: 4.9081573 + vertex_buffer: -2.5156896 + vertex_buffer: -1.0583563 + vertex_buffer: 4.8876762 vertex_buffer: 0.396993 vertex_buffer: 0.548797 - vertex_buffer: -4.717085 - vertex_buffer: 2.7280807 - vertex_buffer: 2.5747032 + vertex_buffer: -4.849409 + vertex_buffer: 2.6298628 + vertex_buffer: 2.5362167 vertex_buffer: 0.26647 vertex_buffer: 0.376977 - vertex_buffer: -1.7512667 - vertex_buffer: -1.161972 - vertex_buffer: 6.573883 + vertex_buffer: -1.7270089 + vertex_buffer: -1.0751963 + vertex_buffer: 6.6392555 vertex_buffer: 0.439121 vertex_buffer: 0.518958 - vertex_buffer: -7.4564414 - vertex_buffer: -1.3850384 - vertex_buffer: -1.9297485 + vertex_buffer: -7.596735 + vertex_buffer: -1.6237946 + vertex_buffer: -2.1293182 vertex_buffer: 0.032314 vertex_buffer: 0.644357 - vertex_buffer: -1.7117553 - vertex_buffer: 2.5173492 - vertex_buffer: 3.2236977 + vertex_buffer: -1.6812385 + vertex_buffer: 2.4876337 + vertex_buffer: 3.222351 vertex_buffer: 0.419054 vertex_buffer: 0.387155 - vertex_buffer: -1.1572384 - vertex_buffer: -1.0541916 - vertex_buffer: 7.194458 + vertex_buffer: -1.0985358 + vertex_buffer: -0.972064 + vertex_buffer: 7.2889175 vertex_buffer: 0.462783 vertex_buffer: 0.505747 - vertex_buffer: -5.3080835 - vertex_buffer: -5.4942093 - vertex_buffer: 2.0278625 + vertex_buffer: -5.3707685 + vertex_buffer: -5.5078325 + vertex_buffer: 1.8905792 vertex_buffer: 0.238979 vertex_buffer: 0.779745 - vertex_buffer: -5.2203856 - vertex_buffer: -6.3661776 - vertex_buffer: 1.2241516 + vertex_buffer: -5.2474127 + vertex_buffer: -6.3939524 + vertex_buffer: 1.1026077 vertex_buffer: 0.198221 vertex_buffer: 0.831938 - vertex_buffer: -7.5321417 - vertex_buffer: 0.21560669 - vertex_buffer: -0.2345047 + vertex_buffer: -7.6469307 + vertex_buffer: 0.03664589 + vertex_buffer: -0.42131042 vertex_buffer: 0.10755 vertex_buffer: 0.540755 - vertex_buffer: -6.163321 - vertex_buffer: -4.4339294 - vertex_buffer: 1.3331757 + vertex_buffer: -6.2607083 + vertex_buffer: -4.4779444 + vertex_buffer: 1.1667023 vertex_buffer: 0.18361 vertex_buffer: 0.740257 - vertex_buffer: -7.080523 - vertex_buffer: 4.197775 - vertex_buffer: 0.14701843 + vertex_buffer: -7.181363 + vertex_buffer: 3.9659262 + vertex_buffer: 0.058540344 vertex_buffer: 0.13441 vertex_buffer: 0.333683 - vertex_buffer: -2.6738625 - vertex_buffer: -8.633281 - vertex_buffer: 4.3044815 + vertex_buffer: -2.709927 + vertex_buffer: -8.620034 + vertex_buffer: 4.3300056 vertex_buffer: 0.385764 vertex_buffer: 0.883154 - vertex_buffer: -0.34173155 - vertex_buffer: -2.5954218 - vertex_buffer: 6.808529 + vertex_buffer: -0.2634747 + vertex_buffer: -2.551818 + vertex_buffer: 6.9023666 vertex_buffer: 0.490967 vertex_buffer: 0.579378 - vertex_buffer: -2.5923328 - vertex_buffer: -0.3716278 - vertex_buffer: 4.7674904 + vertex_buffer: -2.5574355 + vertex_buffer: -0.31421757 + vertex_buffer: 4.7460365 vertex_buffer: 0.382385 vertex_buffer: 0.508573 - vertex_buffer: -6.5916877 - vertex_buffer: 2.6689663 - vertex_buffer: 1.2537537 + vertex_buffer: -6.7216682 + vertex_buffer: 2.4461927 + vertex_buffer: 1.1734772 vertex_buffer: 0.174399 vertex_buffer: 0.397671 - vertex_buffer: -3.542273 - vertex_buffer: 2.3885727 - vertex_buffer: 3.3041725 + vertex_buffer: -3.548069 + vertex_buffer: 2.3880281 + vertex_buffer: 3.2671127 vertex_buffer: 0.318785 vertex_buffer: 0.396235 - vertex_buffer: -3.052453 - vertex_buffer: 2.3353252 - vertex_buffer: 3.4632034 + vertex_buffer: -3.0394778 + vertex_buffer: 2.3393316 + vertex_buffer: 3.4328995 vertex_buffer: 0.343364 vertex_buffer: 0.400597 - vertex_buffer: -3.346343 - vertex_buffer: -4.4866886 - vertex_buffer: 3.9374275 + vertex_buffer: -3.366012 + vertex_buffer: -4.237996 + vertex_buffer: 3.81221 vertex_buffer: 0.3961 vertex_buffer: 0.710217 - vertex_buffer: -6.807934 - vertex_buffer: -1.2851677 - vertex_buffer: 1.9479141 + vertex_buffer: -6.9187956 + vertex_buffer: -1.3656254 + vertex_buffer: 1.8024368 vertex_buffer: 0.187885 vertex_buffer: 0.588538 - vertex_buffer: -1.4889712 - vertex_buffer: -9.771776 - vertex_buffer: 4.415016 + vertex_buffer: -1.5140238 + vertex_buffer: -9.756218 + vertex_buffer: 4.4859276 vertex_buffer: 0.430987 vertex_buffer: 0.944065 - vertex_buffer: -3.4319286 - vertex_buffer: -8.430215 - vertex_buffer: 2.9458466 + vertex_buffer: -3.44746 + vertex_buffer: -8.438232 + vertex_buffer: 2.930458 vertex_buffer: 0.318993 vertex_buffer: 0.898285 - vertex_buffer: -4.2472696 - vertex_buffer: -7.5399303 - vertex_buffer: 2.1448364 + vertex_buffer: -4.2632647 + vertex_buffer: -7.5634947 + vertex_buffer: 2.101593 vertex_buffer: 0.266248 vertex_buffer: 0.869701 - vertex_buffer: 0.0147150755 - vertex_buffer: 5.8546867 - vertex_buffer: 4.3955994 + vertex_buffer: 0.059850693 + vertex_buffer: 5.8002214 + vertex_buffer: 4.5080185 vertex_buffer: 0.500023 vertex_buffer: 0.190576 - vertex_buffer: -0.11078048 - vertex_buffer: -9.957518 - vertex_buffer: 4.615406 + vertex_buffer: -0.13747978 + vertex_buffer: -9.910521 + vertex_buffer: 4.703251 vertex_buffer: 0.499977 vertex_buffer: 0.954453 - vertex_buffer: -2.5824327 - vertex_buffer: 2.3661919 - vertex_buffer: 3.4847794 + vertex_buffer: -2.553853 + vertex_buffer: 2.3492956 + vertex_buffer: 3.466545 vertex_buffer: 0.36617 vertex_buffer: 0.398822 - vertex_buffer: -2.1335464 - vertex_buffer: 2.4452934 - vertex_buffer: 3.3880463 + vertex_buffer: -2.096557 + vertex_buffer: 2.4111967 + vertex_buffer: 3.383133 vertex_buffer: 0.393207 vertex_buffer: 0.395537 - vertex_buffer: -1.8446673 - vertex_buffer: 2.4951591 - vertex_buffer: 3.2513657 + vertex_buffer: -1.8107405 + vertex_buffer: 2.4550562 + vertex_buffer: 3.2521973 vertex_buffer: 0.410373 vertex_buffer: 0.39108 - vertex_buffer: -6.2632003 - vertex_buffer: 3.418377 - vertex_buffer: 1.7588425 + vertex_buffer: -6.397792 + vertex_buffer: 3.2398233 + vertex_buffer: 1.7032928 vertex_buffer: 0.194993 vertex_buffer: 0.342102 - vertex_buffer: -2.2793112 - vertex_buffer: 2.8007774 - vertex_buffer: 3.3895226 + vertex_buffer: -2.2343137 + vertex_buffer: 2.8177443 + vertex_buffer: 3.3868637 vertex_buffer: 0.388665 vertex_buffer: 0.362284 - vertex_buffer: -2.788294 - vertex_buffer: 2.8749886 - vertex_buffer: 3.5177689 + vertex_buffer: -2.7466607 + vertex_buffer: 2.8975687 + vertex_buffer: 3.522461 vertex_buffer: 0.365962 vertex_buffer: 0.355971 - vertex_buffer: -3.2679257 - vertex_buffer: 2.8848457 - vertex_buffer: 3.5011063 + vertex_buffer: -3.2493985 + vertex_buffer: 2.8987017 + vertex_buffer: 3.5034256 vertex_buffer: 0.343364 vertex_buffer: 0.355357 - vertex_buffer: -3.75033 - vertex_buffer: 2.8330956 - vertex_buffer: 3.363533 + vertex_buffer: -3.7537367 + vertex_buffer: 2.8307981 + vertex_buffer: 3.3570404 vertex_buffer: 0.318785 vertex_buffer: 0.35834 - vertex_buffer: -4.05932 - vertex_buffer: 2.7713757 - vertex_buffer: 3.1558266 + vertex_buffer: -4.0932584 + vertex_buffer: 2.7494059 + vertex_buffer: 3.1388397 vertex_buffer: 0.301415 vertex_buffer: 0.363156 - vertex_buffer: -7.725779 - vertex_buffer: 5.0964622 - vertex_buffer: -1.6472168 + vertex_buffer: -7.8941555 + vertex_buffer: 4.84105 + vertex_buffer: -1.7778015 vertex_buffer: 0.058133 vertex_buffer: 0.319076 - vertex_buffer: -3.8860652 - vertex_buffer: 2.4879436 - vertex_buffer: 3.104107 + vertex_buffer: -3.9074914 + vertex_buffer: 2.473836 + vertex_buffer: 3.0638962 vertex_buffer: 0.301415 vertex_buffer: 0.387449 - vertex_buffer: -0.068289995 - vertex_buffer: -2.8862877 - vertex_buffer: 6.182873 + vertex_buffer: -0.0076904297 + vertex_buffer: -2.872388 + vertex_buffer: 6.2376328 vertex_buffer: 0.499988 vertex_buffer: 0.618434 - vertex_buffer: -2.529707 - vertex_buffer: -2.7606153 - vertex_buffer: 5.356552 + vertex_buffer: -2.533827 + vertex_buffer: -2.6958761 + vertex_buffer: 5.3328896 vertex_buffer: 0.415838 vertex_buffer: 0.624196 - vertex_buffer: -1.7543352 - vertex_buffer: -1.9580021 - vertex_buffer: 6.273342 + vertex_buffer: -1.7391257 + vertex_buffer: -1.9115725 + vertex_buffer: 6.3327827 vertex_buffer: 0.445682 vertex_buffer: 0.566077 - vertex_buffer: -1.137665 - vertex_buffer: -2.841156 - vertex_buffer: 6.083748 + vertex_buffer: -1.0984391 + vertex_buffer: -2.824401 + vertex_buffer: 6.1263504 vertex_buffer: 0.465844 vertex_buffer: 0.620641 - vertex_buffer: -0.018586874 - vertex_buffer: 2.4397411 - vertex_buffer: 5.096554 + vertex_buffer: 0.037802458 + vertex_buffer: 2.414979 + vertex_buffer: 5.1951256 vertex_buffer: 0.499923 vertex_buffer: 0.351524 - vertex_buffer: -4.41372 - vertex_buffer: -6.6318007 - vertex_buffer: 2.6536865 + vertex_buffer: -4.443224 + vertex_buffer: -6.6290236 + vertex_buffer: 2.5626984 vertex_buffer: 0.288719 vertex_buffer: 0.819946 - vertex_buffer: -3.5631287 - vertex_buffer: -7.6272774 - vertex_buffer: 3.432335 + vertex_buffer: -3.5888524 + vertex_buffer: -7.6187377 + vertex_buffer: 3.402504 vertex_buffer: 0.335279 vertex_buffer: 0.85282 - vertex_buffer: -1.5043874 - vertex_buffer: -9.306334 - vertex_buffer: 5.028805 + vertex_buffer: -1.5330288 + vertex_buffer: -9.261213 + vertex_buffer: 5.1088066 vertex_buffer: 0.440512 vertex_buffer: 0.902419 - vertex_buffer: -6.0455494 - vertex_buffer: -5.1056385 - vertex_buffer: 0.12199402 + vertex_buffer: -6.124838 + vertex_buffer: -5.1831293 + vertex_buffer: -0.037010193 vertex_buffer: 0.128294 vertex_buffer: 0.791941 - vertex_buffer: -1.8965436 - vertex_buffer: 2.6337643 - vertex_buffer: 3.2949944 + vertex_buffer: -1.8657817 + vertex_buffer: 2.6143217 + vertex_buffer: 3.29525 vertex_buffer: 0.408772 vertex_buffer: 0.373894 - vertex_buffer: -1.0134746 - vertex_buffer: 0.47911072 - vertex_buffer: 5.743599 + vertex_buffer: -0.94458604 + vertex_buffer: 0.5107279 + vertex_buffer: 5.8090553 vertex_buffer: 0.455607 vertex_buffer: 0.451801 - vertex_buffer: -0.10858607 - vertex_buffer: -9.50358 - vertex_buffer: 5.195923 + vertex_buffer: -0.13294125 + vertex_buffer: -9.430036 + vertex_buffer: 5.2914658 vertex_buffer: 0.499877 vertex_buffer: 0.90899 - vertex_buffer: -2.5527396 - vertex_buffer: -9.227399 - vertex_buffer: 3.8104515 + vertex_buffer: -2.567077 + vertex_buffer: -9.222423 + vertex_buffer: 3.8583908 vertex_buffer: 0.375437 vertex_buffer: 0.924192 - vertex_buffer: -7.322299 - vertex_buffer: -1.4170494 - vertex_buffer: 0.062187195 + vertex_buffer: -7.456238 + vertex_buffer: -1.5691957 + vertex_buffer: -0.13296509 vertex_buffer: 0.11421 vertex_buffer: 0.615022 - vertex_buffer: -1.746277 - vertex_buffer: -5.1153107 - vertex_buffer: 4.8243637 + vertex_buffer: -1.8254935 + vertex_buffer: -5.0069017 + vertex_buffer: 4.8583755 vertex_buffer: 0.448662 vertex_buffer: 0.695278 - vertex_buffer: -1.8590368 - vertex_buffer: -5.290457 - vertex_buffer: 4.960087 + vertex_buffer: -1.9399879 + vertex_buffer: -5.1718016 + vertex_buffer: 4.9914894 vertex_buffer: 0.44802 vertex_buffer: 0.704632 - vertex_buffer: -1.953226 - vertex_buffer: -5.547798 - vertex_buffer: 5.076378 + vertex_buffer: -2.040709 + vertex_buffer: -5.418912 + vertex_buffer: 5.0957947 vertex_buffer: 0.447112 vertex_buffer: 0.715808 - vertex_buffer: -2.0058055 - vertex_buffer: -5.8332253 - vertex_buffer: 5.016693 + vertex_buffer: -2.1065457 + vertex_buffer: -5.709921 + vertex_buffer: 5.026306 vertex_buffer: 0.444832 vertex_buffer: 0.730794 - vertex_buffer: -2.2421694 - vertex_buffer: -6.518278 - vertex_buffer: 4.7368813 + vertex_buffer: -2.2343514 + vertex_buffer: -6.2921343 + vertex_buffer: 4.72678 vertex_buffer: 0.430012 vertex_buffer: 0.766809 - vertex_buffer: -3.1532464 - vertex_buffer: -3.7426739 - vertex_buffer: 4.2543144 + vertex_buffer: -3.1745343 + vertex_buffer: -3.5416975 + vertex_buffer: 4.150112 vertex_buffer: 0.406787 vertex_buffer: 0.685673 - vertex_buffer: -3.2889338 - vertex_buffer: -3.6873379 - vertex_buffer: 4.223362 + vertex_buffer: -3.313678 + vertex_buffer: -3.469058 + vertex_buffer: 4.112747 vertex_buffer: 0.400738 vertex_buffer: 0.681069 - vertex_buffer: -3.399349 - vertex_buffer: -3.6300564 - vertex_buffer: 4.2257233 + vertex_buffer: -3.4095898 + vertex_buffer: -3.3914194 + vertex_buffer: 4.116791 vertex_buffer: 0.3924 vertex_buffer: 0.677703 - vertex_buffer: -3.8676338 - vertex_buffer: -3.2052813 - vertex_buffer: 4.1269035 + vertex_buffer: -3.9496174 + vertex_buffer: -3.1063108 + vertex_buffer: 4.0317307 vertex_buffer: 0.367856 vertex_buffer: 0.663919 - vertex_buffer: -5.957941 - vertex_buffer: -1.8351107 - vertex_buffer: 3.251194 + vertex_buffer: -6.0683618 + vertex_buffer: -1.8684168 + vertex_buffer: 3.152031 vertex_buffer: 0.247923 vertex_buffer: 0.601333 - vertex_buffer: -0.98538256 - vertex_buffer: 1.2934608 - vertex_buffer: 5.0585785 + vertex_buffer: -0.92481697 + vertex_buffer: 1.2934866 + vertex_buffer: 5.1146164 vertex_buffer: 0.45277 vertex_buffer: 0.42085 - vertex_buffer: -1.236709 - vertex_buffer: 2.790123 - vertex_buffer: 3.647091 + vertex_buffer: -1.2094257 + vertex_buffer: 2.7798185 + vertex_buffer: 3.6599045 vertex_buffer: 0.436392 vertex_buffer: 0.359887 - vertex_buffer: -1.6402563 - vertex_buffer: 2.8083496 - vertex_buffer: 3.387001 + vertex_buffer: -1.6115191 + vertex_buffer: 2.7910852 + vertex_buffer: 3.3959885 vertex_buffer: 0.416164 vertex_buffer: 0.368714 - vertex_buffer: -3.0210757 - vertex_buffer: -3.7624912 - vertex_buffer: 4.2215805 + vertex_buffer: -3.0625882 + vertex_buffer: -3.5556707 + vertex_buffer: 4.107437 vertex_buffer: 0.413386 vertex_buffer: 0.692366 - vertex_buffer: -6.044824 - vertex_buffer: -3.417676 - vertex_buffer: 2.3530579 + vertex_buffer: -6.148374 + vertex_buffer: -3.4482317 + vertex_buffer: 2.2229767 vertex_buffer: 0.228018 vertex_buffer: 0.683572 - vertex_buffer: -0.7034563 - vertex_buffer: 2.481739 - vertex_buffer: 4.598274 + vertex_buffer: -0.6785159 + vertex_buffer: 2.4833288 + vertex_buffer: 4.66465 vertex_buffer: 0.468268 vertex_buffer: 0.352671 - vertex_buffer: -2.4172258 - vertex_buffer: -7.0839663 - vertex_buffer: 4.5690536 + vertex_buffer: -2.4369023 + vertex_buffer: -6.9581575 + vertex_buffer: 4.5674706 vertex_buffer: 0.411362 vertex_buffer: 0.804327 - vertex_buffer: -0.053602815 - vertex_buffer: -0.085926056 - vertex_buffer: 7.0314903 + vertex_buffer: 0.028733969 + vertex_buffer: -0.043099403 + vertex_buffer: 7.152294 vertex_buffer: 0.499989 vertex_buffer: 0.469825 - vertex_buffer: -0.5728209 - vertex_buffer: 0.6627121 - vertex_buffer: 6.1756134 + vertex_buffer: -0.49876022 + vertex_buffer: 0.6819334 + vertex_buffer: 6.2783394 vertex_buffer: 0.479154 vertex_buffer: 0.442654 - vertex_buffer: -0.039252996 - vertex_buffer: 0.74731255 - vertex_buffer: 6.3245316 + vertex_buffer: 0.03241849 + vertex_buffer: 0.7652521 + vertex_buffer: 6.4327927 vertex_buffer: 0.499974 vertex_buffer: 0.439637 - vertex_buffer: -1.5397743 - vertex_buffer: -0.4629135 - vertex_buffer: 5.876644 + vertex_buffer: -1.5003841 + vertex_buffer: -0.39626026 + vertex_buffer: 5.919998 vertex_buffer: 0.432112 vertex_buffer: 0.493589 - vertex_buffer: -0.10573149 - vertex_buffer: -8.7806015 - vertex_buffer: 5.383419 + vertex_buffer: -0.12896037 + vertex_buffer: -8.671225 + vertex_buffer: 5.4888535 vertex_buffer: 0.499886 vertex_buffer: 0.866917 - vertex_buffer: -0.10243821 - vertex_buffer: -7.9327793 - vertex_buffer: 5.2961617 + vertex_buffer: -0.121814966 + vertex_buffer: -7.7460093 + vertex_buffer: 5.39114 vertex_buffer: 0.499913 vertex_buffer: 0.821729 - vertex_buffer: -1.3123782 - vertex_buffer: -7.7697506 - vertex_buffer: 5.110512 + vertex_buffer: -1.3365036 + vertex_buffer: -7.6073847 + vertex_buffer: 5.1843834 vertex_buffer: 0.456549 vertex_buffer: 0.819201 - vertex_buffer: -3.8985724 - vertex_buffer: -5.0138264 - vertex_buffer: 3.5379639 + vertex_buffer: -3.9507043 + vertex_buffer: -4.9371834 + vertex_buffer: 3.4499664 vertex_buffer: 0.344549 vertex_buffer: 0.745439 - vertex_buffer: -3.0391204 - vertex_buffer: -1.6071129 - vertex_buffer: 4.7367287 + vertex_buffer: -3.0369554 + vertex_buffer: -1.5445633 + vertex_buffer: 4.70689 vertex_buffer: 0.378909 vertex_buffer: 0.57401 - vertex_buffer: -3.2300706 - vertex_buffer: -6.132518 - vertex_buffer: 3.9983292 + vertex_buffer: -3.242377 + vertex_buffer: -6.0301876 + vertex_buffer: 3.9524078 vertex_buffer: 0.374293 vertex_buffer: 0.780185 - vertex_buffer: -4.47145 - vertex_buffer: -1.517004 - vertex_buffer: 4.4405327 + vertex_buffer: -4.519723 + vertex_buffer: -1.4919558 + vertex_buffer: 4.3926926 vertex_buffer: 0.319688 vertex_buffer: 0.570738 - vertex_buffer: -3.6752357 - vertex_buffer: -2.2029839 - vertex_buffer: 4.505867 + vertex_buffer: -3.7263198 + vertex_buffer: -2.1442785 + vertex_buffer: 4.446476 vertex_buffer: 0.357155 vertex_buffer: 0.60427 - vertex_buffer: -5.072584 - vertex_buffer: -2.404129 - vertex_buffer: 3.8550644 + vertex_buffer: -5.170412 + vertex_buffer: -2.4040003 + vertex_buffer: 3.7796478 vertex_buffer: 0.295284 vertex_buffer: 0.621581 - vertex_buffer: -1.4515126 - vertex_buffer: -8.591642 - vertex_buffer: 5.1889076 + vertex_buffer: -1.5005692 + vertex_buffer: -8.4911 + vertex_buffer: 5.265915 vertex_buffer: 0.44775 vertex_buffer: 0.862477 - vertex_buffer: -2.0067837 - vertex_buffer: -0.6139889 - vertex_buffer: 5.4322624 + vertex_buffer: -1.9931843 + vertex_buffer: -0.5353575 + vertex_buffer: 5.4441757 vertex_buffer: 0.410986 vertex_buffer: 0.508723 - vertex_buffer: -4.294573 - vertex_buffer: -5.6995487 - vertex_buffer: 3.1523552 + vertex_buffer: -4.332177 + vertex_buffer: -5.659751 + vertex_buffer: 3.0650253 vertex_buffer: 0.313951 vertex_buffer: 0.775308 - vertex_buffer: -3.4505615 - vertex_buffer: -6.802844 - vertex_buffer: 3.7206116 + vertex_buffer: -3.478128 + vertex_buffer: -6.7484426 + vertex_buffer: 3.6755142 vertex_buffer: 0.354128 vertex_buffer: 0.812553 - vertex_buffer: -4.455414 - vertex_buffer: -3.9392204 - vertex_buffer: 3.4970322 + vertex_buffer: -4.5433607 + vertex_buffer: -3.855647 + vertex_buffer: 3.3971176 vertex_buffer: 0.324548 vertex_buffer: 0.703993 - vertex_buffer: -6.65974 - vertex_buffer: -2.4928837 - vertex_buffer: 1.8179779 + vertex_buffer: -6.773161 + vertex_buffer: -2.5569954 + vertex_buffer: 1.6511307 vertex_buffer: 0.189096 vertex_buffer: 0.6463 - vertex_buffer: -5.1688347 - vertex_buffer: -4.2118874 - vertex_buffer: 3.0226898 + vertex_buffer: -5.2585554 + vertex_buffer: -4.193946 + vertex_buffer: 2.9160156 vertex_buffer: 0.279777 vertex_buffer: 0.714658 - vertex_buffer: -6.8918138 - vertex_buffer: -2.9740238 - vertex_buffer: 0.48259735 + vertex_buffer: -7.0288363 + vertex_buffer: -3.0798025 + vertex_buffer: 0.29470062 vertex_buffer: 0.133823 vertex_buffer: 0.682701 - vertex_buffer: -4.2832465 - vertex_buffer: -2.7993727 - vertex_buffer: 4.105362 + vertex_buffer: -4.3831587 + vertex_buffer: -2.745448 + vertex_buffer: 4.039524 vertex_buffer: 0.336768 vertex_buffer: 0.644733 - vertex_buffer: -1.4550091 - vertex_buffer: 0.22772408 - vertex_buffer: 5.3168755 + vertex_buffer: -1.4034415 + vertex_buffer: 0.27427006 + vertex_buffer: 5.341606 vertex_buffer: 0.429884 vertex_buffer: 0.466522 - vertex_buffer: -1.5492352 - vertex_buffer: -2.044715 - vertex_buffer: 7.0732384 + vertex_buffer: -1.5119994 + vertex_buffer: -1.9705982 + vertex_buffer: 7.1642113 vertex_buffer: 0.455528 vertex_buffer: 0.548623 - vertex_buffer: -2.0385013 - vertex_buffer: -1.8879633 - vertex_buffer: 6.359207 + vertex_buffer: -2.0259748 + vertex_buffer: -1.8227034 + vertex_buffer: 6.4149513 vertex_buffer: 0.437114 vertex_buffer: 0.558896 - vertex_buffer: -1.2055476 - vertex_buffer: -1.782157 - vertex_buffer: 7.53141 + vertex_buffer: -1.1508282 + vertex_buffer: -1.70683 + vertex_buffer: 7.643261 vertex_buffer: 0.467288 vertex_buffer: 0.529925 - vertex_buffer: -1.6817553 - vertex_buffer: 3.161415 - vertex_buffer: 3.7531128 + vertex_buffer: -1.6662014 + vertex_buffer: 3.1493368 + vertex_buffer: 3.7713013 vertex_buffer: 0.414712 vertex_buffer: 0.33522 - vertex_buffer: -2.65212 - vertex_buffer: 3.3945656 - vertex_buffer: 3.8740463 + vertex_buffer: -2.6734805 + vertex_buffer: 3.3467226 + vertex_buffer: 3.9055138 vertex_buffer: 0.377046 vertex_buffer: 0.322778 - vertex_buffer: -3.5127957 - vertex_buffer: 3.4177456 - vertex_buffer: 3.8673286 + vertex_buffer: -3.5749118 + vertex_buffer: 3.36131 + vertex_buffer: 3.8905869 vertex_buffer: 0.344108 vertex_buffer: 0.320151 - vertex_buffer: -4.256162 - vertex_buffer: 3.3411217 - vertex_buffer: 3.637352 + vertex_buffer: -4.353361 + vertex_buffer: 3.270074 + vertex_buffer: 3.648285 vertex_buffer: 0.312876 vertex_buffer: 0.322332 - vertex_buffer: -4.797553 - vertex_buffer: 3.189003 - vertex_buffer: 3.2503624 + vertex_buffer: -4.926089 + vertex_buffer: 3.0951872 + vertex_buffer: 3.2446136 vertex_buffer: 0.283526 vertex_buffer: 0.33319 - vertex_buffer: -5.2395287 - vertex_buffer: 2.6234646 - vertex_buffer: 2.3437805 + vertex_buffer: -5.3668776 + vertex_buffer: 2.4908266 + vertex_buffer: 2.2935715 vertex_buffer: 0.241246 vertex_buffer: 0.382786 - vertex_buffer: -7.588104 - vertex_buffer: 1.6621666 - vertex_buffer: -0.3259201 + vertex_buffer: -7.69009 + vertex_buffer: 1.4808626 + vertex_buffer: -0.49383545 vertex_buffer: 0.102986 vertex_buffer: 0.468763 - vertex_buffer: -4.6933327 - vertex_buffer: 1.7944946 - vertex_buffer: 2.9396133 + vertex_buffer: -4.806041 + vertex_buffer: 1.7250719 + vertex_buffer: 2.8844604 vertex_buffer: 0.267612 vertex_buffer: 0.42456 - vertex_buffer: -4.0286894 - vertex_buffer: 1.5538483 - vertex_buffer: 3.353485 + vertex_buffer: -4.102545 + vertex_buffer: 1.511014 + vertex_buffer: 3.3034515 vertex_buffer: 0.297879 vertex_buffer: 0.433176 - vertex_buffer: -3.1896048 - vertex_buffer: 1.4963799 - vertex_buffer: 3.6274948 + vertex_buffer: -3.2370784 + vertex_buffer: 1.4540548 + vertex_buffer: 3.5963898 vertex_buffer: 0.333434 vertex_buffer: 0.433878 - vertex_buffer: -2.428552 - vertex_buffer: 1.6123905 - vertex_buffer: 3.6880531 + vertex_buffer: -2.4371467 + vertex_buffer: 1.5694609 + vertex_buffer: 3.6595688 vertex_buffer: 0.366427 vertex_buffer: 0.426116 - vertex_buffer: -1.8497058 - vertex_buffer: 1.7676811 - vertex_buffer: 3.7345886 + vertex_buffer: -1.8419449 + vertex_buffer: 1.7175856 + vertex_buffer: 3.7286682 vertex_buffer: 0.396012 vertex_buffer: 0.416696 - vertex_buffer: -1.4545896 - vertex_buffer: 1.9336929 - vertex_buffer: 3.7442856 + vertex_buffer: -1.4374056 + vertex_buffer: 1.8935785 + vertex_buffer: 3.7445831 vertex_buffer: 0.420121 vertex_buffer: 0.410228 - vertex_buffer: -7.920671 - vertex_buffer: 2.1578693 - vertex_buffer: -2.7011337 + vertex_buffer: -8.034671 + vertex_buffer: 1.8818197 + vertex_buffer: -2.8706665 vertex_buffer: 0.007561 vertex_buffer: 0.480777 - vertex_buffer: -2.0727477 - vertex_buffer: -1.905199 - vertex_buffer: 6.041214 + vertex_buffer: -2.063152 + vertex_buffer: -1.8279266 + vertex_buffer: 6.081848 vertex_buffer: 0.432949 vertex_buffer: 0.569518 - vertex_buffer: -1.037884 - vertex_buffer: -0.2524376 - vertex_buffer: 6.3738823 + vertex_buffer: -0.9779724 + vertex_buffer: -0.20946407 + vertex_buffer: 6.450062 vertex_buffer: 0.458639 vertex_buffer: 0.479089 - vertex_buffer: -1.0600916 - vertex_buffer: -2.2755394 - vertex_buffer: 7.6019936 + vertex_buffer: -1.0019387 + vertex_buffer: -2.2027502 + vertex_buffer: 7.7172165 vertex_buffer: 0.473466 vertex_buffer: 0.545744 - vertex_buffer: -0.74996364 - vertex_buffer: -2.5196075 - vertex_buffer: 7.377384 + vertex_buffer: -0.6895981 + vertex_buffer: -2.4565172 + vertex_buffer: 7.4851913 vertex_buffer: 0.476088 vertex_buffer: 0.56383 - vertex_buffer: -1.0860909 - vertex_buffer: -2.2917194 - vertex_buffer: 7.290821 + vertex_buffer: -1.0379397 + vertex_buffer: -2.2413034 + vertex_buffer: 7.393879 vertex_buffer: 0.468472 vertex_buffer: 0.555057 - vertex_buffer: -1.938976 - vertex_buffer: -1.9958782 - vertex_buffer: 5.827629 + vertex_buffer: -1.9385934 + vertex_buffer: -1.934309 + vertex_buffer: 5.86388 vertex_buffer: 0.433991 vertex_buffer: 0.582362 - vertex_buffer: -0.6154846 - vertex_buffer: -2.6306448 - vertex_buffer: 7.5621567 + vertex_buffer: -0.54758227 + vertex_buffer: -2.5652514 + vertex_buffer: 7.6803665 vertex_buffer: 0.483518 vertex_buffer: 0.562984 - vertex_buffer: -0.56451 - vertex_buffer: -2.5417213 - vertex_buffer: 6.8001595 + vertex_buffer: -0.485752 + vertex_buffer: -2.4943752 + vertex_buffer: 6.89167 vertex_buffer: 0.482483 vertex_buffer: 0.577849 - vertex_buffer: -1.4861419 - vertex_buffer: 2.4621181 - vertex_buffer: 3.349533 + vertex_buffer: -1.451779 + vertex_buffer: 2.437827 + vertex_buffer: 3.3557358 vertex_buffer: 0.42645 vertex_buffer: 0.389799 - vertex_buffer: -1.156236 - vertex_buffer: 2.2130127 - vertex_buffer: 3.7922173 + vertex_buffer: -1.1399248 + vertex_buffer: 2.1965208 + vertex_buffer: 3.8072052 vertex_buffer: 0.438999 vertex_buffer: 0.396495 - vertex_buffer: -0.9582304 - vertex_buffer: 1.9468021 - vertex_buffer: 4.345352 + vertex_buffer: -0.9448478 + vertex_buffer: 1.9365664 + vertex_buffer: 4.38253 vertex_buffer: 0.450067 vertex_buffer: 0.400434 - vertex_buffer: -4.244197 - vertex_buffer: 2.7366695 - vertex_buffer: 2.960125 + vertex_buffer: -4.2922497 + vertex_buffer: 2.6898146 + vertex_buffer: 2.9300308 vertex_buffer: 0.289712 vertex_buffer: 0.368253 - vertex_buffer: -4.7106714 - vertex_buffer: 2.9214668 - vertex_buffer: 2.9095612 + vertex_buffer: -4.8194146 + vertex_buffer: 2.828557 + vertex_buffer: 2.8723068 vertex_buffer: 0.27667 vertex_buffer: 0.363373 - vertex_buffer: 0.4557233 - vertex_buffer: -0.09976578 - vertex_buffer: 6.807411 + vertex_buffer: 0.53194714 + vertex_buffer: -0.050429344 + vertex_buffer: 6.918358 vertex_buffer: 0.517862 vertex_buffer: 0.471948 - vertex_buffer: 4.4233675 - vertex_buffer: 2.7335339 - vertex_buffer: 2.873291 + vertex_buffer: 4.3447104 + vertex_buffer: 2.6436758 + vertex_buffer: 2.897522 vertex_buffer: 0.710288 vertex_buffer: 0.380764 - vertex_buffer: 0.5896871 - vertex_buffer: -2.4311037 - vertex_buffer: 6.803581 + vertex_buffer: 0.6996751 + vertex_buffer: -2.3714056 + vertex_buffer: 6.902588 vertex_buffer: 0.526227 vertex_buffer: 0.57391 - vertex_buffer: 7.1104274 - vertex_buffer: 6.1066265 - vertex_buffer: -0.524765 + vertex_buffer: 7.113553 + vertex_buffer: 5.9273233 + vertex_buffer: -0.46561432 vertex_buffer: 0.895093 vertex_buffer: 0.254141 - vertex_buffer: 2.6855998 - vertex_buffer: 2.1231346 - vertex_buffer: 3.5657158 + vertex_buffer: 2.585521 + vertex_buffer: 2.034768 + vertex_buffer: 3.57576 vertex_buffer: 0.63407 vertex_buffer: 0.409576 - vertex_buffer: 3.3005595 - vertex_buffer: 2.09943 - vertex_buffer: 3.5472717 + vertex_buffer: 3.193721 + vertex_buffer: 2.0043135 + vertex_buffer: 3.5725174 vertex_buffer: 0.661242 vertex_buffer: 0.413025 - vertex_buffer: 3.9086227 - vertex_buffer: 2.1380157 - vertex_buffer: 3.3940887 + vertex_buffer: 3.7890604 + vertex_buffer: 2.0464945 + vertex_buffer: 3.4141083 vertex_buffer: 0.68888 vertex_buffer: 0.40946 - vertex_buffer: 4.713306 - vertex_buffer: 2.4999008 - vertex_buffer: 2.8279686 + vertex_buffer: 4.6746473 + vertex_buffer: 2.4268217 + vertex_buffer: 2.852539 vertex_buffer: 0.725342 vertex_buffer: 0.389131 - vertex_buffer: 2.1501455 - vertex_buffer: 2.2178802 - vertex_buffer: 3.5230026 + vertex_buffer: 2.1028016 + vertex_buffer: 2.1425543 + vertex_buffer: 3.544548 vertex_buffer: 0.60663 vertex_buffer: 0.403705 - vertex_buffer: 3.6217146 - vertex_buffer: 3.4120636 - vertex_buffer: 3.653984 + vertex_buffer: 3.5536964 + vertex_buffer: 3.320239 + vertex_buffer: 3.7096329 vertex_buffer: 0.654766 vertex_buffer: 0.344011 - vertex_buffer: 2.893744 - vertex_buffer: 3.3937721 - vertex_buffer: 3.6192245 + vertex_buffer: 2.8808224 + vertex_buffer: 3.302228 + vertex_buffer: 3.6645126 vertex_buffer: 0.629906 vertex_buffer: 0.346076 - vertex_buffer: 4.2891564 - vertex_buffer: 3.3539772 - vertex_buffer: 3.4819374 + vertex_buffer: 4.196933 + vertex_buffer: 3.2492666 + vertex_buffer: 3.5380325 vertex_buffer: 0.680678 vertex_buffer: 0.347265 - vertex_buffer: 4.717091 - vertex_buffer: 3.2154942 - vertex_buffer: 3.237156 + vertex_buffer: 4.625761 + vertex_buffer: 3.1201696 + vertex_buffer: 3.2823792 vertex_buffer: 0.702097 vertex_buffer: 0.353591 - vertex_buffer: 5.3257637 - vertex_buffer: 2.217041 - vertex_buffer: 2.572815 + vertex_buffer: 5.2468834 + vertex_buffer: 2.1132803 + vertex_buffer: 2.589981 vertex_buffer: 0.752212 vertex_buffer: 0.410805 - vertex_buffer: 2.4353065 - vertex_buffer: -7.807514 - vertex_buffer: 4.480995 + vertex_buffer: 2.4263752 + vertex_buffer: -7.7052097 + vertex_buffer: 4.537575 vertex_buffer: 0.602918 vertex_buffer: 0.842863 - vertex_buffer: 4.6661816 - vertex_buffer: 2.8710518 - vertex_buffer: 2.65345 + vertex_buffer: 4.617506 + vertex_buffer: 2.7795935 + vertex_buffer: 2.6753845 vertex_buffer: 0.719902 vertex_buffer: 0.3756 - vertex_buffer: 7.440019 - vertex_buffer: 3.131775 - vertex_buffer: -0.3580017 + vertex_buffer: 7.3760204 + vertex_buffer: 3.0266466 + vertex_buffer: -0.3817978 vertex_buffer: 0.893693 vertex_buffer: 0.39996 - vertex_buffer: 6.0832314 - vertex_buffer: 2.7290764 - vertex_buffer: 1.875206 + vertex_buffer: 6.022975 + vertex_buffer: 2.5387945 + vertex_buffer: 1.9029083 vertex_buffer: 0.790082 vertex_buffer: 0.391354 - vertex_buffer: 3.320528 - vertex_buffer: -0.79992485 - vertex_buffer: 4.691944 + vertex_buffer: 3.3770058 + vertex_buffer: -0.73157406 + vertex_buffer: 4.7022095 vertex_buffer: 0.643998 vertex_buffer: 0.534488 - vertex_buffer: 1.0343971 - vertex_buffer: -3.5772133 - vertex_buffer: 6.173771 + vertex_buffer: 1.0114822 + vertex_buffer: -3.435567 + vertex_buffer: 6.211109 vertex_buffer: 0.528249 vertex_buffer: 0.650404 - vertex_buffer: 0.9751768 - vertex_buffer: -3.9168758 - vertex_buffer: 5.932743 + vertex_buffer: 0.93413424 + vertex_buffer: -3.8046446 + vertex_buffer: 5.953453 vertex_buffer: 0.52585 vertex_buffer: 0.680191 - vertex_buffer: 2.0198758 - vertex_buffer: -3.497593 - vertex_buffer: 5.724884 + vertex_buffer: 1.9933903 + vertex_buffer: -3.3932886 + vertex_buffer: 5.7416153 vertex_buffer: 0.560215 vertex_buffer: 0.657229 - vertex_buffer: 2.6891446 - vertex_buffer: -3.419303 - vertex_buffer: 4.9991264 + vertex_buffer: 2.6798441 + vertex_buffer: -3.3386621 + vertex_buffer: 4.9783173 vertex_buffer: 0.585384 vertex_buffer: 0.666541 - vertex_buffer: 1.801127 - vertex_buffer: -3.7446804 - vertex_buffer: 5.539379 + vertex_buffer: 1.7718046 + vertex_buffer: -3.6605377 + vertex_buffer: 5.5417747 vertex_buffer: 0.549626 vertex_buffer: 0.680861 - vertex_buffer: 2.4278598 - vertex_buffer: -3.5954514 - vertex_buffer: 4.8850937 + vertex_buffer: 2.441478 + vertex_buffer: -3.5344458 + vertex_buffer: 4.8507576 vertex_buffer: 0.571228 vertex_buffer: 0.682692 - vertex_buffer: 3.4538455 - vertex_buffer: -4.6567383 - vertex_buffer: 3.8188782 + vertex_buffer: 3.439986 + vertex_buffer: -4.4586763 + vertex_buffer: 3.7416534 vertex_buffer: 0.624852 vertex_buffer: 0.728099 - vertex_buffer: 0.44568062 - vertex_buffer: -2.4389172 - vertex_buffer: 7.936165 + vertex_buffer: 0.54155016 + vertex_buffer: -2.3555956 + vertex_buffer: 8.080692 vertex_buffer: 0.51305 vertex_buffer: 0.547282 - vertex_buffer: 0.500227 - vertex_buffer: -1.8438797 - vertex_buffer: 8.057892 + vertex_buffer: 0.5805495 + vertex_buffer: -1.7611103 + vertex_buffer: 8.194675 vertex_buffer: 0.515097 vertex_buffer: 0.527252 - vertex_buffer: 5.563794 - vertex_buffer: 3.5847569 - vertex_buffer: 3.0730896 + vertex_buffer: 5.4699183 + vertex_buffer: 3.4201117 + vertex_buffer: 3.1734161 vertex_buffer: 0.742247 vertex_buffer: 0.314507 - vertex_buffer: 1.8687227 - vertex_buffer: 0.68432045 - vertex_buffer: 4.5661697 + vertex_buffer: 1.915395 + vertex_buffer: 0.72983646 + vertex_buffer: 4.5922546 vertex_buffer: 0.598631 vertex_buffer: 0.454979 - vertex_buffer: 2.1151233 - vertex_buffer: -1.6004467 - vertex_buffer: 6.266529 + vertex_buffer: 2.2440703 + vertex_buffer: -1.4948635 + vertex_buffer: 6.3498993 vertex_buffer: 0.570338 vertex_buffer: 0.548575 - vertex_buffer: 2.1468282 - vertex_buffer: -1.1814651 - vertex_buffer: 6.0051003 + vertex_buffer: 2.2630708 + vertex_buffer: -1.0630875 + vertex_buffer: 6.0715637 vertex_buffer: 0.578632 vertex_buffer: 0.533623 - vertex_buffer: 5.3009615 - vertex_buffer: -0.39289856 - vertex_buffer: 3.829239 + vertex_buffer: 5.326476 + vertex_buffer: -0.36264133 + vertex_buffer: 3.8273468 vertex_buffer: 0.723087 vertex_buffer: 0.532054 - vertex_buffer: 0.47490668 - vertex_buffer: -0.954937 - vertex_buffer: 7.5581512 + vertex_buffer: 0.5749686 + vertex_buffer: -0.8757305 + vertex_buffer: 7.687145 vertex_buffer: 0.516446 vertex_buffer: 0.499639 - vertex_buffer: 4.010097 - vertex_buffer: 3.8255272 - vertex_buffer: 4.158489 + vertex_buffer: 3.8552744 + vertex_buffer: 3.689845 + vertex_buffer: 4.287155 vertex_buffer: 0.662801 vertex_buffer: 0.282918 - vertex_buffer: 4.913331 - vertex_buffer: 3.769619 - vertex_buffer: 3.696968 + vertex_buffer: 4.7753754 + vertex_buffer: 3.62259 + vertex_buffer: 3.8272934 vertex_buffer: 0.703624 vertex_buffer: 0.293271 - vertex_buffer: 6.364388 - vertex_buffer: 6.910389 - vertex_buffer: 0.5906296 + vertex_buffer: 6.336194 + vertex_buffer: 6.7500753 + vertex_buffer: 0.6641846 vertex_buffer: 0.830705 vertex_buffer: 0.193814 - vertex_buffer: 1.2539544 - vertex_buffer: 3.2268982 - vertex_buffer: 4.77668 + vertex_buffer: 1.197046 + vertex_buffer: 3.1150694 + vertex_buffer: 4.8960915 vertex_buffer: 0.552386 vertex_buffer: 0.302568 - vertex_buffer: 2.2652593 - vertex_buffer: 3.2619667 - vertex_buffer: 3.4299316 + vertex_buffer: 2.3022087 + vertex_buffer: 3.180009 + vertex_buffer: 3.467308 vertex_buffer: 0.60761 vertex_buffer: 0.353888 - vertex_buffer: 4.0082717 - vertex_buffer: -3.6588259 - vertex_buffer: 3.673111 + vertex_buffer: 4.043745 + vertex_buffer: -3.495017 + vertex_buffer: 3.603981 vertex_buffer: 0.645429 vertex_buffer: 0.696707 - vertex_buffer: 6.7817683 - vertex_buffer: -3.3016567 - vertex_buffer: -1.115593 + vertex_buffer: 6.6462812 + vertex_buffer: -3.3501625 + vertex_buffer: -1.1839218 vertex_buffer: 0.932695 vertex_buffer: 0.730105 - vertex_buffer: 1.6774135 - vertex_buffer: -1.9343586 - vertex_buffer: 6.045189 + vertex_buffer: 1.8212306 + vertex_buffer: -1.8668957 + vertex_buffer: 6.124283 vertex_buffer: 0.557261 vertex_buffer: 0.572826 - vertex_buffer: 1.1181836 - vertex_buffer: -2.1948853 - vertex_buffer: 6.1964493 + vertex_buffer: 1.2335155 + vertex_buffer: -2.133813 + vertex_buffer: 6.2727966 vertex_buffer: 0.542902 vertex_buffer: 0.584792 - vertex_buffer: 3.5379481 - vertex_buffer: -3.4544334 - vertex_buffer: 3.6014824 + vertex_buffer: 3.5597908 + vertex_buffer: -3.390893 + vertex_buffer: 3.4987106 vertex_buffer: 0.618026 vertex_buffer: 0.694711 - vertex_buffer: 3.3265133 - vertex_buffer: -3.5294476 - vertex_buffer: 3.7494392 + vertex_buffer: 3.3511508 + vertex_buffer: -3.4661226 + vertex_buffer: 3.6426163 vertex_buffer: 0.607591 vertex_buffer: 0.694203 - vertex_buffer: 5.2492943 - vertex_buffer: 4.239422 - vertex_buffer: 3.282959 + vertex_buffer: 5.1548424 + vertex_buffer: 4.098275 + vertex_buffer: 3.4092026 vertex_buffer: 0.722943 vertex_buffer: 0.271963 - vertex_buffer: 2.2147388 - vertex_buffer: -1.7126923 - vertex_buffer: 5.9330673 + vertex_buffer: 2.3381293 + vertex_buffer: -1.5952787 + vertex_buffer: 5.9982185 vertex_buffer: 0.577414 vertex_buffer: 0.563167 - vertex_buffer: 2.8107052 - vertex_buffer: 3.6788368 - vertex_buffer: 4.5267143 + vertex_buffer: 2.671685 + vertex_buffer: 3.57483 + vertex_buffer: 4.648712 vertex_buffer: 0.614083 vertex_buffer: 0.281387 - vertex_buffer: 2.9189334 - vertex_buffer: 4.098074 - vertex_buffer: 4.600418 + vertex_buffer: 2.771435 + vertex_buffer: 4.0291147 + vertex_buffer: 4.732704 vertex_buffer: 0.616907 vertex_buffer: 0.255886 - vertex_buffer: 3.6443458 - vertex_buffer: 7.6457596 - vertex_buffer: 2.9261513 + vertex_buffer: 3.5993607 + vertex_buffer: 7.55017 + vertex_buffer: 3.0187378 vertex_buffer: 0.668509 vertex_buffer: 0.119914 - vertex_buffer: 5.719919 - vertex_buffer: 5.626848 - vertex_buffer: 2.0564346 + vertex_buffer: 5.7085924 + vertex_buffer: 5.4821615 + vertex_buffer: 2.1430283 vertex_buffer: 0.770092 vertex_buffer: 0.232021 - vertex_buffer: 3.1327949 - vertex_buffer: 6.0055923 - vertex_buffer: 3.753868 + vertex_buffer: 3.1180384 + vertex_buffer: 5.936076 + vertex_buffer: 3.8677902 vertex_buffer: 0.635536 vertex_buffer: 0.189249 - vertex_buffer: 5.9548945 - vertex_buffer: 4.0332947 - vertex_buffer: 2.4511032 + vertex_buffer: 5.9040794 + vertex_buffer: 3.8666945 + vertex_buffer: 2.5417404 vertex_buffer: 0.770391 vertex_buffer: 0.299556 - vertex_buffer: 6.5107217 - vertex_buffer: 5.0730724 - vertex_buffer: 1.0034714 + vertex_buffer: 6.505088 + vertex_buffer: 4.8785944 + vertex_buffer: 1.0615616 vertex_buffer: 0.826722 vertex_buffer: 0.278755 - vertex_buffer: 1.0199723 - vertex_buffer: -3.7844124 - vertex_buffer: 6.102539 + vertex_buffer: 0.984144 + vertex_buffer: -3.6622553 + vertex_buffer: 6.136757 vertex_buffer: 0.527121 vertex_buffer: 0.666198 - vertex_buffer: 1.9127924 - vertex_buffer: -3.6357756 - vertex_buffer: 5.633663 + vertex_buffer: 1.8842118 + vertex_buffer: -3.5414534 + vertex_buffer: 5.6446877 vertex_buffer: 0.553172 vertex_buffer: 0.668527 - vertex_buffer: 2.56253 - vertex_buffer: -3.5202847 - vertex_buffer: 4.9860764 + vertex_buffer: 2.5718348 + vertex_buffer: -3.4513216 + vertex_buffer: 4.9610825 vertex_buffer: 0.577238 vertex_buffer: 0.67389 - vertex_buffer: 1.5427475 - vertex_buffer: -2.0056324 - vertex_buffer: 5.9561844 + vertex_buffer: 1.6876833 + vertex_buffer: -1.9365826 + vertex_buffer: 6.0340233 vertex_buffer: 0.554692 vertex_buffer: 0.580066 - vertex_buffer: 3.433651 - vertex_buffer: -3.4927368 - vertex_buffer: 3.6841927 + vertex_buffer: 3.453664 + vertex_buffer: -3.4282274 + vertex_buffer: 3.571228 vertex_buffer: 0.611897 vertex_buffer: 0.693961 - vertex_buffer: 3.039651 - vertex_buffer: -4.220401 - vertex_buffer: 4.04813 + vertex_buffer: 3.0061944 + vertex_buffer: -4.128131 + vertex_buffer: 3.9685822 vertex_buffer: 0.596961 vertex_buffer: 0.70654 - vertex_buffer: 3.2336345 - vertex_buffer: -3.5586157 - vertex_buffer: 3.7713776 + vertex_buffer: 3.2758915 + vertex_buffer: -3.5036535 + vertex_buffer: 3.6696854 vertex_buffer: 0.596371 vertex_buffer: 0.693953 - vertex_buffer: 1.2306843 - vertex_buffer: -2.1179 - vertex_buffer: 6.9610977 + vertex_buffer: 1.3570774 + vertex_buffer: -2.051343 + vertex_buffer: 7.0781364 vertex_buffer: 0.539958 vertex_buffer: 0.557139 - vertex_buffer: 2.3038955 - vertex_buffer: -3.6402588 - vertex_buffer: 4.8297653 + vertex_buffer: 2.3207939 + vertex_buffer: -3.593152 + vertex_buffer: 4.790127 vertex_buffer: 0.568842 vertex_buffer: 0.692366 - vertex_buffer: 1.6892781 - vertex_buffer: -3.7778206 - vertex_buffer: 5.3365936 + vertex_buffer: 1.6801136 + vertex_buffer: -3.705285 + vertex_buffer: 5.334961 vertex_buffer: 0.547818 vertex_buffer: 0.692366 - vertex_buffer: 0.9177649 - vertex_buffer: -3.9602928 - vertex_buffer: 5.717106 + vertex_buffer: 0.8785734 + vertex_buffer: -3.869151 + vertex_buffer: 5.7289314 vertex_buffer: 0.524613 vertex_buffer: 0.692366 - vertex_buffer: 1.0025139 - vertex_buffer: -7.1202345 - vertex_buffer: 5.192562 + vertex_buffer: 0.9731822 + vertex_buffer: -6.8621626 + vertex_buffer: 5.249382 vertex_buffer: 0.53409 vertex_buffer: 0.779141 - vertex_buffer: 1.0766866 - vertex_buffer: -6.1921215 - vertex_buffer: 5.555439 + vertex_buffer: 0.89263844 + vertex_buffer: -6.1380424 + vertex_buffer: 5.630192 vertex_buffer: 0.527671 vertex_buffer: 0.736226 - vertex_buffer: 1.0306296 - vertex_buffer: -5.857276 - vertex_buffer: 5.5664825 + vertex_buffer: 0.872911 + vertex_buffer: -5.801488 + vertex_buffer: 5.6426926 vertex_buffer: 0.526913 vertex_buffer: 0.717857 - vertex_buffer: 0.9698453 - vertex_buffer: -5.5317726 - vertex_buffer: 5.3419876 + vertex_buffer: 0.8365991 + vertex_buffer: -5.483403 + vertex_buffer: 5.4128036 vertex_buffer: 0.526878 vertex_buffer: 0.704626 - vertex_buffer: 0.8837676 - vertex_buffer: -5.2959585 - vertex_buffer: 5.172344 + vertex_buffer: 0.7819593 + vertex_buffer: -5.2532034 + vertex_buffer: 5.248028 vertex_buffer: 0.526967 vertex_buffer: 0.695278 - vertex_buffer: 2.24453 - vertex_buffer: -4.622444 - vertex_buffer: 4.4214935 + vertex_buffer: 2.2212698 + vertex_buffer: -4.563961 + vertex_buffer: 4.4139442 vertex_buffer: 0.572058 vertex_buffer: 0.695278 - vertex_buffer: 2.3852797 - vertex_buffer: -4.7262135 - vertex_buffer: 4.552891 + vertex_buffer: 2.3279316 + vertex_buffer: -4.642807 + vertex_buffer: 4.53759 vertex_buffer: 0.573521 vertex_buffer: 0.70354 - vertex_buffer: 2.5520854 - vertex_buffer: -4.888693 - vertex_buffer: 4.64587 + vertex_buffer: 2.44926 + vertex_buffer: -4.770028 + vertex_buffer: 4.6182365 vertex_buffer: 0.576838 vertex_buffer: 0.711846 - vertex_buffer: 2.6840568 - vertex_buffer: -5.0542088 - vertex_buffer: 4.5449486 + vertex_buffer: 2.5577633 + vertex_buffer: -4.939996 + vertex_buffer: 4.509323 vertex_buffer: 0.581691 vertex_buffer: 0.720063 - vertex_buffer: 3.1587934 - vertex_buffer: -2.9152546 - vertex_buffer: 4.8155594 + vertex_buffer: 3.244198 + vertex_buffer: -2.8179703 + vertex_buffer: 4.7954865 vertex_buffer: 0.609945 vertex_buffer: 0.63991 - vertex_buffer: 7.688642 - vertex_buffer: 0.5722141 - vertex_buffer: -2.497551 + vertex_buffer: 7.5275736 + vertex_buffer: 0.4031868 + vertex_buffer: -2.555832 vertex_buffer: 0.986046 vertex_buffer: 0.560034 - vertex_buffer: 2.7035184 - vertex_buffer: -4.1863203 - vertex_buffer: 3.9877663 + vertex_buffer: 2.7193615 + vertex_buffer: -4.1086264 + vertex_buffer: 3.92305 vertex_buffer: 0.5868 vertex_buffer: 0.6954 - vertex_buffer: 2.8748584 - vertex_buffer: -4.191183 - vertex_buffer: 4.058277 + vertex_buffer: 2.8594978 + vertex_buffer: -4.0911894 + vertex_buffer: 3.9859848 vertex_buffer: 0.590372 vertex_buffer: 0.701823 - vertex_buffer: 0.90896845 - vertex_buffer: -2.4329576 - vertex_buffer: 6.2138214 + vertex_buffer: 1.0002508 + vertex_buffer: -2.3797827 + vertex_buffer: 6.2758408 vertex_buffer: 0.531915 vertex_buffer: 0.601537 - vertex_buffer: 2.0642586 - vertex_buffer: -1.9124699 - vertex_buffer: 5.478153 + vertex_buffer: 2.190593 + vertex_buffer: -1.820447 + vertex_buffer: 5.521885 vertex_buffer: 0.577268 vertex_buffer: 0.585935 - vertex_buffer: 1.006985 - vertex_buffer: -2.3283577 - vertex_buffer: 6.23695 + vertex_buffer: 1.1148059 + vertex_buffer: -2.272046 + vertex_buffer: 6.310272 vertex_buffer: 0.536915 vertex_buffer: 0.593786 - vertex_buffer: 2.5759187 - vertex_buffer: 0.44814682 - vertex_buffer: 4.3974953 + vertex_buffer: 2.6178286 + vertex_buffer: 0.50542927 + vertex_buffer: 4.406437 vertex_buffer: 0.627543 vertex_buffer: 0.473352 - vertex_buffer: 3.6742215 - vertex_buffer: 0.14735794 - vertex_buffer: 4.300823 + vertex_buffer: 3.6981938 + vertex_buffer: 0.18942547 + vertex_buffer: 4.314892 vertex_buffer: 0.665586 vertex_buffer: 0.495951 - vertex_buffer: 2.324253 - vertex_buffer: -1.3221512 - vertex_buffer: 5.6560364 + vertex_buffer: 2.436683 + vertex_buffer: -1.2034836 + vertex_buffer: 5.7094955 vertex_buffer: 0.588354 vertex_buffer: 0.546862 - vertex_buffer: 5.2519984 - vertex_buffer: 7.422056 - vertex_buffer: 1.8106079 + vertex_buffer: 5.1805277 + vertex_buffer: 7.2937574 + vertex_buffer: 1.9096146 vertex_buffer: 0.757824 vertex_buffer: 0.147676 - vertex_buffer: 4.632069 - vertex_buffer: 5.958935 - vertex_buffer: 2.947197 + vertex_buffer: 4.612015 + vertex_buffer: 5.8454237 + vertex_buffer: 3.0487823 vertex_buffer: 0.70925 vertex_buffer: 0.201508 - vertex_buffer: 4.2187295 - vertex_buffer: 4.326639 - vertex_buffer: 3.937294 + vertex_buffer: 4.0864067 + vertex_buffer: 4.2193213 + vertex_buffer: 4.069004 vertex_buffer: 0.672684 vertex_buffer: 0.256581 - vertex_buffer: 2.8333287 - vertex_buffer: -5.604254 - vertex_buffer: 4.244461 + vertex_buffer: 2.8172762 + vertex_buffer: -5.3946714 + vertex_buffer: 4.1984596 vertex_buffer: 0.600409 vertex_buffer: 0.749005 - vertex_buffer: 1.4679971 - vertex_buffer: 3.8951092 - vertex_buffer: 4.917988 + vertex_buffer: 1.3995607 + vertex_buffer: 3.8311396 + vertex_buffer: 5.0485916 vertex_buffer: 0.558266 vertex_buffer: 0.261672 - vertex_buffer: 1.6675885 - vertex_buffer: 5.9459534 - vertex_buffer: 4.220398 + vertex_buffer: 1.6648371 + vertex_buffer: 5.8939657 + vertex_buffer: 4.3421707 vertex_buffer: 0.570304 vertex_buffer: 0.187871 - vertex_buffer: 1.9772725 - vertex_buffer: 7.685417 - vertex_buffer: 3.608265 + vertex_buffer: 1.9585392 + vertex_buffer: 7.6219473 + vertex_buffer: 3.6947708 vertex_buffer: 0.588166 vertex_buffer: 0.109044 - vertex_buffer: 4.4115176 - vertex_buffer: 2.277008 - vertex_buffer: 3.1165123 + vertex_buffer: 4.327879 + vertex_buffer: 2.1908484 + vertex_buffer: 3.1392365 vertex_buffer: 0.711045 vertex_buffer: 0.398952 - vertex_buffer: 6.066839 - vertex_buffer: 1.9197044 - vertex_buffer: 2.2571068 + vertex_buffer: 5.969989 + vertex_buffer: 1.7875662 + vertex_buffer: 2.2683868 vertex_buffer: 0.78107 vertex_buffer: 0.435405 - vertex_buffer: 1.7979245 - vertex_buffer: 2.3505611 - vertex_buffer: 3.4173965 + vertex_buffer: 1.7925317 + vertex_buffer: 2.2776594 + vertex_buffer: 3.4427567 vertex_buffer: 0.587247 vertex_buffer: 0.398932 - vertex_buffer: 5.3594832 - vertex_buffer: 3.1186295 - vertex_buffer: 2.6962051 + vertex_buffer: 5.282015 + vertex_buffer: 2.974105 + vertex_buffer: 2.746933 vertex_buffer: 0.74287 vertex_buffer: 0.355446 - vertex_buffer: 1.3922458 - vertex_buffer: 0.97599983 - vertex_buffer: 4.775028 + vertex_buffer: 1.4310632 + vertex_buffer: 1.004962 + vertex_buffer: 4.814476 vertex_buffer: 0.572156 vertex_buffer: 0.437652 - vertex_buffer: 1.616169 - vertex_buffer: -1.6582394 - vertex_buffer: 6.8999977 + vertex_buffer: 1.7326758 + vertex_buffer: -1.5682611 + vertex_buffer: 7.0048447 vertex_buffer: 0.551868 vertex_buffer: 0.53657 - vertex_buffer: 6.78416 - vertex_buffer: 1.5186348 - vertex_buffer: 1.618866 + vertex_buffer: 6.7443266 + vertex_buffer: 1.4712286 + vertex_buffer: 1.6035004 vertex_buffer: 0.821442 vertex_buffer: 0.457556 - vertex_buffer: 5.6282315 - vertex_buffer: 1.388504 - vertex_buffer: 2.893032 + vertex_buffer: 5.4755573 + vertex_buffer: 1.3217344 + vertex_buffer: 2.8914795 vertex_buffer: 0.752702 vertex_buffer: 0.457182 - vertex_buffer: 4.798031 - vertex_buffer: 1.0380936 - vertex_buffer: 3.5061264 + vertex_buffer: 4.6321383 + vertex_buffer: 1.0208502 + vertex_buffer: 3.4981613 vertex_buffer: 0.713757 vertex_buffer: 0.467627 - vertex_buffer: 3.5390134 - vertex_buffer: 1.0216026 - vertex_buffer: 3.8351288 + vertex_buffer: 3.4231718 + vertex_buffer: 0.96776867 + vertex_buffer: 3.8437119 vertex_buffer: 0.667113 vertex_buffer: 0.460673 - vertex_buffer: 2.609848 - vertex_buffer: 1.2015228 - vertex_buffer: 3.9345818 + vertex_buffer: 2.5220368 + vertex_buffer: 1.1310968 + vertex_buffer: 3.941143 vertex_buffer: 0.631101 vertex_buffer: 0.447154 - vertex_buffer: 1.9195385 - vertex_buffer: 1.3872204 - vertex_buffer: 4.096855 + vertex_buffer: 1.8733847 + vertex_buffer: 1.3218985 + vertex_buffer: 4.1189384 vertex_buffer: 0.600862 vertex_buffer: 0.432473 - vertex_buffer: 0.55275345 - vertex_buffer: 1.5423336 - vertex_buffer: 5.437954 + vertex_buffer: 0.6108091 + vertex_buffer: 1.547162 + vertex_buffer: 5.5298767 vertex_buffer: 0.523481 vertex_buffer: 0.405627 - vertex_buffer: 6.806109 - vertex_buffer: 0.1703682 - vertex_buffer: 1.9784393 + vertex_buffer: 6.790286 + vertex_buffer: 0.15019321 + vertex_buffer: 1.9478836 vertex_buffer: 0.810748 vertex_buffer: 0.523926 - vertex_buffer: 5.872286 - vertex_buffer: 3.2484322 - vertex_buffer: 2.3980637 + vertex_buffer: 5.785424 + vertex_buffer: 3.0670977 + vertex_buffer: 2.46521 vertex_buffer: 0.771046 vertex_buffer: 0.348959 - vertex_buffer: 0.25344086 - vertex_buffer: -2.692729 - vertex_buffer: 7.660309 + vertex_buffer: 0.34205556 + vertex_buffer: -2.6152048 + vertex_buffer: 7.79031 vertex_buffer: 0.509127 vertex_buffer: 0.562718 - vertex_buffer: 1.89399 - vertex_buffer: -0.009780884 - vertex_buffer: 4.9561996 + vertex_buffer: 1.973675 + vertex_buffer: 0.061566353 + vertex_buffer: 4.9842224 vertex_buffer: 0.595293 vertex_buffer: 0.485024 - vertex_buffer: 7.8352485 - vertex_buffer: 3.7826881 - vertex_buffer: -2.4868622 + vertex_buffer: 7.745349 + vertex_buffer: 3.5905905 + vertex_buffer: -2.5028 vertex_buffer: 0.980531 vertex_buffer: 0.401564 - vertex_buffer: 1.4199667 - vertex_buffer: 1.6500931 - vertex_buffer: 4.163162 + vertex_buffer: 1.3947985 + vertex_buffer: 1.5804167 + vertex_buffer: 4.192932 vertex_buffer: 0.5735 vertex_buffer: 0.42 - vertex_buffer: 2.436627 - vertex_buffer: -1.1298904 - vertex_buffer: 4.9345818 + vertex_buffer: 2.5491192 + vertex_buffer: -1.0189962 + vertex_buffer: 4.9544106 vertex_buffer: 0.602995 vertex_buffer: 0.548688 - vertex_buffer: 4.974197 - vertex_buffer: 2.8475647 - vertex_buffer: 2.539547 + vertex_buffer: 4.9584036 + vertex_buffer: 2.742978 + vertex_buffer: 2.5603561 vertex_buffer: 0.73353 vertex_buffer: 0.376977 - vertex_buffer: 1.6374424 - vertex_buffer: -1.1410618 - vertex_buffer: 6.5802727 + vertex_buffer: 1.7421043 + vertex_buffer: -1.0443316 + vertex_buffer: 6.673523 vertex_buffer: 0.560611 vertex_buffer: 0.519017 - vertex_buffer: 7.3761964 - vertex_buffer: -1.2901726 - vertex_buffer: -1.9598465 + vertex_buffer: 7.2410536 + vertex_buffer: -1.4046392 + vertex_buffer: -2.0205154 vertex_buffer: 0.967686 vertex_buffer: 0.644357 - vertex_buffer: 1.7877736 - vertex_buffer: 2.6136627 - vertex_buffer: 3.1872444 + vertex_buffer: 1.8415062 + vertex_buffer: 2.5303621 + vertex_buffer: 3.2203522 vertex_buffer: 0.580985 vertex_buffer: 0.38716 - vertex_buffer: 1.0308688 - vertex_buffer: -1.0347443 - vertex_buffer: 7.191269 + vertex_buffer: 1.1218979 + vertex_buffer: -0.953743 + vertex_buffer: 7.305233 vertex_buffer: 0.537728 vertex_buffer: 0.505385 - vertex_buffer: 5.220964 - vertex_buffer: -5.4038334 - vertex_buffer: 2.025116 + vertex_buffer: 5.1703796 + vertex_buffer: -5.3340044 + vertex_buffer: 1.9891815 vertex_buffer: 0.760966 vertex_buffer: 0.779753 - vertex_buffer: 5.092406 - vertex_buffer: -6.2497435 - vertex_buffer: 1.2104645 + vertex_buffer: 4.9649057 + vertex_buffer: -6.1980543 + vertex_buffer: 1.1781464 vertex_buffer: 0.801779 vertex_buffer: 0.831938 - vertex_buffer: 7.5058455 - vertex_buffer: 0.29886246 - vertex_buffer: -0.2566986 + vertex_buffer: 7.4333687 + vertex_buffer: 0.21798801 + vertex_buffer: -0.3219452 vertex_buffer: 0.892441 vertex_buffer: 0.540761 - vertex_buffer: 6.095238 - vertex_buffer: -4.3407555 - vertex_buffer: 1.3235703 + vertex_buffer: 6.05208 + vertex_buffer: -4.2948513 + vertex_buffer: 1.2507553 vertex_buffer: 0.816351 vertex_buffer: 0.74026 - vertex_buffer: 7.013057 - vertex_buffer: 4.291136 - vertex_buffer: 0.12023926 + vertex_buffer: 6.9947233 + vertex_buffer: 4.135207 + vertex_buffer: 0.14093018 vertex_buffer: 0.865595 vertex_buffer: 0.333687 - vertex_buffer: 2.4846048 - vertex_buffer: -8.586898 - vertex_buffer: 4.309025 + vertex_buffer: 2.4659312 + vertex_buffer: -8.52173 + vertex_buffer: 4.372795 vertex_buffer: 0.614074 vertex_buffer: 0.883246 - vertex_buffer: 0.20751572 - vertex_buffer: -2.593811 - vertex_buffer: 6.8122063 + vertex_buffer: 0.29902577 + vertex_buffer: -2.5423841 + vertex_buffer: 6.9073067 vertex_buffer: 0.508953 vertex_buffer: 0.579438 - vertex_buffer: 2.5229864 - vertex_buffer: -0.34407425 - vertex_buffer: 4.7728615 + vertex_buffer: 2.6023123 + vertex_buffer: -0.2676897 + vertex_buffer: 4.789219 vertex_buffer: 0.617942 vertex_buffer: 0.508316 - vertex_buffer: 6.6616683 - vertex_buffer: 2.8089104 - vertex_buffer: 1.2291412 + vertex_buffer: 6.6233063 + vertex_buffer: 2.5794249 + vertex_buffer: 1.2566376 vertex_buffer: 0.825608 vertex_buffer: 0.397675 - vertex_buffer: 3.8336496 - vertex_buffer: 2.551447 - vertex_buffer: 3.2623215 + vertex_buffer: 3.7107036 + vertex_buffer: 2.473483 + vertex_buffer: 3.2750626 vertex_buffer: 0.681215 vertex_buffer: 0.396235 - vertex_buffer: 3.3227315 - vertex_buffer: 2.4893188 - vertex_buffer: 3.4235725 + vertex_buffer: 3.1857355 + vertex_buffer: 2.408862 + vertex_buffer: 3.4369278 vertex_buffer: 0.656636 vertex_buffer: 0.400597 - vertex_buffer: 3.1810913 - vertex_buffer: -4.26198 - vertex_buffer: 3.9673576 + vertex_buffer: 3.1236813 + vertex_buffer: -4.1604395 + vertex_buffer: 3.882431 vertex_buffer: 0.6039 vertex_buffer: 0.710217 - vertex_buffer: 6.807468 - vertex_buffer: -1.2095566 - vertex_buffer: 1.9433289 + vertex_buffer: 6.815465 + vertex_buffer: -1.2227945 + vertex_buffer: 1.9035721 vertex_buffer: 0.812086 vertex_buffer: 0.588539 - vertex_buffer: 1.2670469 - vertex_buffer: -9.749025 - vertex_buffer: 4.4164047 + vertex_buffer: 1.2449028 + vertex_buffer: -9.702728 + vertex_buffer: 4.518326 vertex_buffer: 0.568013 vertex_buffer: 0.944565 - vertex_buffer: 3.2559943 - vertex_buffer: -8.344362 - vertex_buffer: 2.9486008 + vertex_buffer: 3.1977637 + vertex_buffer: -8.315305 + vertex_buffer: 3.0039597 vertex_buffer: 0.681008 vertex_buffer: 0.898285 - vertex_buffer: 4.0997066 - vertex_buffer: -7.4360237 - vertex_buffer: 2.1424332 + vertex_buffer: 4.005831 + vertex_buffer: -7.397817 + vertex_buffer: 2.1557388 vertex_buffer: 0.733752 vertex_buffer: 0.869701 - vertex_buffer: 2.8072643 - vertex_buffer: 2.4953976 - vertex_buffer: 3.4504585 + vertex_buffer: 2.7063358 + vertex_buffer: 2.4233923 + vertex_buffer: 3.4746246 vertex_buffer: 0.63383 vertex_buffer: 0.398822 - vertex_buffer: 2.3031783 - vertex_buffer: 2.5451431 - vertex_buffer: 3.3544083 + vertex_buffer: 2.2457201 + vertex_buffer: 2.470498 + vertex_buffer: 3.3779373 vertex_buffer: 0.606793 vertex_buffer: 0.395537 - vertex_buffer: 1.9620697 - vertex_buffer: 2.5812283 - vertex_buffer: 3.2158203 + vertex_buffer: 1.9619262 + vertex_buffer: 2.4995623 + vertex_buffer: 3.249916 vertex_buffer: 0.58966 vertex_buffer: 0.391062 - vertex_buffer: 6.343782 - vertex_buffer: 3.5758362 - vertex_buffer: 1.7260437 + vertex_buffer: 6.3195515 + vertex_buffer: 3.3858862 + vertex_buffer: 1.7771912 vertex_buffer: 0.805016 vertex_buffer: 0.342108 - vertex_buffer: 2.3830261 - vertex_buffer: 2.9088554 - vertex_buffer: 3.3566208 + vertex_buffer: 2.4076884 + vertex_buffer: 2.848525 + vertex_buffer: 3.3891144 vertex_buffer: 0.611335 vertex_buffer: 0.362284 - vertex_buffer: 2.917768 - vertex_buffer: 3.0079918 - vertex_buffer: 3.4865303 + vertex_buffer: 2.9070504 + vertex_buffer: 2.951253 + vertex_buffer: 3.534851 vertex_buffer: 0.634038 vertex_buffer: 0.355971 - vertex_buffer: 3.462892 - vertex_buffer: 3.034853 - vertex_buffer: 3.4687576 + vertex_buffer: 3.407388 + vertex_buffer: 2.989337 + vertex_buffer: 3.512497 vertex_buffer: 0.656636 vertex_buffer: 0.355357 - vertex_buffer: 3.9937234 - vertex_buffer: 2.9874744 - vertex_buffer: 3.3298378 + vertex_buffer: 3.9015706 + vertex_buffer: 2.9467974 + vertex_buffer: 3.3696365 vertex_buffer: 0.681215 vertex_buffer: 0.35834 - vertex_buffer: 4.324596 - vertex_buffer: 2.9143276 - vertex_buffer: 3.1229668 + vertex_buffer: 4.2407217 + vertex_buffer: 2.8619852 + vertex_buffer: 3.16008 vertex_buffer: 0.698585 vertex_buffer: 0.363156 - vertex_buffer: 7.5897536 - vertex_buffer: 5.1937504 - vertex_buffer: -1.6748581 + vertex_buffer: 7.5786905 + vertex_buffer: 4.99368 + vertex_buffer: -1.6665726 vertex_buffer: 0.941867 vertex_buffer: 0.319076 - vertex_buffer: 4.176949 - vertex_buffer: 2.643118 - vertex_buffer: 3.0604668 + vertex_buffer: 4.068228 + vertex_buffer: 2.5496454 + vertex_buffer: 3.085846 vertex_buffer: 0.698585 vertex_buffer: 0.387449 - vertex_buffer: 2.4141445 - vertex_buffer: -2.7459955 - vertex_buffer: 5.3888016 + vertex_buffer: 2.4735525 + vertex_buffer: -2.6558266 + vertex_buffer: 5.3997803 vertex_buffer: 0.584177 vertex_buffer: 0.624107 - vertex_buffer: 1.6416874 - vertex_buffer: -1.9416342 - vertex_buffer: 6.295185 + vertex_buffer: 1.7838728 + vertex_buffer: -1.878912 + vertex_buffer: 6.3884697 vertex_buffer: 0.554318 vertex_buffer: 0.566077 - vertex_buffer: 1.0087769 - vertex_buffer: -2.840191 - vertex_buffer: 6.102688 + vertex_buffer: 1.0749452 + vertex_buffer: -2.8088274 + vertex_buffer: 6.157566 vertex_buffer: 0.534154 vertex_buffer: 0.62064 - vertex_buffer: 4.289112 - vertex_buffer: -6.5526133 - vertex_buffer: 2.6577988 + vertex_buffer: 4.248391 + vertex_buffer: -6.483839 + vertex_buffer: 2.6402664 vertex_buffer: 0.711218 vertex_buffer: 0.819975 - vertex_buffer: 3.4042568 - vertex_buffer: -7.559433 - vertex_buffer: 3.4406357 + vertex_buffer: 3.3602479 + vertex_buffer: -7.4832144 + vertex_buffer: 3.451416 vertex_buffer: 0.66463 vertex_buffer: 0.852871 - vertex_buffer: 1.2947857 - vertex_buffer: -9.286485 - vertex_buffer: 5.0353165 + vertex_buffer: 1.2863677 + vertex_buffer: -9.1969595 + vertex_buffer: 5.1277504 vertex_buffer: 0.5591 vertex_buffer: 0.902632 - vertex_buffer: 5.9471974 - vertex_buffer: -4.984972 - vertex_buffer: 0.09233856 + vertex_buffer: 5.8047256 + vertex_buffer: -4.982024 + vertex_buffer: 0.025428772 vertex_buffer: 0.871706 vertex_buffer: 0.791941 - vertex_buffer: 1.9832087 - vertex_buffer: 2.73312 - vertex_buffer: 3.2576714 + vertex_buffer: 2.0220706 + vertex_buffer: 2.6582823 + vertex_buffer: 3.2914886 vertex_buffer: 0.591234 vertex_buffer: 0.373894 - vertex_buffer: 0.95362043 - vertex_buffer: 0.49827957 - vertex_buffer: 5.738617 + vertex_buffer: 1.0286901 + vertex_buffer: 0.5338125 + vertex_buffer: 5.8156357 vertex_buffer: 0.544341 vertex_buffer: 0.451584 - vertex_buffer: 2.348618 - vertex_buffer: -9.16965 - vertex_buffer: 3.812458 + vertex_buffer: 2.3274424 + vertex_buffer: -9.140554 + vertex_buffer: 3.9017754 vertex_buffer: 0.624563 vertex_buffer: 0.924192 - vertex_buffer: 7.2856383 - vertex_buffer: -1.3335323 - vertex_buffer: 0.041618347 + vertex_buffer: 7.227751 + vertex_buffer: -1.3727264 + vertex_buffer: -0.042388916 vertex_buffer: 0.88577 vertex_buffer: 0.615029 - vertex_buffer: 1.6341136 - vertex_buffer: -5.0043964 - vertex_buffer: 4.8374176 + vertex_buffer: 1.5635703 + vertex_buffer: -4.96585 + vertex_buffer: 4.8786774 vertex_buffer: 0.551338 vertex_buffer: 0.695278 - vertex_buffer: 1.7723927 - vertex_buffer: -5.183873 - vertex_buffer: 4.978321 + vertex_buffer: 1.6630929 + vertex_buffer: -5.108279 + vertex_buffer: 5.018116 vertex_buffer: 0.55198 vertex_buffer: 0.704632 - vertex_buffer: 1.8914657 - vertex_buffer: -5.4476795 - vertex_buffer: 5.0997543 + vertex_buffer: 1.7488029 + vertex_buffer: -5.366082 + vertex_buffer: 5.1223946 vertex_buffer: 0.552888 vertex_buffer: 0.715808 - vertex_buffer: 1.9841194 - vertex_buffer: -5.7491245 - vertex_buffer: 5.0392456 + vertex_buffer: 1.8096058 + vertex_buffer: -5.652108 + vertex_buffer: 5.0527687 vertex_buffer: 0.555168 vertex_buffer: 0.730794 - vertex_buffer: 2.0544014 - vertex_buffer: -6.491598 - vertex_buffer: 4.7624855 + vertex_buffer: 2.0334723 + vertex_buffer: -6.2462397 + vertex_buffer: 4.761982 vertex_buffer: 0.569944 vertex_buffer: 0.767035 - vertex_buffer: 2.9393597 - vertex_buffer: -3.522482 - vertex_buffer: 4.2850266 + vertex_buffer: 2.981312 + vertex_buffer: -3.4666023 + vertex_buffer: 4.2120476 vertex_buffer: 0.593203 vertex_buffer: 0.685676 - vertex_buffer: 3.0785394 - vertex_buffer: -3.453843 - vertex_buffer: 4.248329 + vertex_buffer: 3.1095107 + vertex_buffer: -3.387988 + vertex_buffer: 4.1704597 vertex_buffer: 0.599262 vertex_buffer: 0.681069 - vertex_buffer: 3.1967435 - vertex_buffer: -3.386362 - vertex_buffer: 4.2470284 + vertex_buffer: 3.213723 + vertex_buffer: -3.3221245 + vertex_buffer: 4.1806717 vertex_buffer: 0.6076 vertex_buffer: 0.677703 - vertex_buffer: 3.7540083 - vertex_buffer: -3.1633282 - vertex_buffer: 4.1661224 + vertex_buffer: 3.8390558 + vertex_buffer: -3.033862 + vertex_buffer: 4.11351 vertex_buffer: 0.631938 vertex_buffer: 0.6635 - vertex_buffer: 5.93453 - vertex_buffer: -1.7686176 - vertex_buffer: 3.264721 + vertex_buffer: 5.9677 + vertex_buffer: -1.7381887 + vertex_buffer: 3.238922 vertex_buffer: 0.752033 vertex_buffer: 0.601315 - vertex_buffer: 0.94711924 - vertex_buffer: 1.3090687 - vertex_buffer: 5.052105 + vertex_buffer: 1.0047815 + vertex_buffer: 1.3185034 + vertex_buffer: 5.120083 vertex_buffer: 0.547226 vertex_buffer: 0.420395 - vertex_buffer: 1.3162496 - vertex_buffer: 2.8615913 - vertex_buffer: 3.6331177 + vertex_buffer: 1.3563259 + vertex_buffer: 2.7882566 + vertex_buffer: 3.682579 vertex_buffer: 0.563544 vertex_buffer: 0.359828 - vertex_buffer: 1.7124534 - vertex_buffer: 2.8893852 - vertex_buffer: 3.3580093 + vertex_buffer: 1.7724373 + vertex_buffer: 2.8166037 + vertex_buffer: 3.4016495 vertex_buffer: 0.583841 vertex_buffer: 0.368714 - vertex_buffer: 2.8105187 - vertex_buffer: -3.555643 - vertex_buffer: 4.2489166 + vertex_buffer: 2.863087 + vertex_buffer: -3.5097742 + vertex_buffer: 4.173111 vertex_buffer: 0.586614 vertex_buffer: 0.692366 - vertex_buffer: 5.993731 - vertex_buffer: -3.337038 - vertex_buffer: 2.3597908 + vertex_buffer: 6.01188 + vertex_buffer: -3.3031235 + vertex_buffer: 2.328125 vertex_buffer: 0.771915 vertex_buffer: 0.683578 - vertex_buffer: 0.7608588 - vertex_buffer: 2.5553684 - vertex_buffer: 4.583893 + vertex_buffer: 0.78206086 + vertex_buffer: 2.484929 + vertex_buffer: 4.666477 vertex_buffer: 0.531597 vertex_buffer: 0.352483 - vertex_buffer: 2.2462287 - vertex_buffer: -7.0484695 - vertex_buffer: 4.592827 + vertex_buffer: 2.228328 + vertex_buffer: -6.88383 + vertex_buffer: 4.6224136 vertex_buffer: 0.588371 vertex_buffer: 0.804441 - vertex_buffer: 0.50066924 - vertex_buffer: 0.6745777 - vertex_buffer: 6.1747093 + vertex_buffer: 0.562351 + vertex_buffer: 0.6993637 + vertex_buffer: 6.2778473 vertex_buffer: 0.520797 vertex_buffer: 0.442565 - vertex_buffer: 1.4513397 - vertex_buffer: -0.444582 - vertex_buffer: 5.8784103 + vertex_buffer: 1.550772 + vertex_buffer: -0.3691759 + vertex_buffer: 5.950485 vertex_buffer: 0.567985 vertex_buffer: 0.493479 - vertex_buffer: 1.1203933 - vertex_buffer: -7.7541027 - vertex_buffer: 5.1280556 + vertex_buffer: 1.095118 + vertex_buffer: -7.5707936 + vertex_buffer: 5.210415 vertex_buffer: 0.543283 vertex_buffer: 0.819255 - vertex_buffer: 3.7757673 - vertex_buffer: -4.9577837 - vertex_buffer: 3.566677 + vertex_buffer: 3.794327 + vertex_buffer: -4.82615 + vertex_buffer: 3.514473 vertex_buffer: 0.655317 vertex_buffer: 0.745515 - vertex_buffer: 2.9468074 - vertex_buffer: -1.58498 - vertex_buffer: 4.765045 + vertex_buffer: 3.0504277 + vertex_buffer: -1.4952192 + vertex_buffer: 4.773979 vertex_buffer: 0.621009 vertex_buffer: 0.574018 - vertex_buffer: 3.0801969 - vertex_buffer: -6.0835094 - vertex_buffer: 4.0283394 + vertex_buffer: 3.057418 + vertex_buffer: -5.947276 + vertex_buffer: 4.005722 vertex_buffer: 0.62556 vertex_buffer: 0.780312 - vertex_buffer: 4.4224896 - vertex_buffer: -1.4665394 - vertex_buffer: 4.466465 + vertex_buffer: 4.486065 + vertex_buffer: -1.4075994 + vertex_buffer: 4.473381 vertex_buffer: 0.680198 vertex_buffer: 0.570719 - vertex_buffer: 3.5888743 - vertex_buffer: -2.1662998 - vertex_buffer: 4.537586 + vertex_buffer: 3.681043 + vertex_buffer: -2.0834465 + vertex_buffer: 4.5225105 vertex_buffer: 0.642764 vertex_buffer: 0.604338 - vertex_buffer: 5.022297 - vertex_buffer: -2.3471308 - vertex_buffer: 3.8825302 + vertex_buffer: 5.097687 + vertex_buffer: -2.2945223 + vertex_buffer: 3.8722992 vertex_buffer: 0.704663 vertex_buffer: 0.62153 - vertex_buffer: 1.2537675 - vertex_buffer: -8.574284 - vertex_buffer: 5.1977158 + vertex_buffer: 1.252219 + vertex_buffer: -8.464216 + vertex_buffer: 5.3029175 vertex_buffer: 0.552012 vertex_buffer: 0.862592 - vertex_buffer: 1.9177177 - vertex_buffer: -0.5924988 - vertex_buffer: 5.4403877 + vertex_buffer: 2.0251772 + vertex_buffer: -0.5064831 + vertex_buffer: 5.4878273 vertex_buffer: 0.589072 vertex_buffer: 0.508637 - vertex_buffer: 4.1807027 - vertex_buffer: -5.626442 - vertex_buffer: 3.1657333 + vertex_buffer: 4.1840887 + vertex_buffer: -5.539768 + vertex_buffer: 3.1418533 vertex_buffer: 0.685945 vertex_buffer: 0.775357 - vertex_buffer: 3.3077898 - vertex_buffer: -6.7432594 - vertex_buffer: 3.7402344 + vertex_buffer: 3.2826998 + vertex_buffer: -6.6515617 + vertex_buffer: 3.744255 vertex_buffer: 0.645735 vertex_buffer: 0.81264 - vertex_buffer: 4.3587117 - vertex_buffer: -3.8801908 - vertex_buffer: 3.5149689 + vertex_buffer: 4.4024286 + vertex_buffer: -3.757928 + vertex_buffer: 3.4692993 vertex_buffer: 0.675343 vertex_buffer: 0.703978 - vertex_buffer: 6.6362424 - vertex_buffer: -2.4115467 - vertex_buffer: 1.8154602 + vertex_buffer: 6.665661 + vertex_buffer: -2.400899 + vertex_buffer: 1.7627411 vertex_buffer: 0.810858 vertex_buffer: 0.646305 - vertex_buffer: 5.0882487 - vertex_buffer: -4.1371374 - vertex_buffer: 3.03656 + vertex_buffer: 5.1122303 + vertex_buffer: -4.0592375 + vertex_buffer: 3.0016556 vertex_buffer: 0.720122 vertex_buffer: 0.714667 - vertex_buffer: 6.842526 - vertex_buffer: -2.884512 - vertex_buffer: 0.46212006 + vertex_buffer: 6.8046484 + vertex_buffer: -2.88447 + vertex_buffer: 0.38419342 vertex_buffer: 0.866152 vertex_buffer: 0.682705 - vertex_buffer: 4.197099 - vertex_buffer: -2.7548609 - vertex_buffer: 4.1411285 + vertex_buffer: 4.279747 + vertex_buffer: -2.6770468 + vertex_buffer: 4.1206436 vertex_buffer: 0.663187 vertex_buffer: 0.644597 - vertex_buffer: 1.3943658 - vertex_buffer: 0.25190163 - vertex_buffer: 5.307583 + vertex_buffer: 1.4752924 + vertex_buffer: 0.30995083 + vertex_buffer: 5.357197 vertex_buffer: 0.570082 vertex_buffer: 0.466326 - vertex_buffer: 1.4165089 - vertex_buffer: -2.0220451 - vertex_buffer: 7.0775795 + vertex_buffer: 1.5385034 + vertex_buffer: -1.9317589 + vertex_buffer: 7.193432 vertex_buffer: 0.544562 vertex_buffer: 0.548376 - vertex_buffer: 1.9184732 - vertex_buffer: -1.8711452 - vertex_buffer: 6.3833427 + vertex_buffer: 2.0542877 + vertex_buffer: -1.7753115 + vertex_buffer: 6.4696045 vertex_buffer: 0.562759 vertex_buffer: 0.558785 - vertex_buffer: 1.0660238 - vertex_buffer: -1.7642956 - vertex_buffer: 7.5344887 + vertex_buffer: 1.1566339 + vertex_buffer: -1.672225 + vertex_buffer: 7.6668816 vertex_buffer: 0.531987 vertex_buffer: 0.53014 - vertex_buffer: 1.8054094 - vertex_buffer: 3.257948 - vertex_buffer: 3.7310677 + vertex_buffer: 1.8169792 + vertex_buffer: 3.1684065 + vertex_buffer: 3.7911377 vertex_buffer: 0.585271 vertex_buffer: 0.335177 - vertex_buffer: 2.8506107 - vertex_buffer: 3.5157185 - vertex_buffer: 3.8552284 + vertex_buffer: 2.7892573 + vertex_buffer: 3.4098158 + vertex_buffer: 3.9273567 vertex_buffer: 0.622953 vertex_buffer: 0.322779 - vertex_buffer: 3.7822433 - vertex_buffer: 3.557045 - vertex_buffer: 3.846302 + vertex_buffer: 3.662349 + vertex_buffer: 3.4628935 + vertex_buffer: 3.9199104 vertex_buffer: 0.655896 vertex_buffer: 0.320163 - vertex_buffer: 4.55426 - vertex_buffer: 3.5012798 - vertex_buffer: 3.6076927 + vertex_buffer: 4.4252195 + vertex_buffer: 3.3996801 + vertex_buffer: 3.6800613 vertex_buffer: 0.687132 vertex_buffer: 0.322346 - vertex_buffer: 5.085729 - vertex_buffer: 3.3591957 - vertex_buffer: 3.2199326 + vertex_buffer: 4.9811687 + vertex_buffer: 3.2382116 + vertex_buffer: 3.295845 vertex_buffer: 0.716482 vertex_buffer: 0.333201 - vertex_buffer: 5.446197 - vertex_buffer: 2.7545853 - vertex_buffer: 2.313713 + vertex_buffer: 5.414282 + vertex_buffer: 2.6140146 + vertex_buffer: 2.3462906 vertex_buffer: 0.758757 vertex_buffer: 0.382787 - vertex_buffer: 7.550202 - vertex_buffer: 1.7485847 - vertex_buffer: -0.35203552 + vertex_buffer: 7.4800854 + vertex_buffer: 1.6561041 + vertex_buffer: -0.4093094 vertex_buffer: 0.897013 vertex_buffer: 0.468769 - vertex_buffer: 4.963579 - vertex_buffer: 1.9143791 - vertex_buffer: 2.916401 + vertex_buffer: 4.8573055 + vertex_buffer: 1.8408098 + vertex_buffer: 2.9261627 vertex_buffer: 0.732392 vertex_buffer: 0.424547 - vertex_buffer: 4.3016167 - vertex_buffer: 1.6754131 - vertex_buffer: 3.329319 + vertex_buffer: 4.170967 + vertex_buffer: 1.6048727 + vertex_buffer: 3.3371506 vertex_buffer: 0.702114 vertex_buffer: 0.433163 - vertex_buffer: 3.4342122 - vertex_buffer: 1.6129818 - vertex_buffer: 3.599598 + vertex_buffer: 3.3175147 + vertex_buffer: 1.5370302 + vertex_buffer: 3.6134338 vertex_buffer: 0.666525 vertex_buffer: 0.433866 - vertex_buffer: 2.6241937 - vertex_buffer: 1.7090282 - vertex_buffer: 3.6612968 + vertex_buffer: 2.539656 + vertex_buffer: 1.6284933 + vertex_buffer: 3.6613617 vertex_buffer: 0.633505 vertex_buffer: 0.426088 - vertex_buffer: 1.9926751 - vertex_buffer: 1.8377647 - vertex_buffer: 3.716549 + vertex_buffer: 1.9532483 + vertex_buffer: 1.7639608 + vertex_buffer: 3.7322922 vertex_buffer: 0.603876 vertex_buffer: 0.416587 - vertex_buffer: 1.5628262 - vertex_buffer: 1.9998207 - vertex_buffer: 3.7271843 + vertex_buffer: 1.565594 + vertex_buffer: 1.9277525 + vertex_buffer: 3.7485275 vertex_buffer: 0.579658 vertex_buffer: 0.409945 - vertex_buffer: 7.8194213 - vertex_buffer: 2.25379 - vertex_buffer: -2.7251205 + vertex_buffer: 7.6662197 + vertex_buffer: 2.0709295 + vertex_buffer: -2.7687912 vertex_buffer: 0.99244 vertex_buffer: 0.480777 - vertex_buffer: 1.9533112 - vertex_buffer: -1.8923721 - vertex_buffer: 6.0685997 + vertex_buffer: 2.093136 + vertex_buffer: -1.7953253 + vertex_buffer: 6.145607 vertex_buffer: 0.567192 vertex_buffer: 0.56942 - vertex_buffer: 0.9480729 - vertex_buffer: -0.23205566 - vertex_buffer: 6.3663063 + vertex_buffer: 1.0224998 + vertex_buffer: -0.17398453 + vertex_buffer: 6.4559364 vertex_buffer: 0.541366 vertex_buffer: 0.478899 - vertex_buffer: 0.9139075 - vertex_buffer: -2.2588863 - vertex_buffer: 7.606819 + vertex_buffer: 1.0265834 + vertex_buffer: -2.1845083 + vertex_buffer: 7.7400513 vertex_buffer: 0.526564 vertex_buffer: 0.546118 - vertex_buffer: 0.5974233 - vertex_buffer: -2.510827 - vertex_buffer: 7.3850365 + vertex_buffer: 0.6986339 + vertex_buffer: -2.442504 + vertex_buffer: 7.5056534 vertex_buffer: 0.523913 vertex_buffer: 0.56383 - vertex_buffer: 0.9423697 - vertex_buffer: -2.27847 - vertex_buffer: 7.2961197 + vertex_buffer: 1.0676148 + vertex_buffer: -2.219287 + vertex_buffer: 7.423313 vertex_buffer: 0.531529 vertex_buffer: 0.555057 - vertex_buffer: 1.8264418 - vertex_buffer: -1.9903765 - vertex_buffer: 5.862221 + vertex_buffer: 1.952636 + vertex_buffer: -1.9012718 + vertex_buffer: 5.9277077 vertex_buffer: 0.566036 vertex_buffer: 0.582329 - vertex_buffer: 0.46178865 - vertex_buffer: -2.623661 - vertex_buffer: 7.5694656 + vertex_buffer: 0.5672412 + vertex_buffer: -2.556199 + vertex_buffer: 7.702202 vertex_buffer: 0.516311 vertex_buffer: 0.563054 - vertex_buffer: 0.42428088 - vertex_buffer: -2.5358152 - vertex_buffer: 6.8074875 + vertex_buffer: 0.5279174 + vertex_buffer: -2.4704924 + vertex_buffer: 6.9048386 vertex_buffer: 0.517472 vertex_buffer: 0.577877 - vertex_buffer: 1.568306 - vertex_buffer: 2.541376 - vertex_buffer: 3.3240814 + vertex_buffer: 1.6114137 + vertex_buffer: 2.4628687 + vertex_buffer: 3.3578186 vertex_buffer: 0.573595 vertex_buffer: 0.389807 - vertex_buffer: 1.228097 - vertex_buffer: 2.277542 - vertex_buffer: 3.7770844 + vertex_buffer: 1.2700028 + vertex_buffer: 2.2112322 + vertex_buffer: 3.8113632 vertex_buffer: 0.560698 vertex_buffer: 0.395332 - vertex_buffer: 1.0377004 - vertex_buffer: 2.0087395 - vertex_buffer: 4.333065 + vertex_buffer: 1.0567853 + vertex_buffer: 1.9469519 + vertex_buffer: 4.3869514 vertex_buffer: 0.549756 vertex_buffer: 0.399751 - vertex_buffer: 4.516618 - vertex_buffer: 2.8700428 - vertex_buffer: 2.9251366 + vertex_buffer: 4.443947 + vertex_buffer: 2.804141 + vertex_buffer: 2.9593582 vertex_buffer: 0.710288 vertex_buffer: 0.368253 - vertex_buffer: 4.9874473 - vertex_buffer: 3.0667686 - vertex_buffer: 2.8806343 + vertex_buffer: 4.922477 + vertex_buffer: 2.9592218 + vertex_buffer: 2.9125366 vertex_buffer: 0.72333 vertex_buffer: 0.363373 index_buffer: 173 @@ -5042,19 +5042,19 @@ pose_transform_matrix { rows: 4 cols: 4 packed_data: 0.9995292 - packed_data: 0.0072318087 - packed_data: -0.029815676 + packed_data: 0.01715696 + packed_data: -0.03715533 packed_data: 0 - packed_data: -0.005092691 - packed_data: 0.99744856 - packed_data: 0.07120642 + packed_data: -0.01294756 + packed_data: 0.9937692 + packed_data: 0.11070588 packed_data: 0 - packed_data: 0.030254554 - packed_data: -0.07102106 - packed_data: 0.9970159 + packed_data: 0.038823195 + packed_data: -0.1101321 + packed_data: 0.99315894 packed_data: 0 - packed_data: -0.37340546 - packed_data: 22.212194 - packed_data: -64.76358 + packed_data: -0.3691378 + packed_data: 22.75809 + packed_data: -65.765925 packed_data: 1 } diff --git a/mediapipe/tasks/testdata/vision/portrait_expected_face_landmarks.pbtxt b/mediapipe/tasks/testdata/vision/portrait_expected_face_landmarks.pbtxt index f8eca5b6d..2c8967bd4 100644 --- a/mediapipe/tasks/testdata/vision/portrait_expected_face_landmarks.pbtxt +++ b/mediapipe/tasks/testdata/vision/portrait_expected_face_landmarks.pbtxt @@ -1,1874 +1,1914 @@ # proto-file: mediapipe/framework/formats/landmark.proto # proto-message: NormalizedLandmarkList landmark { - x: 0.4980545938014984 - y: 0.24903230369091034 + x: 0.49662378430366516 + y: 0.25066471099853516 } landmark { - x: 0.49932512640953064 - y: 0.2245415896177292 + x: 0.49648889899253845 + y: 0.22542163729667664 } landmark { - x: 0.49835407733917236 - y: 0.23289766907691956 + x: 0.4958636164665222 + y: 0.23273630440235138 } landmark { - x: 0.48964300751686096 - y: 0.19509243965148926 + x: 0.487348347902298 + y: 0.19578002393245697 } landmark { - x: 0.4992780089378357 - y: 0.21520577371120453 + x: 0.49650701880455017 + y: 0.2160423994064331 } landmark { - x: 0.49882733821868896 - y: 0.20322635769844055 + x: 0.4963602125644684 + y: 0.20415978133678436 } landmark { - x: 0.4974270761013031 - y: 0.17528100311756134 + x: 0.4958672821521759 + y: 0.1760016828775406 } landmark { - x: 0.4252423644065857 - y: 0.1752239167690277 + x: 0.4263756573200226 + y: 0.1743389070034027 } landmark { - x: 0.4969234764575958 - y: 0.16028350591659546 + x: 0.4957432150840759 + y: 0.15887980163097382 } landmark { - x: 0.4968925714492798 - y: 0.1495988965034485 + x: 0.49582991003990173 + y: 0.14792537689208984 } landmark { - x: 0.4961165189743042 - y: 0.10130326449871063 + x: 0.49545449018478394 + y: 0.10050265491008759 } landmark { - x: 0.4980241656303406 - y: 0.2529524564743042 + x: 0.4967471957206726 + y: 0.25292080640792847 } landmark { - x: 0.4979502260684967 - y: 0.25524431467056274 + x: 0.49677377939224243 + y: 0.25491753220558167 } landmark { - x: 0.49776896834373474 - y: 0.2552323341369629 + x: 0.4968340992927551 + y: 0.25597265362739563 } landmark { - x: 0.4978826642036438 - y: 0.27776089310646057 + x: 0.4966096580028534 + y: 0.2762660086154938 } landmark { - x: 0.49799230694770813 - y: 0.2809632420539856 + x: 0.4970662295818329 + y: 0.2792523503303528 } landmark { - x: 0.4979100227355957 - y: 0.2848512530326843 + x: 0.49733766913414 + y: 0.2831544280052185 } landmark { - x: 0.49800440669059753 - y: 0.28988373279571533 + x: 0.4975529909133911 + y: 0.28777939081192017 } landmark { - x: 0.4979381561279297 - y: 0.29874739050865173 + x: 0.49513718485832214 + y: 0.30162155628204346 } landmark { - x: 0.4990279972553253 - y: 0.22949126362800598 + x: 0.4963628351688385 + y: 0.23023517429828644 } landmark { - x: 0.48731645941734314 - y: 0.228602334856987 + x: 0.48452815413475037 + y: 0.22930648922920227 } landmark { - x: 0.38321125507354736 - y: 0.14629608392715454 + x: 0.37912482023239136 + y: 0.14393068850040436 } landmark { - x: 0.45509326457977295 - y: 0.1804829090833664 + x: 0.45384323596954346 + y: 0.17952775955200195 } landmark { - x: 0.445110023021698 - y: 0.18121978640556335 + x: 0.44406363368034363 + y: 0.18024367094039917 } landmark { - x: 0.4348788261413574 - y: 0.1813269555568695 + x: 0.43423992395401 + y: 0.18035075068473816 } landmark { - x: 0.4198905825614929 - y: 0.17857316136360168 + x: 0.42096418142318726 + y: 0.1774648129940033 } landmark { - x: 0.4631618857383728 - y: 0.17870596051216125 + x: 0.4620691239833832 + y: 0.17808954417705536 } landmark { - x: 0.44001317024230957 - y: 0.16361379623413086 + x: 0.4381572902202606 + y: 0.16171878576278687 } landmark { - x: 0.4507884979248047 - y: 0.16328848898410797 + x: 0.44929927587509155 + y: 0.16189174354076385 } landmark { - x: 0.4298645257949829 - y: 0.16532668471336365 + x: 0.42799487709999084 + y: 0.16344769299030304 } landmark { - x: 0.42292359471321106 - y: 0.16806119680404663 + x: 0.4213537871837616 + y: 0.16641879081726074 } landmark { - x: 0.4108901619911194 - y: 0.1839759796857834 + x: 0.4108949899673462 + y: 0.18241165578365326 } landmark { - x: 0.4559507369995117 - y: 0.3100507855415344 + x: 0.45295459032058716 + y: 0.3115408420562744 } landmark { - x: 0.42083221673965454 - y: 0.1743769347667694 + x: 0.42228829860687256 + y: 0.1732511818408966 } landmark { - x: 0.3772680461406708 - y: 0.18411599099636078 + x: 0.37566322088241577 + y: 0.1816394031047821 } landmark { - x: 0.39838600158691406 - y: 0.18110841512680054 + x: 0.39784568548202515 + y: 0.17866098880767822 } landmark { - x: 0.4412991404533386 - y: 0.21456821262836456 + x: 0.43882179260253906 + y: 0.21443405747413635 } landmark { - x: 0.4794607162475586 - y: 0.24747860431671143 + x: 0.4774819612503052 + y: 0.24866220355033875 } landmark { - x: 0.48048245906829834 - y: 0.2548246681690216 + x: 0.47887977957725525 + y: 0.25409185886383057 } landmark { - x: 0.46039167046546936 - y: 0.2487250715494156 + x: 0.45999351143836975 + y: 0.2500782310962677 } landmark { - x: 0.4483419954776764 - y: 0.25085747241973877 + x: 0.4481550455093384 + y: 0.252032995223999 } landmark { - x: 0.4663160741329193 - y: 0.2544938921928406 + x: 0.46404537558555603 + y: 0.25381025671958923 } landmark { - x: 0.455595999956131 - y: 0.2548428177833557 + x: 0.4528164863586426 + y: 0.2544485628604889 } landmark { - x: 0.4378071427345276 - y: 0.2695227563381195 + x: 0.43636560440063477 + y: 0.27052366733551025 } landmark { - x: 0.4899967610836029 - y: 0.22446328401565552 + x: 0.4871026575565338 + y: 0.225237175822258 } landmark { - x: 0.4890080690383911 - y: 0.2152511477470398 + x: 0.48611801862716675 + y: 0.21604084968566895 } landmark { - x: 0.40738368034362793 - y: 0.16371771693229675 + x: 0.4063660502433777 + y: 0.1625554859638214 } landmark { - x: 0.46559059619903564 - y: 0.19408845901489258 + x: 0.4635976254940033 + y: 0.1942015290260315 } landmark { - x: 0.46049150824546814 - y: 0.21944357454776764 + x: 0.4581945836544037 + y: 0.21956732869148254 } landmark { - x: 0.4600639343261719 - y: 0.2145257592201233 + x: 0.4577708840370178 + y: 0.21461132168769836 } landmark { - x: 0.4089595675468445 - y: 0.2129758894443512 + x: 0.4065546691417694 + y: 0.21230843663215637 } landmark { - x: 0.4894029200077057 - y: 0.2041754424571991 + x: 0.48670515418052673 + y: 0.2050575613975525 } landmark { - x: 0.43470585346221924 - y: 0.1551753580570221 + x: 0.4322924315929413 + y: 0.15380477905273438 } landmark { - x: 0.4189683794975281 - y: 0.15813124179840088 + x: 0.4173465371131897 + y: 0.15705204010009766 } landmark { - x: 0.394975483417511 - y: 0.1302863210439682 + x: 0.3902948796749115 + y: 0.1280173361301422 } landmark { - x: 0.47864243388175964 - y: 0.1597566157579422 + x: 0.4765879511833191 + y: 0.15888181328773499 } landmark { - x: 0.4602668881416321 - y: 0.16489382088184357 + x: 0.45905187726020813 + y: 0.16421911120414734 } landmark { - x: 0.4282156825065613 - y: 0.257098525762558 + x: 0.4274546504020691 + y: 0.2575083076953888 } landmark { - x: 0.38497745990753174 - y: 0.27065035700798035 + x: 0.38783153891563416 + y: 0.2666078507900238 } landmark { - x: 0.46812984347343445 - y: 0.22463132441043854 + x: 0.46594077348709106 + y: 0.22510138154029846 } landmark { - x: 0.4778384268283844 - y: 0.22797265648841858 + x: 0.4754405915737152 + y: 0.2280336320400238 } landmark { - x: 0.43393614888191223 - y: 0.2568528354167938 + x: 0.4334415793418884 + y: 0.2578507959842682 } landmark { - x: 0.4395427405834198 - y: 0.2576085329055786 + x: 0.436551034450531 + y: 0.25822576880455017 } landmark { - x: 0.4129953682422638 - y: 0.1529330313205719 + x: 0.4111592769622803 + y: 0.1524781882762909 } landmark { - x: 0.4586719870567322 - y: 0.2223067581653595 + x: 0.45654183626174927 + y: 0.22234851121902466 } landmark { - x: 0.4548490345478058 - y: 0.1551821231842041 + x: 0.4520558714866638 + y: 0.15389353036880493 } landmark { - x: 0.4527568817138672 - y: 0.14797326922416687 + x: 0.44988009333610535 + y: 0.14750143885612488 } landmark { - x: 0.43789538741111755 - y: 0.10732019692659378 + x: 0.43465882539749146 + y: 0.10574661940336227 } landmark { - x: 0.40471237897872925 - y: 0.14079004526138306 + x: 0.3998187184333801 + y: 0.13816964626312256 } landmark { - x: 0.44655588269233704 - y: 0.12573182582855225 + x: 0.44287118315696716 + y: 0.12405438721179962 } landmark { - x: 0.4005853235721588 - y: 0.16001185774803162 + x: 0.3991505205631256 + y: 0.15909640491008759 } landmark { - x: 0.3920975625514984 - y: 0.15330302715301514 + x: 0.38786911964416504 + y: 0.15060681104660034 } landmark { - x: 0.479657381772995 - y: 0.25213903188705444 + x: 0.4778904318809509 + y: 0.25174596905708313 } landmark { - x: 0.46366050839424133 - y: 0.25241443514823914 + x: 0.46195170283317566 + y: 0.2520931363105774 } landmark { - x: 0.4519921839237213 - y: 0.2528719902038574 + x: 0.45044994354248047 + y: 0.2533124089241028 } landmark { - x: 0.4703972041606903 - y: 0.22607524693012238 + x: 0.4682377278804779 + y: 0.22637511789798737 } landmark { - x: 0.4363592267036438 - y: 0.25706034898757935 + x: 0.4350201189517975 + y: 0.2580338418483734 } landmark { - x: 0.4440081715583801 - y: 0.26552918553352356 + x: 0.4423924684524536 + y: 0.2662544250488281 } landmark { - x: 0.4417681097984314 - y: 0.2580646276473999 + x: 0.43794137239456177 + y: 0.2584308385848999 } landmark { - x: 0.4761415719985962 - y: 0.22374515235424042 + x: 0.4733739197254181 + y: 0.22433938086032867 } landmark { - x: 0.45743221044540405 - y: 0.25383251905441284 + x: 0.4550367593765259 + y: 0.2551838159561157 } landmark { - x: 0.4683329463005066 - y: 0.25396355986595154 + x: 0.46616387367248535 + y: 0.25481677055358887 } landmark { - x: 0.4815440773963928 - y: 0.25474318861961365 + x: 0.48008614778518677 + y: 0.2553037405014038 } landmark { - x: 0.47932085394859314 - y: 0.2976193428039551 + x: 0.4764786660671234 + y: 0.3000088930130005 } landmark { - x: 0.47975021600723267 - y: 0.28835925459861755 + x: 0.47889888286590576 + y: 0.2867310047149658 } landmark { - x: 0.48039740324020386 - y: 0.28342658281326294 + x: 0.4792180061340332 + y: 0.28215786814689636 } landmark { - x: 0.4811536967754364 - y: 0.2794558107852936 + x: 0.4797844886779785 + y: 0.27831950783729553 } landmark { - x: 0.48218032717704773 - y: 0.27668148279190063 + x: 0.48065802454948425 + y: 0.27555787563323975 } landmark { - x: 0.4579659700393677 - y: 0.26989150047302246 + x: 0.4559228718280792 + y: 0.26986679434776306 } landmark { - x: 0.45591992139816284 - y: 0.2706441879272461 + x: 0.45390307903289795 + y: 0.2708792984485626 } landmark { - x: 0.4531732201576233 - y: 0.27245426177978516 + x: 0.4513547420501709 + y: 0.2728833556175232 } landmark { - x: 0.45113396644592285 - y: 0.2749839127063751 + x: 0.4496460258960724 + y: 0.27533650398254395 } landmark { - x: 0.4426419138908386 - y: 0.24372598528862 + x: 0.4409347474575043 + y: 0.2433733493089676 } landmark { - x: 0.37437647581100464 - y: 0.22582200169563293 + x: 0.37470322847366333 + y: 0.2220018357038498 } landmark { - x: 0.49874579906463623 - y: 0.23130004107952118 + x: 0.49612095952033997 + y: 0.23190505802631378 } landmark { - x: 0.45071229338645935 - y: 0.26583003997802734 + x: 0.44766467809677124 + y: 0.2656818926334381 } landmark { - x: 0.4470844864845276 - y: 0.26525816321372986 + x: 0.4449608325958252 + y: 0.2656901478767395 } landmark { - x: 0.4817662835121155 - y: 0.23206906020641327 + x: 0.47903069853782654 + y: 0.23131167888641357 } landmark { - x: 0.4612492620944977 - y: 0.22707121074199677 + x: 0.45948758721351624 + y: 0.22670653462409973 } landmark { - x: 0.4798736870288849 - y: 0.23013688623905182 + x: 0.4773414433002472 + y: 0.22975307703018188 } landmark { - x: 0.4540415406227112 - y: 0.1982722133398056 + x: 0.4515821933746338 + y: 0.19823692739009857 } landmark { - x: 0.43609002232551575 - y: 0.2030995935201645 + x: 0.43330681324005127 + y: 0.20288488268852234 } landmark { - x: 0.45713263750076294 - y: 0.21781134605407715 + x: 0.4548875689506531 + y: 0.21785812079906464 } landmark { - x: 0.41249439120292664 - y: 0.11695081740617752 + x: 0.4081736207008362 + y: 0.11487754434347153 } landmark { - x: 0.42242154479026794 - y: 0.1313907653093338 + x: 0.41755422949790955 + y: 0.12904098629951477 } landmark { - x: 0.4310758113861084 - y: 0.14831000566482544 + x: 0.4283616244792938 + y: 0.14776825904846191 } landmark { - x: 0.44858187437057495 - y: 0.2805789113044739 + x: 0.4462631046772003 + y: 0.28206732869148254 } landmark { - x: 0.4752667546272278 - y: 0.14848341047763824 + x: 0.4730672240257263 + y: 0.14861562848091125 } landmark { - x: 0.47004297375679016 - y: 0.12331744283437729 + x: 0.4676840007305145 + y: 0.12226873636245728 } landmark { - x: 0.4646402597427368 - y: 0.1024433895945549 + x: 0.4625813066959381 + y: 0.10131789743900299 } landmark { - x: 0.4255844056606293 - y: 0.1805812418460846 + x: 0.42591845989227295 + y: 0.17952558398246765 } landmark { - x: 0.39879530668258667 - y: 0.1897958517074585 + x: 0.39877602458000183 + y: 0.18789303302764893 } landmark { - x: 0.46812960505485535 - y: 0.17677296698093414 + x: 0.467370867729187 + y: 0.17659270763397217 } landmark { - x: 0.4110848903656006 - y: 0.17171640694141388 + x: 0.41039395332336426 + y: 0.170170396566391 } landmark { - x: 0.47348183393478394 - y: 0.18901485204696655 + x: 0.4717400372028351 + y: 0.18922601640224457 } landmark { - x: 0.46935269236564636 - y: 0.21757104992866516 + x: 0.4667041003704071 + y: 0.21796613931655884 } landmark { - x: 0.38642019033432007 - y: 0.19684071838855743 + x: 0.3843420147895813 + y: 0.195051908493042 } landmark { - x: 0.4065028429031372 - y: 0.1935700625181198 + x: 0.40679413080215454 + y: 0.19237273931503296 } landmark { - x: 0.42013058066368103 - y: 0.19527363777160645 + x: 0.42057645320892334 + y: 0.19457939267158508 } landmark { - x: 0.4402572810649872 - y: 0.19438785314559937 + x: 0.4405983090400696 + y: 0.19333598017692566 } landmark { - x: 0.4552159011363983 - y: 0.19161175191402435 + x: 0.45518380403518677 + y: 0.19030749797821045 } landmark { - x: 0.466064989566803 - y: 0.18805746734142303 + x: 0.46578195691108704 + y: 0.18687105178833008 } landmark { - x: 0.4877389967441559 - y: 0.17775586247444153 + x: 0.4859747886657715 + y: 0.178244948387146 } landmark { - x: 0.3850080370903015 - y: 0.21342645585536957 + x: 0.38405489921569824 + y: 0.2115805447101593 } landmark { - x: 0.402156800031662 - y: 0.17169930040836334 + x: 0.40115848183631897 + y: 0.16971616446971893 } landmark { - x: 0.49324363470077515 - y: 0.22913014888763428 + x: 0.4904470443725586 + y: 0.22989952564239502 } landmark { - x: 0.4649255573749542 - y: 0.20216087996959686 + x: 0.4628409743309021 + y: 0.20227496325969696 } landmark { - x: 0.37319791316986084 - y: 0.1850086748600006 + x: 0.3713923692703247 + y: 0.18183395266532898 } landmark { - x: 0.47394266724586487 - y: 0.1837497055530548 + x: 0.4737045168876648 + y: 0.18296673893928528 } landmark { - x: 0.4555046260356903 - y: 0.21799549460411072 + x: 0.45343708992004395 + y: 0.217837393283844 } landmark { - x: 0.4165469706058502 - y: 0.17533442378044128 + x: 0.41712236404418945 + y: 0.17397862672805786 } landmark { - x: 0.46884915232658386 - y: 0.2114345282316208 + x: 0.46640586853027344 + y: 0.21179847419261932 } landmark { - x: 0.3772091567516327 - y: 0.24764499068260193 + x: 0.3793344795703888 + y: 0.24359717965126038 } landmark { - x: 0.4673137962818146 - y: 0.17410144209861755 + x: 0.4667336344718933 + y: 0.17424505949020386 } landmark { - x: 0.47945156693458557 - y: 0.2071564644575119 + x: 0.4768681228160858 + y: 0.20779715478420258 } landmark { - x: 0.40883955359458923 - y: 0.2874322533607483 + x: 0.409467488527298 + y: 0.28563350439071655 } landmark { - x: 0.4108079671859741 - y: 0.30158883333206177 + x: 0.41173893213272095 + y: 0.2989254593849182 } landmark { - x: 0.37442252039909363 - y: 0.2208070307970047 + x: 0.37547457218170166 + y: 0.2178495228290558 } landmark { - x: 0.39394834637641907 - y: 0.2761845290660858 + x: 0.3962154686450958 + y: 0.2734628915786743 } landmark { - x: 0.3842906951904297 - y: 0.16709479689598083 + x: 0.3811984956264496 + y: 0.16468137502670288 } landmark { - x: 0.4550851285457611 - y: 0.32118359208106995 + x: 0.4519205391407013 + y: 0.32255393266677856 } landmark { - x: 0.49397364258766174 - y: 0.23093459010124207 + x: 0.49128058552742004 + y: 0.2315189242362976 } landmark { - x: 0.45444783568382263 - y: 0.2077380120754242 + x: 0.45209217071533203 + y: 0.20766283571720123 } landmark { - x: 0.38875845074653625 - y: 0.18339571356773376 + x: 0.3879472613334656 + y: 0.18026039004325867 } landmark { - x: 0.43656331300735474 - y: 0.17613092064857483 + x: 0.43616294860839844 + y: 0.17546914517879486 } landmark { - x: 0.4456058740615845 - y: 0.1762271374464035 + x: 0.44427722692489624 + y: 0.1755416989326477 } landmark { - x: 0.44135409593582153 - y: 0.26622864603996277 + x: 0.44037607312202454 + y: 0.2670835852622986 } landmark { - x: 0.3838962912559509 - y: 0.23220419883728027 + x: 0.3844276964664459 + y: 0.23011347651481628 } landmark { - x: 0.4754045009613037 - y: 0.335421085357666 + x: 0.47184261679649353 + y: 0.3377809524536133 } landmark { - x: 0.44223690032958984 - y: 0.3225649893283844 + x: 0.43982183933258057 + y: 0.3224796652793884 } landmark { - x: 0.42790481448173523 - y: 0.3136621117591858 + x: 0.42685991525650024 + y: 0.31230732798576355 } landmark { - x: 0.4964919984340668 - y: 0.12334776669740677 + x: 0.4956350028514862 + y: 0.12251447141170502 } landmark { - x: 0.49819302558898926 - y: 0.33688169717788696 + x: 0.4949685037136078 + y: 0.33993446826934814 } landmark { - x: 0.4536263346672058 - y: 0.17571088671684265 + x: 0.45213454961776733 + y: 0.17507293820381165 } landmark { - x: 0.46115797758102417 - y: 0.1747676432132721 + x: 0.4596617817878723 + y: 0.17446552217006683 } landmark { - x: 0.4655093550682068 - y: 0.1744125783443451 + x: 0.4645062983036041 + y: 0.1744132936000824 } landmark { - x: 0.393926203250885 - y: 0.17026498913764954 + x: 0.39248085021972656 + y: 0.16815300285816193 } landmark { - x: 0.458525151014328 - y: 0.16972589492797852 + x: 0.45720967650413513 + y: 0.1696319878101349 } landmark { - x: 0.44999489188194275 - y: 0.16840852797031403 + x: 0.44864439964294434 + y: 0.1680142879486084 } landmark { - x: 0.44186726212501526 - y: 0.1684008091688156 + x: 0.44060665369033813 + y: 0.1679076999425888 } landmark { - x: 0.4332900941371918 - y: 0.16989856958389282 + x: 0.4326114356517792 + y: 0.1691804826259613 } landmark { - x: 0.42744091153144836 - y: 0.17192566394805908 + x: 0.42759329080581665 + y: 0.1709102988243103 } landmark { - x: 0.37643229961395264 - y: 0.16329239308834076 + x: 0.37336626648902893 + y: 0.16072668135166168 } landmark { - x: 0.4300766587257385 - y: 0.17572201788425446 + x: 0.4305437207221985 + y: 0.17496828734874725 } landmark { - x: 0.49822694063186646 - y: 0.2383425235748291 + x: 0.49581199884414673 + y: 0.2378993183374405 } landmark { - x: 0.45442208647727966 - y: 0.23917418718338013 + x: 0.4533678889274597 + y: 0.23889966309070587 } landmark { - x: 0.46854329109191895 - y: 0.22389239072799683 + x: 0.46646663546562195 + y: 0.2243112325668335 } landmark { - x: 0.47962474822998047 - y: 0.23819245398044586 + x: 0.47728025913238525 + y: 0.23756998777389526 } landmark { - x: 0.49700650572776794 - y: 0.16724109649658203 + x: 0.49568256735801697 + y: 0.1670406311750412 } landmark { - x: 0.42490097880363464 - y: 0.30003395676612854 + x: 0.423678994178772 + y: 0.29920822381973267 } landmark { - x: 0.4395797848701477 - y: 0.3106118142604828 + x: 0.4373316168785095 + y: 0.31077975034713745 } landmark { - x: 0.4749631881713867 - y: 0.3278457820415497 + x: 0.4715747535228729 + y: 0.33032771944999695 } landmark { - x: 0.39698177576065063 - y: 0.2887762784957886 + x: 0.39951860904693604 + y: 0.2851996123790741 } landmark { - x: 0.46450716257095337 - y: 0.17226554453372955 + x: 0.46363309025764465 + y: 0.17234012484550476 } landmark { - x: 0.48090100288391113 - y: 0.19143134355545044 + x: 0.4789753258228302 + y: 0.19182273745536804 } landmark { - x: 0.4984689950942993 - y: 0.3292686939239502 + x: 0.4952210485935211 + y: 0.3327086865901947 } landmark { - x: 0.45732998847961426 - y: 0.33026236295700073 + x: 0.454120934009552 + y: 0.33151447772979736 } landmark { - x: 0.37620770931243896 - y: 0.24124185740947723 + x: 0.37874123454093933 + y: 0.23793040215969086 } landmark { - x: 0.46904605627059937 - y: 0.2738858163356781 + x: 0.4671173393726349 + y: 0.2732347548007965 } landmark { - x: 0.46702563762664795 - y: 0.2757854759693146 + x: 0.46523454785346985 + y: 0.2752726972103119 } landmark { - x: 0.4652661085128784 - y: 0.27886587381362915 + x: 0.4636782705783844 + y: 0.2785157561302185 } landmark { - x: 0.463967889547348 - y: 0.2832222580909729 + x: 0.4628322422504425 + y: 0.2826366424560547 } landmark { - x: 0.46147748827934265 - y: 0.290606290102005 + x: 0.45889154076576233 + y: 0.29270175099372864 } landmark { - x: 0.4453439712524414 - y: 0.2553885579109192 + x: 0.44332754611968994 + y: 0.2559441328048706 } landmark { - x: 0.44186925888061523 - y: 0.25434958934783936 + x: 0.4410799741744995 + y: 0.2552872896194458 } landmark { - x: 0.4388599991798401 - y: 0.25289586186408997 + x: 0.4392359256744385 + y: 0.2545016407966614 } landmark { - x: 0.43243885040283203 - y: 0.24915771186351776 + x: 0.4313274025917053 + y: 0.24908222258090973 } landmark { - x: 0.39733195304870605 - y: 0.23440396785736084 + x: 0.3969060182571411 + y: 0.23314312100410461 } landmark { - x: 0.4810236096382141 - y: 0.18301787972450256 + x: 0.47924545407295227 + y: 0.18325799703598022 } landmark { - x: 0.475889652967453 - y: 0.16885876655578613 + x: 0.47463276982307434 + y: 0.1687009632587433 } landmark { - x: 0.46913397312164307 - y: 0.16969595849514008 + x: 0.4678848683834076 + y: 0.16957470774650574 } landmark { - x: 0.4482960104942322 - y: 0.2544528543949127 + x: 0.4455469250679016 + y: 0.2563154995441437 } landmark { - x: 0.3960878551006317 - y: 0.25897282361984253 + x: 0.39680883288383484 + y: 0.25723445415496826 } landmark { - x: 0.48444268107414246 - y: 0.16877110302448273 + x: 0.4837980568408966 + y: 0.1687287539243698 } landmark { - x: 0.45883187651634216 - y: 0.2991879880428314 + x: 0.4560215473175049 + y: 0.3008677363395691 } landmark { - x: 0.49830764532089233 - y: 0.19364532828330994 + x: 0.4962090253829956 + y: 0.19450967013835907 } landmark { - x: 0.48863235116004944 - y: 0.18682867288589478 + x: 0.48670148849487305 + y: 0.18738791346549988 } landmark { - x: 0.4978567063808441 - y: 0.18477898836135864 + x: 0.4960493743419647 + y: 0.18556331098079681 } landmark { - x: 0.4722864031791687 - y: 0.20431742072105408 + x: 0.47000551223754883 + y: 0.20461101830005646 } landmark { - x: 0.4984210133552551 - y: 0.3189559280872345 + x: 0.49529385566711426 + y: 0.32238951325416565 } landmark { - x: 0.4981224536895752 - y: 0.3075484037399292 + x: 0.49524635076522827 + y: 0.31086331605911255 } landmark { - x: 0.47765108942985535 - y: 0.3065096139907837 + x: 0.47470414638519287 + y: 0.30902671813964844 } landmark { - x: 0.43310534954071045 - y: 0.27504512667655945 + x: 0.43139365315437317 + y: 0.275373637676239 } landmark { - x: 0.4470079839229584 - y: 0.22515136003494263 + x: 0.44470104575157166 + y: 0.22494974732398987 } landmark { - x: 0.44496527314186096 - y: 0.28839245438575745 + x: 0.44245320558547974 + y: 0.2893069386482239 } landmark { - x: 0.4224763810634613 - y: 0.22504357993602753 + x: 0.4205935597419739 + y: 0.22470718622207642 } landmark { - x: 0.43616050481796265 - y: 0.2342083901166916 + x: 0.43413853645324707 + y: 0.2340032011270523 } landmark { - x: 0.4120646119117737 - y: 0.23961234092712402 + x: 0.41114354133605957 + y: 0.23891311883926392 } landmark { - x: 0.475606232881546 - y: 0.3177781403064728 + x: 0.4724236726760864 + y: 0.32018566131591797 } landmark { - x: 0.4643869698047638 - y: 0.208414688706398 + x: 0.4620009660720825 + y: 0.2084873765707016 } landmark { - x: 0.4268232583999634 - y: 0.285778284072876 + x: 0.42516615986824036 + y: 0.28558987379074097 } landmark { - x: 0.44140246510505676 - y: 0.2983972728252411 + x: 0.43897202610969543 + y: 0.29905030131340027 } landmark { - x: 0.4230496883392334 - y: 0.26123762130737305 + x: 0.4220097064971924 + y: 0.26096412539482117 } landmark { - x: 0.3859580159187317 - y: 0.2489413619041443 + x: 0.3872614800930023 + y: 0.24655131995677948 } landmark { - x: 0.41095247864723206 - y: 0.2668672502040863 + x: 0.410627543926239 + y: 0.2659621238708496 } landmark { - x: 0.3822171688079834 - y: 0.26013708114624023 + x: 0.3853282928466797 + y: 0.25679436326026917 } landmark { - x: 0.42548611760139465 - y: 0.24387983977794647 + x: 0.4242616593837738 + y: 0.24355825781822205 } landmark { - x: 0.4732677638530731 - y: 0.19690032303333282 + x: 0.47135859727859497 + y: 0.19712591171264648 } landmark { - x: 0.4727466106414795 - y: 0.22204428911209106 + x: 0.4700557291507721 + y: 0.22256942093372345 } landmark { - x: 0.4637482762336731 - y: 0.2227250039577484 + x: 0.46150636672973633 + y: 0.22298608720302582 } landmark { - x: 0.4789898693561554 - y: 0.21637049317359924 + x: 0.47614237666130066 + y: 0.21702617406845093 } landmark { - x: 0.4690355956554413 - y: 0.16393627226352692 + x: 0.46710026264190674 + y: 0.16308291256427765 } landmark { - x: 0.452879935503006 - y: 0.1608419120311737 + x: 0.4506882429122925 + y: 0.15922048687934875 } landmark { - x: 0.4382350742816925 - y: 0.1606438159942627 + x: 0.4361620247364044 + y: 0.15884718298912048 } landmark { - x: 0.4255324602127075 - y: 0.1623798906803131 + x: 0.4237998127937317 + y: 0.16090089082717896 } landmark { - x: 0.4161430895328522 - y: 0.16602107882499695 + x: 0.415077805519104 + y: 0.16471539437770844 } landmark { - x: 0.4089227616786957 - y: 0.17826607823371887 + x: 0.4087429642677307 + y: 0.1763523370027542 } landmark { - x: 0.3748510777950287 - y: 0.20213350653648376 + x: 0.374381959438324 + y: 0.19950927793979645 } landmark { - x: 0.41730061173439026 - y: 0.1863732486963272 + x: 0.41734278202056885 + y: 0.18508775532245636 } landmark { - x: 0.4285638630390167 - y: 0.18778443336486816 + x: 0.42812418937683105 + y: 0.18668216466903687 } landmark { - x: 0.4425407648086548 - y: 0.18756519258022308 + x: 0.44202420115470886 + y: 0.1863778680562973 } landmark { - x: 0.4555114805698395 - y: 0.18586406111717224 + x: 0.45476457476615906 + y: 0.18458959460258484 } landmark { - x: 0.46523046493530273 - y: 0.18328996002674103 + x: 0.46446532011032104 + y: 0.1823105812072754 } landmark { - x: 0.47178375720977783 - y: 0.18066181242465973 + x: 0.4710821509361267 + y: 0.1800185889005661 } landmark { - x: 0.3736625909805298 - y: 0.20530056953430176 + x: 0.3725321590900421 + y: 0.2018558830022812 } landmark { - x: 0.46318209171295166 - y: 0.22422729432582855 + x: 0.46095943450927734 + y: 0.22441256046295166 } landmark { - x: 0.4809984564781189 - y: 0.1990271806716919 + x: 0.4787464439868927 + y: 0.19961200654506683 } landmark { - x: 0.48176494240760803 - y: 0.22318817675113678 + x: 0.4787924885749817 + y: 0.22393538057804108 } landmark { - x: 0.4872453808784485 - y: 0.2276468127965927 + x: 0.4842645227909088 + y: 0.22833198308944702 } landmark { - x: 0.48110896348953247 - y: 0.22458484768867493 + x: 0.478278249502182 + y: 0.22533836960792542 } landmark { - x: 0.4653593599796295 - y: 0.2264489233493805 + x: 0.46331512928009033 + y: 0.22648602724075317 } landmark { - x: 0.4895707070827484 - y: 0.2285487949848175 + x: 0.4867161512374878 + y: 0.22926642000675201 } landmark { - x: 0.4901042878627777 - y: 0.23013441264629364 + x: 0.4873657822608948 + y: 0.23077093064785004 } landmark { - x: 0.47118645906448364 - y: 0.17443525791168213 + x: 0.47049492597579956 + y: 0.17447429895401 } landmark { - x: 0.47672608494758606 - y: 0.17624422907829285 + x: 0.47606557607650757 + y: 0.17599420249462128 } landmark { - x: 0.4798724353313446 - y: 0.17757169902324677 + x: 0.4794873595237732 + y: 0.17726632952690125 } landmark { - x: 0.42379844188690186 - y: 0.1733894646167755 + x: 0.42465925216674805 + y: 0.17222295701503754 } landmark { - x: 0.4173426032066345 - y: 0.1713654100894928 + x: 0.41689780354499817 + y: 0.1698952466249466 } landmark { - x: 0.50678950548172 - y: 0.19487784802913666 + x: 0.5050461888313293 + y: 0.19569233059883118 } landmark { - x: 0.5664036870002747 - y: 0.17354270815849304 + x: 0.5678645968437195 + y: 0.17320770025253296 } landmark { - x: 0.5098778605461121 - y: 0.22844582796096802 + x: 0.507583737373352 + y: 0.22922341525554657 } landmark { - x: 0.6026901006698608 - y: 0.1446288377046585 + x: 0.6046732664108276 + y: 0.14386704564094543 } landmark { - x: 0.5374819040298462 - y: 0.1796381175518036 + x: 0.5400645136833191 + y: 0.17841511964797974 } landmark { - x: 0.5473308563232422 - y: 0.18004438281059265 + x: 0.5502756237983704 + y: 0.17885950207710266 } landmark { - x: 0.5573220252990723 - y: 0.17993563413619995 + x: 0.5601589679718018 + y: 0.1790323406457901 } landmark { - x: 0.5713184475898743 - y: 0.17684750258922577 + x: 0.5725513696670532 + y: 0.1765793412923813 } landmark { - x: 0.5294344425201416 - y: 0.17807874083518982 + x: 0.531100332736969 + y: 0.1772753894329071 } landmark { - x: 0.551594614982605 - y: 0.16238141059875488 + x: 0.5557615160942078 + y: 0.1603943109512329 } landmark { - x: 0.5410234928131104 - y: 0.16237744688987732 + x: 0.5435649156570435 + y: 0.16075369715690613 } landmark { - x: 0.5616905689239502 - y: 0.16386936604976654 + x: 0.5666152834892273 + y: 0.16203095018863678 } landmark { - x: 0.5684432983398438 - y: 0.16646406054496765 + x: 0.5733098387718201 + y: 0.16506671905517578 } landmark { - x: 0.5801206827163696 - y: 0.18219953775405884 + x: 0.5821269154548645 + y: 0.18151146173477173 } landmark { - x: 0.5396831631660461 - y: 0.3086676597595215 + x: 0.537260115146637 + y: 0.31094133853912354 } landmark { - x: 0.5704851150512695 - y: 0.1726381778717041 + x: 0.5715002417564392 + y: 0.1723124235868454 } landmark { - x: 0.6091540455818176 - y: 0.1819297969341278 + x: 0.6100214719772339 + y: 0.1815027892589569 } landmark { - x: 0.5911511778831482 - y: 0.17913101613521576 + x: 0.5931045413017273 + y: 0.1776117980480194 } landmark { - x: 0.5526814460754395 - y: 0.21349221467971802 + x: 0.5521938800811768 + y: 0.21418961882591248 } landmark { - x: 0.5163634419441223 - y: 0.24709725379943848 + x: 0.5150473117828369 + y: 0.2477489411830902 } landmark { - x: 0.5148695707321167 - y: 0.2545338273048401 + x: 0.513859748840332 + y: 0.2532585561275482 } landmark { - x: 0.5347130298614502 - y: 0.2479257881641388 + x: 0.5315172076225281 + y: 0.2481025904417038 } landmark { - x: 0.5457966923713684 - y: 0.2498200535774231 + x: 0.5420610308647156 + y: 0.2493458092212677 } landmark { - x: 0.5283692479133606 - y: 0.25389036536216736 + x: 0.5276293754577637 + y: 0.25211772322654724 } landmark { - x: 0.5383691787719727 - y: 0.25401008129119873 + x: 0.5375497341156006 + y: 0.25211989879608154 } landmark { - x: 0.5557026863098145 - y: 0.268137663602829 + x: 0.553263247013092 + y: 0.2699008882045746 } landmark { - x: 0.5084323883056641 - y: 0.22426101565361023 + x: 0.5057799816131592 + y: 0.22512458264827728 } landmark { - x: 0.5091908574104309 - y: 0.21496908366680145 + x: 0.5067881345748901 + y: 0.2159440815448761 } landmark { - x: 0.583114504814148 - y: 0.1616487205028534 + x: 0.5869621634483337 + y: 0.1608346402645111 } landmark { - x: 0.528192937374115 - y: 0.1935209333896637 + x: 0.5274977684020996 + y: 0.19401051104068756 } landmark { - x: 0.5355716943740845 - y: 0.2187693566083908 + x: 0.533601701259613 + y: 0.21943116188049316 } landmark { - x: 0.5354732275009155 - y: 0.21379713714122772 + x: 0.5338393449783325 + y: 0.21448351442813873 } landmark { - x: 0.5836221575737 - y: 0.21118909120559692 + x: 0.583916962146759 + y: 0.21192994713783264 } landmark { - x: 0.508026123046875 - y: 0.2039874643087387 + x: 0.5059342384338379 + y: 0.20495785772800446 } landmark { - x: 0.5573052167892456 - y: 0.15374767780303955 + x: 0.5629805326461792 + y: 0.15236346423625946 } landmark { - x: 0.5723438858985901 - y: 0.15636125206947327 + x: 0.5773332118988037 + y: 0.15538105368614197 } landmark { - x: 0.592279314994812 - y: 0.12885108590126038 + x: 0.5952070951461792 + y: 0.12806709110736847 } landmark { - x: 0.5147846341133118 - y: 0.159391850233078 + x: 0.5171068906784058 + y: 0.15756016969680786 } landmark { - x: 0.5318648815155029 - y: 0.16428986191749573 + x: 0.5328800678253174 + y: 0.16338685154914856 } landmark { - x: 0.5648412108421326 - y: 0.255575954914093 + x: 0.5622146129608154 + y: 0.25687068700790405 } landmark { - x: 0.6016966700553894 - y: 0.2676719129085541 + x: 0.5980644822120667 + y: 0.26567089557647705 } landmark { - x: 0.5281904935836792 - y: 0.22413136065006256 + x: 0.5258244276046753 + y: 0.22496844828128815 } landmark { - x: 0.5187554359436035 - y: 0.22772032022476196 + x: 0.5163113474845886 + y: 0.22808413207530975 } landmark { - x: 0.5590209364891052 - y: 0.25563740730285645 + x: 0.5544278621673584 + y: 0.25414904952049255 } landmark { - x: 0.5534543395042419 - y: 0.2565377950668335 + x: 0.5511380434036255 + y: 0.25471070408821106 } landmark { - x: 0.5777165293693542 - y: 0.15111610293388367 + x: 0.582155704498291 + y: 0.15090274810791016 } landmark { - x: 0.5371914505958557 - y: 0.2216498702764511 + x: 0.5349514484405518 + y: 0.22227640450000763 } landmark { - x: 0.537873387336731 - y: 0.1542656123638153 + x: 0.5432629585266113 + y: 0.15254999697208405 } landmark { - x: 0.5399894714355469 - y: 0.14695629477500916 + x: 0.545166552066803 + y: 0.14633391797542572 } landmark { - x: 0.5525091886520386 - y: 0.10661839693784714 + x: 0.5550372004508972 + y: 0.10590049624443054 } landmark { - x: 0.5843519568443298 - y: 0.13914364576339722 + x: 0.5876381397247314 + y: 0.13795891404151917 } landmark { - x: 0.5451668500900269 - y: 0.12492523342370987 + x: 0.547664225101471 + y: 0.12406198680400848 } landmark { - x: 0.5889578461647034 - y: 0.15803614258766174 + x: 0.5921664237976074 + y: 0.15760593116283417 } landmark { - x: 0.5957990288734436 - y: 0.15151908993721008 + x: 0.598299503326416 + y: 0.15034040808677673 } landmark { - x: 0.5159457921981812 - y: 0.2518090605735779 + x: 0.5147510766983032 + y: 0.2508791983127594 } landmark { - x: 0.5312853455543518 - y: 0.25169894099235535 + x: 0.5296086072921753 + y: 0.25031471252441406 } landmark { - x: 0.542163610458374 - y: 0.251932829618454 + x: 0.5399247407913208 + y: 0.2507742643356323 } landmark { - x: 0.5259739756584167 - y: 0.2256430983543396 + x: 0.5234197974205017 + y: 0.22629721462726593 } landmark { - x: 0.5565677881240845 - y: 0.25596001744270325 + x: 0.5528212785720825 + y: 0.2544132173061371 } landmark { - x: 0.549358606338501 - y: 0.2644067406654358 + x: 0.5467516779899597 + y: 0.26323452591896057 } landmark { - x: 0.5510720610618591 - y: 0.25702980160713196 + x: 0.549625813961029 + y: 0.2550387680530548 } landmark { - x: 0.5209062695503235 - y: 0.22332420945167542 + x: 0.5189055800437927 + y: 0.22416916489601135 } landmark { - x: 0.5362206697463989 - y: 0.25305813550949097 + x: 0.5354100465774536 + y: 0.25290533900260925 } landmark { - x: 0.5261251926422119 - y: 0.2534092962741852 + x: 0.5255399346351624 + y: 0.25320950150489807 } landmark { - x: 0.5135098695755005 - y: 0.25447532534599304 + x: 0.5127152800559998 + y: 0.25454193353652954 } landmark { - x: 0.5163015127182007 - y: 0.29726582765579224 + x: 0.5138126611709595 + y: 0.299878865480423 } landmark { - x: 0.5158073306083679 - y: 0.28806692361831665 + x: 0.515352725982666 + y: 0.28621500730514526 } landmark { - x: 0.515143871307373 - y: 0.28313547372817993 + x: 0.5145734548568726 + y: 0.28150495886802673 } landmark { - x: 0.5142782330513 - y: 0.27918556332588196 + x: 0.513367235660553 + y: 0.2775838077068329 } landmark { - x: 0.5130523443222046 - y: 0.27645161747932434 + x: 0.5117818713188171 + y: 0.2747820317745209 } landmark { - x: 0.5359764695167542 - y: 0.269015908241272 + x: 0.5339730978012085 + y: 0.26765158772468567 } landmark { - x: 0.5380879640579224 - y: 0.2697351574897766 + x: 0.5364535450935364 + y: 0.26869869232177734 } landmark { - x: 0.5408694744110107 - y: 0.2715359628200531 + x: 0.5393399000167847 + y: 0.2706717848777771 } landmark { - x: 0.5429098606109619 - y: 0.2739952504634857 + x: 0.54141765832901 + y: 0.2732411026954651 } landmark { - x: 0.551747739315033 - y: 0.2425888031721115 + x: 0.549669086933136 + y: 0.24306340515613556 } landmark { - x: 0.6104724407196045 - y: 0.22327962517738342 + x: 0.6092031002044678 + y: 0.2215307354927063 } landmark { - x: 0.542661726474762 - y: 0.264887273311615 + x: 0.5411204099655151 + y: 0.26294228434562683 } landmark { - x: 0.5463249087333679 - y: 0.26419177651405334 + x: 0.5440355539321899 + y: 0.2628013491630554 } landmark { - x: 0.5149042010307312 - y: 0.23182332515716553 + x: 0.5127156972885132 + y: 0.23138798773288727 } landmark { - x: 0.5344391465187073 - y: 0.2265375852584839 + x: 0.531876802444458 + y: 0.22674860060214996 } landmark { - x: 0.5167554020881653 - y: 0.22990605235099792 + x: 0.5144256949424744 + y: 0.22982563078403473 } landmark { - x: 0.5396073460578918 - y: 0.19743278622627258 + x: 0.5392422676086426 + y: 0.19801364839076996 } landmark { - x: 0.5572812557220459 - y: 0.20191730558872223 + x: 0.5575653314590454 + y: 0.20261937379837036 } landmark { - x: 0.5381895303726196 - y: 0.21704182028770447 + x: 0.5365014672279358 + y: 0.21780844032764435 } landmark { - x: 0.5762028098106384 - y: 0.11580926924943924 + x: 0.5796245336532593 + y: 0.11501635611057281 } landmark { - x: 0.5680140852928162 - y: 0.13006141781806946 + x: 0.5714046955108643 + y: 0.1289663314819336 } landmark { - x: 0.5606018304824829 - y: 0.14677119255065918 + x: 0.566118597984314 + y: 0.14649400115013123 } landmark { - x: 0.5457060933113098 - y: 0.27935856580734253 + x: 0.5435302257537842 + y: 0.2815547585487366 } landmark { - x: 0.5182281136512756 - y: 0.14809072017669678 + x: 0.5208231806755066 + y: 0.14749842882156372 } landmark { - x: 0.5226633548736572 - y: 0.12293121218681335 + x: 0.5235199928283691 + y: 0.12231816351413727 } landmark { - x: 0.5269424915313721 - y: 0.10210835933685303 + x: 0.5280724763870239 + y: 0.10143059492111206 } landmark { - x: 0.566146969795227 - y: 0.17894425988197327 + x: 0.5680530667304993 + y: 0.1783541738986969 } landmark { - x: 0.5916416645050049 - y: 0.1878890097141266 + x: 0.5935924053192139 + y: 0.18684668838977814 } landmark { - x: 0.5245495438575745 - y: 0.1763075739145279 + x: 0.5251346230506897 + y: 0.17590194940567017 } landmark { - x: 0.5795127153396606 - y: 0.169851154088974 + x: 0.5829108953475952 + y: 0.16882555186748505 } landmark { - x: 0.5203115940093994 - y: 0.18858660757541656 + x: 0.5196100473403931 + y: 0.18905554711818695 } landmark { - x: 0.5273734331130981 - y: 0.21701613068580627 + x: 0.5255730152130127 + y: 0.21781699359416962 } landmark { - x: 0.6029866337776184 - y: 0.194704070687294 + x: 0.6037929058074951 + y: 0.19473719596862793 } landmark { - x: 0.5848985910415649 - y: 0.19179144501686096 + x: 0.5876762866973877 + y: 0.19139209389686584 } landmark { - x: 0.5722278356552124 - y: 0.1937248259782791 + x: 0.5751091241836548 + y: 0.19363407790660858 } landmark { - x: 0.5527111887931824 - y: 0.19322136044502258 + x: 0.5546884536743164 + y: 0.19245529174804688 } landmark { - x: 0.5378798842430115 - y: 0.19076111912727356 + x: 0.5392851829528809 + y: 0.1895231455564499 } landmark { - x: 0.5270953178405762 - y: 0.18745900690555573 + x: 0.5278844833374023 + y: 0.18625354766845703 } landmark { - x: 0.5068857669830322 - y: 0.1776244342327118 + x: 0.5057379603385925 + y: 0.1781947761774063 } landmark { - x: 0.6050539016723633 - y: 0.21112805604934692 + x: 0.6048473119735718 + y: 0.21124869585037231 } landmark { - x: 0.5876967310905457 - y: 0.16968470811843872 + x: 0.5907138586044312 + y: 0.16841086745262146 } landmark { - x: 0.5046964883804321 - y: 0.22904616594314575 + x: 0.5022064447402954 + y: 0.22984524071216583 } landmark { - x: 0.5294264554977417 - y: 0.2015819251537323 + x: 0.5283474326133728 + y: 0.20210015773773193 } landmark { - x: 0.6109298467636108 - y: 0.18285338580608368 + x: 0.6115738749504089 + y: 0.18162932991981506 } landmark { - x: 0.5193479061126709 - y: 0.1833764761686325 + x: 0.5195339322090149 + y: 0.18231819570064545 } landmark { - x: 0.5392886400222778 - y: 0.21720528602600098 + x: 0.5375816822052002 + y: 0.21782614290714264 } landmark { - x: 0.5743647813796997 - y: 0.17350730299949646 + x: 0.5763388872146606 + y: 0.17313891649246216 } landmark { - x: 0.5272390842437744 - y: 0.210930734872818 + x: 0.5256010890007019 + y: 0.21164333820343018 } landmark { - x: 0.6083701252937317 - y: 0.2448720633983612 + x: 0.6055155396461487 + y: 0.24294571578502655 } landmark { - x: 0.5251532793045044 - y: 0.17359605431556702 + x: 0.5247454643249512 + y: 0.17330946028232574 } landmark { - x: 0.5172861814498901 - y: 0.206781804561615 + x: 0.5155066251754761 + y: 0.2076435387134552 } landmark { - x: 0.5826858878135681 - y: 0.2846713066101074 + x: 0.5793409943580627 + y: 0.2845692038536072 } landmark { - x: 0.5798115730285645 - y: 0.29861539602279663 + x: 0.5759055614471436 + y: 0.29750049114227295 } landmark { - x: 0.6129974722862244 - y: 0.2183024138212204 + x: 0.6111270785331726 + y: 0.2174876481294632 } landmark { - x: 0.5959714651107788 - y: 0.27324289083480835 + x: 0.5920206904411316 + y: 0.27248382568359375 } landmark { - x: 0.6027761697769165 - y: 0.16515110433101654 + x: 0.6044109463691711 + y: 0.16451576352119446 } landmark { - x: 0.5405923128128052 - y: 0.31956949830055237 + x: 0.5379455089569092 + y: 0.32187914848327637 } landmark { - x: 0.5035058856010437 - y: 0.23085595667362213 + x: 0.5009083151817322 + y: 0.23150548338890076 } landmark { - x: 0.539728045463562 - y: 0.2068905085325241 + x: 0.5388193130493164 + y: 0.2075142115354538 } landmark { - x: 0.5997242331504822 - y: 0.18125012516975403 + x: 0.6010805368423462 + y: 0.17926880717277527 } landmark { - x: 0.5557644963264465 - y: 0.17472141981124878 + x: 0.5587165355682373 + y: 0.1739545315504074 } landmark { - x: 0.5469692945480347 - y: 0.17501085996627808 + x: 0.5504672527313232 + y: 0.1740606129169464 } landmark { - x: 0.5519768595695496 - y: 0.2650691866874695 + x: 0.5489862561225891 + y: 0.2640478312969208 } landmark { - x: 0.6063312888145447 - y: 0.2296946942806244 + x: 0.6047309637069702 + y: 0.22963711619377136 } landmark { - x: 0.5207729339599609 - y: 0.3345435559749603 + x: 0.5178425908088684 + y: 0.33742693066596985 } landmark { - x: 0.5519165992736816 - y: 0.32048481702804565 + x: 0.5490055084228516 + y: 0.32128745317459106 } landmark { - x: 0.5647541880607605 - y: 0.31104913353919983 + x: 0.5615330934524536 + y: 0.31093350052833557 } landmark { - x: 0.5389063358306885 - y: 0.1747787445783615 + x: 0.5419384241104126 + y: 0.17382308840751648 } landmark { - x: 0.5314264893531799 - y: 0.17405255138874054 + x: 0.5334516763687134 + y: 0.17353390157222748 } landmark { - x: 0.5270696878433228 - y: 0.1738554984331131 + x: 0.5276540517807007 + y: 0.17363135516643524 } landmark { - x: 0.5948655009269714 - y: 0.16821417212486267 + x: 0.5970168709754944 + y: 0.1669829785823822 } landmark { - x: 0.5335545539855957 - y: 0.1689416468143463 + x: 0.534781813621521 + y: 0.1685568243265152 } landmark { - x: 0.5418227910995483 - y: 0.16735565662384033 + x: 0.5438240766525269 + y: 0.16664481163024902 } landmark { - x: 0.5498901605606079 - y: 0.1670738011598587 + x: 0.5528751015663147 + y: 0.1663939356803894 } landmark { - x: 0.5583690404891968 - y: 0.16833548247814178 + x: 0.5614930391311646 + y: 0.1677042543888092 } landmark { - x: 0.5640782117843628 - y: 0.17028631269931793 + x: 0.5666491389274597 + y: 0.16964749991893768 } landmark { - x: 0.6084479689598083 - y: 0.1614430546760559 + x: 0.609628438949585 + y: 0.16061675548553467 } landmark { - x: 0.5618270039558411 - y: 0.1741718202829361 + x: 0.564093291759491 + y: 0.17360816895961761 } landmark { - x: 0.5407617092132568 - y: 0.23834827542304993 + x: 0.5377736687660217 + y: 0.23875702917575836 } landmark { - x: 0.5280399322509766 - y: 0.22334744036197662 + x: 0.5254501700401306 + y: 0.22414736449718475 } landmark { - x: 0.5165486931800842 - y: 0.2378668338060379 + x: 0.5143731236457825 + y: 0.23756679892539978 } landmark { - x: 0.5681453347206116 - y: 0.2975575923919678 + x: 0.5653495788574219 + y: 0.2981868386268616 } landmark { - x: 0.5546253323554993 - y: 0.30852413177490234 + x: 0.5520498752593994 + y: 0.3098434507846832 } landmark { - x: 0.5215611457824707 - y: 0.3270350992679596 + x: 0.5187731385231018 + y: 0.3300126791000366 } landmark { - x: 0.5914955139160156 - y: 0.2856939435005188 + x: 0.5873982310295105 + y: 0.2838709354400635 } landmark { - x: 0.5278031826019287 - y: 0.17169266939163208 + x: 0.5280466079711914 + y: 0.17138159275054932 } landmark { - x: 0.514165461063385 - y: 0.19115599989891052 + x: 0.5129181146621704 + y: 0.19168895483016968 } landmark { - x: 0.5380026698112488 - y: 0.3287186622619629 + x: 0.5351779460906982 + y: 0.33067697286605835 } landmark { - x: 0.6117194890975952 - y: 0.23853100836277008 + x: 0.6082624197006226 + y: 0.2374051958322525 } landmark { - x: 0.5255835056304932 - y: 0.2732813060283661 + x: 0.5241615772247314 + y: 0.27171289920806885 } landmark { - x: 0.5276772379875183 - y: 0.2751905024051666 + x: 0.5266141891479492 + y: 0.27379295229911804 } landmark { - x: 0.5295414328575134 - y: 0.2782367765903473 + x: 0.5287306904792786 + y: 0.27710697054862976 } landmark { - x: 0.5309793949127197 - y: 0.28254830837249756 + x: 0.5302250385284424 + y: 0.2814483940601349 } landmark { - x: 0.5334357619285583 - y: 0.2897222638130188 + x: 0.5311165452003479 + y: 0.2923078238964081 } landmark { - x: 0.5479921698570251 - y: 0.25442880392074585 + x: 0.5454117655754089 + y: 0.25298070907592773 } landmark { - x: 0.5514671802520752 - y: 0.2532214820384979 + x: 0.5476760268211365 + y: 0.2521646320819855 } landmark { - x: 0.5545699000358582 - y: 0.25174254179000854 + x: 0.5496358871459961 + y: 0.2512545585632324 } landmark { - x: 0.561098039150238 - y: 0.24773401021957397 + x: 0.5587289333343506 + y: 0.24860405921936035 } landmark { - x: 0.5944876670837402 - y: 0.23217952251434326 + x: 0.5932571291923523 + y: 0.2326328307390213 } landmark { - x: 0.5131715536117554 - y: 0.18276511132717133 + x: 0.5122402906417847 + y: 0.18319103121757507 } landmark { - x: 0.5169176459312439 - y: 0.1685507744550705 + x: 0.5172679424285889 + y: 0.16791534423828125 } landmark { - x: 0.5233891010284424 - y: 0.16924551129341125 + x: 0.5236363410949707 + y: 0.16878443956375122 } landmark { - x: 0.5447842478752136 - y: 0.2536035180091858 + x: 0.5432159900665283 + y: 0.2535431385040283 } landmark { - x: 0.5950148105621338 - y: 0.25640690326690674 + x: 0.5924032330513 + y: 0.2564423978328705 } landmark { - x: 0.5090537667274475 - y: 0.16862088441848755 + x: 0.5086346864700317 + y: 0.16782936453819275 } landmark { - x: 0.536418616771698 - y: 0.29798656702041626 + x: 0.5341810584068298 + y: 0.3003450036048889 } landmark { - x: 0.5068923234939575 - y: 0.1866418570280075 + x: 0.5053712725639343 + y: 0.18729014694690704 } landmark { - x: 0.5229700207710266 - y: 0.20384481549263 + x: 0.52167147397995 + y: 0.20450185239315033 } landmark { - x: 0.5183667540550232 - y: 0.3059324622154236 + x: 0.5157896280288696 + y: 0.30877235531806946 } landmark { - x: 0.5605188012123108 - y: 0.27336931228637695 + x: 0.5582626461982727 + y: 0.27466052770614624 } landmark { - x: 0.5474860668182373 - y: 0.22416174411773682 + x: 0.5460183620452881 + y: 0.22478628158569336 } landmark { - x: 0.5493848919868469 - y: 0.28694725036621094 + x: 0.5473951101303101 + y: 0.2886243462562561 } landmark { - x: 0.5709414482116699 - y: 0.22346587479114532 + x: 0.5703837871551514 + y: 0.22428280115127563 } landmark { - x: 0.5579255223274231 - y: 0.232930988073349 + x: 0.5565193295478821 + y: 0.23365134000778198 } landmark { - x: 0.5807584524154663 - y: 0.23765110969543457 + x: 0.5793741345405579 + y: 0.23838575184345245 } landmark { - x: 0.5209594964981079 - y: 0.316994309425354 + x: 0.5181536674499512 + y: 0.31991374492645264 } landmark { - x: 0.530515730381012 - y: 0.2078046351671219 + x: 0.529270589351654 + y: 0.2083507925271988 } landmark { - x: 0.5666337609291077 - y: 0.28360864520072937 + x: 0.5643376111984253 + y: 0.28466808795928955 } landmark { - x: 0.553034245967865 - y: 0.29658618569374084 + x: 0.5508216619491577 + y: 0.2982299327850342 } landmark { - x: 0.5700827240943909 - y: 0.2593379318714142 + x: 0.5677818059921265 + y: 0.2603156566619873 } landmark { - x: 0.6041326522827148 - y: 0.24623559415340424 + x: 0.6016684770584106 + y: 0.24588267505168915 } landmark { - x: 0.5814452767372131 - y: 0.26452142000198364 + x: 0.5789523720741272 + y: 0.2651319205760956 } landmark { - x: 0.6062427163124084 - y: 0.25723811984062195 + x: 0.602148175239563 + y: 0.2560369372367859 } landmark { - x: 0.5678514838218689 - y: 0.24233733117580414 + x: 0.56609046459198 + y: 0.24309805035591125 } landmark { - x: 0.5213474631309509 - y: 0.19642430543899536 + x: 0.5201491713523865 + y: 0.19698408246040344 } landmark { - x: 0.5243054628372192 - y: 0.22156046330928802 + x: 0.5222632884979248 + y: 0.22236193716526031 } landmark { - x: 0.5326778888702393 - y: 0.22209812700748444 + x: 0.5303317904472351 + y: 0.22283218801021576 } landmark { - x: 0.5186276435852051 - y: 0.21597601473331451 + x: 0.5164652466773987 + y: 0.2168644219636917 } landmark { - x: 0.5235650539398193 - y: 0.1633981466293335 + x: 0.5255054235458374 + y: 0.16204464435577393 } landmark { - x: 0.5392965078353882 - y: 0.1598573923110962 + x: 0.5431230068206787 + y: 0.15799033641815186 } landmark { - x: 0.5537004470825195 - y: 0.1593489944934845 + x: 0.5587068796157837 + y: 0.1575303077697754 } landmark { - x: 0.5661267042160034 - y: 0.16085092723369598 + x: 0.5712164640426636 + y: 0.15946003794670105 } landmark { - x: 0.574979305267334 - y: 0.16426688432693481 + x: 0.5793605446815491 + y: 0.16321201622486115 } landmark { - x: 0.581565260887146 - y: 0.17640192806720734 + x: 0.5836203098297119 + y: 0.17538323998451233 } landmark { - x: 0.6120520830154419 - y: 0.19976450502872467 + x: 0.6116812825202942 + y: 0.19925269484519958 } landmark { - x: 0.5742601156234741 - y: 0.18469390273094177 + x: 0.5768086910247803 + y: 0.1841469705104828 } landmark { - x: 0.5635954737663269 - y: 0.186308354139328 + x: 0.5665790438652039 + y: 0.18563959002494812 } landmark { - x: 0.5499920845031738 - y: 0.18640676140785217 + x: 0.5525866746902466 + y: 0.18530991673469543 } landmark { - x: 0.5372087359428406 - y: 0.1849617063999176 + x: 0.5391771793365479 + y: 0.1836860328912735 } landmark { - x: 0.5276203155517578 - y: 0.18271957337856293 + x: 0.5287002325057983 + y: 0.18165405094623566 } landmark { - x: 0.521136462688446 - y: 0.18020761013031006 + x: 0.5215262174606323 + y: 0.1793644279241562 } landmark { - x: 0.61063152551651 - y: 0.2030305564403534 + x: 0.6107636094093323 + y: 0.20149710774421692 } landmark { - x: 0.5329957604408264 - y: 0.22360016405582428 + x: 0.5306032299995422 + y: 0.22430402040481567 } landmark { - x: 0.5149561166763306 - y: 0.19873511791229248 + x: 0.5133494138717651 + y: 0.19946259260177612 } landmark { - x: 0.516097366809845 - y: 0.22282160818576813 + x: 0.5138635635375977 + y: 0.22376540303230286 } landmark { - x: 0.5102393627166748 - y: 0.22739730775356293 + x: 0.5081169009208679 + y: 0.22823618352413177 } landmark { - x: 0.5163232088088989 - y: 0.22425635159015656 + x: 0.5141233205795288 + y: 0.2252192348241806 } landmark { - x: 0.5307353138923645 - y: 0.22599026560783386 + x: 0.5282045006752014 + y: 0.22643950581550598 } landmark { - x: 0.5081872940063477 - y: 0.22832725942134857 + x: 0.5058442950248718 + y: 0.2291848063468933 } landmark { - x: 0.5072928071022034 - y: 0.22999370098114014 + x: 0.5046985745429993 + y: 0.23070128262043 } landmark { - x: 0.5214151740074158 - y: 0.17402707040309906 + x: 0.5212299823760986 + y: 0.17368891835212708 } landmark { - x: 0.5161834955215454 - y: 0.176010400056839 + x: 0.5159528255462646 + y: 0.17531193792819977 } landmark { - x: 0.5135918259620667 - y: 0.17730969190597534 + x: 0.5131956338882446 + y: 0.17659029364585876 } landmark { - x: 0.5676515102386475 - y: 0.17169912159442902 + x: 0.5694946050643921 + y: 0.1711338460445404 } landmark { - x: 0.5736849904060364 - y: 0.1696227788925171 + x: 0.5771481990814209 + y: 0.1686939150094986 +} +landmark { + x: 0.44258421659469604 + y: 0.17109623551368713 +} +landmark { + x: 0.4528672397136688 + y: 0.17074066400527954 +} +landmark { + x: 0.44241371750831604 + y: 0.1644783616065979 +} +landmark { + x: 0.4321419894695282 + y: 0.17140239477157593 +} +landmark { + x: 0.44269701838493347 + y: 0.17766216397285461 +} +landmark { + x: 0.5497130155563354 + y: 0.1701773703098297 +} +landmark { + x: 0.5605489611625671 + y: 0.17030568420886993 +} +landmark { + x: 0.5500174760818481 + y: 0.1636604368686676 +} +landmark { + x: 0.538931667804718 + y: 0.17000019550323486 +} +landmark { + x: 0.5495142340660095 + y: 0.17672255635261536 } diff --git a/mediapipe/tasks/testdata/vision/portrait_expected_face_landmarks_with_attention.pbtxt b/mediapipe/tasks/testdata/vision/portrait_expected_face_landmarks_with_attention.pbtxt deleted file mode 100644 index 2c8967bd4..000000000 --- a/mediapipe/tasks/testdata/vision/portrait_expected_face_landmarks_with_attention.pbtxt +++ /dev/null @@ -1,1914 +0,0 @@ -# proto-file: mediapipe/framework/formats/landmark.proto -# proto-message: NormalizedLandmarkList -landmark { - x: 0.49662378430366516 - y: 0.25066471099853516 -} -landmark { - x: 0.49648889899253845 - y: 0.22542163729667664 -} -landmark { - x: 0.4958636164665222 - y: 0.23273630440235138 -} -landmark { - x: 0.487348347902298 - y: 0.19578002393245697 -} -landmark { - x: 0.49650701880455017 - y: 0.2160423994064331 -} -landmark { - x: 0.4963602125644684 - y: 0.20415978133678436 -} -landmark { - x: 0.4958672821521759 - y: 0.1760016828775406 -} -landmark { - x: 0.4263756573200226 - y: 0.1743389070034027 -} -landmark { - x: 0.4957432150840759 - y: 0.15887980163097382 -} -landmark { - x: 0.49582991003990173 - y: 0.14792537689208984 -} -landmark { - x: 0.49545449018478394 - y: 0.10050265491008759 -} -landmark { - x: 0.4967471957206726 - y: 0.25292080640792847 -} -landmark { - x: 0.49677377939224243 - y: 0.25491753220558167 -} -landmark { - x: 0.4968340992927551 - y: 0.25597265362739563 -} -landmark { - x: 0.4966096580028534 - y: 0.2762660086154938 -} -landmark { - x: 0.4970662295818329 - y: 0.2792523503303528 -} -landmark { - x: 0.49733766913414 - y: 0.2831544280052185 -} -landmark { - x: 0.4975529909133911 - y: 0.28777939081192017 -} -landmark { - x: 0.49513718485832214 - y: 0.30162155628204346 -} -landmark { - x: 0.4963628351688385 - y: 0.23023517429828644 -} -landmark { - x: 0.48452815413475037 - y: 0.22930648922920227 -} -landmark { - x: 0.37912482023239136 - y: 0.14393068850040436 -} -landmark { - x: 0.45384323596954346 - y: 0.17952775955200195 -} -landmark { - x: 0.44406363368034363 - y: 0.18024367094039917 -} -landmark { - x: 0.43423992395401 - y: 0.18035075068473816 -} -landmark { - x: 0.42096418142318726 - y: 0.1774648129940033 -} -landmark { - x: 0.4620691239833832 - y: 0.17808954417705536 -} -landmark { - x: 0.4381572902202606 - y: 0.16171878576278687 -} -landmark { - x: 0.44929927587509155 - y: 0.16189174354076385 -} -landmark { - x: 0.42799487709999084 - y: 0.16344769299030304 -} -landmark { - x: 0.4213537871837616 - y: 0.16641879081726074 -} -landmark { - x: 0.4108949899673462 - y: 0.18241165578365326 -} -landmark { - x: 0.45295459032058716 - y: 0.3115408420562744 -} -landmark { - x: 0.42228829860687256 - y: 0.1732511818408966 -} -landmark { - x: 0.37566322088241577 - y: 0.1816394031047821 -} -landmark { - x: 0.39784568548202515 - y: 0.17866098880767822 -} -landmark { - x: 0.43882179260253906 - y: 0.21443405747413635 -} -landmark { - x: 0.4774819612503052 - y: 0.24866220355033875 -} -landmark { - x: 0.47887977957725525 - y: 0.25409185886383057 -} -landmark { - x: 0.45999351143836975 - y: 0.2500782310962677 -} -landmark { - x: 0.4481550455093384 - y: 0.252032995223999 -} -landmark { - x: 0.46404537558555603 - y: 0.25381025671958923 -} -landmark { - x: 0.4528164863586426 - y: 0.2544485628604889 -} -landmark { - x: 0.43636560440063477 - y: 0.27052366733551025 -} -landmark { - x: 0.4871026575565338 - y: 0.225237175822258 -} -landmark { - x: 0.48611801862716675 - y: 0.21604084968566895 -} -landmark { - x: 0.4063660502433777 - y: 0.1625554859638214 -} -landmark { - x: 0.4635976254940033 - y: 0.1942015290260315 -} -landmark { - x: 0.4581945836544037 - y: 0.21956732869148254 -} -landmark { - x: 0.4577708840370178 - y: 0.21461132168769836 -} -landmark { - x: 0.4065546691417694 - y: 0.21230843663215637 -} -landmark { - x: 0.48670515418052673 - y: 0.2050575613975525 -} -landmark { - x: 0.4322924315929413 - y: 0.15380477905273438 -} -landmark { - x: 0.4173465371131897 - y: 0.15705204010009766 -} -landmark { - x: 0.3902948796749115 - y: 0.1280173361301422 -} -landmark { - x: 0.4765879511833191 - y: 0.15888181328773499 -} -landmark { - x: 0.45905187726020813 - y: 0.16421911120414734 -} -landmark { - x: 0.4274546504020691 - y: 0.2575083076953888 -} -landmark { - x: 0.38783153891563416 - y: 0.2666078507900238 -} -landmark { - x: 0.46594077348709106 - y: 0.22510138154029846 -} -landmark { - x: 0.4754405915737152 - y: 0.2280336320400238 -} -landmark { - x: 0.4334415793418884 - y: 0.2578507959842682 -} -landmark { - x: 0.436551034450531 - y: 0.25822576880455017 -} -landmark { - x: 0.4111592769622803 - y: 0.1524781882762909 -} -landmark { - x: 0.45654183626174927 - y: 0.22234851121902466 -} -landmark { - x: 0.4520558714866638 - y: 0.15389353036880493 -} -landmark { - x: 0.44988009333610535 - y: 0.14750143885612488 -} -landmark { - x: 0.43465882539749146 - y: 0.10574661940336227 -} -landmark { - x: 0.3998187184333801 - y: 0.13816964626312256 -} -landmark { - x: 0.44287118315696716 - y: 0.12405438721179962 -} -landmark { - x: 0.3991505205631256 - y: 0.15909640491008759 -} -landmark { - x: 0.38786911964416504 - y: 0.15060681104660034 -} -landmark { - x: 0.4778904318809509 - y: 0.25174596905708313 -} -landmark { - x: 0.46195170283317566 - y: 0.2520931363105774 -} -landmark { - x: 0.45044994354248047 - y: 0.2533124089241028 -} -landmark { - x: 0.4682377278804779 - y: 0.22637511789798737 -} -landmark { - x: 0.4350201189517975 - y: 0.2580338418483734 -} -landmark { - x: 0.4423924684524536 - y: 0.2662544250488281 -} -landmark { - x: 0.43794137239456177 - y: 0.2584308385848999 -} -landmark { - x: 0.4733739197254181 - y: 0.22433938086032867 -} -landmark { - x: 0.4550367593765259 - y: 0.2551838159561157 -} -landmark { - x: 0.46616387367248535 - y: 0.25481677055358887 -} -landmark { - x: 0.48008614778518677 - y: 0.2553037405014038 -} -landmark { - x: 0.4764786660671234 - y: 0.3000088930130005 -} -landmark { - x: 0.47889888286590576 - y: 0.2867310047149658 -} -landmark { - x: 0.4792180061340332 - y: 0.28215786814689636 -} -landmark { - x: 0.4797844886779785 - y: 0.27831950783729553 -} -landmark { - x: 0.48065802454948425 - y: 0.27555787563323975 -} -landmark { - x: 0.4559228718280792 - y: 0.26986679434776306 -} -landmark { - x: 0.45390307903289795 - y: 0.2708792984485626 -} -landmark { - x: 0.4513547420501709 - y: 0.2728833556175232 -} -landmark { - x: 0.4496460258960724 - y: 0.27533650398254395 -} -landmark { - x: 0.4409347474575043 - y: 0.2433733493089676 -} -landmark { - x: 0.37470322847366333 - y: 0.2220018357038498 -} -landmark { - x: 0.49612095952033997 - y: 0.23190505802631378 -} -landmark { - x: 0.44766467809677124 - y: 0.2656818926334381 -} -landmark { - x: 0.4449608325958252 - y: 0.2656901478767395 -} -landmark { - x: 0.47903069853782654 - y: 0.23131167888641357 -} -landmark { - x: 0.45948758721351624 - y: 0.22670653462409973 -} -landmark { - x: 0.4773414433002472 - y: 0.22975307703018188 -} -landmark { - x: 0.4515821933746338 - y: 0.19823692739009857 -} -landmark { - x: 0.43330681324005127 - y: 0.20288488268852234 -} -landmark { - x: 0.4548875689506531 - y: 0.21785812079906464 -} -landmark { - x: 0.4081736207008362 - y: 0.11487754434347153 -} -landmark { - x: 0.41755422949790955 - y: 0.12904098629951477 -} -landmark { - x: 0.4283616244792938 - y: 0.14776825904846191 -} -landmark { - x: 0.4462631046772003 - y: 0.28206732869148254 -} -landmark { - x: 0.4730672240257263 - y: 0.14861562848091125 -} -landmark { - x: 0.4676840007305145 - y: 0.12226873636245728 -} -landmark { - x: 0.4625813066959381 - y: 0.10131789743900299 -} -landmark { - x: 0.42591845989227295 - y: 0.17952558398246765 -} -landmark { - x: 0.39877602458000183 - y: 0.18789303302764893 -} -landmark { - x: 0.467370867729187 - y: 0.17659270763397217 -} -landmark { - x: 0.41039395332336426 - y: 0.170170396566391 -} -landmark { - x: 0.4717400372028351 - y: 0.18922601640224457 -} -landmark { - x: 0.4667041003704071 - y: 0.21796613931655884 -} -landmark { - x: 0.3843420147895813 - y: 0.195051908493042 -} -landmark { - x: 0.40679413080215454 - y: 0.19237273931503296 -} -landmark { - x: 0.42057645320892334 - y: 0.19457939267158508 -} -landmark { - x: 0.4405983090400696 - y: 0.19333598017692566 -} -landmark { - x: 0.45518380403518677 - y: 0.19030749797821045 -} -landmark { - x: 0.46578195691108704 - y: 0.18687105178833008 -} -landmark { - x: 0.4859747886657715 - y: 0.178244948387146 -} -landmark { - x: 0.38405489921569824 - y: 0.2115805447101593 -} -landmark { - x: 0.40115848183631897 - y: 0.16971616446971893 -} -landmark { - x: 0.4904470443725586 - y: 0.22989952564239502 -} -landmark { - x: 0.4628409743309021 - y: 0.20227496325969696 -} -landmark { - x: 0.3713923692703247 - y: 0.18183395266532898 -} -landmark { - x: 0.4737045168876648 - y: 0.18296673893928528 -} -landmark { - x: 0.45343708992004395 - y: 0.217837393283844 -} -landmark { - x: 0.41712236404418945 - y: 0.17397862672805786 -} -landmark { - x: 0.46640586853027344 - y: 0.21179847419261932 -} -landmark { - x: 0.3793344795703888 - y: 0.24359717965126038 -} -landmark { - x: 0.4667336344718933 - y: 0.17424505949020386 -} -landmark { - x: 0.4768681228160858 - y: 0.20779715478420258 -} -landmark { - x: 0.409467488527298 - y: 0.28563350439071655 -} -landmark { - x: 0.41173893213272095 - y: 0.2989254593849182 -} -landmark { - x: 0.37547457218170166 - y: 0.2178495228290558 -} -landmark { - x: 0.3962154686450958 - y: 0.2734628915786743 -} -landmark { - x: 0.3811984956264496 - y: 0.16468137502670288 -} -landmark { - x: 0.4519205391407013 - y: 0.32255393266677856 -} -landmark { - x: 0.49128058552742004 - y: 0.2315189242362976 -} -landmark { - x: 0.45209217071533203 - y: 0.20766283571720123 -} -landmark { - x: 0.3879472613334656 - y: 0.18026039004325867 -} -landmark { - x: 0.43616294860839844 - y: 0.17546914517879486 -} -landmark { - x: 0.44427722692489624 - y: 0.1755416989326477 -} -landmark { - x: 0.44037607312202454 - y: 0.2670835852622986 -} -landmark { - x: 0.3844276964664459 - y: 0.23011347651481628 -} -landmark { - x: 0.47184261679649353 - y: 0.3377809524536133 -} -landmark { - x: 0.43982183933258057 - y: 0.3224796652793884 -} -landmark { - x: 0.42685991525650024 - y: 0.31230732798576355 -} -landmark { - x: 0.4956350028514862 - y: 0.12251447141170502 -} -landmark { - x: 0.4949685037136078 - y: 0.33993446826934814 -} -landmark { - x: 0.45213454961776733 - y: 0.17507293820381165 -} -landmark { - x: 0.4596617817878723 - y: 0.17446552217006683 -} -landmark { - x: 0.4645062983036041 - y: 0.1744132936000824 -} -landmark { - x: 0.39248085021972656 - y: 0.16815300285816193 -} -landmark { - x: 0.45720967650413513 - y: 0.1696319878101349 -} -landmark { - x: 0.44864439964294434 - y: 0.1680142879486084 -} -landmark { - x: 0.44060665369033813 - y: 0.1679076999425888 -} -landmark { - x: 0.4326114356517792 - y: 0.1691804826259613 -} -landmark { - x: 0.42759329080581665 - y: 0.1709102988243103 -} -landmark { - x: 0.37336626648902893 - y: 0.16072668135166168 -} -landmark { - x: 0.4305437207221985 - y: 0.17496828734874725 -} -landmark { - x: 0.49581199884414673 - y: 0.2378993183374405 -} -landmark { - x: 0.4533678889274597 - y: 0.23889966309070587 -} -landmark { - x: 0.46646663546562195 - y: 0.2243112325668335 -} -landmark { - x: 0.47728025913238525 - y: 0.23756998777389526 -} -landmark { - x: 0.49568256735801697 - y: 0.1670406311750412 -} -landmark { - x: 0.423678994178772 - y: 0.29920822381973267 -} -landmark { - x: 0.4373316168785095 - y: 0.31077975034713745 -} -landmark { - x: 0.4715747535228729 - y: 0.33032771944999695 -} -landmark { - x: 0.39951860904693604 - y: 0.2851996123790741 -} -landmark { - x: 0.46363309025764465 - y: 0.17234012484550476 -} -landmark { - x: 0.4789753258228302 - y: 0.19182273745536804 -} -landmark { - x: 0.4952210485935211 - y: 0.3327086865901947 -} -landmark { - x: 0.454120934009552 - y: 0.33151447772979736 -} -landmark { - x: 0.37874123454093933 - y: 0.23793040215969086 -} -landmark { - x: 0.4671173393726349 - y: 0.2732347548007965 -} -landmark { - x: 0.46523454785346985 - y: 0.2752726972103119 -} -landmark { - x: 0.4636782705783844 - y: 0.2785157561302185 -} -landmark { - x: 0.4628322422504425 - y: 0.2826366424560547 -} -landmark { - x: 0.45889154076576233 - y: 0.29270175099372864 -} -landmark { - x: 0.44332754611968994 - y: 0.2559441328048706 -} -landmark { - x: 0.4410799741744995 - y: 0.2552872896194458 -} -landmark { - x: 0.4392359256744385 - y: 0.2545016407966614 -} -landmark { - x: 0.4313274025917053 - y: 0.24908222258090973 -} -landmark { - x: 0.3969060182571411 - y: 0.23314312100410461 -} -landmark { - x: 0.47924545407295227 - y: 0.18325799703598022 -} -landmark { - x: 0.47463276982307434 - y: 0.1687009632587433 -} -landmark { - x: 0.4678848683834076 - y: 0.16957470774650574 -} -landmark { - x: 0.4455469250679016 - y: 0.2563154995441437 -} -landmark { - x: 0.39680883288383484 - y: 0.25723445415496826 -} -landmark { - x: 0.4837980568408966 - y: 0.1687287539243698 -} -landmark { - x: 0.4560215473175049 - y: 0.3008677363395691 -} -landmark { - x: 0.4962090253829956 - y: 0.19450967013835907 -} -landmark { - x: 0.48670148849487305 - y: 0.18738791346549988 -} -landmark { - x: 0.4960493743419647 - y: 0.18556331098079681 -} -landmark { - x: 0.47000551223754883 - y: 0.20461101830005646 -} -landmark { - x: 0.49529385566711426 - y: 0.32238951325416565 -} -landmark { - x: 0.49524635076522827 - y: 0.31086331605911255 -} -landmark { - x: 0.47470414638519287 - y: 0.30902671813964844 -} -landmark { - x: 0.43139365315437317 - y: 0.275373637676239 -} -landmark { - x: 0.44470104575157166 - y: 0.22494974732398987 -} -landmark { - x: 0.44245320558547974 - y: 0.2893069386482239 -} -landmark { - x: 0.4205935597419739 - y: 0.22470718622207642 -} -landmark { - x: 0.43413853645324707 - y: 0.2340032011270523 -} -landmark { - x: 0.41114354133605957 - y: 0.23891311883926392 -} -landmark { - x: 0.4724236726760864 - y: 0.32018566131591797 -} -landmark { - x: 0.4620009660720825 - y: 0.2084873765707016 -} -landmark { - x: 0.42516615986824036 - y: 0.28558987379074097 -} -landmark { - x: 0.43897202610969543 - y: 0.29905030131340027 -} -landmark { - x: 0.4220097064971924 - y: 0.26096412539482117 -} -landmark { - x: 0.3872614800930023 - y: 0.24655131995677948 -} -landmark { - x: 0.410627543926239 - y: 0.2659621238708496 -} -landmark { - x: 0.3853282928466797 - y: 0.25679436326026917 -} -landmark { - x: 0.4242616593837738 - y: 0.24355825781822205 -} -landmark { - x: 0.47135859727859497 - y: 0.19712591171264648 -} -landmark { - x: 0.4700557291507721 - y: 0.22256942093372345 -} -landmark { - x: 0.46150636672973633 - y: 0.22298608720302582 -} -landmark { - x: 0.47614237666130066 - y: 0.21702617406845093 -} -landmark { - x: 0.46710026264190674 - y: 0.16308291256427765 -} -landmark { - x: 0.4506882429122925 - y: 0.15922048687934875 -} -landmark { - x: 0.4361620247364044 - y: 0.15884718298912048 -} -landmark { - x: 0.4237998127937317 - y: 0.16090089082717896 -} -landmark { - x: 0.415077805519104 - y: 0.16471539437770844 -} -landmark { - x: 0.4087429642677307 - y: 0.1763523370027542 -} -landmark { - x: 0.374381959438324 - y: 0.19950927793979645 -} -landmark { - x: 0.41734278202056885 - y: 0.18508775532245636 -} -landmark { - x: 0.42812418937683105 - y: 0.18668216466903687 -} -landmark { - x: 0.44202420115470886 - y: 0.1863778680562973 -} -landmark { - x: 0.45476457476615906 - y: 0.18458959460258484 -} -landmark { - x: 0.46446532011032104 - y: 0.1823105812072754 -} -landmark { - x: 0.4710821509361267 - y: 0.1800185889005661 -} -landmark { - x: 0.3725321590900421 - y: 0.2018558830022812 -} -landmark { - x: 0.46095943450927734 - y: 0.22441256046295166 -} -landmark { - x: 0.4787464439868927 - y: 0.19961200654506683 -} -landmark { - x: 0.4787924885749817 - y: 0.22393538057804108 -} -landmark { - x: 0.4842645227909088 - y: 0.22833198308944702 -} -landmark { - x: 0.478278249502182 - y: 0.22533836960792542 -} -landmark { - x: 0.46331512928009033 - y: 0.22648602724075317 -} -landmark { - x: 0.4867161512374878 - y: 0.22926642000675201 -} -landmark { - x: 0.4873657822608948 - y: 0.23077093064785004 -} -landmark { - x: 0.47049492597579956 - y: 0.17447429895401 -} -landmark { - x: 0.47606557607650757 - y: 0.17599420249462128 -} -landmark { - x: 0.4794873595237732 - y: 0.17726632952690125 -} -landmark { - x: 0.42465925216674805 - y: 0.17222295701503754 -} -landmark { - x: 0.41689780354499817 - y: 0.1698952466249466 -} -landmark { - x: 0.5050461888313293 - y: 0.19569233059883118 -} -landmark { - x: 0.5678645968437195 - y: 0.17320770025253296 -} -landmark { - x: 0.507583737373352 - y: 0.22922341525554657 -} -landmark { - x: 0.6046732664108276 - y: 0.14386704564094543 -} -landmark { - x: 0.5400645136833191 - y: 0.17841511964797974 -} -landmark { - x: 0.5502756237983704 - y: 0.17885950207710266 -} -landmark { - x: 0.5601589679718018 - y: 0.1790323406457901 -} -landmark { - x: 0.5725513696670532 - y: 0.1765793412923813 -} -landmark { - x: 0.531100332736969 - y: 0.1772753894329071 -} -landmark { - x: 0.5557615160942078 - y: 0.1603943109512329 -} -landmark { - x: 0.5435649156570435 - y: 0.16075369715690613 -} -landmark { - x: 0.5666152834892273 - y: 0.16203095018863678 -} -landmark { - x: 0.5733098387718201 - y: 0.16506671905517578 -} -landmark { - x: 0.5821269154548645 - y: 0.18151146173477173 -} -landmark { - x: 0.537260115146637 - y: 0.31094133853912354 -} -landmark { - x: 0.5715002417564392 - y: 0.1723124235868454 -} -landmark { - x: 0.6100214719772339 - y: 0.1815027892589569 -} -landmark { - x: 0.5931045413017273 - y: 0.1776117980480194 -} -landmark { - x: 0.5521938800811768 - y: 0.21418961882591248 -} -landmark { - x: 0.5150473117828369 - y: 0.2477489411830902 -} -landmark { - x: 0.513859748840332 - y: 0.2532585561275482 -} -landmark { - x: 0.5315172076225281 - y: 0.2481025904417038 -} -landmark { - x: 0.5420610308647156 - y: 0.2493458092212677 -} -landmark { - x: 0.5276293754577637 - y: 0.25211772322654724 -} -landmark { - x: 0.5375497341156006 - y: 0.25211989879608154 -} -landmark { - x: 0.553263247013092 - y: 0.2699008882045746 -} -landmark { - x: 0.5057799816131592 - y: 0.22512458264827728 -} -landmark { - x: 0.5067881345748901 - y: 0.2159440815448761 -} -landmark { - x: 0.5869621634483337 - y: 0.1608346402645111 -} -landmark { - x: 0.5274977684020996 - y: 0.19401051104068756 -} -landmark { - x: 0.533601701259613 - y: 0.21943116188049316 -} -landmark { - x: 0.5338393449783325 - y: 0.21448351442813873 -} -landmark { - x: 0.583916962146759 - y: 0.21192994713783264 -} -landmark { - x: 0.5059342384338379 - y: 0.20495785772800446 -} -landmark { - x: 0.5629805326461792 - y: 0.15236346423625946 -} -landmark { - x: 0.5773332118988037 - y: 0.15538105368614197 -} -landmark { - x: 0.5952070951461792 - y: 0.12806709110736847 -} -landmark { - x: 0.5171068906784058 - y: 0.15756016969680786 -} -landmark { - x: 0.5328800678253174 - y: 0.16338685154914856 -} -landmark { - x: 0.5622146129608154 - y: 0.25687068700790405 -} -landmark { - x: 0.5980644822120667 - y: 0.26567089557647705 -} -landmark { - x: 0.5258244276046753 - y: 0.22496844828128815 -} -landmark { - x: 0.5163113474845886 - y: 0.22808413207530975 -} -landmark { - x: 0.5544278621673584 - y: 0.25414904952049255 -} -landmark { - x: 0.5511380434036255 - y: 0.25471070408821106 -} -landmark { - x: 0.582155704498291 - y: 0.15090274810791016 -} -landmark { - x: 0.5349514484405518 - y: 0.22227640450000763 -} -landmark { - x: 0.5432629585266113 - y: 0.15254999697208405 -} -landmark { - x: 0.545166552066803 - y: 0.14633391797542572 -} -landmark { - x: 0.5550372004508972 - y: 0.10590049624443054 -} -landmark { - x: 0.5876381397247314 - y: 0.13795891404151917 -} -landmark { - x: 0.547664225101471 - y: 0.12406198680400848 -} -landmark { - x: 0.5921664237976074 - y: 0.15760593116283417 -} -landmark { - x: 0.598299503326416 - y: 0.15034040808677673 -} -landmark { - x: 0.5147510766983032 - y: 0.2508791983127594 -} -landmark { - x: 0.5296086072921753 - y: 0.25031471252441406 -} -landmark { - x: 0.5399247407913208 - y: 0.2507742643356323 -} -landmark { - x: 0.5234197974205017 - y: 0.22629721462726593 -} -landmark { - x: 0.5528212785720825 - y: 0.2544132173061371 -} -landmark { - x: 0.5467516779899597 - y: 0.26323452591896057 -} -landmark { - x: 0.549625813961029 - y: 0.2550387680530548 -} -landmark { - x: 0.5189055800437927 - y: 0.22416916489601135 -} -landmark { - x: 0.5354100465774536 - y: 0.25290533900260925 -} -landmark { - x: 0.5255399346351624 - y: 0.25320950150489807 -} -landmark { - x: 0.5127152800559998 - y: 0.25454193353652954 -} -landmark { - x: 0.5138126611709595 - y: 0.299878865480423 -} -landmark { - x: 0.515352725982666 - y: 0.28621500730514526 -} -landmark { - x: 0.5145734548568726 - y: 0.28150495886802673 -} -landmark { - x: 0.513367235660553 - y: 0.2775838077068329 -} -landmark { - x: 0.5117818713188171 - y: 0.2747820317745209 -} -landmark { - x: 0.5339730978012085 - y: 0.26765158772468567 -} -landmark { - x: 0.5364535450935364 - y: 0.26869869232177734 -} -landmark { - x: 0.5393399000167847 - y: 0.2706717848777771 -} -landmark { - x: 0.54141765832901 - y: 0.2732411026954651 -} -landmark { - x: 0.549669086933136 - y: 0.24306340515613556 -} -landmark { - x: 0.6092031002044678 - y: 0.2215307354927063 -} -landmark { - x: 0.5411204099655151 - y: 0.26294228434562683 -} -landmark { - x: 0.5440355539321899 - y: 0.2628013491630554 -} -landmark { - x: 0.5127156972885132 - y: 0.23138798773288727 -} -landmark { - x: 0.531876802444458 - y: 0.22674860060214996 -} -landmark { - x: 0.5144256949424744 - y: 0.22982563078403473 -} -landmark { - x: 0.5392422676086426 - y: 0.19801364839076996 -} -landmark { - x: 0.5575653314590454 - y: 0.20261937379837036 -} -landmark { - x: 0.5365014672279358 - y: 0.21780844032764435 -} -landmark { - x: 0.5796245336532593 - y: 0.11501635611057281 -} -landmark { - x: 0.5714046955108643 - y: 0.1289663314819336 -} -landmark { - x: 0.566118597984314 - y: 0.14649400115013123 -} -landmark { - x: 0.5435302257537842 - y: 0.2815547585487366 -} -landmark { - x: 0.5208231806755066 - y: 0.14749842882156372 -} -landmark { - x: 0.5235199928283691 - y: 0.12231816351413727 -} -landmark { - x: 0.5280724763870239 - y: 0.10143059492111206 -} -landmark { - x: 0.5680530667304993 - y: 0.1783541738986969 -} -landmark { - x: 0.5935924053192139 - y: 0.18684668838977814 -} -landmark { - x: 0.5251346230506897 - y: 0.17590194940567017 -} -landmark { - x: 0.5829108953475952 - y: 0.16882555186748505 -} -landmark { - x: 0.5196100473403931 - y: 0.18905554711818695 -} -landmark { - x: 0.5255730152130127 - y: 0.21781699359416962 -} -landmark { - x: 0.6037929058074951 - y: 0.19473719596862793 -} -landmark { - x: 0.5876762866973877 - y: 0.19139209389686584 -} -landmark { - x: 0.5751091241836548 - y: 0.19363407790660858 -} -landmark { - x: 0.5546884536743164 - y: 0.19245529174804688 -} -landmark { - x: 0.5392851829528809 - y: 0.1895231455564499 -} -landmark { - x: 0.5278844833374023 - y: 0.18625354766845703 -} -landmark { - x: 0.5057379603385925 - y: 0.1781947761774063 -} -landmark { - x: 0.6048473119735718 - y: 0.21124869585037231 -} -landmark { - x: 0.5907138586044312 - y: 0.16841086745262146 -} -landmark { - x: 0.5022064447402954 - y: 0.22984524071216583 -} -landmark { - x: 0.5283474326133728 - y: 0.20210015773773193 -} -landmark { - x: 0.6115738749504089 - y: 0.18162932991981506 -} -landmark { - x: 0.5195339322090149 - y: 0.18231819570064545 -} -landmark { - x: 0.5375816822052002 - y: 0.21782614290714264 -} -landmark { - x: 0.5763388872146606 - y: 0.17313891649246216 -} -landmark { - x: 0.5256010890007019 - y: 0.21164333820343018 -} -landmark { - x: 0.6055155396461487 - y: 0.24294571578502655 -} -landmark { - x: 0.5247454643249512 - y: 0.17330946028232574 -} -landmark { - x: 0.5155066251754761 - y: 0.2076435387134552 -} -landmark { - x: 0.5793409943580627 - y: 0.2845692038536072 -} -landmark { - x: 0.5759055614471436 - y: 0.29750049114227295 -} -landmark { - x: 0.6111270785331726 - y: 0.2174876481294632 -} -landmark { - x: 0.5920206904411316 - y: 0.27248382568359375 -} -landmark { - x: 0.6044109463691711 - y: 0.16451576352119446 -} -landmark { - x: 0.5379455089569092 - y: 0.32187914848327637 -} -landmark { - x: 0.5009083151817322 - y: 0.23150548338890076 -} -landmark { - x: 0.5388193130493164 - y: 0.2075142115354538 -} -landmark { - x: 0.6010805368423462 - y: 0.17926880717277527 -} -landmark { - x: 0.5587165355682373 - y: 0.1739545315504074 -} -landmark { - x: 0.5504672527313232 - y: 0.1740606129169464 -} -landmark { - x: 0.5489862561225891 - y: 0.2640478312969208 -} -landmark { - x: 0.6047309637069702 - y: 0.22963711619377136 -} -landmark { - x: 0.5178425908088684 - y: 0.33742693066596985 -} -landmark { - x: 0.5490055084228516 - y: 0.32128745317459106 -} -landmark { - x: 0.5615330934524536 - y: 0.31093350052833557 -} -landmark { - x: 0.5419384241104126 - y: 0.17382308840751648 -} -landmark { - x: 0.5334516763687134 - y: 0.17353390157222748 -} -landmark { - x: 0.5276540517807007 - y: 0.17363135516643524 -} -landmark { - x: 0.5970168709754944 - y: 0.1669829785823822 -} -landmark { - x: 0.534781813621521 - y: 0.1685568243265152 -} -landmark { - x: 0.5438240766525269 - y: 0.16664481163024902 -} -landmark { - x: 0.5528751015663147 - y: 0.1663939356803894 -} -landmark { - x: 0.5614930391311646 - y: 0.1677042543888092 -} -landmark { - x: 0.5666491389274597 - y: 0.16964749991893768 -} -landmark { - x: 0.609628438949585 - y: 0.16061675548553467 -} -landmark { - x: 0.564093291759491 - y: 0.17360816895961761 -} -landmark { - x: 0.5377736687660217 - y: 0.23875702917575836 -} -landmark { - x: 0.5254501700401306 - y: 0.22414736449718475 -} -landmark { - x: 0.5143731236457825 - y: 0.23756679892539978 -} -landmark { - x: 0.5653495788574219 - y: 0.2981868386268616 -} -landmark { - x: 0.5520498752593994 - y: 0.3098434507846832 -} -landmark { - x: 0.5187731385231018 - y: 0.3300126791000366 -} -landmark { - x: 0.5873982310295105 - y: 0.2838709354400635 -} -landmark { - x: 0.5280466079711914 - y: 0.17138159275054932 -} -landmark { - x: 0.5129181146621704 - y: 0.19168895483016968 -} -landmark { - x: 0.5351779460906982 - y: 0.33067697286605835 -} -landmark { - x: 0.6082624197006226 - y: 0.2374051958322525 -} -landmark { - x: 0.5241615772247314 - y: 0.27171289920806885 -} -landmark { - x: 0.5266141891479492 - y: 0.27379295229911804 -} -landmark { - x: 0.5287306904792786 - y: 0.27710697054862976 -} -landmark { - x: 0.5302250385284424 - y: 0.2814483940601349 -} -landmark { - x: 0.5311165452003479 - y: 0.2923078238964081 -} -landmark { - x: 0.5454117655754089 - y: 0.25298070907592773 -} -landmark { - x: 0.5476760268211365 - y: 0.2521646320819855 -} -landmark { - x: 0.5496358871459961 - y: 0.2512545585632324 -} -landmark { - x: 0.5587289333343506 - y: 0.24860405921936035 -} -landmark { - x: 0.5932571291923523 - y: 0.2326328307390213 -} -landmark { - x: 0.5122402906417847 - y: 0.18319103121757507 -} -landmark { - x: 0.5172679424285889 - y: 0.16791534423828125 -} -landmark { - x: 0.5236363410949707 - y: 0.16878443956375122 -} -landmark { - x: 0.5432159900665283 - y: 0.2535431385040283 -} -landmark { - x: 0.5924032330513 - y: 0.2564423978328705 -} -landmark { - x: 0.5086346864700317 - y: 0.16782936453819275 -} -landmark { - x: 0.5341810584068298 - y: 0.3003450036048889 -} -landmark { - x: 0.5053712725639343 - y: 0.18729014694690704 -} -landmark { - x: 0.52167147397995 - y: 0.20450185239315033 -} -landmark { - x: 0.5157896280288696 - y: 0.30877235531806946 -} -landmark { - x: 0.5582626461982727 - y: 0.27466052770614624 -} -landmark { - x: 0.5460183620452881 - y: 0.22478628158569336 -} -landmark { - x: 0.5473951101303101 - y: 0.2886243462562561 -} -landmark { - x: 0.5703837871551514 - y: 0.22428280115127563 -} -landmark { - x: 0.5565193295478821 - y: 0.23365134000778198 -} -landmark { - x: 0.5793741345405579 - y: 0.23838575184345245 -} -landmark { - x: 0.5181536674499512 - y: 0.31991374492645264 -} -landmark { - x: 0.529270589351654 - y: 0.2083507925271988 -} -landmark { - x: 0.5643376111984253 - y: 0.28466808795928955 -} -landmark { - x: 0.5508216619491577 - y: 0.2982299327850342 -} -landmark { - x: 0.5677818059921265 - y: 0.2603156566619873 -} -landmark { - x: 0.6016684770584106 - y: 0.24588267505168915 -} -landmark { - x: 0.5789523720741272 - y: 0.2651319205760956 -} -landmark { - x: 0.602148175239563 - y: 0.2560369372367859 -} -landmark { - x: 0.56609046459198 - y: 0.24309805035591125 -} -landmark { - x: 0.5201491713523865 - y: 0.19698408246040344 -} -landmark { - x: 0.5222632884979248 - y: 0.22236193716526031 -} -landmark { - x: 0.5303317904472351 - y: 0.22283218801021576 -} -landmark { - x: 0.5164652466773987 - y: 0.2168644219636917 -} -landmark { - x: 0.5255054235458374 - y: 0.16204464435577393 -} -landmark { - x: 0.5431230068206787 - y: 0.15799033641815186 -} -landmark { - x: 0.5587068796157837 - y: 0.1575303077697754 -} -landmark { - x: 0.5712164640426636 - y: 0.15946003794670105 -} -landmark { - x: 0.5793605446815491 - y: 0.16321201622486115 -} -landmark { - x: 0.5836203098297119 - y: 0.17538323998451233 -} -landmark { - x: 0.6116812825202942 - y: 0.19925269484519958 -} -landmark { - x: 0.5768086910247803 - y: 0.1841469705104828 -} -landmark { - x: 0.5665790438652039 - y: 0.18563959002494812 -} -landmark { - x: 0.5525866746902466 - y: 0.18530991673469543 -} -landmark { - x: 0.5391771793365479 - y: 0.1836860328912735 -} -landmark { - x: 0.5287002325057983 - y: 0.18165405094623566 -} -landmark { - x: 0.5215262174606323 - y: 0.1793644279241562 -} -landmark { - x: 0.6107636094093323 - y: 0.20149710774421692 -} -landmark { - x: 0.5306032299995422 - y: 0.22430402040481567 -} -landmark { - x: 0.5133494138717651 - y: 0.19946259260177612 -} -landmark { - x: 0.5138635635375977 - y: 0.22376540303230286 -} -landmark { - x: 0.5081169009208679 - y: 0.22823618352413177 -} -landmark { - x: 0.5141233205795288 - y: 0.2252192348241806 -} -landmark { - x: 0.5282045006752014 - y: 0.22643950581550598 -} -landmark { - x: 0.5058442950248718 - y: 0.2291848063468933 -} -landmark { - x: 0.5046985745429993 - y: 0.23070128262043 -} -landmark { - x: 0.5212299823760986 - y: 0.17368891835212708 -} -landmark { - x: 0.5159528255462646 - y: 0.17531193792819977 -} -landmark { - x: 0.5131956338882446 - y: 0.17659029364585876 -} -landmark { - x: 0.5694946050643921 - y: 0.1711338460445404 -} -landmark { - x: 0.5771481990814209 - y: 0.1686939150094986 -} -landmark { - x: 0.44258421659469604 - y: 0.17109623551368713 -} -landmark { - x: 0.4528672397136688 - y: 0.17074066400527954 -} -landmark { - x: 0.44241371750831604 - y: 0.1644783616065979 -} -landmark { - x: 0.4321419894695282 - y: 0.17140239477157593 -} -landmark { - x: 0.44269701838493347 - y: 0.17766216397285461 -} -landmark { - x: 0.5497130155563354 - y: 0.1701773703098297 -} -landmark { - x: 0.5605489611625671 - y: 0.17030568420886993 -} -landmark { - x: 0.5500174760818481 - y: 0.1636604368686676 -} -landmark { - x: 0.538931667804718 - y: 0.17000019550323486 -} -landmark { - x: 0.5495142340660095 - y: 0.17672255635261536 -} diff --git a/third_party/external_files.bzl b/third_party/external_files.bzl index 8da42125c..2d9cfc1fe 100644 --- a/third_party/external_files.bzl +++ b/third_party/external_files.bzl @@ -364,6 +364,18 @@ def external_files(): urls = ["https://storage.googleapis.com/mediapipe-assets/face_landmarker.task?generation=1678323583183024"], ) + http_file( + name = "com_google_mediapipe_face_landmarker_v2_task", + sha256 = "af23fc7c1ff21d034deaa2b7fc1d56bb670ce69a4cbdc9579b6f1afd680835f4", + urls = ["https://storage.googleapis.com/mediapipe-assets/face_landmarker_v2.task?generation=1681322464758457"], + ) + + http_file( + name = "com_google_mediapipe_face_landmarker_v2_with_blendshapes_task", + sha256 = "b261925d4aad812b47a0e8d58c1baa1223270a5d1f663d78338bc881c003879d", + urls = ["https://storage.googleapis.com/mediapipe-assets/face_landmarker_v2_with_blendshapes.task?generation=1681322467931433"], + ) + http_file( name = "com_google_mediapipe_face_landmarker_with_blendshapes_task", sha256 = "b44e4cae6f5822456d60f33e7c852640d78c7e342aee7eacc22589451a0b9dc2", @@ -382,6 +394,12 @@ def external_files(): urls = ["https://storage.googleapis.com/mediapipe-assets/face_landmark_with_attention.tflite?generation=1676415468821650"], ) + http_file( + name = "com_google_mediapipe_facemesh2_lite_iris_faceflag_2023_02_14_tflite", + sha256 = "bc5ee5de06d8c3a5465c3155227615b164480a52105a2b3df5748250ab4d914f", + urls = ["https://storage.googleapis.com/mediapipe-assets/facemesh2_lite_iris_faceflag_2023_02_14.tflite?generation=1681322470818178"], + ) + http_file( name = "com_google_mediapipe_face_stylization_dummy_tflite", sha256 = "f57fd2d5638def25466f6fec142eb3397d8ad99a9bd0a9344b622bad7c3f0376", @@ -863,9 +881,9 @@ def external_files(): ) http_file( - name = "com_google_mediapipe_portrait_expected_blendshapes_with_attention_pbtxt", + name = "com_google_mediapipe_portrait_expected_blendshapes_pbtxt", sha256 = "3f8f698d8ed81346c6f13d1cc85190fd4a58b021e664d336997d29818b8ffbb6", - urls = ["https://storage.googleapis.com/mediapipe-assets/portrait_expected_blendshapes_with_attention.pbtxt?generation=1678323598426417"], + urls = ["https://storage.googleapis.com/mediapipe-assets/portrait_expected_blendshapes.pbtxt?generation=1681322480981015"], ) http_file( @@ -875,21 +893,15 @@ def external_files(): ) http_file( - name = "com_google_mediapipe_portrait_expected_face_geometry_with_attention_pbtxt", - sha256 = "7ed1eed98e61e0a10811bb611c895d87c8023f398a36db01b6d9ba2e1ab09e16", - urls = ["https://storage.googleapis.com/mediapipe-assets/portrait_expected_face_geometry_with_attention.pbtxt?generation=1678737486927530"], + name = "com_google_mediapipe_portrait_expected_face_geometry_pbtxt", + sha256 = "f1045ae7a479248d5c6729102401308c042068304f393934370be53587ccec9a", + urls = ["https://storage.googleapis.com/mediapipe-assets/portrait_expected_face_geometry.pbtxt?generation=1681322483632218"], ) http_file( name = "com_google_mediapipe_portrait_expected_face_landmarks_pbtxt", - sha256 = "4ac8587379bd072c36cda0d7345f5e592fae51b30522475e0b49c18aab108ce7", - urls = ["https://storage.googleapis.com/mediapipe-assets/portrait_expected_face_landmarks.pbtxt?generation=1676316357333369"], - ) - - http_file( - name = "com_google_mediapipe_portrait_expected_face_landmarks_with_attention_pbtxt", sha256 = "dae959456f001015278f3a1535bd03c9fa0990a3df951135645ce23293be0613", - urls = ["https://storage.googleapis.com/mediapipe-assets/portrait_expected_face_landmarks_with_attention.pbtxt?generation=1678218367300928"], + urls = ["https://storage.googleapis.com/mediapipe-assets/portrait_expected_face_landmarks.pbtxt?generation=1681322486192872"], ) http_file(