diff --git a/.gitignore b/.gitignore index 603c4a8..bf12ac9 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,6 @@ *.slo *.lo *.o -*.obj *.vs # Precompiled Headers diff --git a/example/MonkeyFlat.mtl b/example/MonkeyFlat.mtl new file mode 100644 index 0000000..70d3ba1 --- /dev/null +++ b/example/MonkeyFlat.mtl @@ -0,0 +1,10 @@ +# Blender MTL File: 'None' +# Material Count: 1 + +newmtl None +Ns 0 +Ka 0.000000 0.000000 0.000000 +Kd 0.8 0.8 0.8 +Ks 0.8 0.8 0.8 +d 1 +illum 2 diff --git a/example/MonkeyFlat.obj b/example/MonkeyFlat.obj new file mode 100644 index 0000000..b67107b --- /dev/null +++ b/example/MonkeyFlat.obj @@ -0,0 +1,1512 @@ +# Blender v2.79 (sub 0) OBJ File: '' +# www.blender.org +mtllib MonkeyFlat.mtl +o Suzanne +v 0.437500 0.164062 0.765625 +v -0.437500 0.164062 0.765625 +v 0.500000 0.093750 0.687500 +v -0.500000 0.093750 0.687500 +v 0.546875 0.054688 0.578125 +v -0.546875 0.054688 0.578125 +v 0.351562 -0.023438 0.617188 +v -0.351562 -0.023438 0.617188 +v 0.351562 0.031250 0.718750 +v -0.351562 0.031250 0.718750 +v 0.351562 0.132812 0.781250 +v -0.351562 0.132812 0.781250 +v 0.273438 0.164062 0.796875 +v -0.273438 0.164062 0.796875 +v 0.203125 0.093750 0.742188 +v -0.203125 0.093750 0.742188 +v 0.156250 0.054688 0.648438 +v -0.156250 0.054688 0.648438 +v 0.078125 0.242188 0.656250 +v -0.078125 0.242188 0.656250 +v 0.140625 0.242188 0.742188 +v -0.140625 0.242188 0.742188 +v 0.242188 0.242188 0.796875 +v -0.242188 0.242188 0.796875 +v 0.273438 0.328125 0.796875 +v -0.273438 0.328125 0.796875 +v 0.203125 0.390625 0.742188 +v -0.203125 0.390625 0.742188 +v 0.156250 0.437500 0.648438 +v -0.156250 0.437500 0.648438 +v 0.351562 0.515625 0.617188 +v -0.351562 0.515625 0.617188 +v 0.351562 0.453125 0.718750 +v -0.351562 0.453125 0.718750 +v 0.351562 0.359375 0.781250 +v -0.351562 0.359375 0.781250 +v 0.437500 0.328125 0.765625 +v -0.437500 0.328125 0.765625 +v 0.500000 0.390625 0.687500 +v -0.500000 0.390625 0.687500 +v 0.546875 0.437500 0.578125 +v -0.546875 0.437500 0.578125 +v 0.625000 0.242188 0.562500 +v -0.625000 0.242188 0.562500 +v 0.562500 0.242188 0.671875 +v -0.562500 0.242188 0.671875 +v 0.468750 0.242188 0.757812 +v -0.468750 0.242188 0.757812 +v 0.476562 0.242188 0.773438 +v -0.476562 0.242188 0.773438 +v 0.445312 0.335938 0.781250 +v -0.445312 0.335938 0.781250 +v 0.351562 0.375000 0.804688 +v -0.351562 0.375000 0.804688 +v 0.265625 0.335938 0.820312 +v -0.265625 0.335938 0.820312 +v 0.226562 0.242188 0.820312 +v -0.226562 0.242188 0.820312 +v 0.265625 0.156250 0.820312 +v -0.265625 0.156250 0.820312 +v 0.351562 0.242188 0.828125 +v -0.351562 0.242188 0.828125 +v 0.351562 0.117188 0.804688 +v -0.351562 0.117188 0.804688 +v 0.445312 0.156250 0.781250 +v -0.445312 0.156250 0.781250 +v 0.000000 0.429688 0.742188 +v 0.000000 0.351562 0.820312 +v 0.000000 -0.679688 0.734375 +v 0.000000 -0.320312 0.781250 +v 0.000000 -0.187500 0.796875 +v 0.000000 -0.773438 0.718750 +v 0.000000 0.406250 0.601562 +v 0.000000 0.570312 0.570312 +v 0.000000 0.898438 -0.546875 +v 0.000000 0.562500 -0.851562 +v 0.000000 0.070312 -0.828125 +v 0.000000 -0.382812 -0.351562 +v 0.203125 -0.187500 0.562500 +v -0.203125 -0.187500 0.562500 +v 0.312500 -0.437500 0.570312 +v -0.312500 -0.437500 0.570312 +v 0.351562 -0.695312 0.570312 +v -0.351562 -0.695312 0.570312 +v 0.367188 -0.890625 0.531250 +v -0.367188 -0.890625 0.531250 +v 0.328125 -0.945312 0.523438 +v -0.328125 -0.945312 0.523438 +v 0.179688 -0.968750 0.554688 +v -0.179688 -0.968750 0.554688 +v 0.000000 -0.984375 0.578125 +v 0.437500 -0.140625 0.531250 +v -0.437500 -0.140625 0.531250 +v 0.632812 -0.039062 0.539062 +v -0.632812 -0.039062 0.539062 +v 0.828125 0.148438 0.445312 +v -0.828125 0.148438 0.445312 +v 0.859375 0.429688 0.593750 +v -0.859375 0.429688 0.593750 +v 0.710938 0.484375 0.625000 +v -0.710938 0.484375 0.625000 +v 0.492188 0.601562 0.687500 +v -0.492188 0.601562 0.687500 +v 0.320312 0.757812 0.734375 +v -0.320312 0.757812 0.734375 +v 0.156250 0.718750 0.757812 +v -0.156250 0.718750 0.757812 +v 0.062500 0.492188 0.750000 +v -0.062500 0.492188 0.750000 +v 0.164062 0.414062 0.773438 +v -0.164062 0.414062 0.773438 +v 0.125000 0.304688 0.765625 +v -0.125000 0.304688 0.765625 +v 0.203125 0.093750 0.742188 +v -0.203125 0.093750 0.742188 +v 0.375000 0.015625 0.703125 +v -0.375000 0.015625 0.703125 +v 0.492188 0.062500 0.671875 +v -0.492188 0.062500 0.671875 +v 0.625000 0.187500 0.648438 +v -0.625000 0.187500 0.648438 +v 0.640625 0.296875 0.648438 +v -0.640625 0.296875 0.648438 +v 0.601562 0.375000 0.664062 +v -0.601562 0.375000 0.664062 +v 0.429688 0.437500 0.718750 +v -0.429688 0.437500 0.718750 +v 0.250000 0.468750 0.757812 +v -0.250000 0.468750 0.757812 +v 0.000000 -0.765625 0.734375 +v 0.109375 -0.718750 0.734375 +v -0.109375 -0.718750 0.734375 +v 0.117188 -0.835938 0.710938 +v -0.117188 -0.835938 0.710938 +v 0.062500 -0.882812 0.695312 +v -0.062500 -0.882812 0.695312 +v 0.000000 -0.890625 0.687500 +v 0.000000 -0.195312 0.750000 +v 0.000000 -0.140625 0.742188 +v 0.101562 -0.148438 0.742188 +v -0.101562 -0.148438 0.742188 +v 0.125000 -0.226562 0.750000 +v -0.125000 -0.226562 0.750000 +v 0.085938 -0.289062 0.742188 +v -0.085938 -0.289062 0.742188 +v 0.398438 -0.046875 0.671875 +v -0.398438 -0.046875 0.671875 +v 0.617188 0.054688 0.625000 +v -0.617188 0.054688 0.625000 +v 0.726562 0.203125 0.601562 +v -0.726562 0.203125 0.601562 +v 0.742188 0.375000 0.656250 +v -0.742188 0.375000 0.656250 +v 0.687500 0.414062 0.726562 +v -0.687500 0.414062 0.726562 +v 0.437500 0.546875 0.796875 +v -0.437500 0.546875 0.796875 +v 0.312500 0.640625 0.835938 +v -0.312500 0.640625 0.835938 +v 0.203125 0.617188 0.851562 +v -0.203125 0.617188 0.851562 +v 0.101562 0.429688 0.843750 +v -0.101562 0.429688 0.843750 +v 0.125000 -0.101562 0.812500 +v -0.125000 -0.101562 0.812500 +v 0.210938 -0.445312 0.710938 +v -0.210938 -0.445312 0.710938 +v 0.250000 -0.703125 0.687500 +v -0.250000 -0.703125 0.687500 +v 0.265625 -0.820312 0.664062 +v -0.265625 -0.820312 0.664062 +v 0.234375 -0.914062 0.632812 +v -0.234375 -0.914062 0.632812 +v 0.164062 -0.929688 0.632812 +v -0.164062 -0.929688 0.632812 +v 0.000000 -0.945312 0.640625 +v 0.000000 0.046875 0.726562 +v 0.000000 0.210938 0.765625 +v 0.328125 0.476562 0.742188 +v -0.328125 0.476562 0.742188 +v 0.164062 0.140625 0.750000 +v -0.164062 0.140625 0.750000 +v 0.132812 0.210938 0.757812 +v -0.132812 0.210938 0.757812 +v 0.117188 -0.687500 0.734375 +v -0.117188 -0.687500 0.734375 +v 0.078125 -0.445312 0.750000 +v -0.078125 -0.445312 0.750000 +v 0.000000 -0.445312 0.750000 +v 0.000000 -0.328125 0.742188 +v 0.093750 -0.273438 0.781250 +v -0.093750 -0.273438 0.781250 +v 0.132812 -0.226562 0.796875 +v -0.132812 -0.226562 0.796875 +v 0.109375 -0.132812 0.781250 +v -0.109375 -0.132812 0.781250 +v 0.039062 -0.125000 0.781250 +v -0.039062 -0.125000 0.781250 +v 0.000000 -0.203125 0.828125 +v 0.046875 -0.148438 0.812500 +v -0.046875 -0.148438 0.812500 +v 0.093750 -0.156250 0.812500 +v -0.093750 -0.156250 0.812500 +v 0.109375 -0.226562 0.828125 +v -0.109375 -0.226562 0.828125 +v 0.078125 -0.250000 0.804688 +v -0.078125 -0.250000 0.804688 +v 0.000000 -0.289062 0.804688 +v 0.257812 -0.312500 0.554688 +v -0.257812 -0.312500 0.554688 +v 0.164062 -0.242188 0.710938 +v -0.164062 -0.242188 0.710938 +v 0.179688 -0.312500 0.710938 +v -0.179688 -0.312500 0.710938 +v 0.234375 -0.250000 0.554688 +v -0.234375 -0.250000 0.554688 +v 0.000000 -0.875000 0.687500 +v 0.046875 -0.867188 0.687500 +v -0.046875 -0.867188 0.687500 +v 0.093750 -0.820312 0.710938 +v -0.093750 -0.820312 0.710938 +v 0.093750 -0.742188 0.726562 +v -0.093750 -0.742188 0.726562 +v 0.000000 -0.781250 0.656250 +v 0.093750 -0.750000 0.664062 +v -0.093750 -0.750000 0.664062 +v 0.093750 -0.812500 0.640625 +v -0.093750 -0.812500 0.640625 +v 0.046875 -0.851562 0.632812 +v -0.046875 -0.851562 0.632812 +v 0.000000 -0.859375 0.632812 +v 0.171875 0.218750 0.781250 +v -0.171875 0.218750 0.781250 +v 0.187500 0.156250 0.773438 +v -0.187500 0.156250 0.773438 +v 0.335938 0.429688 0.757812 +v -0.335938 0.429688 0.757812 +v 0.273438 0.421875 0.773438 +v -0.273438 0.421875 0.773438 +v 0.421875 0.398438 0.773438 +v -0.421875 0.398438 0.773438 +v 0.562500 0.351562 0.695312 +v -0.562500 0.351562 0.695312 +v 0.585938 0.289062 0.687500 +v -0.585938 0.289062 0.687500 +v 0.578125 0.195312 0.679688 +v -0.578125 0.195312 0.679688 +v 0.476562 0.101562 0.718750 +v -0.476562 0.101562 0.718750 +v 0.375000 0.062500 0.742188 +v -0.375000 0.062500 0.742188 +v 0.226562 0.109375 0.781250 +v -0.226562 0.109375 0.781250 +v 0.179688 0.296875 0.781250 +v -0.179688 0.296875 0.781250 +v 0.210938 0.375000 0.781250 +v -0.210938 0.375000 0.781250 +v 0.234375 0.359375 0.757812 +v -0.234375 0.359375 0.757812 +v 0.195312 0.296875 0.757812 +v -0.195312 0.296875 0.757812 +v 0.242188 0.125000 0.757812 +v -0.242188 0.125000 0.757812 +v 0.375000 0.085938 0.726562 +v -0.375000 0.085938 0.726562 +v 0.460938 0.117188 0.703125 +v -0.460938 0.117188 0.703125 +v 0.546875 0.210938 0.671875 +v -0.546875 0.210938 0.671875 +v 0.554688 0.281250 0.671875 +v -0.554688 0.281250 0.671875 +v 0.531250 0.335938 0.679688 +v -0.531250 0.335938 0.679688 +v 0.414062 0.390625 0.750000 +v -0.414062 0.390625 0.750000 +v 0.281250 0.398438 0.765625 +v -0.281250 0.398438 0.765625 +v 0.335938 0.406250 0.750000 +v -0.335938 0.406250 0.750000 +v 0.203125 0.171875 0.750000 +v -0.203125 0.171875 0.750000 +v 0.195312 0.226562 0.750000 +v -0.195312 0.226562 0.750000 +v 0.109375 0.460938 0.609375 +v -0.109375 0.460938 0.609375 +v 0.195312 0.664062 0.617188 +v -0.195312 0.664062 0.617188 +v 0.335938 0.687500 0.593750 +v -0.335938 0.687500 0.593750 +v 0.484375 0.554688 0.554688 +v -0.484375 0.554688 0.554688 +v 0.679688 0.453125 0.492188 +v -0.679688 0.453125 0.492188 +v 0.796875 0.406250 0.460938 +v -0.796875 0.406250 0.460938 +v 0.773438 0.164062 0.375000 +v -0.773438 0.164062 0.375000 +v 0.601562 0.000000 0.414062 +v -0.601562 0.000000 0.414062 +v 0.437500 -0.093750 0.468750 +v -0.437500 -0.093750 0.468750 +v 0.000000 0.898438 0.289062 +v 0.000000 0.984375 -0.078125 +v 0.000000 -0.195312 -0.671875 +v 0.000000 -0.460938 0.187500 +v 0.000000 -0.976562 0.460938 +v 0.000000 -0.804688 0.343750 +v 0.000000 -0.570312 0.320312 +v 0.000000 -0.484375 0.281250 +v 0.851562 0.234375 0.054688 +v -0.851562 0.234375 0.054688 +v 0.859375 0.320312 -0.046875 +v -0.859375 0.320312 -0.046875 +v 0.773438 0.265625 -0.437500 +v -0.773438 0.265625 -0.437500 +v 0.460938 0.437500 -0.703125 +v -0.460938 0.437500 -0.703125 +v 0.734375 -0.046875 0.070312 +v -0.734375 -0.046875 0.070312 +v 0.593750 -0.125000 -0.164062 +v -0.593750 -0.125000 -0.164062 +v 0.640625 -0.007812 -0.429688 +v -0.640625 -0.007812 -0.429688 +v 0.335938 0.054688 -0.664062 +v -0.335938 0.054688 -0.664062 +v 0.234375 -0.351562 0.406250 +v -0.234375 -0.351562 0.406250 +v 0.179688 -0.414062 0.257812 +v -0.179688 -0.414062 0.257812 +v 0.289062 -0.710938 0.382812 +v -0.289062 -0.710938 0.382812 +v 0.250000 -0.500000 0.390625 +v -0.250000 -0.500000 0.390625 +v 0.328125 -0.914062 0.398438 +v -0.328125 -0.914062 0.398438 +v 0.140625 -0.757812 0.367188 +v -0.140625 -0.757812 0.367188 +v 0.125000 -0.539062 0.359375 +v -0.125000 -0.539062 0.359375 +v 0.164062 -0.945312 0.437500 +v -0.164062 -0.945312 0.437500 +v 0.218750 -0.281250 0.429688 +v -0.218750 -0.281250 0.429688 +v 0.210938 -0.226562 0.468750 +v -0.210938 -0.226562 0.468750 +v 0.203125 -0.171875 0.500000 +v -0.203125 -0.171875 0.500000 +v 0.210938 -0.390625 0.164062 +v -0.210938 -0.390625 0.164062 +v 0.296875 -0.312500 -0.265625 +v -0.296875 -0.312500 -0.265625 +v 0.343750 -0.148438 -0.539062 +v -0.343750 -0.148438 -0.539062 +v 0.453125 0.867188 -0.382812 +v -0.453125 0.867188 -0.382812 +v 0.453125 0.929688 -0.070312 +v -0.453125 0.929688 -0.070312 +v 0.453125 0.851562 0.234375 +v -0.453125 0.851562 0.234375 +v 0.460938 0.523438 0.429688 +v -0.460938 0.523438 0.429688 +v 0.726562 0.406250 0.335938 +v -0.726562 0.406250 0.335938 +v 0.632812 0.453125 0.281250 +v -0.632812 0.453125 0.281250 +v 0.640625 0.703125 0.054688 +v -0.640625 0.703125 0.054688 +v 0.796875 0.562500 0.125000 +v -0.796875 0.562500 0.125000 +v 0.796875 0.617188 -0.117188 +v -0.796875 0.617188 -0.117188 +v 0.640625 0.750000 -0.195312 +v -0.640625 0.750000 -0.195312 +v 0.640625 0.679688 -0.445312 +v -0.640625 0.679688 -0.445312 +v 0.796875 0.539062 -0.359375 +v -0.796875 0.539062 -0.359375 +v 0.617188 0.328125 -0.585938 +v -0.617188 0.328125 -0.585938 +v 0.484375 0.023438 -0.546875 +v -0.484375 0.023438 -0.546875 +v 0.820312 0.328125 -0.203125 +v -0.820312 0.328125 -0.203125 +v 0.406250 -0.171875 0.148438 +v -0.406250 -0.171875 0.148438 +v 0.429688 -0.195312 -0.210938 +v -0.429688 -0.195312 -0.210938 +v 0.890625 0.406250 -0.234375 +v -0.890625 0.406250 -0.234375 +v 0.773438 -0.140625 -0.125000 +v -0.773438 -0.140625 -0.125000 +v 1.039062 -0.101562 -0.328125 +v -1.039062 -0.101562 -0.328125 +v 1.281250 0.054688 -0.429688 +v -1.281250 0.054688 -0.429688 +v 1.351562 0.320312 -0.421875 +v -1.351562 0.320312 -0.421875 +v 1.234375 0.507812 -0.421875 +v -1.234375 0.507812 -0.421875 +v 1.023438 0.476562 -0.312500 +v -1.023438 0.476562 -0.312500 +v 1.015625 0.414062 -0.289062 +v -1.015625 0.414062 -0.289062 +v 1.187500 0.437500 -0.390625 +v -1.187500 0.437500 -0.390625 +v 1.265625 0.289062 -0.406250 +v -1.265625 0.289062 -0.406250 +v 1.210938 0.078125 -0.406250 +v -1.210938 0.078125 -0.406250 +v 1.031250 -0.039062 -0.304688 +v -1.031250 -0.039062 -0.304688 +v 0.828125 -0.070312 -0.132812 +v -0.828125 -0.070312 -0.132812 +v 0.921875 0.359375 -0.218750 +v -0.921875 0.359375 -0.218750 +v 0.945312 0.304688 -0.289062 +v -0.945312 0.304688 -0.289062 +v 0.882812 -0.023438 -0.210938 +v -0.882812 -0.023438 -0.210938 +v 1.039062 0.000000 -0.367188 +v -1.039062 0.000000 -0.367188 +v 1.187500 0.093750 -0.445312 +v -1.187500 0.093750 -0.445312 +v 1.234375 0.250000 -0.445312 +v -1.234375 0.250000 -0.445312 +v 1.171875 0.359375 -0.437500 +v -1.171875 0.359375 -0.437500 +v 1.023438 0.343750 -0.359375 +v -1.023438 0.343750 -0.359375 +v 0.843750 0.289062 -0.210938 +v -0.843750 0.289062 -0.210938 +v 0.835938 0.171875 -0.273438 +v -0.835938 0.171875 -0.273438 +v 0.757812 0.093750 -0.273438 +v -0.757812 0.093750 -0.273438 +v 0.820312 0.085938 -0.273438 +v -0.820312 0.085938 -0.273438 +v 0.843750 0.015625 -0.273438 +v -0.843750 0.015625 -0.273438 +v 0.812500 -0.015625 -0.273438 +v -0.812500 -0.015625 -0.273438 +v 0.726562 0.000000 -0.070312 +v -0.726562 0.000000 -0.070312 +v 0.718750 -0.023438 -0.171875 +v -0.718750 -0.023438 -0.171875 +v 0.718750 0.039062 -0.187500 +v -0.718750 0.039062 -0.187500 +v 0.796875 0.203125 -0.210938 +v -0.796875 0.203125 -0.210938 +v 0.890625 0.242188 -0.265625 +v -0.890625 0.242188 -0.265625 +v 0.890625 0.234375 -0.320312 +v -0.890625 0.234375 -0.320312 +v 0.812500 -0.015625 -0.320312 +v -0.812500 -0.015625 -0.320312 +v 0.851562 0.015625 -0.320312 +v -0.851562 0.015625 -0.320312 +v 0.828125 0.078125 -0.320312 +v -0.828125 0.078125 -0.320312 +v 0.765625 0.093750 -0.320312 +v -0.765625 0.093750 -0.320312 +v 0.843750 0.171875 -0.320312 +v -0.843750 0.171875 -0.320312 +v 1.039062 0.328125 -0.414062 +v -1.039062 0.328125 -0.414062 +v 1.187500 0.343750 -0.484375 +v -1.187500 0.343750 -0.484375 +v 1.257812 0.242188 -0.492188 +v -1.257812 0.242188 -0.492188 +v 1.210938 0.085938 -0.484375 +v -1.210938 0.085938 -0.484375 +v 1.046875 0.000000 -0.421875 +v -1.046875 0.000000 -0.421875 +v 0.882812 -0.015625 -0.265625 +v -0.882812 -0.015625 -0.265625 +v 0.953125 0.289062 -0.343750 +v -0.953125 0.289062 -0.343750 +v 0.890625 0.109375 -0.328125 +v -0.890625 0.109375 -0.328125 +v 0.937500 0.062500 -0.335938 +v -0.937500 0.062500 -0.335938 +v 1.000000 0.125000 -0.367188 +v -1.000000 0.125000 -0.367188 +v 0.960938 0.171875 -0.351562 +v -0.960938 0.171875 -0.351562 +v 1.015625 0.234375 -0.375000 +v -1.015625 0.234375 -0.375000 +v 1.054688 0.187500 -0.382812 +v -1.054688 0.187500 -0.382812 +v 1.109375 0.210938 -0.390625 +v -1.109375 0.210938 -0.390625 +v 1.085938 0.273438 -0.390625 +v -1.085938 0.273438 -0.390625 +v 1.023438 0.437500 -0.484375 +v -1.023438 0.437500 -0.484375 +v 1.250000 0.468750 -0.546875 +v -1.250000 0.468750 -0.546875 +v 1.367188 0.296875 -0.500000 +v -1.367188 0.296875 -0.500000 +v 1.312500 0.054688 -0.531250 +v -1.312500 0.054688 -0.531250 +v 1.039062 -0.085938 -0.492188 +v -1.039062 -0.085938 -0.492188 +v 0.789062 -0.125000 -0.328125 +v -0.789062 -0.125000 -0.328125 +v 0.859375 0.382812 -0.382812 +v -0.859375 0.382812 -0.382812 +vn 0.6650 -0.2008 0.7194 +vn -0.6650 -0.2008 0.7194 +vn 0.8294 -0.3036 0.4689 +vn -0.8294 -0.3036 0.4689 +vn 0.4155 -0.7933 0.4449 +vn -0.4155 -0.7933 0.4449 +vn 0.3600 -0.5089 0.7820 +vn -0.3600 -0.5089 0.7820 +vn -0.0787 -0.5394 0.8384 +vn 0.0787 -0.5394 0.8384 +vn -0.2696 -0.8413 0.4685 +vn 0.2696 -0.8413 0.4685 +vn -0.7707 -0.3352 0.5420 +vn 0.7707 -0.3352 0.5420 +vn -0.4689 -0.1940 0.8617 +vn 0.4689 -0.1940 0.8617 +vn -0.4767 0.1907 0.8581 +vn 0.4767 0.1907 0.8581 +vn -0.7672 0.3264 0.5521 +vn 0.7672 0.3264 0.5521 +vn -0.2519 0.8173 0.5182 +vn 0.2519 0.8173 0.5182 +vn -0.0949 0.5696 0.8164 +vn 0.0949 0.5696 0.8164 +vn 0.3667 0.5370 0.7597 +vn -0.3667 0.5370 0.7597 +vn 0.4141 0.7672 0.4898 +vn -0.4141 0.7672 0.4898 +vn 0.8277 0.2952 0.4771 +vn -0.8277 0.2952 0.4771 +vn 0.6713 0.1971 0.7145 +vn -0.6713 0.1971 0.7145 +vn 0.8111 0.3244 -0.4867 +vn -0.8111 0.3244 -0.4867 +vn 0.2052 0.8206 -0.5334 +vn -0.2052 0.8206 -0.5334 +vn -0.4223 0.7806 -0.4607 +vn 0.4223 0.7806 -0.4607 +vn -0.8241 0.3225 -0.4658 +vn 0.8241 0.3225 -0.4658 +vn -0.8137 -0.3487 -0.4650 +vn 0.8137 -0.3487 -0.4650 +vn -0.4223 -0.7806 -0.4607 +vn 0.4223 -0.7806 -0.4607 +vn 0.2052 -0.8206 -0.5334 +vn -0.2052 -0.8206 -0.5334 +vn 0.7995 -0.3510 -0.4875 +vn -0.7995 -0.3510 -0.4875 +vn 0.4000 -0.0623 0.9144 +vn -0.4000 -0.0623 0.9144 +vn 0.3069 -0.1754 0.9354 +vn -0.3069 -0.1754 0.9354 +vn 0.0945 -0.1835 0.9785 +vn -0.0945 -0.1835 0.9785 +vn -0.0624 -0.0283 0.9977 +vn 0.0624 -0.0283 0.9977 +vn -0.0624 0.0260 0.9977 +vn 0.0624 0.0260 0.9977 +vn 0.0996 0.1729 0.9799 +vn -0.0996 0.1729 0.9799 +vn 0.3036 0.1656 0.9383 +vn -0.3036 0.1656 0.9383 +vn 0.4002 0.0572 0.9147 +vn -0.4002 0.0572 0.9147 +vn 0.1231 -0.8616 0.4924 +vn -0.1231 -0.8616 0.4924 +vn 0.2190 -0.8647 0.4520 +vn -0.2190 -0.8647 0.4520 +vn 0.5902 -0.4550 0.6668 +vn -0.5902 -0.4550 0.6668 +vn 0.7689 -0.0506 0.6374 +vn -0.7689 -0.0506 0.6374 +vn 0.7796 0.0900 0.6197 +vn -0.7796 0.0900 0.6197 +vn 0.3241 -0.8188 0.4739 +vn -0.3241 -0.8188 0.4739 +vn 0.3857 -0.6629 0.6417 +vn -0.3857 -0.6629 0.6417 +vn 0.6895 -0.4193 0.5906 +vn -0.6895 -0.4193 0.5906 +vn 0.6588 -0.3634 0.6588 +vn -0.6588 -0.3634 0.6588 +vn 0.5465 0.3707 0.7509 +vn -0.5465 0.3707 0.7509 +vn 0.5064 0.6464 0.5706 +vn -0.5064 0.6464 0.5706 +vn 0.6092 0.5167 0.6015 +vn -0.6092 0.5167 0.6015 +vn -0.0441 0.6610 0.7491 +vn 0.0441 0.6610 0.7491 +vn -0.7246 0.3187 0.6110 +vn 0.7246 0.3187 0.6110 +vn -0.5880 0.5554 0.5880 +vn 0.5880 0.5554 0.5880 +vn 0.5361 -0.3909 0.7482 +vn -0.5361 -0.3909 0.7482 +vn 0.2207 -0.4690 0.8552 +vn -0.2207 -0.4690 0.8552 +vn -0.0794 -0.5321 0.8429 +vn 0.0794 -0.5321 0.8429 +vn -0.0825 -0.6575 0.7490 +vn 0.0825 -0.6575 0.7490 +vn 0.0457 -0.5667 0.8226 +vn -0.0457 -0.5667 0.8226 +vn 0.2784 -0.2130 0.9365 +vn -0.2784 -0.2130 0.9365 +vn 0.3813 -0.1824 0.9063 +vn -0.3813 -0.1824 0.9063 +vn 0.3357 -0.2878 0.8969 +vn -0.3357 -0.2878 0.8969 +vn 0.3762 0.0603 0.9246 +vn -0.3762 0.0603 0.9246 +vn -0.1352 0.2680 0.9539 +vn 0.1352 0.2680 0.9539 +vn 0.3961 -0.4321 0.8102 +vn -0.3961 -0.4321 0.8102 +vn 0.1856 -0.2474 0.9510 +vn -0.1856 -0.2474 0.9510 +vn 0.0099 -0.1948 0.9808 +vn -0.0099 -0.1948 0.9808 +vn 0.0721 -0.6966 0.7138 +vn -0.0721 -0.6966 0.7138 +vn 0.1863 -0.5723 0.7986 +vn -0.1863 -0.5723 0.7986 +vn 0.3157 -0.2708 0.9094 +vn -0.3157 -0.2708 0.9094 +vn 0.3063 -0.0265 0.9516 +vn -0.3063 -0.0265 0.9516 +vn 0.3266 -0.1306 0.9361 +vn -0.3266 -0.1306 0.9361 +vn -0.0137 0.0574 0.9983 +vn 0.0137 0.0574 0.9983 +vn -0.0026 -0.0656 0.9978 +vn 0.0026 -0.0656 0.9978 +vn 0.0000 0.0000 1.0000 +vn 0.8174 -0.5744 -0.0442 +vn -0.8174 -0.5744 -0.0442 +vn 0.9494 0.2297 -0.2144 +vn -0.9494 0.2297 -0.2144 +vn 0.0825 0.9073 -0.4124 +vn -0.0825 0.9073 -0.4124 +vn -0.8836 0.3555 0.3047 +vn 0.8836 0.3555 0.3047 +vn 0.4207 -0.8797 0.2218 +vn -0.4207 -0.8797 0.2218 +vn 0.2873 -0.5747 0.7663 +vn -0.2873 -0.5747 0.7663 +vn -0.6542 0.6019 0.4580 +vn 0.6542 0.6019 0.4580 +vn 0.1052 0.7892 0.6051 +vn -0.1052 0.7892 0.6051 +vn 0.7582 0.2916 0.5832 +vn -0.7582 0.2916 0.5832 +vn 0.3889 -0.7130 0.5834 +vn -0.3889 -0.7130 0.5834 +vn 0.0463 0.2314 0.9718 +vn -0.0463 0.2314 0.9718 +vn 0.0335 -0.4018 0.9151 +vn -0.0335 -0.4018 0.9151 +vn -0.4452 -0.1610 0.8809 +vn 0.4452 -0.1610 0.8809 +vn -0.2182 -0.4364 0.8729 +vn 0.2182 -0.4364 0.8729 +vn 0.4341 -0.1290 0.8916 +vn -0.4341 -0.1290 0.8916 +vn 0.3008 0.0501 0.9524 +vn -0.3008 0.0501 0.9524 +vn 0.8123 0.3010 0.4996 +vn -0.8123 0.3010 0.4996 +vn 0.8753 0.2574 0.4093 +vn -0.8753 0.2574 0.4093 +vn 0.9385 0.1601 0.3060 +vn -0.9385 0.1601 0.3060 +vn 0.2237 -0.6539 0.7227 +vn -0.2237 -0.6539 0.7227 +vn -0.1536 -0.1997 0.9677 +vn 0.1536 -0.1997 0.9677 +vn -0.2733 -0.1025 0.9565 +vn 0.2733 -0.1025 0.9565 +vn -0.0976 0.1952 0.9759 +vn 0.0976 0.1952 0.9759 +vn -0.1582 0.9494 0.2713 +vn 0.1582 0.9494 0.2713 +vn -0.6934 0.7082 0.1328 +vn 0.6934 0.7082 0.1328 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.3051 -0.9450 0.1181 +vn -0.3051 -0.9450 0.1181 +vn 0.0298 -0.2981 0.9541 +vn -0.0298 -0.2981 0.9541 +vn 0.1353 -0.3479 0.9277 +vn -0.1353 -0.3479 0.9277 +vn -0.5085 -0.2755 0.8158 +vn 0.5085 -0.2755 0.8158 +vn -0.3843 -0.0419 0.9223 +vn 0.3843 -0.0419 0.9223 +vn -0.2083 0.0374 0.9774 +vn 0.2083 0.0374 0.9774 +vn -0.5721 -0.4767 0.6674 +vn 0.5721 -0.4767 0.6674 +vn -0.1369 -0.7531 0.6435 +vn 0.1369 -0.7531 0.6435 +vn 0.4088 -0.6071 0.6814 +vn -0.4088 -0.6071 0.6814 +vn 0.5740 -0.4130 0.7070 +vn -0.5740 -0.4130 0.7070 +vn 0.5665 -0.0968 0.8183 +vn -0.5665 -0.0968 0.8183 +vn 0.5703 0.1180 0.8129 +vn -0.5703 0.1180 0.8129 +vn 0.4823 0.5621 0.6719 +vn -0.4823 0.5621 0.6719 +vn 0.2604 0.6114 0.7473 +vn -0.2604 0.6114 0.7473 +vn 0.1640 0.3607 0.9182 +vn -0.1640 0.3607 0.9182 +vn -0.0178 0.2495 0.9682 +vn 0.0178 0.2495 0.9682 +vn 0.3273 -0.4166 0.8481 +vn -0.3273 -0.4166 0.8481 +vn 0.2811 -0.2610 0.9235 +vn -0.2811 -0.2610 0.9235 +vn -0.2542 -0.6514 0.7149 +vn 0.2542 -0.6514 0.7149 +vn -0.0260 -0.8455 0.5333 +vn 0.0260 -0.8455 0.5333 +vn -0.3518 -0.2606 0.8991 +vn 0.3518 -0.2606 0.8991 +vn -0.3523 -0.0110 0.9358 +vn 0.3523 -0.0110 0.9358 +vn -0.1317 0.4608 0.8777 +vn 0.1317 0.4608 0.8777 +vn -0.0342 0.6159 0.7870 +vn 0.0342 0.6159 0.7870 +vn 0.3603 0.5836 0.7277 +vn -0.3603 0.5836 0.7277 +vn 0.4988 0.5300 0.6858 +vn -0.4988 0.5300 0.6858 +vn 0.6667 -0.3333 0.6667 +vn -0.6667 -0.3333 0.6667 +vn 0.8165 -0.0731 0.5727 +vn -0.8165 -0.0731 0.5727 +vn 0.7840 0.1161 0.6098 +vn -0.7840 0.1161 0.6098 +vn -0.5306 0.8111 -0.2461 +vn 0.5306 0.8111 -0.2461 +vn -0.8511 0.3695 -0.3730 +vn 0.8511 0.3695 -0.3730 +vn -0.2446 0.8675 -0.4331 +vn 0.2446 0.8675 -0.4331 +vn 0.5924 0.7465 -0.3030 +vn -0.5924 0.7465 -0.3030 +vn 0.3685 0.8758 -0.3118 +vn -0.3685 0.8758 -0.3118 +vn 0.2821 0.9151 -0.2880 +vn -0.2821 0.9151 -0.2880 +vn 0.8561 0.1340 -0.4991 +vn -0.8561 0.1340 -0.4991 +vn 0.5342 -0.7233 -0.4376 +vn -0.5342 -0.7233 -0.4376 +vn 0.3849 -0.8131 -0.4368 +vn -0.3849 -0.8131 -0.4368 +vn 0.2335 -0.5806 -0.7800 +vn -0.2335 -0.5806 -0.7800 +vn 0.2449 -0.0583 -0.9678 +vn -0.2449 -0.0583 -0.9678 +vn 0.1163 -0.4535 -0.8837 +vn -0.1163 -0.4535 -0.8837 +vn 0.1152 -0.9836 -0.1388 +vn -0.1152 -0.9836 -0.1388 +vn 0.1184 -0.9669 -0.2260 +vn -0.1184 -0.9669 -0.2260 +vn 0.9597 -0.0085 -0.2808 +vn -0.9597 -0.0085 -0.2808 +vn 0.9319 0.1629 -0.3242 +vn -0.9319 0.1629 -0.3242 +vn 0.1626 0.0207 -0.9865 +vn -0.1626 0.0207 -0.9865 +vn -0.0188 -0.2177 -0.9758 +vn 0.0188 -0.2177 -0.9758 +vn 0.7538 -0.2926 -0.5884 +vn -0.7538 -0.2926 -0.5884 +vn 0.9196 0.1379 -0.3678 +vn -0.9196 0.1379 -0.3678 +vn 0.9297 0.3127 -0.1944 +vn -0.9297 0.3127 -0.1944 +vn 0.9120 0.3376 -0.2329 +vn -0.9120 0.3376 -0.2329 +vn 0.9407 0.3338 -0.0607 +vn -0.9407 0.3338 -0.0607 +vn 0.1761 -0.8805 -0.4402 +vn -0.1761 -0.8805 -0.4402 +vn 0.3708 -0.4733 -0.7991 +vn -0.3708 -0.4733 -0.7991 +vn 0.3107 -0.8284 -0.4660 +vn -0.3107 -0.8284 -0.4660 +vn 0.2793 -0.9515 -0.1287 +vn -0.2793 -0.9515 -0.1287 +vn 0.3139 -0.9321 -0.1807 +vn -0.3139 -0.9321 -0.1807 +vn 0.9762 -0.2083 -0.0609 +vn -0.9762 -0.2083 -0.0609 +vn 0.8267 -0.5066 0.2447 +vn -0.8267 -0.5066 0.2447 +vn 0.3449 -0.1158 -0.9315 +vn -0.3449 -0.1158 -0.9315 +vn 0.1203 0.9644 0.2355 +vn -0.1203 0.9644 0.2355 +vn 0.1275 0.9744 -0.1851 +vn -0.1275 0.9744 -0.1851 +vn 0.3492 0.5947 -0.7241 +vn -0.3492 0.5947 -0.7241 +vn 0.4153 0.8981 -0.1449 +vn -0.4153 0.8981 -0.1449 +vn 0.1845 0.7036 0.6863 +vn -0.1845 0.7036 0.6863 +vn 0.6056 0.7794 0.1608 +vn -0.6056 0.7794 0.1608 +vn 0.7033 0.6806 -0.2053 +vn -0.7033 0.6806 -0.2053 +vn 0.6679 0.2007 -0.7166 +vn -0.6679 0.2007 -0.7166 +vn 0.4948 0.4342 -0.7528 +vn -0.4948 0.4342 -0.7528 +vn 0.6423 0.7459 -0.1761 +vn -0.6423 0.7459 -0.1761 +vn 0.7182 0.6788 0.1530 +vn -0.7182 0.6788 0.1530 +vn 0.7388 0.3972 0.5444 +vn -0.7388 0.3972 0.5444 +vn 0.3428 0.9261 -0.1579 +vn -0.3428 0.9261 -0.1579 +vn 0.2270 0.5740 0.7867 +vn -0.2270 0.5740 0.7867 +vn -0.1722 0.1046 -0.9795 +vn 0.1722 0.1046 -0.9795 +vn 0.0425 0.9150 0.4013 +vn -0.0425 0.9150 0.4013 +vn -0.1616 0.1847 0.9694 +vn 0.1616 0.1847 0.9694 +vn 0.9791 0.1973 0.0483 +vn -0.9791 0.1973 0.0483 +vn 0.9470 0.0918 0.3079 +vn -0.9470 0.0918 0.3079 +vn 0.9794 0.1905 -0.0661 +vn -0.9794 0.1905 -0.0661 +vn 0.9938 0.0312 -0.1070 +vn -0.9938 0.0312 -0.1070 +vn 0.7116 -0.7008 0.0501 +vn -0.7116 -0.7008 0.0501 +vn 0.3722 -0.9243 0.0847 +vn -0.3722 -0.9243 0.0847 +vn 0.4465 -0.8644 0.2310 +vn -0.4465 -0.8644 0.2310 +vn 0.6066 -0.7578 0.2405 +vn -0.6066 -0.7578 0.2405 +vn 0.7325 -0.6368 0.2407 +vn -0.7325 -0.6368 0.2407 +vn 0.2637 -0.4499 0.8533 +vn -0.2637 -0.4499 0.8533 +vn 0.5568 -0.3181 -0.7673 +vn -0.5568 -0.3181 -0.7673 +vn 0.5004 -0.2807 -0.8190 +vn -0.5004 -0.2807 -0.8190 +vn 0.3190 -0.8494 -0.4205 +vn -0.3190 -0.8494 -0.4205 +vn 0.7198 -0.6356 -0.2793 +vn -0.7198 -0.6356 -0.2793 +vn 0.4972 -0.4408 -0.7473 +vn -0.4972 -0.4408 -0.7473 +vn 0.3506 0.3807 0.8557 +vn -0.3506 0.3807 0.8557 +vn 0.4566 0.1715 0.8730 +vn -0.4566 0.1715 0.8730 +vn 0.2583 0.1055 0.9603 +vn -0.2583 0.1055 0.9603 +vn 0.2455 -0.0802 0.9661 +vn -0.2455 -0.0802 0.9661 +vn 0.4643 -0.0599 0.8837 +vn -0.4643 -0.0599 0.8837 +vn 0.6225 -0.3045 0.7210 +vn -0.6225 -0.3045 0.7210 +vn 0.4500 0.6590 0.6027 +vn -0.4500 0.6590 0.6027 +vn -0.2667 0.8309 0.4884 +vn 0.2667 0.8309 0.4884 +vn -0.8284 0.2291 0.5111 +vn 0.8284 0.2291 0.5111 +vn -0.5251 -0.3566 0.7727 +vn 0.5251 -0.3566 0.7727 +vn 0.4546 -0.5665 0.6873 +vn -0.4546 -0.5665 0.6873 +vn 0.6996 -0.4497 0.5552 +vn -0.6996 -0.4497 0.5552 +vn 0.7220 -0.6827 -0.1126 +vn -0.7220 -0.6827 -0.1126 +vn -0.1919 0.2860 0.9388 +vn 0.1919 0.2860 0.9388 +vn 0.9048 -0.3734 -0.2047 +vn -0.9048 -0.3734 -0.2047 +vn 0.1034 0.1551 0.9825 +vn -0.1034 0.1551 0.9825 +vn 0.0841 0.9318 0.3530 +vn -0.0841 0.9318 0.3530 +vn 0.6446 -0.0883 0.7594 +vn -0.6446 -0.0883 0.7594 +vn 0.4309 0.4740 0.7678 +vn -0.4309 0.4740 0.7678 +vn 0.8032 -0.4847 0.3462 +vn -0.8032 -0.4847 0.3462 +vn 0.5811 -0.4128 0.7014 +vn -0.5811 -0.4128 0.7014 +vn 0.5910 -0.4305 0.6822 +vn -0.5910 -0.4305 0.6822 +vn 0.9818 -0.1804 -0.0591 +vn -0.9818 -0.1804 -0.0591 +vn 0.9105 -0.3965 -0.1175 +vn -0.9105 -0.3965 -0.1175 +vn 0.9972 -0.0181 -0.0725 +vn -0.9972 -0.0181 -0.0725 +vn 0.7313 -0.6543 0.1925 +vn -0.7313 -0.6543 0.1925 +vn 0.7867 -0.6079 0.1073 +vn -0.7867 -0.6079 0.1073 +vn 0.7022 -0.7022 0.1170 +vn -0.7022 -0.7022 0.1170 +vn 0.1840 0.9816 -0.0511 +vn -0.1840 0.9816 -0.0511 +vn 0.9352 0.3301 0.1284 +vn -0.9352 0.3301 0.1284 +vn 0.6633 -0.7463 0.0553 +vn -0.6633 -0.7463 0.0553 +vn -0.0085 0.9970 0.0767 +vn 0.0085 0.9970 0.0767 +vn 0.6237 -0.7061 0.3354 +vn -0.6237 -0.7061 0.3354 +vn 0.2733 -0.8925 0.3587 +vn -0.2733 -0.8925 0.3587 +vn -0.8328 -0.5080 -0.2200 +vn 0.8328 -0.5080 -0.2200 +vn -0.8339 0.2377 -0.4981 +vn 0.8339 0.2377 -0.4981 +vn -0.5655 0.7847 -0.2539 +vn 0.5655 0.7847 -0.2539 +vn -0.0560 0.9962 0.0672 +vn 0.0560 0.9962 0.0672 +vn 0.1445 0.0222 0.9893 +vn -0.1445 0.0222 0.9893 +vn 0.3275 0.0645 0.9427 +vn -0.3275 0.0645 0.9427 +vn 0.3127 0.0232 0.9496 +vn -0.3127 0.0232 0.9496 +vn 0.1710 0.0274 0.9849 +vn -0.1710 0.0274 0.9849 +vn 0.3487 0.2849 0.8929 +vn -0.3487 0.2849 0.8929 +vn 0.4006 -0.0343 0.9156 +vn -0.4006 -0.0343 0.9156 +vn 0.2572 -0.0603 0.9645 +vn -0.2572 -0.0603 0.9645 +vn 0.0637 -0.0106 0.9979 +vn -0.0637 -0.0106 0.9979 +vn -0.3637 0.7039 0.6101 +vn 0.3637 0.7039 0.6101 +vn 0.6299 0.0355 0.7759 +vn -0.6299 0.0355 0.7759 +vn 0.4472 -0.2002 0.8717 +vn -0.4472 -0.2002 0.8717 +vn 0.5072 -0.2141 0.8348 +vn -0.5072 -0.2141 0.8348 +vn 0.5258 0.2619 0.8093 +vn -0.5258 0.2619 0.8093 +vn 0.2980 0.5802 0.7580 +vn -0.2980 0.5802 0.7580 +vn 0.0930 -0.9924 -0.0805 +vn -0.0930 -0.9924 -0.0805 +vn 0.5006 -0.8657 0.0080 +vn -0.5006 -0.8657 0.0080 +vn 0.9285 -0.2497 0.2748 +vn -0.9285 -0.2497 0.2748 +vn 0.8393 0.5424 -0.0378 +vn -0.8393 0.5424 -0.0378 +vn -0.2355 0.9367 -0.2589 +vn 0.2355 0.9367 -0.2589 +vn -0.4499 0.8838 -0.1285 +vn 0.4499 0.8838 -0.1285 +vn -0.5384 -0.0098 -0.8427 +vn 0.5384 -0.0098 -0.8427 +vn -0.1910 -0.0241 -0.9813 +vn 0.1910 -0.0241 -0.9813 +vn 0.4046 0.0266 -0.9141 +vn -0.4046 0.0266 -0.9141 +vn -0.7819 0.6231 0.0197 +vn 0.7819 0.6231 0.0197 +vn 0.5428 -0.2063 -0.8142 +vn -0.5428 -0.2063 -0.8142 +vn -0.2474 -0.9231 -0.2945 +vn 0.2474 -0.9231 -0.2945 +usemtl None +s off +f 47//1 1//1 3//1 45//1 +f 4//2 2//2 48//2 46//2 +f 45//3 3//3 5//3 43//3 +f 6//4 4//4 46//4 44//4 +f 3//5 9//5 7//5 5//5 +f 8//6 10//6 4//6 6//6 +f 1//7 11//7 9//7 3//7 +f 10//8 12//8 2//8 4//8 +f 11//9 13//9 15//9 9//9 +f 16//10 14//10 12//10 10//10 +f 9//11 15//11 17//11 7//11 +f 18//12 16//12 10//12 8//12 +f 15//13 21//13 19//13 17//13 +f 20//14 22//14 16//14 18//14 +f 13//15 23//15 21//15 15//15 +f 22//16 24//16 14//16 16//16 +f 23//17 25//17 27//17 21//17 +f 28//18 26//18 24//18 22//18 +f 21//19 27//19 29//19 19//19 +f 30//20 28//20 22//20 20//20 +f 27//21 33//21 31//21 29//21 +f 32//22 34//22 28//22 30//22 +f 25//23 35//23 33//23 27//23 +f 34//24 36//24 26//24 28//24 +f 35//25 37//25 39//25 33//25 +f 40//26 38//26 36//26 34//26 +f 33//27 39//27 41//27 31//27 +f 42//28 40//28 34//28 32//28 +f 39//29 45//29 43//29 41//29 +f 44//30 46//30 40//30 42//30 +f 37//31 47//31 45//31 39//31 +f 46//32 48//32 38//32 40//32 +f 47//33 37//33 51//33 49//33 +f 52//34 38//34 48//34 50//34 +f 37//35 35//35 53//35 51//35 +f 54//36 36//36 38//36 52//36 +f 35//37 25//37 55//37 53//37 +f 56//38 26//38 36//38 54//38 +f 25//39 23//39 57//39 55//39 +f 58//40 24//40 26//40 56//40 +f 23//41 13//41 59//41 57//41 +f 60//42 14//42 24//42 58//42 +f 13//43 11//43 63//43 59//43 +f 64//44 12//44 14//44 60//44 +f 11//45 1//45 65//45 63//45 +f 66//46 2//46 12//46 64//46 +f 1//47 47//47 49//47 65//47 +f 50//48 48//48 2//48 66//48 +f 61//49 65//49 49//49 +f 50//50 66//50 62//50 +f 63//51 65//51 61//51 +f 62//52 66//52 64//52 +f 61//53 59//53 63//53 +f 64//54 60//54 62//54 +f 61//55 57//55 59//55 +f 60//56 58//56 62//56 +f 61//57 55//57 57//57 +f 58//58 56//58 62//58 +f 61//59 53//59 55//59 +f 56//60 54//60 62//60 +f 61//61 51//61 53//61 +f 54//62 52//62 62//62 +f 61//63 49//63 51//63 +f 52//64 50//64 62//64 +f 89//65 174//65 176//65 91//65 +f 176//66 175//66 90//66 91//66 +f 87//67 172//67 174//67 89//67 +f 175//68 173//68 88//68 90//68 +f 85//69 170//69 172//69 87//69 +f 173//70 171//70 86//70 88//70 +f 83//71 168//71 170//71 85//71 +f 171//72 169//72 84//72 86//72 +f 81//73 166//73 168//73 83//73 +f 169//74 167//74 82//74 84//74 +f 79//75 92//75 146//75 164//75 +f 147//76 93//76 80//76 165//76 +f 92//77 94//77 148//77 146//77 +f 149//78 95//78 93//78 147//78 +f 94//79 96//79 150//79 148//79 +f 151//80 97//80 95//80 149//80 +f 96//81 98//81 152//81 150//81 +f 153//82 99//82 97//82 151//82 +f 98//83 100//83 154//83 152//83 +f 155//84 101//84 99//84 153//84 +f 100//85 102//85 156//85 154//85 +f 157//86 103//86 101//86 155//86 +f 102//87 104//87 158//87 156//87 +f 159//88 105//88 103//88 157//88 +f 104//89 106//89 160//89 158//89 +f 161//90 107//90 105//90 159//90 +f 106//91 108//91 162//91 160//91 +f 163//92 109//92 107//92 161//92 +f 108//93 67//93 68//93 162//93 +f 68//94 67//94 109//94 163//94 +f 110//95 128//95 160//95 162//95 +f 161//96 129//96 111//96 163//96 +f 128//97 179//97 158//97 160//97 +f 159//98 180//98 129//98 161//98 +f 126//99 156//99 158//99 179//99 +f 159//100 157//100 127//100 180//100 +f 124//101 154//101 156//101 126//101 +f 157//102 155//102 125//102 127//102 +f 122//103 152//103 154//103 124//103 +f 155//104 153//104 123//104 125//104 +f 120//105 150//105 152//105 122//105 +f 153//106 151//106 121//106 123//106 +f 118//107 148//107 150//107 120//107 +f 151//108 149//108 119//108 121//108 +f 116//109 146//109 148//109 118//109 +f 149//110 147//110 117//110 119//110 +f 114//111 164//111 146//111 116//111 +f 147//112 165//112 115//112 117//112 +f 114//113 181//113 177//113 164//113 +f 177//114 182//114 115//114 165//114 +f 110//115 162//115 68//115 112//115 +f 68//116 163//116 111//116 113//116 +f 112//117 68//117 178//117 183//117 +f 178//118 68//118 113//118 184//118 +f 177//119 181//119 183//119 178//119 +f 184//120 182//120 177//120 178//120 +f 135//121 137//121 176//121 174//121 +f 176//122 137//122 136//122 175//122 +f 133//123 135//123 174//123 172//123 +f 175//124 136//124 134//124 173//124 +f 131//125 133//125 172//125 170//125 +f 173//126 134//126 132//126 171//126 +f 166//127 187//127 185//127 168//127 +f 186//128 188//128 167//128 169//128 +f 131//129 170//129 168//129 185//129 +f 169//130 171//130 132//130 186//130 +f 144//131 190//131 189//131 187//131 +f 189//132 190//132 145//132 188//132 +f 185//133 187//133 189//133 69//133 +f 189//134 188//134 186//134 69//134 +f 130//135 131//135 185//135 69//135 +f 186//135 132//135 130//135 69//135 +f 142//136 193//136 191//136 144//136 +f 192//137 194//137 143//137 145//137 +f 140//138 195//138 193//138 142//138 +f 194//139 196//139 141//139 143//139 +f 139//140 197//140 195//140 140//140 +f 196//141 198//141 139//141 141//141 +f 138//142 71//142 197//142 139//142 +f 198//143 71//143 138//143 139//143 +f 190//144 144//144 191//144 70//144 +f 192//145 145//145 190//145 70//145 +f 70//146 191//146 206//146 208//146 +f 207//147 192//147 70//147 208//147 +f 71//148 199//148 200//148 197//148 +f 201//149 199//149 71//149 198//149 +f 197//150 200//150 202//150 195//150 +f 203//151 201//151 198//151 196//151 +f 195//152 202//152 204//152 193//152 +f 205//153 203//153 196//153 194//153 +f 193//154 204//154 206//154 191//154 +f 207//155 205//155 194//155 192//155 +f 199//156 204//156 202//156 200//156 +f 203//157 205//157 199//157 201//157 +f 199//158 208//158 206//158 204//158 +f 207//159 208//159 199//159 205//159 +f 139//160 140//160 164//160 177//160 +f 165//161 141//161 139//161 177//161 +f 140//162 142//162 211//162 164//162 +f 212//163 143//163 141//163 165//163 +f 142//164 144//164 213//164 211//164 +f 214//165 145//165 143//165 212//165 +f 144//166 187//166 166//166 213//166 +f 167//167 188//167 145//167 214//167 +f 81//168 209//168 213//168 166//168 +f 214//169 210//169 82//169 167//169 +f 209//170 215//170 211//170 213//170 +f 212//171 216//171 210//171 214//171 +f 79//172 164//172 211//172 215//172 +f 212//173 165//173 80//173 216//173 +f 131//174 130//174 72//174 222//174 +f 72//175 130//175 132//175 223//175 +f 133//176 131//176 222//176 220//176 +f 223//177 132//177 134//177 221//177 +f 135//178 133//178 220//178 218//178 +f 221//179 134//179 136//179 219//179 +f 137//180 135//180 218//180 217//180 +f 219//181 136//181 137//181 217//181 +f 217//182 218//182 229//182 231//182 +f 230//183 219//183 217//183 231//183 +f 218//184 220//184 227//184 229//184 +f 228//185 221//185 219//185 230//185 +f 220//186 222//186 225//186 227//186 +f 226//187 223//187 221//187 228//187 +f 222//188 72//188 224//188 225//188 +f 224//189 72//189 223//189 226//189 +f 224//190 231//190 229//190 225//190 +f 230//191 231//191 224//191 226//191 +f 225//192 229//192 227//192 +f 228//193 230//193 226//193 +f 183//194 181//194 234//194 232//194 +f 235//195 182//195 184//195 233//195 +f 112//196 183//196 232//196 254//196 +f 233//197 184//197 113//197 255//197 +f 110//198 112//198 254//198 256//198 +f 255//199 113//199 111//199 257//199 +f 181//200 114//200 252//200 234//200 +f 253//201 115//201 182//201 235//201 +f 114//202 116//202 250//202 252//202 +f 251//203 117//203 115//203 253//203 +f 116//204 118//204 248//204 250//204 +f 249//205 119//205 117//205 251//205 +f 118//206 120//206 246//206 248//206 +f 247//207 121//207 119//207 249//207 +f 120//208 122//208 244//208 246//208 +f 245//209 123//209 121//209 247//209 +f 122//210 124//210 242//210 244//210 +f 243//211 125//211 123//211 245//211 +f 124//212 126//212 240//212 242//212 +f 241//213 127//213 125//213 243//213 +f 126//214 179//214 236//214 240//214 +f 237//215 180//215 127//215 241//215 +f 179//216 128//216 238//216 236//216 +f 239//217 129//217 180//217 237//217 +f 128//218 110//218 256//218 238//218 +f 257//219 111//219 129//219 239//219 +f 238//220 256//220 258//220 276//220 +f 259//221 257//221 239//221 277//221 +f 236//222 238//222 276//222 278//222 +f 277//223 239//223 237//223 279//223 +f 240//224 236//224 278//224 274//224 +f 279//225 237//225 241//225 275//225 +f 242//226 240//226 274//226 272//226 +f 275//227 241//227 243//227 273//227 +f 244//228 242//228 272//228 270//228 +f 273//229 243//229 245//229 271//229 +f 246//230 244//230 270//230 268//230 +f 271//231 245//231 247//231 269//231 +f 248//232 246//232 268//232 266//232 +f 269//233 247//233 249//233 267//233 +f 250//234 248//234 266//234 264//234 +f 267//235 249//235 251//235 265//235 +f 252//236 250//236 264//236 262//236 +f 265//237 251//237 253//237 263//237 +f 234//238 252//238 262//238 280//238 +f 263//239 253//239 235//239 281//239 +f 256//240 254//240 260//240 258//240 +f 261//241 255//241 257//241 259//241 +f 254//242 232//242 282//242 260//242 +f 283//243 233//243 255//243 261//243 +f 232//244 234//244 280//244 282//244 +f 281//245 235//245 233//245 283//245 +f 67//246 108//246 284//246 73//246 +f 285//247 109//247 67//247 73//247 +f 108//248 106//248 286//248 284//248 +f 287//249 107//249 109//249 285//249 +f 106//250 104//250 288//250 286//250 +f 289//251 105//251 107//251 287//251 +f 104//252 102//252 290//252 288//252 +f 291//253 103//253 105//253 289//253 +f 102//254 100//254 292//254 290//254 +f 293//255 101//255 103//255 291//255 +f 100//256 98//256 294//256 292//256 +f 295//257 99//257 101//257 293//257 +f 98//258 96//258 296//258 294//258 +f 297//259 97//259 99//259 295//259 +f 96//260 94//260 298//260 296//260 +f 299//261 95//261 97//261 297//261 +f 94//262 92//262 300//262 298//262 +f 301//263 93//263 95//263 299//263 +f 308//264 309//264 328//264 338//264 +f 329//265 309//265 308//265 339//265 +f 307//266 308//266 338//266 336//266 +f 339//267 308//267 307//267 337//267 +f 306//268 307//268 336//268 340//268 +f 337//269 307//269 306//269 341//269 +f 89//270 91//270 306//270 340//270 +f 306//271 91//271 90//271 341//271 +f 87//272 89//272 340//272 334//272 +f 341//273 90//273 88//273 335//273 +f 85//274 87//274 334//274 330//274 +f 335//275 88//275 86//275 331//275 +f 83//276 85//276 330//276 332//276 +f 331//277 86//277 84//277 333//277 +f 330//278 336//278 338//278 332//278 +f 339//279 337//279 331//279 333//279 +f 330//280 334//280 340//280 336//280 +f 341//281 335//281 331//281 337//281 +f 326//282 332//282 338//282 328//282 +f 339//283 333//283 327//283 329//283 +f 81//284 83//284 332//284 326//284 +f 333//285 84//285 82//285 327//285 +f 209//286 342//286 344//286 215//286 +f 345//287 343//287 210//287 216//287 +f 81//288 326//288 342//288 209//288 +f 343//289 327//289 82//289 210//289 +f 79//290 215//290 344//290 346//290 +f 345//291 216//291 80//291 347//291 +f 79//292 346//292 300//292 92//292 +f 301//293 347//293 80//293 93//293 +f 77//294 324//294 352//294 304//294 +f 353//295 325//295 77//295 304//295 +f 304//296 352//296 350//296 78//296 +f 351//297 353//297 304//297 78//297 +f 78//298 350//298 348//298 305//298 +f 349//299 351//299 78//299 305//299 +f 305//300 348//300 328//300 309//300 +f 329//301 349//301 305//301 309//301 +f 326//302 328//302 348//302 342//302 +f 349//303 329//303 327//303 343//303 +f 296//304 298//304 318//304 310//304 +f 319//305 299//305 297//305 311//305 +f 76//306 316//306 324//306 77//306 +f 325//307 317//307 76//307 77//307 +f 302//308 358//308 356//308 303//308 +f 357//309 359//309 302//309 303//309 +f 303//310 356//310 354//310 75//310 +f 355//311 357//311 303//311 75//311 +f 75//312 354//312 316//312 76//312 +f 317//313 355//313 75//313 76//313 +f 292//314 294//314 362//314 364//314 +f 363//315 295//315 293//315 365//315 +f 364//316 362//316 368//316 366//316 +f 369//317 363//317 365//317 367//317 +f 366//318 368//318 370//318 372//318 +f 371//319 369//319 367//319 373//319 +f 372//320 370//320 376//320 374//320 +f 377//321 371//321 373//321 375//321 +f 314//322 378//322 374//322 376//322 +f 375//323 379//323 315//323 377//323 +f 316//324 354//324 374//324 378//324 +f 375//325 355//325 317//325 379//325 +f 354//326 356//326 372//326 374//326 +f 373//327 357//327 355//327 375//327 +f 356//328 358//328 366//328 372//328 +f 367//329 359//329 357//329 373//329 +f 358//330 360//330 364//330 366//330 +f 365//331 361//331 359//331 367//331 +f 290//332 292//332 364//332 360//332 +f 365//333 293//333 291//333 361//333 +f 74//334 360//334 358//334 302//334 +f 359//335 361//335 74//335 302//335 +f 284//336 286//336 288//336 290//336 +f 289//337 287//337 285//337 291//337 +f 284//338 290//338 360//338 74//338 +f 361//339 291//339 285//339 74//339 +f 73//340 284//340 74//340 +f 74//341 285//341 73//341 +f 294//342 296//342 310//342 362//342 +f 311//343 297//343 295//343 363//343 +f 310//344 312//344 368//344 362//344 +f 369//345 313//345 311//345 363//345 +f 312//346 382//346 370//346 368//346 +f 371//347 383//347 313//347 369//347 +f 314//348 376//348 370//348 382//348 +f 371//349 377//349 315//349 383//349 +f 348//350 350//350 386//350 384//350 +f 387//351 351//351 349//351 385//351 +f 318//352 384//352 386//352 320//352 +f 387//353 385//353 319//353 321//353 +f 298//354 300//354 384//354 318//354 +f 385//355 301//355 299//355 319//355 +f 300//356 344//356 342//356 384//356 +f 343//357 345//357 301//357 385//357 +f 342//358 348//358 384//358 +f 385//359 349//359 343//359 +f 300//360 346//360 344//360 +f 345//361 347//361 301//361 +f 314//362 322//362 380//362 378//362 +f 381//363 323//363 315//363 379//363 +f 316//364 378//364 380//364 324//364 +f 381//365 379//365 317//365 325//365 +f 320//366 386//366 380//366 322//366 +f 381//367 387//367 321//367 323//367 +f 350//368 352//368 380//368 386//368 +f 381//369 353//369 351//369 387//369 +f 324//370 380//370 352//370 +f 353//371 381//371 325//371 +f 400//372 388//372 414//372 402//372 +f 415//373 389//373 401//373 403//373 +f 400//374 402//374 404//374 398//374 +f 405//375 403//375 401//375 399//375 +f 398//376 404//376 406//376 396//376 +f 407//377 405//377 399//377 397//377 +f 396//378 406//378 408//378 394//378 +f 409//379 407//379 397//379 395//379 +f 394//380 408//380 410//380 392//380 +f 411//381 409//381 395//381 393//381 +f 392//382 410//382 412//382 390//382 +f 413//383 411//383 393//383 391//383 +f 410//384 420//384 418//384 412//384 +f 419//385 421//385 411//385 413//385 +f 408//386 422//386 420//386 410//386 +f 421//387 423//387 409//387 411//387 +f 406//388 424//388 422//388 408//388 +f 423//389 425//389 407//389 409//389 +f 404//390 426//390 424//390 406//390 +f 425//391 427//391 405//391 407//391 +f 402//392 428//392 426//392 404//392 +f 427//393 429//393 403//393 405//393 +f 402//394 414//394 416//394 428//394 +f 417//395 415//395 403//395 429//395 +f 318//396 320//396 444//396 442//396 +f 445//397 321//397 319//397 443//397 +f 320//398 390//398 412//398 444//398 +f 413//399 391//399 321//399 445//399 +f 310//400 318//400 442//400 312//400 +f 443//401 319//401 311//401 313//401 +f 382//402 430//402 414//402 388//402 +f 415//403 431//403 383//403 389//403 +f 412//404 418//404 440//404 444//404 +f 441//405 419//405 413//405 445//405 +f 438//406 446//406 444//406 440//406 +f 445//407 447//407 439//407 441//407 +f 434//408 446//408 438//408 436//408 +f 439//409 447//409 435//409 437//409 +f 432//410 448//410 446//410 434//410 +f 447//411 449//411 433//411 435//411 +f 430//412 448//412 432//412 450//412 +f 433//413 449//413 431//413 451//413 +f 414//414 430//414 450//414 416//414 +f 451//415 431//415 415//415 417//415 +f 312//416 448//416 430//416 382//416 +f 431//417 449//417 313//417 383//417 +f 312//418 442//418 446//418 448//418 +f 447//419 443//419 313//419 449//419 +f 442//420 444//420 446//420 +f 447//421 445//421 443//421 +f 416//422 450//422 452//422 476//422 +f 453//423 451//423 417//423 477//423 +f 450//424 432//424 462//424 452//424 +f 463//425 433//425 451//425 453//425 +f 432//426 434//426 460//426 462//426 +f 461//427 435//427 433//427 463//427 +f 434//428 436//428 458//428 460//428 +f 459//429 437//429 435//429 461//429 +f 436//430 438//430 456//430 458//430 +f 457//431 439//431 437//431 459//431 +f 438//432 440//432 454//432 456//432 +f 455//433 441//433 439//433 457//433 +f 440//434 418//434 474//434 454//434 +f 475//435 419//435 441//435 455//435 +f 428//436 416//436 476//436 464//436 +f 477//437 417//437 429//437 465//437 +f 426//438 428//438 464//438 466//438 +f 465//439 429//439 427//439 467//439 +f 424//440 426//440 466//440 468//440 +f 467//441 427//441 425//441 469//441 +f 422//442 424//442 468//442 470//442 +f 469//443 425//443 423//443 471//443 +f 420//444 422//444 470//444 472//444 +f 471//445 423//445 421//445 473//445 +f 418//446 420//446 472//446 474//446 +f 473//447 421//447 419//447 475//447 +f 458//448 456//448 480//448 478//448 +f 481//449 457//449 459//449 479//449 +f 478//450 480//450 482//450 484//450 +f 483//451 481//451 479//451 485//451 +f 484//452 482//452 488//452 486//452 +f 489//453 483//453 485//453 487//453 +f 486//454 488//454 490//454 492//454 +f 491//455 489//455 487//455 493//455 +f 464//456 476//456 486//456 492//456 +f 487//457 477//457 465//457 493//457 +f 452//458 484//458 486//458 476//458 +f 487//459 485//459 453//459 477//459 +f 452//460 462//460 478//460 484//460 +f 479//461 463//461 453//461 485//461 +f 458//462 478//462 462//462 460//462 +f 463//463 479//463 459//463 461//463 +f 454//464 474//464 480//464 456//464 +f 481//465 475//465 455//465 457//465 +f 472//466 482//466 480//466 474//466 +f 481//467 483//467 473//467 475//467 +f 470//468 488//468 482//468 472//468 +f 483//469 489//469 471//469 473//469 +f 468//470 490//470 488//470 470//470 +f 489//471 491//471 469//471 471//471 +f 466//472 492//472 490//472 468//472 +f 491//473 493//473 467//473 469//473 +f 464//474 492//474 466//474 +f 467//475 493//475 465//475 +f 392//476 390//476 504//476 502//476 +f 505//477 391//477 393//477 503//477 +f 394//478 392//478 502//478 500//478 +f 503//479 393//479 395//479 501//479 +f 396//480 394//480 500//480 498//480 +f 501//481 395//481 397//481 499//481 +f 398//482 396//482 498//482 496//482 +f 499//483 397//483 399//483 497//483 +f 400//484 398//484 496//484 494//484 +f 497//485 399//485 401//485 495//485 +f 388//486 400//486 494//486 506//486 +f 495//487 401//487 389//487 507//487 +f 494//488 502//488 504//488 506//488 +f 505//489 503//489 495//489 507//489 +f 494//490 496//490 500//490 502//490 +f 501//491 497//491 495//491 503//491 +f 496//492 498//492 500//492 +f 501//493 499//493 497//493 +f 314//494 382//494 388//494 506//494 +f 389//495 383//495 315//495 507//495 +f 314//496 506//496 504//496 322//496 +f 505//497 507//497 315//497 323//497 +f 320//498 322//498 504//498 390//498 +f 505//499 323//499 321//499 391//499 diff --git a/example/MonkeySmooth.mtl b/example/MonkeySmooth.mtl new file mode 100644 index 0000000..70d3ba1 --- /dev/null +++ b/example/MonkeySmooth.mtl @@ -0,0 +1,10 @@ +# Blender MTL File: 'None' +# Material Count: 1 + +newmtl None +Ns 0 +Ka 0.000000 0.000000 0.000000 +Kd 0.8 0.8 0.8 +Ks 0.8 0.8 0.8 +d 1 +illum 2 diff --git a/example/MonkeySmooth.obj b/example/MonkeySmooth.obj new file mode 100644 index 0000000..d5865ac --- /dev/null +++ b/example/MonkeySmooth.obj @@ -0,0 +1,5998 @@ +# Blender v2.79 (sub 0) OBJ File: '' +# www.blender.org +mtllib MonkeySmooth.mtl +o Suzanne +v 0.492188 0.185547 0.720703 +v -0.492188 0.185547 0.720703 +v 0.558594 0.158203 0.625000 +v -0.558594 0.158203 0.625000 +v 0.437500 0.039062 0.650391 +v -0.437500 0.039062 0.650391 +v 0.410156 0.105469 0.738281 +v -0.410156 0.105469 0.738281 +v 0.294922 0.105469 0.759766 +v -0.294922 0.105469 0.759766 +v 0.265625 0.039062 0.681641 +v -0.265625 0.039062 0.681641 +v 0.144531 0.158203 0.697266 +v -0.144531 0.158203 0.697266 +v 0.214844 0.185547 0.769531 +v -0.214844 0.185547 0.769531 +v 0.214844 0.300781 0.769531 +v -0.214844 0.300781 0.769531 +v 0.144531 0.328125 0.697266 +v -0.144531 0.328125 0.697266 +v 0.265625 0.449219 0.681641 +v -0.265625 0.449219 0.681641 +v 0.294922 0.382812 0.759766 +v -0.294922 0.382812 0.759766 +v 0.410156 0.382812 0.738281 +v -0.410156 0.382812 0.738281 +v 0.437500 0.449219 0.650391 +v -0.437500 0.449219 0.650391 +v 0.558594 0.328125 0.625000 +v -0.558594 0.328125 0.625000 +v 0.492188 0.300781 0.720703 +v -0.492188 0.300781 0.720703 +v 0.457031 0.287109 0.769531 +v -0.457031 0.287109 0.769531 +v 0.396484 0.349609 0.783203 +v -0.396484 0.349609 0.783203 +v 0.310547 0.349609 0.800781 +v -0.310547 0.349609 0.800781 +v 0.251953 0.287109 0.808594 +v -0.251953 0.287109 0.808594 +v 0.251953 0.201172 0.808594 +v -0.251953 0.201172 0.808594 +v 0.310547 0.142578 0.800781 +v -0.310547 0.142578 0.800781 +v 0.396484 0.142578 0.783203 +v -0.396484 0.142578 0.783203 +v 0.457031 0.201172 0.769531 +v -0.457031 0.201172 0.769531 +v 0.424479 0.213542 0.794271 +v -0.424479 0.213542 0.794271 +v 0.382812 0.171875 0.804688 +v -0.382812 0.171875 0.804688 +v 0.322917 0.171875 0.817708 +v -0.322917 0.171875 0.817708 +v 0.281250 0.213542 0.822917 +v -0.281250 0.213542 0.822917 +v 0.281250 0.273438 0.822917 +v -0.281250 0.273438 0.822917 +v 0.322917 0.317708 0.817708 +v -0.322917 0.317708 0.817708 +v 0.382812 0.317708 0.804688 +v -0.382812 0.317708 0.804688 +v 0.424479 0.273438 0.794271 +v -0.424479 0.273438 0.794271 +v 0.085938 -0.957031 0.601562 +v -0.085938 -0.957031 0.601562 +v 0.226562 -0.939453 0.585938 +v -0.226562 -0.939453 0.585938 +v 0.298828 -0.892578 0.587891 +v -0.298828 -0.892578 0.587891 +v 0.308594 -0.777344 0.613281 +v -0.308594 -0.777344 0.613281 +v 0.281250 -0.570312 0.634766 +v -0.281250 -0.570312 0.634766 +v 0.291016 -0.119141 0.644531 +v -0.291016 -0.119141 0.644531 +v 0.521484 -0.042969 0.591797 +v -0.521484 -0.042969 0.591797 +v 0.701172 0.091797 0.552734 +v -0.701172 0.091797 0.552734 +v 0.789062 0.289062 0.574219 +v -0.789062 0.289062 0.574219 +v 0.750000 0.425781 0.650391 +v -0.750000 0.425781 0.650391 +v 0.582031 0.511719 0.708984 +v -0.582031 0.511719 0.708984 +v 0.390625 0.636719 0.763672 +v -0.390625 0.636719 0.763672 +v 0.248047 0.683594 0.794922 +v -0.248047 0.683594 0.794922 +v 0.130859 0.564453 0.800781 +v -0.130859 0.564453 0.800781 +v 0.041016 0.425781 0.789062 +v -0.041016 0.425781 0.789062 +v 0.179688 0.482422 0.806641 +v -0.179688 0.482422 0.806641 +v 0.273438 0.550781 0.796875 +v -0.273438 0.550781 0.796875 +v 0.376953 0.525391 0.773438 +v -0.376953 0.525391 0.773438 +v 0.539062 0.443359 0.726562 +v -0.539062 0.443359 0.726562 +v 0.667969 0.365234 0.673828 +v -0.667969 0.365234 0.673828 +v 0.683594 0.265625 0.638672 +v -0.683594 0.265625 0.638672 +v 0.615234 0.126953 0.636719 +v -0.615234 0.126953 0.636719 +v 0.470703 0.021484 0.667969 +v -0.470703 0.021484 0.667969 +v 0.275391 -0.009766 0.732422 +v -0.275391 -0.009766 0.732422 +v 0.123047 0.044922 0.757812 +v -0.123047 0.044922 0.757812 +v 0.097656 0.375000 0.800781 +v -0.097656 0.375000 0.800781 +v 0.064453 0.269531 0.777344 +v -0.064453 0.269531 0.777344 +v 0.074219 0.152344 0.750000 +v -0.074219 0.152344 0.750000 +v 0.056641 -0.912109 0.664062 +v -0.056641 -0.912109 0.664062 +v 0.144531 -0.890625 0.667969 +v -0.144531 -0.890625 0.667969 +v 0.181641 -0.822266 0.685547 +v -0.181641 -0.822266 0.685547 +v 0.164062 -0.570312 0.720703 +v -0.164062 -0.570312 0.720703 +v 0.185547 -0.732422 0.705078 +v -0.185547 -0.732422 0.705078 +v 0.041016 -0.376953 0.746094 +v -0.041016 -0.376953 0.746094 +v 0.048828 -0.564453 0.742188 +v -0.048828 -0.564453 0.742188 +v 0.056641 -0.712891 0.734375 +v -0.056641 -0.712891 0.734375 +v 0.109375 -0.253906 0.767578 +v -0.109375 -0.253906 0.767578 +v 0.117188 -0.183594 0.767578 +v -0.117188 -0.183594 0.767578 +v 0.062500 -0.136719 0.761719 +v -0.062500 -0.136719 0.761719 +v 0.009766 -0.162109 0.767578 +v -0.009766 -0.162109 0.767578 +v 0.044922 -0.302734 0.761719 +v -0.044922 -0.302734 0.761719 +v 0.042969 -0.283203 0.792969 +v -0.042969 -0.283203 0.792969 +v 0.021484 -0.166016 0.804688 +v -0.021484 -0.166016 0.804688 +v 0.072266 -0.140625 0.796875 +v -0.072266 -0.140625 0.796875 +v 0.111328 -0.185547 0.804688 +v -0.111328 -0.185547 0.804688 +v 0.103516 -0.244141 0.802734 +v -0.103516 -0.244141 0.802734 +v 0.062500 -0.183594 0.820312 +v -0.062500 -0.183594 0.820312 +v 0.046875 -0.242188 0.816406 +v -0.046875 -0.242188 0.816406 +v 0.056641 -0.085938 0.755859 +v -0.056641 -0.085938 0.755859 +v 0.128906 -0.179688 0.753906 +v -0.128906 -0.179688 0.753906 +v 0.138672 -0.267578 0.728516 +v -0.138672 -0.267578 0.728516 +v 0.138672 -0.373047 0.728516 +v -0.138672 -0.373047 0.728516 +v 0.240234 -0.376953 0.636719 +v -0.240234 -0.376953 0.636719 +v 0.208984 -0.279297 0.632812 +v -0.208984 -0.279297 0.632812 +v 0.181641 -0.195312 0.660156 +v -0.181641 -0.195312 0.660156 +v 0.050781 -0.750000 0.728516 +v -0.050781 -0.750000 0.728516 +v 0.103516 -0.779297 0.720703 +v -0.103516 -0.779297 0.720703 +v 0.080078 -0.851562 0.701172 +v -0.080078 -0.851562 0.701172 +v 0.027344 -0.878906 0.689453 +v -0.027344 -0.878906 0.689453 +v 0.023438 -0.863281 0.660156 +v -0.023438 -0.863281 0.660156 +v 0.070312 -0.837891 0.667969 +v -0.070312 -0.837891 0.667969 +v 0.093750 -0.781250 0.685547 +v -0.093750 -0.781250 0.685547 +v 0.046875 -0.761719 0.691406 +v -0.046875 -0.761719 0.691406 +v 0.035156 -0.810547 0.646484 +v -0.035156 -0.810547 0.646484 +v 0.078125 -0.804688 0.645833 +v -0.078125 -0.804688 0.645833 +v 0.164062 0.181641 0.765625 +v -0.164062 0.181641 0.765625 +v 0.152344 0.257812 0.771484 +v -0.152344 0.257812 0.771484 +v 0.169922 0.347656 0.775391 +v -0.169922 0.347656 0.775391 +v 0.195312 0.125000 0.761719 +v -0.195312 0.125000 0.761719 +v 0.294922 0.070312 0.742188 +v -0.294922 0.070312 0.742188 +v 0.429688 0.060547 0.708984 +v -0.429688 0.060547 0.708984 +v 0.542969 0.136719 0.679688 +v -0.542969 0.136719 0.679688 +v 0.607422 0.242188 0.666016 +v -0.607422 0.242188 0.666016 +v 0.597656 0.328125 0.673828 +v -0.597656 0.328125 0.673828 +v 0.503906 0.390625 0.712891 +v -0.503906 0.390625 0.712891 +v 0.378906 0.435547 0.748047 +v -0.378906 0.435547 0.748047 +v 0.296875 0.449219 0.757812 +v -0.296875 0.449219 0.757812 +v 0.224609 0.419922 0.771484 +v -0.224609 0.419922 0.771484 +v 0.250000 0.388672 0.769531 +v -0.250000 0.388672 0.769531 +v 0.306641 0.414062 0.761719 +v -0.306641 0.414062 0.761719 +v 0.376953 0.406250 0.757812 +v -0.376953 0.406250 0.757812 +v 0.482422 0.369141 0.724609 +v -0.482422 0.369141 0.724609 +v 0.558594 0.314453 0.683594 +v -0.558594 0.314453 0.683594 +v 0.566406 0.244141 0.677734 +v -0.566406 0.244141 0.677734 +v 0.515625 0.156250 0.693359 +v -0.515625 0.156250 0.693359 +v 0.421875 0.091797 0.722656 +v -0.421875 0.091797 0.722656 +v 0.304688 0.095703 0.751953 +v -0.304688 0.095703 0.751953 +v 0.214844 0.140625 0.765625 +v -0.214844 0.140625 0.765625 +v 0.205078 0.332031 0.769531 +v -0.205078 0.332031 0.769531 +v 0.185547 0.259766 0.767578 +v -0.185547 0.259766 0.767578 +v 0.189453 0.193359 0.763672 +v -0.189453 0.193359 0.763672 +v 0.042969 0.447266 0.675781 +v -0.042969 0.447266 0.675781 +v 0.130859 0.583984 0.683594 +v -0.130859 0.583984 0.683594 +v 0.251953 0.707031 0.675781 +v -0.251953 0.707031 0.675781 +v 0.408203 0.650391 0.642578 +v -0.408203 0.650391 0.642578 +v 0.591797 0.523438 0.589844 +v -0.591797 0.523438 0.589844 +v 0.761719 0.443359 0.542969 +v -0.761719 0.443359 0.542969 +v 0.814453 0.287109 0.468750 +v -0.814453 0.287109 0.468750 +v 0.708984 0.068359 0.443359 +v -0.708984 0.068359 0.443359 +v 0.527344 -0.068359 0.488281 +v -0.527344 -0.068359 0.488281 +v 0.076172 -0.501953 0.304688 +v -0.076172 -0.501953 0.304688 +v 0.066406 -0.667969 0.347656 +v -0.066406 -0.667969 0.347656 +v 0.076172 -0.871094 0.402344 +v -0.076172 -0.871094 0.402344 +v 0.085938 -0.968750 0.507812 +v -0.085938 -0.968750 0.507812 +v 0.250000 -0.943359 0.478516 +v -0.250000 -0.943359 0.478516 +v 0.328125 -0.865234 0.458984 +v -0.328125 -0.865234 0.458984 +v 0.314453 -0.699219 0.468750 +v -0.314453 -0.699219 0.468750 +v 0.201172 -0.626953 0.375000 +v -0.201172 -0.626953 0.375000 +v 0.230469 -0.832031 0.396484 +v -0.230469 -0.832031 0.396484 +v 0.197266 -0.451172 0.353516 +v -0.197266 -0.451172 0.353516 +v 0.287109 -0.496094 0.484375 +v -0.287109 -0.496094 0.484375 +v 0.230469 -0.267578 0.501953 +v -0.230469 -0.267578 0.501953 +v 0.255859 -0.345703 0.490234 +v -0.255859 -0.345703 0.490234 +v 0.212891 -0.208984 0.521484 +v -0.212891 -0.208984 0.521484 +v 0.320312 -0.148438 0.515625 +v -0.320312 -0.148438 0.515625 +v 0.169922 -0.054688 -0.675781 +v -0.169922 -0.054688 -0.675781 +v 0.160156 -0.259766 -0.457031 +v -0.160156 -0.259766 -0.457031 +v 0.126953 -0.386719 -0.066406 +v -0.126953 -0.386719 -0.066406 +v 0.097656 -0.437500 0.222656 +v -0.097656 -0.437500 0.222656 +v 0.210938 -0.359375 0.314453 +v -0.210938 -0.359375 0.314453 +v 0.740234 0.087891 0.228516 +v -0.740234 0.087891 0.228516 +v 0.199219 0.281250 -0.761719 +v -0.199219 0.281250 -0.761719 +v 0.226562 0.916016 0.093750 +v -0.226562 0.916016 0.093750 +v 0.226562 0.919922 -0.269531 +v -0.226562 0.919922 -0.269531 +v 0.228516 0.691406 -0.621094 +v -0.228516 0.691406 -0.621094 +v 0.708984 0.429688 0.392578 +v -0.708984 0.429688 0.392578 +v 0.699219 0.531250 0.199219 +v -0.699219 0.531250 0.199219 +v 0.718750 0.658203 -0.033203 +v -0.718750 0.658203 -0.033203 +v 0.718750 0.646484 -0.279297 +v -0.718750 0.646484 -0.279297 +v 0.707031 0.453125 -0.457031 +v -0.707031 0.453125 -0.457031 +v 0.542969 0.578125 -0.529297 +v -0.542969 0.578125 -0.529297 +v 0.546875 0.806641 -0.273438 +v -0.546875 0.806641 -0.273438 +v 0.546875 0.808594 0.005859 +v -0.546875 0.808594 0.005859 +v 0.546875 0.632812 0.250000 +v -0.546875 0.632812 0.250000 +v 0.564453 0.496094 0.439453 +v -0.564453 0.496094 0.439453 +v 0.228516 0.710938 0.380859 +v -0.228516 0.710938 0.380859 +v 0.281250 0.591797 0.593750 +v -0.281250 0.591797 0.593750 +v 0.263672 0.527344 0.541016 +v -0.263672 0.527344 0.541016 +v 0.036458 0.479167 0.593750 +v -0.036458 0.479167 0.593750 +v 0.787109 0.302734 0.306641 +v -0.787109 0.302734 0.306641 +v 0.808594 0.380859 0.117188 +v -0.808594 0.380859 0.117188 +v 0.818359 0.457031 -0.060547 +v -0.818359 0.457031 -0.060547 +v 0.796875 0.437500 -0.279297 +v -0.796875 0.437500 -0.279297 +v 0.335938 -0.267578 -0.041016 +v -0.335938 -0.267578 -0.041016 +v 0.541016 -0.134766 -0.039062 +v -0.541016 -0.134766 -0.039062 +v 0.544922 -0.078125 0.275391 +v -0.544922 -0.078125 0.275391 +v 0.318359 -0.193359 0.378906 +v -0.318359 -0.193359 0.378906 +v 0.278646 -0.281250 0.247396 +v -0.278646 -0.281250 0.247396 +v 0.283854 -0.164062 0.479167 +v -0.283854 -0.164062 0.479167 +v 0.628906 0.152344 -0.500000 +v -0.628906 0.152344 -0.500000 +v 0.474609 0.210938 -0.625000 +v -0.474609 0.210938 -0.625000 +v 0.537109 -0.076172 -0.337891 +v -0.537109 -0.076172 -0.337891 +v 0.388672 -0.158203 -0.390625 +v -0.388672 -0.158203 -0.390625 +v 0.388021 -0.023438 -0.583333 +v -0.388021 -0.023438 -0.583333 +v 0.962891 0.414062 -0.263672 +v -0.962891 0.414062 -0.263672 +v 1.115234 0.458984 -0.353516 +v -1.115234 0.458984 -0.353516 +v 1.259766 0.388672 -0.410156 +v -1.259766 0.388672 -0.410156 +v 1.277344 0.185547 -0.416016 +v -1.277344 0.185547 -0.416016 +v 1.140625 -0.001953 -0.367188 +v -1.140625 -0.001953 -0.367188 +v 0.917969 -0.087891 -0.222656 +v -0.917969 -0.087891 -0.222656 +v 0.945312 -0.033203 -0.253906 +v -0.945312 -0.033203 -0.253906 +v 1.117188 0.033203 -0.380859 +v -1.117188 0.033203 -0.380859 +v 1.224609 0.177734 -0.425781 +v -1.224609 0.177734 -0.425781 +v 1.214844 0.333984 -0.419922 +v -1.214844 0.333984 -0.419922 +v 1.099609 0.388672 -0.369141 +v -1.099609 0.388672 -0.369141 +v 0.976562 0.355469 -0.289062 +v -0.976562 0.355469 -0.289062 +v 0.693359 -0.048828 -0.083984 +v -0.693359 -0.048828 -0.083984 +v 0.728516 -0.089844 -0.148438 +v -0.728516 -0.089844 -0.148438 +v 0.792969 0.126953 0.001953 +v -0.792969 0.126953 0.001953 +v 0.869141 0.345703 -0.216797 +v -0.869141 0.345703 -0.216797 +v 0.810547 -0.033203 -0.197266 +v -0.810547 -0.033203 -0.197266 +v 0.773438 0.003906 -0.226562 +v -0.773438 0.003906 -0.226562 +v 0.785156 0.058594 -0.251953 +v -0.785156 0.058594 -0.251953 +v 0.777344 0.126953 -0.236328 +v -0.777344 0.126953 -0.236328 +v 0.841797 0.226562 -0.240234 +v -0.841797 0.226562 -0.240234 +v 0.900391 0.298828 -0.246094 +v -0.900391 0.298828 -0.246094 +v 0.830078 0.285156 -0.167969 +v -0.830078 0.285156 -0.167969 +v 0.775391 0.140625 -0.128906 +v -0.775391 0.140625 -0.128906 +v 0.721354 0.005208 -0.143229 +v -0.721354 0.005208 -0.143229 +v 0.919922 0.267578 -0.304688 +v -0.919922 0.267578 -0.304688 +v 0.865234 0.205078 -0.294922 +v -0.865234 0.205078 -0.294922 +v 0.800781 0.132812 -0.296875 +v -0.800781 0.132812 -0.296875 +v 0.792969 0.087891 -0.296875 +v -0.792969 0.087891 -0.296875 +v 0.835938 0.048828 -0.296875 +v -0.835938 0.048828 -0.296875 +v 0.830078 0.000000 -0.296875 +v -0.830078 0.000000 -0.296875 +v 0.847656 -0.017578 -0.267578 +v -0.847656 -0.017578 -0.267578 +v 0.990234 0.316406 -0.351562 +v -0.990234 0.316406 -0.351562 +v 1.105469 0.343750 -0.423828 +v -1.105469 0.343750 -0.423828 +v 1.212891 0.298828 -0.464844 +v -1.212891 0.298828 -0.464844 +v 1.222656 0.167969 -0.466797 +v -1.222656 0.167969 -0.466797 +v 1.121094 0.044922 -0.429688 +v -1.121094 0.044922 -0.429688 +v 0.962891 -0.009766 -0.316406 +v -0.962891 -0.009766 -0.316406 +v 0.876953 0.066406 -0.326172 +v -0.876953 0.066406 -0.326172 +v 0.947266 0.117188 -0.345703 +v -0.947266 0.117188 -0.345703 +v 1.007812 0.179688 -0.369141 +v -1.007812 0.179688 -0.369141 +v 1.066406 0.226562 -0.384766 +v -1.066406 0.226562 -0.384766 +v 1.023438 0.281250 -0.380859 +v -1.023438 0.281250 -0.380859 +v 0.955078 0.232422 -0.347656 +v -0.955078 0.232422 -0.347656 +v 0.896484 0.171875 -0.330078 +v -0.896484 0.171875 -0.330078 +v 0.832031 0.113281 -0.322266 +v -0.832031 0.113281 -0.322266 +v 0.871094 0.011719 -0.310547 +v -0.871094 0.011719 -0.310547 +v 0.966797 0.042969 -0.347656 +v -0.966797 0.042969 -0.347656 +v 1.078125 0.099609 -0.414062 +v -1.078125 0.099609 -0.414062 +v 1.158203 0.181641 -0.437500 +v -1.158203 0.181641 -0.437500 +v 1.160156 0.267578 -0.439453 +v -1.160156 0.267578 -0.439453 +v 1.104167 0.315104 -0.429688 +v -1.104167 0.315104 -0.429688 +v 0.910156 -0.113281 -0.318359 +v -0.910156 -0.113281 -0.318359 +v 1.167969 -0.019531 -0.445312 +v -1.167969 -0.019531 -0.445312 +v 1.328125 0.181641 -0.470703 +v -1.328125 0.181641 -0.470703 +v 1.300781 0.398438 -0.472656 +v -1.300781 0.398438 -0.472656 +v 1.132812 0.472656 -0.441406 +v -1.132812 0.472656 -0.441406 +v 0.949219 0.425781 -0.353516 +v -0.949219 0.425781 -0.353516 +v 0.927734 0.152344 -0.421875 +v -0.927734 0.152344 -0.421875 +v 1.156250 0.218750 -0.513672 +v -1.156250 0.218750 -0.513672 +v 1.309896 0.273438 -0.526042 +v -1.309896 0.273438 -0.526042 +v 0.835938 0.345703 -0.314453 +v -0.835938 0.345703 -0.314453 +v 0.765625 0.128906 -0.394531 +v -0.765625 0.128906 -0.394531 +v 0.699219 -0.099609 -0.261719 +v -0.699219 -0.099609 -0.261719 +v 0.503906 0.242676 0.717773 +v 0.463867 0.198242 0.753418 +v 0.459961 0.137207 0.728027 +v 0.528320 0.169922 0.676270 +v -0.528320 0.169922 0.676270 +v -0.459961 0.137207 0.728027 +v -0.463867 0.198242 0.753418 +v -0.503906 0.242676 0.717773 +v 0.576172 0.242676 0.621094 +v 0.510742 0.086426 0.635254 +v 0.585938 0.148438 0.570312 +v -0.585938 0.148438 0.570312 +v -0.510742 0.086426 0.635254 +v -0.576172 0.242676 0.621094 +v 0.424805 0.067383 0.698730 +v 0.351562 0.021484 0.666992 +v 0.449219 0.015625 0.597656 +v -0.449219 0.015625 0.597656 +v -0.351562 0.021484 0.666992 +v -0.424805 0.067383 0.698730 +v 0.398926 0.136230 0.767090 +v 0.352051 0.093750 0.749512 +v -0.352051 0.093750 0.749512 +v -0.398926 0.136230 0.767090 +v 0.307617 0.136230 0.784668 +v 0.246582 0.137207 0.767090 +v 0.278809 0.067383 0.725586 +v -0.278809 0.067383 0.725586 +v -0.246582 0.137207 0.767090 +v -0.307617 0.136230 0.784668 +v 0.192383 0.086426 0.692383 +v 0.253906 0.015625 0.632812 +v -0.253906 0.015625 0.632812 +v -0.192383 0.086426 0.692383 +v 0.175781 0.169922 0.737793 +v 0.126953 0.242676 0.698242 +v 0.117188 0.148438 0.652344 +v -0.117188 0.148438 0.652344 +v -0.126953 0.242676 0.698242 +v -0.175781 0.169922 0.737793 +v 0.245605 0.198242 0.792969 +v 0.203125 0.242676 0.769531 +v -0.203125 0.242676 0.769531 +v -0.245605 0.198242 0.792969 +v 0.245605 0.289551 0.792969 +v 0.246582 0.350586 0.767090 +v 0.175781 0.315430 0.737793 +v -0.175781 0.315430 0.737793 +v -0.246582 0.350586 0.767090 +v -0.245605 0.289551 0.792969 +v 0.192383 0.401367 0.692383 +v 0.117188 0.339844 0.652344 +v -0.117188 0.339844 0.652344 +v -0.192383 0.401367 0.692383 +v 0.278809 0.418945 0.725586 +v 0.351562 0.466797 0.666992 +v 0.253906 0.476562 0.632812 +v -0.253906 0.476562 0.632812 +v -0.351562 0.466797 0.666992 +v -0.278809 0.418945 0.725586 +v 0.307617 0.354980 0.784668 +v 0.352051 0.394531 0.749512 +v -0.352051 0.394531 0.749512 +v -0.307617 0.354980 0.784668 +v 0.398926 0.354980 0.767090 +v 0.459961 0.350586 0.728027 +v 0.424805 0.418945 0.698730 +v -0.424805 0.418945 0.698730 +v -0.459961 0.350586 0.728027 +v -0.398926 0.354980 0.767090 +v 0.510742 0.401367 0.635254 +v 0.449219 0.476562 0.597656 +v -0.449219 0.476562 0.597656 +v -0.510742 0.401367 0.635254 +v 0.528320 0.315430 0.676270 +v 0.585938 0.339844 0.570312 +v -0.585938 0.339844 0.570312 +v -0.528320 0.315430 0.676270 +v 0.463867 0.289551 0.753418 +v -0.463867 0.289551 0.753418 +v 0.464844 0.243164 0.767578 +v 0.434082 0.325195 0.774902 +v 0.450846 0.284668 0.779622 +v -0.450846 0.284668 0.779622 +v -0.434082 0.325195 0.774902 +v -0.464844 0.243164 0.767578 +v 0.352539 0.358398 0.792480 +v 0.394043 0.344564 0.793457 +v -0.394043 0.344564 0.793457 +v -0.352539 0.358398 0.792480 +v 0.275391 0.325195 0.806641 +v 0.312663 0.344564 0.810872 +v -0.312663 0.344564 0.810872 +v -0.275391 0.325195 0.806641 +v 0.243164 0.243164 0.808594 +v 0.256348 0.284668 0.818034 +v -0.256348 0.284668 0.818034 +v -0.243164 0.243164 0.808594 +v 0.275391 0.166016 0.806641 +v 0.256348 0.203288 0.818034 +v -0.256348 0.203288 0.818034 +v -0.275391 0.166016 0.806641 +v 0.352539 0.133789 0.792480 +v 0.312663 0.146973 0.810872 +v -0.312663 0.146973 0.810872 +v -0.352539 0.133789 0.792480 +v 0.434082 0.166016 0.774902 +v 0.394043 0.146973 0.793457 +v -0.394043 0.146973 0.793457 +v -0.434082 0.166016 0.774902 +v 0.450846 0.203288 0.779622 +v -0.450846 0.203288 0.779622 +v 0.419271 0.242839 0.797526 +v 0.401042 0.195964 0.802083 +v -0.419271 0.242839 0.797526 +v -0.401042 0.195964 0.802083 +v 0.352214 0.175781 0.813802 +v -0.352214 0.175781 0.813802 +v 0.305339 0.195964 0.822266 +v -0.305339 0.195964 0.822266 +v 0.285156 0.242839 0.823568 +v -0.285156 0.242839 0.823568 +v 0.305339 0.292318 0.822266 +v -0.305339 0.292318 0.822266 +v 0.352214 0.313151 0.813802 +v -0.352214 0.313151 0.813802 +v 0.401042 0.292318 0.802083 +v -0.401042 0.292318 0.802083 +v 0.087891 -0.969727 0.560547 +v 0.164062 -0.948730 0.593750 +v 0.076660 -0.936035 0.634766 +v 0.000000 -0.960938 0.605469 +v -0.076660 -0.936035 0.634766 +v -0.164062 -0.948730 0.593750 +v -0.087891 -0.969727 0.560547 +v 0.246094 -0.949219 0.535645 +v 0.271973 -0.922852 0.582520 +v 0.192383 -0.918457 0.629883 +v -0.192383 -0.918457 0.629883 +v -0.271973 -0.922852 0.582520 +v -0.246094 -0.949219 0.535645 +v 0.330566 -0.898438 0.525391 +v 0.310059 -0.845215 0.599121 +v 0.245117 -0.862305 0.642578 +v -0.245117 -0.862305 0.642578 +v -0.310059 -0.845215 0.599121 +v -0.330566 -0.898438 0.525391 +v 0.335449 -0.765625 0.545898 +v 0.297852 -0.686523 0.626465 +v 0.252441 -0.758301 0.667480 +v -0.252441 -0.758301 0.667480 +v -0.297852 -0.686523 0.626465 +v -0.335449 -0.765625 0.545898 +v 0.308105 -0.549805 0.564941 +v 0.261230 -0.457520 0.638184 +v 0.226562 -0.572266 0.688477 +v -0.226562 -0.572266 0.688477 +v -0.261230 -0.457520 0.638184 +v -0.308105 -0.549805 0.564941 +v 0.200195 -0.150879 0.669922 +v 0.312988 -0.148926 0.563477 +v 0.412109 -0.087402 0.609863 +v 0.272461 -0.069336 0.715332 +v -0.272461 -0.069336 0.715332 +v -0.412109 -0.087402 0.609863 +v -0.312988 -0.148926 0.563477 +v -0.200195 -0.150879 0.669922 +v 0.529785 -0.072754 0.537598 +v 0.618164 0.016113 0.577148 +v 0.501953 -0.003418 0.639160 +v -0.501953 -0.003418 0.639160 +v -0.618164 0.016113 0.577148 +v -0.529785 -0.072754 0.537598 +v 0.717773 0.067383 0.495117 +v 0.761230 0.183105 0.543457 +v 0.665039 0.119141 0.604004 +v -0.665039 0.119141 0.604004 +v -0.761230 0.183105 0.543457 +v -0.717773 0.067383 0.495117 +v 0.822754 0.288574 0.520508 +v 0.785156 0.379883 0.618652 +v 0.735352 0.283203 0.617676 +v -0.735352 0.283203 0.617676 +v -0.785156 0.379883 0.618652 +v -0.822754 0.288574 0.520508 +v 0.770508 0.445801 0.603027 +v 0.682617 0.458984 0.677734 +v 0.711914 0.395020 0.676758 +v -0.711914 0.395020 0.676758 +v -0.682617 0.458984 0.677734 +v -0.770508 0.445801 0.603027 +v 0.594238 0.530273 0.652832 +v 0.475586 0.574219 0.739258 +v 0.561523 0.479004 0.739746 +v -0.561523 0.479004 0.739746 +v -0.475586 0.574219 0.739258 +v -0.594238 0.530273 0.652832 +v 0.402832 0.661621 0.707031 +v 0.317871 0.679688 0.782227 +v 0.379395 0.587402 0.792480 +v -0.379395 0.587402 0.792480 +v -0.317871 0.679688 0.782227 +v -0.402832 0.661621 0.707031 +v 0.244141 0.716797 0.740723 +v 0.184570 0.645996 0.801270 +v 0.259277 0.623047 0.819824 +v -0.259277 0.623047 0.819824 +v -0.184570 0.645996 0.801270 +v -0.244141 0.716797 0.740723 +v 0.120117 0.589844 0.748047 +v 0.083984 0.478027 0.795898 +v 0.153809 0.523438 0.825684 +v -0.153809 0.523438 0.825684 +v -0.083984 0.478027 0.795898 +v -0.120117 0.589844 0.748047 +v 0.036621 0.448730 0.739258 +v 0.000000 0.408203 0.785156 +v 0.060059 0.395508 0.813477 +v -0.060059 0.395508 0.813477 +v -0.036621 0.448730 0.739258 +v 0.135742 0.425293 0.806152 +v 0.204590 0.446289 0.777344 +v 0.226562 0.529785 0.803223 +v -0.226562 0.529785 0.803223 +v -0.204590 0.446289 0.777344 +v -0.135742 0.425293 0.806152 +v 0.287109 0.486328 0.763672 +v 0.322754 0.548340 0.787109 +v -0.322754 0.548340 0.787109 +v -0.287109 0.486328 0.763672 +v 0.378418 0.468750 0.745605 +v 0.445801 0.488281 0.753906 +v -0.445801 0.488281 0.753906 +v -0.378418 0.468750 0.745605 +v 0.518555 0.411621 0.705566 +v 0.624023 0.399414 0.697754 +v -0.624023 0.399414 0.697754 +v -0.518555 0.411621 0.705566 +v 0.626953 0.341309 0.665039 +v 0.683594 0.325684 0.654297 +v -0.683594 0.325684 0.654297 +v -0.626953 0.341309 0.665039 +v 0.639160 0.248047 0.650391 +v 0.662598 0.195801 0.631348 +v -0.662598 0.195801 0.631348 +v -0.639160 0.248047 0.650391 +v 0.568848 0.128418 0.659180 +v 0.548828 0.066406 0.650391 +v -0.548828 0.066406 0.650391 +v -0.568848 0.128418 0.659180 +v 0.441895 0.040039 0.687988 +v 0.379883 -0.004883 0.693848 +v -0.379883 -0.004883 0.693848 +v -0.441895 0.040039 0.687988 +v 0.287109 0.042480 0.729980 +v 0.181641 0.006836 0.761230 +v -0.181641 0.006836 0.761230 +v -0.287109 0.042480 0.729980 +v 0.171387 0.101074 0.752930 +v 0.090332 0.096191 0.746094 +v 0.076172 -0.023926 0.763184 +v -0.076172 -0.023926 0.763184 +v -0.090332 0.096191 0.746094 +v -0.171387 0.101074 0.752930 +v 0.139160 0.360352 0.778809 +v 0.071777 0.325195 0.791016 +v -0.071777 0.325195 0.791016 +v -0.139160 0.360352 0.778809 +v 0.118652 0.260742 0.768066 +v 0.000000 0.275391 0.785156 +v 0.067871 0.210938 0.762695 +v -0.067871 0.210938 0.762695 +v -0.118652 0.260742 0.768066 +v 0.000000 0.140625 0.748047 +v 0.133789 0.171387 0.755859 +v -0.133789 0.171387 0.755859 +v 0.106934 -0.903809 0.665039 +v 0.036621 -0.891113 0.684082 +v 0.000000 -0.915039 0.664062 +v -0.036621 -0.891113 0.684082 +v -0.106934 -0.903809 0.665039 +v 0.169434 -0.865723 0.674316 +v 0.101074 -0.865234 0.693848 +v -0.101074 -0.865234 0.693848 +v -0.169434 -0.865723 0.674316 +v 0.185547 -0.773438 0.697266 +v 0.127930 -0.789062 0.712891 +v -0.127930 -0.789062 0.712891 +v -0.185547 -0.773438 0.697266 +v 0.147949 -0.458496 0.727539 +v 0.102051 -0.566895 0.736816 +v 0.179199 -0.673340 0.711914 +v -0.179199 -0.673340 0.711914 +v -0.102051 -0.566895 0.736816 +v -0.147949 -0.458496 0.727539 +v 0.117188 -0.712891 0.727051 +v -0.117188 -0.712891 0.727051 +v 0.085938 -0.371094 0.741699 +v 0.042969 -0.324219 0.748047 +v 0.000000 -0.381836 0.746094 +v 0.041992 -0.458008 0.747070 +v -0.041992 -0.458008 0.747070 +v -0.042969 -0.324219 0.748047 +v -0.085938 -0.371094 0.741699 +v 0.055664 -0.661133 0.736328 +v 0.000000 -0.563477 0.742188 +v -0.055664 -0.661133 0.736328 +v 0.000000 -0.717773 0.734375 +v 0.054199 -0.736816 0.732910 +v -0.054199 -0.736816 0.732910 +v 0.114746 -0.259277 0.747070 +v 0.121094 -0.222656 0.770508 +v 0.109863 -0.249512 0.787109 +v 0.083496 -0.279785 0.763184 +v -0.083496 -0.279785 0.763184 +v -0.109863 -0.249512 0.787109 +v -0.121094 -0.222656 0.770508 +v -0.114746 -0.259277 0.747070 +v 0.118164 -0.184570 0.753418 +v 0.097656 -0.150391 0.763184 +v 0.117676 -0.182129 0.787598 +v -0.117676 -0.182129 0.787598 +v -0.097656 -0.150391 0.763184 +v -0.118164 -0.184570 0.753418 +v 0.055176 -0.127930 0.750488 +v 0.027832 -0.141113 0.763184 +v 0.070801 -0.133789 0.780273 +v -0.070801 -0.133789 0.780273 +v -0.027832 -0.141113 0.763184 +v -0.055176 -0.127930 0.750488 +v 0.000000 -0.165039 0.756836 +v 0.000000 -0.176758 0.770508 +v 0.017578 -0.160156 0.787598 +v -0.017578 -0.160156 0.787598 +v 0.000000 -0.313477 0.761719 +v 0.045410 -0.294922 0.779297 +v -0.045410 -0.294922 0.779297 +v 0.000000 -0.293945 0.792969 +v 0.079590 -0.262695 0.795410 +v 0.041992 -0.266113 0.804688 +v -0.041992 -0.266113 0.804688 +v -0.079590 -0.262695 0.795410 +v 0.000000 -0.180664 0.808594 +v 0.032715 -0.175293 0.816406 +v 0.044922 -0.145020 0.798828 +v -0.044922 -0.145020 0.798828 +v -0.032715 -0.175293 0.816406 +v 0.068848 -0.157227 0.810547 +v 0.096680 -0.153809 0.798828 +v -0.096680 -0.153809 0.798828 +v -0.068848 -0.157227 0.810547 +v 0.094238 -0.187988 0.816406 +v 0.114258 -0.220703 0.808105 +v -0.114258 -0.220703 0.808105 +v -0.094238 -0.187988 0.816406 +v 0.084473 -0.240723 0.812988 +v -0.084473 -0.240723 0.812988 +v 0.054688 -0.213867 0.823242 +v -0.054688 -0.213867 0.823242 +v 0.000000 -0.244141 0.816406 +v 0.000000 -0.066406 0.745117 +v 0.103027 -0.128906 0.766113 +v -0.103027 -0.128906 0.766113 +v 0.139160 -0.229004 0.735840 +v 0.149902 -0.179688 0.734375 +v -0.149902 -0.179688 0.734375 +v -0.139160 -0.229004 0.735840 +v 0.135742 -0.310547 0.727539 +v 0.172852 -0.275391 0.695801 +v -0.172852 -0.275391 0.695801 +v -0.135742 -0.310547 0.727539 +v 0.192383 -0.376953 0.696777 +v -0.192383 -0.376953 0.696777 +v 0.266602 -0.368164 0.562988 +v 0.221680 -0.320312 0.633789 +v -0.221680 -0.320312 0.633789 +v -0.266602 -0.368164 0.562988 +v 0.232910 -0.277344 0.561035 +v 0.197266 -0.241699 0.639648 +v -0.197266 -0.241699 0.639648 +v -0.232910 -0.277344 0.561035 +v 0.208008 -0.210449 0.574707 +v -0.208008 -0.210449 0.574707 +v 0.089355 -0.747559 0.727539 +v 0.000000 -0.759766 0.727539 +v 0.047852 -0.756836 0.716309 +v -0.047852 -0.756836 0.716309 +v -0.089355 -0.747559 0.727539 +v 0.098633 -0.821777 0.710938 +v 0.096191 -0.780762 0.710938 +v -0.096191 -0.780762 0.710938 +v -0.098633 -0.821777 0.710938 +v 0.054199 -0.870117 0.693359 +v 0.072754 -0.844238 0.691895 +v -0.072754 -0.844238 0.691895 +v -0.054199 -0.870117 0.693359 +v 0.000000 -0.880859 0.688477 +v 0.024414 -0.871094 0.681152 +v -0.024414 -0.871094 0.681152 +v 0.000000 -0.865234 0.660156 +v 0.046875 -0.854980 0.662109 +v 0.026367 -0.846191 0.643066 +v -0.026367 -0.846191 0.643066 +v -0.046875 -0.854980 0.662109 +v 0.087891 -0.812988 0.676270 +v 0.072266 -0.826660 0.646810 +v -0.072266 -0.826660 0.646810 +v -0.087891 -0.812988 0.676270 +v 0.082031 -0.758789 0.691895 +v 0.089844 -0.787109 0.659017 +v -0.089844 -0.787109 0.659017 +v -0.082031 -0.758789 0.691895 +v 0.000000 -0.769531 0.689453 +v 0.043945 -0.775879 0.664551 +v -0.043945 -0.775879 0.664551 +v 0.000000 -0.815430 0.645508 +v 0.063477 -0.804199 0.647298 +v -0.063477 -0.804199 0.647298 +v 0.155273 0.217285 0.769043 +v 0.177734 0.150879 0.762695 +v 0.178223 0.187500 0.770996 +v -0.178223 0.187500 0.770996 +v -0.177734 0.150879 0.762695 +v -0.155273 0.217285 0.769043 +v 0.156738 0.301758 0.773438 +v 0.172363 0.258301 0.775391 +v -0.172363 0.258301 0.775391 +v -0.156738 0.301758 0.773438 +v 0.192383 0.389160 0.775391 +v 0.191406 0.337891 0.776855 +v -0.191406 0.337891 0.776855 +v -0.192383 0.389160 0.775391 +v 0.229980 0.099609 0.756836 +v 0.206055 0.132812 0.770508 +v -0.206055 0.132812 0.770508 +v -0.229980 0.099609 0.756836 +v 0.368652 0.052246 0.724121 +v 0.300293 0.084473 0.754395 +v -0.300293 0.084473 0.754395 +v -0.368652 0.052246 0.724121 +v 0.485352 0.090332 0.694824 +v 0.425781 0.079102 0.723145 +v -0.425781 0.079102 0.723145 +v -0.485352 0.090332 0.694824 +v 0.588379 0.190430 0.668457 +v 0.528320 0.147461 0.692871 +v -0.528320 0.147461 0.692871 +v -0.588379 0.190430 0.668457 +v 0.607910 0.289062 0.668945 +v 0.584473 0.242676 0.677734 +v -0.584473 0.242676 0.677734 +v -0.607910 0.289062 0.668945 +v 0.566406 0.361328 0.686523 +v 0.576172 0.320801 0.685059 +v -0.576172 0.320801 0.685059 +v -0.566406 0.361328 0.686523 +v 0.433594 0.415527 0.738281 +v 0.492676 0.377441 0.726562 +v -0.492676 0.377441 0.726562 +v -0.433594 0.415527 0.738281 +v 0.334961 0.447754 0.751465 +v 0.378418 0.417480 0.759277 +v -0.378418 0.417480 0.759277 +v -0.334961 0.447754 0.751465 +v 0.261230 0.439941 0.765137 +v 0.303223 0.428711 0.762695 +v -0.303223 0.428711 0.762695 +v -0.261230 0.439941 0.765137 +v 0.239746 0.401367 0.773926 +v -0.239746 0.401367 0.773926 +v 0.277832 0.405762 0.767578 +v 0.225098 0.363770 0.769531 +v 0.257812 0.378906 0.761719 +v -0.257812 0.378906 0.761719 +v -0.225098 0.363770 0.769531 +v -0.277832 0.405762 0.767578 +v 0.338867 0.414062 0.756836 +v 0.308594 0.402344 0.757812 +v -0.308594 0.402344 0.757812 +v -0.338867 0.414062 0.756836 +v 0.423828 0.391113 0.751465 +v 0.375000 0.398438 0.750000 +v -0.375000 0.398438 0.750000 +v -0.423828 0.391113 0.751465 +v 0.533691 0.342773 0.695801 +v 0.472656 0.363281 0.714844 +v -0.472656 0.363281 0.714844 +v -0.533691 0.342773 0.695801 +v 0.566406 0.282227 0.680176 +v 0.542969 0.308594 0.675781 +v -0.542969 0.308594 0.675781 +v -0.566406 0.282227 0.680176 +v 0.551758 0.201660 0.680664 +v 0.550781 0.246094 0.671875 +v -0.550781 0.246094 0.671875 +v -0.551758 0.201660 0.680664 +v 0.468750 0.116699 0.709473 +v 0.503906 0.164062 0.687500 +v -0.503906 0.164062 0.687500 +v -0.468750 0.116699 0.709473 +v 0.369141 0.083984 0.735840 +v 0.417969 0.101562 0.714844 +v -0.417969 0.101562 0.714844 +v -0.369141 0.083984 0.735840 +v 0.247070 0.117676 0.764160 +v 0.308594 0.105469 0.742188 +v -0.308594 0.105469 0.742188 +v -0.247070 0.117676 0.764160 +v 0.198730 0.165527 0.763184 +v 0.222656 0.148438 0.753906 +v -0.222656 0.148438 0.753906 +v -0.198730 0.165527 0.763184 +v 0.191406 0.296387 0.769043 +v 0.214844 0.328125 0.757812 +v -0.214844 0.328125 0.757812 +v -0.191406 0.296387 0.769043 +v 0.185547 0.224609 0.765625 +v 0.195312 0.261719 0.753906 +v -0.195312 0.261719 0.753906 +v -0.185547 0.224609 0.765625 +v 0.199219 0.199219 0.750000 +v -0.199219 0.199219 0.750000 +v 0.000000 0.432617 0.673828 +v 0.086426 0.496094 0.679688 +v 0.047201 0.448405 0.620117 +v -0.047201 0.448405 0.620117 +v -0.086426 0.496094 0.679688 +v 0.183594 0.668457 0.683594 +v 0.179199 0.575195 0.625977 +v -0.179199 0.575195 0.625977 +v -0.183594 0.668457 0.683594 +v 0.329102 0.700684 0.661621 +v 0.266113 0.662598 0.620117 +v -0.266113 0.662598 0.620117 +v -0.329102 0.700684 0.661621 +v 0.494141 0.582520 0.618652 +v 0.377441 0.621094 0.596191 +v -0.377441 0.621094 0.596191 +v -0.494141 0.582520 0.618652 +v 0.686035 0.476074 0.562500 +v 0.580078 0.506836 0.519043 +v -0.580078 0.506836 0.519043 +v -0.686035 0.476074 0.562500 +v 0.808105 0.391602 0.516602 +v 0.736816 0.433105 0.472168 +v -0.736816 0.433105 0.472168 +v -0.808105 0.391602 0.516602 +v 0.781250 0.166992 0.433105 +v 0.792969 0.290039 0.402832 +v -0.792969 0.290039 0.402832 +v -0.781250 0.166992 0.433105 +v 0.617676 -0.009766 0.471191 +v 0.706055 0.080078 0.365234 +v -0.706055 0.080078 0.365234 +v -0.617676 -0.009766 0.471191 +v 0.430664 -0.112793 0.500977 +v 0.527832 -0.060059 0.411621 +v -0.527832 -0.060059 0.411621 +v -0.430664 -0.112793 0.500977 +v 0.066895 -0.569824 0.333008 +v 0.000000 -0.514648 0.302734 +v 0.088379 -0.459473 0.266602 +v 0.144531 -0.476562 0.318848 +v -0.144531 -0.476562 0.318848 +v -0.088379 -0.459473 0.266602 +v -0.066895 -0.569824 0.333008 +v 0.070801 -0.775391 0.365234 +v 0.000000 -0.677734 0.339844 +v 0.133301 -0.647949 0.362305 +v -0.133301 -0.647949 0.362305 +v -0.070801 -0.775391 0.365234 +v 0.081543 -0.940430 0.452148 +v 0.000000 -0.880859 0.402344 +v 0.152832 -0.851562 0.400879 +v -0.152832 -0.851562 0.400879 +v -0.081543 -0.940430 0.452148 +v 0.169922 -0.956543 0.494629 +v 0.000000 -0.974609 0.513672 +v -0.169922 -0.956543 0.494629 +v 0.308594 -0.916992 0.464844 +v 0.243164 -0.908691 0.427734 +v -0.243164 -0.908691 0.427734 +v -0.308594 -0.916992 0.464844 +v 0.324707 -0.791504 0.460449 +v 0.293945 -0.830566 0.409180 +v -0.293945 -0.830566 0.409180 +v -0.324707 -0.791504 0.460449 +v 0.300781 -0.597656 0.478516 +v 0.263672 -0.634277 0.404297 +v -0.263672 -0.634277 0.404297 +v -0.300781 -0.597656 0.478516 +v 0.215332 -0.731934 0.380371 +v 0.193359 -0.529297 0.369629 +v -0.193359 -0.529297 0.369629 +v -0.215332 -0.731934 0.380371 +v 0.205566 -0.394043 0.333008 +v 0.242188 -0.449707 0.408691 +v -0.242188 -0.449707 0.408691 +v -0.205566 -0.394043 0.333008 +v 0.272461 -0.407715 0.487793 +v -0.272461 -0.407715 0.487793 +v 0.240723 -0.301758 0.494141 +v 0.244629 -0.242188 0.444824 +v 0.222168 -0.238281 0.511719 +v -0.222168 -0.238281 0.511719 +v -0.244629 -0.242188 0.444824 +v -0.240723 -0.301758 0.494141 +v 0.229980 -0.334473 0.410156 +v -0.229980 -0.334473 0.410156 +v 0.234863 -0.179199 0.524902 +v 0.227702 -0.192871 0.492350 +v -0.227702 -0.192871 0.492350 +v -0.234863 -0.179199 0.524902 +v 0.311198 -0.144531 0.490885 +v -0.311198 -0.144531 0.490885 +v 0.000000 -0.058594 -0.712891 +v 0.176270 0.087891 -0.732422 +v 0.309408 -0.042969 -0.615560 +v 0.168457 -0.164551 -0.585938 +v -0.168457 -0.164551 -0.585938 +v -0.309408 -0.042969 -0.615560 +v -0.176270 0.087891 -0.732422 +v 0.000000 -0.274414 -0.484375 +v 0.297363 -0.219727 -0.413086 +v 0.145996 -0.335449 -0.285156 +v -0.145996 -0.335449 -0.285156 +v -0.297363 -0.219727 -0.413086 +v 0.000000 -0.404297 -0.074219 +v 0.242676 -0.339355 -0.052246 +v 0.108887 -0.418945 0.126953 +v -0.108887 -0.418945 0.126953 +v -0.242676 -0.339355 -0.052246 +v 0.000000 -0.455078 0.228516 +v 0.174805 -0.400391 0.239746 +v -0.174805 -0.400391 0.239746 +v 0.229818 -0.328125 0.288900 +v -0.229818 -0.328125 0.288900 +v 0.788086 0.197266 0.241211 +v 0.655273 -0.009277 0.247070 +v 0.779785 0.100586 0.088867 +v -0.779785 0.100586 0.088867 +v -0.655273 -0.009277 0.247070 +v -0.788086 0.197266 0.241211 +v 0.000000 0.298828 -0.800781 +v 0.222168 0.493164 -0.734375 +v 0.367676 0.246094 -0.688477 +v -0.367676 0.246094 -0.688477 +v -0.222168 0.493164 -0.734375 +v 0.000000 0.928711 0.099609 +v 0.227051 0.844238 0.249512 +v 0.419922 0.876465 0.065918 +v 0.226562 0.937500 -0.081055 +v -0.226562 0.937500 -0.081055 +v -0.419922 0.876465 0.065918 +v -0.227051 0.844238 0.249512 +v 0.000000 0.930664 -0.291016 +v 0.419922 0.880859 -0.249023 +v 0.227051 0.844238 -0.455078 +v -0.227051 0.844238 -0.455078 +v -0.419922 0.880859 -0.249023 +v 0.000000 0.710938 -0.660156 +v 0.421387 0.643555 -0.559082 +v -0.421387 0.643555 -0.559082 +v 0.646484 0.458008 0.401367 +v 0.754883 0.386230 0.374023 +v 0.691895 0.455078 0.302246 +v -0.691895 0.455078 0.302246 +v -0.754883 0.386230 0.374023 +v -0.646484 0.458008 0.401367 +v 0.629883 0.580078 0.196289 +v 0.757812 0.470215 0.194336 +v 0.713867 0.613770 0.086426 +v -0.713867 0.613770 0.086426 +v -0.757812 0.470215 0.194336 +v -0.629883 0.580078 0.196289 +v 0.636719 0.729980 -0.041992 +v 0.782715 0.573730 -0.021484 +v 0.718750 0.667969 -0.156250 +v -0.718750 0.667969 -0.156250 +v -0.782715 0.573730 -0.021484 +v -0.636719 0.729980 -0.041992 +v 0.636719 0.720703 -0.298340 +v 0.777344 0.560059 -0.258789 +v 0.715820 0.579590 -0.385254 +v -0.715820 0.579590 -0.385254 +v -0.777344 0.560059 -0.258789 +v -0.636719 0.720703 -0.298340 +v 0.768555 0.423828 -0.383301 +v 0.681641 0.299805 -0.495117 +v 0.626953 0.509766 -0.504395 +v -0.626953 0.509766 -0.504395 +v -0.681641 0.299805 -0.495117 +v -0.768555 0.423828 -0.383301 +v 0.523926 0.388672 -0.610840 +v 0.545898 0.732910 -0.407715 +v -0.545898 0.732910 -0.407715 +v -0.523926 0.388672 -0.610840 +v 0.546875 0.823730 -0.133301 +v -0.546875 0.823730 -0.133301 +v 0.546875 0.749023 0.136230 +v -0.546875 0.749023 0.136230 +v 0.422363 0.679688 0.323730 +v 0.551270 0.526367 0.350098 +v -0.551270 0.526367 0.350098 +v -0.422363 0.679688 0.323730 +v 0.443359 0.525391 0.491211 +v -0.443359 0.525391 0.491211 +v 0.000000 0.722656 0.405273 +v 0.238281 0.583008 0.480469 +v -0.238281 0.583008 0.480469 +v 0.284668 0.533691 0.574707 +v -0.284668 0.533691 0.574707 +v 0.102376 0.509440 0.578613 +v -0.102376 0.509440 0.578613 +v 0.000000 0.483724 0.589844 +v 0.793457 0.331055 0.203613 +v -0.793457 0.331055 0.203613 +v 0.828125 0.265625 0.031738 +v 0.820801 0.430176 0.033691 +v -0.820801 0.430176 0.033691 +v -0.828125 0.265625 0.031738 +v 0.832031 0.347656 -0.119629 +v 0.808105 0.459961 -0.165039 +v -0.808105 0.459961 -0.165039 +v -0.832031 0.347656 -0.119629 +v 0.806641 0.344238 -0.308594 +v -0.806641 0.344238 -0.308594 +v 0.307943 -0.277832 0.129720 +v 0.362793 -0.233398 -0.227051 +v 0.428223 -0.192383 -0.035645 +v -0.428223 -0.192383 -0.035645 +v -0.362793 -0.233398 -0.227051 +v -0.307943 -0.277832 0.129720 +v 0.640625 -0.088867 -0.054199 +v 0.556641 -0.107910 0.113770 +v 0.525391 -0.132812 -0.187988 +v -0.525391 -0.132812 -0.187988 +v -0.556641 -0.107910 0.113770 +v -0.640625 -0.088867 -0.054199 +v 0.426758 -0.134277 0.317871 +v -0.426758 -0.134277 0.317871 +v 0.312663 -0.169434 0.448893 +v 0.305501 -0.231934 0.301107 +v -0.305501 -0.231934 0.301107 +v -0.312663 -0.169434 0.448893 +v 0.702148 0.134766 -0.440430 +v 0.572754 0.022949 -0.453613 +v 0.551270 0.178711 -0.564453 +v -0.551270 0.178711 -0.564453 +v -0.572754 0.022949 -0.453613 +v -0.702148 0.134766 -0.440430 +v 0.420736 0.066406 -0.604818 +v -0.420736 0.066406 -0.604818 +v 0.617676 -0.077148 -0.298340 +v 0.459961 -0.101562 -0.371582 +v -0.459961 -0.101562 -0.371582 +v -0.617676 -0.077148 -0.298340 +v 0.401204 -0.076660 -0.514974 +v -0.401204 -0.076660 -0.514974 +v 1.029297 0.440918 -0.304688 +v 0.956543 0.430664 -0.291016 +v 0.911133 0.381348 -0.233398 +v 0.969238 0.385742 -0.265137 +v -0.969238 0.385742 -0.265137 +v -0.911133 0.381348 -0.233398 +v -0.956543 0.430664 -0.291016 +v -1.029297 0.440918 -0.304688 +v 1.126465 0.479004 -0.382324 +v 1.104492 0.424805 -0.350586 +v 1.199219 0.448242 -0.394043 +v -1.199219 0.448242 -0.394043 +v -1.104492 0.424805 -0.350586 +v -1.126465 0.479004 -0.382324 +v 1.286621 0.403809 -0.431641 +v 1.231934 0.362305 -0.406738 +v 1.288574 0.295898 -0.413574 +v -1.288574 0.295898 -0.413574 +v -1.231934 0.362305 -0.406738 +v -1.286621 0.403809 -0.431641 +v 1.309570 0.185547 -0.434570 +v 1.244629 0.182617 -0.413574 +v 1.227539 0.079102 -0.404785 +v -1.227539 0.079102 -0.404785 +v -1.244629 0.182617 -0.413574 +v -1.309570 0.185547 -0.434570 +v 1.157227 -0.017090 -0.392578 +v 1.125000 0.017578 -0.364746 +v 1.032227 -0.057617 -0.305664 +v -1.032227 -0.057617 -0.305664 +v -1.125000 0.017578 -0.364746 +v -1.157227 -0.017090 -0.392578 +v 0.910156 -0.110840 -0.248535 +v 0.930664 -0.057617 -0.228516 +v 0.812012 -0.097168 -0.157227 +v -0.812012 -0.097168 -0.157227 +v -0.930664 -0.057617 -0.228516 +v -0.910156 -0.110840 -0.248535 +v 1.033203 -0.009766 -0.326660 +v 0.957520 -0.016602 -0.287109 +v 0.866699 -0.040039 -0.198730 +v -0.866699 -0.040039 -0.198730 +v -0.957520 -0.016602 -0.287109 +v -1.033203 -0.009766 -0.326660 +v 1.185059 0.095703 -0.414551 +v 1.116211 0.042969 -0.405762 +v -1.116211 0.042969 -0.405762 +v -1.185059 0.095703 -0.414551 +v 1.234863 0.262695 -0.424316 +v 1.217285 0.172363 -0.445801 +v -1.217285 0.172363 -0.445801 +v -1.234863 0.262695 -0.424316 +v 1.168457 0.379883 -0.404297 +v 1.208496 0.310547 -0.441895 +v -1.208496 0.310547 -0.441895 +v -1.168457 0.379883 -0.404297 +v 1.028809 0.375488 -0.326660 +v 1.100098 0.358887 -0.397461 +v -1.100098 0.358887 -0.397461 +v -1.028809 0.375488 -0.326660 +v 0.936035 0.329590 -0.260742 +v 0.983887 0.330078 -0.322266 +v -0.983887 0.330078 -0.322266 +v -0.936035 0.329590 -0.260742 +v 0.736816 0.007812 -0.020508 +v 0.683594 -0.071777 -0.142090 +v 0.715007 -0.016764 -0.117350 +v -0.715007 -0.016764 -0.117350 +v -0.683594 -0.071777 -0.142090 +v -0.736816 0.007812 -0.020508 +v 0.698730 -0.113770 -0.174805 +v 0.771484 -0.054199 -0.162598 +v -0.771484 -0.054199 -0.162598 +v -0.698730 -0.113770 -0.174805 +v 0.788574 0.146973 -0.061035 +v -0.788574 0.146973 -0.061035 +v 0.854004 0.356445 -0.242188 +v 0.840820 0.312012 -0.199707 +v 0.883789 0.323242 -0.223145 +v -0.883789 0.323242 -0.223145 +v -0.840820 0.312012 -0.199707 +v -0.854004 0.356445 -0.242188 +v 0.838379 -0.022461 -0.237305 +v 0.778809 -0.017090 -0.217285 +v -0.778809 -0.017090 -0.217285 +v -0.838379 -0.022461 -0.237305 +v 0.814941 0.000977 -0.267578 +v 0.780273 0.029297 -0.234863 +v 0.733073 0.006185 -0.182292 +v -0.733073 0.006185 -0.182292 +v -0.780273 0.029297 -0.234863 +v -0.814941 0.000977 -0.267578 +v 0.789062 0.081543 -0.273926 +v 0.759766 0.079590 -0.237305 +v 0.821289 0.052246 -0.273926 +v -0.821289 0.052246 -0.273926 +v -0.759766 0.079590 -0.237305 +v -0.789062 0.081543 -0.273926 +v 0.792969 0.131348 -0.270020 +v 0.812988 0.182129 -0.240234 +v 0.767090 0.127441 -0.190918 +v -0.767090 0.127441 -0.190918 +v -0.812988 0.182129 -0.240234 +v -0.792969 0.131348 -0.270020 +v 0.869141 0.264160 -0.240723 +v 0.828125 0.250977 -0.207520 +v 0.858398 0.211426 -0.268555 +v -0.858398 0.211426 -0.268555 +v -0.828125 0.250977 -0.207520 +v -0.869141 0.264160 -0.240723 +v 0.914062 0.278320 -0.276367 +v -0.914062 0.278320 -0.276367 +v 0.815430 0.237305 -0.138672 +v -0.815430 0.237305 -0.138672 +v 0.735514 0.046224 -0.132487 +v -0.735514 0.046224 -0.132487 +v 0.952148 0.294434 -0.322266 +v 0.891602 0.237305 -0.296387 +v 0.929688 0.255859 -0.329102 +v -0.929688 0.255859 -0.329102 +v -0.891602 0.237305 -0.296387 +v -0.952148 0.294434 -0.322266 +v 0.836426 0.170410 -0.296387 +v 0.874023 0.195801 -0.316406 +v -0.874023 0.195801 -0.316406 +v -0.836426 0.170410 -0.296387 +v 0.779297 0.102051 -0.296875 +v 0.810547 0.127930 -0.314941 +v -0.810547 0.127930 -0.314941 +v -0.779297 0.102051 -0.296875 +v 0.819336 0.075195 -0.296875 +v 0.804688 0.093262 -0.314941 +v -0.804688 0.093262 -0.314941 +v -0.819336 0.075195 -0.296875 +v 0.840332 0.020020 -0.296875 +v 0.848145 0.052246 -0.315918 +v -0.848145 0.052246 -0.315918 +v -0.840332 0.020020 -0.296875 +v 0.825684 -0.012207 -0.289551 +v 0.841309 0.002930 -0.312012 +v -0.841309 0.002930 -0.312012 +v -0.825684 -0.012207 -0.289551 +v 0.894043 -0.016602 -0.265137 +v 0.853516 -0.009277 -0.291016 +v -0.853516 -0.009277 -0.291016 +v -0.894043 -0.016602 -0.265137 +v 1.039551 0.333008 -0.387207 +v 1.001465 0.303711 -0.372559 +v -1.001465 0.303711 -0.372559 +v -1.039551 0.333008 -0.387207 +v 1.169434 0.336426 -0.452637 +v 1.109050 0.332682 -0.437988 +v -1.109050 0.332682 -0.437988 +v -1.169434 0.336426 -0.452637 +v 1.231934 0.239746 -0.467285 +v 1.204590 0.288086 -0.470215 +v -1.204590 0.288086 -0.470215 +v -1.231934 0.239746 -0.467285 +v 1.185547 0.098145 -0.456543 +v 1.212402 0.169434 -0.470215 +v -1.212402 0.169434 -0.470215 +v -1.185547 0.098145 -0.456543 +v 1.042480 0.008789 -0.383789 +v 1.114258 0.057617 -0.437500 +v -1.114258 0.057617 -0.437500 +v -1.042480 0.008789 -0.383789 +v 0.964844 0.004395 -0.337891 +v -0.964844 0.004395 -0.337891 +v 0.856934 0.091797 -0.324219 +v 0.884277 0.039062 -0.323242 +v 0.913086 0.088867 -0.333984 +v -0.913086 0.088867 -0.333984 +v -0.884277 0.039062 -0.323242 +v -0.856934 0.091797 -0.324219 +v 0.923828 0.142578 -0.338867 +v 0.962891 0.086914 -0.349121 +v 0.979004 0.148438 -0.358398 +v -0.979004 0.148438 -0.358398 +v -0.962891 0.086914 -0.349121 +v -0.923828 0.142578 -0.338867 +v 0.984863 0.204590 -0.360840 +v 1.035156 0.147949 -0.383301 +v 1.036133 0.207031 -0.377930 +v -1.036133 0.207031 -0.377930 +v -1.035156 0.147949 -0.383301 +v -0.984863 0.204590 -0.360840 +v 1.047852 0.253906 -0.382812 +v 1.097168 0.201660 -0.398926 +v 1.105469 0.244629 -0.401367 +v -1.105469 0.244629 -0.401367 +v -1.097168 0.201660 -0.398926 +v -1.047852 0.253906 -0.382812 +v 1.063151 0.299479 -0.403809 +v 0.986816 0.259277 -0.361816 +v -0.986816 0.259277 -0.361816 +v -1.063151 0.299479 -0.403809 +v 0.925781 0.202637 -0.337402 +v -0.925781 0.202637 -0.337402 +v 0.865723 0.141602 -0.325195 +v -0.865723 0.141602 -0.325195 +v 0.914551 0.025391 -0.314941 +v -0.914551 0.025391 -0.314941 +v 1.022949 0.066895 -0.387695 +v -1.022949 0.066895 -0.387695 +v 1.125488 0.138672 -0.429688 +v -1.125488 0.138672 -0.429688 +v 1.171387 0.225586 -0.439941 +v -1.171387 0.225586 -0.439941 +v 1.134440 0.299967 -0.436035 +v -1.134440 0.299967 -0.436035 +v 1.039062 -0.080078 -0.395996 +v 0.792969 -0.119629 -0.258301 +v 0.916504 -0.042969 -0.390137 +v -0.916504 -0.042969 -0.390137 +v -0.792969 -0.119629 -0.258301 +v -1.039062 -0.080078 -0.395996 +v 1.272461 0.067871 -0.469238 +v 1.168945 0.041992 -0.495605 +v -1.168945 0.041992 -0.495605 +v -1.272461 0.067871 -0.469238 +v 1.336914 0.299316 -0.466309 +v 1.329427 0.201660 -0.506999 +v -1.329427 0.201660 -0.506999 +v -1.336914 0.299316 -0.466309 +v 1.229492 0.461914 -0.470703 +v 1.306966 0.359375 -0.511393 +v -1.306966 0.359375 -0.511393 +v -1.229492 0.461914 -0.470703 +v 1.032227 0.453125 -0.397949 +v 1.140625 0.399414 -0.496582 +v -1.140625 0.399414 -0.496582 +v -1.032227 0.453125 -0.397949 +v 0.883789 0.390137 -0.321289 +v 0.939941 0.349609 -0.410645 +v -0.939941 0.349609 -0.410645 +v -0.883789 0.390137 -0.321289 +v 1.036621 0.180664 -0.478027 +v 0.835449 0.134766 -0.381836 +v -0.835449 0.134766 -0.381836 +v -1.036621 0.180664 -0.478027 +v 1.257161 0.253906 -0.529460 +v -1.257161 0.253906 -0.529460 +v 0.808594 0.280762 -0.382324 +v -0.808594 0.280762 -0.382324 +v 0.723633 -0.025879 -0.353516 +v -0.723633 -0.025879 -0.353516 +v 0.438843 0.160767 0.759033 +v -0.438843 0.160767 0.759033 +v 0.487305 0.108154 0.685547 +v -0.487305 0.108154 0.685547 +v 0.532227 0.068359 0.581055 +v -0.532227 0.068359 0.581055 +v 0.351562 -0.003906 0.616211 +v -0.351562 -0.003906 0.616211 +v 0.351685 0.052246 0.713013 +v -0.351685 0.052246 0.713013 +v 0.352417 0.127197 0.776123 +v -0.352417 0.127197 0.776123 +v 0.270142 0.160767 0.790894 +v -0.270142 0.160767 0.790894 +v 0.216675 0.108154 0.734497 +v -0.216675 0.108154 0.734497 +v 0.170898 0.068359 0.645508 +v -0.170898 0.068359 0.645508 +v 0.097656 0.243164 0.654297 +v -0.097656 0.243164 0.654297 +v 0.160645 0.242432 0.738037 +v -0.160645 0.242432 0.738037 +v 0.236572 0.243042 0.792969 +v -0.236572 0.243042 0.792969 +v 0.270142 0.329590 0.790894 +v -0.270142 0.329590 0.790894 +v 0.216675 0.377930 0.734497 +v -0.216675 0.377930 0.734497 +v 0.170898 0.422852 0.645508 +v -0.170898 0.422852 0.645508 +v 0.351562 0.496094 0.616211 +v -0.351562 0.496094 0.616211 +v 0.351685 0.434082 0.713013 +v -0.351685 0.434082 0.713013 +v 0.352417 0.364014 0.776123 +v -0.352417 0.364014 0.776123 +v 0.438843 0.329590 0.759033 +v -0.438843 0.329590 0.759033 +v 0.487305 0.377930 0.685547 +v -0.487305 0.377930 0.685547 +v 0.532227 0.422852 0.581055 +v -0.532227 0.422852 0.581055 +v 0.605469 0.243164 0.566406 +v -0.605469 0.243164 0.566406 +v 0.543457 0.242432 0.672607 +v -0.543457 0.242432 0.672607 +v 0.472656 0.243042 0.751221 +v -0.472656 0.243042 0.751221 +v 0.455404 0.243083 0.778971 +v -0.455404 0.243083 0.778971 +v 0.427531 0.318929 0.785848 +v -0.427531 0.318929 0.785848 +v 0.352458 0.350505 0.803426 +v -0.352458 0.350505 0.803426 +v 0.280924 0.318929 0.816406 +v -0.280924 0.318929 0.816406 +v 0.250244 0.243083 0.818197 +v -0.250244 0.243083 0.818197 +v 0.280924 0.171549 0.816406 +v -0.280924 0.171549 0.816406 +v 0.351969 0.242798 0.822428 +v -0.351969 0.242798 0.822428 +v 0.352458 0.140869 0.803426 +v -0.352458 0.140869 0.803426 +v 0.427531 0.171549 0.785848 +v -0.427531 0.171549 0.785848 +v 0.000000 0.432861 0.736816 +v 0.000000 0.352431 0.809679 +v 0.000000 -0.661133 0.736328 +v 0.000000 -0.306152 0.779297 +v 0.000000 -0.175293 0.791260 +v 0.000000 -0.765137 0.714600 +v 0.000000 0.439046 0.617676 +v 0.000000 0.566551 0.546875 +v 0.000000 0.855713 -0.490723 +v 0.000000 0.518066 -0.772461 +v 0.000000 0.093262 -0.771973 +v 0.000000 -0.352295 -0.304688 +v 0.226929 -0.177246 0.577515 +v -0.226929 -0.177246 0.577515 +v 0.288696 -0.443359 0.565674 +v -0.288696 -0.443359 0.565674 +v 0.323975 -0.664795 0.558960 +v -0.323975 -0.664795 0.558960 +v 0.338867 -0.845703 0.532471 +v -0.338867 -0.845703 0.532471 +v 0.302368 -0.930664 0.526001 +v -0.302368 -0.930664 0.526001 +v 0.171387 -0.960205 0.548950 +v -0.171387 -0.960205 0.548950 +v 0.000000 -0.974121 0.565918 +v 0.427002 -0.116943 0.545776 +v -0.427002 -0.116943 0.545776 +v 0.625366 -0.012573 0.525269 +v -0.625366 -0.012573 0.525269 +v 0.789429 0.167603 0.481934 +v -0.789429 0.167603 0.481934 +v 0.816772 0.393555 0.573364 +v -0.816772 0.393555 0.573364 +v 0.693237 0.479858 0.624512 +v -0.693237 0.479858 0.624512 +v 0.491455 0.592407 0.682251 +v -0.491455 0.592407 0.682251 +v 0.322388 0.711792 0.726685 +v -0.322388 0.711792 0.726685 +v 0.174561 0.676270 0.748169 +v -0.174561 0.676270 0.748169 +v 0.075806 0.499878 0.743896 +v -0.075806 0.499878 0.743896 +v 0.166992 0.407227 0.780640 +v -0.166992 0.407227 0.780640 +v 0.122559 0.310059 0.773926 +v -0.122559 0.310059 0.773926 +v 0.212769 0.071533 0.748657 +v -0.212769 0.071533 0.748657 +v 0.371216 0.027466 0.706543 +v -0.371216 0.027466 0.706543 +v 0.505615 0.075317 0.672729 +v -0.505615 0.075317 0.672729 +v 0.617920 0.189331 0.650635 +v -0.617920 0.189331 0.650635 +v 0.639771 0.300171 0.656006 +v -0.639771 0.300171 0.656006 +v 0.590088 0.376709 0.680542 +v -0.590088 0.376709 0.680542 +v 0.439087 0.443237 0.730469 +v -0.439087 0.443237 0.730469 +v 0.246460 0.473877 0.770996 +v -0.246460 0.473877 0.770996 +v 0.000000 -0.746338 0.732666 +v 0.112500 -0.737188 0.726406 +v -0.112500 -0.737188 0.726406 +v 0.121704 -0.835449 0.702271 +v -0.121704 -0.835449 0.702271 +v 0.071045 -0.882446 0.687744 +v -0.071045 -0.882446 0.687744 +v 0.000000 -0.893311 0.682861 +v 0.000000 -0.163086 0.768555 +v 0.000000 -0.134440 0.747396 +v 0.096069 -0.148438 0.753906 +v -0.096069 -0.148438 0.753906 +v 0.123657 -0.225220 0.750610 +v -0.123657 -0.225220 0.750610 +v 0.089531 -0.299844 0.743984 +v -0.089531 -0.299844 0.743984 +v 0.393799 -0.043579 0.667725 +v -0.393799 -0.043579 0.667725 +v 0.593506 0.050903 0.620850 +v -0.593506 0.050903 0.620850 +v 0.713379 0.197754 0.599365 +v -0.713379 0.197754 0.599365 +v 0.733887 0.355591 0.647339 +v -0.733887 0.355591 0.647339 +v 0.658203 0.427490 0.707153 +v -0.658203 0.427490 0.707153 +v 0.456909 0.536621 0.769775 +v -0.456909 0.536621 0.769775 +v 0.317383 0.619995 0.808838 +v -0.317383 0.619995 0.808838 +v 0.204834 0.592285 0.825439 +v -0.204834 0.592285 0.825439 +v 0.105713 0.447510 0.821411 +v -0.105713 0.447510 0.821411 +v 0.142415 -0.096300 0.776693 +v -0.142415 -0.096300 0.776693 +v 0.208252 -0.459473 0.695435 +v -0.208252 -0.459473 0.695435 +v 0.242798 -0.682739 0.678345 +v -0.242798 -0.682739 0.678345 +v 0.253784 -0.813354 0.655640 +v -0.253784 -0.813354 0.655640 +v 0.225098 -0.899292 0.632568 +v -0.225098 -0.899292 0.632568 +v 0.143921 -0.927979 0.631592 +v -0.143921 -0.927979 0.631592 +v 0.000000 -0.939697 0.636719 +v 0.000000 0.041558 0.738824 +v 0.000000 0.209473 0.765137 +v 0.329956 0.484375 0.755249 +v -0.329956 0.484375 0.755249 +v 0.149536 0.133545 0.752197 +v -0.149536 0.133545 0.752197 +v 0.123657 0.213989 0.761841 +v -0.123657 0.213989 0.761841 +v 0.114380 -0.664185 0.730225 +v -0.114380 -0.664185 0.730225 +v 0.089478 -0.457153 0.742188 +v -0.089478 -0.457153 0.742188 +v 0.000000 -0.458984 0.747070 +v 0.000000 -0.333008 0.748047 +v 0.084229 -0.272339 0.781250 +v -0.084229 -0.272339 0.781250 +v 0.121338 -0.221191 0.791138 +v -0.121338 -0.221191 0.791138 +v 0.100342 -0.147827 0.782104 +v -0.100342 -0.147827 0.782104 +v 0.039673 -0.138428 0.782104 +v -0.039673 -0.138428 0.782104 +v 0.000000 -0.202365 0.823351 +v 0.047743 -0.157769 0.809028 +v -0.047743 -0.157769 0.809028 +v 0.088108 -0.165148 0.809028 +v -0.088108 -0.165148 0.809028 +v 0.093994 -0.218994 0.819458 +v -0.093994 -0.218994 0.819458 +v 0.070095 -0.256510 0.804471 +v -0.070095 -0.256510 0.804471 +v 0.000000 -0.274170 0.804688 +v 0.246460 -0.315674 0.560303 +v -0.246460 -0.315674 0.560303 +v 0.164673 -0.234375 0.705688 +v -0.164673 -0.234375 0.705688 +v 0.180176 -0.317871 0.695801 +v -0.180176 -0.317871 0.695801 +v 0.221558 -0.244995 0.565674 +v -0.221558 -0.244995 0.565674 +v 0.000000 -0.873047 0.680908 +v 0.048706 -0.862427 0.684082 +v -0.048706 -0.862427 0.684082 +v 0.090576 -0.816895 0.701782 +v -0.090576 -0.816895 0.701782 +v 0.083862 -0.754517 0.716675 +v -0.083862 -0.754517 0.716675 +v 0.000000 -0.782959 0.662842 +v 0.077393 -0.771606 0.664876 +v -0.077393 -0.771606 0.664876 +v 0.084201 -0.809245 0.658782 +v -0.084201 -0.809245 0.658782 +v 0.051025 -0.838623 0.644246 +v -0.051025 -0.838623 0.644246 +v 0.000000 -0.848877 0.642822 +v 0.172607 0.220825 0.773804 +v -0.172607 0.220825 0.773804 +v 0.189331 0.158203 0.769165 +v -0.189331 0.158203 0.769165 +v 0.337891 0.427856 0.757935 +v -0.337891 0.427856 0.757935 +v 0.271484 0.419922 0.769409 +v -0.271484 0.419922 0.769409 +v 0.428711 0.399902 0.753296 +v -0.428711 0.399902 0.753296 +v 0.548950 0.350830 0.697632 +v -0.548950 0.350830 0.697632 +v 0.584595 0.285400 0.681030 +v -0.584595 0.285400 0.681030 +v 0.568237 0.195679 0.680054 +v -0.568237 0.195679 0.680054 +v 0.476807 0.105957 0.709473 +v -0.476807 0.105957 0.709473 +v 0.369019 0.070679 0.737061 +v -0.369019 0.070679 0.737061 +v 0.239380 0.109009 0.767944 +v -0.239380 0.109009 0.767944 +v 0.178345 0.297974 0.776245 +v -0.178345 0.297974 0.776245 +v 0.211792 0.373779 0.776367 +v -0.211792 0.373779 0.776367 +v 0.235352 0.356445 0.758789 +v -0.235352 0.356445 0.758789 +v 0.200195 0.295898 0.756836 +v -0.200195 0.295898 0.756836 +v 0.253906 0.125977 0.752930 +v -0.253906 0.125977 0.752930 +v 0.369141 0.094727 0.727539 +v -0.369141 0.094727 0.727539 +v 0.460938 0.125000 0.702148 +v -0.460938 0.125000 0.702148 +v 0.537109 0.208008 0.675781 +v -0.537109 0.208008 0.675781 +v 0.550781 0.279297 0.672852 +v -0.550781 0.279297 0.672852 +v 0.519531 0.335938 0.687500 +v -0.519531 0.335938 0.687500 +v 0.418945 0.385742 0.741211 +v -0.418945 0.385742 0.741211 +v 0.282227 0.394531 0.762695 +v -0.282227 0.394531 0.762695 +v 0.338867 0.403320 0.751953 +v -0.338867 0.403320 0.751953 +v 0.207031 0.172852 0.750977 +v -0.207031 0.172852 0.750977 +v 0.196289 0.228516 0.750977 +v -0.196289 0.228516 0.750977 +v 0.125521 0.489245 0.612891 +v -0.125521 0.489245 0.612891 +v 0.205729 0.638021 0.640625 +v -0.205729 0.638021 0.640625 +v 0.327691 0.665365 0.622179 +v -0.327691 0.665365 0.622179 +v 0.458125 0.553438 0.557578 +v -0.458125 0.553438 0.557578 +v 0.668091 0.463501 0.489014 +v -0.668091 0.463501 0.489014 +v 0.780396 0.385376 0.449707 +v -0.780396 0.385376 0.449707 +v 0.769775 0.177979 0.363892 +v -0.769775 0.177979 0.363892 +v 0.619507 -0.000366 0.387573 +v -0.619507 -0.000366 0.387573 +v 0.416667 -0.110781 0.449245 +v -0.416667 -0.110781 0.449245 +v 0.000000 0.856201 0.263916 +v 0.000000 0.950195 -0.085938 +v 0.000000 -0.175049 -0.618652 +v 0.000000 -0.436523 0.129395 +v 0.000000 -0.948242 0.456543 +v 0.000000 -0.786133 0.360352 +v 0.000000 -0.579346 0.325684 +v 0.000000 -0.475830 0.270508 +v 0.814697 0.226074 0.114136 +v -0.814697 0.226074 0.114136 +v 0.836328 0.300938 -0.049844 +v -0.836328 0.300938 -0.049844 +v 0.762813 0.282891 -0.418750 +v -0.762813 0.282891 -0.418750 +v 0.408691 0.442139 -0.665405 +v -0.408691 0.442139 -0.665405 +v 0.700312 -0.032500 0.072812 +v -0.700312 -0.032500 0.072812 +v 0.616094 -0.109531 -0.167969 +v -0.616094 -0.109531 -0.167969 +v 0.649780 0.005127 -0.400513 +v -0.649780 0.005127 -0.400513 +v 0.325521 0.077148 -0.660970 +v -0.325521 0.077148 -0.660970 +v 0.236694 -0.381104 0.408813 +v -0.236694 -0.381104 0.408813 +v 0.161865 -0.426758 0.279297 +v -0.161865 -0.426758 0.279297 +v 0.279541 -0.735840 0.403076 +v -0.279541 -0.735840 0.403076 +v 0.250000 -0.535645 0.407837 +v -0.250000 -0.535645 0.407837 +v 0.286024 -0.887153 0.430339 +v -0.286024 -0.887153 0.430339 +v 0.142334 -0.753784 0.373901 +v -0.142334 -0.753784 0.373901 +v 0.131958 -0.550171 0.349487 +v -0.131958 -0.550171 0.349487 +v 0.162720 -0.924683 0.441650 +v -0.162720 -0.924683 0.441650 +v 0.235833 -0.284766 0.404818 +v -0.235833 -0.284766 0.404818 +v 0.239176 -0.215210 0.474040 +v -0.239176 -0.215210 0.474040 +v 0.253111 -0.171658 0.501809 +v -0.253111 -0.171658 0.501809 +v 0.212630 -0.369297 0.155833 +v -0.212630 -0.369297 0.155833 +v 0.273193 -0.293091 -0.251099 +v -0.273193 -0.293091 -0.251099 +v 0.310872 -0.132080 -0.535482 +v -0.310872 -0.132080 -0.535482 +v 0.420288 0.804932 -0.407593 +v -0.420288 0.804932 -0.407593 +v 0.419922 0.896362 -0.089233 +v -0.419922 0.896362 -0.089233 +v 0.420532 0.808472 0.206787 +v -0.420532 0.808472 0.206787 +v 0.428833 0.561523 0.418091 +v -0.428833 0.561523 0.418091 +v 0.743408 0.409424 0.289062 +v -0.743408 0.409424 0.289062 +v 0.630615 0.487549 0.302734 +v -0.630615 0.487549 0.302734 +v 0.635010 0.679565 0.081543 +v -0.635010 0.679565 0.081543 +v 0.777710 0.535889 0.090576 +v -0.777710 0.535889 0.090576 +v 0.780151 0.582275 -0.138916 +v -0.780151 0.582275 -0.138916 +v 0.636719 0.740601 -0.170044 +v -0.636719 0.740601 -0.170044 +v 0.634277 0.650391 -0.414062 +v -0.634277 0.650391 -0.414062 +v 0.758247 0.524089 -0.343750 +v -0.758247 0.524089 -0.343750 +v 0.603149 0.339111 -0.558228 +v -0.603149 0.339111 -0.558228 +v 0.482005 0.019531 -0.522786 +v -0.482005 0.019531 -0.522786 +v 0.824766 0.347656 -0.205312 +v -0.824766 0.347656 -0.205312 +v 0.405755 -0.181641 0.158802 +v -0.405755 -0.181641 0.158802 +v 0.438843 -0.174072 -0.207764 +v -0.438843 -0.174072 -0.207764 +v 0.897949 0.395508 -0.258789 +v -0.897949 0.395508 -0.258789 +v 0.793335 -0.121094 -0.181519 +v -0.793335 -0.121094 -0.181519 +v 1.035889 -0.077881 -0.333130 +v -1.035889 -0.077881 -0.333130 +v 1.254883 0.070923 -0.426514 +v -1.254883 0.070923 -0.426514 +v 1.320435 0.304077 -0.431396 +v -1.320435 0.304077 -0.431396 +v 1.218506 0.467773 -0.420288 +v -1.218506 0.467773 -0.420288 +v 1.031982 0.459351 -0.333862 +v -1.031982 0.459351 -0.333862 +v 1.027222 0.409180 -0.304321 +v -1.027222 0.409180 -0.304321 +v 1.179810 0.415039 -0.389526 +v -1.179810 0.415039 -0.389526 +v 1.255371 0.280273 -0.411621 +v -1.255371 0.280273 -0.411621 +v 1.200806 0.088623 -0.401611 +v -1.200806 0.088623 -0.401611 +v 1.030518 -0.031006 -0.306030 +v -1.030518 -0.031006 -0.306030 +v 0.839600 -0.064575 -0.168579 +v -0.839600 -0.064575 -0.168579 +v 0.923706 0.356445 -0.236816 +v -0.923706 0.356445 -0.236816 +v 0.946167 0.306885 -0.293213 +v -0.946167 0.306885 -0.293213 +v 0.886963 -0.023926 -0.235107 +v -0.886963 -0.023926 -0.235107 +v 1.037964 0.004150 -0.356323 +v -1.037964 0.004150 -0.356323 +v 1.180054 0.099243 -0.435547 +v -1.180054 0.099243 -0.435547 +v 1.227051 0.247681 -0.445068 +v -1.227051 0.247681 -0.445068 +v 1.165039 0.350952 -0.428589 +v -1.165039 0.350952 -0.428589 +v 1.033203 0.347534 -0.358643 +v -1.033203 0.347534 -0.358643 +v 0.851318 0.287598 -0.216064 +v -0.851318 0.287598 -0.216064 +v 0.828857 0.173584 -0.270386 +v -0.828857 0.173584 -0.270386 +v 0.772461 0.096680 -0.270264 +v -0.772461 0.096680 -0.270264 +v 0.811632 0.071181 -0.281467 +v -0.811632 0.071181 -0.281467 +v 0.823608 0.022583 -0.269653 +v -0.823608 0.022583 -0.269653 +v 0.813721 -0.013672 -0.259521 +v -0.813721 -0.013672 -0.259521 +v 0.739176 0.032064 -0.078288 +v -0.739176 0.032064 -0.078288 +v 0.727526 -0.027448 -0.168229 +v -0.727526 -0.027448 -0.168229 +v 0.738307 0.048411 -0.191979 +v -0.738307 0.048411 -0.191979 +v 0.803589 0.201538 -0.198730 +v -0.803589 0.201538 -0.198730 +v 0.885498 0.245972 -0.269043 +v -0.885498 0.245972 -0.269043 +v 0.900635 0.226685 -0.320068 +v -0.900635 0.226685 -0.320068 +v 0.837023 -0.007595 -0.299479 +v -0.837023 -0.007595 -0.299479 +v 0.853027 0.024536 -0.315186 +v -0.853027 0.024536 -0.315186 +v 0.830688 0.077881 -0.315430 +v -0.830688 0.077881 -0.315430 +v 0.794705 0.106554 -0.310113 +v -0.794705 0.106554 -0.310113 +v 0.845459 0.162964 -0.315552 +v -0.845459 0.162964 -0.315552 +v 1.049113 0.320719 -0.404785 +v -1.049113 0.320719 -0.404785 +v 1.164836 0.323649 -0.460449 +v -1.164836 0.323649 -0.460449 +v 1.222412 0.234009 -0.471924 +v -1.222412 0.234009 -0.471924 +v 1.175903 0.106567 -0.460327 +v -1.175903 0.106567 -0.460327 +v 1.039795 0.023315 -0.397949 +v -1.039795 0.023315 -0.397949 +v 0.899414 -0.004639 -0.291016 +v -0.899414 -0.004639 -0.291016 +v 0.962769 0.281982 -0.345825 +v -0.962769 0.281982 -0.345825 +v 0.890503 0.114258 -0.329834 +v -0.890503 0.114258 -0.329834 +v 0.924194 0.060791 -0.331177 +v -0.924194 0.060791 -0.331177 +v 1.000000 0.116333 -0.369141 +v -1.000000 0.116333 -0.369141 +v 0.955688 0.173706 -0.349731 +v -0.955688 0.173706 -0.349731 +v 1.014526 0.232300 -0.371948 +v -1.014526 0.232300 -0.371948 +v 1.067749 0.177734 -0.392822 +v -1.067749 0.177734 -0.392822 +v 1.123481 0.223524 -0.411024 +v -1.123481 0.223524 -0.411024 +v 1.087077 0.274699 -0.401489 +v -1.087077 0.274699 -0.401489 +v 1.032837 0.375732 -0.458740 +v -1.032837 0.375732 -0.458740 +v 1.239828 0.400635 -0.516642 +v -1.239828 0.400635 -0.516642 +v 1.328270 0.287543 -0.496600 +v -1.328270 0.287543 -0.496600 +v 1.274984 0.114136 -0.510905 +v -1.274984 0.114136 -0.510905 +v 1.039917 -0.011475 -0.456787 +v -1.039917 -0.011475 -0.456787 +v 0.807983 -0.048950 -0.340698 +v -0.807983 -0.048950 -0.340698 +v 0.864380 0.318726 -0.376953 +v -0.864380 0.318726 -0.376953 +vn 0.7026 -0.2288 0.6737 +vn 0.7445 -0.0009 0.6676 +vn 0.8217 -0.0020 0.5698 +vn 0.7767 -0.2632 0.5723 +vn 0.6287 -0.5156 0.5821 +vn 0.5730 -0.4353 0.6944 +vn 0.6180 -0.5026 0.6045 +vn 0.7596 -0.2644 0.5942 +vn 0.8061 -0.0010 0.5918 +vn -0.7026 -0.2288 0.6737 +vn -0.7596 -0.2644 0.5942 +vn -0.6180 -0.5026 0.6045 +vn -0.5730 -0.4353 0.6944 +vn -0.6287 -0.5156 0.5821 +vn -0.7767 -0.2632 0.5723 +vn -0.8217 -0.0020 0.5698 +vn -0.7445 -0.0009 0.6676 +vn -0.8061 -0.0010 0.5918 +vn 0.8140 -0.2987 0.4982 +vn 0.8653 -0.0014 0.5013 +vn 0.6565 -0.5697 0.4944 +vn 0.6788 -0.5730 0.4593 +vn 0.8319 -0.2991 0.4673 +vn 0.8815 -0.0005 0.4722 +vn -0.8140 -0.2987 0.4982 +vn -0.8319 -0.2991 0.4673 +vn -0.6788 -0.5730 0.4593 +vn -0.6565 -0.5697 0.4944 +vn -0.8653 -0.0014 0.5013 +vn -0.8815 -0.0005 0.4722 +vn 0.4063 -0.7709 0.4905 +vn 0.3952 -0.6762 0.6217 +vn 0.1123 -0.7552 0.6458 +vn 0.0867 -0.8619 0.4996 +vn 0.0978 -0.8884 0.4485 +vn 0.4259 -0.7866 0.4469 +vn -0.4063 -0.7709 0.4905 +vn -0.4259 -0.7866 0.4469 +vn -0.0978 -0.8884 0.4485 +vn -0.0867 -0.8619 0.4996 +vn -0.1123 -0.7552 0.6458 +vn -0.3952 -0.6762 0.6217 +vn 0.3758 -0.5788 0.7237 +vn 0.3985 -0.7006 0.5919 +vn 0.1170 -0.7839 0.6098 +vn 0.1366 -0.6412 0.7551 +vn -0.3758 -0.5788 0.7237 +vn -0.1366 -0.6412 0.7551 +vn -0.1170 -0.7839 0.6098 +vn -0.3985 -0.7006 0.5919 +vn -0.1264 -0.6138 0.7793 +vn -0.1992 -0.7512 0.6292 +vn -0.4938 -0.5785 0.6492 +vn -0.3735 -0.4707 0.7993 +vn -0.4609 -0.5484 0.6977 +vn -0.1908 -0.7165 0.6709 +vn 0.1264 -0.6138 0.7793 +vn 0.1908 -0.7165 0.6709 +vn 0.4609 -0.5484 0.6977 +vn 0.3735 -0.4707 0.7993 +vn 0.4938 -0.5785 0.6492 +vn 0.1992 -0.7512 0.6292 +vn -0.2506 -0.8151 0.5222 +vn -0.5448 -0.6261 0.5578 +vn -0.5631 -0.6512 0.5087 +vn -0.2562 -0.8449 0.4696 +vn 0.2506 -0.8151 0.5222 +vn 0.2562 -0.8449 0.4696 +vn 0.5631 -0.6512 0.5087 +vn 0.5448 -0.6261 0.5578 +vn -0.7400 -0.3327 0.5845 +vn -0.6379 -0.2872 0.7145 +vn -0.6939 -0.0011 0.7200 +vn -0.8030 -0.0016 0.5960 +vn -0.8332 -0.0004 0.5528 +vn -0.7674 -0.3469 0.5391 +vn 0.7400 -0.3327 0.5845 +vn 0.7674 -0.3469 0.5391 +vn 0.8332 -0.0004 0.5528 +vn 0.8030 -0.0016 0.5960 +vn 0.6939 -0.0011 0.7200 +vn 0.6379 -0.2872 0.7145 +vn -0.5377 -0.2427 0.8074 +vn -0.6959 -0.3048 0.6503 +vn -0.7620 -0.0024 0.6476 +vn -0.5881 -0.0010 0.8088 +vn 0.5377 -0.2427 0.8074 +vn 0.5881 -0.0010 0.8088 +vn 0.7620 -0.0024 0.6476 +vn 0.6959 -0.3048 0.6503 +vn -0.5460 0.2400 0.8026 +vn -0.7093 0.2954 0.6400 +vn -0.5208 0.5792 0.6271 +vn -0.3913 0.4767 0.7871 +vn -0.4645 0.5423 0.7001 +vn -0.6393 0.2820 0.7153 +vn 0.5460 0.2400 0.8026 +vn 0.6393 0.2820 0.7153 +vn 0.4645 0.5423 0.7001 +vn 0.3913 0.4767 0.7871 +vn 0.5208 0.5792 0.6271 +vn 0.7093 0.2954 0.6400 +vn -0.7369 0.3239 0.5933 +vn -0.5383 0.6099 0.5815 +vn -0.5492 0.6364 0.5415 +vn -0.7614 0.3409 0.5514 +vn 0.7369 0.3239 0.5933 +vn 0.7614 0.3409 0.5514 +vn 0.5492 0.6364 0.5415 +vn 0.5383 0.6099 0.5815 +vn -0.2402 0.7946 0.5576 +vn -0.1919 0.7134 0.6739 +vn 0.1135 0.7522 0.6491 +vn 0.0937 0.8381 0.5373 +vn 0.1059 0.8595 0.5000 +vn -0.2394 0.8210 0.5183 +vn 0.2402 0.7946 0.5576 +vn 0.2394 0.8210 0.5183 +vn -0.1059 0.8595 0.5000 +vn -0.0937 0.8381 0.5373 +vn -0.1135 0.7522 0.6491 +vn 0.1919 0.7134 0.6739 +vn -0.1411 0.6346 0.7598 +vn -0.2207 0.7732 0.5944 +vn 0.1092 0.8140 0.5705 +vn 0.1326 0.6666 0.7335 +vn 0.1411 0.6346 0.7598 +vn -0.1326 0.6666 0.7335 +vn -0.1092 0.8140 0.5705 +vn 0.2207 0.7732 0.5944 +vn 0.3824 0.5981 0.7043 +vn 0.4064 0.7231 0.5585 +vn 0.6461 0.5174 0.5611 +vn 0.5845 0.4404 0.6814 +vn 0.6213 0.4963 0.6063 +vn 0.3975 0.6723 0.6245 +vn -0.3824 0.5981 0.7043 +vn -0.3975 0.6723 0.6245 +vn -0.6213 0.4963 0.6063 +vn -0.5845 0.4404 0.6814 +vn -0.6461 0.5174 0.5611 +vn -0.4064 0.7231 0.5585 +vn 0.4072 0.7488 0.5229 +vn 0.6556 0.5524 0.5147 +vn 0.6735 0.5574 0.4855 +vn 0.4238 0.7617 0.4901 +vn -0.4072 0.7488 0.5229 +vn -0.4238 0.7617 0.4901 +vn -0.6735 0.5574 0.4855 +vn -0.6556 0.5524 0.5147 +vn 0.8125 0.2903 0.5055 +vn 0.7608 0.2596 0.5948 +vn 0.8287 0.2932 0.4768 +vn -0.8125 0.2903 0.5055 +vn -0.8287 0.2932 0.4768 +vn -0.7608 0.2596 0.5948 +vn 0.7085 0.2262 0.6684 +vn 0.7859 0.2558 0.5629 +vn -0.7085 0.2262 0.6684 +vn -0.7859 0.2558 0.5629 +vn 0.8242 0.2714 0.4970 +vn 0.8639 -0.0021 0.5037 +vn 0.6759 0.5636 0.4748 +vn 0.5488 0.3615 0.7537 +vn 0.6452 0.1762 0.7434 +vn 0.6610 -0.0017 0.7504 +vn -0.8242 0.2714 0.4970 +vn -0.6452 0.1762 0.7434 +vn -0.5488 0.3615 0.7537 +vn -0.6759 0.5636 0.4748 +vn -0.8639 -0.0021 0.5037 +vn -0.6610 -0.0017 0.7504 +vn 0.4140 0.7926 0.4476 +vn 0.0790 0.8989 0.4309 +vn 0.1519 0.6136 0.7749 +vn 0.3803 0.5412 0.7500 +vn -0.4140 0.7926 0.4476 +vn -0.3803 0.5412 0.7500 +vn -0.1519 0.6136 0.7749 +vn -0.0790 0.8989 0.4309 +vn -0.2797 0.8451 0.4555 +vn -0.6043 0.6354 0.4807 +vn -0.3565 0.4280 0.8305 +vn -0.1240 0.5898 0.7979 +vn 0.2797 0.8451 0.4555 +vn 0.1240 0.5898 0.7979 +vn 0.3565 0.4280 0.8305 +vn 0.6043 0.6354 0.4807 +vn -0.8139 0.3346 0.4749 +vn -0.8879 -0.0027 0.4599 +vn -0.5820 -0.0026 0.8132 +vn -0.5314 0.2252 0.8166 +vn 0.8139 0.3346 0.4749 +vn 0.5314 0.2252 0.8166 +vn 0.5820 -0.0026 0.8132 +vn 0.8879 -0.0027 0.4599 +vn -0.8073 -0.3495 0.4755 +vn -0.5900 -0.6490 0.4804 +vn -0.3543 -0.4525 0.8183 +vn -0.5325 -0.2423 0.8110 +vn 0.8073 -0.3495 0.4755 +vn 0.5325 -0.2423 0.8110 +vn 0.3543 -0.4525 0.8183 +vn 0.5900 -0.6490 0.4804 +vn -0.2738 -0.8468 0.4560 +vn 0.0803 -0.8973 0.4339 +vn 0.1466 -0.6416 0.7529 +vn -0.1298 -0.6138 0.7786 +vn 0.2738 -0.8468 0.4560 +vn 0.1298 -0.6138 0.7786 +vn -0.1466 -0.6416 0.7529 +vn -0.0803 -0.8973 0.4339 +vn 0.4104 -0.7920 0.4521 +vn 0.6640 -0.5732 0.4801 +vn 0.5464 -0.3853 0.7436 +vn 0.3799 -0.5659 0.7317 +vn -0.4104 -0.7920 0.4521 +vn -0.3799 -0.5659 0.7317 +vn -0.5464 -0.3853 0.7436 +vn -0.6640 -0.5732 0.4801 +vn 0.8186 -0.2834 0.4995 +vn 0.6461 -0.1909 0.7390 +vn -0.8186 -0.2834 0.4995 +vn -0.6461 -0.1909 0.7390 +vn 0.4147 -0.0753 0.9068 +vn 0.3993 -0.0009 0.9168 +vn 0.1909 -0.0026 0.9816 +vn 0.3533 -0.1263 0.9269 +vn -0.4147 -0.0753 0.9068 +vn -0.3993 -0.0009 0.9168 +vn -0.3533 -0.1263 0.9269 +vn -0.1909 -0.0026 0.9816 +vn 0.3022 -0.2071 0.9304 +vn 0.2018 -0.1978 0.9592 +vn -0.3022 -0.2071 0.9304 +vn -0.2018 -0.1978 0.9592 +vn 0.0805 -0.2155 0.9731 +vn 0.0087 -0.1246 0.9922 +vn -0.0805 -0.2155 0.9731 +vn -0.0087 -0.1246 0.9922 +vn -0.0868 -0.0638 0.9942 +vn -0.0680 -0.0005 0.9977 +vn 0.0868 -0.0638 0.9942 +vn 0.0680 -0.0005 0.9977 +vn -0.0860 0.0581 0.9946 +vn 0.0099 0.1171 0.9930 +vn 0.0860 0.0581 0.9946 +vn -0.0099 0.1171 0.9930 +vn 0.0827 0.2034 0.9756 +vn 0.2025 0.1854 0.9616 +vn -0.0827 0.2034 0.9756 +vn -0.2025 0.1854 0.9616 +vn 0.3013 0.1955 0.9333 +vn 0.3526 0.1187 0.9282 +vn -0.3013 0.1955 0.9333 +vn -0.3526 0.1187 0.9282 +vn 0.4141 0.0692 0.9076 +vn -0.4141 0.0692 0.9076 +vn 0.1013 -0.8988 0.4265 +vn 0.0974 -0.9854 0.1393 +vn 0.1486 -0.9830 0.1075 +vn 0.1638 -0.8959 0.4129 +vn 0.1553 -0.7689 0.6201 +vn 0.0913 -0.7884 0.6084 +vn 0.0000 -0.7937 0.6083 +vn 0.0000 -0.8998 0.4363 +vn 0.0000 -0.9875 0.1578 +vn -0.1013 -0.8988 0.4265 +vn -0.0913 -0.7884 0.6084 +vn -0.1553 -0.7689 0.6201 +vn -0.1638 -0.8959 0.4129 +vn -0.1486 -0.9830 0.1075 +vn -0.0974 -0.9854 0.1393 +vn 0.2691 -0.8563 0.4408 +vn 0.2618 -0.9602 0.0968 +vn 0.5966 -0.7948 0.1108 +vn 0.4728 -0.7157 0.5140 +vn 0.3790 -0.5518 0.7429 +vn 0.2496 -0.7011 0.6679 +vn -0.2691 -0.8563 0.4408 +vn -0.2496 -0.7011 0.6679 +vn -0.3790 -0.5518 0.7429 +vn -0.4728 -0.7157 0.5140 +vn -0.5966 -0.7948 0.1108 +vn -0.2618 -0.9602 0.0968 +vn 0.6876 -0.4386 0.5786 +vn 0.9110 -0.3928 0.1255 +vn 0.9888 -0.0705 0.1315 +vn 0.7877 -0.1961 0.5841 +vn 0.5328 -0.2221 0.8166 +vn 0.4731 -0.3672 0.8008 +vn -0.6876 -0.4386 0.5786 +vn -0.4731 -0.3672 0.8008 +vn -0.5328 -0.2221 0.8166 +vn -0.7877 -0.1961 0.5841 +vn -0.9888 -0.0705 0.1315 +vn -0.9110 -0.3928 0.1255 +vn 0.8199 -0.0451 0.5707 +vn 0.9910 0.0608 0.1194 +vn 0.9857 0.1151 0.1227 +vn 0.8224 0.0426 0.5672 +vn 0.5830 -0.0129 0.8123 +vn 0.5698 -0.1009 0.8155 +vn -0.8199 -0.0451 0.5707 +vn -0.5698 -0.1009 0.8155 +vn -0.5830 -0.0129 0.8123 +vn -0.8224 0.0426 0.5672 +vn -0.9857 0.1151 0.1227 +vn -0.9910 0.0608 0.1194 +vn 0.8236 0.0976 0.5587 +vn 0.9810 0.1482 0.1246 +vn 0.9664 0.2156 0.1400 +vn 0.8290 0.1676 0.5335 +vn 0.6127 0.0856 0.7857 +vn 0.5905 0.0348 0.8063 +vn -0.8236 0.0976 0.5587 +vn -0.5905 0.0348 0.8063 +vn -0.6127 0.0856 0.7857 +vn -0.8290 0.1676 0.5335 +vn -0.9664 0.2156 0.1400 +vn -0.9810 0.1482 0.1246 +vn 0.3760 -0.7764 0.5057 +vn 0.6395 -0.5788 0.5060 +vn 0.6312 -0.7315 0.2577 +vn 0.3357 -0.9148 0.2247 +vn 0.3594 -0.9104 0.2048 +vn 0.3699 -0.7553 0.5410 +vn 0.3833 -0.5538 0.7392 +vn 0.4059 -0.4789 0.7784 +vn 0.2224 -0.2015 0.9539 +vn -0.3760 -0.7764 0.5057 +vn -0.4059 -0.4789 0.7784 +vn -0.3833 -0.5538 0.7392 +vn -0.3699 -0.7553 0.5410 +vn -0.3594 -0.9104 0.2048 +vn -0.3357 -0.9148 0.2247 +vn -0.6312 -0.7315 0.2577 +vn -0.6395 -0.5788 0.5060 +vn -0.2224 -0.2015 0.9539 +vn 0.4436 -0.6890 0.5732 +vn 0.4747 -0.8574 0.1988 +vn 0.6093 -0.7706 0.1869 +vn 0.5705 -0.5891 0.5722 +vn 0.4942 -0.4318 0.7545 +vn 0.4143 -0.5242 0.7440 +vn -0.4436 -0.6890 0.5732 +vn -0.4143 -0.5242 0.7440 +vn -0.4942 -0.4318 0.7545 +vn -0.5705 -0.5891 0.5722 +vn -0.6093 -0.7706 0.1869 +vn -0.4747 -0.8574 0.1988 +vn 0.6833 -0.4799 0.5502 +vn 0.7487 -0.6463 0.1475 +vn 0.8958 -0.4275 0.1217 +vn 0.7323 -0.3916 0.5570 +vn 0.5848 -0.3207 0.7450 +vn 0.5697 -0.3544 0.7415 +vn -0.6833 -0.4799 0.5502 +vn -0.5697 -0.3544 0.7415 +vn -0.5848 -0.3207 0.7450 +vn -0.7323 -0.3916 0.5570 +vn -0.8958 -0.4275 0.1217 +vn -0.7487 -0.6463 0.1475 +vn 0.7373 -0.3048 0.6029 +vn 0.9754 -0.1516 0.1599 +vn 0.9350 0.2832 0.2136 +vn 0.7463 -0.0554 0.6633 +vn 0.4877 -0.2933 0.8222 +vn 0.5343 -0.3123 0.7855 +vn -0.7373 -0.3048 0.6029 +vn -0.5343 -0.3123 0.7855 +vn -0.4877 -0.2933 0.8222 +vn -0.7463 -0.0554 0.6633 +vn -0.9350 0.2832 0.2136 +vn -0.9754 -0.1516 0.1599 +vn 0.6398 0.3261 0.6959 +vn 0.6597 0.7158 0.2290 +vn 0.4722 0.8653 0.1680 +vn 0.5278 0.5485 0.6485 +vn 0.3531 -0.0467 0.9344 +vn 0.4388 -0.1542 0.8853 +vn -0.6398 0.3261 0.6959 +vn -0.4388 -0.1542 0.8853 +vn -0.3531 -0.0467 0.9344 +vn -0.5278 0.5485 0.6485 +vn -0.4722 0.8653 0.1680 +vn -0.6597 0.7158 0.2290 +vn 0.5186 0.6028 0.6063 +vn 0.5128 0.8468 0.1412 +vn 0.5889 0.7935 0.1528 +vn 0.5512 0.5639 0.6149 +vn 0.3050 0.0286 0.9519 +vn 0.3088 0.0168 0.9510 +vn -0.5186 0.6028 0.6063 +vn -0.3088 0.0168 0.9510 +vn -0.3050 0.0286 0.9519 +vn -0.5512 0.5639 0.6149 +vn -0.5889 0.7935 0.1528 +vn -0.5128 0.8468 0.1412 +vn 0.5353 0.5546 0.6370 +vn 0.5885 0.7905 0.1694 +vn 0.3149 0.9322 0.1784 +vn 0.3319 0.6427 0.6905 +vn 0.2586 0.1027 0.9605 +vn 0.3086 0.0515 0.9498 +vn -0.5353 0.5546 0.6370 +vn -0.3086 0.0515 0.9498 +vn -0.2586 0.1027 0.9605 +vn -0.3319 0.6427 0.6905 +vn -0.3149 0.9322 0.1784 +vn -0.5885 0.7905 0.1694 +vn -0.0721 0.6702 0.7386 +vn -0.2044 0.9612 0.1852 +vn -0.6691 0.7264 0.1569 +vn -0.4671 0.5218 0.7138 +vn -0.0484 0.0743 0.9960 +vn 0.1073 0.1224 0.9866 +vn 0.0721 0.6702 0.7386 +vn -0.1073 0.1224 0.9866 +vn 0.0484 0.0743 0.9960 +vn 0.4671 0.5218 0.7138 +vn 0.6691 0.7264 0.1569 +vn 0.2044 0.9612 0.1852 +vn -0.6618 0.3796 0.6464 +vn -0.8628 0.4939 0.1071 +vn -0.8420 0.5299 0.1007 +vn -0.6774 0.4034 0.6152 +vn -0.1277 0.0013 0.9918 +vn -0.1031 0.0225 0.9944 +vn 0.6618 0.3796 0.6464 +vn 0.1031 0.0225 0.9944 +vn 0.1277 0.0013 0.9918 +vn 0.6774 0.4034 0.6152 +vn 0.8420 0.5299 0.1007 +vn 0.8628 0.4939 0.1071 +vn -0.5088 0.5512 0.6612 +vn -0.6072 0.7778 0.1621 +vn 0.0000 0.9756 0.2193 +vn 0.0000 0.6668 0.7452 +vn 0.0000 -0.0605 0.9981 +vn -0.1101 0.0268 0.9935 +vn 0.5088 0.5512 0.6612 +vn 0.1101 0.0268 0.9935 +vn 0.6072 0.7778 0.1621 +vn 0.3611 -0.2973 0.8838 +vn 0.3395 -0.3070 0.8890 +vn 0.3023 -0.2282 0.9254 +vn 0.3223 -0.2322 0.9177 +vn 0.2867 -0.2475 0.9255 +vn 0.3045 -0.3032 0.9030 +vn -0.3611 -0.2973 0.8838 +vn -0.3045 -0.3032 0.9030 +vn -0.2867 -0.2475 0.9255 +vn -0.3223 -0.2322 0.9177 +vn -0.3023 -0.2282 0.9254 +vn -0.3395 -0.3070 0.8890 +vn 0.2137 -0.3260 0.9209 +vn 0.2097 -0.2718 0.9392 +vn 0.1221 -0.2682 0.9556 +vn 0.1245 -0.3499 0.9285 +vn -0.2137 -0.3260 0.9209 +vn -0.1245 -0.3499 0.9285 +vn -0.1221 -0.2682 0.9556 +vn -0.2097 -0.2718 0.9392 +vn 0.0646 -0.3724 0.9258 +vn 0.1082 -0.2139 0.9708 +vn 0.1801 -0.1840 0.9663 +vn 0.0557 -0.4075 0.9115 +vn -0.0646 -0.3724 0.9258 +vn -0.0557 -0.4075 0.9115 +vn -0.1801 -0.1840 0.9663 +vn -0.1082 -0.2139 0.9708 +vn 0.0530 -0.4616 0.8855 +vn 0.1921 -0.2719 0.9429 +vn 0.1528 -0.3345 0.9299 +vn 0.0718 -0.4719 0.8787 +vn -0.0530 -0.4616 0.8855 +vn -0.0718 -0.4719 0.8787 +vn -0.1528 -0.3345 0.9299 +vn -0.1921 -0.2719 0.9429 +vn 0.1604 -0.4128 0.8966 +vn 0.1758 -0.2642 0.9483 +vn 0.2765 -0.1595 0.9477 +vn 0.2597 -0.3053 0.9162 +vn -0.1604 -0.4128 0.8966 +vn -0.2597 -0.3053 0.9162 +vn -0.2765 -0.1595 0.9477 +vn -0.1758 -0.2642 0.9483 +vn 0.3709 -0.2365 0.8981 +vn 0.3782 -0.1468 0.9140 +vn 0.4426 -0.2005 0.8740 +vn 0.4479 -0.2346 0.8628 +vn -0.3709 -0.2365 0.8981 +vn -0.4479 -0.2346 0.8628 +vn -0.4426 -0.2005 0.8740 +vn -0.3782 -0.1468 0.9140 +vn 0.4523 -0.2641 0.8519 +vn 0.4595 -0.2818 0.8422 +vn 0.4381 -0.3674 0.8203 +vn 0.4180 -0.3284 0.8470 +vn -0.4523 -0.2641 0.8519 +vn -0.4180 -0.3284 0.8470 +vn -0.4381 -0.3674 0.8203 +vn -0.4595 -0.2818 0.8422 +vn 0.3772 -0.3832 0.8431 +vn 0.3653 -0.4198 0.8308 +vn 0.2754 -0.3645 0.8895 +vn 0.3489 -0.3186 0.8813 +vn -0.3772 -0.3832 0.8431 +vn -0.3489 -0.3186 0.8813 +vn -0.2754 -0.3645 0.8895 +vn -0.3653 -0.4198 0.8308 +vn 0.3385 -0.1362 0.9311 +vn 0.2042 -0.2394 0.9492 +vn 0.0949 -0.1164 0.9886 +vn 0.1773 0.0334 0.9836 +vn -0.3385 -0.1362 0.9311 +vn -0.1773 0.0334 0.9836 +vn -0.0949 -0.1164 0.9886 +vn -0.2042 -0.2394 0.9492 +vn -0.0553 0.1228 0.9909 +vn -0.0743 -0.0430 0.9963 +vn -0.1480 -0.0871 0.9851 +vn -0.0793 0.0170 0.9967 +vn 0.0000 0.0410 0.9991 +vn -0.1584 0.0752 0.9845 +vn 0.0553 0.1228 0.9909 +vn 0.1584 0.0752 0.9845 +vn 0.0793 0.0170 0.9967 +vn 0.1480 -0.0871 0.9851 +vn 0.0743 -0.0430 0.9963 +vn 0.2595 -0.2910 0.9208 +vn 0.2269 -0.2029 0.9525 +vn 0.1860 -0.2592 0.9477 +vn 0.1292 -0.1621 0.9783 +vn -0.2595 -0.2910 0.9208 +vn -0.1860 -0.2592 0.9477 +vn -0.2269 -0.2029 0.9525 +vn -0.1292 -0.1621 0.9783 +vn 0.1158 -0.2364 0.9647 +vn 0.0205 -0.1478 0.9888 +vn 0.0000 -0.2752 0.9614 +vn 0.0000 -0.2464 0.9691 +vn 0.0408 -0.2159 0.9755 +vn -0.0753 -0.1647 0.9835 +vn -0.1158 -0.2364 0.9647 +vn -0.0408 -0.2159 0.9755 +vn -0.0205 -0.1478 0.9888 +vn 0.0753 -0.1647 0.9835 +vn -0.0147 -0.1467 0.9890 +vn 0.0000 -0.1498 0.9887 +vn -0.1269 -0.1612 0.9787 +vn 0.0147 -0.1467 0.9890 +vn 0.1269 -0.1612 0.9787 +vn 0.0703 -0.7020 0.7087 +vn 0.1345 -0.6642 0.7353 +vn 0.0715 -0.5286 0.8458 +vn 0.0265 -0.5470 0.8367 +vn 0.0000 -0.5490 0.8358 +vn 0.0000 -0.7104 0.7037 +vn -0.0703 -0.7020 0.7087 +vn -0.0265 -0.5470 0.8367 +vn -0.0715 -0.5286 0.8458 +vn -0.1345 -0.6642 0.7353 +vn 0.2176 -0.5720 0.7908 +vn 0.3114 -0.4183 0.8532 +vn 0.2297 -0.3344 0.9140 +vn 0.1450 -0.4586 0.8767 +vn -0.2176 -0.5720 0.7908 +vn -0.1450 -0.4586 0.8767 +vn -0.2297 -0.3344 0.9140 +vn -0.3114 -0.4183 0.8532 +vn 0.3531 -0.2842 0.8914 +vn 0.3624 -0.1942 0.9116 +vn 0.2039 -0.1396 0.9690 +vn 0.2625 -0.2235 0.9387 +vn -0.3531 -0.2842 0.8914 +vn -0.2625 -0.2235 0.9387 +vn -0.2039 -0.1396 0.9690 +vn -0.3624 -0.1942 0.9116 +vn 0.3601 -0.0134 0.9328 +vn 0.3628 0.0179 0.9317 +vn 0.1709 -0.0082 0.9852 +vn 0.1759 -0.0381 0.9836 +vn 0.1879 -0.0502 0.9809 +vn 0.3688 -0.0431 0.9285 +vn -0.3601 -0.0134 0.9328 +vn -0.3688 -0.0431 0.9285 +vn -0.1879 -0.0502 0.9809 +vn -0.1759 -0.0381 0.9836 +vn -0.1709 -0.0082 0.9852 +vn -0.3628 0.0179 0.9317 +vn 0.3719 -0.1082 0.9219 +vn 0.2041 -0.0785 0.9758 +vn -0.3719 -0.1082 0.9219 +vn -0.2041 -0.0785 0.9758 +vn 0.0516 -0.0133 0.9986 +vn 0.1820 -0.0071 0.9832 +vn 0.3687 -0.2946 0.8816 +vn 0.1371 -0.2930 0.9462 +vn 0.0000 -0.2781 0.9605 +vn 0.0000 -0.0112 0.9999 +vn 0.0000 -0.0174 0.9998 +vn 0.0489 -0.0152 0.9987 +vn -0.0516 -0.0133 0.9986 +vn -0.0489 -0.0152 0.9987 +vn -0.1371 -0.2930 0.9462 +vn -0.3687 -0.2946 0.8816 +vn -0.1820 -0.0071 0.9832 +vn 0.0498 -0.0496 0.9975 +vn 0.0535 -0.0492 0.9973 +vn 0.0000 -0.0531 0.9986 +vn 0.0000 -0.0481 0.9988 +vn -0.0498 -0.0496 0.9975 +vn -0.0535 -0.0492 0.9973 +vn 0.0603 -0.0506 0.9969 +vn 0.0000 -0.0490 0.9988 +vn 0.0000 -0.2191 0.9757 +vn 0.0616 -0.1604 0.9851 +vn -0.0603 -0.0506 0.9969 +vn -0.0616 -0.1604 0.9851 +vn 0.8101 -0.5206 0.2695 +vn 0.6591 -0.3285 0.6764 +vn 0.8069 -0.1540 0.5702 +vn 0.9893 -0.1196 0.0834 +vn 0.9654 -0.1447 0.2170 +vn 0.7595 -0.5770 0.3002 +vn 0.5068 -0.7531 0.4195 +vn 0.5444 -0.6865 0.4820 +vn -0.8101 -0.5206 0.2695 +vn -0.5444 -0.6865 0.4820 +vn -0.5068 -0.7531 0.4195 +vn -0.7595 -0.5770 0.3002 +vn -0.9654 -0.1447 0.2170 +vn -0.9893 -0.1196 0.0834 +vn -0.8069 -0.1540 0.5702 +vn -0.6591 -0.3285 0.6764 +vn 0.9521 0.3053 -0.0150 +vn 0.7118 0.0535 0.7003 +vn 0.1883 0.3279 0.9257 +vn 0.6900 0.7230 -0.0348 +vn 0.6771 0.7309 0.0845 +vn 0.9403 0.3027 0.1553 +vn -0.9521 0.3053 -0.0150 +vn -0.9403 0.3027 0.1553 +vn -0.6771 0.7309 0.0845 +vn -0.6900 0.7230 -0.0348 +vn -0.1883 0.3279 0.9257 +vn -0.7118 0.0535 0.7003 +vn 0.1513 0.9760 0.1567 +vn -0.1393 0.3377 0.9308 +vn 0.0000 0.3071 0.9516 +vn -0.3819 0.7942 0.4725 +vn -0.3622 0.9046 0.2248 +vn 0.1691 0.9815 0.0898 +vn -0.1513 0.9760 0.1567 +vn -0.1691 0.9815 0.0898 +vn 0.3622 0.9046 0.2248 +vn 0.3819 0.7942 0.4725 +vn 0.1393 0.3377 0.9308 +vn -0.5629 0.6625 0.4942 +vn 0.0000 0.5641 0.8257 +vn 0.0000 0.7592 0.6508 +vn 0.0000 0.9512 0.3086 +vn 0.0000 0.9604 0.2787 +vn -0.6304 0.7240 0.2799 +vn 0.5629 0.6625 0.4942 +vn 0.6304 0.7240 0.2799 +vn 0.3013 -0.7327 0.6101 +vn 0.0000 -0.7526 0.6585 +vn 0.3194 -0.8045 0.5007 +vn 0.0000 -0.8502 0.5265 +vn -0.3013 -0.7327 0.6101 +vn -0.3194 -0.8045 0.5007 +vn 0.2302 -0.6451 0.7286 +vn 0.0000 -0.6576 0.7533 +vn 0.3463 -0.6695 0.6572 +vn 0.2080 -0.5670 0.7970 +vn 0.1349 -0.5040 0.8531 +vn 0.0000 -0.4764 0.8792 +vn -0.2302 -0.6451 0.7286 +vn -0.1349 -0.5040 0.8531 +vn -0.2080 -0.5670 0.7970 +vn -0.3463 -0.6695 0.6572 +vn -0.4309 0.6798 0.5935 +vn 0.0000 0.7281 0.6855 +vn 0.0000 0.1380 0.9904 +vn -0.1492 0.4078 0.9008 +vn -0.1429 0.5270 0.8377 +vn -0.2760 0.7595 0.5891 +vn 0.4309 0.6798 0.5935 +vn 0.2760 0.7595 0.5891 +vn 0.1429 0.5270 0.8377 +vn 0.1492 0.4078 0.9008 +vn 0.1478 0.8042 0.5756 +vn 0.0898 0.4945 0.8645 +vn 0.3161 0.4170 0.8521 +vn 0.5474 0.6037 0.5795 +vn -0.1478 0.8042 0.5756 +vn -0.5474 0.6037 0.5795 +vn -0.3161 0.4170 0.8521 +vn -0.0898 0.4945 0.8645 +vn 0.7382 0.2666 0.6197 +vn 0.3411 0.2132 0.9155 +vn 0.3082 -0.1323 0.9420 +vn 0.7330 -0.1577 0.6617 +vn -0.7382 0.2666 0.6197 +vn -0.7330 -0.1577 0.6617 +vn -0.3082 -0.1323 0.9420 +vn -0.3411 0.2132 0.9155 +vn 0.5419 -0.5480 0.6372 +vn 0.2261 -0.4565 0.8605 +vn -0.5419 -0.5480 0.6372 +vn -0.2261 -0.4565 0.8605 +vn 0.0629 0.2349 0.9699 +vn 0.0435 -0.0598 0.9973 +vn -0.0629 0.2349 0.9699 +vn -0.0435 -0.0598 0.9973 +vn 0.0577 -0.3447 0.9369 +vn 0.0000 -0.3009 0.9536 +vn -0.0577 -0.3447 0.9369 +vn -0.2178 -0.0451 0.9749 +vn 0.0000 0.0031 1.0000 +vn -0.1106 -0.2080 0.9718 +vn 0.2178 -0.0451 0.9749 +vn 0.1106 -0.2080 0.9718 +vn 0.2964 -0.2393 0.9246 +vn 0.6467 -0.1397 0.7498 +vn 0.8295 0.0046 0.5585 +vn 0.7281 -0.1960 0.6568 +vn -0.2964 -0.2393 0.9246 +vn -0.7281 -0.1960 0.6568 +vn -0.8295 0.0046 0.5585 +vn -0.6467 -0.1397 0.7498 +vn 0.5930 -0.1080 0.7979 +vn 0.4702 -0.0189 0.8824 +vn 0.7132 0.1398 0.6869 +vn 0.7847 0.0793 0.6148 +vn -0.5930 -0.1080 0.7979 +vn -0.7847 0.0793 0.6148 +vn -0.7132 0.1398 0.6869 +vn -0.4702 -0.0189 0.8824 +vn 0.3937 0.0374 0.9185 +vn 0.6535 0.1380 0.7442 +vn -0.3937 0.0374 0.9185 +vn -0.6535 0.1380 0.7442 +vn 0.8368 0.2474 0.4884 +vn 0.9403 0.3031 0.1547 +vn 0.9319 0.3277 0.1555 +vn 0.8577 0.2691 0.4380 +vn -0.8368 0.2474 0.4884 +vn -0.8577 0.2691 0.4380 +vn -0.9319 0.3277 0.1555 +vn -0.9403 0.3031 0.1547 +vn 0.8897 0.2281 0.3954 +vn 0.9422 0.2959 0.1569 +vn 0.9450 0.2809 0.1673 +vn 0.9159 0.1823 0.3576 +vn -0.8897 0.2281 0.3954 +vn -0.9159 0.1823 0.3576 +vn -0.9450 0.2809 0.1673 +vn -0.9422 0.2959 0.1569 +vn 0.9033 -0.1312 0.4084 +vn 0.9680 -0.1068 0.2269 +vn -0.9033 -0.1312 0.4084 +vn -0.9680 -0.1068 0.2269 +vn 0.0864 -0.6248 0.7760 +vn -0.0291 -0.3997 0.9161 +vn 0.0000 -0.7015 0.7126 +vn 0.0000 -0.9549 0.2968 +vn 0.1145 -0.9406 0.3197 +vn -0.3859 -0.8047 0.4512 +vn -0.0864 -0.6248 0.7760 +vn -0.1145 -0.9406 0.3197 +vn 0.0291 -0.3997 0.9161 +vn 0.3859 -0.8047 0.4512 +vn -0.2351 -0.2632 0.9356 +vn -0.2683 -0.1529 0.9511 +vn -0.8822 -0.2294 0.4111 +vn -0.8720 0.1940 0.4494 +vn 0.2351 -0.2632 0.9356 +vn 0.8822 -0.2294 0.4111 +vn 0.2683 -0.1529 0.9511 +vn 0.8720 0.1940 0.4494 +vn -0.2788 -0.0874 0.9564 +vn -0.2350 0.0254 0.9716 +vn -0.7107 0.4854 0.5091 +vn -0.4716 0.7011 0.5348 +vn 0.2788 -0.0874 0.9564 +vn 0.7107 0.4854 0.5091 +vn 0.2350 0.0254 0.9716 +vn 0.4716 0.7011 0.5348 +vn -0.1177 0.1187 0.9859 +vn 0.0000 0.1573 0.9875 +vn -0.2032 0.8130 0.5456 +vn 0.0000 0.8375 0.5465 +vn 0.1177 0.1187 0.9859 +vn 0.2032 0.8130 0.5456 +vn -0.1903 0.8359 0.5148 +vn 0.0000 0.8485 0.5292 +vn -0.4418 0.7821 0.4394 +vn -0.2833 0.4034 0.8700 +vn -0.1177 0.3773 0.9185 +vn 0.0000 0.3740 0.9274 +vn 0.1903 0.8359 0.5148 +vn 0.1177 0.3773 0.9185 +vn 0.2833 0.4034 0.8700 +vn 0.4418 0.7821 0.4394 +vn -0.7172 0.6327 0.2921 +vn -0.9263 0.3340 0.1742 +vn -0.8990 0.3030 0.3160 +vn -0.5502 0.3753 0.7458 +vn 0.7172 0.6327 0.2921 +vn 0.5502 0.3753 0.7458 +vn 0.8990 0.3030 0.3160 +vn 0.9263 0.3340 0.1742 +vn -0.9537 -0.2249 0.1996 +vn -0.4364 -0.8535 0.2846 +vn -0.2634 -0.7337 0.6263 +vn -0.7488 -0.2733 0.6038 +vn 0.9537 -0.2249 0.1996 +vn 0.7488 -0.2733 0.6038 +vn 0.2634 -0.7337 0.6263 +vn 0.4364 -0.8535 0.2846 +vn 0.1125 -0.9439 0.3104 +vn 0.0000 -0.9448 0.3276 +vn 0.0000 -0.6947 0.7192 +vn 0.0880 -0.7200 0.6883 +vn -0.1125 -0.9439 0.3104 +vn -0.0880 -0.7200 0.6883 +vn 0.0188 -0.2827 0.9590 +vn 0.0000 -0.2673 0.9636 +vn 0.0019 -0.2976 0.9547 +vn -0.0188 -0.2827 0.9590 +vn -0.0019 -0.2976 0.9547 +vn -0.4659 -0.0958 0.8796 +vn 0.4659 -0.0958 0.8796 +vn -0.2616 -0.1788 0.9485 +vn -0.2171 -0.1229 0.9684 +vn -0.2985 -0.2070 0.9317 +vn -0.0132 -0.0287 0.9995 +vn 0.0930 -0.0568 0.9940 +vn 0.1383 -0.0600 0.9886 +vn 0.2616 -0.1788 0.9485 +vn -0.0930 -0.0568 0.9940 +vn 0.0132 -0.0287 0.9995 +vn 0.2985 -0.2070 0.9317 +vn 0.2171 -0.1229 0.9684 +vn -0.1383 -0.0600 0.9886 +vn -0.1484 -0.0681 0.9866 +vn -0.0680 -0.0454 0.9966 +vn 0.1559 -0.0544 0.9862 +vn 0.1621 -0.0698 0.9843 +vn 0.1484 -0.0681 0.9866 +vn -0.1559 -0.0544 0.9862 +vn 0.0680 -0.0454 0.9966 +vn -0.1621 -0.0698 0.9843 +vn 0.0055 -0.0367 0.9993 +vn 0.0694 -0.0116 0.9975 +vn 0.1537 -0.0824 0.9846 +vn 0.1317 -0.0600 0.9894 +vn -0.0055 -0.0367 0.9993 +vn -0.1537 -0.0824 0.9846 +vn -0.0694 -0.0116 0.9975 +vn -0.1317 -0.0600 0.9894 +vn -0.2531 -0.3014 0.9192 +vn -0.1082 -0.4614 0.8805 +vn 0.0104 -0.2545 0.9670 +vn -0.0815 -0.1253 0.9887 +vn 0.2531 -0.3014 0.9192 +vn 0.0815 -0.1253 0.9887 +vn -0.0104 -0.2545 0.9670 +vn 0.1082 -0.4614 0.8805 +vn 0.0376 -0.5347 0.8442 +vn 0.1863 -0.5541 0.8113 +vn 0.2094 -0.2993 0.9309 +vn 0.1174 -0.3074 0.9443 +vn -0.0376 -0.5347 0.8442 +vn -0.1174 -0.3074 0.9443 +vn -0.2094 -0.2993 0.9309 +vn -0.1863 -0.5541 0.8113 +vn 0.3604 -0.5266 0.7699 +vn 0.4794 -0.4373 0.7609 +vn 0.3657 -0.1616 0.9166 +vn 0.3115 -0.2468 0.9176 +vn -0.3604 -0.5266 0.7699 +vn -0.3115 -0.2468 0.9176 +vn -0.3657 -0.1616 0.9166 +vn -0.4794 -0.4373 0.7609 +vn 0.5093 -0.3206 0.7986 +vn 0.4912 -0.2030 0.8471 +vn 0.3109 -0.0568 0.9487 +vn 0.3577 -0.0853 0.9299 +vn -0.5093 -0.3206 0.7986 +vn -0.3577 -0.0853 0.9299 +vn -0.3109 -0.0568 0.9487 +vn -0.4912 -0.2030 0.8471 +vn 0.4602 -0.1100 0.8809 +vn 0.4250 -0.0521 0.9037 +vn 0.2422 -0.0608 0.9683 +vn 0.2637 -0.0611 0.9626 +vn -0.4602 -0.1100 0.8809 +vn -0.2637 -0.0611 0.9626 +vn -0.2422 -0.0608 0.9683 +vn -0.4250 -0.0521 0.9037 +vn 0.3877 -0.0259 0.9214 +vn 0.4015 0.0347 0.9152 +vn 0.3461 -0.0794 0.9348 +vn 0.2833 -0.0677 0.9566 +vn -0.3877 -0.0259 0.9214 +vn -0.2833 -0.0677 0.9566 +vn -0.3461 -0.0794 0.9348 +vn -0.4015 0.0347 0.9152 +vn 0.4284 0.2040 0.8802 +vn 0.3635 0.3405 0.8671 +vn 0.2987 0.1136 0.9475 +vn 0.3937 -0.0243 0.9189 +vn -0.4284 0.2040 0.8802 +vn -0.3937 -0.0243 0.9189 +vn -0.2987 0.1136 0.9475 +vn -0.3635 0.3405 0.8671 +vn 0.2194 0.2865 0.9326 +vn 0.1531 0.1427 0.9778 +vn 0.1074 0.1722 0.9792 +vn 0.1281 0.1985 0.9717 +vn -0.2194 0.2865 0.9326 +vn -0.1281 0.1985 0.9717 +vn -0.1074 0.1722 0.9792 +vn -0.1531 0.1427 0.9778 +vn 0.1707 0.0804 0.9820 +vn 0.1523 0.0649 0.9862 +vn 0.1372 0.0946 0.9860 +vn 0.1604 0.1413 0.9769 +vn -0.1707 0.0804 0.9820 +vn -0.1604 0.1413 0.9769 +vn -0.1372 0.0946 0.9860 +vn -0.1523 0.0649 0.9862 +vn 0.1131 0.0304 0.9931 +vn 0.1138 0.0066 0.9935 +vn -0.1131 0.0304 0.9931 +vn -0.1138 0.0066 0.9935 +vn 0.2706 -0.2842 0.9197 +vn 0.2261 -0.1919 0.9550 +vn 0.3974 -0.3143 0.8621 +vn 0.4881 -0.4266 0.7614 +vn 0.3309 -0.4190 0.8455 +vn 0.2603 -0.3347 0.9057 +vn -0.2706 -0.2842 0.9197 +vn -0.3309 -0.4190 0.8455 +vn -0.4881 -0.4266 0.7614 +vn -0.3974 -0.3143 0.8621 +vn -0.2261 -0.1919 0.9550 +vn -0.2603 -0.3347 0.9057 +vn 0.1952 -0.1656 0.9667 +vn 0.0428 -0.2596 0.9648 +vn 0.2116 -0.3158 0.9249 +vn 0.0329 -0.4648 0.8848 +vn -0.1952 -0.1656 0.9667 +vn -0.2116 -0.3158 0.9249 +vn -0.0428 -0.2596 0.9648 +vn -0.0329 -0.4648 0.8848 +vn -0.0489 -0.4120 0.9098 +vn 0.0276 -0.5706 0.8207 +vn -0.1118 -0.6778 0.7266 +vn -0.1077 -0.8112 0.5748 +vn 0.0489 -0.4120 0.9098 +vn 0.1118 -0.6778 0.7266 +vn -0.0276 -0.5706 0.8207 +vn 0.1077 -0.8112 0.5748 +vn 0.0845 -0.6446 0.7598 +vn 0.0089 -0.5498 0.8352 +vn -0.0732 -0.8120 0.5791 +vn -0.1336 -0.6760 0.7246 +vn -0.0845 -0.6446 0.7598 +vn 0.0732 -0.8120 0.5791 +vn -0.0089 -0.5498 0.8352 +vn 0.1336 -0.6760 0.7246 +vn -0.1268 -0.3014 0.9450 +vn -0.1972 -0.1087 0.9743 +vn -0.3037 -0.3726 0.8769 +vn -0.3867 -0.1144 0.9151 +vn 0.1268 -0.3014 0.9450 +vn 0.3037 -0.3726 0.8769 +vn 0.1972 -0.1087 0.9743 +vn 0.3867 -0.1144 0.9151 +vn -0.1531 0.0255 0.9879 +vn -0.0608 0.1909 0.9797 +vn -0.3375 0.0706 0.9386 +vn -0.2264 0.2833 0.9319 +vn 0.1531 0.0255 0.9879 +vn 0.3375 0.0706 0.9386 +vn 0.0608 0.1909 0.9797 +vn 0.2264 0.2833 0.9319 +vn 0.0060 0.3042 0.9526 +vn 0.0452 0.3511 0.9352 +vn -0.1608 0.4461 0.8804 +vn -0.1253 0.5551 0.8222 +vn -0.0060 0.3042 0.9526 +vn 0.1608 0.4461 0.8804 +vn -0.0452 0.3511 0.9352 +vn 0.1253 0.5551 0.8222 +vn 0.1279 0.3546 0.9262 +vn 0.2363 0.3454 0.9082 +vn -0.0008 0.6169 0.7870 +vn 0.1923 0.6174 0.7627 +vn -0.1279 0.3546 0.9262 +vn 0.0008 0.6169 0.7870 +vn -0.2363 0.3454 0.9082 +vn -0.1923 0.6174 0.7627 +vn 0.3089 0.3585 0.8809 +vn 0.3354 0.3821 0.8611 +vn 0.3264 0.6013 0.7293 +vn 0.4021 0.5914 0.6989 +vn -0.3089 0.3585 0.8809 +vn -0.3264 0.6013 0.7293 +vn -0.3354 0.3821 0.8611 +vn -0.4021 0.5914 0.6989 +vn 0.3890 0.3843 0.8372 +vn 0.5349 0.2800 0.7971 +vn 0.5159 0.5144 0.6850 +vn 0.6766 0.3303 0.6581 +vn -0.3890 0.3843 0.8372 +vn -0.5159 0.5144 0.6850 +vn -0.5349 0.2800 0.7971 +vn -0.6766 0.3303 0.6581 +vn 0.5276 -0.2730 0.8044 +vn 0.6223 -0.1861 0.7603 +vn 0.7651 -0.2411 0.5971 +vn 0.6482 -0.3609 0.6705 +vn -0.5276 -0.2730 0.8044 +vn -0.6482 -0.3609 0.6705 +vn -0.7651 -0.2411 0.5971 +vn -0.6223 -0.1861 0.7603 +vn 0.6688 -0.0829 0.7388 +vn 0.6764 0.0021 0.7366 +vn 0.8068 0.0120 0.5906 +vn 0.8112 -0.0971 0.5767 +vn -0.6688 -0.0829 0.7388 +vn -0.8112 -0.0971 0.5767 +vn -0.8068 0.0120 0.5906 +vn -0.6764 0.0021 0.7366 +vn 0.6441 0.1143 0.7563 +vn 0.7746 0.1379 0.6171 +vn -0.6441 0.1143 0.7563 +vn -0.7746 0.1379 0.6171 +vn -0.5051 0.8585 -0.0883 +vn 0.0000 0.9999 0.0139 +vn -0.7463 0.6053 -0.2769 +vn -0.4974 0.8631 -0.0875 +vn -0.3511 0.8712 0.3432 +vn 0.0000 0.8787 0.4772 +vn 0.5051 0.8585 -0.0883 +vn 0.3511 0.8712 0.3432 +vn 0.4974 0.8631 -0.0875 +vn 0.7463 0.6053 -0.2769 +vn -0.7917 0.4724 -0.3872 +vn -0.6441 0.6484 -0.4058 +vn -0.5004 0.4524 -0.7382 +vn -0.5113 0.3779 -0.7718 +vn 0.7917 0.4724 -0.3872 +vn 0.5113 0.3779 -0.7718 +vn 0.5004 0.4524 -0.7382 +vn 0.6441 0.6484 -0.4058 +vn -0.2440 0.8800 -0.4075 +vn 0.2327 0.8904 -0.3911 +vn 0.0825 0.6285 -0.7734 +vn -0.2264 0.5513 -0.8029 +vn 0.2440 0.8800 -0.4075 +vn 0.2264 0.5513 -0.8029 +vn -0.0825 0.6285 -0.7734 +vn -0.2327 0.8904 -0.3911 +vn 0.4678 0.8013 -0.3730 +vn 0.4409 0.8396 -0.3172 +vn 0.1551 0.8541 -0.4964 +vn 0.1207 0.5634 -0.8173 +vn -0.4678 0.8013 -0.3730 +vn -0.1207 0.5634 -0.8173 +vn -0.1551 0.8541 -0.4964 +vn -0.4409 0.8396 -0.3172 +vn 0.3915 0.8913 -0.2286 +vn 0.3754 0.9097 -0.1774 +vn 0.3618 0.9090 -0.2066 +vn 0.3031 0.9108 -0.2802 +vn -0.3915 0.8913 -0.2286 +vn -0.3031 0.9108 -0.2802 +vn -0.3618 0.9090 -0.2066 +vn -0.3754 0.9097 -0.1774 +vn 0.5289 0.8255 -0.1969 +vn 0.8531 0.4607 -0.2447 +vn 0.8072 0.5184 -0.2823 +vn 0.5019 0.8289 -0.2469 +vn -0.5289 0.8255 -0.1969 +vn -0.5019 0.8289 -0.2469 +vn -0.8072 0.5184 -0.2823 +vn -0.8531 0.4607 -0.2447 +vn 0.9714 0.0023 -0.2374 +vn 0.8984 -0.3990 -0.1835 +vn 0.9376 -0.3443 -0.0485 +vn 0.9807 0.0756 -0.1805 +vn -0.9714 0.0023 -0.2374 +vn -0.9807 0.0756 -0.1805 +vn -0.9376 -0.3443 -0.0485 +vn -0.8984 -0.3990 -0.1835 +vn 0.7191 -0.6823 -0.1314 +vn 0.5783 -0.8089 -0.1059 +vn 0.6214 -0.7820 0.0475 +vn 0.7781 -0.6278 0.0203 +vn -0.7191 -0.6823 -0.1314 +vn -0.7781 -0.6278 0.0203 +vn -0.6214 -0.7820 0.0475 +vn -0.5783 -0.8089 -0.1059 +vn 0.4599 -0.8825 -0.0988 +vn 0.3426 -0.9349 -0.0919 +vn 0.4222 -0.9044 0.0615 +vn 0.4963 -0.8668 0.0477 +vn -0.4599 -0.8825 -0.0988 +vn -0.4963 -0.8668 0.0477 +vn -0.4222 -0.9044 0.0615 +vn -0.3426 -0.9349 -0.0919 +vn 0.2388 -0.5348 -0.8105 +vn 0.2093 -0.2595 -0.9428 +vn 0.0000 -0.2506 -0.9680 +vn 0.0000 -0.5114 -0.8593 +vn 0.0000 -0.7868 -0.6172 +vn 0.2851 -0.7842 -0.5511 +vn 0.6450 -0.6333 -0.4275 +vn 0.5046 -0.4809 -0.7170 +vn 0.3406 -0.2362 -0.9101 +vn -0.2388 -0.5348 -0.8105 +vn -0.5046 -0.4809 -0.7170 +vn -0.6450 -0.6333 -0.4275 +vn -0.2851 -0.7842 -0.5511 +vn -0.2093 -0.2595 -0.9428 +vn -0.3406 -0.2362 -0.9101 +vn 0.1757 -0.1415 -0.9742 +vn 0.1308 -0.2484 -0.9597 +vn 0.0000 -0.2866 -0.9580 +vn 0.0000 -0.1595 -0.9872 +vn 0.2204 -0.0988 -0.9704 +vn 0.1387 -0.1726 -0.9752 +vn -0.1757 -0.1415 -0.9742 +vn -0.2204 -0.0988 -0.9704 +vn -0.1308 -0.2484 -0.9597 +vn -0.1387 -0.1726 -0.9752 +vn 0.0772 -0.4632 -0.8828 +vn 0.0579 -0.7541 -0.6542 +vn 0.0000 -0.7823 -0.6229 +vn 0.0000 -0.5049 -0.8632 +vn 0.0625 -0.3724 -0.9260 +vn 0.0463 -0.6950 -0.7175 +vn -0.0772 -0.4632 -0.8828 +vn -0.0625 -0.3724 -0.9260 +vn -0.0579 -0.7541 -0.6542 +vn -0.0463 -0.6950 -0.7175 +vn 0.0788 -0.9665 -0.2441 +vn 0.1012 -0.9499 -0.2955 +vn 0.0000 -0.9763 -0.2163 +vn -0.0788 -0.9665 -0.2441 +vn -0.1012 -0.9499 -0.2955 +vn 0.2114 -0.9115 -0.3527 +vn 0.6044 -0.6773 -0.4194 +vn 0.1347 -0.6143 -0.7774 +vn 0.4085 -0.4680 -0.7836 +vn -0.2114 -0.9115 -0.3527 +vn -0.1347 -0.6143 -0.7774 +vn -0.6044 -0.6773 -0.4194 +vn -0.4085 -0.4680 -0.7836 +vn 0.8856 -0.2044 -0.4171 +vn 0.9306 0.0774 -0.3576 +vn 0.5558 -0.1351 -0.8203 +vn 0.6111 0.0517 -0.7898 +vn -0.8856 -0.2044 -0.4171 +vn -0.5558 -0.1351 -0.8203 +vn -0.9306 0.0774 -0.3576 +vn -0.6111 0.0517 -0.7898 +vn 0.9294 0.1369 -0.3427 +vn 0.9329 0.1428 -0.3307 +vn 0.6683 0.0978 -0.7374 +vn 0.7411 0.0660 -0.6681 +vn -0.9294 0.1369 -0.3427 +vn -0.6683 0.0978 -0.7374 +vn -0.9329 0.1428 -0.3307 +vn -0.7411 0.0660 -0.6681 +vn 0.3344 -0.0151 -0.9423 +vn 0.2248 -0.0692 -0.9719 +vn 0.5118 -0.1123 -0.8517 +vn -0.3344 -0.0151 -0.9423 +vn -0.5118 -0.1123 -0.8517 +vn -0.2248 -0.0692 -0.9719 +vn 0.1381 -0.2577 -0.9563 +vn -0.1381 -0.2577 -0.9563 +vn 0.7345 -0.2422 -0.6339 +vn 0.8865 -0.2703 -0.3755 +vn 0.9290 0.0548 -0.3660 +vn 0.8445 0.0240 -0.5350 +vn -0.7345 -0.2422 -0.6339 +vn -0.8445 0.0240 -0.5350 +vn -0.9290 0.0548 -0.3660 +vn -0.8865 -0.2703 -0.3755 +vn 0.9422 0.1437 -0.3027 +vn 0.9517 0.1993 -0.2336 +vn -0.9422 0.1437 -0.3027 +vn -0.9517 0.1993 -0.2336 +vn 0.9836 0.1496 0.1012 +vn 0.9829 0.1805 -0.0349 +vn 0.9411 -0.3277 0.0834 +vn 0.8935 -0.3558 0.2740 +vn 0.8101 -0.2889 0.5102 +vn 0.9571 0.1828 0.2249 +vn -0.9836 0.1496 0.1012 +vn -0.9571 0.1828 0.2249 +vn -0.8101 -0.2889 0.5102 +vn -0.8935 -0.3558 0.2740 +vn -0.9411 -0.3277 0.0834 +vn -0.9829 0.1805 -0.0349 +vn 0.9605 0.2375 -0.1447 +vn 0.9828 -0.0175 -0.1834 +vn -0.9605 0.2375 -0.1447 +vn -0.9828 -0.0175 -0.1834 +vn 0.9634 -0.1505 0.2217 +vn 0.6123 -0.7872 0.0740 +vn 0.7693 -0.4473 0.4561 +vn 0.4881 -0.8637 0.1256 +vn -0.9634 -0.1505 0.2217 +vn -0.7693 -0.4473 0.4561 +vn -0.6123 -0.7872 0.0740 +vn -0.4881 -0.8637 0.1256 +vn 0.3063 -0.9495 -0.0674 +vn 0.3850 -0.9123 0.1396 +vn -0.3063 -0.9495 -0.0674 +vn -0.3850 -0.9123 0.1396 +vn 0.2868 -0.4932 -0.8213 +vn 0.0000 -0.4993 -0.8664 +vn 0.0000 -0.2582 -0.9661 +vn 0.2888 -0.2713 -0.9181 +vn 0.4121 -0.2997 -0.8604 +vn 0.4184 -0.4966 -0.7605 +vn 0.4522 -0.6860 -0.5700 +vn 0.2769 -0.7055 -0.6524 +vn 0.0000 -0.7198 -0.6942 +vn -0.2868 -0.4932 -0.8213 +vn -0.2769 -0.7055 -0.6524 +vn -0.4522 -0.6860 -0.5700 +vn -0.4184 -0.4966 -0.7605 +vn -0.4121 -0.2997 -0.8604 +vn -0.2888 -0.2713 -0.9181 +vn 0.2684 -0.8428 -0.4665 +vn 0.0000 -0.8646 -0.5024 +vn 0.4761 -0.7887 -0.3887 +vn 0.4823 -0.8493 -0.2145 +vn 0.2608 -0.9225 -0.2845 +vn 0.0000 -0.9497 -0.3130 +vn -0.2684 -0.8428 -0.4665 +vn -0.2608 -0.9225 -0.2845 +vn -0.4823 -0.8493 -0.2145 +vn -0.4761 -0.7887 -0.3887 +vn 0.2726 -0.9490 -0.1583 +vn 0.0000 -0.9824 -0.1867 +vn 0.5139 -0.8540 -0.0804 +vn 0.5999 -0.8001 -0.0045 +vn 0.2987 -0.9447 -0.1348 +vn 0.0000 -0.9861 -0.1663 +vn -0.2726 -0.9490 -0.1583 +vn -0.2987 -0.9447 -0.1348 +vn -0.5999 -0.8001 -0.0045 +vn -0.5139 -0.8540 -0.0804 +vn 0.3150 -0.9109 -0.2665 +vn 0.0000 -0.9483 -0.3174 +vn 0.6558 -0.7410 -0.1444 +vn -0.3150 -0.9109 -0.2665 +vn -0.6558 -0.7410 -0.1444 +vn 0.9169 -0.3825 -0.1141 +vn 0.8101 -0.5783 0.0967 +vn -0.9169 -0.3825 -0.1141 +vn -0.8101 -0.5783 0.0967 +vn 0.8375 -0.5144 0.1839 +vn 0.9628 -0.2365 0.1305 +vn 0.6569 -0.7245 0.2086 +vn 0.6930 -0.7055 0.1484 +vn 0.8970 -0.4230 0.1280 +vn 0.9785 -0.1545 0.1365 +vn -0.8375 -0.5144 0.1839 +vn -0.8970 -0.4230 0.1280 +vn -0.6930 -0.7055 0.1484 +vn -0.6569 -0.7245 0.2086 +vn -0.9628 -0.2365 0.1305 +vn -0.9785 -0.1545 0.1365 +vn 0.2886 -0.0432 -0.9565 +vn 0.0000 -0.0110 -0.9999 +vn 0.0000 0.3200 -0.9474 +vn 0.2960 0.2838 -0.9120 +vn 0.4342 0.2148 -0.8748 +vn 0.4207 -0.1075 -0.9008 +vn -0.2886 -0.0432 -0.9565 +vn -0.4207 -0.1075 -0.9008 +vn -0.4342 0.2148 -0.8748 +vn -0.2960 0.2838 -0.9120 +vn 0.1471 0.9507 0.2730 +vn 0.0000 0.9632 0.2686 +vn 0.0000 0.8246 0.5657 +vn 0.1777 0.8047 0.5665 +vn 0.4226 0.7340 0.5316 +vn 0.3877 0.8842 0.2605 +vn 0.3568 0.9340 0.0170 +vn 0.1333 0.9909 0.0155 +vn 0.0000 0.9999 0.0108 +vn -0.1471 0.9507 0.2730 +vn -0.1333 0.9909 0.0155 +vn -0.3568 0.9340 0.0170 +vn -0.3877 0.8842 0.2605 +vn -0.4226 0.7340 0.5316 +vn -0.1777 0.8047 0.5665 +vn 0.1513 0.9596 -0.2371 +vn 0.0000 0.9712 -0.2380 +vn 0.3446 0.9089 -0.2348 +vn 0.3599 0.7671 -0.5311 +vn 0.2114 0.8233 -0.5268 +vn 0.0000 0.8470 -0.5315 +vn -0.1513 0.9596 -0.2371 +vn -0.2114 0.8233 -0.5268 +vn -0.3599 0.7671 -0.5311 +vn -0.3446 0.9089 -0.2348 +vn 0.2736 0.5934 -0.7570 +vn 0.0000 0.6280 -0.7782 +vn 0.4043 0.5270 -0.7475 +vn -0.2736 0.5934 -0.7570 +vn -0.4043 0.5270 -0.7475 +vn 0.5520 0.8328 -0.0423 +vn 0.4351 0.9000 0.0247 +vn 0.8301 0.5535 -0.0676 +vn 0.8278 0.5127 0.2274 +vn 0.5703 0.7498 0.3353 +vn 0.5190 0.7523 0.4059 +vn -0.5520 0.8328 -0.0423 +vn -0.5703 0.7498 0.3353 +vn -0.8278 0.5127 0.2274 +vn -0.8301 0.5535 -0.0676 +vn -0.4351 0.9000 0.0247 +vn -0.5190 0.7523 0.4059 +vn 0.5526 0.6375 0.5368 +vn 0.5700 0.6120 0.5483 +vn 0.8068 0.4277 0.4075 +vn 0.8361 0.4477 0.3170 +vn 0.6295 0.6587 0.4120 +vn 0.6410 0.6536 0.4023 +vn -0.5526 0.6375 0.5368 +vn -0.6295 0.6587 0.4120 +vn -0.8361 0.4477 0.3170 +vn -0.8068 0.4277 0.4075 +vn -0.5700 0.6120 0.5483 +vn -0.6410 0.6536 0.4023 +vn 0.7081 0.6865 0.1649 +vn 0.6706 0.7232 0.1649 +vn 0.8791 0.4649 0.1048 +vn 0.9016 0.4299 -0.0472 +vn 0.7428 0.6687 -0.0330 +vn 0.6716 0.7401 -0.0341 +vn -0.7081 0.6865 0.1649 +vn -0.7428 0.6687 -0.0330 +vn -0.9016 0.4299 -0.0472 +vn -0.8791 0.4649 0.1048 +vn -0.6706 0.7232 0.1649 +vn -0.6716 0.7401 -0.0341 +vn 0.7563 0.6058 -0.2468 +vn 0.6503 0.7062 -0.2796 +vn 0.9094 0.3654 -0.1985 +vn 0.8714 0.3002 -0.3879 +vn 0.7371 0.4394 -0.5133 +vn 0.5995 0.5546 -0.5770 +vn -0.7563 0.6058 -0.2468 +vn -0.7371 0.4394 -0.5133 +vn -0.8714 0.3002 -0.3879 +vn -0.9094 0.3654 -0.1985 +vn -0.6503 0.7062 -0.2796 +vn -0.5995 0.5546 -0.5770 +vn 0.7004 0.2079 -0.6827 +vn 0.8636 0.1631 -0.4771 +vn 0.6864 0.0523 -0.7253 +vn 0.6459 -0.0412 -0.7623 +vn 0.5815 0.0139 -0.8134 +vn 0.5819 0.3050 -0.7538 +vn -0.7004 0.2079 -0.6827 +vn -0.5819 0.3050 -0.7538 +vn -0.5815 0.0139 -0.8134 +vn -0.6459 -0.0412 -0.7623 +vn -0.6864 0.0523 -0.7253 +vn -0.8636 0.1631 -0.4771 +vn 0.4875 0.4297 -0.7600 +vn 0.5149 0.1187 -0.8489 +vn 0.4944 0.6679 -0.5562 +vn -0.4875 0.4297 -0.7600 +vn -0.4944 0.6679 -0.5562 +vn -0.5149 0.1187 -0.8489 +vn 0.5460 0.7978 -0.2555 +vn 0.5871 0.8095 -0.0072 +vn -0.5460 0.7978 -0.2555 +vn -0.5871 0.8095 -0.0072 +vn 0.6175 0.7599 0.2031 +vn 0.6362 0.6351 0.4380 +vn -0.6175 0.7599 0.2031 +vn -0.6362 0.6351 0.4380 +vn 0.6154 0.5526 0.5620 +vn 0.4335 0.6041 0.6686 +vn 0.3710 0.7458 0.5533 +vn 0.5384 0.7296 0.4216 +vn -0.6154 0.5526 0.5620 +vn -0.5384 0.7296 0.4216 +vn -0.3710 0.7458 0.5533 +vn -0.4335 0.6041 0.6686 +vn 0.3766 0.9263 0.0141 +vn 0.1824 0.9819 0.0514 +vn -0.3766 0.9263 0.0141 +vn -0.1824 0.9819 0.0514 +vn 0.2091 0.6578 0.7236 +vn 0.0000 0.6825 0.7308 +vn 0.0000 0.6109 0.7917 +vn 0.1938 0.7007 0.6866 +vn -0.2091 0.6578 0.7236 +vn -0.1938 0.7007 0.6866 +vn -0.2080 0.3411 -0.9167 +vn -0.1986 0.7757 -0.5989 +vn 0.2080 0.3411 -0.9167 +vn 0.1986 0.7757 -0.5989 +vn 0.0282 0.9366 0.3493 +vn -0.0452 0.7414 0.6695 +vn -0.0282 0.9366 0.3493 +vn 0.0452 0.7414 0.6695 +vn -0.1032 0.5658 0.8180 +vn 0.0000 0.5157 0.8567 +vn 0.1032 0.5658 0.8180 +vn 0.9886 0.1437 0.0434 +vn 0.9694 0.1507 0.1936 +vn -0.9886 0.1437 0.0434 +vn -0.9694 0.1507 0.1936 +vn 0.9611 0.1420 0.2367 +vn 0.9911 -0.1121 0.0717 +vn 0.9961 -0.0879 0.0060 +vn 0.9729 0.1785 0.1467 +vn -0.9611 0.1420 0.2367 +vn -0.9729 0.1785 0.1467 +vn -0.9961 -0.0879 0.0060 +vn -0.9911 -0.1121 0.0717 +vn 0.9767 0.2144 0.0005 +vn 0.9973 0.0677 -0.0265 +vn 0.8629 0.4816 0.1530 +vn 0.9743 0.2059 -0.0915 +vn -0.9767 0.2144 0.0005 +vn -0.9743 0.2059 -0.0915 +vn -0.8629 0.4816 0.1530 +vn -0.9973 0.0677 -0.0265 +vn 0.9590 0.1793 -0.2196 +vn 0.6597 0.6311 -0.4081 +vn -0.9590 0.1793 -0.2196 +vn -0.6597 0.6311 -0.4081 +vn 0.6345 -0.7729 -0.0026 +vn 0.6775 -0.7280 0.1049 +vn 0.6119 -0.7751 -0.1572 +vn 0.5522 -0.8172 -0.1649 +vn 0.5545 -0.8318 0.0237 +vn 0.5741 -0.8038 0.1555 +vn -0.6345 -0.7729 -0.0026 +vn -0.5545 -0.8318 0.0237 +vn -0.5522 -0.8172 -0.1649 +vn -0.6119 -0.7751 -0.1572 +vn -0.6775 -0.7280 0.1049 +vn -0.5741 -0.8038 0.1555 +vn 0.4316 -0.9007 0.0500 +vn 0.5145 -0.8537 0.0800 +vn 0.4846 -0.8594 0.1631 +vn 0.3727 -0.9129 -0.1667 +vn 0.2206 -0.9753 -0.0089 +vn -0.4316 -0.9007 0.0500 +vn -0.3727 -0.9129 -0.1667 +vn -0.4846 -0.8594 0.1631 +vn -0.5145 -0.8537 0.0800 +vn -0.2206 -0.9753 -0.0089 +vn 0.5108 -0.8373 0.1946 +vn 0.5175 -0.8324 0.1984 +vn -0.5108 -0.8373 0.1946 +vn -0.5175 -0.8324 0.1984 +vn 0.6361 -0.7233 0.2686 +vn 0.5320 -0.7301 0.4289 +vn 0.6919 -0.6905 0.2108 +vn -0.6361 -0.7233 0.2686 +vn -0.6919 -0.6905 0.2108 +vn -0.5320 -0.7301 0.4289 +vn 0.7199 -0.6718 0.1741 +vn -0.7199 -0.6718 0.1741 +vn 0.4800 -0.7010 0.5274 +vn -0.4800 -0.7010 0.5274 +vn 0.5537 -0.3163 -0.7703 +vn 0.5389 -0.2901 -0.7908 +vn 0.3309 -0.6139 -0.7166 +vn 0.4399 -0.6084 -0.6605 +vn 0.5687 -0.5338 -0.6258 +vn 0.5552 -0.2803 -0.7830 +vn -0.5537 -0.3163 -0.7703 +vn -0.5552 -0.2803 -0.7830 +vn -0.5687 -0.5338 -0.6258 +vn -0.4399 -0.6084 -0.6605 +vn -0.3309 -0.6139 -0.7166 +vn -0.5389 -0.2901 -0.7908 +vn 0.5062 -0.1933 -0.8404 +vn 0.5133 -0.3655 -0.7765 +vn -0.5062 -0.1933 -0.8404 +vn -0.5133 -0.3655 -0.7765 +vn 0.3521 -0.8292 -0.4340 +vn 0.1241 -0.8878 -0.4431 +vn 0.5607 -0.7407 -0.3701 +vn -0.3521 -0.8292 -0.4340 +vn -0.5607 -0.7407 -0.3701 +vn -0.1241 -0.8878 -0.4431 +vn 0.6130 -0.7177 -0.3303 +vn 0.5917 -0.6255 -0.5086 +vn -0.6130 -0.7177 -0.3303 +vn -0.5917 -0.6255 -0.5086 +vn 0.5217 -0.4870 -0.7004 +vn -0.5217 -0.4870 -0.7004 +vn 0.2095 0.5341 0.8190 +vn 0.3095 0.4976 0.8103 +vn -0.1286 0.9587 0.2537 +vn -0.2779 0.9203 0.2751 +vn -0.4519 0.8307 0.3252 +vn 0.0529 0.4880 0.8712 +vn 0.5194 -0.1435 0.8424 +vn 0.5858 -0.1456 0.7972 +vn 0.5652 -0.2128 0.7970 +vn -0.2095 0.5341 0.8190 +vn -0.5858 -0.1456 0.7972 +vn -0.5194 -0.1435 0.8424 +vn -0.0529 0.4880 0.8712 +vn 0.4519 0.8307 0.3252 +vn 0.2779 0.9203 0.2751 +vn 0.1286 0.9587 0.2537 +vn -0.3095 0.4976 0.8103 +vn -0.5652 -0.2128 0.7970 +vn 0.3686 0.4267 0.8258 +vn 0.0887 0.9544 0.2850 +vn 0.4748 -0.2539 0.8426 +vn 0.2860 -0.2279 0.9307 +vn 0.4162 0.3131 0.8536 +vn 0.4322 0.8325 0.3466 +vn -0.3686 0.4267 0.8258 +vn -0.4162 0.3131 0.8536 +vn -0.2860 -0.2279 0.9307 +vn -0.4748 -0.2539 0.8426 +vn -0.0887 0.9544 0.2850 +vn -0.4322 0.8325 0.3466 +vn 0.3849 0.1424 0.9119 +vn 0.7193 0.4724 0.5093 +vn 0.0157 -0.1582 0.9873 +vn -0.1588 -0.0632 0.9853 +vn 0.3309 0.0094 0.9436 +vn 0.7630 0.1057 0.6377 +vn -0.3849 0.1424 0.9119 +vn -0.3309 0.0094 0.9436 +vn 0.1588 -0.0632 0.9853 +vn -0.0157 -0.1582 0.9873 +vn -0.7193 0.4724 0.5093 +vn -0.7630 0.1057 0.6377 +vn 0.3359 -0.0728 0.9391 +vn 0.7359 -0.1921 0.6493 +vn -0.2100 0.0939 0.9731 +vn -0.0825 0.3310 0.9400 +vn 0.4144 -0.1131 0.9030 +vn 0.6991 -0.4513 0.5546 +vn -0.3359 -0.0728 0.9391 +vn -0.4144 -0.1131 0.9030 +vn 0.0825 0.3310 0.9400 +vn 0.2100 0.0939 0.9731 +vn -0.7359 -0.1921 0.6493 +vn -0.6991 -0.4513 0.5546 +vn 0.5209 -0.1974 0.8304 +vn 0.6059 -0.6767 0.4182 +vn 0.1825 0.4407 0.8789 +vn 0.4532 0.3376 0.8249 +vn 0.5929 -0.3417 0.7291 +vn 0.4732 -0.8249 0.3091 +vn -0.5209 -0.1974 0.8304 +vn -0.5929 -0.3417 0.7291 +vn -0.4532 0.3376 0.8249 +vn -0.1825 0.4407 0.8789 +vn -0.6059 -0.6767 0.4182 +vn -0.4732 -0.8249 0.3091 +vn 0.5398 -0.4480 0.7127 +vn 0.3183 -0.9051 0.2820 +vn 0.5487 0.2023 0.8112 +vn 0.3587 0.3265 0.8745 +vn 0.2652 -0.3529 0.8973 +vn 0.0675 -0.9344 0.3498 +vn -0.5398 -0.4480 0.7127 +vn -0.2652 -0.3529 0.8973 +vn -0.3587 0.3265 0.8745 +vn -0.5487 0.2023 0.8112 +vn -0.3183 -0.9051 0.2820 +vn -0.0675 -0.9344 0.3498 +vn 0.3636 0.6835 0.6329 +vn 0.1272 0.7955 0.5924 +vn -0.1510 0.9498 0.2738 +vn 0.1243 0.9228 0.3645 +vn 0.1489 0.9139 0.3775 +vn 0.2889 0.7224 0.6281 +vn -0.3636 0.6835 0.6329 +vn -0.2889 0.7224 0.6281 +vn -0.1489 0.9139 0.3775 +vn -0.1243 0.9228 0.3645 +vn 0.1510 0.9498 0.2738 +vn -0.1272 0.7955 0.5924 +vn -0.2344 0.7992 0.5534 +vn -0.5743 0.6104 0.5455 +vn -0.7796 0.6259 0.0199 +vn -0.4865 0.8605 0.1510 +vn 0.2344 0.7992 0.5534 +vn 0.4865 0.8605 0.1510 +vn 0.7796 0.6259 0.0199 +vn 0.5743 0.6104 0.5455 +vn -0.7699 0.2639 0.5810 +vn -0.7046 -0.0879 0.7041 +vn -0.9903 -0.0736 0.1177 +vn -0.9526 0.3036 -0.0165 +vn 0.7699 0.2639 0.5810 +vn 0.9526 0.3036 -0.0165 +vn 0.9903 -0.0736 0.1177 +vn 0.7046 -0.0879 0.7041 +vn -0.3878 -0.3768 0.8412 +vn 0.1003 -0.5286 0.8429 +vn -0.0948 -0.7572 0.6462 +vn -0.7387 -0.5255 0.4221 +vn 0.3878 -0.3768 0.8412 +vn 0.7387 -0.5255 0.4221 +vn 0.0948 -0.7572 0.6462 +vn -0.1003 -0.5286 0.8429 +vn 0.4224 -0.5424 0.7262 +vn 0.5694 -0.5031 0.6501 +vn 0.5292 -0.6536 0.5410 +vn 0.3460 -0.7185 0.6033 +vn -0.4224 -0.5424 0.7262 +vn -0.3460 -0.7185 0.6033 +vn -0.5292 -0.6536 0.5410 +vn -0.5694 -0.5031 0.6501 +vn 0.6544 -0.4386 0.6159 +vn 0.6523 -0.4046 0.6409 +vn 0.6956 -0.5316 0.4833 +vn 0.6478 -0.5785 0.4956 +vn -0.6544 -0.4386 0.6159 +vn -0.6478 -0.5785 0.4956 +vn -0.6956 -0.5316 0.4833 +vn -0.6523 -0.4046 0.6409 +vn 0.7361 -0.6739 0.0631 +vn 0.8450 -0.5345 -0.0165 +vn 0.4660 -0.6598 0.5895 +vn 0.7191 0.1845 0.6699 +vn 0.9056 -0.4203 0.0562 +vn 0.9066 -0.4035 -0.1239 +vn -0.7361 -0.6739 0.0631 +vn -0.9056 -0.4203 0.0562 +vn -0.7191 0.1845 0.6699 +vn -0.4660 -0.6598 0.5895 +vn -0.8450 -0.5345 -0.0165 +vn -0.9066 -0.4035 -0.1239 +vn 0.0729 -0.2806 0.9570 +vn -0.0865 -0.9353 0.3431 +vn 0.1807 0.5061 0.8433 +vn -0.0729 -0.2806 0.9570 +vn -0.1807 0.5061 0.8433 +vn 0.0865 -0.9353 0.3431 +vn 0.9371 -0.3476 -0.0322 +vn 0.9371 -0.3331 -0.1043 +vn -0.9371 -0.3476 -0.0322 +vn -0.9371 -0.3331 -0.1043 +vn 0.1968 0.3751 0.9059 +vn -0.3211 0.8935 0.3140 +vn 0.8382 0.0625 0.5418 +vn 0.6926 -0.2875 0.6615 +vn 0.5004 -0.2121 0.8394 +vn -0.1968 0.3751 0.9059 +vn -0.5004 -0.2121 0.8394 +vn -0.6926 -0.2875 0.6615 +vn -0.8382 0.0625 0.5418 +vn 0.3211 0.8935 0.3140 +vn 0.1702 0.8401 0.5150 +vn 0.1014 0.9550 0.2788 +vn 0.5165 0.7346 0.4399 +vn 0.4825 0.6420 0.5958 +vn -0.1702 0.8401 0.5150 +vn -0.4825 0.6420 0.5958 +vn -0.5165 0.7346 0.4399 +vn -0.1014 0.9550 0.2788 +vn 0.7014 0.1762 0.6907 +vn 0.8080 0.0003 0.5891 +vn 0.7663 -0.0158 0.6423 +vn 0.6905 0.1374 0.7102 +vn 0.9305 -0.1432 0.3371 +vn 0.8793 0.0321 0.4751 +vn -0.7014 0.1762 0.6907 +vn -0.8793 0.0321 0.4751 +vn -0.9305 -0.1432 0.3371 +vn -0.6905 0.1374 0.7102 +vn -0.7663 -0.0158 0.6423 +vn -0.8080 0.0003 0.5891 +vn 0.6346 0.3909 0.6667 +vn 0.5980 0.6310 0.4941 +vn 0.9235 0.0293 0.3824 +vn 0.8955 0.0039 0.4450 +vn 0.6977 0.3613 0.6185 +vn 0.5674 0.6462 0.5103 +vn -0.6346 0.3909 0.6667 +vn -0.6977 0.3613 0.6185 +vn -0.8955 0.0039 0.4450 +vn -0.9235 0.0293 0.3824 +vn -0.5980 0.6310 0.4941 +vn -0.5674 0.6462 0.5103 +vn 0.8593 -0.4286 0.2791 +vn 0.7990 -0.5379 0.2687 +vn 0.7243 -0.5744 0.3815 +vn 0.7687 -0.4718 0.4317 +vn 0.8851 -0.4086 0.2228 +vn 0.9127 -0.3905 0.1200 +vn -0.8593 -0.4286 0.2791 +vn -0.9127 -0.3905 0.1200 +vn -0.8851 -0.4086 0.2228 +vn -0.7687 -0.4718 0.4317 +vn -0.7243 -0.5744 0.3815 +vn -0.7990 -0.5379 0.2687 +vn 0.6907 -0.4306 0.5809 +vn 0.6186 -0.4083 0.6712 +vn 0.8458 -0.3503 0.4024 +vn 0.6987 -0.5390 0.4704 +vn 0.6893 -0.5212 0.5032 +vn -0.6907 -0.4306 0.5809 +vn -0.6987 -0.5390 0.4704 +vn -0.8458 -0.3503 0.4024 +vn -0.6186 -0.4083 0.6712 +vn -0.6893 -0.5212 0.5032 +vn 0.6075 -0.4053 0.6831 +vn 0.6942 -0.5200 0.4976 +vn -0.6075 -0.4053 0.6831 +vn -0.6942 -0.5200 0.4976 +vn 0.9821 -0.1476 0.1173 +vn 0.9527 -0.3038 0.0021 +vn -0.9821 -0.1476 0.1173 +vn -0.9527 -0.3038 0.0021 +vn 0.9263 -0.3727 -0.0544 +vn 0.9420 -0.3326 -0.0449 +vn -0.9263 -0.3727 -0.0544 +vn -0.9420 -0.3326 -0.0449 +vn 0.9776 -0.1829 0.1041 +vn -0.9776 -0.1829 0.1041 +vn 0.7080 -0.5495 0.4435 +vn 0.6909 -0.5448 0.4752 +vn 0.7148 -0.5552 0.4252 +vn 0.5849 -0.3759 0.7187 +vn 0.6096 -0.3469 0.7127 +vn 0.6193 -0.2811 0.7331 +vn -0.7080 -0.5495 0.4435 +vn -0.6096 -0.3469 0.7127 +vn -0.5849 -0.3759 0.7187 +vn -0.7148 -0.5552 0.4252 +vn -0.6909 -0.5448 0.4752 +vn -0.6193 -0.2811 0.7331 +vn 0.7058 -0.5720 0.4178 +vn 0.6872 -0.6073 0.3985 +vn 0.4757 -0.4080 0.7793 +vn 0.5360 -0.3921 0.7476 +vn -0.7058 -0.5720 0.4178 +vn -0.5360 -0.3921 0.7476 +vn -0.4757 -0.4080 0.7793 +vn -0.6872 -0.6073 0.3985 +vn 0.7306 -0.5704 0.3752 +vn 0.8854 0.0341 0.4636 +vn 0.6196 -0.0556 0.7829 +vn 0.4973 -0.3484 0.7945 +vn -0.7306 -0.5704 0.3752 +vn -0.4973 -0.3484 0.7945 +vn -0.6196 -0.0556 0.7829 +vn -0.8854 0.0341 0.4636 +vn 0.5703 0.6794 0.4616 +vn 0.5904 0.6672 0.4541 +vn 0.4221 0.3908 0.8180 +vn 0.4288 0.3995 0.8102 +vn -0.5703 0.6794 0.4616 +vn -0.4288 0.3995 0.8102 +vn -0.4221 0.3908 0.8180 +vn -0.5904 0.6672 0.4541 +vn 0.7956 0.2998 0.5264 +vn 0.8393 -0.1405 0.5252 +vn 0.4262 0.1413 0.8935 +vn 0.5123 0.2181 0.8306 +vn -0.7956 0.2998 0.5264 +vn -0.5123 0.2181 0.8306 +vn -0.4262 0.1413 0.8935 +vn -0.8393 -0.1405 0.5252 +vn 0.8117 -0.0300 0.5833 +vn 0.5699 0.6716 0.4733 +vn 0.1961 0.7512 0.6303 +vn 0.4010 0.3032 0.8644 +vn -0.8117 -0.0300 0.5833 +vn -0.4010 0.3032 0.8644 +vn -0.1961 0.7512 0.6303 +vn -0.5699 0.6716 0.4733 +vn 0.0204 0.9698 0.2427 +vn 0.0473 0.9518 0.3031 +vn 0.1156 0.7812 0.6135 +vn -0.1275 0.8694 0.4772 +vn -0.0204 0.9698 0.2427 +vn 0.1275 0.8694 0.4772 +vn -0.1156 0.7812 0.6135 +vn -0.0473 0.9518 0.3031 +vn 0.6384 -0.5642 0.5235 +vn 0.5225 -0.6346 0.5694 +vn 0.5932 -0.2007 0.7796 +vn 0.5272 -0.1859 0.8292 +vn -0.6384 -0.5642 0.5235 +vn -0.5932 -0.2007 0.7796 +vn -0.5225 -0.6346 0.5694 +vn -0.5272 -0.1859 0.8292 +vn 0.3110 -0.7381 0.5986 +vn -0.1814 -0.7565 0.6283 +vn 0.3996 -0.2274 0.8880 +vn 0.2216 -0.2082 0.9526 +vn -0.3110 -0.7381 0.5986 +vn -0.3996 -0.2274 0.8880 +vn 0.1814 -0.7565 0.6283 +vn -0.2216 -0.2082 0.9526 +vn -0.6828 -0.4734 0.5565 +vn -0.8924 -0.0709 0.4457 +vn 0.0539 -0.0775 0.9955 +vn 0.0085 0.0066 0.9999 +vn 0.6828 -0.4734 0.5565 +vn -0.0539 -0.0775 0.9955 +vn 0.8924 -0.0709 0.4457 +vn -0.0085 0.0066 0.9999 +vn -0.8461 0.2966 0.4427 +vn -0.6302 0.6212 0.4658 +vn 0.0637 0.0511 0.9966 +vn 0.1423 0.1439 0.9793 +vn 0.8461 0.2966 0.4427 +vn -0.0637 0.0511 0.9966 +vn 0.6302 0.6212 0.4658 +vn -0.1423 0.1439 0.9793 +vn -0.3303 0.8308 0.4479 +vn -0.0415 0.9107 0.4108 +vn 0.2504 0.2606 0.9324 +vn 0.3807 0.3920 0.8374 +vn 0.3303 0.8308 0.4479 +vn -0.2504 0.2606 0.9324 +vn 0.0415 0.9107 0.4108 +vn -0.3807 0.3920 0.8374 +vn 0.1153 0.9227 0.3677 +vn 0.4339 0.5283 0.7298 +vn -0.1153 0.9227 0.3677 +vn -0.4339 0.5283 0.7298 +vn 0.1901 0.1060 0.9760 +vn 0.1850 0.0801 0.9795 +vn 0.0715 0.2755 0.9586 +vn 0.2562 0.1896 0.9478 +vn 0.2231 0.0836 0.9712 +vn 0.2007 0.0097 0.9796 +vn -0.1901 0.1060 0.9760 +vn -0.2231 0.0836 0.9712 +vn -0.2562 0.1896 0.9478 +vn -0.0715 0.2755 0.9586 +vn -0.1850 0.0801 0.9795 +vn -0.2007 0.0097 0.9796 +vn 0.3307 0.0492 0.9424 +vn 0.2870 0.0002 0.9579 +vn 0.4270 0.0700 0.9015 +vn 0.4587 -0.0370 0.8878 +vn 0.3738 -0.0011 0.9275 +vn 0.3422 -0.0097 0.9396 +vn -0.3307 0.0492 0.9424 +vn -0.3738 -0.0011 0.9275 +vn -0.4587 -0.0370 0.8878 +vn -0.4270 0.0700 0.9015 +vn -0.2870 0.0002 0.9579 +vn -0.3422 -0.0097 0.9396 +vn 0.3581 -0.0309 0.9331 +vn 0.3538 -0.0024 0.9353 +vn 0.4211 -0.1104 0.9002 +vn 0.3858 -0.1607 0.9085 +vn 0.3088 -0.0405 0.9503 +vn 0.3197 0.0447 0.9464 +vn -0.3581 -0.0309 0.9331 +vn -0.3088 -0.0405 0.9503 +vn -0.3858 -0.1607 0.9085 +vn -0.4211 -0.1104 0.9002 +vn -0.3538 -0.0024 0.9353 +vn -0.3197 0.0447 0.9464 +vn 0.3196 0.0105 0.9475 +vn 0.3074 0.1659 0.9370 +vn 0.4178 -0.1354 0.8984 +vn 0.4966 -0.0143 0.8679 +vn 0.4329 0.1317 0.8918 +vn 0.3743 0.3021 0.8767 +vn -0.3196 0.0105 0.9475 +vn -0.4329 0.1317 0.8918 +vn -0.4966 -0.0143 0.8679 +vn -0.4178 -0.1354 0.8984 +vn -0.3074 0.1659 0.9370 +vn -0.3743 0.3021 0.8767 +vn 0.4047 0.1754 0.8975 +vn 0.3900 0.3111 0.8667 +vn 0.4356 0.0133 0.9000 +vn -0.4047 0.1754 0.8975 +vn -0.4356 0.0133 0.9000 +vn -0.3900 0.3111 0.8667 +vn 0.4313 -0.0776 0.8989 +vn 0.3868 -0.1076 0.9159 +vn -0.4313 -0.0776 0.8989 +vn -0.3868 -0.1076 0.9159 +vn 0.3110 -0.1114 0.9438 +vn 0.2216 -0.1013 0.9698 +vn -0.3110 -0.1114 0.9438 +vn -0.2216 -0.1013 0.9698 +vn 0.2095 -0.0154 0.9777 +vn -0.2095 -0.0154 0.9777 +vn -0.0889 0.5489 0.8311 +vn 0.2289 0.3937 0.8903 +vn 0.0889 0.5489 0.8311 +vn -0.2289 0.3937 0.8903 +vn 0.5143 0.1332 0.8472 +vn 0.5203 -0.0172 0.8538 +vn -0.5143 0.1332 0.8472 +vn -0.5203 -0.0172 0.8538 +vn 0.4544 -0.1227 0.8823 +vn 0.4414 -0.1770 0.8796 +vn -0.4544 -0.1227 0.8823 +vn -0.4414 -0.1770 0.8796 +vn 0.4841 -0.1420 0.8634 +vn 0.5207 0.0114 0.8536 +vn -0.4841 -0.1420 0.8634 +vn -0.5207 0.0114 0.8536 +vn 0.4921 0.2016 0.8468 +vn 0.4234 0.3249 0.8456 +vn -0.4921 0.2016 0.8468 +vn -0.4234 0.3249 0.8456 +vn 0.3926 0.3590 0.8467 +vn -0.3926 0.3590 0.8467 +vn -0.0264 -0.9352 -0.3530 +vn 0.1372 -0.9090 -0.3936 +vn -0.0981 -0.9436 -0.3161 +vn -0.1839 -0.5326 -0.8261 +vn -0.3442 -0.4349 -0.8320 +vn -0.2246 -0.4137 -0.8822 +vn 0.0264 -0.9352 -0.3530 +vn 0.3442 -0.4349 -0.8320 +vn 0.1839 -0.5326 -0.8261 +vn 0.0981 -0.9436 -0.3161 +vn -0.1372 -0.9090 -0.3936 +vn 0.2246 -0.4137 -0.8822 +vn 0.4244 -0.8377 -0.3436 +vn 0.7349 -0.6533 -0.1819 +vn 0.0317 -0.4128 -0.9102 +vn 0.4230 -0.3869 -0.8193 +vn -0.4244 -0.8377 -0.3436 +vn -0.0317 -0.4128 -0.9102 +vn -0.7349 -0.6533 -0.1819 +vn -0.4230 -0.3869 -0.8193 +vn 0.9526 -0.2936 0.0789 +vn 0.9843 0.1349 0.1141 +vn 0.7601 -0.1720 -0.6265 +vn 0.9311 0.1050 -0.3493 +vn -0.9526 -0.2936 0.0789 +vn -0.7601 -0.1720 -0.6265 +vn -0.9843 0.1349 0.1141 +vn -0.9311 0.1050 -0.3493 +vn 0.7998 0.5749 -0.1726 +vn 0.2948 0.8526 -0.4314 +vn 0.6203 0.3220 -0.7152 +vn 0.0973 0.4163 -0.9040 +vn -0.7998 0.5749 -0.1726 +vn -0.6203 0.3220 -0.7152 +vn -0.2948 0.8526 -0.4314 +vn -0.0973 0.4163 -0.9040 +vn -0.1875 0.8599 -0.4748 +vn -0.4054 0.8070 -0.4293 +vn -0.2779 0.3416 -0.8978 +vn -0.4393 0.3206 -0.8392 +vn 0.1875 0.8599 -0.4748 +vn 0.2779 0.3416 -0.8978 +vn 0.4054 0.8070 -0.4293 +vn 0.4393 0.3206 -0.8392 +vn -0.5054 0.7899 -0.3472 +vn -0.5973 0.7617 -0.2510 +vn -0.5153 0.3406 -0.7864 +vn -0.4563 0.4143 -0.7875 +vn 0.5054 0.7899 -0.3472 +vn 0.5153 0.3406 -0.7864 +vn 0.5973 0.7617 -0.2510 +vn 0.4563 0.4143 -0.7875 +vn -0.4345 -0.0221 -0.9004 +vn -0.3708 -0.0204 -0.9285 +vn -0.1425 -0.0782 -0.9867 +vn 0.4345 -0.0221 -0.9004 +vn 0.1425 -0.0782 -0.9867 +vn 0.3708 -0.0204 -0.9285 +vn -0.2103 -0.0242 -0.9773 +vn 0.0064 -0.0193 -0.9998 +vn 0.2103 -0.0242 -0.9773 +vn -0.0064 -0.0193 -0.9998 +vn 0.4837 0.0547 -0.8735 +vn -0.4837 0.0547 -0.8735 +vn -0.3500 0.8725 -0.3409 +vn 0.2137 0.3590 -0.9085 +vn 0.3500 0.8725 -0.3409 +vn -0.2137 0.3590 -0.9085 +vn 0.3484 -0.2031 -0.9151 +vn 0.1220 -0.5960 -0.7937 +vn -0.3484 -0.2031 -0.9151 +vn -0.1220 -0.5960 -0.7937 +vn -0.0931 -0.9181 -0.3853 +vn 0.0931 -0.9181 -0.3853 +usemtl None +s 1 +f 1//1 501//2 1552//3 502//4 +f 1//1 502//4 1506//5 503//6 +f 1//1 503//6 1508//7 504//8 +f 1//1 504//8 1550//9 501//2 +f 2//10 505//11 1509//12 506//13 +f 2//10 506//13 1507//14 507//15 +f 2//10 507//15 1553//16 508//17 +f 2//10 508//17 1551//18 505//11 +f 3//19 509//20 1550//9 504//8 +f 3//19 504//8 1508//7 510//21 +f 3//19 510//21 1510//22 511//23 +f 3//19 511//23 1548//24 509//20 +f 4//25 512//26 1511//27 513//28 +f 4//25 513//28 1509//12 505//11 +f 4//25 505//11 1551//18 514//29 +f 4//25 514//29 1549//30 512//26 +f 5//31 510//21 1508//7 515//32 +f 5//31 515//32 1514//33 516//34 +f 5//31 516//34 1512//35 517//36 +f 5//31 517//36 1510//22 510//21 +f 6//37 518//38 1513//39 519//40 +f 6//37 519//40 1515//41 520//42 +f 6//37 520//42 1509//12 513//28 +f 6//37 513//28 1511//27 518//38 +f 7//43 503//6 1506//5 521//44 +f 7//43 521//44 1516//45 522//46 +f 7//43 522//46 1514//33 515//32 +f 7//43 515//32 1508//7 503//6 +f 8//47 520//42 1515//41 523//48 +f 8//47 523//48 1517//49 524//50 +f 8//47 524//50 1507//14 506//13 +f 8//47 506//13 1509//12 520//42 +f 9//51 522//46 1516//45 525//52 +f 9//51 525//52 1518//53 526//54 +f 9//51 526//54 1520//55 527//56 +f 9//51 527//56 1514//33 522//46 +f 10//57 528//58 1521//59 529//60 +f 10//57 529//60 1519//61 530//62 +f 10//57 530//62 1517//49 523//48 +f 10//57 523//48 1515//41 528//58 +f 11//63 516//34 1514//33 527//56 +f 11//63 527//56 1520//55 531//64 +f 11//63 531//64 1522//65 532//66 +f 11//63 532//66 1512//35 516//34 +f 12//67 533//68 1523//69 534//70 +f 12//67 534//70 1521//59 528//58 +f 12//67 528//58 1515//41 519//40 +f 12//67 519//40 1513//39 533//68 +f 13//71 531//64 1520//55 535//72 +f 13//71 535//72 1526//73 536//74 +f 13//71 536//74 1524//75 537//76 +f 13//71 537//76 1522//65 531//64 +f 14//77 538//78 1525//79 539//80 +f 14//77 539//80 1527//81 540//82 +f 14//77 540//82 1521//59 534//70 +f 14//77 534//70 1523//69 538//78 +f 15//83 526//54 1518//53 541//84 +f 15//83 541//84 1528//85 542//86 +f 15//83 542//86 1526//73 535//72 +f 15//83 535//72 1520//55 526//54 +f 16//87 540//82 1527//81 543//88 +f 16//87 543//88 1529//89 544//90 +f 16//87 544//90 1519//61 529//60 +f 16//87 529//60 1521//59 540//82 +f 17//91 542//86 1528//85 545//92 +f 17//91 545//92 1530//93 546//94 +f 17//91 546//94 1532//95 547//96 +f 17//91 547//96 1526//73 542//86 +f 18//97 548//98 1533//99 549//100 +f 18//97 549//100 1531//101 550//102 +f 18//97 550//102 1529//89 543//88 +f 18//97 543//88 1527//81 548//98 +f 19//103 536//74 1526//73 547//96 +f 19//103 547//96 1532//95 551//104 +f 19//103 551//104 1534//105 552//106 +f 19//103 552//106 1524//75 536//74 +f 20//107 553//108 1535//109 554//110 +f 20//107 554//110 1533//99 548//98 +f 20//107 548//98 1527//81 539//80 +f 20//107 539//80 1525//79 553//108 +f 21//111 551//104 1532//95 555//112 +f 21//111 555//112 1538//113 556//114 +f 21//111 556//114 1536//115 557//116 +f 21//111 557//116 1534//105 551//104 +f 22//117 558//118 1537//119 559//120 +f 22//117 559//120 1539//121 560//122 +f 22//117 560//122 1533//99 554//110 +f 22//117 554//110 1535//109 558//118 +f 23//123 546//94 1530//93 561//124 +f 23//123 561//124 1540//125 562//126 +f 23//123 562//126 1538//113 555//112 +f 23//123 555//112 1532//95 546//94 +f 24//127 560//122 1539//121 563//128 +f 24//127 563//128 1541//129 564//130 +f 24//127 564//130 1531//101 549//100 +f 24//127 549//100 1533//99 560//122 +f 25//131 562//126 1540//125 565//132 +f 25//131 565//132 1542//133 566//134 +f 25//131 566//134 1544//135 567//136 +f 25//131 567//136 1538//113 562//126 +f 26//137 568//138 1545//139 569//140 +f 26//137 569//140 1543//141 570//142 +f 26//137 570//142 1541//129 563//128 +f 26//137 563//128 1539//121 568//138 +f 27//143 556//114 1538//113 567//136 +f 27//143 567//136 1544//135 571//144 +f 27//143 571//144 1546//145 572//146 +f 27//143 572//146 1536//115 556//114 +f 28//147 573//148 1547//149 574//150 +f 28//147 574//150 1545//139 568//138 +f 28//147 568//138 1539//121 559//120 +f 28//147 559//120 1537//119 573//148 +f 29//151 571//144 1544//135 575//152 +f 29//151 575//152 1550//9 509//20 +f 29//151 509//20 1548//24 576//153 +f 29//151 576//153 1546//145 571//144 +f 30//154 577//155 1549//30 514//29 +f 30//154 514//29 1551//18 578//156 +f 30//154 578//156 1545//139 574//150 +f 30//154 574//150 1547//149 577//155 +f 31//157 566//134 1542//133 579//158 +f 31//157 579//158 1552//3 501//2 +f 31//157 501//2 1550//9 575//152 +f 31//157 575//152 1544//135 566//134 +f 32//159 578//156 1551//18 508//17 +f 32//159 508//17 1553//16 580//160 +f 32//159 580//160 1543//141 569//140 +f 32//159 569//140 1545//139 578//156 +f 33//161 581//162 1552//3 579//158 +f 33//161 579//158 1542//133 582//163 +f 33//161 582//163 1556//164 583//165 +f 33//161 583//165 1554//166 581//162 +f 34//167 584//168 1557//169 585//170 +f 34//167 585//170 1543//141 580//160 +f 34//167 580//160 1553//16 586//171 +f 34//167 586//171 1555//172 584//168 +f 35//173 582//163 1542//133 565//132 +f 35//173 565//132 1540//125 587//174 +f 35//173 587//174 1558//175 588//176 +f 35//173 588//176 1556//164 582//163 +f 36//177 589//178 1559//179 590//180 +f 36//177 590//180 1541//129 570//142 +f 36//177 570//142 1543//141 585//170 +f 36//177 585//170 1557//169 589//178 +f 37//181 587//174 1540//125 561//124 +f 37//181 561//124 1530//93 591//182 +f 37//181 591//182 1560//183 592//184 +f 37//181 592//184 1558//175 587//174 +f 38//185 593//186 1561//187 594//188 +f 38//185 594//188 1531//101 564//130 +f 38//185 564//130 1541//129 590//180 +f 38//185 590//180 1559//179 593//186 +f 39//189 591//182 1530//93 545//92 +f 39//189 545//92 1528//85 595//190 +f 39//189 595//190 1562//191 596//192 +f 39//189 596//192 1560//183 591//182 +f 40//193 597//194 1563//195 598//196 +f 40//193 598//196 1529//89 550//102 +f 40//193 550//102 1531//101 594//188 +f 40//193 594//188 1561//187 597//194 +f 41//197 595//190 1528//85 541//84 +f 41//197 541//84 1518//53 599//198 +f 41//197 599//198 1564//199 600//200 +f 41//197 600//200 1562//191 595//190 +f 42//201 601//202 1565//203 602//204 +f 42//201 602//204 1519//61 544//90 +f 42//201 544//90 1529//89 598//196 +f 42//201 598//196 1563//195 601//202 +f 43//205 599//198 1518//53 525//52 +f 43//205 525//52 1516//45 603//206 +f 43//205 603//206 1568//207 604//208 +f 43//205 604//208 1564//199 599//198 +f 44//209 605//210 1569//211 606//212 +f 44//209 606//212 1517//49 530//62 +f 44//209 530//62 1519//61 602//204 +f 44//209 602//204 1565//203 605//210 +f 45//213 603//206 1516//45 521//44 +f 45//213 521//44 1506//5 607//214 +f 45//213 607//214 1570//215 608//216 +f 45//213 608//216 1568//207 603//206 +f 46//217 609//218 1571//219 610//220 +f 46//217 610//220 1507//14 524//50 +f 46//217 524//50 1517//49 606//212 +f 46//217 606//212 1569//211 609//218 +f 47//221 607//214 1506//5 502//4 +f 47//221 502//4 1552//3 581//162 +f 47//221 581//162 1554//166 611//222 +f 47//221 611//222 1570//215 607//214 +f 48//223 612//224 1555//172 586//171 +f 48//223 586//171 1553//16 507//15 +f 48//223 507//15 1507//14 610//220 +f 48//223 610//220 1571//219 612//224 +f 49//225 613//226 1566//227 614//228 +f 49//225 614//228 1570//215 611//222 +f 49//225 611//222 1554//166 613//226 +f 50//229 615//230 1555//172 612//224 +f 50//229 612//224 1571//219 616//231 +f 50//229 616//231 1567//232 615//230 +f 51//233 617//234 1568//207 608//216 +f 51//233 608//216 1570//215 614//228 +f 51//233 614//228 1566//227 617//234 +f 52//235 618//236 1567//232 616//231 +f 52//235 616//231 1571//219 609//218 +f 52//235 609//218 1569//211 618//236 +f 53//237 617//234 1566//227 619//238 +f 53//237 619//238 1564//199 604//208 +f 53//237 604//208 1568//207 617//234 +f 54//239 618//236 1569//211 605//210 +f 54//239 605//210 1565//203 620//240 +f 54//239 620//240 1567//232 618//236 +f 55//241 619//238 1566//227 621//242 +f 55//241 621//242 1562//191 600//200 +f 55//241 600//200 1564//199 619//238 +f 56//243 620//240 1565//203 601//202 +f 56//243 601//202 1563//195 622//244 +f 56//243 622//244 1567//232 620//240 +f 57//245 621//242 1566//227 623//246 +f 57//245 623//246 1560//183 596//192 +f 57//245 596//192 1562//191 621//242 +f 58//247 622//244 1563//195 597//194 +f 58//247 597//194 1561//187 624//248 +f 58//247 624//248 1567//232 622//244 +f 59//249 623//246 1566//227 625//250 +f 59//249 625//250 1558//175 592//184 +f 59//249 592//184 1560//183 623//246 +f 60//251 624//248 1561//187 593//186 +f 60//251 593//186 1559//179 626//252 +f 60//251 626//252 1567//232 624//248 +f 61//253 625//250 1566//227 627//254 +f 61//253 627//254 1556//164 588//176 +f 61//253 588//176 1558//175 625//250 +f 62//255 626//252 1559//179 589//178 +f 62//255 589//178 1557//169 628//256 +f 62//255 628//256 1567//232 626//252 +f 63//257 627//254 1566//227 613//226 +f 63//257 613//226 1554//166 583//165 +f 63//257 583//165 1556//164 627//254 +f 64//258 628//256 1557//169 584//168 +f 64//258 584//168 1555//172 615//230 +f 64//258 615//230 1567//232 628//256 +f 65//259 629//260 1594//261 630//262 +f 65//259 630//262 1679//263 631//264 +f 65//259 631//264 1681//265 632//266 +f 65//259 632//266 1596//267 629//260 +f 66//268 632//266 1681//265 633//269 +f 66//268 633//269 1680//270 634//271 +f 66//268 634//271 1595//272 635//273 +f 66//268 635//273 1596//267 632//266 +f 67//274 636//275 1592//276 637//277 +f 67//274 637//277 1677//278 638//279 +f 67//274 638//279 1679//263 630//262 +f 67//274 630//262 1594//261 636//275 +f 68//280 634//271 1680//270 639//281 +f 68//280 639//281 1678//282 640//283 +f 68//280 640//283 1593//284 641//285 +f 68//280 641//285 1595//272 634//271 +f 69//286 642//287 1590//288 643//289 +f 69//286 643//289 1675//290 644//291 +f 69//286 644//291 1677//278 637//277 +f 69//286 637//277 1592//276 642//287 +f 70//292 640//283 1678//282 645//293 +f 70//292 645//293 1676//294 646//295 +f 70//292 646//295 1591//296 647//297 +f 70//292 647//297 1593//284 640//283 +f 71//298 648//299 1588//300 649//301 +f 71//298 649//301 1673//302 650//303 +f 71//298 650//303 1675//290 643//289 +f 71//298 643//289 1590//288 648//299 +f 72//304 646//295 1676//294 651//305 +f 72//304 651//305 1674//306 652//307 +f 72//304 652//307 1589//308 653//309 +f 72//304 653//309 1591//296 646//295 +f 73//310 654//311 1586//312 655//313 +f 73//310 655//313 1671//314 656//315 +f 73//310 656//315 1673//302 649//301 +f 73//310 649//301 1588//300 654//311 +f 74//316 652//307 1674//306 657//317 +f 74//316 657//317 1672//318 658//319 +f 74//316 658//319 1587//320 659//321 +f 74//316 659//321 1589//308 652//307 +f 75//322 660//323 1584//324 661//325 +f 75//322 661//325 1597//326 662//327 +f 75//322 662//327 1651//328 663//329 +f 75//322 663//329 1669//330 660//323 +f 76//331 664//332 1652//333 665//334 +f 76//331 665//334 1598//335 666//336 +f 76//331 666//336 1585//337 667//338 +f 76//331 667//338 1670//339 664//332 +f 77//340 662//327 1597//326 668//341 +f 77//340 668//341 1599//342 669//343 +f 77//340 669//343 1653//344 670//345 +f 77//340 670//345 1651//328 662//327 +f 78//346 671//347 1654//348 672//349 +f 78//346 672//349 1600//350 673//351 +f 78//346 673//351 1598//335 665//334 +f 78//346 665//334 1652//333 671//347 +f 79//352 669//343 1599//342 674//353 +f 79//352 674//353 1601//354 675//355 +f 79//352 675//355 1655//356 676//357 +f 79//352 676//357 1653//344 669//343 +f 80//358 677//359 1656//360 678//361 +f 80//358 678//361 1602//362 679//363 +f 80//358 679//363 1600//350 672//349 +f 80//358 672//349 1654//348 677//359 +f 81//364 675//355 1601//354 680//365 +f 81//364 680//365 1603//366 681//367 +f 81//364 681//367 1657//368 682//369 +f 81//364 682//369 1655//356 675//355 +f 82//370 683//371 1658//372 684//373 +f 82//370 684//373 1604//374 685//375 +f 82//370 685//375 1602//362 678//361 +f 82//370 678//361 1656//360 683//371 +f 83//376 681//367 1603//366 686//377 +f 83//376 686//377 1605//378 687//379 +f 83//376 687//379 1659//380 688//381 +f 83//376 688//381 1657//368 681//367 +f 84//382 689//383 1660//384 690//385 +f 84//382 690//385 1606//386 691//387 +f 84//382 691//387 1604//374 684//373 +f 84//382 684//373 1658//372 689//383 +f 85//388 687//379 1605//378 692//389 +f 85//388 692//389 1607//390 693//391 +f 85//388 693//391 1661//392 694//393 +f 85//388 694//393 1659//380 687//379 +f 86//394 695//395 1662//396 696//397 +f 86//394 696//397 1608//398 697//399 +f 86//394 697//399 1606//386 690//385 +f 86//394 690//385 1660//384 695//395 +f 87//400 693//391 1607//390 698//401 +f 87//400 698//401 1609//402 699//403 +f 87//400 699//403 1663//404 700//405 +f 87//400 700//405 1661//392 693//391 +f 88//406 701//407 1664//408 702//409 +f 88//406 702//409 1610//410 703//411 +f 88//406 703//411 1608//398 696//397 +f 88//406 696//397 1662//396 701//407 +f 89//412 699//403 1609//402 704//413 +f 89//412 704//413 1611//414 705//415 +f 89//412 705//415 1665//416 706//417 +f 89//412 706//417 1663//404 699//403 +f 90//418 707//419 1666//420 708//421 +f 90//418 708//421 1612//422 709//423 +f 90//418 709//423 1610//410 702//409 +f 90//418 702//409 1664//408 707//419 +f 91//424 705//415 1611//414 710//425 +f 91//424 710//425 1613//426 711//427 +f 91//424 711//427 1667//428 712//429 +f 91//424 712//429 1665//416 705//415 +f 92//430 713//431 1668//432 714//433 +f 92//430 714//433 1614//434 715//435 +f 92//430 715//435 1612//422 708//421 +f 92//430 708//421 1666//420 713//431 +f 93//436 711//427 1613//426 716//437 +f 93//436 716//437 1572//438 717//439 +f 93//436 717//439 1573//440 718//441 +f 93//436 718//441 1667//428 711//427 +f 94//442 719//443 1573//440 717//439 +f 94//442 717//439 1572//438 720//444 +f 94//442 720//444 1614//434 714//433 +f 94//442 714//433 1668//432 719//443 +f 95//445 721//446 1615//447 722//448 +f 95//445 722//448 1633//449 723//450 +f 95//445 723//450 1665//416 712//429 +f 95//445 712//429 1667//428 721//446 +f 96//451 713//431 1666//420 724//452 +f 96//451 724//452 1634//453 725//454 +f 96//451 725//454 1616//455 726//456 +f 96//451 726//456 1668//432 713//431 +f 97//457 723//450 1633//449 727//458 +f 97//457 727//458 1684//459 728//460 +f 97//457 728//460 1663//404 706//417 +f 97//457 706//417 1665//416 723//450 +f 98//461 707//419 1664//408 729//462 +f 98//461 729//462 1685//463 730//464 +f 98//461 730//464 1634//453 724//452 +f 98//461 724//452 1666//420 707//419 +f 99//465 731//466 1631//467 732//468 +f 99//465 732//468 1661//392 700//405 +f 99//465 700//405 1663//404 728//460 +f 99//465 728//460 1684//459 731//466 +f 100//469 729//462 1664//408 701//407 +f 100//469 701//407 1662//396 733//470 +f 100//469 733//470 1632//471 734//472 +f 100//469 734//472 1685//463 729//462 +f 101//473 735//474 1629//475 736//476 +f 101//473 736//476 1659//380 694//393 +f 101//473 694//393 1661//392 732//468 +f 101//473 732//468 1631//467 735//474 +f 102//477 733//470 1662//396 695//395 +f 102//477 695//395 1660//384 737//478 +f 102//477 737//478 1630//479 738//480 +f 102//477 738//480 1632//471 733//470 +f 103//481 739//482 1627//483 740//484 +f 103//481 740//484 1657//368 688//381 +f 103//481 688//381 1659//380 736//476 +f 103//481 736//476 1629//475 739//482 +f 104//485 737//478 1660//384 689//383 +f 104//485 689//383 1658//372 741//486 +f 104//485 741//486 1628//487 742//488 +f 104//485 742//488 1630//479 737//478 +f 105//489 743//490 1625//491 744//492 +f 105//489 744//492 1655//356 682//369 +f 105//489 682//369 1657//368 740//484 +f 105//489 740//484 1627//483 743//490 +f 106//493 741//486 1658//372 683//371 +f 106//493 683//371 1656//360 745//494 +f 106//493 745//494 1626//495 746//496 +f 106//493 746//496 1628//487 741//486 +f 107//497 747//498 1623//499 748//500 +f 107//497 748//500 1653//344 676//357 +f 107//497 676//357 1655//356 744//492 +f 107//497 744//492 1625//491 747//498 +f 108//501 745//494 1656//360 677//359 +f 108//501 677//359 1654//348 749//502 +f 108//501 749//502 1624//503 750//504 +f 108//501 750//504 1626//495 745//494 +f 109//505 751//506 1621//507 752//508 +f 109//505 752//508 1651//328 670//345 +f 109//505 670//345 1653//344 748//500 +f 109//505 748//500 1623//499 751//506 +f 110//509 749//502 1654//348 671//347 +f 110//509 671//347 1652//333 753//510 +f 110//509 753//510 1622//511 754//512 +f 110//509 754//512 1624//503 749//502 +f 111//513 755//514 1619//515 756//516 +f 111//513 756//516 1669//330 663//329 +f 111//513 663//329 1651//328 752//508 +f 111//513 752//508 1621//507 755//514 +f 112//517 753//510 1652//333 664//332 +f 112//517 664//332 1670//339 757//518 +f 112//517 757//518 1620//519 758//520 +f 112//517 758//520 1622//511 753//510 +f 113//521 756//516 1619//515 759//522 +f 113//521 759//522 1686//523 760//524 +f 113//521 760//524 1682//525 761//526 +f 113//521 761//526 1669//330 756//516 +f 114//527 762//528 1682//525 763//529 +f 114//527 763//529 1687//530 764//531 +f 114//527 764//531 1620//519 757//518 +f 114//527 757//518 1670//339 762//528 +f 115//532 765//533 1615//447 721//446 +f 115//532 721//446 1667//428 718//441 +f 115//532 718//441 1573//440 766//534 +f 115//532 766//534 1617//535 765//533 +f 116//536 767//537 1573//440 719//443 +f 116//536 719//443 1668//432 726//456 +f 116//536 726//456 1616//455 768//538 +f 116//536 768//538 1618//539 767//537 +f 117//540 769//541 1617//535 766//534 +f 117//540 766//534 1573//440 770//542 +f 117//540 770//542 1683//543 771//544 +f 117//540 771//544 1688//545 769//541 +f 118//546 772//547 1683//543 770//542 +f 118//546 770//542 1573//440 767//537 +f 118//546 767//537 1618//539 773//548 +f 118//546 773//548 1689//549 772//547 +f 119//550 774//551 1682//525 760//524 +f 119//550 760//524 1686//523 775//552 +f 119//550 775//552 1688//545 771//544 +f 119//550 771//544 1683//543 774//551 +f 120//553 772//547 1689//549 776//554 +f 120//553 776//554 1687//530 763//529 +f 120//553 763//529 1682//525 774//551 +f 120//553 774//551 1683//543 772//547 +f 121//555 777//556 1640//557 778//558 +f 121//555 778//558 1642//559 779//560 +f 121//555 779//560 1681//265 631//264 +f 121//555 631//264 1679//263 777//556 +f 122//561 633//269 1681//265 779//560 +f 122//561 779//560 1642//559 780//562 +f 122//561 780//562 1641//563 781//564 +f 122//561 781//564 1680//270 633//269 +f 123//565 782//566 1638//567 783//568 +f 123//565 783//568 1640//557 777//556 +f 123//565 777//556 1679//263 638//279 +f 123//565 638//279 1677//278 782//566 +f 124//569 639//281 1680//270 781//564 +f 124//569 781//564 1641//563 784//570 +f 124//569 784//570 1639//571 785//572 +f 124//569 785//572 1678//282 639//281 +f 125//573 786//574 1636//575 787//576 +f 125//573 787//576 1638//567 782//566 +f 125//573 782//566 1677//278 644//291 +f 125//573 644//291 1675//290 786//574 +f 126//577 645//293 1678//282 785//572 +f 126//577 785//572 1639//571 788//578 +f 126//577 788//578 1637//579 789//580 +f 126//577 789//580 1676//294 645//293 +f 127//581 656//315 1671//314 790//582 +f 127//581 790//582 1692//583 791//584 +f 127//581 791//584 1690//585 792//586 +f 127//581 792//586 1673//302 656//315 +f 128//587 793//588 1691//589 794//590 +f 128//587 794//590 1693//591 795//592 +f 128//587 795//592 1672//318 657//317 +f 128//587 657//317 1674//306 793//588 +f 129//593 796//594 1636//575 786//574 +f 129//593 786//574 1675//290 650//303 +f 129//593 650//303 1673//302 792//586 +f 129//593 792//586 1690//585 796//594 +f 130//595 793//588 1674//306 651//305 +f 130//595 651//305 1676//294 789//580 +f 130//595 789//580 1637//579 797//596 +f 130//595 797//596 1691//589 793//588 +f 131//597 798//598 1649//599 799//600 +f 131//597 799//600 1695//601 800//602 +f 131//597 800//602 1694//603 801//604 +f 131//597 801//604 1692//583 798//598 +f 132//605 802//606 1694//603 800//602 +f 132//605 800//602 1695//601 803//607 +f 132//605 803//607 1650//608 804//609 +f 132//605 804//609 1693//591 802//606 +f 133//610 805//611 1690//585 791//584 +f 133//610 791//584 1692//583 801//604 +f 133//610 801//604 1694//603 806//612 +f 133//610 806//612 1574//613 805//611 +f 134//614 806//612 1694//603 802//606 +f 134//614 802//606 1693//591 794//590 +f 134//614 794//590 1691//589 807//615 +f 134//614 807//615 1574//613 806//612 +f 135//616 808//617 1635//618 809//619 +f 135//616 809//619 1636//575 796//594 +f 135//616 796//594 1690//585 805//611 +f 135//616 805//611 1574//613 808//617 +f 136//620 807//615 1691//589 797//596 +f 136//620 797//596 1637//579 810//621 +f 136//620 810//621 1635//618 808//617 +f 136//620 808//617 1574//613 807//615 +f 137//622 811//623 1647//624 812//625 +f 137//622 812//625 1698//626 813//627 +f 137//622 813//627 1696//628 814//629 +f 137//622 814//629 1649//599 811//623 +f 138//630 815//631 1697//632 816//633 +f 138//630 816//633 1699//634 817//635 +f 138//630 817//635 1648//636 818//637 +f 138//630 818//637 1650//608 815//631 +f 139//638 819//639 1645//640 820//641 +f 139//638 820//641 1700//642 821//643 +f 139//638 821//643 1698//626 812//625 +f 139//638 812//625 1647//624 819//639 +f 140//644 817//635 1699//634 822//645 +f 140//644 822//645 1701//646 823//647 +f 140//644 823//647 1646//648 824//649 +f 140//644 824//649 1648//636 817//635 +f 141//650 825//651 1644//652 826//653 +f 141//650 826//653 1702//654 827//655 +f 141//650 827//655 1700//642 820//641 +f 141//650 820//641 1645//640 825//651 +f 142//656 823//647 1701//646 828//657 +f 142//656 828//657 1703//658 829//659 +f 142//656 829//659 1644//652 830//660 +f 142//656 830//660 1646//648 823//647 +f 143//661 831//662 1643//663 832//664 +f 143//661 832//664 1576//665 833//666 +f 143//661 833//666 1702//654 826//653 +f 143//661 826//653 1644//652 831//662 +f 144//667 829//659 1703//658 834//668 +f 144//667 834//668 1576//665 832//664 +f 144//667 832//664 1643//663 831//662 +f 144//667 831//662 1644//652 829//659 +f 145//669 835//670 1695//601 799//600 +f 145//669 799//600 1649//599 814//629 +f 145//669 814//629 1696//628 836//671 +f 145//669 836//671 1575//672 835//670 +f 146//673 837//674 1697//632 815//631 +f 146//673 815//631 1650//608 803//607 +f 146//673 803//607 1695//601 835//670 +f 146//673 835//670 1575//672 837//674 +f 147//675 838//676 1575//672 836//671 +f 147//675 836//671 1696//628 839//677 +f 147//675 839//677 1711//678 840//679 +f 147//675 840//679 1713//680 838//676 +f 148//681 841//682 1712//683 842//684 +f 148//681 842//684 1697//632 837//674 +f 148//681 837//674 1575//672 838//676 +f 148//681 838//676 1713//680 841//682 +f 149//685 833//666 1576//665 843//686 +f 149//685 843//686 1704//687 844//688 +f 149//685 844//688 1705//689 845//690 +f 149//685 845//690 1702//654 833//666 +f 150//691 846//692 1706//693 847//694 +f 150//691 847//694 1704//687 843//686 +f 150//691 843//686 1576//665 834//668 +f 150//691 834//668 1703//658 846//692 +f 151//695 827//655 1702//654 845//690 +f 151//695 845//690 1705//689 848//696 +f 151//695 848//696 1707//697 849//698 +f 151//695 849//698 1700//642 827//655 +f 152//699 850//700 1708//701 851//702 +f 152//699 851//702 1706//693 846//692 +f 152//699 846//692 1703//658 828//657 +f 152//699 828//657 1701//646 850//700 +f 153//703 821//643 1700//642 849//698 +f 153//703 849//698 1707//697 852//704 +f 153//703 852//704 1709//705 853//706 +f 153//703 853//706 1698//626 821//643 +f 154//707 854//708 1710//709 855//710 +f 154//707 855//710 1708//701 850//700 +f 154//707 850//700 1701//646 822//645 +f 154//707 822//645 1699//634 854//708 +f 155//711 813//627 1698//626 853//706 +f 155//711 853//706 1709//705 856//712 +f 155//711 856//712 1711//678 839//677 +f 155//711 839//677 1696//628 813//627 +f 156//713 842//684 1712//683 857//714 +f 156//713 857//714 1710//709 854//708 +f 156//713 854//708 1699//634 816//633 +f 156//713 816//633 1697//632 842//684 +f 157//715 844//688 1704//687 858//716 +f 157//715 858//716 1709//705 852//704 +f 157//715 852//704 1707//697 848//696 +f 157//715 848//696 1705//689 844//688 +f 158//717 851//702 1708//701 855//710 +f 158//717 855//710 1710//709 859//718 +f 158//717 859//718 1704//687 847//694 +f 158//717 847//694 1706//693 851//702 +f 159//719 858//716 1704//687 860//720 +f 159//719 860//720 1713//680 840//679 +f 159//719 840//679 1711//678 856//712 +f 159//719 856//712 1709//705 858//716 +f 160//721 857//714 1712//683 841//682 +f 160//721 841//682 1713//680 860//720 +f 160//721 860//720 1704//687 859//718 +f 160//721 859//718 1710//709 857//714 +f 161//722 861//723 1644//652 825//651 +f 161//722 825//651 1645//640 862//724 +f 161//722 862//724 1669//330 761//526 +f 161//722 761//526 1682//525 861//723 +f 162//725 762//528 1670//339 863//726 +f 162//725 863//726 1646//648 830//660 +f 162//725 830//660 1644//652 861//723 +f 162//725 861//723 1682//525 762//528 +f 163//727 862//724 1645//640 819//639 +f 163//727 819//639 1647//624 864//728 +f 163//727 864//728 1716//729 865//730 +f 163//727 865//730 1669//330 862//724 +f 164//731 866//732 1717//733 867//734 +f 164//731 867//734 1648//636 824//649 +f 164//731 824//649 1646//648 863//726 +f 164//731 863//726 1670//339 866//732 +f 165//735 864//728 1647//624 811//623 +f 165//735 811//623 1649//599 868//736 +f 165//735 868//736 1718//737 869//738 +f 165//735 869//738 1716//729 864//728 +f 166//739 870//740 1719//741 871//742 +f 166//739 871//742 1650//608 818//637 +f 166//739 818//637 1648//636 867//734 +f 166//739 867//734 1717//733 870//740 +f 167//743 868//736 1649//599 798//598 +f 167//743 798//598 1692//583 790//582 +f 167//743 790//582 1671//314 872//744 +f 167//743 872//744 1718//737 868//736 +f 168//745 873//746 1672//318 795//592 +f 168//745 795//592 1693//591 804//609 +f 168//745 804//609 1650//608 871//742 +f 168//745 871//742 1719//741 873//746 +f 169//747 655//313 1586//312 874//748 +f 169//747 874//748 1714//749 875//750 +f 169//747 875//750 1718//737 872//744 +f 169//747 872//744 1671//314 655//313 +f 170//751 873//746 1719//741 876//752 +f 170//751 876//752 1715//753 877//754 +f 170//751 877//754 1587//320 658//319 +f 170//751 658//319 1672//318 873//746 +f 171//755 875//750 1714//749 878//756 +f 171//755 878//756 1720//757 879//758 +f 171//755 879//758 1716//729 869//738 +f 171//755 869//738 1718//737 875//750 +f 172//759 870//740 1717//733 880//760 +f 172//759 880//760 1721//761 881//762 +f 172//759 881//762 1715//753 876//752 +f 172//759 876//752 1719//741 870//740 +f 173//763 882//764 1584//324 660//323 +f 173//763 660//323 1669//330 865//730 +f 173//763 865//730 1716//729 879//758 +f 173//763 879//758 1720//757 882//764 +f 174//765 880//760 1717//733 866//732 +f 174//765 866//732 1670//339 667//338 +f 174//765 667//338 1585//337 883//766 +f 174//765 883//766 1721//761 880//760 +f 175//767 884//768 1636//575 809//619 +f 175//767 809//619 1635//618 885//769 +f 175//767 885//769 1577//770 886//771 +f 175//767 886//771 1727//772 884//768 +f 176//773 887//774 1577//770 885//769 +f 176//773 885//769 1635//618 810//621 +f 176//773 810//621 1637//579 888//775 +f 176//773 888//775 1728//776 887//774 +f 177//777 889//778 1638//567 787//576 +f 177//777 787//576 1636//575 884//768 +f 177//777 884//768 1727//772 890//779 +f 177//777 890//779 1725//780 889//778 +f 178//781 891//782 1728//776 888//775 +f 178//781 888//775 1637//579 788//578 +f 178//781 788//578 1639//571 892//783 +f 178//781 892//783 1726//784 891//782 +f 179//785 893//786 1640//557 783//568 +f 179//785 783//568 1638//567 889//778 +f 179//785 889//778 1725//780 894//787 +f 179//785 894//787 1723//788 893//786 +f 180//789 895//790 1726//784 892//783 +f 180//789 892//783 1639//571 784//570 +f 180//789 784//570 1641//563 896//791 +f 180//789 896//791 1724//792 895//790 +f 181//793 897//794 1642//559 778//558 +f 181//793 778//558 1640//557 893//786 +f 181//793 893//786 1723//788 898//795 +f 181//793 898//795 1722//796 897//794 +f 182//797 899//798 1724//792 896//791 +f 182//797 896//791 1641//563 780//562 +f 182//797 780//562 1642//559 897//794 +f 182//797 897//794 1722//796 899//798 +f 183//799 900//800 1722//796 898//795 +f 183//799 898//795 1723//788 901//801 +f 183//799 901//801 1734//802 902//803 +f 183//799 902//803 1736//804 900//800 +f 184//805 903//806 1735//807 904//808 +f 184//805 904//808 1724//792 899//798 +f 184//805 899//798 1722//796 900//800 +f 184//805 900//800 1736//804 903//806 +f 185//809 901//801 1723//788 894//787 +f 185//809 894//787 1725//780 905//810 +f 185//809 905//810 1732//811 906//812 +f 185//809 906//812 1734//802 901//801 +f 186//813 907//814 1733//815 908//816 +f 186//813 908//816 1726//784 895//790 +f 186//813 895//790 1724//792 904//808 +f 186//813 904//808 1735//807 907//814 +f 187//817 905//810 1725//780 890//779 +f 187//817 890//779 1727//772 909//818 +f 187//817 909//818 1730//819 910//820 +f 187//817 910//820 1732//811 905//810 +f 188//821 911//822 1731//823 912//824 +f 188//821 912//824 1728//776 891//782 +f 188//821 891//782 1726//784 908//816 +f 188//821 908//816 1733//815 911//822 +f 189//825 909//818 1727//772 886//771 +f 189//825 886//771 1577//770 913//826 +f 189//825 913//826 1729//827 914//828 +f 189//825 914//828 1730//819 909//818 +f 190//829 915//830 1729//827 913//826 +f 190//829 913//826 1577//770 887//774 +f 190//829 887//774 1728//776 912//824 +f 190//829 912//824 1731//823 915//830 +f 191//831 914//828 1729//827 916//832 +f 191//831 916//832 1736//804 902//803 +f 191//831 902//803 1734//802 917//833 +f 191//831 917//833 1730//819 914//828 +f 192//834 918//835 1735//807 903//806 +f 192//834 903//806 1736//804 916//832 +f 192//834 916//832 1729//827 915//830 +f 192//834 915//830 1731//823 918//835 +f 193//836 910//820 1730//819 917//833 +f 193//836 917//833 1734//802 906//812 +f 193//836 906//812 1732//811 910//820 +f 194//837 911//822 1733//815 907//814 +f 194//837 907//814 1735//807 918//835 +f 194//837 918//835 1731//823 911//822 +f 195//838 919//839 1688//545 775//552 +f 195//838 775//552 1686//523 920//840 +f 195//838 920//840 1739//841 921//842 +f 195//838 921//842 1737//843 919//839 +f 196//844 922//845 1740//846 923//847 +f 196//844 923//847 1687//530 776//554 +f 196//844 776//554 1689//549 924//848 +f 196//844 924//848 1738//849 922//845 +f 197//850 925//851 1617//535 769//541 +f 197//850 769//541 1688//545 919//839 +f 197//850 919//839 1737//843 926//852 +f 197//850 926//852 1759//853 925//851 +f 198//854 927//855 1738//849 924//848 +f 198//854 924//848 1689//549 773//548 +f 198//854 773//548 1618//539 928//856 +f 198//854 928//856 1760//857 927//855 +f 199//858 929//859 1615//447 765//533 +f 199//858 765//533 1617//535 925//851 +f 199//858 925//851 1759//853 930//860 +f 199//858 930//860 1761//861 929//859 +f 200//862 931//863 1760//857 928//856 +f 200//862 928//856 1618//539 768//538 +f 200//862 768//538 1616//455 932//864 +f 200//862 932//864 1762//865 931//863 +f 201//866 920//840 1686//523 759//522 +f 201//866 759//522 1619//515 933//867 +f 201//866 933//867 1757//868 934//869 +f 201//866 934//869 1739//841 920//840 +f 202//870 935//871 1758//872 936//873 +f 202//870 936//873 1620//519 764//531 +f 202//870 764//531 1687//530 923//847 +f 202//870 923//847 1740//846 935//871 +f 203//874 933//867 1619//515 755//514 +f 203//874 755//514 1621//507 937//875 +f 203//874 937//875 1755//876 938//877 +f 203//874 938//877 1757//868 933//867 +f 204//878 939//879 1756//880 940//881 +f 204//878 940//881 1622//511 758//520 +f 204//878 758//520 1620//519 936//873 +f 204//878 936//873 1758//872 939//879 +f 205//882 937//875 1621//507 751//506 +f 205//882 751//506 1623//499 941//883 +f 205//882 941//883 1753//884 942//885 +f 205//882 942//885 1755//876 937//875 +f 206//886 943//887 1754//888 944//889 +f 206//886 944//889 1624//503 754//512 +f 206//886 754//512 1622//511 940//881 +f 206//886 940//881 1756//880 943//887 +f 207//890 941//883 1623//499 747//498 +f 207//890 747//498 1625//491 945//891 +f 207//890 945//891 1751//892 946//893 +f 207//890 946//893 1753//884 941//883 +f 208//894 947//895 1752//896 948//897 +f 208//894 948//897 1626//495 750//504 +f 208//894 750//504 1624//503 944//889 +f 208//894 944//889 1754//888 947//895 +f 209//898 945//891 1625//491 743//490 +f 209//898 743//490 1627//483 949//899 +f 209//898 949//899 1749//900 950//901 +f 209//898 950//901 1751//892 945//891 +f 210//902 951//903 1750//904 952//905 +f 210//902 952//905 1628//487 746//496 +f 210//902 746//496 1626//495 948//897 +f 210//902 948//897 1752//896 951//903 +f 211//906 949//899 1627//483 739//482 +f 211//906 739//482 1629//475 953//907 +f 211//906 953//907 1747//908 954//909 +f 211//906 954//909 1749//900 949//899 +f 212//910 955//911 1748//912 956//913 +f 212//910 956//913 1630//479 742//488 +f 212//910 742//488 1628//487 952//905 +f 212//910 952//905 1750//904 955//911 +f 213//914 953//907 1629//475 735//474 +f 213//914 735//474 1631//467 957//915 +f 213//914 957//915 1745//916 958//917 +f 213//914 958//917 1747//908 953//907 +f 214//918 959//919 1746//920 960//921 +f 214//918 960//921 1632//471 738//480 +f 214//918 738//480 1630//479 956//913 +f 214//918 956//913 1748//912 959//919 +f 215//922 957//915 1631//467 731//466 +f 215//922 731//466 1684//459 961//923 +f 215//922 961//923 1741//924 962//925 +f 215//922 962//925 1745//916 957//915 +f 216//926 963//927 1742//928 964//929 +f 216//926 964//929 1685//463 734//472 +f 216//926 734//472 1632//471 960//921 +f 216//926 960//921 1746//920 963//927 +f 217//930 961//923 1684//459 727//458 +f 217//930 727//458 1633//449 965//931 +f 217//930 965//931 1743//932 966//933 +f 217//930 966//933 1741//924 961//923 +f 218//934 967//935 1744//936 968//937 +f 218//934 968//937 1634//453 730//464 +f 218//934 730//464 1685//463 964//929 +f 218//934 964//929 1742//928 967//935 +f 219//938 965//931 1633//449 722//448 +f 219//938 722//448 1615//447 929//859 +f 219//938 929//859 1761//861 969//939 +f 219//938 969//939 1743//932 965//931 +f 220//940 970//941 1762//865 932//864 +f 220//940 932//864 1616//455 725//454 +f 220//940 725//454 1634//453 968//937 +f 220//940 968//937 1744//936 970//941 +f 221//942 971//943 1743//932 969//939 +f 221//942 969//939 1761//861 972//944 +f 221//942 972//944 1763//945 973//946 +f 221//942 973//946 1781//947 971//943 +f 222//948 974//949 1764//950 975//951 +f 222//948 975//951 1762//865 970//941 +f 222//948 970//941 1744//936 976//952 +f 222//948 976//952 1782//953 974//949 +f 223//954 977//955 1741//924 966//933 +f 223//954 966//933 1743//932 971//943 +f 223//954 971//943 1781//947 978//956 +f 223//954 978//956 1783//957 977//955 +f 224//958 979//959 1782//953 976//952 +f 224//958 976//952 1744//936 967//935 +f 224//958 967//935 1742//928 980//960 +f 224//958 980//960 1784//961 979//959 +f 225//962 981//963 1745//916 962//925 +f 225//962 962//925 1741//924 977//955 +f 225//962 977//955 1783//957 982//964 +f 225//962 982//964 1779//965 981//963 +f 226//966 983//967 1784//961 980//960 +f 226//966 980//960 1742//928 963//927 +f 226//966 963//927 1746//920 984//968 +f 226//966 984//968 1780//969 983//967 +f 227//970 985//971 1747//908 958//917 +f 227//970 958//917 1745//916 981//963 +f 227//970 981//963 1779//965 986//972 +f 227//970 986//972 1777//973 985//971 +f 228//974 987//975 1780//969 984//968 +f 228//974 984//968 1746//920 959//919 +f 228//974 959//919 1748//912 988//976 +f 228//974 988//976 1778//977 987//975 +f 229//978 989//979 1749//900 954//909 +f 229//978 954//909 1747//908 985//971 +f 229//978 985//971 1777//973 990//980 +f 229//978 990//980 1775//981 989//979 +f 230//982 991//983 1778//977 988//976 +f 230//982 988//976 1748//912 955//911 +f 230//982 955//911 1750//904 992//984 +f 230//982 992//984 1776//985 991//983 +f 231//986 993//987 1751//892 950//901 +f 231//986 950//901 1749//900 989//979 +f 231//986 989//979 1775//981 994//988 +f 231//986 994//988 1773//989 993//987 +f 232//990 995//991 1776//985 992//984 +f 232//990 992//984 1750//904 951//903 +f 232//990 951//903 1752//896 996//992 +f 232//990 996//992 1774//993 995//991 +f 233//994 997//995 1753//884 946//893 +f 233//994 946//893 1751//892 993//987 +f 233//994 993//987 1773//989 998//996 +f 233//994 998//996 1771//997 997//995 +f 234//998 999//999 1774//993 996//992 +f 234//998 996//992 1752//896 947//895 +f 234//998 947//895 1754//888 1000//1000 +f 234//998 1000//1000 1772//1001 999//999 +f 235//1002 1001//1003 1755//876 942//885 +f 235//1002 942//885 1753//884 997//995 +f 235//1002 997//995 1771//997 1002//1004 +f 235//1002 1002//1004 1769//1005 1001//1003 +f 236//1006 1003//1007 1772//1001 1000//1000 +f 236//1006 1000//1000 1754//888 943//887 +f 236//1006 943//887 1756//880 1004//1008 +f 236//1006 1004//1008 1770//1009 1003//1007 +f 237//1010 1005//1011 1757//868 938//877 +f 237//1010 938//877 1755//876 1001//1003 +f 237//1010 1001//1003 1769//1005 1006//1012 +f 237//1010 1006//1012 1767//1013 1005//1011 +f 238//1014 1007//1015 1770//1009 1004//1008 +f 238//1014 1004//1008 1756//880 939//879 +f 238//1014 939//879 1758//872 1008//1016 +f 238//1014 1008//1016 1768//1017 1007//1015 +f 239//1018 1009//1019 1739//841 934//869 +f 239//1018 934//869 1757//868 1005//1011 +f 239//1018 1005//1011 1767//1013 1010//1020 +f 239//1018 1010//1020 1785//1021 1009//1019 +f 240//1022 1011//1023 1768//1017 1008//1016 +f 240//1022 1008//1016 1758//872 935//871 +f 240//1022 935//871 1740//846 1012//1024 +f 240//1022 1012//1024 1786//1025 1011//1023 +f 241//1026 972//944 1761//861 930//860 +f 241//1026 930//860 1759//853 1013//1027 +f 241//1026 1013//1027 1765//1028 1014//1029 +f 241//1026 1014//1029 1763//945 972//944 +f 242//1030 1015//1031 1766//1032 1016//1033 +f 242//1030 1016//1033 1760//857 931//863 +f 242//1030 931//863 1762//865 975//951 +f 242//1030 975//951 1764//950 1015//1031 +f 243//1034 1013//1027 1759//853 926//852 +f 243//1034 926//852 1737//843 1017//1035 +f 243//1034 1017//1035 1787//1036 1018//1037 +f 243//1034 1018//1037 1765//1028 1013//1027 +f 244//1038 1019//1039 1788//1040 1020//1041 +f 244//1038 1020//1041 1738//849 927//855 +f 244//1038 927//855 1760//857 1016//1033 +f 244//1038 1016//1033 1766//1032 1019//1039 +f 245//1042 1017//1035 1737//843 921//842 +f 245//1042 921//842 1739//841 1009//1019 +f 245//1042 1009//1019 1785//1021 1021//1043 +f 245//1042 1021//1043 1787//1036 1017//1035 +f 246//1044 1022//1045 1786//1025 1012//1024 +f 246//1044 1012//1024 1740//846 922//845 +f 246//1044 922//845 1738//849 1020//1041 +f 246//1044 1020//1041 1788//1040 1022//1045 +f 247//1046 1023//1047 1572//438 716//437 +f 247//1046 716//437 1613//426 1024//1048 +f 247//1046 1024//1048 1789//1049 1025//1050 +f 247//1046 1025//1050 1578//1051 1023//1047 +f 248//1052 1026//1053 1790//1054 1027//1055 +f 248//1052 1027//1055 1614//434 720//444 +f 248//1052 720//444 1572//438 1023//1047 +f 248//1052 1023//1047 1578//1051 1026//1053 +f 249//1056 1024//1048 1613//426 710//425 +f 249//1056 710//425 1611//414 1028//1057 +f 249//1056 1028//1057 1791//1058 1029//1059 +f 249//1056 1029//1059 1789//1049 1024//1048 +f 250//1060 1030//1061 1792//1062 1031//1063 +f 250//1060 1031//1063 1612//422 715//435 +f 250//1060 715//435 1614//434 1027//1055 +f 250//1060 1027//1055 1790//1054 1030//1061 +f 251//1064 1028//1057 1611//414 704//413 +f 251//1064 704//413 1609//402 1032//1065 +f 251//1064 1032//1065 1793//1066 1033//1067 +f 251//1064 1033//1067 1791//1058 1028//1057 +f 252//1068 1034//1069 1794//1070 1035//1071 +f 252//1068 1035//1071 1610//410 709//423 +f 252//1068 709//423 1612//422 1031//1063 +f 252//1068 1031//1063 1792//1062 1034//1069 +f 253//1072 1032//1065 1609//402 698//401 +f 253//1072 698//401 1607//390 1036//1073 +f 253//1072 1036//1073 1795//1074 1037//1075 +f 253//1072 1037//1075 1793//1066 1032//1065 +f 254//1076 1038//1077 1796//1078 1039//1079 +f 254//1076 1039//1079 1608//398 703//411 +f 254//1076 703//411 1610//410 1035//1071 +f 254//1076 1035//1071 1794//1070 1038//1077 +f 255//1080 1036//1073 1607//390 692//389 +f 255//1080 692//389 1605//378 1040//1081 +f 255//1080 1040//1081 1797//1082 1041//1083 +f 255//1080 1041//1083 1795//1074 1036//1073 +f 256//1084 1042//1085 1798//1086 1043//1087 +f 256//1084 1043//1087 1606//386 697//399 +f 256//1084 697//399 1608//398 1039//1079 +f 256//1084 1039//1079 1796//1078 1042//1085 +f 257//1088 1040//1081 1605//378 686//377 +f 257//1088 686//377 1603//366 1044//1089 +f 257//1088 1044//1089 1799//1090 1045//1091 +f 257//1088 1045//1091 1797//1082 1040//1081 +f 258//1092 1046//1093 1800//1094 1047//1095 +f 258//1092 1047//1095 1604//374 691//387 +f 258//1092 691//387 1606//386 1043//1087 +f 258//1092 1043//1087 1798//1086 1046//1093 +f 259//1096 1044//1089 1603//366 680//365 +f 259//1096 680//365 1601//354 1048//1097 +f 259//1096 1048//1097 1801//1098 1049//1099 +f 259//1096 1049//1099 1799//1090 1044//1089 +f 260//1100 1050//1101 1802//1102 1051//1103 +f 260//1100 1051//1103 1602//362 685//375 +f 260//1100 685//375 1604//374 1047//1095 +f 260//1100 1047//1095 1800//1094 1050//1101 +f 261//1104 1048//1097 1601//354 674//353 +f 261//1104 674//353 1599//342 1052//1105 +f 261//1104 1052//1105 1803//1106 1053//1107 +f 261//1104 1053//1107 1801//1098 1048//1097 +f 262//1108 1054//1109 1804//1110 1055//1111 +f 262//1108 1055//1111 1600//350 679//363 +f 262//1108 679//363 1602//362 1051//1103 +f 262//1108 1051//1103 1802//1102 1054//1109 +f 263//1112 1052//1105 1599//342 668//341 +f 263//1112 668//341 1597//326 1056//1113 +f 263//1112 1056//1113 1805//1114 1057//1115 +f 263//1112 1057//1115 1803//1106 1052//1105 +f 264//1116 1058//1117 1806//1118 1059//1119 +f 264//1116 1059//1119 1598//335 673//351 +f 264//1116 673//351 1600//350 1055//1111 +f 264//1116 1055//1111 1804//1110 1058//1117 +f 265//1120 1060//1121 1813//1122 1061//1123 +f 265//1120 1061//1123 1814//1124 1062//1125 +f 265//1120 1062//1125 1833//1126 1063//1127 +f 265//1120 1063//1127 1843//1128 1060//1121 +f 266//1129 1064//1130 1834//1131 1065//1132 +f 266//1129 1065//1132 1814//1124 1061//1123 +f 266//1129 1061//1123 1813//1122 1066//1133 +f 266//1129 1066//1133 1844//1134 1064//1130 +f 267//1135 1067//1136 1812//1137 1068//1138 +f 267//1135 1068//1138 1813//1122 1060//1121 +f 267//1135 1060//1121 1843//1128 1069//1139 +f 267//1135 1069//1139 1841//1140 1067//1136 +f 268//1141 1070//1142 1844//1134 1066//1133 +f 268//1141 1066//1133 1813//1122 1068//1138 +f 268//1141 1068//1138 1812//1137 1071//1143 +f 268//1141 1071//1143 1842//1144 1070//1142 +f 269//1145 1072//1146 1811//1147 1073//1148 +f 269//1145 1073//1148 1812//1137 1067//1136 +f 269//1145 1067//1136 1841//1140 1074//1149 +f 269//1145 1074//1149 1845//1150 1072//1146 +f 270//1151 1075//1152 1842//1144 1071//1143 +f 270//1151 1071//1143 1812//1137 1073//1148 +f 270//1151 1073//1148 1811//1147 1076//1153 +f 270//1151 1076//1153 1846//1154 1075//1152 +f 271//1155 1077//1156 1594//261 629//260 +f 271//1155 629//260 1596//267 1078//1157 +f 271//1155 1078//1157 1811//1147 1072//1146 +f 271//1155 1072//1146 1845//1150 1077//1156 +f 272//1158 1076//1153 1811//1147 1078//1157 +f 272//1158 1078//1157 1596//267 635//273 +f 272//1158 635//273 1595//272 1079//1159 +f 272//1158 1079//1159 1846//1154 1076//1153 +f 273//1160 1080//1161 1592//276 636//275 +f 273//1160 636//275 1594//261 1077//1156 +f 273//1160 1077//1156 1845//1150 1081//1162 +f 273//1160 1081//1162 1839//1163 1080//1161 +f 274//1164 1082//1165 1846//1154 1079//1159 +f 274//1164 1079//1159 1595//272 641//285 +f 274//1164 641//285 1593//284 1083//1166 +f 274//1164 1083//1166 1840//1167 1082//1165 +f 275//1168 1084//1169 1590//288 642//287 +f 275//1168 642//287 1592//276 1080//1161 +f 275//1168 1080//1161 1839//1163 1085//1170 +f 275//1168 1085//1170 1835//1171 1084//1169 +f 276//1172 1086//1173 1840//1167 1083//1166 +f 276//1172 1083//1166 1593//284 647//297 +f 276//1172 647//297 1591//296 1087//1174 +f 276//1172 1087//1174 1836//1175 1086//1173 +f 277//1176 1088//1177 1588//300 648//299 +f 277//1176 648//299 1590//288 1084//1169 +f 277//1176 1084//1169 1835//1171 1089//1178 +f 277//1176 1089//1178 1837//1179 1088//1177 +f 278//1180 1090//1181 1836//1175 1087//1174 +f 278//1180 1087//1174 1591//296 653//309 +f 278//1180 653//309 1589//308 1091//1182 +f 278//1180 1091//1182 1838//1183 1090//1181 +f 279//1184 1089//1178 1835//1171 1092//1185 +f 279//1184 1092//1185 1841//1140 1069//1139 +f 279//1184 1069//1139 1843//1128 1093//1186 +f 279//1184 1093//1186 1837//1179 1089//1178 +f 280//1187 1094//1188 1844//1134 1070//1142 +f 280//1187 1070//1142 1842//1144 1095//1189 +f 280//1187 1095//1189 1836//1175 1090//1181 +f 280//1187 1090//1181 1838//1183 1094//1188 +f 281//1190 1092//1185 1835//1171 1085//1170 +f 281//1190 1085//1170 1839//1163 1081//1162 +f 281//1190 1081//1162 1845//1150 1074//1149 +f 281//1190 1074//1149 1841//1140 1092//1185 +f 282//1191 1075//1152 1846//1154 1082//1165 +f 282//1191 1082//1165 1840//1167 1086//1173 +f 282//1191 1086//1173 1836//1175 1095//1189 +f 282//1191 1095//1189 1842//1144 1075//1152 +f 283//1192 1096//1193 1831//1194 1097//1195 +f 283//1192 1097//1195 1837//1179 1093//1186 +f 283//1192 1093//1186 1843//1128 1063//1127 +f 283//1192 1063//1127 1833//1126 1096//1193 +f 284//1196 1064//1130 1844//1134 1094//1188 +f 284//1196 1094//1188 1838//1183 1098//1197 +f 284//1196 1098//1197 1832//1198 1099//1199 +f 284//1196 1099//1199 1834//1131 1064//1130 +f 285//1200 1100//1201 1586//312 654//311 +f 285//1200 654//311 1588//300 1088//1177 +f 285//1200 1088//1177 1837//1179 1097//1195 +f 285//1200 1097//1195 1831//1194 1100//1201 +f 286//1202 1098//1197 1838//1183 1091//1182 +f 286//1202 1091//1182 1589//308 659//321 +f 286//1202 659//321 1587//320 1101//1203 +f 286//1202 1101//1203 1832//1198 1098//1197 +f 287//1204 878//756 1714//749 1102//1205 +f 287//1204 1102//1205 1847//1206 1103//1207 +f 287//1204 1103//1207 1849//1208 1104//1209 +f 287//1204 1104//1209 1720//757 878//756 +f 288//1210 1105//1211 1850//1212 1106//1213 +f 288//1210 1106//1213 1848//1214 1107//1215 +f 288//1210 1107//1215 1715//753 881//762 +f 288//1210 881//762 1721//761 1105//1211 +f 289//1216 874//748 1586//312 1100//1201 +f 289//1216 1100//1201 1831//1194 1108//1217 +f 289//1216 1108//1217 1847//1206 1102//1205 +f 289//1216 1102//1205 1714//749 874//748 +f 290//1218 1107//1215 1848//1214 1109//1219 +f 290//1218 1109//1219 1832//1198 1101//1203 +f 290//1218 1101//1203 1587//320 877//754 +f 290//1218 877//754 1715//753 1107//1215 +f 291//1220 1110//1221 1584//324 882//764 +f 291//1220 882//764 1720//757 1104//1209 +f 291//1220 1104//1209 1849//1208 1111//1222 +f 291//1220 1111//1222 1851//1223 1110//1221 +f 292//1224 1112//1225 1850//1212 1105//1211 +f 292//1224 1105//1211 1721//761 883//766 +f 292//1224 883//766 1585//337 1113//1226 +f 292//1224 1113//1226 1852//1227 1112//1225 +f 293//1228 661//325 1584//324 1110//1221 +f 293//1228 1110//1221 1851//1223 1114//1229 +f 293//1228 1114//1229 1805//1114 1056//1113 +f 293//1228 1056//1113 1597//326 661//325 +f 294//1230 1059//1119 1806//1118 1115//1231 +f 294//1230 1115//1231 1852//1227 1113//1226 +f 294//1230 1113//1226 1585//337 666//336 +f 294//1230 666//336 1598//335 1059//1119 +f 295//1232 1116//1233 1582//1234 1117//1235 +f 295//1232 1117//1235 1829//1236 1118//1237 +f 295//1232 1118//1237 1857//1238 1119//1239 +f 295//1232 1119//1239 1809//1240 1116//1233 +f 296//1241 1120//1242 1858//1243 1121//1244 +f 296//1241 1121//1244 1830//1245 1122//1246 +f 296//1241 1122//1246 1582//1234 1116//1233 +f 296//1241 1116//1233 1809//1240 1120//1242 +f 297//1247 1123//1248 1809//1240 1119//1239 +f 297//1247 1119//1239 1857//1238 1124//1249 +f 297//1247 1124//1249 1855//1250 1125//1251 +f 297//1247 1125//1251 1583//1252 1123//1248 +f 298//1253 1126//1254 1856//1255 1127//1256 +f 298//1253 1127//1256 1858//1243 1120//1242 +f 298//1253 1120//1242 1809//1240 1123//1248 +f 298//1253 1123//1248 1583//1252 1126//1254 +f 299//1257 1128//1258 1583//1252 1125//1251 +f 299//1257 1125//1251 1855//1250 1129//1259 +f 299//1257 1129//1259 1853//1260 1130//1261 +f 299//1257 1130//1261 1810//1262 1128//1258 +f 300//1263 1131//1264 1854//1265 1132//1266 +f 300//1263 1132//1266 1856//1255 1126//1254 +f 300//1263 1126//1254 1583//1252 1128//1258 +f 300//1263 1128//1258 1810//1262 1131//1264 +f 301//1267 1133//1268 1810//1262 1130//1261 +f 301//1267 1130//1261 1853//1260 1134//1269 +f 301//1267 1134//1269 1833//1126 1062//1125 +f 301//1267 1062//1125 1814//1124 1133//1268 +f 302//1270 1065//1132 1834//1131 1135//1271 +f 302//1270 1135//1271 1854//1265 1131//1264 +f 302//1270 1131//1264 1810//1262 1133//1268 +f 302//1270 1133//1268 1814//1124 1065//1132 +f 303//1272 1108//1217 1831//1194 1096//1193 +f 303//1272 1096//1193 1833//1126 1134//1269 +f 303//1272 1134//1269 1853//1260 1136//1273 +f 303//1272 1136//1273 1847//1206 1108//1217 +f 304//1274 1137//1275 1854//1265 1135//1271 +f 304//1274 1135//1271 1834//1131 1099//1199 +f 304//1274 1099//1199 1832//1198 1109//1219 +f 304//1274 1109//1219 1848//1214 1137//1275 +f 305//1276 1138//1277 1801//1098 1053//1107 +f 305//1276 1053//1107 1803//1106 1139//1278 +f 305//1276 1139//1278 1823//1279 1140//1280 +f 305//1276 1140//1280 1815//1281 1138//1277 +f 306//1282 1141//1283 1824//1284 1142//1285 +f 306//1282 1142//1285 1804//1110 1054//1109 +f 306//1282 1054//1109 1802//1102 1143//1286 +f 306//1282 1143//1286 1816//1287 1141//1283 +f 307//1288 1144//1289 1581//1290 1145//1291 +f 307//1288 1145//1291 1821//1292 1146//1293 +f 307//1288 1146//1293 1829//1236 1117//1235 +f 307//1288 1117//1235 1582//1234 1144//1289 +f 308//1294 1122//1246 1830//1245 1147//1295 +f 308//1294 1147//1295 1822//1296 1148//1297 +f 308//1294 1148//1297 1581//1290 1144//1289 +f 308//1294 1144//1289 1582//1234 1122//1246 +f 309//1298 1149//1299 1807//1300 1150//1301 +f 309//1298 1150//1301 1863//1302 1151//1303 +f 309//1298 1151//1303 1861//1304 1152//1305 +f 309//1298 1152//1305 1808//1306 1149//1299 +f 310//1307 1153//1308 1862//1309 1154//1310 +f 310//1307 1154//1310 1864//1311 1155//1312 +f 310//1307 1155//1312 1807//1300 1149//1299 +f 310//1307 1149//1299 1808//1306 1153//1308 +f 311//1313 1156//1314 1808//1306 1152//1305 +f 311//1313 1152//1305 1861//1304 1157//1315 +f 311//1313 1157//1315 1859//1316 1158//1317 +f 311//1313 1158//1317 1580//1318 1156//1314 +f 312//1319 1159//1320 1860//1321 1160//1322 +f 312//1319 1160//1322 1862//1309 1153//1308 +f 312//1319 1153//1308 1808//1306 1156//1314 +f 312//1319 1156//1314 1580//1318 1159//1320 +f 313//1323 1161//1324 1580//1318 1158//1317 +f 313//1323 1158//1317 1859//1316 1162//1325 +f 313//1323 1162//1325 1821//1292 1145//1291 +f 313//1323 1145//1291 1581//1290 1161//1324 +f 314//1326 1148//1297 1822//1296 1163//1327 +f 314//1326 1163//1327 1860//1321 1159//1320 +f 314//1326 1159//1320 1580//1318 1161//1324 +f 314//1326 1161//1324 1581//1290 1148//1297 +f 315//1328 1164//1329 1797//1082 1045//1091 +f 315//1328 1045//1091 1799//1090 1165//1330 +f 315//1328 1165//1330 1867//1331 1166//1332 +f 315//1328 1166//1332 1869//1333 1164//1329 +f 316//1334 1167//1335 1868//1336 1168//1337 +f 316//1334 1168//1337 1800//1094 1046//1093 +f 316//1334 1046//1093 1798//1086 1169//1338 +f 316//1334 1169//1338 1870//1339 1167//1335 +f 317//1340 1170//1341 1869//1333 1166//1332 +f 317//1340 1166//1332 1867//1331 1171//1342 +f 317//1340 1171//1342 1873//1343 1172//1344 +f 317//1340 1172//1344 1871//1345 1170//1341 +f 318//1346 1173//1347 1874//1348 1174//1349 +f 318//1346 1174//1349 1868//1336 1167//1335 +f 318//1346 1167//1335 1870//1339 1175//1350 +f 318//1346 1175//1350 1872//1351 1173//1347 +f 319//1352 1176//1353 1871//1345 1172//1344 +f 319//1352 1172//1344 1873//1343 1177//1354 +f 319//1352 1177//1354 1875//1355 1178//1356 +f 319//1352 1178//1356 1877//1357 1176//1353 +f 320//1358 1179//1359 1876//1360 1180//1361 +f 320//1358 1180//1361 1874//1348 1173//1347 +f 320//1358 1173//1347 1872//1351 1181//1362 +f 320//1358 1181//1362 1878//1363 1179//1359 +f 321//1364 1182//1365 1877//1357 1178//1356 +f 321//1364 1178//1356 1875//1355 1183//1366 +f 321//1364 1183//1366 1881//1367 1184//1368 +f 321//1364 1184//1368 1879//1369 1182//1365 +f 322//1370 1185//1371 1882//1372 1186//1373 +f 322//1370 1186//1373 1876//1360 1179//1359 +f 322//1370 1179//1359 1878//1363 1187//1374 +f 322//1370 1187//1374 1880//1375 1185//1371 +f 323//1376 1188//1377 1819//1378 1189//1379 +f 323//1376 1189//1379 1883//1380 1190//1381 +f 323//1376 1190//1381 1879//1369 1184//1368 +f 323//1376 1184//1368 1881//1367 1188//1377 +f 324//1382 1185//1371 1880//1375 1191//1383 +f 324//1382 1191//1383 1884//1384 1192//1385 +f 324//1382 1192//1385 1820//1386 1193//1387 +f 324//1382 1193//1387 1882//1372 1185//1371 +f 325//1388 1194//1389 1821//1292 1162//1325 +f 325//1388 1162//1325 1859//1316 1195//1390 +f 325//1388 1195//1390 1879//1369 1190//1381 +f 325//1388 1190//1381 1883//1380 1194//1389 +f 326//1391 1191//1383 1880//1375 1196//1392 +f 326//1391 1196//1392 1860//1321 1163//1327 +f 326//1391 1163//1327 1822//1296 1197//1393 +f 326//1391 1197//1393 1884//1384 1191//1383 +f 327//1394 1195//1390 1859//1316 1157//1315 +f 327//1394 1157//1315 1861//1304 1198//1395 +f 327//1394 1198//1395 1877//1357 1182//1365 +f 327//1394 1182//1365 1879//1369 1195//1390 +f 328//1396 1187//1374 1878//1363 1199//1397 +f 328//1396 1199//1397 1862//1309 1160//1322 +f 328//1396 1160//1322 1860//1321 1196//1392 +f 328//1396 1196//1392 1880//1375 1187//1374 +f 329//1398 1198//1395 1861//1304 1151//1303 +f 329//1398 1151//1303 1863//1302 1200//1399 +f 329//1398 1200//1399 1871//1345 1176//1353 +f 329//1398 1176//1353 1877//1357 1198//1395 +f 330//1400 1181//1362 1872//1351 1201//1401 +f 330//1400 1201//1401 1864//1311 1154//1310 +f 330//1400 1154//1310 1862//1309 1199//1397 +f 330//1400 1199//1397 1878//1363 1181//1362 +f 331//1402 1200//1399 1863//1302 1202//1403 +f 331//1402 1202//1403 1865//1404 1203//1405 +f 331//1402 1203//1405 1869//1333 1170//1341 +f 331//1402 1170//1341 1871//1345 1200//1399 +f 332//1406 1175//1350 1870//1339 1204//1407 +f 332//1406 1204//1407 1866//1408 1205//1409 +f 332//1406 1205//1409 1864//1311 1201//1401 +f 332//1406 1201//1401 1872//1351 1175//1350 +f 333//1410 1206//1411 1795//1074 1041//1083 +f 333//1410 1041//1083 1797//1082 1164//1329 +f 333//1410 1164//1329 1869//1333 1203//1405 +f 333//1410 1203//1405 1865//1404 1206//1411 +f 334//1412 1204//1407 1870//1339 1169//1338 +f 334//1412 1169//1338 1798//1086 1042//1085 +f 334//1412 1042//1085 1796//1078 1207//1413 +f 334//1412 1207//1413 1866//1408 1204//1407 +f 335//1414 1208//1415 1579//1416 1209//1417 +f 335//1414 1209//1417 1865//1404 1202//1403 +f 335//1414 1202//1403 1863//1302 1150//1301 +f 335//1414 1150//1301 1807//1300 1208//1415 +f 336//1418 1155//1312 1864//1311 1205//1409 +f 336//1418 1205//1409 1866//1408 1210//1419 +f 336//1418 1210//1419 1579//1416 1208//1415 +f 336//1418 1208//1415 1807//1300 1155//1312 +f 337//1420 1211//1421 1789//1049 1029//1059 +f 337//1420 1029//1059 1791//1058 1033//1067 +f 337//1420 1033//1067 1793//1066 1037//1075 +f 337//1420 1037//1075 1795//1074 1211//1421 +f 338//1422 1038//1077 1794//1070 1034//1069 +f 338//1422 1034//1069 1792//1062 1030//1061 +f 338//1422 1030//1061 1790//1054 1212//1423 +f 338//1422 1212//1423 1796//1078 1038//1077 +f 339//1424 1213//1425 1789//1049 1211//1421 +f 339//1424 1211//1421 1795//1074 1206//1411 +f 339//1424 1206//1411 1865//1404 1209//1417 +f 339//1424 1209//1417 1579//1416 1213//1425 +f 340//1426 1210//1419 1866//1408 1207//1413 +f 340//1426 1207//1413 1796//1078 1212//1423 +f 340//1426 1212//1423 1790//1054 1214//1427 +f 340//1426 1214//1427 1579//1416 1210//1419 +f 341//1428 1215//1429 1578//1051 1025//1050 +f 341//1428 1025//1050 1789//1049 1213//1425 +f 341//1428 1213//1425 1579//1416 1215//1429 +f 342//1430 1215//1429 1579//1416 1214//1427 +f 342//1430 1214//1427 1790//1054 1026//1053 +f 342//1430 1026//1053 1578//1051 1215//1429 +f 343//1431 1165//1330 1799//1090 1049//1099 +f 343//1431 1049//1099 1801//1098 1138//1277 +f 343//1431 1138//1277 1815//1281 1216//1432 +f 343//1431 1216//1432 1867//1331 1165//1330 +f 344//1433 1217//1434 1816//1287 1143//1286 +f 344//1433 1143//1286 1802//1102 1050//1101 +f 344//1433 1050//1101 1800//1094 1168//1337 +f 344//1433 1168//1337 1868//1336 1217//1434 +f 345//1435 1216//1432 1815//1281 1218//1436 +f 345//1435 1218//1436 1817//1437 1219//1438 +f 345//1435 1219//1438 1873//1343 1171//1342 +f 345//1435 1171//1342 1867//1331 1216//1432 +f 346//1439 1174//1349 1874//1348 1220//1440 +f 346//1439 1220//1440 1818//1441 1221//1442 +f 346//1439 1221//1442 1816//1287 1217//1434 +f 346//1439 1217//1434 1868//1336 1174//1349 +f 347//1443 1219//1438 1817//1437 1222//1444 +f 347//1443 1222//1444 1887//1445 1223//1446 +f 347//1443 1223//1446 1875//1355 1177//1354 +f 347//1443 1177//1354 1873//1343 1219//1438 +f 348//1447 1180//1361 1876//1360 1224//1448 +f 348//1447 1224//1448 1888//1449 1225//1450 +f 348//1447 1225//1450 1818//1441 1220//1440 +f 348//1447 1220//1440 1874//1348 1180//1361 +f 349//1451 1226//1452 1819//1378 1188//1377 +f 349//1451 1188//1377 1881//1367 1183//1366 +f 349//1451 1183//1366 1875//1355 1223//1446 +f 349//1451 1223//1446 1887//1445 1226//1452 +f 350//1453 1224//1448 1876//1360 1186//1373 +f 350//1453 1186//1373 1882//1372 1193//1387 +f 350//1453 1193//1387 1820//1386 1227//1454 +f 350//1453 1227//1454 1888//1449 1224//1448 +f 351//1455 1228//1456 1853//1260 1129//1259 +f 351//1455 1129//1259 1855//1250 1229//1457 +f 351//1455 1229//1457 1891//1458 1230//1459 +f 351//1455 1230//1459 1889//1460 1228//1456 +f 352//1461 1231//1462 1892//1463 1232//1464 +f 352//1461 1232//1464 1856//1255 1132//1266 +f 352//1461 1132//1266 1854//1265 1233//1465 +f 352//1461 1233//1465 1890//1466 1231//1462 +f 353//1467 1234//1468 1823//1279 1235//1469 +f 353//1467 1235//1469 1889//1460 1230//1459 +f 353//1467 1230//1459 1891//1458 1236//1470 +f 353//1467 1236//1470 1825//1471 1234//1468 +f 354//1472 1237//1473 1892//1463 1231//1462 +f 354//1472 1231//1462 1890//1466 1238//1474 +f 354//1472 1238//1474 1824//1284 1239//1475 +f 354//1472 1239//1475 1826//1476 1237//1473 +f 355//1477 1139//1278 1803//1106 1057//1115 +f 355//1477 1057//1115 1805//1114 1240//1478 +f 355//1477 1240//1478 1889//1460 1235//1469 +f 355//1477 1235//1469 1823//1279 1139//1278 +f 356//1479 1238//1474 1890//1466 1241//1480 +f 356//1479 1241//1480 1806//1118 1058//1117 +f 356//1479 1058//1117 1804//1110 1142//1285 +f 356//1479 1142//1285 1824//1284 1238//1474 +f 357//1481 1240//1478 1805//1114 1242//1482 +f 357//1481 1242//1482 1849//1208 1103//1207 +f 357//1481 1103//1207 1847//1206 1243//1483 +f 357//1481 1243//1483 1889//1460 1240//1478 +f 358//1484 1244//1485 1848//1214 1106//1213 +f 358//1484 1106//1213 1850//1212 1245//1486 +f 358//1484 1245//1486 1806//1118 1241//1480 +f 358//1484 1241//1480 1890//1466 1244//1485 +f 359//1487 1243//1483 1847//1206 1136//1273 +f 359//1487 1136//1273 1853//1260 1228//1456 +f 359//1487 1228//1456 1889//1460 1243//1483 +f 360//1488 1244//1485 1890//1466 1233//1465 +f 360//1488 1233//1465 1854//1265 1137//1275 +f 360//1488 1137//1275 1848//1214 1244//1485 +f 361//1489 1242//1482 1805//1114 1114//1229 +f 361//1489 1114//1229 1851//1223 1111//1222 +f 361//1489 1111//1222 1849//1208 1242//1482 +f 362//1490 1245//1486 1850//1212 1112//1225 +f 362//1490 1112//1225 1852//1227 1115//1231 +f 362//1490 1115//1231 1806//1118 1245//1486 +f 363//1491 1189//1379 1819//1378 1246//1492 +f 363//1491 1246//1492 1827//1493 1247//1494 +f 363//1491 1247//1494 1885//1495 1248//1496 +f 363//1491 1248//1496 1883//1380 1189//1379 +f 364//1497 1249//1498 1886//1499 1250//1500 +f 364//1497 1250//1500 1828//1501 1251//1502 +f 364//1497 1251//1502 1820//1386 1192//1385 +f 364//1497 1192//1385 1884//1384 1249//1498 +f 365//1503 1146//1293 1821//1292 1194//1389 +f 365//1503 1194//1389 1883//1380 1248//1496 +f 365//1503 1248//1496 1885//1495 1252//1504 +f 365//1503 1252//1504 1829//1236 1146//1293 +f 366//1505 1253//1506 1886//1499 1249//1498 +f 366//1505 1249//1498 1884//1384 1197//1393 +f 366//1505 1197//1393 1822//1296 1147//1295 +f 366//1505 1147//1295 1830//1245 1253//1506 +f 367//1507 1254//1508 1825//1471 1236//1470 +f 367//1507 1236//1470 1891//1458 1255//1509 +f 367//1507 1255//1509 1885//1495 1247//1494 +f 367//1507 1247//1494 1827//1493 1254//1508 +f 368//1510 1250//1500 1886//1499 1256//1511 +f 368//1510 1256//1511 1892//1463 1237//1473 +f 368//1510 1237//1473 1826//1476 1257//1512 +f 368//1510 1257//1512 1828//1501 1250//1500 +f 369//1513 1229//1457 1855//1250 1124//1249 +f 369//1513 1124//1249 1857//1238 1258//1514 +f 369//1513 1258//1514 1885//1495 1255//1509 +f 369//1513 1255//1509 1891//1458 1229//1457 +f 370//1515 1256//1511 1886//1499 1259//1516 +f 370//1515 1259//1516 1858//1243 1127//1256 +f 370//1515 1127//1256 1856//1255 1232//1464 +f 370//1515 1232//1464 1892//1463 1256//1511 +f 371//1517 1118//1237 1829//1236 1252//1504 +f 371//1517 1252//1504 1885//1495 1258//1514 +f 371//1517 1258//1514 1857//1238 1118//1237 +f 372//1518 1121//1244 1858//1243 1259//1516 +f 372//1518 1259//1516 1886//1499 1253//1506 +f 372//1518 1253//1506 1830//1245 1121//1244 +f 373//1519 1260//1520 1905//1521 1261//1522 +f 373//1519 1261//1522 1893//1523 1262//1524 +f 373//1519 1262//1524 1919//1525 1263//1526 +f 373//1519 1263//1526 1907//1527 1260//1520 +f 374//1528 1264//1529 1920//1530 1265//1531 +f 374//1528 1265//1531 1894//1532 1266//1533 +f 374//1528 1266//1533 1906//1534 1267//1535 +f 374//1528 1267//1535 1908//1536 1264//1529 +f 375//1537 1268//1538 1905//1521 1260//1520 +f 375//1537 1260//1520 1907//1527 1269//1539 +f 375//1537 1269//1539 1909//1540 1270//1541 +f 375//1537 1270//1541 1903//1542 1268//1538 +f 376//1543 1271//1544 1910//1545 1272//1546 +f 376//1543 1272//1546 1908//1536 1267//1535 +f 376//1543 1267//1535 1906//1534 1273//1547 +f 376//1543 1273//1547 1904//1548 1271//1544 +f 377//1549 1274//1550 1903//1542 1270//1541 +f 377//1549 1270//1541 1909//1540 1275//1551 +f 377//1549 1275//1551 1911//1552 1276//1553 +f 377//1549 1276//1553 1901//1554 1274//1550 +f 378//1555 1277//1556 1912//1557 1278//1558 +f 378//1555 1278//1558 1910//1545 1271//1544 +f 378//1555 1271//1544 1904//1548 1279//1559 +f 378//1555 1279//1559 1902//1560 1277//1556 +f 379//1561 1280//1562 1901//1554 1276//1553 +f 379//1561 1276//1553 1911//1552 1281//1563 +f 379//1561 1281//1563 1913//1564 1282//1565 +f 379//1561 1282//1565 1899//1566 1280//1562 +f 380//1567 1283//1568 1914//1569 1284//1570 +f 380//1567 1284//1570 1912//1557 1277//1556 +f 380//1567 1277//1556 1902//1560 1285//1571 +f 380//1567 1285//1571 1900//1572 1283//1568 +f 381//1573 1286//1574 1899//1566 1282//1565 +f 381//1573 1282//1565 1913//1564 1287//1575 +f 381//1573 1287//1575 1915//1576 1288//1577 +f 381//1573 1288//1577 1897//1578 1286//1574 +f 382//1579 1289//1580 1916//1581 1290//1582 +f 382//1579 1290//1582 1914//1569 1283//1568 +f 382//1579 1283//1568 1900//1572 1291//1583 +f 382//1579 1291//1583 1898//1584 1289//1580 +f 383//1585 1292//1586 1897//1578 1288//1577 +f 383//1585 1288//1577 1915//1576 1293//1587 +f 383//1585 1293//1587 1917//1588 1294//1589 +f 383//1585 1294//1589 1895//1590 1292//1586 +f 384//1591 1295//1592 1918//1593 1296//1594 +f 384//1591 1296//1594 1916//1581 1289//1580 +f 384//1591 1289//1580 1898//1584 1297//1595 +f 384//1591 1297//1595 1896//1596 1295//1592 +f 385//1597 1293//1587 1915//1576 1298//1598 +f 385//1597 1298//1598 1925//1599 1299//1600 +f 385//1597 1299//1600 1923//1601 1300//1602 +f 385//1597 1300//1602 1917//1588 1293//1587 +f 386//1603 1301//1604 1924//1605 1302//1606 +f 386//1603 1302//1606 1926//1607 1303//1608 +f 386//1603 1303//1608 1916//1581 1296//1594 +f 386//1603 1296//1594 1918//1593 1301//1604 +f 387//1609 1287//1575 1913//1564 1304//1610 +f 387//1609 1304//1610 1927//1611 1305//1612 +f 387//1609 1305//1612 1925//1599 1298//1598 +f 387//1609 1298//1598 1915//1576 1287//1575 +f 388//1613 1303//1608 1926//1607 1306//1614 +f 388//1613 1306//1614 1928//1615 1307//1616 +f 388//1613 1307//1616 1914//1569 1290//1582 +f 388//1613 1290//1582 1916//1581 1303//1608 +f 389//1617 1281//1563 1911//1552 1308//1618 +f 389//1617 1308//1618 1929//1619 1309//1620 +f 389//1617 1309//1620 1927//1611 1304//1610 +f 389//1617 1304//1610 1913//1564 1281//1563 +f 390//1621 1307//1616 1928//1615 1310//1622 +f 390//1621 1310//1622 1930//1623 1311//1624 +f 390//1621 1311//1624 1912//1557 1284//1570 +f 390//1621 1284//1570 1914//1569 1307//1616 +f 391//1625 1275//1551 1909//1540 1312//1626 +f 391//1625 1312//1626 1931//1627 1313//1628 +f 391//1625 1313//1628 1929//1619 1308//1618 +f 391//1625 1308//1618 1911//1552 1275//1551 +f 392//1629 1311//1624 1930//1623 1314//1630 +f 392//1629 1314//1630 1932//1631 1315//1632 +f 392//1629 1315//1632 1910//1545 1278//1558 +f 392//1629 1278//1558 1912//1557 1311//1624 +f 393//1633 1269//1539 1907//1527 1316//1634 +f 393//1633 1316//1634 1933//1635 1317//1636 +f 393//1633 1317//1636 1931//1627 1312//1626 +f 393//1633 1312//1626 1909//1540 1269//1539 +f 394//1637 1315//1632 1932//1631 1318//1638 +f 394//1637 1318//1638 1934//1639 1319//1640 +f 394//1637 1319//1640 1908//1536 1272//1546 +f 394//1637 1272//1546 1910//1545 1315//1632 +f 395//1641 1316//1634 1907//1527 1263//1526 +f 395//1641 1263//1526 1919//1525 1320//1642 +f 395//1641 1320//1642 1921//1643 1321//1644 +f 395//1641 1321//1644 1933//1635 1316//1634 +f 396//1645 1322//1646 1922//1647 1323//1648 +f 396//1645 1323//1648 1920//1530 1264//1529 +f 396//1645 1264//1529 1908//1536 1319//1640 +f 396//1645 1319//1640 1934//1639 1322//1646 +f 397//1649 1324//1650 1823//1279 1234//1468 +f 397//1649 1234//1468 1825//1471 1325//1651 +f 397//1649 1325//1651 1949//1652 1326//1653 +f 397//1649 1326//1653 1947//1654 1324//1650 +f 398//1655 1327//1656 1950//1657 1328//1658 +f 398//1655 1328//1658 1826//1476 1239//1475 +f 398//1655 1239//1475 1824//1284 1329//1659 +f 398//1655 1329//1659 1948//1660 1327//1656 +f 399//1661 1325//1651 1825//1471 1330//1662 +f 399//1661 1330//1662 1895//1590 1294//1589 +f 399//1661 1294//1589 1917//1588 1331//1663 +f 399//1661 1331//1663 1949//1652 1325//1651 +f 400//1664 1332//1665 1918//1593 1295//1592 +f 400//1664 1295//1592 1896//1596 1333//1666 +f 400//1664 1333//1666 1826//1476 1328//1658 +f 400//1664 1328//1658 1950//1657 1332//1665 +f 401//1667 1218//1436 1815//1281 1140//1280 +f 401//1667 1140//1280 1823//1279 1324//1650 +f 401//1667 1324//1650 1947//1654 1334//1668 +f 401//1667 1334//1668 1817//1437 1218//1436 +f 402//1669 1335//1670 1948//1660 1329//1659 +f 402//1669 1329//1659 1824//1284 1141//1283 +f 402//1669 1141//1283 1816//1287 1221//1442 +f 402//1669 1221//1442 1818//1441 1335//1670 +f 403//1671 1336//1672 1887//1445 1337//1673 +f 403//1671 1337//1673 1935//1674 1338//1675 +f 403//1671 1338//1675 1919//1525 1262//1524 +f 403//1671 1262//1524 1893//1523 1336//1672 +f 404//1676 1265//1531 1920//1530 1339//1677 +f 404//1676 1339//1677 1936//1678 1340//1679 +f 404//1676 1340//1679 1888//1449 1341//1680 +f 404//1676 1341//1680 1894//1532 1265//1531 +f 405//1681 1331//1663 1917//1588 1300//1602 +f 405//1681 1300//1602 1923//1601 1342//1682 +f 405//1681 1342//1682 1945//1683 1343//1684 +f 405//1681 1343//1684 1949//1652 1331//1663 +f 406//1685 1344//1686 1946//1687 1345//1688 +f 406//1685 1345//1688 1924//1605 1301//1604 +f 406//1685 1301//1604 1918//1593 1332//1665 +f 406//1685 1332//1665 1950//1657 1344//1686 +f 407//1689 1346//1690 1943//1691 1347//1692 +f 407//1689 1347//1692 1951//1693 1348//1694 +f 407//1689 1348//1694 1949//1652 1343//1684 +f 407//1689 1343//1684 1945//1683 1346//1690 +f 408//1695 1344//1686 1950//1657 1349//1696 +f 408//1695 1349//1696 1952//1697 1350//1698 +f 408//1695 1350//1698 1944//1699 1351//1700 +f 408//1695 1351//1700 1946//1687 1344//1686 +f 409//1701 1352//1702 1939//1703 1353//1704 +f 409//1701 1353//1704 1951//1693 1347//1692 +f 409//1701 1347//1692 1943//1691 1354//1705 +f 409//1701 1354//1705 1941//1706 1352//1702 +f 410//1707 1355//1708 1944//1699 1350//1698 +f 410//1707 1350//1698 1952//1697 1356//1709 +f 410//1707 1356//1709 1940//1710 1357//1711 +f 410//1707 1357//1711 1942//1712 1355//1708 +f 411//1713 1358//1714 1937//1715 1359//1716 +f 411//1713 1359//1716 1953//1717 1360//1718 +f 411//1713 1360//1718 1951//1693 1353//1704 +f 411//1713 1353//1704 1939//1703 1358//1714 +f 412//1719 1356//1709 1952//1697 1361//1720 +f 412//1719 1361//1720 1954//1721 1362//1722 +f 412//1719 1362//1722 1938//1723 1363//1724 +f 412//1719 1363//1724 1940//1710 1356//1709 +f 413//1725 1364//1726 1935//1674 1365//1727 +f 413//1725 1365//1727 1953//1717 1359//1716 +f 413//1725 1359//1716 1937//1715 1366//1728 +f 413//1725 1366//1728 1955//1729 1364//1726 +f 414//1730 1367//1731 1938//1723 1362//1722 +f 414//1730 1362//1722 1954//1721 1368//1732 +f 414//1730 1368//1732 1936//1678 1369//1733 +f 414//1730 1369//1733 1956//1734 1367//1731 +f 415//1735 1320//1642 1919//1525 1338//1675 +f 415//1735 1338//1675 1935//1674 1364//1726 +f 415//1735 1364//1726 1955//1729 1370//1736 +f 415//1735 1370//1736 1921//1643 1320//1642 +f 416//1737 1371//1738 1956//1734 1369//1733 +f 416//1737 1369//1733 1936//1678 1339//1677 +f 416//1737 1339//1677 1920//1530 1323//1648 +f 416//1737 1323//1648 1922//1647 1371//1738 +f 417//1739 1222//1444 1817//1437 1372//1740 +f 417//1739 1372//1740 1953//1717 1365//1727 +f 417//1739 1365//1727 1935//1674 1337//1673 +f 417//1739 1337//1673 1887//1445 1222//1444 +f 418//1741 1340//1679 1936//1678 1368//1732 +f 418//1741 1368//1732 1954//1721 1373//1742 +f 418//1741 1373//1742 1818//1441 1225//1450 +f 418//1741 1225//1450 1888//1449 1340//1679 +f 419//1743 1372//1740 1817//1437 1334//1668 +f 419//1743 1334//1668 1947//1654 1374//1744 +f 419//1743 1374//1744 1951//1693 1360//1718 +f 419//1743 1360//1718 1953//1717 1372//1740 +f 420//1745 1361//1720 1952//1697 1375//1746 +f 420//1745 1375//1746 1948//1660 1335//1670 +f 420//1745 1335//1670 1818//1441 1373//1742 +f 420//1745 1373//1742 1954//1721 1361//1720 +f 421//1747 1374//1744 1947//1654 1326//1653 +f 421//1747 1326//1653 1949//1652 1348//1694 +f 421//1747 1348//1694 1951//1693 1374//1744 +f 422//1748 1375//1746 1952//1697 1349//1696 +f 422//1748 1349//1696 1950//1657 1327//1656 +f 422//1748 1327//1656 1948//1660 1375//1746 +f 423//1749 1376//1750 1921//1643 1370//1736 +f 423//1749 1370//1736 1955//1729 1377//1751 +f 423//1749 1377//1751 1957//1752 1378//1753 +f 423//1749 1378//1753 1981//1754 1376//1750 +f 424//1755 1379//1756 1958//1757 1380//1758 +f 424//1755 1380//1758 1956//1734 1371//1738 +f 424//1755 1371//1738 1922//1647 1381//1759 +f 424//1755 1381//1759 1982//1760 1379//1756 +f 425//1761 1377//1751 1955//1729 1366//1728 +f 425//1761 1366//1728 1937//1715 1382//1762 +f 425//1761 1382//1762 1967//1763 1383//1764 +f 425//1761 1383//1764 1957//1752 1377//1751 +f 426//1765 1384//1766 1968//1767 1385//1768 +f 426//1765 1385//1768 1938//1723 1367//1731 +f 426//1765 1367//1731 1956//1734 1380//1758 +f 426//1765 1380//1758 1958//1757 1384//1766 +f 427//1769 1382//1762 1937//1715 1358//1714 +f 427//1769 1358//1714 1939//1703 1386//1770 +f 427//1769 1386//1770 1965//1771 1387//1772 +f 427//1769 1387//1772 1967//1763 1382//1762 +f 428//1773 1388//1774 1966//1775 1389//1776 +f 428//1773 1389//1776 1940//1710 1363//1724 +f 428//1773 1363//1724 1938//1723 1385//1768 +f 428//1773 1385//1768 1968//1767 1388//1774 +f 429//1777 1386//1770 1939//1703 1352//1702 +f 429//1777 1352//1702 1941//1706 1390//1778 +f 429//1777 1390//1778 1963//1779 1391//1780 +f 429//1777 1391//1780 1965//1771 1386//1770 +f 430//1781 1392//1782 1964//1783 1393//1784 +f 430//1781 1393//1784 1942//1712 1357//1711 +f 430//1781 1357//1711 1940//1710 1389//1776 +f 430//1781 1389//1776 1966//1775 1392//1782 +f 431//1785 1390//1778 1941//1706 1354//1705 +f 431//1785 1354//1705 1943//1691 1394//1786 +f 431//1785 1394//1786 1961//1787 1395//1788 +f 431//1785 1395//1788 1963//1779 1390//1778 +f 432//1789 1396//1790 1962//1791 1397//1792 +f 432//1789 1397//1792 1944//1699 1355//1708 +f 432//1789 1355//1708 1942//1712 1393//1784 +f 432//1789 1393//1784 1964//1783 1396//1790 +f 433//1793 1394//1786 1943//1691 1346//1690 +f 433//1793 1346//1690 1945//1683 1398//1794 +f 433//1793 1398//1794 1959//1795 1399//1796 +f 433//1793 1399//1796 1961//1787 1394//1786 +f 434//1797 1400//1798 1960//1799 1401//1800 +f 434//1797 1401//1800 1946//1687 1351//1700 +f 434//1797 1351//1700 1944//1699 1397//1792 +f 434//1797 1397//1792 1962//1791 1400//1798 +f 435//1801 1398//1794 1945//1683 1342//1682 +f 435//1801 1342//1682 1923//1601 1402//1802 +f 435//1801 1402//1802 1979//1803 1403//1804 +f 435//1801 1403//1804 1959//1795 1398//1794 +f 436//1805 1404//1806 1980//1807 1405//1808 +f 436//1805 1405//1808 1924//1605 1345//1688 +f 436//1805 1345//1688 1946//1687 1401//1800 +f 436//1805 1401//1800 1960//1799 1404//1806 +f 437//1809 1406//1810 1933//1635 1321//1644 +f 437//1809 1321//1644 1921//1643 1376//1750 +f 437//1809 1376//1750 1981//1754 1407//1811 +f 437//1809 1407//1811 1969//1812 1406//1810 +f 438//1813 1408//1814 1982//1760 1381//1759 +f 438//1813 1381//1759 1922//1647 1322//1646 +f 438//1813 1322//1646 1934//1639 1409//1815 +f 438//1813 1409//1815 1970//1816 1408//1814 +f 439//1817 1410//1818 1931//1627 1317//1636 +f 439//1817 1317//1636 1933//1635 1406//1810 +f 439//1817 1406//1810 1969//1812 1411//1819 +f 439//1817 1411//1819 1971//1820 1410//1818 +f 440//1821 1412//1822 1970//1816 1409//1815 +f 440//1821 1409//1815 1934//1639 1318//1638 +f 440//1821 1318//1638 1932//1631 1413//1823 +f 440//1821 1413//1823 1972//1824 1412//1822 +f 441//1825 1414//1826 1929//1619 1313//1628 +f 441//1825 1313//1628 1931//1627 1410//1818 +f 441//1825 1410//1818 1971//1820 1415//1827 +f 441//1825 1415//1827 1973//1828 1414//1826 +f 442//1829 1416//1830 1972//1824 1413//1823 +f 442//1829 1413//1823 1932//1631 1314//1630 +f 442//1829 1314//1630 1930//1623 1417//1831 +f 442//1829 1417//1831 1974//1832 1416//1830 +f 443//1833 1418//1834 1927//1611 1309//1620 +f 443//1833 1309//1620 1929//1619 1414//1826 +f 443//1833 1414//1826 1973//1828 1419//1835 +f 443//1833 1419//1835 1975//1836 1418//1834 +f 444//1837 1420//1838 1974//1832 1417//1831 +f 444//1837 1417//1831 1930//1623 1310//1622 +f 444//1837 1310//1622 1928//1615 1421//1839 +f 444//1837 1421//1839 1976//1840 1420//1838 +f 445//1841 1422//1842 1925//1599 1305//1612 +f 445//1841 1305//1612 1927//1611 1418//1834 +f 445//1841 1418//1834 1975//1836 1423//1843 +f 445//1841 1423//1843 1977//1844 1422//1842 +f 446//1845 1424//1846 1976//1840 1421//1839 +f 446//1845 1421//1839 1928//1615 1306//1614 +f 446//1845 1306//1614 1926//1607 1425//1847 +f 446//1845 1425//1847 1978//1848 1424//1846 +f 447//1849 1402//1802 1923//1601 1299//1600 +f 447//1849 1299//1600 1925//1599 1422//1842 +f 447//1849 1422//1842 1977//1844 1426//1850 +f 447//1849 1426//1850 1979//1803 1402//1802 +f 448//1851 1427//1852 1978//1848 1425//1847 +f 448//1851 1425//1847 1926//1607 1302//1606 +f 448//1851 1302//1606 1924//1605 1405//1808 +f 448//1851 1405//1808 1980//1807 1427//1852 +f 449//1853 1428//1854 1963//1779 1395//1788 +f 449//1853 1395//1788 1961//1787 1429//1855 +f 449//1853 1429//1855 1985//1856 1430//1857 +f 449//1853 1430//1857 1983//1858 1428//1854 +f 450//1859 1431//1860 1986//1861 1432//1862 +f 450//1859 1432//1862 1962//1791 1396//1790 +f 450//1859 1396//1790 1964//1783 1433//1863 +f 450//1859 1433//1863 1984//1864 1431//1860 +f 451//1865 1434//1866 1983//1858 1430//1857 +f 451//1865 1430//1857 1985//1856 1435//1867 +f 451//1865 1435//1867 1987//1868 1436//1869 +f 451//1865 1436//1869 1989//1870 1434//1866 +f 452//1871 1437//1872 1988//1873 1438//1874 +f 452//1871 1438//1874 1986//1861 1431//1860 +f 452//1871 1431//1860 1984//1864 1439//1875 +f 452//1871 1439//1875 1990//1876 1437//1872 +f 453//1877 1440//1878 1989//1870 1436//1869 +f 453//1877 1436//1869 1987//1868 1441//1879 +f 453//1877 1441//1879 1993//1880 1442//1881 +f 453//1877 1442//1881 1991//1882 1440//1878 +f 454//1883 1443//1884 1994//1885 1444//1886 +f 454//1883 1444//1886 1988//1873 1437//1872 +f 454//1883 1437//1872 1990//1876 1445//1887 +f 454//1883 1445//1887 1992//1888 1443//1884 +f 455//1889 1446//1890 1991//1882 1442//1881 +f 455//1889 1442//1881 1993//1880 1447//1891 +f 455//1889 1447//1891 1995//1892 1448//1893 +f 455//1889 1448//1893 1997//1894 1446//1890 +f 456//1895 1449//1896 1996//1897 1450//1898 +f 456//1895 1450//1898 1994//1885 1443//1884 +f 456//1895 1443//1884 1992//1888 1451//1899 +f 456//1895 1451//1899 1998//1900 1449//1896 +f 457//1901 1452//1902 1969//1812 1407//1811 +f 457//1901 1407//1811 1981//1754 1453//1903 +f 457//1901 1453//1903 1991//1882 1446//1890 +f 457//1901 1446//1890 1997//1894 1452//1902 +f 458//1904 1451//1899 1992//1888 1454//1905 +f 458//1904 1454//1905 1982//1760 1408//1814 +f 458//1904 1408//1814 1970//1816 1455//1906 +f 458//1904 1455//1906 1998//1900 1451//1899 +f 459//1907 1378//1753 1957//1752 1456//1908 +f 459//1907 1456//1908 1989//1870 1440//1878 +f 459//1907 1440//1878 1991//1882 1453//1903 +f 459//1907 1453//1903 1981//1754 1378//1753 +f 460//1909 1454//1905 1992//1888 1445//1887 +f 460//1909 1445//1887 1990//1876 1457//1910 +f 460//1909 1457//1910 1958//1757 1379//1756 +f 460//1909 1379//1756 1982//1760 1454//1905 +f 461//1911 1456//1908 1957//1752 1383//1764 +f 461//1911 1383//1764 1967//1763 1458//1912 +f 461//1911 1458//1912 1983//1858 1434//1866 +f 461//1911 1434//1866 1989//1870 1456//1908 +f 462//1913 1439//1875 1984//1864 1459//1914 +f 462//1913 1459//1914 1968//1767 1384//1766 +f 462//1913 1384//1766 1958//1757 1457//1910 +f 462//1913 1457//1910 1990//1876 1439//1875 +f 463//1915 1391//1780 1963//1779 1428//1854 +f 463//1915 1428//1854 1983//1858 1458//1912 +f 463//1915 1458//1912 1967//1763 1387//1772 +f 463//1915 1387//1772 1965//1771 1391//1780 +f 464//1916 1388//1774 1968//1767 1459//1914 +f 464//1916 1459//1914 1984//1864 1433//1863 +f 464//1916 1433//1863 1964//1783 1392//1782 +f 464//1916 1392//1782 1966//1775 1388//1774 +f 465//1917 1399//1796 1959//1795 1403//1804 +f 465//1917 1403//1804 1979//1803 1460//1918 +f 465//1917 1460//1918 1985//1856 1429//1855 +f 465//1917 1429//1855 1961//1787 1399//1796 +f 466//1919 1432//1862 1986//1861 1461//1920 +f 466//1919 1461//1920 1980//1807 1404//1806 +f 466//1919 1404//1806 1960//1799 1400//1798 +f 466//1919 1400//1798 1962//1791 1432//1862 +f 467//1921 1426//1850 1977//1844 1462//1922 +f 467//1921 1462//1922 1987//1868 1435//1867 +f 467//1921 1435//1867 1985//1856 1460//1918 +f 467//1921 1460//1918 1979//1803 1426//1850 +f 468//1923 1461//1920 1986//1861 1438//1874 +f 468//1923 1438//1874 1988//1873 1463//1924 +f 468//1923 1463//1924 1978//1848 1427//1852 +f 468//1923 1427//1852 1980//1807 1461//1920 +f 469//1925 1423//1843 1975//1836 1464//1926 +f 469//1925 1464//1926 1993//1880 1441//1879 +f 469//1925 1441//1879 1987//1868 1462//1922 +f 469//1925 1462//1922 1977//1844 1423//1843 +f 470//1927 1463//1924 1988//1873 1444//1886 +f 470//1927 1444//1886 1994//1885 1465//1928 +f 470//1927 1465//1928 1976//1840 1424//1846 +f 470//1927 1424//1846 1978//1848 1463//1924 +f 471//1929 1419//1835 1973//1828 1466//1930 +f 471//1929 1466//1930 1995//1892 1447//1891 +f 471//1929 1447//1891 1993//1880 1464//1926 +f 471//1929 1464//1926 1975//1836 1419//1835 +f 472//1931 1465//1928 1994//1885 1450//1898 +f 472//1931 1450//1898 1996//1897 1467//1932 +f 472//1931 1467//1932 1974//1832 1420//1838 +f 472//1931 1420//1838 1976//1840 1465//1928 +f 473//1933 1415//1827 1971//1820 1468//1934 +f 473//1933 1468//1934 1997//1894 1448//1893 +f 473//1933 1448//1893 1995//1892 1466//1930 +f 473//1933 1466//1930 1973//1828 1415//1827 +f 474//1935 1467//1932 1996//1897 1449//1896 +f 474//1935 1449//1896 1998//1900 1469//1936 +f 474//1935 1469//1936 1972//1824 1416//1830 +f 474//1935 1416//1830 1974//1832 1467//1932 +f 475//1937 1411//1819 1969//1812 1452//1902 +f 475//1937 1452//1902 1997//1894 1468//1934 +f 475//1937 1468//1934 1971//1820 1411//1819 +f 476//1938 1412//1822 1972//1824 1469//1936 +f 476//1938 1469//1936 1998//1900 1455//1906 +f 476//1938 1455//1906 1970//1816 1412//1822 +f 477//1939 1470//1940 1897//1578 1292//1586 +f 477//1939 1292//1586 1895//1590 1471//1941 +f 477//1939 1471//1941 2009//1942 1472//1943 +f 477//1939 1472//1943 2007//1944 1470//1940 +f 478//1945 1473//1946 2010//1947 1474//1948 +f 478//1945 1474//1948 1896//1596 1297//1595 +f 478//1945 1297//1595 1898//1584 1475//1949 +f 478//1945 1475//1949 2008//1950 1473//1946 +f 479//1951 1476//1952 1899//1566 1286//1574 +f 479//1951 1286//1574 1897//1578 1470//1940 +f 479//1951 1470//1940 2007//1944 1477//1953 +f 479//1951 1477//1953 2005//1954 1476//1952 +f 480//1955 1478//1956 2008//1950 1475//1949 +f 480//1955 1475//1949 1898//1584 1291//1583 +f 480//1955 1291//1583 1900//1572 1479//1957 +f 480//1955 1479//1957 2006//1958 1478//1956 +f 481//1959 1480//1960 1901//1554 1280//1562 +f 481//1959 1280//1562 1899//1566 1476//1952 +f 481//1959 1476//1952 2005//1954 1481//1961 +f 481//1959 1481//1961 2003//1962 1480//1960 +f 482//1963 1482//1964 2006//1958 1479//1957 +f 482//1963 1479//1957 1900//1572 1285//1571 +f 482//1963 1285//1571 1902//1560 1483//1965 +f 482//1963 1483//1965 2004//1966 1482//1964 +f 483//1967 1484//1968 1903//1542 1274//1550 +f 483//1967 1274//1550 1901//1554 1480//1960 +f 483//1967 1480//1960 2003//1962 1485//1969 +f 483//1967 1485//1969 2001//1970 1484//1968 +f 484//1971 1486//1972 2004//1966 1483//1965 +f 484//1971 1483//1965 1902//1560 1279//1559 +f 484//1971 1279//1559 1904//1548 1487//1973 +f 484//1971 1487//1973 2002//1974 1486//1972 +f 485//1975 1488//1976 1905//1521 1268//1538 +f 485//1975 1268//1538 1903//1542 1484//1968 +f 485//1975 1484//1968 2001//1970 1489//1977 +f 485//1975 1489//1977 1999//1978 1488//1976 +f 486//1979 1490//1980 2002//1974 1487//1973 +f 486//1979 1487//1973 1904//1548 1273//1547 +f 486//1979 1273//1547 1906//1534 1491//1981 +f 486//1979 1491//1981 2000//1982 1490//1980 +f 487//1983 1492//1984 1893//1523 1261//1522 +f 487//1983 1261//1522 1905//1521 1488//1976 +f 487//1983 1488//1976 1999//1978 1493//1985 +f 487//1983 1493//1985 2011//1986 1492//1984 +f 488//1987 1494//1988 2000//1982 1491//1981 +f 488//1987 1491//1981 1906//1534 1266//1533 +f 488//1987 1266//1533 1894//1532 1495//1989 +f 488//1987 1495//1989 2012//1990 1494//1988 +f 489//1991 1493//1985 1999//1978 1496//1992 +f 489//1991 1496//1992 2007//1944 1472//1943 +f 489//1991 1472//1943 2009//1942 1497//1993 +f 489//1991 1497//1993 2011//1986 1493//1985 +f 490//1994 1498//1995 2010//1947 1473//1946 +f 490//1994 1473//1946 2008//1950 1499//1996 +f 490//1994 1499//1996 2000//1982 1494//1988 +f 490//1994 1494//1988 2012//1990 1498//1995 +f 491//1997 1496//1992 1999//1978 1489//1977 +f 491//1997 1489//1977 2001//1970 1500//1998 +f 491//1997 1500//1998 2005//1954 1477//1953 +f 491//1997 1477//1953 2007//1944 1496//1992 +f 492//1999 1478//1956 2006//1958 1501//2000 +f 492//1999 1501//2000 2002//1974 1490//1980 +f 492//1999 1490//1980 2000//1982 1499//1996 +f 492//1999 1499//1996 2008//1950 1478//1956 +f 493//2001 1500//1998 2001//1970 1485//1969 +f 493//2001 1485//1969 2003//1962 1481//1961 +f 493//2001 1481//1961 2005//1954 1500//1998 +f 494//2002 1501//2000 2006//1958 1482//1964 +f 494//2002 1482//1964 2004//1966 1486//1972 +f 494//2002 1486//1972 2002//1974 1501//2000 +f 495//2003 1502//2004 1819//1378 1226//1452 +f 495//2003 1226//1452 1887//1445 1336//1672 +f 495//2003 1336//1672 1893//1523 1492//1984 +f 495//2003 1492//1984 2011//1986 1502//2004 +f 496//2005 1495//1989 1894//1532 1341//1680 +f 496//2005 1341//1680 1888//1449 1227//1454 +f 496//2005 1227//1454 1820//1386 1503//2006 +f 496//2005 1503//2006 2012//1990 1495//1989 +f 497//2007 1246//1492 1819//1378 1502//2004 +f 497//2007 1502//2004 2011//1986 1497//1993 +f 497//2007 1497//1993 2009//1942 1504//2008 +f 497//2007 1504//2008 1827//1493 1246//1492 +f 498//2009 1505//2010 2010//1947 1498//1995 +f 498//2009 1498//1995 2012//1990 1503//2006 +f 498//2009 1503//2006 1820//1386 1251//1502 +f 498//2009 1251//1502 1828//1501 1505//2010 +f 499//2011 1330//1662 1825//1471 1254//1508 +f 499//2011 1254//1508 1827//1493 1504//2008 +f 499//2011 1504//2008 2009//1942 1471//1941 +f 499//2011 1471//1941 1895//1590 1330//1662 +f 500//2012 1474//1948 2010//1947 1505//2010 +f 500//2012 1505//2010 1828//1501 1257//1512 +f 500//2012 1257//1512 1826//1476 1333//1666 +f 500//2012 1333//1666 1896//1596 1474//1948 diff --git a/example/src/MeshRenderComponent.h b/example/src/MeshRenderComponent.h new file mode 100644 index 0000000..c113356 --- /dev/null +++ b/example/src/MeshRenderComponent.h @@ -0,0 +1,179 @@ +#include +#include + +#ifndef HMME_MESH_RENDER_COMPONENT_H +#define HMME_MESH_RENDER_COMPONENT_H + +#include "tiny_obj_loader.h" + +class MeshRenderComponent : public RenderComponent { +public: + bool didLoad = false; + + struct Shape { + GLuint vaoID = 0; + GLuint vertexBufferID = 0; + GLuint normalBufferID = 0; + GLuint uvBufferID = 0; + GLuint colorBufferID = 0; + int numVerts = 0; + }; + std::vector renderShapes; + + MeshRenderComponent(const char *filename) { + // Load the model + tinyobj::attrib_t attrib; + std::vector shapes; + std::vector materials; + + std::string err; + bool ret = tinyobj::LoadObj(&attrib, &shapes, &materials, &err, filename); + + if (!err.empty()) { // `err` may contain warning message. + printf("Failed to load mesh: %s\n", err.c_str()); + } + + if (!ret) { + return; + } + + for (auto shape : shapes) { + std::vector vertices; + std::vector normals; + std::vector uvs; + std::vector colors; + + for (auto indices : shape.mesh.indices) { + if (indices.vertex_index > -1) { + for (int i = 0; i < 3; i++) { + int attribIndex = 3 * indices.vertex_index + i; + vertices.push_back(attrib.vertices[attribIndex]); + colors.push_back(attrib.colors[attribIndex]); + } + } + if (indices.normal_index > -1) { + for (int i = 0; i < 3; i++) { + int attribIndex = 3 * indices.normal_index + i; + normals.push_back(attrib.normals[attribIndex]); + } + } + if (indices.texcoord_index > -1) { + for (int i = 0; i < 2; i++) { + int attribIndex = 2 * indices.texcoord_index + i; + uvs.push_back(attrib.texcoords[attribIndex]); + } + } + } + + Shape s; // the new shape to insert into our list + + glGenVertexArrays(1, &s.vaoID); + + if (!vertices.empty()) { + glGenBuffers(1, &s.vertexBufferID); + glBindBuffer(GL_ARRAY_BUFFER, s.vertexBufferID); + glBufferData(GL_ARRAY_BUFFER, sizeof(tinyobj::real_t) * vertices.size(), &vertices.front(), GL_STATIC_DRAW); + + glGenBuffers(1, &s.colorBufferID); + glBindBuffer(GL_ARRAY_BUFFER, s.colorBufferID); + glBufferData(GL_ARRAY_BUFFER, sizeof(tinyobj::real_t) * colors.size(), &colors.front(), GL_STATIC_DRAW); + } + + if (!normals.empty()) { + glGenBuffers(1, &s.normalBufferID); + glBindBuffer(GL_ARRAY_BUFFER, s.normalBufferID); + glBufferData(GL_ARRAY_BUFFER, sizeof(tinyobj::real_t) * normals.size(), &normals.front(), GL_STATIC_DRAW); + } + + if (!uvs.empty()) { + glGenBuffers(1, &s.uvBufferID); + glBindBuffer(GL_ARRAY_BUFFER, s.uvBufferID); + glBufferData(GL_ARRAY_BUFFER, sizeof(tinyobj::real_t) * uvs.size(), &uvs.front(), GL_STATIC_DRAW); + } + + s.numVerts = vertices.size() / 3; + + renderShapes.push_back(s); + } + + didLoad = true; + } + + void Draw() override { + if (!didLoad) { + return; + } + + for (auto s : renderShapes) { + glBindVertexArray(s.vaoID); + + // 1st attribute buffer : vertices + glEnableVertexAttribArray(0); + glBindBuffer(GL_ARRAY_BUFFER, s.vertexBufferID); + glVertexAttribPointer( + 0, // attribute 0. No particular reason for 0, but must match the layout in the shader. + 3, // size + GL_FLOAT, // type + GL_FALSE, // normalized? + 0, // stride + (void*)0 // array buffer offset + ); + + // 2nd attribute buffer : colors + glEnableVertexAttribArray(1); + glBindBuffer(GL_ARRAY_BUFFER, s.colorBufferID); + glVertexAttribPointer( + 1, // attribute. No particular reason for 1, but must match the layout in the shader. + 3, // size + GL_FLOAT, // type + GL_FALSE, // normalized? + 0, // stride + (void*)0 // array buffer offset + ); + + if (s.normalBufferID != 0) { + // 3rd attribute buffer : normals + glEnableVertexAttribArray(2); + glBindBuffer(GL_ARRAY_BUFFER, s.normalBufferID); + glVertexAttribPointer( + 2, // must match the layout in the shader + 3, // size + GL_FLOAT, // type + GL_FALSE, // normalized? + 0, // stride + (void*)0 // array buffer offset + ); + } + + if (s.uvBufferID != 0) { + // 4th attribute buffer : uvs + glEnableVertexAttribArray(3); + glBindBuffer(GL_ARRAY_BUFFER, s.normalBufferID); + glVertexAttribPointer( + 3, // must match the layout in the shader + 2, // size + GL_FLOAT, // type + GL_FALSE, // normalized? + 0, // stride + (void*)0 // array buffer offset + ); + } + + // Shader?? + + // Draw the triangle! + glDrawArrays(GL_TRIANGLES, 0, s.numVerts); // Starting from vertex 0; 3 vertices total -> 1 triangle + + glDisableVertexAttribArray(0); + glDisableVertexAttribArray(1); + if (s.normalBufferID != 0) { + glDisableVertexAttribArray(2); + } + if (s.uvBufferID != 0) { + glDisableVertexAttribArray(3); + } + } + } +}; + +#endif diff --git a/example/src/fragment.glsl b/example/src/fragment.glsl index 19c9709..24923f2 100644 --- a/example/src/fragment.glsl +++ b/example/src/fragment.glsl @@ -1,9 +1,16 @@ #version 330 core +in vec3 fragmentPosition_world; in vec3 fragmentColor; +in vec3 fragmentNormal_world; +in vec2 fragmentUV; out vec3 color; void main() { - color = fragmentColor; + vec3 toLight_world = normalize(vec3(1, 1, 1)); + + float cosTheta = clamp(dot(normalize(fragmentNormal_world), toLight_world), 0.1, 1); + + color = cosTheta * fragmentColor; } diff --git a/example/src/main.cpp b/example/src/main.cpp index aa83c40..1262367 100644 --- a/example/src/main.cpp +++ b/example/src/main.cpp @@ -10,6 +10,7 @@ #include "Entity.h" #include "Cube.h" +#include "MeshRenderComponent.h" void TickTree(Entity *e, float deltaSeconds); void ComputeModelMatrices(Entity *ep, hmm_mat4 parentModelMatrix); @@ -57,7 +58,9 @@ int main() // Get a handle for our "MVP" uniform // Only during the initialisation - GLuint MatrixID = glGetUniformLocation(programID, "MVP"); + GLuint uniformID_M = glGetUniformLocation(programID, "M"); + GLuint uniformID_V = glGetUniformLocation(programID, "V"); + GLuint uniformID_MVP = glGetUniformLocation(programID, "MVP"); // Enable depth test glEnable(GL_DEPTH_TEST); @@ -66,13 +69,14 @@ int main() Cube root = Cube(); - Cube child = Cube(); + Entity child = Entity(); child.position = HMM_Vec3(2.1f, 0.0f, 0.0f); + child.renderComponent = new MeshRenderComponent("MonkeySmooth.obj"); - Cube c = Cube(); - child.position = HMM_Vec3(2.1f, 0.0f, 0.0f); + // Cube c = Cube(); + // child.position = HMM_Vec3(2.1f, 0.0f, 0.0f); - child.AddChild(&c); + // child.AddChild(&c); root.AddChild(&child); bool hasTicked = false; @@ -107,8 +111,13 @@ int main() // Use our shader glUseProgram(programID); + // Send uniforms + glUniformMatrix4fv(uniformID_M, 1, GL_FALSE, &e->modelMatrix.Elements[0][0]); + + glUniformMatrix4fv(uniformID_V, 1, GL_FALSE, &view.Elements[0][0]); + hmm_mat4 mvp = vp * e->modelMatrix; - glUniformMatrix4fv(MatrixID, 1, GL_FALSE, &mvp.Elements[0][0]); + glUniformMatrix4fv(uniformID_MVP, 1, GL_FALSE, &mvp.Elements[0][0]); e->renderComponent->Draw(); } diff --git a/example/src/tiny_obj_loader.cpp b/example/src/tiny_obj_loader.cpp new file mode 100644 index 0000000..e57d044 --- /dev/null +++ b/example/src/tiny_obj_loader.cpp @@ -0,0 +1,2 @@ +#define TINYOBJLOADER_IMPLEMENTATION +#include "tiny_obj_loader.h" diff --git a/example/src/tiny_obj_loader.h b/example/src/tiny_obj_loader.h new file mode 100644 index 0000000..f9280b3 --- /dev/null +++ b/example/src/tiny_obj_loader.h @@ -0,0 +1,2338 @@ +/* +The MIT License (MIT) + +Copyright (c) 2012-2018 Syoyo Fujita and many contributors. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +*/ + +// +// version 1.1.1 : Support smoothing groups(#162) +// version 1.1.0 : Support parsing vertex color(#144) +// version 1.0.8 : Fix parsing `g` tag just after `usemtl`(#138) +// version 1.0.7 : Support multiple tex options(#126) +// version 1.0.6 : Add TINYOBJLOADER_USE_DOUBLE option(#124) +// version 1.0.5 : Ignore `Tr` when `d` exists in MTL(#43) +// version 1.0.4 : Support multiple filenames for 'mtllib'(#112) +// version 1.0.3 : Support parsing texture options(#85) +// version 1.0.2 : Improve parsing speed by about a factor of 2 for large +// files(#105) +// version 1.0.1 : Fixes a shape is lost if obj ends with a 'usemtl'(#104) +// version 1.0.0 : Change data structure. Change license from BSD to MIT. +// + +// +// Use this in *one* .cc +// #define TINYOBJLOADER_IMPLEMENTATION +// #include "tiny_obj_loader.h" +// + +#ifndef TINY_OBJ_LOADER_H_ +#define TINY_OBJ_LOADER_H_ + +#include +#include +#include + +namespace tinyobj { + +#ifdef __clang__ +#pragma clang diagnostic push +#if __has_warning("-Wzero-as-null-pointer-constant") +#pragma clang diagnostic ignored "-Wzero-as-null-pointer-constant" +#endif + +#pragma clang diagnostic ignored "-Wpadded" + +#endif + +// https://en.wikipedia.org/wiki/Wavefront_.obj_file says ... +// +// -blendu on | off # set horizontal texture blending +// (default on) +// -blendv on | off # set vertical texture blending +// (default on) +// -boost real_value # boost mip-map sharpness +// -mm base_value gain_value # modify texture map values (default +// 0 1) +// # base_value = brightness, +// gain_value = contrast +// -o u [v [w]] # Origin offset (default +// 0 0 0) +// -s u [v [w]] # Scale (default +// 1 1 1) +// -t u [v [w]] # Turbulence (default +// 0 0 0) +// -texres resolution # texture resolution to create +// -clamp on | off # only render texels in the clamped +// 0-1 range (default off) +// # When unclamped, textures are +// repeated across a surface, +// # when clamped, only texels which +// fall within the 0-1 +// # range are rendered. +// -bm mult_value # bump multiplier (for bump maps +// only) +// +// -imfchan r | g | b | m | l | z # specifies which channel of the file +// is used to +// # create a scalar or bump texture. +// r:red, g:green, +// # b:blue, m:matte, l:luminance, +// z:z-depth.. +// # (the default for bump is 'l' and +// for decal is 'm') +// bump -imfchan r bumpmap.tga # says to use the red channel of +// bumpmap.tga as the bumpmap +// +// For reflection maps... +// +// -type sphere # specifies a sphere for a "refl" +// reflection map +// -type cube_top | cube_bottom | # when using a cube map, the texture +// file for each +// cube_front | cube_back | # side of the cube is specified +// separately +// cube_left | cube_right + +#ifdef TINYOBJLOADER_USE_DOUBLE +//#pragma message "using double" +typedef double real_t; +#else +//#pragma message "using float" +typedef float real_t; +#endif + +typedef enum { + TEXTURE_TYPE_NONE, // default + TEXTURE_TYPE_SPHERE, + TEXTURE_TYPE_CUBE_TOP, + TEXTURE_TYPE_CUBE_BOTTOM, + TEXTURE_TYPE_CUBE_FRONT, + TEXTURE_TYPE_CUBE_BACK, + TEXTURE_TYPE_CUBE_LEFT, + TEXTURE_TYPE_CUBE_RIGHT +} texture_type_t; + +typedef struct { + texture_type_t type; // -type (default TEXTURE_TYPE_NONE) + real_t sharpness; // -boost (default 1.0?) + real_t brightness; // base_value in -mm option (default 0) + real_t contrast; // gain_value in -mm option (default 1) + real_t origin_offset[3]; // -o u [v [w]] (default 0 0 0) + real_t scale[3]; // -s u [v [w]] (default 1 1 1) + real_t turbulence[3]; // -t u [v [w]] (default 0 0 0) + // int texture_resolution; // -texres resolution (default = ?) TODO + bool clamp; // -clamp (default false) + char imfchan; // -imfchan (the default for bump is 'l' and for decal is 'm') + bool blendu; // -blendu (default on) + bool blendv; // -blendv (default on) + real_t bump_multiplier; // -bm (for bump maps only, default 1.0) +} texture_option_t; + +typedef struct { + std::string name; + + real_t ambient[3]; + real_t diffuse[3]; + real_t specular[3]; + real_t transmittance[3]; + real_t emission[3]; + real_t shininess; + real_t ior; // index of refraction + real_t dissolve; // 1 == opaque; 0 == fully transparent + // illumination model (see http://www.fileformat.info/format/material/) + int illum; + + int dummy; // Suppress padding warning. + + std::string ambient_texname; // map_Ka + std::string diffuse_texname; // map_Kd + std::string specular_texname; // map_Ks + std::string specular_highlight_texname; // map_Ns + std::string bump_texname; // map_bump, map_Bump, bump + std::string displacement_texname; // disp + std::string alpha_texname; // map_d + std::string reflection_texname; // refl + + texture_option_t ambient_texopt; + texture_option_t diffuse_texopt; + texture_option_t specular_texopt; + texture_option_t specular_highlight_texopt; + texture_option_t bump_texopt; + texture_option_t displacement_texopt; + texture_option_t alpha_texopt; + texture_option_t reflection_texopt; + + // PBR extension + // http://exocortex.com/blog/extending_wavefront_mtl_to_support_pbr + real_t roughness; // [0, 1] default 0 + real_t metallic; // [0, 1] default 0 + real_t sheen; // [0, 1] default 0 + real_t clearcoat_thickness; // [0, 1] default 0 + real_t clearcoat_roughness; // [0, 1] default 0 + real_t anisotropy; // aniso. [0, 1] default 0 + real_t anisotropy_rotation; // anisor. [0, 1] default 0 + real_t pad0; + std::string roughness_texname; // map_Pr + std::string metallic_texname; // map_Pm + std::string sheen_texname; // map_Ps + std::string emissive_texname; // map_Ke + std::string normal_texname; // norm. For normal mapping. + + texture_option_t roughness_texopt; + texture_option_t metallic_texopt; + texture_option_t sheen_texopt; + texture_option_t emissive_texopt; + texture_option_t normal_texopt; + + int pad2; + + std::map unknown_parameter; +} material_t; + +typedef struct { + std::string name; + + std::vector intValues; + std::vector floatValues; + std::vector stringValues; +} tag_t; + +// Index struct to support different indices for vtx/normal/texcoord. +// -1 means not used. +typedef struct { + int vertex_index; + int normal_index; + int texcoord_index; +} index_t; + +typedef struct { + std::vector indices; + std::vector num_face_vertices; // The number of vertices per + // face. 3 = polygon, 4 = quad, + // ... Up to 255. + std::vector material_ids; // per-face material ID + std::vector smoothing_group_ids; // per-face smoothing group + // ID(0 = off. positive value + // = group id) + std::vector tags; // SubD tag +} mesh_t; + +typedef struct { + std::string name; + mesh_t mesh; +} shape_t; + +// Vertex attributes +typedef struct { + std::vector vertices; // 'v' + std::vector normals; // 'vn' + std::vector texcoords; // 'vt' + std::vector colors; // extension: vertex colors +} attrib_t; + +typedef struct callback_t_ { + // W is optional and set to 1 if there is no `w` item in `v` line + void (*vertex_cb)(void *user_data, real_t x, real_t y, real_t z, real_t w); + void (*normal_cb)(void *user_data, real_t x, real_t y, real_t z); + + // y and z are optional and set to 0 if there is no `y` and/or `z` item(s) in + // `vt` line. + void (*texcoord_cb)(void *user_data, real_t x, real_t y, real_t z); + + // called per 'f' line. num_indices is the number of face indices(e.g. 3 for + // triangle, 4 for quad) + // 0 will be passed for undefined index in index_t members. + void (*index_cb)(void *user_data, index_t *indices, int num_indices); + // `name` material name, `material_id` = the array index of material_t[]. -1 + // if + // a material not found in .mtl + void (*usemtl_cb)(void *user_data, const char *name, int material_id); + // `materials` = parsed material data. + void (*mtllib_cb)(void *user_data, const material_t *materials, + int num_materials); + // There may be multiple group names + void (*group_cb)(void *user_data, const char **names, int num_names); + void (*object_cb)(void *user_data, const char *name); + + callback_t_() + : vertex_cb(NULL), + normal_cb(NULL), + texcoord_cb(NULL), + index_cb(NULL), + usemtl_cb(NULL), + mtllib_cb(NULL), + group_cb(NULL), + object_cb(NULL) {} +} callback_t; + +class MaterialReader { + public: + MaterialReader() {} + virtual ~MaterialReader(); + + virtual bool operator()(const std::string &matId, + std::vector *materials, + std::map *matMap, + std::string *err) = 0; +}; + +class MaterialFileReader : public MaterialReader { + public: + explicit MaterialFileReader(const std::string &mtl_basedir) + : m_mtlBaseDir(mtl_basedir) {} + virtual ~MaterialFileReader() {} + virtual bool operator()(const std::string &matId, + std::vector *materials, + std::map *matMap, std::string *err); + + private: + std::string m_mtlBaseDir; +}; + +class MaterialStreamReader : public MaterialReader { + public: + explicit MaterialStreamReader(std::istream &inStream) + : m_inStream(inStream) {} + virtual ~MaterialStreamReader() {} + virtual bool operator()(const std::string &matId, + std::vector *materials, + std::map *matMap, std::string *err); + + private: + std::istream &m_inStream; +}; + +/// Loads .obj from a file. +/// 'attrib', 'shapes' and 'materials' will be filled with parsed shape data +/// 'shapes' will be filled with parsed shape data +/// Returns true when loading .obj become success. +/// Returns warning and error message into `err` +/// 'mtl_basedir' is optional, and used for base directory for .mtl file. +/// In default(`NULL'), .mtl file is searched from an application's working +/// directory. +/// 'triangulate' is optional, and used whether triangulate polygon face in .obj +/// or not. +bool LoadObj(attrib_t *attrib, std::vector *shapes, + std::vector *materials, std::string *err, + const char *filename, const char *mtl_basedir = NULL, + bool triangulate = true); + +/// Loads .obj from a file with custom user callback. +/// .mtl is loaded as usual and parsed material_t data will be passed to +/// `callback.mtllib_cb`. +/// Returns true when loading .obj/.mtl become success. +/// Returns warning and error message into `err` +/// See `examples/callback_api/` for how to use this function. +bool LoadObjWithCallback(std::istream &inStream, const callback_t &callback, + void *user_data = NULL, + MaterialReader *readMatFn = NULL, + std::string *err = NULL); + +/// Loads object from a std::istream, uses GetMtlIStreamFn to retrieve +/// std::istream for materials. +/// Returns true when loading .obj become success. +/// Returns warning and error message into `err` +bool LoadObj(attrib_t *attrib, std::vector *shapes, + std::vector *materials, std::string *err, + std::istream *inStream, MaterialReader *readMatFn = NULL, + bool triangulate = true); + +/// Loads materials into std::map +void LoadMtl(std::map *material_map, + std::vector *materials, std::istream *inStream, + std::string *warning); + +} // namespace tinyobj + +#endif // TINY_OBJ_LOADER_H_ + +#ifdef TINYOBJLOADER_IMPLEMENTATION +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +namespace tinyobj { + +MaterialReader::~MaterialReader() {} + +struct vertex_index_t { + int v_idx, vt_idx, vn_idx; + vertex_index_t() : v_idx(-1), vt_idx(-1), vn_idx(-1) {} + explicit vertex_index_t(int idx) : v_idx(idx), vt_idx(idx), vn_idx(idx) {} + vertex_index_t(int vidx, int vtidx, int vnidx) + : v_idx(vidx), vt_idx(vtidx), vn_idx(vnidx) {} +}; + +// Internal data structure for face representation +// index + smoothing group. +struct face_t { + unsigned int + smoothing_group_id; // smoothing group id. 0 = smoothing groupd is off. + int pad_; + std::vector vertex_indices; // face vertex indices. + + face_t() : smoothing_group_id(0) {} +}; + +struct tag_sizes { + tag_sizes() : num_ints(0), num_reals(0), num_strings(0) {} + int num_ints; + int num_reals; + int num_strings; +}; + +struct obj_shape { + std::vector v; + std::vector vn; + std::vector vt; +}; + +// See +// http://stackoverflow.com/questions/6089231/getting-std-ifstream-to-handle-lf-cr-and-crlf +static std::istream &safeGetline(std::istream &is, std::string &t) { + t.clear(); + + // The characters in the stream are read one-by-one using a std::streambuf. + // That is faster than reading them one-by-one using the std::istream. + // Code that uses streambuf this way must be guarded by a sentry object. + // The sentry object performs various tasks, + // such as thread synchronization and updating the stream state. + + std::istream::sentry se(is, true); + std::streambuf *sb = is.rdbuf(); + + if (se) { + for (;;) { + int c = sb->sbumpc(); + switch (c) { + case '\n': + return is; + case '\r': + if (sb->sgetc() == '\n') sb->sbumpc(); + return is; + case EOF: + // Also handle the case when the last line has no line ending + if (t.empty()) is.setstate(std::ios::eofbit); + return is; + default: + t += static_cast(c); + } + } + } + + return is; +} + +#define IS_SPACE(x) (((x) == ' ') || ((x) == '\t')) +#define IS_DIGIT(x) \ + (static_cast((x) - '0') < static_cast(10)) +#define IS_NEW_LINE(x) (((x) == '\r') || ((x) == '\n') || ((x) == '\0')) + +// Make index zero-base, and also support relative index. +static inline bool fixIndex(int idx, int n, int *ret) { + if (!ret) { + return false; + } + + if (idx > 0) { + (*ret) = idx - 1; + return true; + } + + if (idx == 0) { + // zero is not allowed according to the spec. + return false; + } + + if (idx < 0) { + (*ret) = n + idx; // negative value = relative + return true; + } + + return false; // never reach here. +} + +static inline std::string parseString(const char **token) { + std::string s; + (*token) += strspn((*token), " \t"); + size_t e = strcspn((*token), " \t\r"); + s = std::string((*token), &(*token)[e]); + (*token) += e; + return s; +} + +static inline int parseInt(const char **token) { + (*token) += strspn((*token), " \t"); + int i = atoi((*token)); + (*token) += strcspn((*token), " \t\r"); + return i; +} + +// Tries to parse a floating point number located at s. +// +// s_end should be a location in the string where reading should absolutely +// stop. For example at the end of the string, to prevent buffer overflows. +// +// Parses the following EBNF grammar: +// sign = "+" | "-" ; +// END = ? anything not in digit ? +// digit = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" ; +// integer = [sign] , digit , {digit} ; +// decimal = integer , ["." , integer] ; +// float = ( decimal , END ) | ( decimal , ("E" | "e") , integer , END ) ; +// +// Valid strings are for example: +// -0 +3.1417e+2 -0.0E-3 1.0324 -1.41 11e2 +// +// If the parsing is a success, result is set to the parsed value and true +// is returned. +// +// The function is greedy and will parse until any of the following happens: +// - a non-conforming character is encountered. +// - s_end is reached. +// +// The following situations triggers a failure: +// - s >= s_end. +// - parse failure. +// +static bool tryParseDouble(const char *s, const char *s_end, double *result) { + if (s >= s_end) { + return false; + } + + double mantissa = 0.0; + // This exponent is base 2 rather than 10. + // However the exponent we parse is supposed to be one of ten, + // thus we must take care to convert the exponent/and or the + // mantissa to a * 2^E, where a is the mantissa and E is the + // exponent. + // To get the final double we will use ldexp, it requires the + // exponent to be in base 2. + int exponent = 0; + + // NOTE: THESE MUST BE DECLARED HERE SINCE WE ARE NOT ALLOWED + // TO JUMP OVER DEFINITIONS. + char sign = '+'; + char exp_sign = '+'; + char const *curr = s; + + // How many characters were read in a loop. + int read = 0; + // Tells whether a loop terminated due to reaching s_end. + bool end_not_reached = false; + + /* + BEGIN PARSING. + */ + + // Find out what sign we've got. + if (*curr == '+' || *curr == '-') { + sign = *curr; + curr++; + } else if (IS_DIGIT(*curr)) { /* Pass through. */ + } else { + goto fail; + } + + // Read the integer part. + end_not_reached = (curr != s_end); + while (end_not_reached && IS_DIGIT(*curr)) { + mantissa *= 10; + mantissa += static_cast(*curr - 0x30); + curr++; + read++; + end_not_reached = (curr != s_end); + } + + // We must make sure we actually got something. + if (read == 0) goto fail; + // We allow numbers of form "#", "###" etc. + if (!end_not_reached) goto assemble; + + // Read the decimal part. + if (*curr == '.') { + curr++; + read = 1; + end_not_reached = (curr != s_end); + while (end_not_reached && IS_DIGIT(*curr)) { + static const double pow_lut[] = { + 1.0, 0.1, 0.01, 0.001, 0.0001, 0.00001, 0.000001, 0.0000001, + }; + const int lut_entries = sizeof pow_lut / sizeof pow_lut[0]; + + // NOTE: Don't use powf here, it will absolutely murder precision. + mantissa += static_cast(*curr - 0x30) * + (read < lut_entries ? pow_lut[read] : std::pow(10.0, -read)); + read++; + curr++; + end_not_reached = (curr != s_end); + } + } else if (*curr == 'e' || *curr == 'E') { + } else { + goto assemble; + } + + if (!end_not_reached) goto assemble; + + // Read the exponent part. + if (*curr == 'e' || *curr == 'E') { + curr++; + // Figure out if a sign is present and if it is. + end_not_reached = (curr != s_end); + if (end_not_reached && (*curr == '+' || *curr == '-')) { + exp_sign = *curr; + curr++; + } else if (IS_DIGIT(*curr)) { /* Pass through. */ + } else { + // Empty E is not allowed. + goto fail; + } + + read = 0; + end_not_reached = (curr != s_end); + while (end_not_reached && IS_DIGIT(*curr)) { + exponent *= 10; + exponent += static_cast(*curr - 0x30); + curr++; + read++; + end_not_reached = (curr != s_end); + } + exponent *= (exp_sign == '+' ? 1 : -1); + if (read == 0) goto fail; + } + +assemble: + *result = (sign == '+' ? 1 : -1) * + (exponent ? std::ldexp(mantissa * std::pow(5.0, exponent), exponent) + : mantissa); + return true; +fail: + return false; +} + +static inline real_t parseReal(const char **token, double default_value = 0.0) { + (*token) += strspn((*token), " \t"); + const char *end = (*token) + strcspn((*token), " \t\r"); + double val = default_value; + tryParseDouble((*token), end, &val); + real_t f = static_cast(val); + (*token) = end; + return f; +} + +static inline bool parseReal(const char **token, real_t *out) { + (*token) += strspn((*token), " \t"); + const char *end = (*token) + strcspn((*token), " \t\r"); + double val; + bool ret = tryParseDouble((*token), end, &val); + if (ret) { + real_t f = static_cast(val); + (*out) = f; + } + (*token) = end; + return ret; +} + +static inline void parseReal2(real_t *x, real_t *y, const char **token, + const double default_x = 0.0, + const double default_y = 0.0) { + (*x) = parseReal(token, default_x); + (*y) = parseReal(token, default_y); +} + +static inline void parseReal3(real_t *x, real_t *y, real_t *z, + const char **token, const double default_x = 0.0, + const double default_y = 0.0, + const double default_z = 0.0) { + (*x) = parseReal(token, default_x); + (*y) = parseReal(token, default_y); + (*z) = parseReal(token, default_z); +} + +static inline void parseV(real_t *x, real_t *y, real_t *z, real_t *w, + const char **token, const double default_x = 0.0, + const double default_y = 0.0, + const double default_z = 0.0, + const double default_w = 1.0) { + (*x) = parseReal(token, default_x); + (*y) = parseReal(token, default_y); + (*z) = parseReal(token, default_z); + (*w) = parseReal(token, default_w); +} + +// Extension: parse vertex with colors(6 items) +static inline bool parseVertexWithColor(real_t *x, real_t *y, real_t *z, + real_t *r, real_t *g, real_t *b, + const char **token, + const double default_x = 0.0, + const double default_y = 0.0, + const double default_z = 0.0) { + (*x) = parseReal(token, default_x); + (*y) = parseReal(token, default_y); + (*z) = parseReal(token, default_z); + + (*r) = parseReal(token, 1.0); + (*g) = parseReal(token, 1.0); + (*b) = parseReal(token, 1.0); + + return true; +} + +static inline bool parseOnOff(const char **token, bool default_value = true) { + (*token) += strspn((*token), " \t"); + const char *end = (*token) + strcspn((*token), " \t\r"); + + bool ret = default_value; + if ((0 == strncmp((*token), "on", 2))) { + ret = true; + } else if ((0 == strncmp((*token), "off", 3))) { + ret = false; + } + + (*token) = end; + return ret; +} + +static inline texture_type_t parseTextureType( + const char **token, texture_type_t default_value = TEXTURE_TYPE_NONE) { + (*token) += strspn((*token), " \t"); + const char *end = (*token) + strcspn((*token), " \t\r"); + texture_type_t ty = default_value; + + if ((0 == strncmp((*token), "cube_top", strlen("cube_top")))) { + ty = TEXTURE_TYPE_CUBE_TOP; + } else if ((0 == strncmp((*token), "cube_bottom", strlen("cube_bottom")))) { + ty = TEXTURE_TYPE_CUBE_BOTTOM; + } else if ((0 == strncmp((*token), "cube_left", strlen("cube_left")))) { + ty = TEXTURE_TYPE_CUBE_LEFT; + } else if ((0 == strncmp((*token), "cube_right", strlen("cube_right")))) { + ty = TEXTURE_TYPE_CUBE_RIGHT; + } else if ((0 == strncmp((*token), "cube_front", strlen("cube_front")))) { + ty = TEXTURE_TYPE_CUBE_FRONT; + } else if ((0 == strncmp((*token), "cube_back", strlen("cube_back")))) { + ty = TEXTURE_TYPE_CUBE_BACK; + } else if ((0 == strncmp((*token), "sphere", strlen("sphere")))) { + ty = TEXTURE_TYPE_SPHERE; + } + + (*token) = end; + return ty; +} + +static tag_sizes parseTagTriple(const char **token) { + tag_sizes ts; + + (*token) += strspn((*token), " \t"); + ts.num_ints = atoi((*token)); + (*token) += strcspn((*token), "/ \t\r"); + if ((*token)[0] != '/') { + return ts; + } + + (*token)++; // Skip '/' + + (*token) += strspn((*token), " \t"); + ts.num_reals = atoi((*token)); + (*token) += strcspn((*token), "/ \t\r"); + if ((*token)[0] != '/') { + return ts; + } + (*token)++; // Skip '/' + + ts.num_strings = parseInt(token); + + return ts; +} + +// Parse triples with index offsets: i, i/j/k, i//k, i/j +static bool parseTriple(const char **token, int vsize, int vnsize, int vtsize, + vertex_index_t *ret) { + if (!ret) { + return false; + } + + vertex_index_t vi(-1); + + if (!fixIndex(atoi((*token)), vsize, &(vi.v_idx))) { + return false; + } + + (*token) += strcspn((*token), "/ \t\r"); + if ((*token)[0] != '/') { + (*ret) = vi; + return true; + } + (*token)++; + + // i//k + if ((*token)[0] == '/') { + (*token)++; + if (!fixIndex(atoi((*token)), vnsize, &(vi.vn_idx))) { + return false; + } + (*token) += strcspn((*token), "/ \t\r"); + (*ret) = vi; + return true; + } + + // i/j/k or i/j + if (!fixIndex(atoi((*token)), vtsize, &(vi.vt_idx))) { + return false; + } + + (*token) += strcspn((*token), "/ \t\r"); + if ((*token)[0] != '/') { + (*ret) = vi; + return true; + } + + // i/j/k + (*token)++; // skip '/' + if (!fixIndex(atoi((*token)), vnsize, &(vi.vn_idx))) { + return false; + } + (*token) += strcspn((*token), "/ \t\r"); + + (*ret) = vi; + + return true; +} + +// Parse raw triples: i, i/j/k, i//k, i/j +static vertex_index_t parseRawTriple(const char **token) { + vertex_index_t vi(static_cast(0)); // 0 is an invalid index in OBJ + + vi.v_idx = atoi((*token)); + (*token) += strcspn((*token), "/ \t\r"); + if ((*token)[0] != '/') { + return vi; + } + (*token)++; + + // i//k + if ((*token)[0] == '/') { + (*token)++; + vi.vn_idx = atoi((*token)); + (*token) += strcspn((*token), "/ \t\r"); + return vi; + } + + // i/j/k or i/j + vi.vt_idx = atoi((*token)); + (*token) += strcspn((*token), "/ \t\r"); + if ((*token)[0] != '/') { + return vi; + } + + // i/j/k + (*token)++; // skip '/' + vi.vn_idx = atoi((*token)); + (*token) += strcspn((*token), "/ \t\r"); + return vi; +} + +static bool ParseTextureNameAndOption(std::string *texname, + texture_option_t *texopt, + const char *linebuf, const bool is_bump) { + // @todo { write more robust lexer and parser. } + bool found_texname = false; + std::string texture_name; + + // Fill with default value for texopt. + if (is_bump) { + texopt->imfchan = 'l'; + } else { + texopt->imfchan = 'm'; + } + texopt->bump_multiplier = static_cast(1.0); + texopt->clamp = false; + texopt->blendu = true; + texopt->blendv = true; + texopt->sharpness = static_cast(1.0); + texopt->brightness = static_cast(0.0); + texopt->contrast = static_cast(1.0); + texopt->origin_offset[0] = static_cast(0.0); + texopt->origin_offset[1] = static_cast(0.0); + texopt->origin_offset[2] = static_cast(0.0); + texopt->scale[0] = static_cast(1.0); + texopt->scale[1] = static_cast(1.0); + texopt->scale[2] = static_cast(1.0); + texopt->turbulence[0] = static_cast(0.0); + texopt->turbulence[1] = static_cast(0.0); + texopt->turbulence[2] = static_cast(0.0); + texopt->type = TEXTURE_TYPE_NONE; + + const char *token = linebuf; // Assume line ends with NULL + + while (!IS_NEW_LINE((*token))) { + token += strspn(token, " \t"); // skip space + if ((0 == strncmp(token, "-blendu", 7)) && IS_SPACE((token[7]))) { + token += 8; + texopt->blendu = parseOnOff(&token, /* default */ true); + } else if ((0 == strncmp(token, "-blendv", 7)) && IS_SPACE((token[7]))) { + token += 8; + texopt->blendv = parseOnOff(&token, /* default */ true); + } else if ((0 == strncmp(token, "-clamp", 6)) && IS_SPACE((token[6]))) { + token += 7; + texopt->clamp = parseOnOff(&token, /* default */ true); + } else if ((0 == strncmp(token, "-boost", 6)) && IS_SPACE((token[6]))) { + token += 7; + texopt->sharpness = parseReal(&token, 1.0); + } else if ((0 == strncmp(token, "-bm", 3)) && IS_SPACE((token[3]))) { + token += 4; + texopt->bump_multiplier = parseReal(&token, 1.0); + } else if ((0 == strncmp(token, "-o", 2)) && IS_SPACE((token[2]))) { + token += 3; + parseReal3(&(texopt->origin_offset[0]), &(texopt->origin_offset[1]), + &(texopt->origin_offset[2]), &token); + } else if ((0 == strncmp(token, "-s", 2)) && IS_SPACE((token[2]))) { + token += 3; + parseReal3(&(texopt->scale[0]), &(texopt->scale[1]), &(texopt->scale[2]), + &token, 1.0, 1.0, 1.0); + } else if ((0 == strncmp(token, "-t", 2)) && IS_SPACE((token[2]))) { + token += 3; + parseReal3(&(texopt->turbulence[0]), &(texopt->turbulence[1]), + &(texopt->turbulence[2]), &token); + } else if ((0 == strncmp(token, "-type", 5)) && IS_SPACE((token[5]))) { + token += 5; + texopt->type = parseTextureType((&token), TEXTURE_TYPE_NONE); + } else if ((0 == strncmp(token, "-imfchan", 8)) && IS_SPACE((token[8]))) { + token += 9; + token += strspn(token, " \t"); + const char *end = token + strcspn(token, " \t\r"); + if ((end - token) == 1) { // Assume one char for -imfchan + texopt->imfchan = (*token); + } + token = end; + } else if ((0 == strncmp(token, "-mm", 3)) && IS_SPACE((token[3]))) { + token += 4; + parseReal2(&(texopt->brightness), &(texopt->contrast), &token, 0.0, 1.0); + } else { + // Assume texture filename +#if 0 + size_t len = strcspn(token, " \t\r"); // untile next space + texture_name = std::string(token, token + len); + token += len; + + token += strspn(token, " \t"); // skip space +#else + // Read filename until line end to parse filename containing whitespace + // TODO(syoyo): Support parsing texture option flag after the filename. + texture_name = std::string(token); + token += texture_name.length(); +#endif + + found_texname = true; + } + } + + if (found_texname) { + (*texname) = texture_name; + return true; + } else { + return false; + } +} + +static void InitMaterial(material_t *material) { + material->name = ""; + material->ambient_texname = ""; + material->diffuse_texname = ""; + material->specular_texname = ""; + material->specular_highlight_texname = ""; + material->bump_texname = ""; + material->displacement_texname = ""; + material->reflection_texname = ""; + material->alpha_texname = ""; + for (int i = 0; i < 3; i++) { + material->ambient[i] = static_cast(0.0); + material->diffuse[i] = static_cast(0.0); + material->specular[i] = static_cast(0.0); + material->transmittance[i] = static_cast(0.0); + material->emission[i] = static_cast(0.0); + } + material->illum = 0; + material->dissolve = static_cast(1.0); + material->shininess = static_cast(1.0); + material->ior = static_cast(1.0); + + material->roughness = static_cast(0.0); + material->metallic = static_cast(0.0); + material->sheen = static_cast(0.0); + material->clearcoat_thickness = static_cast(0.0); + material->clearcoat_roughness = static_cast(0.0); + material->anisotropy_rotation = static_cast(0.0); + material->anisotropy = static_cast(0.0); + material->roughness_texname = ""; + material->metallic_texname = ""; + material->sheen_texname = ""; + material->emissive_texname = ""; + material->normal_texname = ""; + + material->unknown_parameter.clear(); +} + +// code from https://wrf.ecse.rpi.edu//Research/Short_Notes/pnpoly.html +template +static int pnpoly(int nvert, T *vertx, T *verty, T testx, + T testy) { + int i, j, c = 0; + for (i = 0, j = nvert - 1; i < nvert; j = i++) { + if (((verty[i] > testy) != (verty[j] > testy)) && + (testx < + (vertx[j] - vertx[i]) * (testy - verty[i]) / (verty[j] - verty[i]) + + vertx[i])) + c = !c; + } + return c; +} + +// TODO(syoyo): refactor function. +static bool exportFaceGroupToShape(shape_t *shape, + const std::vector &faceGroup, + const std::vector &tags, + const int material_id, + const std::string &name, bool triangulate, + const std::vector &v) { + if (faceGroup.empty()) { + return false; + } + + // Flatten vertices and indices + for (size_t i = 0; i < faceGroup.size(); i++) { + const face_t &face = faceGroup[i]; + + if (face.vertex_indices.size() < 3) { + // Face must have 3+ vertices. + continue; + } + + vertex_index_t i0 = face.vertex_indices[0]; + vertex_index_t i1(-1); + vertex_index_t i2 = face.vertex_indices[1]; + + size_t npolys = face.vertex_indices.size(); + + if (triangulate) { + // find the two axes to work in + size_t axes[2] = {1, 2}; + for (size_t k = 0; k < npolys; ++k) { + i0 = face.vertex_indices[(k + 0) % npolys]; + i1 = face.vertex_indices[(k + 1) % npolys]; + i2 = face.vertex_indices[(k + 2) % npolys]; + size_t vi0 = size_t(i0.v_idx); + size_t vi1 = size_t(i1.v_idx); + size_t vi2 = size_t(i2.v_idx); + real_t v0x = v[vi0 * 3 + 0]; + real_t v0y = v[vi0 * 3 + 1]; + real_t v0z = v[vi0 * 3 + 2]; + real_t v1x = v[vi1 * 3 + 0]; + real_t v1y = v[vi1 * 3 + 1]; + real_t v1z = v[vi1 * 3 + 2]; + real_t v2x = v[vi2 * 3 + 0]; + real_t v2y = v[vi2 * 3 + 1]; + real_t v2z = v[vi2 * 3 + 2]; + real_t e0x = v1x - v0x; + real_t e0y = v1y - v0y; + real_t e0z = v1z - v0z; + real_t e1x = v2x - v1x; + real_t e1y = v2y - v1y; + real_t e1z = v2z - v1z; + real_t cx = std::fabs(e0y * e1z - e0z * e1y); + real_t cy = std::fabs(e0z * e1x - e0x * e1z); + real_t cz = std::fabs(e0x * e1y - e0y * e1x); + const real_t epsilon = std::numeric_limits::epsilon(); + if (cx > epsilon || cy > epsilon || cz > epsilon) { + // found a corner + if (cx > cy && cx > cz) { + } else { + axes[0] = 0; + if (cz > cx && cz > cy) axes[1] = 1; + } + break; + } + } + + real_t area = 0; + for (size_t k = 0; k < npolys; ++k) { + i0 = face.vertex_indices[(k + 0) % npolys]; + i1 = face.vertex_indices[(k + 1) % npolys]; + size_t vi0 = size_t(i0.v_idx); + size_t vi1 = size_t(i1.v_idx); + real_t v0x = v[vi0 * 3 + axes[0]]; + real_t v0y = v[vi0 * 3 + axes[1]]; + real_t v1x = v[vi1 * 3 + axes[0]]; + real_t v1y = v[vi1 * 3 + axes[1]]; + area += (v0x * v1y - v0y * v1x) * static_cast(0.5); + } + + int maxRounds = + 10; // arbitrary max loop count to protect against unexpected errors + + face_t remainingFace = face; // copy + size_t guess_vert = 0; + vertex_index_t ind[3]; + real_t vx[3]; + real_t vy[3]; + while (remainingFace.vertex_indices.size() > 3 && maxRounds > 0) { + npolys = remainingFace.vertex_indices.size(); + if (guess_vert >= npolys) { + maxRounds -= 1; + guess_vert -= npolys; + } + for (size_t k = 0; k < 3; k++) { + ind[k] = remainingFace.vertex_indices[(guess_vert + k) % npolys]; + size_t vi = size_t(ind[k].v_idx); + vx[k] = v[vi * 3 + axes[0]]; + vy[k] = v[vi * 3 + axes[1]]; + } + real_t e0x = vx[1] - vx[0]; + real_t e0y = vy[1] - vy[0]; + real_t e1x = vx[2] - vx[1]; + real_t e1y = vy[2] - vy[1]; + real_t cross = e0x * e1y - e0y * e1x; + // if an internal angle + if (cross * area < static_cast(0.0)) { + guess_vert += 1; + continue; + } + + // check all other verts in case they are inside this triangle + bool overlap = false; + for (size_t otherVert = 3; otherVert < npolys; ++otherVert) { + size_t ovi = size_t( + remainingFace.vertex_indices[(guess_vert + otherVert) % npolys] + .v_idx); + real_t tx = v[ovi * 3 + axes[0]]; + real_t ty = v[ovi * 3 + axes[1]]; + if (pnpoly(3, vx, vy, tx, ty)) { + overlap = true; + break; + } + } + + if (overlap) { + guess_vert += 1; + continue; + } + + // this triangle is an ear + { + index_t idx0, idx1, idx2; + idx0.vertex_index = ind[0].v_idx; + idx0.normal_index = ind[0].vn_idx; + idx0.texcoord_index = ind[0].vt_idx; + idx1.vertex_index = ind[1].v_idx; + idx1.normal_index = ind[1].vn_idx; + idx1.texcoord_index = ind[1].vt_idx; + idx2.vertex_index = ind[2].v_idx; + idx2.normal_index = ind[2].vn_idx; + idx2.texcoord_index = ind[2].vt_idx; + + shape->mesh.indices.push_back(idx0); + shape->mesh.indices.push_back(idx1); + shape->mesh.indices.push_back(idx2); + + shape->mesh.num_face_vertices.push_back(3); + shape->mesh.material_ids.push_back(material_id); + shape->mesh.smoothing_group_ids.push_back(face.smoothing_group_id); + } + + // remove v1 from the list + size_t removed_vert_index = (guess_vert + 1) % npolys; + while (removed_vert_index + 1 < npolys) { + remainingFace.vertex_indices[removed_vert_index] = + remainingFace.vertex_indices[removed_vert_index + 1]; + removed_vert_index += 1; + } + remainingFace.vertex_indices.pop_back(); + } + + if (remainingFace.vertex_indices.size() == 3) { + i0 = remainingFace.vertex_indices[0]; + i1 = remainingFace.vertex_indices[1]; + i2 = remainingFace.vertex_indices[2]; + { + index_t idx0, idx1, idx2; + idx0.vertex_index = i0.v_idx; + idx0.normal_index = i0.vn_idx; + idx0.texcoord_index = i0.vt_idx; + idx1.vertex_index = i1.v_idx; + idx1.normal_index = i1.vn_idx; + idx1.texcoord_index = i1.vt_idx; + idx2.vertex_index = i2.v_idx; + idx2.normal_index = i2.vn_idx; + idx2.texcoord_index = i2.vt_idx; + + shape->mesh.indices.push_back(idx0); + shape->mesh.indices.push_back(idx1); + shape->mesh.indices.push_back(idx2); + + shape->mesh.num_face_vertices.push_back(3); + shape->mesh.material_ids.push_back(material_id); + shape->mesh.smoothing_group_ids.push_back(face.smoothing_group_id); + } + } + } else { + for (size_t k = 0; k < npolys; k++) { + index_t idx; + idx.vertex_index = face.vertex_indices[k].v_idx; + idx.normal_index = face.vertex_indices[k].vn_idx; + idx.texcoord_index = face.vertex_indices[k].vt_idx; + shape->mesh.indices.push_back(idx); + } + + shape->mesh.num_face_vertices.push_back( + static_cast(npolys)); + shape->mesh.material_ids.push_back(material_id); // per face + shape->mesh.smoothing_group_ids.push_back( + face.smoothing_group_id); // per face + } + } + + shape->name = name; + shape->mesh.tags = tags; + + return true; +} + +// Split a string with specified delimiter character. +// http://stackoverflow.com/questions/236129/split-a-string-in-c +static void SplitString(const std::string &s, char delim, + std::vector &elems) { + std::stringstream ss; + ss.str(s); + std::string item; + while (std::getline(ss, item, delim)) { + elems.push_back(item); + } +} + +void LoadMtl(std::map *material_map, + std::vector *materials, std::istream *inStream, + std::string *warning) { + // Create a default material anyway. + material_t material; + InitMaterial(&material); + + // Issue 43. `d` wins against `Tr` since `Tr` is not in the MTL specification. + bool has_d = false; + bool has_tr = false; + + std::stringstream ss; + + std::string linebuf; + while (inStream->peek() != -1) { + safeGetline(*inStream, linebuf); + + // Trim trailing whitespace. + if (linebuf.size() > 0) { + linebuf = linebuf.substr(0, linebuf.find_last_not_of(" \t") + 1); + } + + // Trim newline '\r\n' or '\n' + if (linebuf.size() > 0) { + if (linebuf[linebuf.size() - 1] == '\n') + linebuf.erase(linebuf.size() - 1); + } + if (linebuf.size() > 0) { + if (linebuf[linebuf.size() - 1] == '\r') + linebuf.erase(linebuf.size() - 1); + } + + // Skip if empty line. + if (linebuf.empty()) { + continue; + } + + // Skip leading space. + const char *token = linebuf.c_str(); + token += strspn(token, " \t"); + + assert(token); + if (token[0] == '\0') continue; // empty line + + if (token[0] == '#') continue; // comment line + + // new mtl + if ((0 == strncmp(token, "newmtl", 6)) && IS_SPACE((token[6]))) { + // flush previous material. + if (!material.name.empty()) { + material_map->insert(std::pair( + material.name, static_cast(materials->size()))); + materials->push_back(material); + } + + // initial temporary material + InitMaterial(&material); + + has_d = false; + has_tr = false; + + // set new mtl name + token += 7; + { + std::stringstream sstr; + sstr << token; + material.name = sstr.str(); + } + continue; + } + + // ambient + if (token[0] == 'K' && token[1] == 'a' && IS_SPACE((token[2]))) { + token += 2; + real_t r, g, b; + parseReal3(&r, &g, &b, &token); + material.ambient[0] = r; + material.ambient[1] = g; + material.ambient[2] = b; + continue; + } + + // diffuse + if (token[0] == 'K' && token[1] == 'd' && IS_SPACE((token[2]))) { + token += 2; + real_t r, g, b; + parseReal3(&r, &g, &b, &token); + material.diffuse[0] = r; + material.diffuse[1] = g; + material.diffuse[2] = b; + continue; + } + + // specular + if (token[0] == 'K' && token[1] == 's' && IS_SPACE((token[2]))) { + token += 2; + real_t r, g, b; + parseReal3(&r, &g, &b, &token); + material.specular[0] = r; + material.specular[1] = g; + material.specular[2] = b; + continue; + } + + // transmittance + if ((token[0] == 'K' && token[1] == 't' && IS_SPACE((token[2]))) || + (token[0] == 'T' && token[1] == 'f' && IS_SPACE((token[2])))) { + token += 2; + real_t r, g, b; + parseReal3(&r, &g, &b, &token); + material.transmittance[0] = r; + material.transmittance[1] = g; + material.transmittance[2] = b; + continue; + } + + // ior(index of refraction) + if (token[0] == 'N' && token[1] == 'i' && IS_SPACE((token[2]))) { + token += 2; + material.ior = parseReal(&token); + continue; + } + + // emission + if (token[0] == 'K' && token[1] == 'e' && IS_SPACE(token[2])) { + token += 2; + real_t r, g, b; + parseReal3(&r, &g, &b, &token); + material.emission[0] = r; + material.emission[1] = g; + material.emission[2] = b; + continue; + } + + // shininess + if (token[0] == 'N' && token[1] == 's' && IS_SPACE(token[2])) { + token += 2; + material.shininess = parseReal(&token); + continue; + } + + // illum model + if (0 == strncmp(token, "illum", 5) && IS_SPACE(token[5])) { + token += 6; + material.illum = parseInt(&token); + continue; + } + + // dissolve + if ((token[0] == 'd' && IS_SPACE(token[1]))) { + token += 1; + material.dissolve = parseReal(&token); + + if (has_tr) { + ss << "WARN: Both `d` and `Tr` parameters defined for \"" + << material.name << "\". Use the value of `d` for dissolve." + << std::endl; + } + has_d = true; + continue; + } + if (token[0] == 'T' && token[1] == 'r' && IS_SPACE(token[2])) { + token += 2; + if (has_d) { + // `d` wins. Ignore `Tr` value. + ss << "WARN: Both `d` and `Tr` parameters defined for \"" + << material.name << "\". Use the value of `d` for dissolve." + << std::endl; + } else { + // We invert value of Tr(assume Tr is in range [0, 1]) + // NOTE: Interpretation of Tr is application(exporter) dependent. For + // some application(e.g. 3ds max obj exporter), Tr = d(Issue 43) + material.dissolve = static_cast(1.0) - parseReal(&token); + } + has_tr = true; + continue; + } + + // PBR: roughness + if (token[0] == 'P' && token[1] == 'r' && IS_SPACE(token[2])) { + token += 2; + material.roughness = parseReal(&token); + continue; + } + + // PBR: metallic + if (token[0] == 'P' && token[1] == 'm' && IS_SPACE(token[2])) { + token += 2; + material.metallic = parseReal(&token); + continue; + } + + // PBR: sheen + if (token[0] == 'P' && token[1] == 's' && IS_SPACE(token[2])) { + token += 2; + material.sheen = parseReal(&token); + continue; + } + + // PBR: clearcoat thickness + if (token[0] == 'P' && token[1] == 'c' && IS_SPACE(token[2])) { + token += 2; + material.clearcoat_thickness = parseReal(&token); + continue; + } + + // PBR: clearcoat roughness + if ((0 == strncmp(token, "Pcr", 3)) && IS_SPACE(token[3])) { + token += 4; + material.clearcoat_roughness = parseReal(&token); + continue; + } + + // PBR: anisotropy + if ((0 == strncmp(token, "aniso", 5)) && IS_SPACE(token[5])) { + token += 6; + material.anisotropy = parseReal(&token); + continue; + } + + // PBR: anisotropy rotation + if ((0 == strncmp(token, "anisor", 6)) && IS_SPACE(token[6])) { + token += 7; + material.anisotropy_rotation = parseReal(&token); + continue; + } + + // ambient texture + if ((0 == strncmp(token, "map_Ka", 6)) && IS_SPACE(token[6])) { + token += 7; + ParseTextureNameAndOption(&(material.ambient_texname), + &(material.ambient_texopt), token, + /* is_bump */ false); + continue; + } + + // diffuse texture + if ((0 == strncmp(token, "map_Kd", 6)) && IS_SPACE(token[6])) { + token += 7; + ParseTextureNameAndOption(&(material.diffuse_texname), + &(material.diffuse_texopt), token, + /* is_bump */ false); + continue; + } + + // specular texture + if ((0 == strncmp(token, "map_Ks", 6)) && IS_SPACE(token[6])) { + token += 7; + ParseTextureNameAndOption(&(material.specular_texname), + &(material.specular_texopt), token, + /* is_bump */ false); + continue; + } + + // specular highlight texture + if ((0 == strncmp(token, "map_Ns", 6)) && IS_SPACE(token[6])) { + token += 7; + ParseTextureNameAndOption(&(material.specular_highlight_texname), + &(material.specular_highlight_texopt), token, + /* is_bump */ false); + continue; + } + + // bump texture + if ((0 == strncmp(token, "map_bump", 8)) && IS_SPACE(token[8])) { + token += 9; + ParseTextureNameAndOption(&(material.bump_texname), + &(material.bump_texopt), token, + /* is_bump */ true); + continue; + } + + // bump texture + if ((0 == strncmp(token, "map_Bump", 8)) && IS_SPACE(token[8])) { + token += 9; + ParseTextureNameAndOption(&(material.bump_texname), + &(material.bump_texopt), token, + /* is_bump */ true); + continue; + } + + // bump texture + if ((0 == strncmp(token, "bump", 4)) && IS_SPACE(token[4])) { + token += 5; + ParseTextureNameAndOption(&(material.bump_texname), + &(material.bump_texopt), token, + /* is_bump */ true); + continue; + } + + // alpha texture + if ((0 == strncmp(token, "map_d", 5)) && IS_SPACE(token[5])) { + token += 6; + material.alpha_texname = token; + ParseTextureNameAndOption(&(material.alpha_texname), + &(material.alpha_texopt), token, + /* is_bump */ false); + continue; + } + + // displacement texture + if ((0 == strncmp(token, "disp", 4)) && IS_SPACE(token[4])) { + token += 5; + ParseTextureNameAndOption(&(material.displacement_texname), + &(material.displacement_texopt), token, + /* is_bump */ false); + continue; + } + + // reflection map + if ((0 == strncmp(token, "refl", 4)) && IS_SPACE(token[4])) { + token += 5; + ParseTextureNameAndOption(&(material.reflection_texname), + &(material.reflection_texopt), token, + /* is_bump */ false); + continue; + } + + // PBR: roughness texture + if ((0 == strncmp(token, "map_Pr", 6)) && IS_SPACE(token[6])) { + token += 7; + ParseTextureNameAndOption(&(material.roughness_texname), + &(material.roughness_texopt), token, + /* is_bump */ false); + continue; + } + + // PBR: metallic texture + if ((0 == strncmp(token, "map_Pm", 6)) && IS_SPACE(token[6])) { + token += 7; + ParseTextureNameAndOption(&(material.metallic_texname), + &(material.metallic_texopt), token, + /* is_bump */ false); + continue; + } + + // PBR: sheen texture + if ((0 == strncmp(token, "map_Ps", 6)) && IS_SPACE(token[6])) { + token += 7; + ParseTextureNameAndOption(&(material.sheen_texname), + &(material.sheen_texopt), token, + /* is_bump */ false); + continue; + } + + // PBR: emissive texture + if ((0 == strncmp(token, "map_Ke", 6)) && IS_SPACE(token[6])) { + token += 7; + ParseTextureNameAndOption(&(material.emissive_texname), + &(material.emissive_texopt), token, + /* is_bump */ false); + continue; + } + + // PBR: normal map texture + if ((0 == strncmp(token, "norm", 4)) && IS_SPACE(token[4])) { + token += 5; + ParseTextureNameAndOption( + &(material.normal_texname), &(material.normal_texopt), token, + /* is_bump */ false); // @fixme { is_bump will be true? } + continue; + } + + // unknown parameter + const char *_space = strchr(token, ' '); + if (!_space) { + _space = strchr(token, '\t'); + } + if (_space) { + std::ptrdiff_t len = _space - token; + std::string key(token, static_cast(len)); + std::string value = _space + 1; + material.unknown_parameter.insert( + std::pair(key, value)); + } + } + // flush last material. + material_map->insert(std::pair( + material.name, static_cast(materials->size()))); + materials->push_back(material); + + if (warning) { + (*warning) = ss.str(); + } +} + +bool MaterialFileReader::operator()(const std::string &matId, + std::vector *materials, + std::map *matMap, + std::string *err) { + std::string filepath; + + if (!m_mtlBaseDir.empty()) { + filepath = std::string(m_mtlBaseDir) + matId; + } else { + filepath = matId; + } + + std::ifstream matIStream(filepath.c_str()); + if (!matIStream) { + std::stringstream ss; + ss << "WARN: Material file [ " << filepath << " ] not found." << std::endl; + if (err) { + (*err) += ss.str(); + } + return false; + } + + std::string warning; + LoadMtl(matMap, materials, &matIStream, &warning); + + if (!warning.empty()) { + if (err) { + (*err) += warning; + } + } + + return true; +} + +bool MaterialStreamReader::operator()(const std::string &matId, + std::vector *materials, + std::map *matMap, + std::string *err) { + (void)matId; + if (!m_inStream) { + std::stringstream ss; + ss << "WARN: Material stream in error state. " << std::endl; + if (err) { + (*err) += ss.str(); + } + return false; + } + + std::string warning; + LoadMtl(matMap, materials, &m_inStream, &warning); + + if (!warning.empty()) { + if (err) { + (*err) += warning; + } + } + + return true; +} + +bool LoadObj(attrib_t *attrib, std::vector *shapes, + std::vector *materials, std::string *err, + const char *filename, const char *mtl_basedir, bool trianglulate) { + attrib->vertices.clear(); + attrib->normals.clear(); + attrib->texcoords.clear(); + attrib->colors.clear(); + shapes->clear(); + + std::stringstream errss; + + std::ifstream ifs(filename); + if (!ifs) { + errss << "Cannot open file [" << filename << "]" << std::endl; + if (err) { + (*err) = errss.str(); + } + return false; + } + + std::string baseDir; + if (mtl_basedir) { + baseDir = mtl_basedir; + } + MaterialFileReader matFileReader(baseDir); + + return LoadObj(attrib, shapes, materials, err, &ifs, &matFileReader, + trianglulate); +} + +bool LoadObj(attrib_t *attrib, std::vector *shapes, + std::vector *materials, std::string *err, + std::istream *inStream, MaterialReader *readMatFn /*= NULL*/, + bool triangulate) { + std::stringstream errss; + + std::vector v; + std::vector vn; + std::vector vt; + std::vector vc; + std::vector tags; + std::vector faceGroup; + std::string name; + + // material + std::map material_map; + int material = -1; + + // smoothing group id + unsigned int current_smoothing_id = + 0; // Initial value. 0 means no smoothing. + + shape_t shape; + + std::string linebuf; + while (inStream->peek() != -1) { + safeGetline(*inStream, linebuf); + + // Trim newline '\r\n' or '\n' + if (linebuf.size() > 0) { + if (linebuf[linebuf.size() - 1] == '\n') + linebuf.erase(linebuf.size() - 1); + } + if (linebuf.size() > 0) { + if (linebuf[linebuf.size() - 1] == '\r') + linebuf.erase(linebuf.size() - 1); + } + + // Skip if empty line. + if (linebuf.empty()) { + continue; + } + + // Skip leading space. + const char *token = linebuf.c_str(); + token += strspn(token, " \t"); + + assert(token); + if (token[0] == '\0') continue; // empty line + + if (token[0] == '#') continue; // comment line + + // vertex + if (token[0] == 'v' && IS_SPACE((token[1]))) { + token += 2; + real_t x, y, z; + real_t r, g, b; + parseVertexWithColor(&x, &y, &z, &r, &g, &b, &token); + v.push_back(x); + v.push_back(y); + v.push_back(z); + + vc.push_back(r); + vc.push_back(g); + vc.push_back(b); + continue; + } + + // normal + if (token[0] == 'v' && token[1] == 'n' && IS_SPACE((token[2]))) { + token += 3; + real_t x, y, z; + parseReal3(&x, &y, &z, &token); + vn.push_back(x); + vn.push_back(y); + vn.push_back(z); + continue; + } + + // texcoord + if (token[0] == 'v' && token[1] == 't' && IS_SPACE((token[2]))) { + token += 3; + real_t x, y; + parseReal2(&x, &y, &token); + vt.push_back(x); + vt.push_back(y); + continue; + } + + // face + if (token[0] == 'f' && IS_SPACE((token[1]))) { + token += 2; + token += strspn(token, " \t"); + + face_t face; + + face.smoothing_group_id = current_smoothing_id; + face.vertex_indices.reserve(3); + + while (!IS_NEW_LINE(token[0])) { + vertex_index_t vi; + if (!parseTriple(&token, static_cast(v.size() / 3), + static_cast(vn.size() / 3), + static_cast(vt.size() / 2), &vi)) { + if (err) { + (*err) = "Failed parse `f' line(e.g. zero value for face index).\n"; + } + return false; + } + + face.vertex_indices.push_back(vi); + size_t n = strspn(token, " \t\r"); + token += n; + } + + // replace with emplace_back + std::move on C++11 + faceGroup.push_back(face); + + continue; + } + + // use mtl + if ((0 == strncmp(token, "usemtl", 6)) && IS_SPACE((token[6]))) { + token += 7; + std::stringstream ss; + ss << token; + std::string namebuf = ss.str(); + + int newMaterialId = -1; + if (material_map.find(namebuf) != material_map.end()) { + newMaterialId = material_map[namebuf]; + } else { + // { error!! material not found } + } + + if (newMaterialId != material) { + // Create per-face material. Thus we don't add `shape` to `shapes` at + // this time. + // just clear `faceGroup` after `exportFaceGroupToShape()` call. + exportFaceGroupToShape(&shape, faceGroup, tags, material, name, + triangulate, v); + faceGroup.clear(); + material = newMaterialId; + } + + continue; + } + + // load mtl + if ((0 == strncmp(token, "mtllib", 6)) && IS_SPACE((token[6]))) { + if (readMatFn) { + token += 7; + + std::vector filenames; + SplitString(std::string(token), ' ', filenames); + + if (filenames.empty()) { + if (err) { + (*err) += + "WARN: Looks like empty filename for mtllib. Use default " + "material. \n"; + } + } else { + bool found = false; + for (size_t s = 0; s < filenames.size(); s++) { + std::string err_mtl; + bool ok = (*readMatFn)(filenames[s].c_str(), materials, + &material_map, &err_mtl); + if (err && (!err_mtl.empty())) { + (*err) += err_mtl; // This should be warn message. + } + + if (ok) { + found = true; + break; + } + } + + if (!found) { + if (err) { + (*err) += + "WARN: Failed to load material file(s). Use default " + "material.\n"; + } + } + } + } + + continue; + } + + // group name + if (token[0] == 'g' && IS_SPACE((token[1]))) { + // flush previous face group. + bool ret = exportFaceGroupToShape(&shape, faceGroup, tags, material, name, + triangulate, v); + (void)ret; // return value not used. + + if (shape.mesh.indices.size() > 0) { + shapes->push_back(shape); + } + + shape = shape_t(); + + // material = -1; + faceGroup.clear(); + + std::vector names; + names.reserve(2); + + while (!IS_NEW_LINE(token[0])) { + std::string str = parseString(&token); + names.push_back(str); + token += strspn(token, " \t\r"); // skip tag + } + + assert(names.size() > 0); + + // names[0] must be 'g', so skip the 0th element. + if (names.size() > 1) { + name = names[1]; + } else { + name = ""; + } + + continue; + } + + // object name + if (token[0] == 'o' && IS_SPACE((token[1]))) { + // flush previous face group. + bool ret = exportFaceGroupToShape(&shape, faceGroup, tags, material, name, + triangulate, v); + if (ret) { + shapes->push_back(shape); + } + + // material = -1; + faceGroup.clear(); + shape = shape_t(); + + // @todo { multiple object name? } + token += 2; + std::stringstream ss; + ss << token; + name = ss.str(); + + continue; + } + + if (token[0] == 't' && IS_SPACE(token[1])) { + tag_t tag; + + token += 2; + + tag.name = parseString(&token); + + tag_sizes ts = parseTagTriple(&token); + + tag.intValues.resize(static_cast(ts.num_ints)); + + for (size_t i = 0; i < static_cast(ts.num_ints); ++i) { + tag.intValues[i] = parseInt(&token); + } + + tag.floatValues.resize(static_cast(ts.num_reals)); + for (size_t i = 0; i < static_cast(ts.num_reals); ++i) { + tag.floatValues[i] = parseReal(&token); + } + + tag.stringValues.resize(static_cast(ts.num_strings)); + for (size_t i = 0; i < static_cast(ts.num_strings); ++i) { + tag.stringValues[i] = parseString(&token); + } + + tags.push_back(tag); + + continue; + } + + if (token[0] == 's' && IS_SPACE(token[1])) { + // smoothing group id + token += 2; + + // skip space. + token += strspn(token, " \t"); // skip space + + if (token[0] == '\0') { + continue; + } + + if (token[0] == '\r' || token[1] == '\n') { + continue; + } + + if (strlen(token) >= 3) { + if (token[0] == 'o' && token[1] == 'f' && token[2] == 'f') { + current_smoothing_id = 0; + } + } else { + // assume number + int smGroupId = parseInt(&token); + if (smGroupId < 0) { + // parse error. force set to 0. + // FIXME(syoyo): Report warning. + current_smoothing_id = 0; + } else { + current_smoothing_id = static_cast(smGroupId); + } + } + + continue; + } // smoothing group id + + // Ignore unknown command. + } + + bool ret = exportFaceGroupToShape(&shape, faceGroup, tags, material, name, + triangulate, v); + // exportFaceGroupToShape return false when `usemtl` is called in the last + // line. + // we also add `shape` to `shapes` when `shape.mesh` has already some + // faces(indices) + if (ret || shape.mesh.indices.size()) { + shapes->push_back(shape); + } + faceGroup.clear(); // for safety + + if (err) { + (*err) += errss.str(); + } + + attrib->vertices.swap(v); + attrib->normals.swap(vn); + attrib->texcoords.swap(vt); + attrib->colors.swap(vc); + + return true; +} + +bool LoadObjWithCallback(std::istream &inStream, const callback_t &callback, + void *user_data /*= NULL*/, + MaterialReader *readMatFn /*= NULL*/, + std::string *err /*= NULL*/) { + std::stringstream errss; + + // material + std::map material_map; + int material_id = -1; // -1 = invalid + + std::vector indices; + std::vector materials; + std::vector names; + names.reserve(2); + std::string name; + std::vector names_out; + + std::string linebuf; + while (inStream.peek() != -1) { + safeGetline(inStream, linebuf); + + // Trim newline '\r\n' or '\n' + if (linebuf.size() > 0) { + if (linebuf[linebuf.size() - 1] == '\n') + linebuf.erase(linebuf.size() - 1); + } + if (linebuf.size() > 0) { + if (linebuf[linebuf.size() - 1] == '\r') + linebuf.erase(linebuf.size() - 1); + } + + // Skip if empty line. + if (linebuf.empty()) { + continue; + } + + // Skip leading space. + const char *token = linebuf.c_str(); + token += strspn(token, " \t"); + + assert(token); + if (token[0] == '\0') continue; // empty line + + if (token[0] == '#') continue; // comment line + + // vertex + if (token[0] == 'v' && IS_SPACE((token[1]))) { + token += 2; + // TODO(syoyo): Support parsing vertex color extension. + real_t x, y, z, w; // w is optional. default = 1.0 + parseV(&x, &y, &z, &w, &token); + if (callback.vertex_cb) { + callback.vertex_cb(user_data, x, y, z, w); + } + continue; + } + + // normal + if (token[0] == 'v' && token[1] == 'n' && IS_SPACE((token[2]))) { + token += 3; + real_t x, y, z; + parseReal3(&x, &y, &z, &token); + if (callback.normal_cb) { + callback.normal_cb(user_data, x, y, z); + } + continue; + } + + // texcoord + if (token[0] == 'v' && token[1] == 't' && IS_SPACE((token[2]))) { + token += 3; + real_t x, y, z; // y and z are optional. default = 0.0 + parseReal3(&x, &y, &z, &token); + if (callback.texcoord_cb) { + callback.texcoord_cb(user_data, x, y, z); + } + continue; + } + + // face + if (token[0] == 'f' && IS_SPACE((token[1]))) { + token += 2; + token += strspn(token, " \t"); + + indices.clear(); + while (!IS_NEW_LINE(token[0])) { + vertex_index_t vi = parseRawTriple(&token); + + index_t idx; + idx.vertex_index = vi.v_idx; + idx.normal_index = vi.vn_idx; + idx.texcoord_index = vi.vt_idx; + + indices.push_back(idx); + size_t n = strspn(token, " \t\r"); + token += n; + } + + if (callback.index_cb && indices.size() > 0) { + callback.index_cb(user_data, &indices.at(0), + static_cast(indices.size())); + } + + continue; + } + + // use mtl + if ((0 == strncmp(token, "usemtl", 6)) && IS_SPACE((token[6]))) { + token += 7; + std::stringstream ss; + ss << token; + std::string namebuf = ss.str(); + + int newMaterialId = -1; + if (material_map.find(namebuf) != material_map.end()) { + newMaterialId = material_map[namebuf]; + } else { + // { error!! material not found } + } + + if (newMaterialId != material_id) { + material_id = newMaterialId; + } + + if (callback.usemtl_cb) { + callback.usemtl_cb(user_data, namebuf.c_str(), material_id); + } + + continue; + } + + // load mtl + if ((0 == strncmp(token, "mtllib", 6)) && IS_SPACE((token[6]))) { + if (readMatFn) { + token += 7; + + std::vector filenames; + SplitString(std::string(token), ' ', filenames); + + if (filenames.empty()) { + if (err) { + (*err) += + "WARN: Looks like empty filename for mtllib. Use default " + "material. \n"; + } + } else { + bool found = false; + for (size_t s = 0; s < filenames.size(); s++) { + std::string err_mtl; + bool ok = (*readMatFn)(filenames[s].c_str(), &materials, + &material_map, &err_mtl); + if (err && (!err_mtl.empty())) { + (*err) += err_mtl; // This should be warn message. + } + + if (ok) { + found = true; + break; + } + } + + if (!found) { + if (err) { + (*err) += + "WARN: Failed to load material file(s). Use default " + "material.\n"; + } + } else { + if (callback.mtllib_cb) { + callback.mtllib_cb(user_data, &materials.at(0), + static_cast(materials.size())); + } + } + } + } + + continue; + } + + // group name + if (token[0] == 'g' && IS_SPACE((token[1]))) { + names.clear(); + + while (!IS_NEW_LINE(token[0])) { + std::string str = parseString(&token); + names.push_back(str); + token += strspn(token, " \t\r"); // skip tag + } + + assert(names.size() > 0); + + // names[0] must be 'g', so skip the 0th element. + if (names.size() > 1) { + name = names[1]; + } else { + name.clear(); + } + + if (callback.group_cb) { + if (names.size() > 1) { + // create const char* array. + names_out.resize(names.size() - 1); + for (size_t j = 0; j < names_out.size(); j++) { + names_out[j] = names[j + 1].c_str(); + } + callback.group_cb(user_data, &names_out.at(0), + static_cast(names_out.size())); + + } else { + callback.group_cb(user_data, NULL, 0); + } + } + + continue; + } + + // object name + if (token[0] == 'o' && IS_SPACE((token[1]))) { + // @todo { multiple object name? } + token += 2; + + std::stringstream ss; + ss << token; + std::string object_name = ss.str(); + + if (callback.object_cb) { + callback.object_cb(user_data, object_name.c_str()); + } + + continue; + } + +#if 0 // @todo + if (token[0] == 't' && IS_SPACE(token[1])) { + tag_t tag; + + token += 2; + std::stringstream ss; + ss << token; + tag.name = ss.str(); + + token += tag.name.size() + 1; + + tag_sizes ts = parseTagTriple(&token); + + tag.intValues.resize(static_cast(ts.num_ints)); + + for (size_t i = 0; i < static_cast(ts.num_ints); ++i) { + tag.intValues[i] = atoi(token); + token += strcspn(token, "/ \t\r") + 1; + } + + tag.floatValues.resize(static_cast(ts.num_reals)); + for (size_t i = 0; i < static_cast(ts.num_reals); ++i) { + tag.floatValues[i] = parseReal(&token); + token += strcspn(token, "/ \t\r") + 1; + } + + tag.stringValues.resize(static_cast(ts.num_strings)); + for (size_t i = 0; i < static_cast(ts.num_strings); ++i) { + std::stringstream ss; + ss << token; + tag.stringValues[i] = ss.str(); + token += tag.stringValues[i].size() + 1; + } + + tags.push_back(tag); + } +#endif + + // Ignore unknown command. + } + + if (err) { + (*err) += errss.str(); + } + + return true; +} + +#ifdef __clang__ +#pragma clang diagnostic pop +#endif +} // namespace tinyobj + +#endif diff --git a/example/src/vertex.glsl b/example/src/vertex.glsl index 1924553..b868a8f 100644 --- a/example/src/vertex.glsl +++ b/example/src/vertex.glsl @@ -1,15 +1,28 @@ #version 330 core -layout(location = 0) in vec3 vertexPosition_modelspace; -// Notice that the "1" here equals the "1" in glVertexAttribPointer +// These match the values in glVertexAttribPointer +layout(location = 0) in vec3 vertexPosition_model; layout(location = 1) in vec3 vertexColor; +layout(location = 2) in vec3 vertexNormal_model; +layout(location = 3) in vec2 vertexUV; +uniform mat4 M; +uniform mat4 V; uniform mat4 MVP; +out vec3 fragmentPosition_world; out vec3 fragmentColor; +out vec3 fragmentNormal_world; +out vec2 fragmentUV; void main(){ // Output position of the vertex, in clip space : MVP * position - gl_Position = MVP * vec4(vertexPosition_modelspace, 1); + gl_Position = MVP * vec4(vertexPosition_model, 1); + fragmentPosition_world = (M * vec4(vertexPosition_model, 1)).xyz; + fragmentColor = vertexColor; + + fragmentNormal_world = (M * vec4(vertexNormal_model, 0)).xyz; + + fragmentUV = vertexUV; }