diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/Asset.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/Asset.java index f96e5e40..4a4f07ae 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/Asset.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/Asset.java @@ -28,7 +28,7 @@ public enum Asset { tree_small("Models/tree_small/tree_small.obj", "Models/tree_small/tree_small_diff.png"), tree_big("Models/tree_big/tree_big.obj", "Models/tree_big/tree_big_diff.png"), turboCard, - swapCard, + swapCard("Models/swapCard/swapCard.obj", "Models/swapCard/swapCard_diff.png"), shieldCard, dice("Models/dice/dice.obj", "Models/dice/dice_diff.jpeg") ; diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/InputSynchronizer.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/InputSynchronizer.java index dafebe30..ac865a79 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/InputSynchronizer.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/InputSynchronizer.java @@ -1,5 +1,6 @@ package pp.mdga.client; +import com.jme3.collision.CollisionResult; import com.jme3.collision.CollisionResults; import com.jme3.input.InputManager; import com.jme3.input.KeyInput; @@ -74,15 +75,15 @@ public void onAction(String name, boolean isPressed, float tpf) { if(cardLayerSelect != null) { //cardSelect - cardLayerSelect.outline(); + if(cardLayerSelect.isSelectable()) gameView.getGuiHandler().selectCard(cardLayerSelect); } - if(cardLayerSelect == null && boardSelect != null) { + else if(boardSelect != null) { //boardSelect if(boardSelect instanceof PieceControl pieceControl){ if(pieceControl.isSelectable()) gameView.getBoardHandler().pieceSelect(pieceControl); } if(boardSelect instanceof NodeControl nodeControl){ -// nodeControl.outline(); +// } } else { @@ -115,6 +116,7 @@ else if (name.equals("MouseScrollDown")) { } else if (name.equals("MouseLeft") || name.equals("MouseRight") || name.equals("MouseVertical")){ hoverPiece(); + hoverCardOutline(); } } }; @@ -129,6 +131,21 @@ private T checkHover(Camera cam, Node root, Class return null; } + private T checkHoverOrtho(Camera cam, Node root, Class controlType) { + CollisionResults results = new CollisionResults(); + Vector3f mousePos = getMousePos(cam); + mousePos.setZ(cam.getLocation().getZ()); + Ray ray = new Ray(mousePos, getMousePos(cam).subtract(mousePos).normalize()); + root.collideWith(ray, results); + if (results.size() > 0) { + for(CollisionResult res : results ){ + T control = res.getGeometry().getControl(controlType); + if(control != null) return control; + } + } + return null; + } + private void hoverPiece() { if (app.getView() instanceof GameView gameView) { PieceControl control = checkPiece(); @@ -145,31 +162,24 @@ private void hoverPiece() { private void hoverCardOutline() { if (app.getView() instanceof GameView gameView) { - CardControl control = checkHover(gameView.getGuiHandler().getCardLayerCamera(), gameView.getGuiHandler().getCardLayer().getRootNode(), CardControl.class); + CardControl control = checkCard(gameView); if (control != null) { if(control != hoverCard){ - pieceOff(); + cardOff(); hoverCard = control; - hoverCard.outline(); + hoverCard.hover(); } } - else pieceOff(); + else cardOff(); } } - private void hoverAction(){ - - } - private PieceControl checkPiece(){ return checkHover(app.getCamera(), app.getRootNode(), PieceControl.class); } - - - private void outlineOff(OutlineControl outline) { - if (outline != null) outline.deOutline(); - outline = null; + private CardControl checkCard(GameView gameView){ + return checkHoverOrtho(gameView.getGuiHandler().getCardLayerCamera(), gameView.getGuiHandler().getCardLayer().getRootNode(), CardControl.class); } private void pieceOff(){ @@ -177,9 +187,16 @@ private void pieceOff(){ hoverPiece = null; } + private void cardOff(){ + if(hoverCard != null) hoverCard.hoverOff(); + hoverCard = null; + } + private Vector3f getMousePos(Camera cam){ Vector2f mousePositionScreen = inputManager.getCursorPosition(); - return cam.getWorldCoordinates(mousePositionScreen, 0); + Vector3f world = cam.getWorldCoordinates(mousePositionScreen, 0); + if (cam.isParallelProjection()) world.setZ(0); + return world; } public float getRotation() { diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/MdgaApp.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/MdgaApp.java index f354f693..934c38a8 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/MdgaApp.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/MdgaApp.java @@ -54,9 +54,6 @@ public void simpleInitApp() { modelSyncronizer = new ModelSyncronizer(this); inputManager.deleteMapping("SIMPLEAPP_Exit"); - inputManager.deleteMapping("FLYCAM_ZoomIn"); - inputManager.deleteMapping("FLYCAM_ZoomOut"); - inputManager.deleteMapping("FLYCAM_RotateDrag"); flyCam.setEnabled(false); GuiGlobals.initialize(this); @@ -85,9 +82,9 @@ public void simpleInitApp() { notificationSynchronizer.addTestNotification(new MovePieceNotification(player0_1, 20, 21)); notificationSynchronizer.addTestNotification(new MovePieceNotification(player1, 0, true)); notificationSynchronizer.addTestNotification(new MovePieceNotification(player0, 0, 7)); -// notificationSynchronizer.addTestNotification(new SelectableMoveNotification(new ArrayList<>(List.of(player0, player1)), new ArrayList<>(List.of(7,3)), new ArrayList<>(List.of(false, false)))); - notificationSynchronizer.addTestNotification(new SwapPieceNotification(player0, player0_1)); -// notificationSynchronizer.addTestNotification(new SelectableSwapNotification(new ArrayList<>(List.of(player0, player1)), new ArrayList<>(List.of(player0_1)))); +// notificationSynchronizer.addTestNotification(new SelectableMoveNotification(new ArrayList<>(List.of(player0, player1)), new ArrayList<>(List.of(7,3)), new ArrayList<>(List.of(false, true)))); +// notificationSynchronizer.addTestNotification(new SwapPieceNotification(player0, player0_1)); + notificationSynchronizer.addTestNotification(new SelectableSwapNotification(new ArrayList<>(List.of(player0, player1)), new ArrayList<>(List.of(player0_1)))); } @Override diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/board/BoardHandler.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/board/BoardHandler.java index bd6f3e6e..59295d7f 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/board/BoardHandler.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/board/BoardHandler.java @@ -449,10 +449,12 @@ else if(selectableEnemyPieces.contains(pieceSelected)) { public void clearSelectable(){ for(PieceControl p : selectableEnemyPieces) { p.unSelect(); + p.unHighlight(); p.setSelectable(false); } for(PieceControl p : selectableOwnPieces) { p.unSelect(); + p.unHighlight(); p.setSelectable(false); } selectableEnemyPieces.clear(); diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/board/OutlineControl.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/board/OutlineControl.java index c01df106..385d1007 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/board/OutlineControl.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/board/OutlineControl.java @@ -5,6 +5,7 @@ import com.jme3.renderer.Camera; import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; +import com.jme3.scene.Spatial; import com.jme3.scene.control.AbstractControl; import pp.mdga.client.MdgaApp; import pp.mdga.client.board.Outline.SelectObjectOutliner; @@ -12,17 +13,21 @@ public class OutlineControl extends AbstractControl { private static final int THICKNESS_DEFAULT = 6; private final SelectObjectOutliner outlineOwn; + private MdgaApp app; public OutlineControl(MdgaApp app, FilterPostProcessor fpp){ + this.app = app; outlineOwn = new SelectObjectOutliner(THICKNESS_DEFAULT, fpp, app.getRenderManager(), app.getAssetManager(), app.getCamera()); } public OutlineControl(MdgaApp app, FilterPostProcessor fpp, Camera cam){ + this.app = app; outlineOwn = new SelectObjectOutliner(THICKNESS_DEFAULT, fpp, app.getRenderManager(), app.getAssetManager(), cam); } public OutlineControl(MdgaApp app, FilterPostProcessor fpp, Camera cam, int thickness){ + this.app = app; outlineOwn = new SelectObjectOutliner(thickness, fpp, app.getRenderManager(), app.getAssetManager(), cam); } @@ -48,4 +53,23 @@ protected void controlUpdate(float tpf) { protected void controlRender(RenderManager rm, ViewPort vp) { } + + public void initSpatial(){ + + } + + @Override + public void setSpatial(Spatial spatial){ + if(this.spatial == null && spatial != null){ + super.setSpatial(spatial); + initSpatial(); + } + else{ + super.setSpatial(spatial); + } + } + + public MdgaApp getApp() { + return app; + } } diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/board/PieceControl.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/board/PieceControl.java index a82c359d..7cb5a6ec 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/board/PieceControl.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/board/PieceControl.java @@ -32,9 +32,9 @@ public class PieceControl extends OutlineControl { private static final ColorRGBA OUTLINE_ENEMY_HOVER_COLOR = ColorRGBA.Green; private static final ColorRGBA OUTLINE_OWN_SELECT_COLOR = ColorRGBA.Cyan; private static final ColorRGBA OUTLINE_ENEMY_SELECT_COLOR = ColorRGBA.Orange; - private static final int OUTLINE_HIGHLIGHT_WIDTH = 6; - private static final int OUTLINE_HOVER_WIDTH = 6; - private static final int OUTLINE_SELECT_WIDTH = 8; + private static final int OUTLINE_HIGHLIGHT_WIDTH = 8; + private static final int OUTLINE_HOVER_WIDTH = 8; + private static final int OUTLINE_SELECT_WIDTH = 10; private final Node parentNode; private boolean enemy; @@ -87,16 +87,6 @@ public void setLocation(Vector3f loc){ } @Override - public void setSpatial(Spatial spatial){ - if(this.spatial == null && spatial != null){ - super.setSpatial(spatial); - initSpatial(); - } - else{ - super.setSpatial(spatial); - } - } - public void initSpatial(){ setRotation(this.initRotation); @@ -143,8 +133,6 @@ public Material getMaterial(){ return ((Geometry) getSpatial()).getMaterial(); } - - //highlight own/enemy figure to select public void highlight(boolean enemy) { this.enemy = enemy; highlight = true; @@ -153,9 +141,9 @@ public void highlight(boolean enemy) { public void unHighlight(){ highlight = false; + deOutline(); } - public void hover(){ if(!hoverable) return; super.outline(enemy ? OUTLINE_ENEMY_HOVER_COLOR : OUTLINE_OWN_HOVER_COLOR, OUTLINE_HOVER_WIDTH); @@ -194,8 +182,4 @@ public boolean isSelectable() { public void setHoverable(boolean hoverable) { this.hoverable = hoverable; } - - public void deOutline() { - super.deOutline(); - } } diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/CardControl.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/CardControl.java index 1568e2fd..b5bf8767 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/CardControl.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/CardControl.java @@ -1,24 +1,145 @@ package pp.mdga.client.gui; +import com.jme3.font.BitmapFont; +import com.jme3.font.BitmapText; +import com.jme3.material.Material; import com.jme3.math.ColorRGBA; +import com.jme3.math.Vector3f; import com.jme3.post.FilterPostProcessor; import com.jme3.renderer.Camera; import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; +import com.jme3.scene.Geometry; +import com.jme3.scene.Node; import com.jme3.scene.control.AbstractControl; +import com.jme3.scene.shape.Box; +import com.jme3.scene.shape.Cylinder; +import com.jme3.scene.shape.Sphere; import pp.mdga.client.MdgaApp; import pp.mdga.client.board.OutlineControl; +import java.awt.*; + public class CardControl extends OutlineControl { private static final ColorRGBA OUTLINE_COLOR = ColorRGBA.Yellow; - private static final int OUTLINE_THICKNESS = 9; - public CardControl(MdgaApp app, FilterPostProcessor fpp, Camera cam){ + private static final ColorRGBA HIGHLIGHT_COLOR = ColorRGBA.Yellow; + private static final int HIGHLIGHT_WIDTH = 9; + + private static final ColorRGBA HOVER_COLOR = ColorRGBA.Green; + private static final int HOVER_WIDTH = 12; + + private static final ColorRGBA SELECT_COLOR = ColorRGBA.Blue; + private static final int SELECT_WIDTH = 13; + + + private static final int OUTLINE_THICKNESS = 9; + private boolean hoverable; + private boolean highlight; + private boolean selectable; + private boolean select; + private Node root; + private BitmapText num; + + public CardControl(MdgaApp app, FilterPostProcessor fpp, Camera cam, Node root){ super(app, fpp, cam, OUTLINE_THICKNESS); + this.root = root; + + + Node rootNum = createNum(); + rootNum.setLocalTranslation(new Vector3f(0.35f,0.8f,0)); + root.attachChild(rootNum); } + private Node createNum(){ + Node rootNum = new Node("root Num"); + Geometry circle = new Geometry("circle", new Sphere(20,20,1)); + circle.setLocalTranslation(new Vector3f(0.01f,0.01f,1)); + circle.setLocalScale(0.2f); + Material mat = new Material(getApp().getAssetManager(), "Common/MatDefs/Misc/Unshaded.j3md"); + mat.setColor("Color", ColorRGBA.Black); + circle.setMaterial(mat); + root.attachChild(circle); + BitmapFont guiFont = getApp().getAssetManager().loadFont("Fonts/Gunplay.fnt"); + num = new BitmapText(guiFont); + num.setSize(0.3f); + num.setText("1"); + num.setColor(ColorRGBA.White); + num.setLocalTranslation(-num.getLineWidth() / 2, num.getHeight() / 2, 2); + rootNum.attachChild(circle); + rootNum.attachChild(num); + return rootNum; + } + + public void setNumCard(int num){ + this.num.setText(String.valueOf(num)); + } + + public Node getRoot() { + return root; + } + + @Override + public void initSpatial(){ + } + + + + public void outline(){ super.outline(OUTLINE_COLOR); } + + public void highlight() { + highlight = true; + super.outline(HIGHLIGHT_COLOR, HIGHLIGHT_WIDTH); + } + + public void unHighlight(){ + highlight = false; + deOutline(); + } + + public void hover(){ + if(!hoverable) return; + super.outline(HOVER_COLOR, HOVER_WIDTH); + } + + public void hoverOff(){ + if(!hoverable) return; + + if(select) select(); + else if(highlight) highlight(); + else deOutline(); + } + + public void select(){ + if(!selectable) return; + select = true; + super.outline(SELECT_COLOR, SELECT_WIDTH); + } + + public void unSelect(){ + if(!selectable) return; + select = false; + if(highlight) highlight(); + else deOutline(); + } + + public void setSelectable(boolean selectable){ + this.selectable = selectable; + } + + public boolean isSelected() { + return select; + } + + public boolean isSelectable() { + return selectable; + } + + public void setHoverable(boolean hoverable) { + this.hoverable = hoverable; + } } diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/CardLayer.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/CardLayer.java index 4ae4ee42..eccfedd1 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/CardLayer.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/CardLayer.java @@ -3,7 +3,9 @@ import com.jme3.app.Application; import com.jme3.app.state.AbstractAppState; import com.jme3.app.state.AppStateManager; +import com.jme3.light.DirectionalLight; import com.jme3.material.Material; +import com.jme3.math.ColorRGBA; import com.jme3.math.Vector3f; import com.jme3.post.FilterPostProcessor; import com.jme3.post.filters.ComposeFilter; @@ -12,6 +14,9 @@ import com.jme3.renderer.ViewPort; import com.jme3.scene.Node; import com.jme3.scene.Spatial; +import com.jme3.shadow.DirectionalLightShadowFilter; +import com.jme3.shadow.DirectionalLightShadowRenderer; +import com.jme3.shadow.EdgeFilteringMode; import com.jme3.texture.Image; import com.jme3.texture.Texture2D; import pp.mdga.client.Asset; @@ -48,6 +53,24 @@ public void initialize(AppStateManager stateManager, Application app ) { view.attachScene(root); fpp.setFrameBufferFormat(Image.Format.RGBA8); fpp.addFilter(new ComposeFilter(backTexture)); + + + DirectionalLight sun = new DirectionalLight(); + sun.setColor(ColorRGBA.White); + sun.setDirection(new Vector3f(1,-1,-1)); + root.addLight(sun); + + final int SHADOWMAP_SIZE=1024*8; +// DirectionalLightShadowRenderer dlsr = new DirectionalLightShadowRenderer(app.getAssetManager(), SHADOWMAP_SIZE, 4); +// dlsr.setLight(sun); +// view.addProcessor(dlsr); + + DirectionalLightShadowFilter dlsf = new DirectionalLightShadowFilter(app.getAssetManager(), SHADOWMAP_SIZE, 3); + dlsf.setLight(sun); + dlsf.setEnabled(true); + dlsf.setEdgeFilteringMode(EdgeFilteringMode.PCFPOISSON); + fpp.addFilter(dlsf); + view.addProcessor(fpp); if(!init) init = true; diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/DiceControl.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/DiceControl.java index 54ed3cba..6e6fad45 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/DiceControl.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/DiceControl.java @@ -10,9 +10,9 @@ public class DiceControl extends AbstractControl { private final Random random = new Random(); - private Quaternion targetRotation; // Final rotation of the dice - private final Vector3f angularVelocity = new Vector3f(); // Rotational velocity (radians/sec) - private float deceleration = 0.5f; // Friction-like deceleration + private Quaternion targetRotation; + private final Vector3f angularVelocity = new Vector3f(); + private float deceleration = 0.5f; private boolean isRolling = false; private boolean slerp = false; private float timeElapsed = 0.0f; @@ -47,9 +47,6 @@ protected void controlUpdate(float tpf) { if (timeElapsed > 1.0f) timeElapsed = 1.0f; -// Quaternion interpolated = new Quaternion(); -// interpolated.slerp(spatial.getLocalRotation(), targetRotation, progress); -// spatial.setLocalRotation(interpolated); Quaternion interpolated = spatial.getLocalRotation().clone(); interpolated.nlerp(targetRotation, lerp(timeElapsed)); spatial.setLocalRotation(interpolated); @@ -59,41 +56,36 @@ protected void controlUpdate(float tpf) { isRolling = false; slerp = false; } - } } } @Override protected void controlRender(RenderManager rm, ViewPort vp) { - // No custom rendering needed } public void rollDice(int diceNum) { - if (isRolling) return; // Prevent re-rolling during animation + if (isRolling) return; - // Set high initial rotational velocity angularVelocity.set( - random.nextFloat() * 1000f + 200f, // X-axis speed - random.nextFloat() * 1000f + 200f, // Y-axis speed - random.nextFloat() * 1000f + 200f // Z-axis speed + random.nextFloat() * 1000f + 100f, + random.nextFloat() * 1000f + 100f, + random.nextFloat() * 1000f + 100f ); - // Set final target rotation for the diceNum targetRotation = getRotationForDiceNum(diceNum); isRolling = true; } private Quaternion getRotationForDiceNum(int diceNum) { - // Define specific rotations for each dice face (adjust based on your dice model) return switch (diceNum) { - case 1 -> new Quaternion().fromAngleAxis((float) (1 * (Math.PI / 2)), Vector3f.UNIT_X); // - case 2 -> new Quaternion().fromAngleAxis((float) (1 * (Math.PI / 2)), Vector3f.UNIT_Y); // - case 3 -> new Quaternion().fromAngleAxis((float) (0 * (Math.PI / 2)), Vector3f.UNIT_X); // - case 4 -> new Quaternion().fromAngleAxis((float) (2 * (Math.PI / 2)), Vector3f.UNIT_Y); // - case 5 -> new Quaternion().fromAngleAxis((float) (3 * (Math.PI / 2)), Vector3f.UNIT_Y); // - case 6 -> new Quaternion().fromAngleAxis((float) (3 * (Math.PI / 2)), Vector3f.UNIT_X); // + case 1 -> new Quaternion().fromAngleAxis((float) (1 * (Math.PI / 2)), Vector3f.UNIT_X); + case 2 -> new Quaternion().fromAngleAxis((float) (1 * (Math.PI / 2)), Vector3f.UNIT_Y); + case 3 -> new Quaternion().fromAngleAxis((float) (0 * (Math.PI / 2)), Vector3f.UNIT_X); + case 4 -> new Quaternion().fromAngleAxis((float) (2 * (Math.PI / 2)), Vector3f.UNIT_Y); + case 5 -> new Quaternion().fromAngleAxis((float) (3 * (Math.PI / 2)), Vector3f.UNIT_Y); + case 6 -> new Quaternion().fromAngleAxis((float) (3 * (Math.PI / 2)), Vector3f.UNIT_X); default -> throw new IllegalArgumentException("Invalid dice number: " + diceNum); }; } diff --git a/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/GuiHandler.java b/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/GuiHandler.java index 18069a62..b763634b 100644 --- a/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/GuiHandler.java +++ b/Projekte/mdga/client/src/main/java/pp/mdga/client/gui/GuiHandler.java @@ -7,6 +7,7 @@ import com.jme3.math.Vector3f; import com.jme3.post.FilterPostProcessor; import com.jme3.renderer.Camera; +import com.jme3.renderer.queue.RenderQueue; import com.jme3.scene.Node; import com.jme3.scene.Spatial; import com.jme3.texture.Texture2D; @@ -22,7 +23,9 @@ public class GuiHandler { private MdgaApp app; private CardLayer cardLayer; - private Map ownCardsMap; + private Map uuidBonusCardMap; + private Map bonusCardControlMap; + private Map bonusCardIntegerMap; private BitmapFont playerFont; private Node playerNameNode; private List playerOrder; @@ -34,23 +37,30 @@ public class GuiHandler { private final FilterPostProcessor fpp; Texture2D backTexture; private Camera cardLayerCamera; + private DiceControl diceControl; + + private Set selectableCards = new HashSet<>(); + private BonusCard cardSelect = null; public GuiHandler(MdgaApp app, Texture2D backTexture) { this.app = app; this.fpp = new FilterPostProcessor(app.getAssetManager()); this.backTexture = backTexture; cardLayerCamera = createOverlayCam(); + uuidBonusCardMap = new HashMap<>(); + bonusCardIntegerMap = new HashMap<>(); + bonusCardControlMap = new HashMap<>(); } public void init(){ cardLayer = new CardLayer(fpp, cardLayerCamera, backTexture); app.getStateManager().attach(cardLayer); - ownCardsMap = new HashMap<>(); playerFont = app.getAssetManager().loadFont("Fonts/Gunplay.fnt"); playerNameNode = new Node("player name node"); app.getGuiNode().attachChild(playerNameNode); playerOrder = new ArrayList<>(); colorNameMap = new HashMap<>(); + diceControl = createDice(); } @@ -60,7 +70,6 @@ public void shutdown(){ } cardLayer = null; - ownCardsMap = null; } private Asset bonusToAsset(BonusCard card){ @@ -73,15 +82,29 @@ private Asset bonusToAsset(BonusCard card){ } public void addCard(BonusCard card, UUID uuid) { - CardControl control = createCard(bonusToAsset(card), nextPos()); - ownCardsMap.put(uuid, control); - cardLayer.addSpatial(control.getSpatial()); + if(card == BonusCard.HIDDEN) throw new RuntimeException("cant add hidden card to gui"); + + uuidBonusCardMap.put(uuid, card); + if(!bonusCardControlMap.containsKey(card)) { + CardControl control = createCard(bonusToAsset(card), nextPos()); + bonusCardControlMap.put(card, control); + cardLayer.addSpatial(control.getRoot()); + } + + int newNum = bonusCardIntegerMap.getOrDefault(card,0) + 1; + bonusCardIntegerMap.put(card, newNum); + bonusCardControlMap.get(card).setNumCard(newNum); } - public void showDice(){ - DiceControl control = createDice(); - cardLayer.addSpatial(control.getSpatial()); - control.rollDice(1); + public void showDice(int rollNum){ + if(!(1 <= rollNum && rollNum <= 6)) throw new RuntimeException("rollNum is not in the range [1,6]"); + + cardLayer.addSpatial(diceControl.getSpatial()); + diceControl.rollDice(rollNum); + } + + public void hideDice(){ + cardLayer.deleteSpatial(diceControl.getSpatial()); } private DiceControl createDice() { @@ -97,26 +120,23 @@ private DiceControl createDice() { return control; } - public void deleteCard(UUID uuid){ - if(!ownCardsMap.containsKey(uuid)) throw new RuntimeException("uuid dont exist in ownCardsmap"); - - cardLayer.deleteSpatial(ownCardsMap.get(uuid).getSpatial()); - ownCardsMap.remove(uuid); - } - private Vector3f nextPos() { - return START.add(MARGIN.mult(ownCardsMap.size())); + return START.add(MARGIN.mult(bonusCardControlMap.size())); } private CardControl createCard(Asset card, Vector3f pos){ + Node rootCard = new Node("Root Card"); Spatial spatial = app.getAssetManager().loadModel(card.getModelPath()); - Material mat = new Material(app.getAssetManager(), "Common/MatDefs/Misc/Unshaded.j3md"); - mat.setTexture("ColorMap", app.getAssetManager().loadTexture(card.getDiffPath())); + rootCard.attachChild(spatial); + Material mat = new Material(app.getAssetManager(), "Common/MatDefs/Light/Lighting.j3md"); + mat.setTexture("DiffuseMap", app.getAssetManager().loadTexture(card.getDiffPath())); spatial.setMaterial(mat); spatial.setLocalScale(1f); + rootCard.setLocalTranslation(pos); spatial.setLocalTranslation(pos); spatial.rotate((float)Math.toRadians(90), (float)Math.toRadians(180), (float)Math.toRadians(180)); - CardControl control = new CardControl(app, fpp, cardLayer.getOverlayCam()); + spatial.setShadowMode(RenderQueue.ShadowMode.CastAndReceive); + CardControl control = new CardControl(app, fpp, cardLayer.getOverlayCam(), rootCard); spatial.addControl(control); return control; } @@ -178,9 +198,13 @@ public void setActivePlayer(Color color){ private Camera createOverlayCam(){ Camera originalCam = app.getCamera(); Camera overlayCam = new Camera(originalCam.getWidth(), originalCam.getHeight()); - overlayCam.setParallelProjection(false); - overlayCam.setFrustum(originalCam.getFrustumNear(), originalCam.getFrustumFar(), originalCam.getFrustumLeft(), originalCam.getFrustumRight(),originalCam.getFrustumTop(), originalCam.getFrustumBottom()); - overlayCam.setFov(originalCam.getFov()); + overlayCam.setParallelProjection(true); +// overlayCam.setFrustum(originalCam.getFrustumNear(), originalCam.getFrustumFar(), originalCam.getFrustumLeft(), originalCam.getFrustumRight(),originalCam.getFrustumTop(), originalCam.getFrustumBottom()); + float CAMERA_ZOOM = 4; + float aspect = (float) originalCam.getWidth() / originalCam.getHeight(); + float size = CAMERA_ZOOM; + overlayCam.setFrustum(-1000, 1000, -aspect * size, aspect * size, size, -size); +// overlayCam.setFov(originalCam.getFov()); overlayCam.setLocation(new Vector3f(0, 0, 10)); overlayCam.lookAt(new Vector3f(0,0,0), Vector3f.UNIT_Y); return overlayCam; @@ -189,10 +213,12 @@ private Camera createOverlayCam(){ public void test(){ UUID uuid = UUID.randomUUID(); addCard(BonusCard.SHIELD, uuid); + addCard(BonusCard.SHIELD, UUID.randomUUID()); addCard(BonusCard.TURBO, UUID.randomUUID()); addCard(BonusCard.SWAP, UUID.randomUUID()); - showDice(); + setSelectableCards(List.of(uuid)); + clearSelectableCards(); } public Camera getCardLayerCamera() { @@ -204,4 +230,52 @@ public CardLayer getCardLayer(){ } + public void setSelectableCards(List selectUuids) { + for(UUID uuid : selectUuids) { + selectableCards.add(bonusCardControlMap.get(uuidBonusCardMap.get(uuid))); + } + for(CardControl control : selectableCards){ + control.setSelectable(true); + control.setHoverable(true); + control.highlight(); + } + } + + public void clearSelectableCards(){ + for(CardControl control : selectableCards){ + control.setSelectable(false); + control.setHoverable(false); + control.unHighlight(); + control.unSelect(); + } + selectableCards.clear(); + cardSelect = null; + } + + + public void selectCard(CardControl cardControl) { + if(cardControl.isSelected()) { + cardControl.unSelect(); + cardSelect = null; + } + else { + for (CardControl control : selectableCards){ + control.unSelect(); + } + cardControl.select(); + cardSelect = getKeyByValue(bonusCardControlMap, cardControl); + } + + } + + public static K getKeyByValue(Map map, V value) { + for (Map.Entry entry : map.entrySet()) { + if (entry.getValue().equals(value)) { + return entry.getKey(); + } + } + return null; // Key not found + } + + } diff --git a/Projekte/mdga/client/src/main/resources/Models/swapCard/swapCard.obj b/Projekte/mdga/client/src/main/resources/Models/swapCard/swapCard.obj new file mode 100644 index 00000000..24666d88 --- /dev/null +++ b/Projekte/mdga/client/src/main/resources/Models/swapCard/swapCard.obj @@ -0,0 +1,2750 @@ +# Blender 3.6.5 +# www.blender.org +o Change +v -0.000000 0.047599 -1.047019 +v -0.000000 0.047605 1.047019 +v 0.666174 0.047600 -0.769940 +v 0.389095 0.047599 -1.047019 +v 0.656733 0.047600 -0.841653 +v 0.629052 0.047599 -0.908480 +v 0.585019 0.047599 -0.965865 +v 0.527634 0.047599 -1.009897 +v 0.460808 0.047599 -1.037578 +v 0.389095 0.047605 1.047019 +v 0.666174 0.047604 0.769940 +v 0.460808 0.047605 1.037578 +v 0.527634 0.047605 1.009897 +v 0.585019 0.047605 0.965864 +v 0.629052 0.047605 0.908479 +v 0.656733 0.047605 0.841653 +v 0.000000 -0.000003 -1.008562 +v -0.000000 0.000003 1.008562 +v 0.627717 -0.000002 -0.767420 +v 0.386574 -0.000003 -1.008562 +v 0.619266 -0.000002 -0.831614 +v 0.595460 -0.000003 -0.889085 +v 0.557592 -0.000003 -0.938437 +v 0.508240 -0.000003 -0.976306 +v 0.450769 -0.000003 -1.000111 +v 0.386574 0.000003 1.008562 +v 0.627717 0.000002 0.767420 +v 0.450769 0.000003 1.000111 +v 0.508240 0.000003 0.976305 +v 0.557592 0.000003 0.938437 +v 0.595460 0.000003 0.889085 +v 0.619266 0.000002 0.831614 +v 0.000000 -0.038626 -1.008562 +v 0.000000 -0.000003 -1.047019 +v -0.000000 0.000003 1.047019 +v 0.389095 -0.000003 -1.047019 +v 0.460808 -0.000003 -1.037578 +v 0.527634 -0.000003 -1.009897 +v 0.585019 -0.000003 -0.965865 +v 0.629052 -0.000003 -0.908480 +v 0.656733 -0.000002 -0.841653 +v 0.666174 -0.000002 -0.769940 +v 0.666174 0.000002 0.769940 +v 0.656733 0.000003 0.841653 +v 0.629052 0.000003 0.908479 +v 0.585019 0.000003 0.965864 +v 0.527634 0.000003 1.009897 +v 0.460808 0.000003 1.037578 +v 0.389095 0.000003 1.047019 +v 0.000000 -0.038620 1.008562 +v 0.627717 -0.038625 -0.767420 +v 0.386574 -0.038626 -1.008562 +v 0.619266 -0.038625 -0.831614 +v 0.595460 -0.038626 -0.889085 +v 0.557592 -0.038626 -0.938437 +v 0.508240 -0.038626 -0.976306 +v 0.450769 -0.038626 -1.000111 +v 0.386574 -0.038620 1.008562 +v 0.627717 -0.038621 0.767420 +v 0.450769 -0.038620 1.000111 +v 0.508240 -0.038620 0.976305 +v 0.557592 -0.038620 0.938437 +v 0.595460 -0.038620 0.889085 +v 0.619266 -0.038621 0.831614 +v 0.000000 -0.038626 -1.047019 +v 0.000000 -0.038620 1.047019 +v 0.389095 -0.038626 -1.047019 +v 0.460808 -0.038626 -1.037578 +v 0.527634 -0.038626 -1.009897 +v 0.585019 -0.038626 -0.965865 +v 0.629052 -0.038626 -0.908480 +v 0.656733 -0.038625 -0.841653 +v 0.666174 -0.038625 -0.769940 +v 0.666174 -0.038621 0.769940 +v 0.656733 -0.038620 0.841653 +v 0.629052 -0.038620 0.908479 +v 0.585019 -0.038620 0.965864 +v 0.527634 -0.038620 1.009897 +v 0.460808 -0.038620 1.037578 +v 0.389095 -0.038620 1.047019 +v -0.666174 0.047600 -0.769940 +v -0.389095 0.047599 -1.047019 +v -0.656733 0.047599 -0.841653 +v -0.629052 0.047599 -0.908480 +v -0.585019 0.047599 -0.965865 +v -0.527634 0.047599 -1.009897 +v -0.460808 0.047599 -1.037578 +v -0.389095 0.047605 1.047019 +v -0.666174 0.047604 0.769940 +v -0.460808 0.047605 1.037578 +v -0.527634 0.047605 1.009897 +v -0.585019 0.047605 0.965864 +v -0.629052 0.047605 0.908479 +v -0.656733 0.047604 0.841653 +v -0.627717 -0.000002 -0.767420 +v -0.386574 -0.000003 -1.008562 +v -0.619266 -0.000002 -0.831614 +v -0.595460 -0.000003 -0.889085 +v -0.557592 -0.000003 -0.938437 +v -0.508240 -0.000003 -0.976306 +v -0.450769 -0.000003 -1.000111 +v -0.386574 0.000003 1.008562 +v -0.627717 0.000002 0.767420 +v -0.450769 0.000003 1.000111 +v -0.508240 0.000003 0.976305 +v -0.557592 0.000003 0.938437 +v -0.595460 0.000003 0.889085 +v -0.619266 0.000002 0.831614 +v -0.389095 -0.000003 -1.047019 +v -0.460808 -0.000003 -1.037578 +v -0.527634 -0.000003 -1.009897 +v -0.585019 -0.000003 -0.965865 +v -0.629052 -0.000003 -0.908480 +v -0.656733 -0.000003 -0.841653 +v -0.666174 -0.000002 -0.769940 +v -0.666174 0.000002 0.769940 +v -0.656733 0.000002 0.841653 +v -0.629052 0.000003 0.908479 +v -0.585019 0.000003 0.965864 +v -0.527634 0.000003 1.009897 +v -0.460808 0.000003 1.037578 +v -0.389095 0.000003 1.047019 +v -0.627717 -0.038625 -0.767420 +v -0.386574 -0.038626 -1.008562 +v -0.619266 -0.038625 -0.831614 +v -0.595460 -0.038626 -0.889085 +v -0.557592 -0.038626 -0.938437 +v -0.508240 -0.038626 -0.976306 +v -0.450769 -0.038626 -1.000111 +v -0.386574 -0.038620 1.008562 +v -0.627717 -0.038621 0.767420 +v -0.450769 -0.038620 1.000111 +v -0.508240 -0.038620 0.976305 +v -0.557592 -0.038620 0.938437 +v -0.595460 -0.038620 0.889085 +v -0.619266 -0.038621 0.831614 +v -0.389095 -0.038626 -1.047019 +v -0.460808 -0.038626 -1.037578 +v -0.527634 -0.038626 -1.009897 +v -0.585019 -0.038626 -0.965865 +v -0.629052 -0.038626 -0.908480 +v -0.656733 -0.038626 -0.841653 +v -0.666174 -0.038625 -0.769940 +v -0.666174 -0.038621 0.769940 +v -0.656733 -0.038621 0.841653 +v -0.629052 -0.038620 0.908479 +v -0.585019 -0.038620 0.965864 +v -0.527634 -0.038620 1.009897 +v -0.460808 -0.038620 1.037578 +v -0.389095 -0.038620 1.047019 +v 0.289311 0.000001 0.490596 +v 0.252147 0.000001 0.486936 +v 0.216410 0.000001 0.476095 +v 0.183476 0.000001 0.458491 +v 0.154608 0.000001 0.434800 +v 0.130917 0.000001 0.405933 +v 0.113313 0.000001 0.372998 +v 0.102473 0.000001 0.337262 +v 0.098812 0.000001 0.300097 +v 0.102473 0.000001 0.262933 +v 0.113313 0.000001 0.227197 +v 0.130917 0.000001 0.194262 +v 0.154608 0.000000 0.165394 +v 0.183476 0.000000 0.141703 +v 0.216410 0.000000 0.124099 +v 0.252147 0.000000 0.113259 +v 0.289311 0.000000 0.109599 +v 0.326476 0.000000 0.113259 +v 0.362212 0.000000 0.124099 +v 0.395146 0.000000 0.141703 +v 0.424014 0.000001 0.165394 +v 0.447705 0.000001 0.194262 +v 0.465309 0.000001 0.227197 +v 0.476149 0.000001 0.262933 +v 0.479810 0.000001 0.300097 +v 0.476149 0.000001 0.337262 +v 0.465309 0.000001 0.372998 +v 0.447705 0.000001 0.405933 +v 0.424014 0.000001 0.434800 +v 0.395146 0.000001 0.458491 +v 0.362212 0.000001 0.476095 +v 0.326476 0.000001 0.486936 +v 0.289311 0.000001 0.456122 +v 0.258872 0.000001 0.453124 +v 0.229603 0.000001 0.444246 +v 0.202628 0.000001 0.429827 +v 0.178985 0.000001 0.410424 +v 0.159581 0.000001 0.386780 +v 0.145163 0.000001 0.359805 +v 0.136284 0.000001 0.330536 +v 0.133286 0.000001 0.300097 +v 0.136284 0.000001 0.269658 +v 0.145163 0.000001 0.240389 +v 0.159581 0.000001 0.213415 +v 0.178985 0.000001 0.189771 +v 0.202628 0.000001 0.170368 +v 0.229603 0.000000 0.155949 +v 0.258872 0.000000 0.147071 +v 0.289311 0.000000 0.144073 +v 0.319750 0.000000 0.147071 +v 0.349019 0.000000 0.155949 +v 0.375994 0.000001 0.170368 +v 0.399637 0.000001 0.189771 +v 0.419041 0.000001 0.213415 +v 0.433459 0.000001 0.240389 +v 0.442338 0.000001 0.269658 +v 0.445336 0.000001 0.300097 +v 0.442338 0.000001 0.330536 +v 0.433459 0.000001 0.359805 +v 0.419041 0.000001 0.386780 +v 0.399637 0.000001 0.410424 +v 0.375994 0.000001 0.429827 +v 0.349019 0.000001 0.444246 +v 0.319750 0.000001 0.453124 +v -0.119865 -0.000006 -0.446750 +v -0.132224 -0.000006 -0.418038 +v 0.380097 -0.000005 0.012774 +v 0.348138 -0.000005 -0.030273 +v 0.326614 -0.000005 -0.022446 +v 0.401329 0.000132 0.103943 +v 0.419230 -0.000005 0.102780 +v 0.438144 -0.000005 -0.043318 +v 0.419882 -0.000005 -0.045274 +v 0.408142 -0.000005 0.010817 +v 0.128917 -0.000006 -0.324707 +v 0.076615 -0.000006 -0.349338 +v 0.191677 -0.000006 -0.285664 +v 0.236606 -0.000006 -0.249358 +v 0.269872 -0.000006 -0.214915 +v 0.305332 -0.000005 -0.169189 +v 0.328982 -0.000005 -0.130723 +v 0.352643 -0.000005 -0.078073 +v 0.383305 -0.000005 -0.077016 +v 0.358702 -0.000005 -0.136059 +v 0.336027 -0.000006 -0.176212 +v 0.298271 -0.000006 -0.227864 +v 0.258691 -0.000006 -0.270487 +v 0.209314 -0.000006 -0.310930 +v 0.144206 -0.000006 -0.350855 +v 0.086195 -0.000006 -0.377901 +v -0.285657 -0.000001 -0.463697 +v -0.248492 -0.000001 -0.460037 +v -0.212756 -0.000001 -0.449196 +v -0.179821 -0.000001 -0.431592 +v -0.150954 -0.000001 -0.407901 +v -0.127263 -0.000001 -0.379034 +v -0.109659 -0.000001 -0.346099 +v -0.098818 -0.000001 -0.310363 +v -0.095158 -0.000001 -0.273198 +v -0.098818 -0.000001 -0.236034 +v -0.109659 -0.000001 -0.200298 +v -0.127263 -0.000000 -0.167363 +v -0.150954 -0.000000 -0.138495 +v -0.179821 -0.000000 -0.114804 +v -0.212756 -0.000000 -0.097200 +v -0.248492 -0.000000 -0.086360 +v -0.285657 -0.000000 -0.082699 +v -0.322821 -0.000000 -0.086360 +v -0.358557 -0.000000 -0.097200 +v -0.391492 -0.000000 -0.114804 +v -0.420360 -0.000000 -0.138495 +v -0.444051 -0.000001 -0.167363 +v -0.461655 -0.000001 -0.200297 +v -0.472495 -0.000001 -0.236034 +v -0.476155 -0.000001 -0.273198 +v -0.472495 -0.000001 -0.310363 +v -0.461655 -0.000001 -0.346099 +v -0.444051 -0.000001 -0.379034 +v -0.420360 -0.000001 -0.407901 +v -0.391492 -0.000001 -0.431592 +v -0.358557 -0.000001 -0.449196 +v -0.322821 -0.000001 -0.460037 +v -0.285657 -0.000001 -0.429223 +v -0.255218 -0.000001 -0.426225 +v -0.225949 -0.000001 -0.417346 +v -0.198974 -0.000001 -0.402928 +v -0.175330 -0.000001 -0.383524 +v -0.155927 -0.000001 -0.359881 +v -0.141508 -0.000001 -0.332906 +v -0.132630 -0.000001 -0.303637 +v -0.129632 -0.000001 -0.273198 +v -0.132630 -0.000001 -0.242759 +v -0.141508 -0.000001 -0.213490 +v -0.155927 -0.000001 -0.186515 +v -0.175330 -0.000000 -0.162872 +v -0.198974 -0.000000 -0.143468 +v -0.225948 -0.000000 -0.129050 +v -0.255218 -0.000000 -0.120171 +v -0.285657 -0.000000 -0.117173 +v -0.316096 -0.000000 -0.120171 +v -0.345365 -0.000000 -0.129050 +v -0.372339 -0.000000 -0.143468 +v -0.395983 -0.000000 -0.162872 +v -0.415387 -0.000001 -0.186515 +v -0.429805 -0.000001 -0.213490 +v -0.438683 -0.000001 -0.242759 +v -0.441682 -0.000001 -0.273198 +v -0.438683 -0.000001 -0.303637 +v -0.429805 -0.000001 -0.332906 +v -0.415387 -0.000001 -0.359881 +v -0.395983 -0.000001 -0.383524 +v -0.372339 -0.000001 -0.402928 +v -0.345365 -0.000001 -0.417346 +v -0.316096 -0.000001 -0.426225 +v 0.123519 -0.000004 0.473649 +v 0.135878 -0.000004 0.444937 +v -0.376442 -0.000005 0.014126 +v -0.344483 -0.000005 0.057172 +v -0.322960 -0.000005 0.049346 +v -0.397675 0.000132 -0.077044 +v -0.415576 -0.000005 -0.075881 +v -0.434490 -0.000005 0.070217 +v -0.416228 -0.000005 0.072174 +v -0.404488 -0.000005 0.016082 +v -0.125263 -0.000004 0.351606 +v -0.072961 -0.000004 0.376237 +v -0.188023 -0.000004 0.312563 +v -0.232952 -0.000004 0.276257 +v -0.266217 -0.000004 0.241814 +v -0.301678 -0.000004 0.196089 +v -0.325327 -0.000005 0.157622 +v -0.348989 -0.000005 0.104972 +v -0.379651 -0.000005 0.103915 +v -0.355047 -0.000005 0.162959 +v -0.332373 -0.000004 0.203111 +v -0.294616 -0.000004 0.254763 +v -0.255037 -0.000004 0.297387 +v -0.205660 -0.000004 0.337829 +v -0.140551 -0.000004 0.377754 +v -0.082541 -0.000004 0.404800 +v 0.289311 -0.060182 0.490596 +v 0.252147 -0.060182 0.486936 +v 0.216410 -0.060182 0.476095 +v 0.183476 -0.060182 0.458491 +v 0.154608 -0.060182 0.434800 +v 0.130917 -0.060182 0.405933 +v 0.113313 -0.060182 0.372998 +v 0.102473 -0.060182 0.337262 +v 0.098812 -0.060182 0.300097 +v 0.102473 -0.060182 0.262933 +v 0.113313 -0.060182 0.227197 +v 0.130917 -0.060182 0.194262 +v 0.154608 -0.060183 0.165394 +v 0.183476 -0.060183 0.141703 +v 0.216410 -0.060183 0.124099 +v 0.252147 -0.060183 0.113259 +v 0.289311 -0.060183 0.109599 +v 0.326476 -0.060183 0.113259 +v 0.362212 -0.060183 0.124099 +v 0.395146 -0.060183 0.141703 +v 0.424014 -0.060182 0.165394 +v 0.447705 -0.060182 0.194262 +v 0.465309 -0.060182 0.227197 +v 0.476149 -0.060182 0.262933 +v 0.479810 -0.060182 0.300097 +v 0.476149 -0.060182 0.337262 +v 0.465309 -0.060182 0.372998 +v 0.447705 -0.060182 0.405933 +v 0.424014 -0.060182 0.434800 +v 0.395146 -0.060182 0.458491 +v 0.362212 -0.060182 0.476095 +v 0.326476 -0.060182 0.486936 +v 0.289311 -0.060182 0.456122 +v 0.258872 -0.060182 0.453124 +v 0.229603 -0.060182 0.444246 +v 0.202628 -0.060182 0.429827 +v 0.178985 -0.060182 0.410424 +v 0.159581 -0.060182 0.386780 +v 0.145163 -0.060182 0.359805 +v 0.136284 -0.060182 0.330536 +v 0.133286 -0.060182 0.300097 +v 0.136284 -0.060182 0.269658 +v 0.145163 -0.060182 0.240389 +v 0.159581 -0.060182 0.213415 +v 0.178985 -0.060182 0.189771 +v 0.202628 -0.060182 0.170368 +v 0.229603 -0.060183 0.155949 +v 0.258872 -0.060183 0.147071 +v 0.289311 -0.060183 0.144073 +v 0.319750 -0.060183 0.147071 +v 0.349019 -0.060183 0.155949 +v 0.375994 -0.060182 0.170368 +v 0.399637 -0.060182 0.189771 +v 0.419041 -0.060182 0.213415 +v 0.433459 -0.060182 0.240389 +v 0.442338 -0.060182 0.269658 +v 0.445336 -0.060182 0.300097 +v 0.442338 -0.060182 0.330536 +v 0.433459 -0.060182 0.359805 +v 0.419041 -0.060182 0.386780 +v 0.399637 -0.060182 0.410424 +v 0.375994 -0.060182 0.429827 +v 0.349019 -0.060182 0.444246 +v 0.319750 -0.060182 0.453124 +v -0.119865 -0.060189 -0.446750 +v -0.132224 -0.060189 -0.418038 +v 0.380097 -0.060188 0.012774 +v 0.348138 -0.060188 -0.030273 +v 0.326614 -0.060188 -0.022446 +v 0.401329 -0.060051 0.103943 +v 0.419230 -0.060188 0.102780 +v 0.438144 -0.060188 -0.043318 +v 0.419882 -0.060188 -0.045274 +v 0.408142 -0.060188 0.010817 +v 0.128917 -0.060189 -0.324707 +v 0.076615 -0.060189 -0.349338 +v 0.191677 -0.060189 -0.285664 +v 0.236606 -0.060189 -0.249358 +v 0.269872 -0.060189 -0.214915 +v 0.305332 -0.060188 -0.169189 +v 0.328982 -0.060188 -0.130723 +v 0.352643 -0.060188 -0.078073 +v 0.383305 -0.060188 -0.077016 +v 0.358702 -0.060188 -0.136059 +v 0.336027 -0.060189 -0.176212 +v 0.298271 -0.060189 -0.227864 +v 0.258691 -0.060189 -0.270487 +v 0.209314 -0.060189 -0.310930 +v 0.144206 -0.060189 -0.350855 +v 0.086195 -0.060189 -0.377901 +v -0.285657 -0.060184 -0.463697 +v -0.248492 -0.060184 -0.460037 +v -0.212756 -0.060184 -0.449196 +v -0.179821 -0.060184 -0.431592 +v -0.150954 -0.060184 -0.407901 +v -0.127263 -0.060184 -0.379034 +v -0.109659 -0.060184 -0.346099 +v -0.098818 -0.060184 -0.310363 +v -0.095158 -0.060184 -0.273198 +v -0.098818 -0.060184 -0.236034 +v -0.109659 -0.060184 -0.200298 +v -0.127263 -0.060183 -0.167363 +v -0.150954 -0.060183 -0.138495 +v -0.179821 -0.060183 -0.114804 +v -0.212756 -0.060183 -0.097200 +v -0.248492 -0.060183 -0.086360 +v -0.285657 -0.060183 -0.082699 +v -0.322821 -0.060183 -0.086360 +v -0.358557 -0.060183 -0.097200 +v -0.391492 -0.060183 -0.114804 +v -0.420360 -0.060183 -0.138495 +v -0.444051 -0.060184 -0.167363 +v -0.461655 -0.060184 -0.200297 +v -0.472495 -0.060184 -0.236034 +v -0.476155 -0.060184 -0.273198 +v -0.472495 -0.060184 -0.310363 +v -0.461655 -0.060184 -0.346099 +v -0.444051 -0.060184 -0.379034 +v -0.420360 -0.060184 -0.407901 +v -0.391492 -0.060184 -0.431592 +v -0.358557 -0.060184 -0.449196 +v -0.322821 -0.060184 -0.460037 +v -0.285657 -0.060184 -0.429223 +v -0.255218 -0.060184 -0.426225 +v -0.225949 -0.060184 -0.417346 +v -0.198974 -0.060184 -0.402928 +v -0.175330 -0.060184 -0.383524 +v -0.155927 -0.060184 -0.359881 +v -0.141508 -0.060184 -0.332906 +v -0.132630 -0.060184 -0.303637 +v -0.129632 -0.060184 -0.273198 +v -0.132630 -0.060184 -0.242759 +v -0.141508 -0.060184 -0.213490 +v -0.155927 -0.060184 -0.186515 +v -0.175330 -0.060183 -0.162872 +v -0.198974 -0.060183 -0.143468 +v -0.225948 -0.060183 -0.129050 +v -0.255218 -0.060183 -0.120171 +v -0.285657 -0.060183 -0.117173 +v -0.316096 -0.060183 -0.120171 +v -0.345365 -0.060183 -0.129050 +v -0.372339 -0.060183 -0.143468 +v -0.395983 -0.060183 -0.162872 +v -0.415387 -0.060184 -0.186515 +v -0.429805 -0.060184 -0.213490 +v -0.438683 -0.060184 -0.242759 +v -0.441682 -0.060184 -0.273198 +v -0.438683 -0.060184 -0.303637 +v -0.429805 -0.060184 -0.332906 +v -0.415387 -0.060184 -0.359881 +v -0.395983 -0.060184 -0.383524 +v -0.372339 -0.060184 -0.402928 +v -0.345365 -0.060184 -0.417346 +v -0.316096 -0.060184 -0.426225 +v 0.123519 -0.060187 0.473649 +v 0.135878 -0.060187 0.444937 +v -0.376442 -0.060188 0.014126 +v -0.344483 -0.060188 0.057172 +v -0.322960 -0.060188 0.049346 +v -0.397675 -0.060051 -0.077044 +v -0.415576 -0.060188 -0.075881 +v -0.434490 -0.060188 0.070217 +v -0.416228 -0.060188 0.072174 +v -0.404488 -0.060188 0.016082 +v -0.125263 -0.060187 0.351606 +v -0.072961 -0.060187 0.376237 +v -0.188023 -0.060187 0.312563 +v -0.232952 -0.060187 0.276257 +v -0.266217 -0.060187 0.241814 +v -0.301678 -0.060187 0.196089 +v -0.325327 -0.060188 0.157622 +v -0.348989 -0.060188 0.104972 +v -0.379651 -0.060188 0.103915 +v -0.355047 -0.060188 0.162959 +v -0.332373 -0.060187 0.203111 +v -0.294616 -0.060187 0.254763 +v -0.255037 -0.060187 0.297387 +v -0.205660 -0.060187 0.337829 +v -0.140551 -0.060187 0.377754 +v -0.082541 -0.060187 0.404800 +vn 0.8660 -0.0000 -0.5000 +vn 0.7071 -0.0000 -0.7071 +vn 0.9659 -0.0000 -0.2588 +vn 0.9979 -0.0000 -0.0654 +vn 0.9979 -0.0000 0.0654 +vn 0.9659 -0.0000 0.2588 +vn -0.0000 -1.0000 -0.0000 +vn 0.8660 -0.0000 0.5000 +vn 0.7071 -0.0000 0.7071 +vn 0.5000 -0.0000 0.8660 +vn 0.2588 -0.0000 0.9659 +vn 0.0654 -0.0000 0.9979 +vn 0.0654 -0.0000 -0.9979 +vn -0.0000 -0.0000 -1.0000 +vn -0.0000 -0.0000 1.0000 +vn 0.2588 -0.0000 -0.9659 +vn 0.5000 -0.0000 -0.8660 +vn -0.9979 -0.0000 -0.0654 +vn -0.9659 -0.0000 -0.2588 +vn -0.9979 -0.0000 0.0654 +vn -0.9659 -0.0000 0.2588 +vn -0.8660 -0.0000 0.5000 +vn -0.7071 -0.0000 0.7071 +vn -0.5000 -0.0000 0.8660 +vn -0.0654 -0.0000 -0.9979 +vn -0.2588 -0.0000 0.9659 +vn -0.8660 -0.0000 -0.5000 +vn -0.7071 -0.0000 -0.7071 +vn -0.5000 -0.0000 -0.8660 +vn -0.2588 -0.0000 -0.9659 +vn -1.0000 -0.0000 -0.0000 +vn -0.0654 -0.0000 0.9979 +vn -0.0000 1.0000 -0.0000 +vn 0.8819 -0.0000 0.4714 +vn -0.9231 -0.0000 0.3846 +vn 0.2903 -0.0000 0.9569 +vn 0.7730 -0.0000 0.6344 +vn -0.8073 -0.0000 0.5901 +vn 0.0980 -0.0000 0.9952 +vn 0.6344 -0.0000 0.7730 +vn -0.6336 -0.0000 0.7736 +vn 0.0980 -0.0000 -0.9952 +vn 0.4714 -0.0000 0.8819 +vn -0.4226 -0.0000 0.9063 +vn 0.2903 -0.0000 -0.9569 +vn -0.9623 -0.0000 0.2721 +vn 0.4714 -0.0000 -0.8819 +vn -0.8708 -0.0000 0.4917 +vn 0.6344 -0.0000 -0.7730 +vn -0.0980 -0.0000 0.9952 +vn -0.7328 -0.0000 0.6804 +vn 0.7730 -0.0000 -0.6344 +vn -0.2903 -0.0000 0.9569 +vn -0.5227 -0.0000 0.8525 +vn 0.8819 -0.0000 -0.4714 +vn -0.4714 -0.0000 0.8819 +vn -0.3169 -0.0000 0.9485 +vn 0.9569 -0.0000 -0.2903 +vn -0.6344 -0.0000 0.7730 +vn 0.9952 -0.0000 -0.0980 +vn -0.7730 -0.0000 0.6344 +vn 0.9952 -0.0000 0.0980 +vn -0.8819 -0.0000 0.4714 +vn 0.9569 -0.0000 0.2903 +vn -0.9569 -0.0000 0.2903 +vn -0.9952 -0.0000 0.0980 +vn -0.9952 -0.0000 -0.0980 +vn -0.9569 -0.0000 -0.2903 +vn -0.9185 -0.0000 -0.3954 +vn -0.8819 -0.0000 -0.4714 +vn 0.8029 -0.0000 -0.5961 +vn -0.7730 -0.0000 -0.6344 +vn -0.3417 -0.0000 -0.9398 +vn -0.6344 -0.0000 -0.7730 +vn -0.8608 -0.0000 0.5089 +vn -0.4714 -0.0000 -0.8819 +vn 0.0648 -0.0000 0.9979 +vn -0.2903 -0.0000 -0.9569 +vn 0.9917 -0.0000 0.1284 +vn -0.0980 -0.0000 -0.9952 +vn 0.1065 -0.0000 -0.9943 +vn -0.9788 -0.0000 -0.2049 +vn -0.4261 -0.0000 0.9047 +vn -0.6285 -0.0000 0.7778 +vn -0.7902 -0.0000 0.6128 +vn -0.9121 -0.0000 0.4099 +vn -0.5282 -0.0000 0.8491 +vn -0.3125 -0.0000 0.9499 +vn -0.7193 -0.0000 0.6947 +vn -0.8519 -0.0000 0.5238 +vn -0.9572 -0.0000 0.2893 +vn 0.9231 -0.0000 -0.3846 +vn 0.8073 -0.0000 -0.5901 +vn 0.6336 -0.0000 -0.7736 +vn 0.9185 -0.0000 0.3954 +vn 0.4226 -0.0000 -0.9063 +vn -0.8029 -0.0000 0.5961 +vn 0.9623 -0.0000 -0.2721 +vn 0.3417 -0.0000 0.9398 +vn 0.8708 -0.0000 -0.4917 +vn 0.8608 -0.0000 -0.5089 +vn 0.7328 -0.0000 -0.6805 +vn -0.0648 -0.0000 -0.9979 +vn 0.5228 -0.0000 -0.8525 +vn -0.9917 -0.0000 -0.1284 +vn 0.3169 -0.0000 -0.9485 +vn -0.1066 -0.0000 0.9943 +vn 0.9788 -0.0000 0.2049 +vn 0.4261 -0.0000 -0.9047 +vn 0.6285 -0.0000 -0.7778 +vn 0.7902 -0.0000 -0.6128 +vn 0.9952 -0.0000 -0.0981 +vn 0.9121 -0.0000 -0.4099 +vn 0.9952 -0.0000 0.0981 +vn 0.5282 -0.0000 -0.8491 +vn 0.3125 -0.0000 -0.9499 +vn 0.7193 -0.0000 -0.6947 +vn 0.8519 -0.0000 -0.5237 +vn 0.9572 -0.0000 -0.2893 +vn 0.0012 1.0000 -0.0018 +vn 0.0076 1.0000 -0.0009 +vn -0.0001 1.0000 -0.0015 +vn -0.0012 1.0000 0.0018 +vn -0.0076 1.0000 0.0009 +vn 0.0001 1.0000 0.0015 +vn -0.0076 -1.0000 0.0009 +vn -0.0012 -1.0000 0.0018 +vn 0.0001 -1.0000 0.0015 +vn 0.0076 -1.0000 -0.0009 +vn 0.0012 -1.0000 -0.0018 +vn -0.0001 -1.0000 -0.0015 +vt 0.016198 0.530854 +vt 0.027161 0.544792 +vt 0.016198 0.544792 +vt 0.746928 0.923250 +vt 0.757891 0.935460 +vt 0.746928 0.935460 +vt 0.746928 0.908523 +vt 0.757891 0.923250 +vt 0.746928 0.576052 +vt 0.757891 0.908523 +vt 0.746928 0.559812 +vt 0.757891 0.576052 +vt 0.419828 0.489601 +vt 0.508857 0.498458 +vt 0.419247 0.498458 +vt 0.746928 0.543166 +vt 0.757891 0.559812 +vt 0.746928 0.527247 +vt 0.757891 0.543166 +vt 0.746928 0.513141 +vt 0.757891 0.527247 +vt 0.088310 0.543274 +vt 0.077347 0.530854 +vt 0.088310 0.530854 +vt 0.088310 0.558143 +vt 0.077347 0.543274 +vt 0.016198 0.593555 +vt 0.027161 0.678132 +vt 0.016198 0.678132 +vt 0.088310 0.642720 +vt 0.077347 0.558143 +vt 0.016198 0.577249 +vt 0.027161 0.593555 +vt 0.016198 0.560617 +vt 0.027161 0.577249 +vt 0.027161 0.560617 +vt 0.766786 0.576052 +vt 0.808077 0.567667 +vt 0.799182 0.553079 +vt 0.808077 0.553079 +vt 0.766786 0.908523 +vt 0.808077 0.900942 +vt 0.799182 0.567667 +vt 0.766786 0.923250 +vt 0.808077 0.914232 +vt 0.799182 0.900942 +vt 0.766786 0.935460 +vt 0.808077 0.924885 +vt 0.799182 0.914232 +vt 0.027161 0.530854 +vt 0.036056 0.544792 +vt 0.170893 0.542841 +vt 0.161998 0.530854 +vt 0.170893 0.530854 +vt 0.036056 0.560617 +vt 0.170893 0.556450 +vt 0.161998 0.542841 +vt 0.036056 0.577249 +vt 0.120706 0.554846 +vt 0.129601 0.638874 +vt 0.120706 0.638874 +vt 0.405044 0.487655 +vt 0.402732 0.496284 +vt 0.170893 0.570754 +vt 0.161998 0.556450 +vt 0.387342 0.489909 +vt 0.391808 0.482173 +vt 0.380442 0.473451 +vt 0.374126 0.479768 +vt 0.363985 0.466552 +vt 0.371721 0.462086 +vt 0.366239 0.448850 +vt 0.357610 0.451162 +vt 0.355436 0.434646 +vt 0.364293 0.434066 +vt 0.355436 0.080010 +vt 0.364293 0.080590 +vt 0.366239 0.065806 +vt 0.357610 0.063494 +vt 0.363985 0.048104 +vt 0.371721 0.052570 +vt 0.380442 0.041205 +vt 0.374126 0.034888 +vt 0.387342 0.024747 +vt 0.391808 0.032484 +vt 0.405044 0.027001 +vt 0.402732 0.018372 +vt 0.419247 0.016198 +vt 0.419828 0.025055 +vt 0.508857 0.016198 +vt 0.508857 0.025055 +vt 0.799182 0.538773 +vt 0.808077 0.538773 +vt 0.766786 0.559812 +vt 0.799182 0.525151 +vt 0.808077 0.525151 +vt 0.766786 0.543166 +vt 0.799182 0.513141 +vt 0.808077 0.513141 +vt 0.757891 0.513141 +vt 0.766786 0.527247 +vt 0.120706 0.530854 +vt 0.129601 0.541535 +vt 0.120706 0.541535 +vt 0.068452 0.530854 +vt 0.129601 0.554846 +vt 0.568925 0.930353 +vt 0.560574 0.939248 +vt 0.560574 0.930353 +vt 0.068452 0.543274 +vt 0.170893 0.669379 +vt 0.161998 0.585351 +vt 0.170893 0.585351 +vt 0.036056 0.678132 +vt 0.161998 0.570754 +vt 0.077347 0.642720 +vt 0.068452 0.558143 +vt 0.350409 0.943353 +vt 0.342058 0.952248 +vt 0.342058 0.943353 +vt 0.036056 0.593555 +vt 0.016198 0.080010 +vt 0.169619 0.016198 +vt 0.323040 0.080010 +vt 0.703569 0.923515 +vt 0.714532 0.907675 +vt 0.714532 0.923515 +vt 0.703569 0.907675 +vt 0.714532 0.891040 +vt 0.703569 0.891040 +vt 0.714532 0.874744 +vt 0.703569 0.874744 +vt 0.714531 0.540375 +vt 0.703569 0.540375 +vt 0.714531 0.525527 +vt 0.597885 0.489601 +vt 0.598466 0.498458 +vt 0.703569 0.525527 +vt 0.714531 0.513141 +vt 0.077347 0.789997 +vt 0.088310 0.776059 +vt 0.088310 0.789997 +vt 0.077347 0.776059 +vt 0.088310 0.760234 +vt 0.077347 0.760234 +vt 0.088310 0.743602 +vt 0.077347 0.743602 +vt 0.088310 0.727296 +vt 0.016198 0.762708 +vt 0.077347 0.727296 +vt 0.027161 0.762708 +vt 0.016198 0.777577 +vt 0.027161 0.777577 +vt 0.016198 0.789997 +vt 0.703569 0.937480 +vt 0.714532 0.937480 +vt 0.694674 0.540375 +vt 0.849368 0.523642 +vt 0.840473 0.536824 +vt 0.840473 0.523642 +vt 0.694674 0.874744 +vt 0.849368 0.536824 +vt 0.840473 0.868207 +vt 0.694674 0.891040 +vt 0.849368 0.868207 +vt 0.840473 0.882744 +vt 0.694674 0.907675 +vt 0.849368 0.882744 +vt 0.840473 0.897061 +vt 0.694674 0.923515 +vt 0.849368 0.897061 +vt 0.840473 0.910751 +vt 0.694674 0.937480 +vt 0.849368 0.910751 +vt 0.840473 0.922882 +vt 0.036056 0.777577 +vt 0.027161 0.789997 +vt 0.120706 0.722903 +vt 0.612669 0.487655 +vt 0.161998 0.777399 +vt 0.170893 0.766718 +vt 0.170893 0.777399 +vt 0.983802 0.425209 +vt 0.839238 0.480745 +vt 0.694674 0.425209 +vt 0.630372 0.489909 +vt 0.625905 0.482173 +vt 0.637271 0.473451 +vt 0.653728 0.466552 +vt 0.645992 0.462086 +vt 0.651474 0.448850 +vt 0.662277 0.434646 +vt 0.653421 0.434066 +vt 0.662277 0.080010 +vt 0.653421 0.080590 +vt 0.651474 0.065806 +vt 0.653728 0.048104 +vt 0.645992 0.052570 +vt 0.637271 0.041205 +vt 0.630372 0.024747 +vt 0.625905 0.032484 +vt 0.612669 0.027001 +vt 0.598466 0.016198 +vt 0.597885 0.025055 +vt 0.849368 0.513141 +vt 0.840473 0.513141 +vt 0.694674 0.525527 +vt 0.703569 0.513141 +vt 0.129601 0.765412 +vt 0.120706 0.777399 +vt 0.120706 0.765412 +vt 0.068452 0.789997 +vt 0.129601 0.751803 +vt 0.120706 0.751803 +vt 0.068452 0.776059 +vt 0.129601 0.737499 +vt 0.120706 0.737499 +vt 0.068452 0.760234 +vt 0.129601 0.722903 +vt 0.068452 0.743602 +vt 0.161998 0.753408 +vt 0.170893 0.753408 +vt 0.161998 0.766718 +vt 0.068452 0.727296 +vt 0.036056 0.762708 +vt 0.332282 0.794593 +vt 0.324685 0.796898 +vt 0.327976 0.804844 +vt 0.401053 0.794593 +vt 0.408651 0.796898 +vt 0.410329 0.788463 +vt 0.400581 0.756330 +vt 0.394500 0.750249 +vt 0.389463 0.756386 +vt 0.323007 0.788463 +vt 0.405360 0.804843 +vt 0.323007 0.779862 +vt 0.330908 0.787684 +vt 0.400581 0.811994 +vt 0.398358 0.801101 +vt 0.324685 0.771427 +vt 0.330908 0.780640 +vt 0.389463 0.811939 +vt 0.394500 0.818076 +vt 0.334978 0.767224 +vt 0.327976 0.763481 +vt 0.387349 0.822854 +vt 0.338891 0.761367 +vt 0.332754 0.756330 +vt 0.379403 0.826145 +vt 0.383606 0.815852 +vt 0.343872 0.756386 +vt 0.338836 0.750249 +vt 0.370968 0.827823 +vt 0.377099 0.818548 +vt 0.345987 0.745471 +vt 0.363146 0.819922 +vt 0.362368 0.827823 +vt 0.356237 0.749777 +vt 0.353932 0.742179 +vt 0.356237 0.818548 +vt 0.353932 0.826145 +vt 0.363146 0.748403 +vt 0.362368 0.740501 +vt 0.349729 0.815852 +vt 0.345987 0.822854 +vt 0.405360 0.763481 +vt 0.394444 0.761367 +vt 0.370968 0.740501 +vt 0.338836 0.818076 +vt 0.401053 0.773732 +vt 0.408651 0.771427 +vt 0.379403 0.742179 +vt 0.370190 0.748403 +vt 0.338891 0.806958 +vt 0.332754 0.811995 +vt 0.410329 0.779862 +vt 0.383606 0.752472 +vt 0.387349 0.745471 +vt 0.334978 0.801101 +vt 0.402427 0.787684 +vt 0.573189 0.841560 +vt 0.569898 0.833615 +vt 0.562896 0.837357 +vt 0.489223 0.841561 +vt 0.487545 0.849996 +vt 0.495446 0.850774 +vt 0.503429 0.877091 +vt 0.497292 0.882128 +vt 0.503374 0.888210 +vt 0.574867 0.849996 +vt 0.565591 0.843865 +vt 0.492514 0.833615 +vt 0.496820 0.843865 +vt 0.566965 0.857818 +vt 0.574867 0.858596 +vt 0.497292 0.826464 +vt 0.499516 0.837357 +vt 0.565591 0.864727 +vt 0.573189 0.867031 +vt 0.503374 0.820382 +vt 0.503429 0.831500 +vt 0.562896 0.871235 +vt 0.569898 0.874977 +vt 0.510525 0.815604 +vt 0.508410 0.826520 +vt 0.565119 0.882128 +vt 0.518470 0.812313 +vt 0.514267 0.822606 +vt 0.554001 0.882072 +vt 0.559038 0.888210 +vt 0.526906 0.810635 +vt 0.520775 0.819910 +vt 0.551887 0.892988 +vt 0.534728 0.818536 +vt 0.535506 0.810635 +vt 0.541637 0.888681 +vt 0.543941 0.896279 +vt 0.541636 0.819910 +vt 0.543941 0.812313 +vt 0.534728 0.890056 +vt 0.535506 0.897957 +vt 0.548144 0.822606 +vt 0.551887 0.815604 +vt 0.499516 0.871235 +vt 0.492514 0.874977 +vt 0.526906 0.897957 +vt 0.559038 0.820382 +vt 0.489223 0.867031 +vt 0.518470 0.896279 +vt 0.527684 0.890056 +vt 0.558982 0.831500 +vt 0.565119 0.826464 +vt 0.495446 0.857818 +vt 0.487545 0.858596 +vt 0.514267 0.885986 +vt 0.510525 0.892988 +vt 0.508410 0.882072 +vt 0.374920 0.593406 +vt 0.372397 0.583318 +vt 0.381020 0.589484 +vt 0.212453 0.645553 +vt 0.214977 0.655642 +vt 0.206354 0.649476 +vt 0.219118 0.818076 +vt 0.226269 0.822854 +vt 0.230011 0.815852 +vt 0.251250 0.740501 +vt 0.242650 0.740501 +vt 0.243428 0.748403 +vt 0.280863 0.756330 +vt 0.274726 0.761367 +vt 0.278640 0.767224 +vt 0.234214 0.826145 +vt 0.236519 0.818548 +vt 0.234214 0.742179 +vt 0.236519 0.749777 +vt 0.242650 0.827823 +vt 0.243428 0.819922 +vt 0.226269 0.745470 +vt 0.230011 0.752472 +vt 0.251250 0.827823 +vt 0.250472 0.819922 +vt 0.219118 0.750249 +vt 0.224154 0.756386 +vt 0.259685 0.826145 +vt 0.257381 0.818548 +vt 0.213036 0.756330 +vt 0.219173 0.761367 +vt 0.267631 0.822854 +vt 0.263888 0.815852 +vt 0.208258 0.763481 +vt 0.215260 0.767224 +vt 0.274782 0.818076 +vt 0.269745 0.811939 +vt 0.204967 0.771427 +vt 0.212564 0.773732 +vt 0.280863 0.811994 +vt 0.274726 0.806958 +vt 0.203289 0.779862 +vt 0.211190 0.780640 +vt 0.285642 0.804843 +vt 0.278640 0.801101 +vt 0.203289 0.788463 +vt 0.211190 0.787684 +vt 0.288933 0.796898 +vt 0.281335 0.794593 +vt 0.204967 0.796898 +vt 0.212564 0.794593 +vt 0.274782 0.750249 +vt 0.269745 0.756386 +vt 0.290611 0.788462 +vt 0.282710 0.787684 +vt 0.208258 0.804843 +vt 0.215260 0.801101 +vt 0.267631 0.745470 +vt 0.263888 0.752472 +vt 0.290611 0.779862 +vt 0.282710 0.780640 +vt 0.213036 0.811994 +vt 0.219173 0.806958 +vt 0.259685 0.742179 +vt 0.257380 0.749777 +vt 0.288933 0.771427 +vt 0.281335 0.773732 +vt 0.224154 0.811939 +vt 0.250472 0.748403 +vt 0.285642 0.763481 +vt 0.489223 0.721842 +vt 0.496820 0.724147 +vt 0.499516 0.717639 +vt 0.573189 0.721843 +vt 0.565591 0.724147 +vt 0.566965 0.731056 +vt 0.559038 0.768492 +vt 0.565119 0.762410 +vt 0.558982 0.757373 +vt 0.487545 0.730278 +vt 0.495446 0.731056 +vt 0.569897 0.713897 +vt 0.562896 0.717639 +vt 0.487545 0.738878 +vt 0.495446 0.738100 +vt 0.565119 0.706746 +vt 0.558982 0.711782 +vt 0.489223 0.747313 +vt 0.496820 0.745009 +vt 0.559038 0.700664 +vt 0.554001 0.706802 +vt 0.492514 0.755259 +vt 0.499516 0.751516 +vt 0.551887 0.695886 +vt 0.548144 0.702888 +vt 0.497292 0.762410 +vt 0.503429 0.757373 +vt 0.543941 0.692595 +vt 0.541636 0.700192 +vt 0.503374 0.768492 +vt 0.508410 0.762354 +vt 0.535506 0.690917 +vt 0.534728 0.698818 +vt 0.510525 0.773270 +vt 0.514267 0.766268 +vt 0.526906 0.690917 +vt 0.527684 0.698818 +vt 0.518470 0.776561 +vt 0.520775 0.768963 +vt 0.518470 0.692595 +vt 0.520775 0.700192 +vt 0.526905 0.778239 +vt 0.527684 0.770338 +vt 0.510525 0.695886 +vt 0.514267 0.702888 +vt 0.569897 0.755259 +vt 0.562896 0.751517 +vt 0.535506 0.778239 +vt 0.534728 0.770338 +vt 0.503374 0.700664 +vt 0.508410 0.706802 +vt 0.573189 0.747313 +vt 0.565591 0.745009 +vt 0.543941 0.776561 +vt 0.541636 0.768963 +vt 0.497292 0.706746 +vt 0.503429 0.711782 +vt 0.574867 0.738878 +vt 0.566965 0.738100 +vt 0.551887 0.773270 +vt 0.548144 0.766268 +vt 0.492514 0.713897 +vt 0.574867 0.730278 +vt 0.554001 0.762354 +vt 0.419546 0.589484 +vt 0.428169 0.583318 +vt 0.425645 0.593406 +vt 0.309956 0.649476 +vt 0.301333 0.655642 +vt 0.303856 0.645553 +vt 0.030058 0.852691 +vt 0.030058 0.844189 +vt 0.016198 0.844189 +vt 0.941881 0.648187 +vt 0.928021 0.637255 +vt 0.941881 0.637255 +vt 0.342058 0.905270 +vt 0.342058 0.910957 +vt 0.355919 0.910957 +vt 0.881764 0.513141 +vt 0.881764 0.520084 +vt 0.895625 0.520084 +vt 0.030058 0.836103 +vt 0.016198 0.836103 +vt 0.501405 0.650537 +vt 0.487545 0.638399 +vt 0.501405 0.638399 +vt 0.342058 0.898882 +vt 0.355919 0.905270 +vt 0.881764 0.527884 +vt 0.895625 0.527884 +vt 0.030058 0.828743 +vt 0.016198 0.828743 +vt 0.501405 0.626553 +vt 0.487545 0.612742 +vt 0.501405 0.612742 +vt 0.402175 0.879139 +vt 0.402175 0.872294 +vt 0.388315 0.872294 +vt 0.030058 0.822393 +vt 0.016198 0.822393 +vt 0.501405 0.595552 +vt 0.487545 0.580884 +vt 0.501405 0.580884 +vt 0.402175 0.886177 +vt 0.388315 0.879139 +vt 0.881764 0.607485 +vt 0.881764 0.614428 +vt 0.895625 0.614428 +vt 0.941881 0.665353 +vt 0.928021 0.648187 +vt 0.402175 0.893137 +vt 0.388315 0.886177 +vt 0.881764 0.622227 +vt 0.895625 0.622227 +vt 0.501405 0.658521 +vt 0.487545 0.650537 +vt 0.402175 0.899753 +vt 0.388315 0.893137 +vt 0.881764 0.630584 +vt 0.895625 0.630584 +vt 0.487545 0.626553 +vt 0.402175 0.905770 +vt 0.388315 0.899753 +vt 0.881764 0.639177 +vt 0.895625 0.639177 +vt 0.487545 0.595552 +vt 0.402175 0.910957 +vt 0.388315 0.905770 +vt 0.881764 0.647676 +vt 0.895625 0.647676 +vt 0.487545 0.530854 +vt 0.501405 0.530854 +vt 0.309662 0.865894 +vt 0.309662 0.860219 +vt 0.295802 0.860219 +vt 0.881764 0.655753 +vt 0.895625 0.655753 +vt 0.309662 0.872273 +vt 0.295802 0.865894 +vt 0.881764 0.663099 +vt 0.895625 0.663099 +vt 0.309662 0.879113 +vt 0.295802 0.872273 +vt 0.881764 0.669432 +vt 0.895625 0.669432 +vt 0.309662 0.886149 +vt 0.295802 0.879113 +vt 0.626315 0.685365 +vt 0.626315 0.692212 +vt 0.640175 0.692212 +vt 0.309662 0.893113 +vt 0.295802 0.886149 +vt 0.626315 0.699942 +vt 0.640175 0.699942 +vt 0.309662 0.899736 +vt 0.295802 0.893113 +vt 0.626315 0.708260 +vt 0.640175 0.708260 +vt 0.309662 0.905764 +vt 0.295802 0.899736 +vt 0.626315 0.716844 +vt 0.640175 0.716844 +vt 0.449908 0.786758 +vt 0.442725 0.800618 +vt 0.442725 0.786758 +vt 0.309662 0.910965 +vt 0.295802 0.905764 +vt 0.626315 0.725366 +vt 0.640175 0.725366 +vt 0.068452 0.916737 +vt 0.082313 0.926959 +vt 0.068452 0.926959 +vt 0.626315 0.919210 +vt 0.626315 0.924897 +vt 0.640175 0.924897 +vt 0.626315 0.733497 +vt 0.640175 0.733497 +vt 0.082313 0.931042 +vt 0.068452 0.931042 +vt 0.626315 0.912822 +vt 0.640175 0.919210 +vt 0.626315 0.740926 +vt 0.640175 0.740926 +vt 0.941881 0.604859 +vt 0.928053 0.579000 +vt 0.941913 0.579000 +vt 0.626315 0.905978 +vt 0.640175 0.912822 +vt 0.626315 0.747366 +vt 0.640175 0.747366 +vt 0.941881 0.575198 +vt 0.928021 0.575198 +vt 0.626315 0.898940 +vt 0.640175 0.905978 +vt 0.082313 0.884341 +vt 0.082313 0.877398 +vt 0.068452 0.877398 +vt 0.120706 0.904149 +vt 0.134567 0.937208 +vt 0.120706 0.937208 +vt 0.626315 0.891979 +vt 0.640175 0.898940 +vt 0.082313 0.869598 +vt 0.068452 0.869598 +vt 0.528178 0.930353 +vt 0.524060 0.944213 +vt 0.524060 0.930353 +vt 0.626315 0.885364 +vt 0.640175 0.891979 +vt 0.342058 0.892037 +vt 0.355919 0.898882 +vt 0.881764 0.536241 +vt 0.895625 0.536241 +vt 0.928021 0.894748 +vt 0.941101 0.880888 +vt 0.941101 0.894748 +vt 0.626315 0.879347 +vt 0.640175 0.885364 +vt 0.342058 0.884999 +vt 0.355919 0.892037 +vt 0.881764 0.544833 +vt 0.895625 0.544833 +vt 0.593918 0.602346 +vt 0.580058 0.589103 +vt 0.593918 0.589103 +vt 0.626315 0.874160 +vt 0.640175 0.879347 +vt 0.342058 0.878039 +vt 0.355919 0.884999 +vt 0.881764 0.553332 +vt 0.895625 0.553332 +vt 0.593918 0.572490 +vt 0.580058 0.559961 +vt 0.593918 0.559961 +vt 0.881764 0.841345 +vt 0.881764 0.846953 +vt 0.895625 0.846953 +vt 0.342058 0.871423 +vt 0.355919 0.878039 +vt 0.881764 0.561409 +vt 0.895625 0.561409 +vt 0.593918 0.550109 +vt 0.580058 0.538922 +vt 0.593918 0.538922 +vt 0.881764 0.835014 +vt 0.895625 0.841345 +vt 0.342058 0.865406 +vt 0.355919 0.871423 +vt 0.881764 0.568756 +vt 0.895625 0.568756 +vt 0.941881 0.789210 +vt 0.928021 0.779593 +vt 0.941881 0.779593 +vt 0.881764 0.828201 +vt 0.895625 0.835014 +vt 0.342058 0.860219 +vt 0.355919 0.865406 +vt 0.881764 0.575088 +vt 0.895625 0.575088 +vt 0.580058 0.572490 +vt 0.881764 0.821171 +vt 0.895625 0.828201 +vt 0.203289 0.905393 +vt 0.203289 0.911001 +vt 0.217149 0.911001 +vt 0.626315 0.779762 +vt 0.626315 0.786609 +vt 0.640175 0.786609 +vt 0.593918 0.652968 +vt 0.580058 0.602346 +vt 0.881764 0.814191 +vt 0.895625 0.821171 +vt 0.203289 0.899061 +vt 0.217149 0.905393 +vt 0.626315 0.794340 +vt 0.640175 0.794340 +vt 0.580058 0.550109 +vt 0.881764 0.807531 +vt 0.895625 0.814191 +vt 0.203289 0.892249 +vt 0.217149 0.899061 +vt 0.626315 0.802657 +vt 0.640175 0.802657 +vt 0.580058 0.530854 +vt 0.593918 0.530854 +vt 0.881764 0.801447 +vt 0.895625 0.807531 +vt 0.203289 0.885218 +vt 0.217149 0.892249 +vt 0.626315 0.811242 +vt 0.640175 0.811242 +vt 0.928021 0.761974 +vt 0.941881 0.761974 +vt 0.881764 0.796172 +vt 0.895625 0.801447 +vt 0.203289 0.878238 +vt 0.217149 0.885218 +vt 0.626315 0.819764 +vt 0.640175 0.819764 +vt 0.928021 0.718802 +vt 0.941881 0.729578 +vt 0.928021 0.729578 +vt 0.402175 0.865906 +vt 0.402175 0.860219 +vt 0.388315 0.860219 +vt 0.203289 0.871579 +vt 0.217149 0.878238 +vt 0.626315 0.827895 +vt 0.640175 0.827895 +vt 0.533801 0.538838 +vt 0.547662 0.550976 +vt 0.533801 0.550976 +vt 0.388315 0.865906 +vt 0.203289 0.865494 +vt 0.217149 0.871579 +vt 0.626315 0.835324 +vt 0.640175 0.835324 +vt 0.533801 0.562823 +vt 0.547662 0.576633 +vt 0.533801 0.576633 +vt 0.442725 0.754362 +vt 0.449914 0.740501 +vt 0.449914 0.754362 +vt 0.203289 0.860219 +vt 0.217149 0.865494 +vt 0.626315 0.841764 +vt 0.640175 0.841764 +vt 0.533801 0.593823 +vt 0.547662 0.608491 +vt 0.533801 0.608491 +vt 0.030058 0.931052 +vt 0.016198 0.920830 +vt 0.030058 0.920830 +vt 0.448432 0.865906 +vt 0.448432 0.860219 +vt 0.434572 0.860219 +vt 0.895625 0.763776 +vt 0.895625 0.756833 +vt 0.881764 0.756833 +vt 0.928021 0.701828 +vt 0.941881 0.718802 +vt 0.016198 0.916747 +vt 0.030058 0.916747 +vt 0.448432 0.872294 +vt 0.434572 0.865906 +vt 0.895625 0.749033 +vt 0.881764 0.749033 +vt 0.533801 0.530854 +vt 0.547662 0.538838 +vt 0.928052 0.513141 +vt 0.941881 0.538999 +vt 0.928021 0.538999 +vt 0.448432 0.879139 +vt 0.434572 0.872294 +vt 0.895625 0.740676 +vt 0.881764 0.740676 +vt 0.547662 0.562823 +vt 0.928052 0.542802 +vt 0.941913 0.542802 +vt 0.448432 0.886177 +vt 0.434572 0.879139 +vt 0.895625 0.732083 +vt 0.881764 0.732083 +vt 0.547662 0.593823 +vt 0.895625 0.912525 +vt 0.881764 0.879350 +vt 0.895625 0.879350 +vt 0.448432 0.893137 +vt 0.434572 0.886177 +vt 0.895625 0.723585 +vt 0.881764 0.723585 +vt 0.547662 0.658521 +vt 0.533801 0.658521 +vt 0.491663 0.930353 +vt 0.487545 0.944213 +vt 0.487545 0.930353 +vt 0.448432 0.899753 +vt 0.434572 0.893137 +vt 0.895625 0.715507 +vt 0.881764 0.715507 +vt 0.082313 0.861241 +vt 0.068452 0.861241 +vt 0.928021 0.941005 +vt 0.941072 0.927145 +vt 0.941072 0.941005 +vt 0.448432 0.905770 +vt 0.434572 0.899753 +vt 0.895625 0.708161 +vt 0.881764 0.708161 +vt 0.082313 0.852648 +vt 0.068452 0.852648 +vt 0.626315 0.581477 +vt 0.640175 0.594720 +vt 0.626315 0.594720 +vt 0.448432 0.910956 +vt 0.434572 0.905770 +vt 0.895625 0.701828 +vt 0.881764 0.701828 +vt 0.082313 0.844150 +vt 0.068452 0.844150 +vt 0.626315 0.611333 +vt 0.640175 0.623861 +vt 0.626315 0.623861 +vt 0.263406 0.865894 +vt 0.263406 0.860219 +vt 0.249545 0.860219 +vt 0.134567 0.871753 +vt 0.134567 0.864825 +vt 0.120706 0.864825 +vt 0.082313 0.836072 +vt 0.068452 0.836072 +vt 0.626315 0.633713 +vt 0.640175 0.644901 +vt 0.626315 0.644901 +vt 0.263406 0.872273 +vt 0.249545 0.865894 +vt 0.134567 0.857036 +vt 0.120706 0.857036 +vt 0.082313 0.828726 +vt 0.068452 0.828726 +vt 0.928021 0.821606 +vt 0.941881 0.831078 +vt 0.928021 0.831078 +vt 0.263406 0.879113 +vt 0.249545 0.872273 +vt 0.134567 0.848685 +vt 0.120706 0.848685 +vt 0.082313 0.822393 +vt 0.068452 0.822393 +vt 0.640175 0.611333 +vt 0.263406 0.886149 +vt 0.249545 0.879113 +vt 0.134567 0.840094 +vt 0.120706 0.840094 +vt 0.030058 0.884351 +vt 0.030058 0.877423 +vt 0.016198 0.877423 +vt 0.626315 0.530854 +vt 0.640175 0.581477 +vt 0.263406 0.893113 +vt 0.249545 0.886149 +vt 0.134567 0.831591 +vt 0.120706 0.831591 +vt 0.030058 0.869634 +vt 0.016198 0.869634 +vt 0.640175 0.633713 +vt 0.263406 0.899736 +vt 0.249545 0.893113 +vt 0.134567 0.823505 +vt 0.120706 0.823505 +vt 0.030058 0.861283 +vt 0.016198 0.861283 +vt 0.640175 0.652968 +vt 0.626315 0.652968 +vt 0.263406 0.905764 +vt 0.249545 0.899736 +vt 0.134567 0.816145 +vt 0.120706 0.816145 +vt 0.016198 0.852691 +vt 0.941881 0.848492 +vt 0.928021 0.848492 +vt 0.263406 0.910965 +vt 0.249545 0.905764 +vt 0.134567 0.809795 +vt 0.120706 0.809795 +vt 0.508857 0.489601 +vt 0.799182 0.924885 +vt 0.036056 0.530854 +vt 0.766786 0.513141 +vt 0.129601 0.530854 +vt 0.568925 0.939248 +vt 0.161998 0.669379 +vt 0.068452 0.642720 +vt 0.350409 0.952248 +vt 0.275744 0.496284 +vt 0.259228 0.498458 +vt 0.323040 0.434646 +vt 0.169619 0.498458 +vt 0.080010 0.498458 +vt 0.016198 0.434646 +vt 0.063494 0.496284 +vt 0.018372 0.451162 +vt 0.048104 0.489909 +vt 0.034888 0.479768 +vt 0.024747 0.466552 +vt 0.018372 0.063494 +vt 0.024747 0.048104 +vt 0.034888 0.034888 +vt 0.048104 0.024747 +vt 0.063494 0.018373 +vt 0.080010 0.016198 +vt 0.259228 0.016198 +vt 0.275744 0.018373 +vt 0.320865 0.063494 +vt 0.291134 0.489909 +vt 0.314490 0.466552 +vt 0.304350 0.479768 +vt 0.320865 0.451162 +vt 0.304350 0.034888 +vt 0.314490 0.048104 +vt 0.291134 0.024747 +vt 0.849368 0.922882 +vt 0.036056 0.789997 +vt 0.614981 0.496284 +vt 0.750209 0.480745 +vt 0.735425 0.478798 +vt 0.722189 0.473316 +vt 0.696620 0.439993 +vt 0.710824 0.464595 +vt 0.702102 0.453229 +vt 0.694674 0.071734 +vt 0.696620 0.056950 +vt 0.750209 0.016198 +vt 0.839238 0.016198 +vt 0.702102 0.043714 +vt 0.710824 0.032348 +vt 0.722189 0.023627 +vt 0.735425 0.018145 +vt 0.928266 0.016198 +vt 0.983802 0.071734 +vt 0.943051 0.018145 +vt 0.981856 0.056950 +vt 0.956286 0.023627 +vt 0.967652 0.032348 +vt 0.976373 0.043714 +vt 0.981856 0.439993 +vt 0.943051 0.478798 +vt 0.976373 0.453229 +vt 0.956286 0.473316 +vt 0.967652 0.464595 +vt 0.928266 0.480745 +vt 0.643587 0.479768 +vt 0.660103 0.451162 +vt 0.660103 0.063494 +vt 0.643587 0.034888 +vt 0.614981 0.018372 +vt 0.694674 0.513141 +vt 0.129601 0.777399 +vt 0.394444 0.806958 +vt 0.332282 0.773732 +vt 0.370190 0.819922 +vt 0.349729 0.752473 +vt 0.398358 0.767224 +vt 0.343872 0.811939 +vt 0.377098 0.749777 +vt 0.402427 0.780640 +vt 0.566965 0.850774 +vt 0.558982 0.877091 +vt 0.527684 0.818536 +vt 0.548144 0.885986 +vt 0.554001 0.826520 +vt 0.496820 0.864727 +vt 0.520775 0.888681 +vt 0.352134 0.708105 +vt 0.345417 0.705516 +vt 0.367741 0.660071 +vt 0.373986 0.663094 +vt 0.372110 0.647494 +vt 0.378877 0.649189 +vt 0.384085 0.617398 +vt 0.382790 0.632040 +vt 0.377049 0.617631 +vt 0.375790 0.630875 +vt 0.383442 0.604018 +vt 0.376737 0.606608 +vt 0.372304 0.565725 +vt 0.378062 0.579284 +vt 0.367540 0.570943 +vt 0.375589 0.551270 +vt 0.372970 0.554591 +vt 0.361845 0.547491 +vt 0.357006 0.551792 +vt 0.348491 0.530854 +vt 0.354191 0.566269 +vt 0.345417 0.533614 +vt 0.358945 0.563986 +vt 0.235240 0.530854 +vt 0.241957 0.533444 +vt 0.219632 0.578888 +vt 0.213387 0.575865 +vt 0.215264 0.591465 +vt 0.208497 0.589771 +vt 0.203289 0.621561 +vt 0.204584 0.606919 +vt 0.210324 0.621328 +vt 0.211583 0.608085 +vt 0.203931 0.634941 +vt 0.210637 0.632352 +vt 0.215069 0.673234 +vt 0.209312 0.659675 +vt 0.219834 0.668017 +vt 0.211785 0.687689 +vt 0.214404 0.684368 +vt 0.225529 0.691469 +vt 0.230368 0.687167 +vt 0.238882 0.708105 +vt 0.233183 0.672690 +vt 0.241957 0.705346 +vt 0.228428 0.674973 +vt 0.432824 0.660071 +vt 0.455149 0.705516 +vt 0.448432 0.708105 +vt 0.426579 0.663094 +vt 0.421689 0.649189 +vt 0.417776 0.632040 +vt 0.424775 0.630875 +vt 0.416481 0.617398 +vt 0.423516 0.617631 +vt 0.417123 0.604018 +vt 0.423829 0.606608 +vt 0.422504 0.579284 +vt 0.428261 0.565725 +vt 0.433026 0.570943 +vt 0.438721 0.547491 +vt 0.427596 0.554591 +vt 0.424977 0.551270 +vt 0.443560 0.551792 +vt 0.428456 0.647494 +vt 0.452074 0.530854 +vt 0.455149 0.533614 +vt 0.446375 0.566269 +vt 0.441620 0.563986 +vt 0.296677 0.578888 +vt 0.274353 0.533444 +vt 0.281070 0.530854 +vt 0.302922 0.575865 +vt 0.307813 0.589771 +vt 0.311726 0.606919 +vt 0.304726 0.608085 +vt 0.313021 0.621561 +vt 0.305985 0.621328 +vt 0.312378 0.634941 +vt 0.305673 0.632352 +vt 0.306998 0.659675 +vt 0.301240 0.673234 +vt 0.296476 0.668017 +vt 0.290781 0.691469 +vt 0.301906 0.684368 +vt 0.304525 0.687689 +vt 0.285942 0.687167 +vt 0.301046 0.591465 +vt 0.277427 0.708105 +vt 0.274353 0.705346 +vt 0.283127 0.672690 +vt 0.287881 0.674973 +vt 0.895625 0.513141 +vt 0.895625 0.607485 +vt 0.928021 0.665353 +vt 0.487545 0.658521 +vt 0.388315 0.910957 +vt 0.640175 0.685365 +vt 0.449908 0.800618 +vt 0.295802 0.910965 +vt 0.082313 0.916737 +vt 0.928021 0.604859 +vt 0.068452 0.884341 +vt 0.134567 0.904149 +vt 0.528178 0.944213 +vt 0.928021 0.880888 +vt 0.640175 0.874160 +vt 0.928021 0.789210 +vt 0.355919 0.860219 +vt 0.640175 0.779762 +vt 0.580058 0.652968 +vt 0.895625 0.796172 +vt 0.442725 0.740501 +vt 0.217149 0.860219 +vt 0.016198 0.931052 +vt 0.881764 0.763776 +vt 0.941881 0.701828 +vt 0.547662 0.530854 +vt 0.941913 0.513141 +vt 0.881764 0.912525 +vt 0.491663 0.944213 +vt 0.928021 0.927145 +vt 0.434572 0.910956 +vt 0.120706 0.871753 +vt 0.941881 0.821606 +vt 0.016198 0.884351 +vt 0.640175 0.530854 +vt 0.249545 0.910965 +s 1 +f 6/1/1 39/2/2 7/3/2 +f 5/4/3 40/5/1 6/6/1 +f 3/7/4 41/8/3 5/4/3 +f 11/9/5 42/10/4 3/7/4 +f 16/11/6 43/12/5 11/9/5 +f 52/13/7 65/14/7 67/15/7 +f 15/16/8 44/17/6 16/11/6 +f 14/18/9 45/19/8 15/16/8 +f 13/20/10 46/21/9 14/18/9 +f 12/22/11 47/23/10 13/24/10 +f 10/25/12 48/26/11 12/22/11 +f 4/27/13 34/28/14 1/29/14 +f 2/30/15 49/31/12 10/25/12 +f 9/32/16 36/33/13 4/27/13 +f 8/34/17 37/35/16 9/32/16 +f 7/3/2 38/36/17 8/34/17 +f 44/17/6 74/37/5 43/12/5 +f 27/38/18 64/39/19 32/40/19 +f 43/12/5 73/41/4 42/10/4 +f 19/42/20 59/43/18 27/38/18 +f 42/10/4 72/44/3 41/8/3 +f 21/45/21 51/46/20 19/42/20 +f 41/8/3 71/47/1 40/5/1 +f 22/48/22 53/49/21 21/45/21 +f 40/50/1 70/51/2 39/2/2 +f 23/52/23 54/53/22 22/54/22 +f 39/2/2 69/55/17 38/36/17 +f 24/56/24 55/57/23 23/52/23 +f 38/36/17 68/58/16 37/35/16 +f 26/59/25 50/60/14 18/61/14 +f 57/62/7 67/15/7 68/63/7 +f 25/64/26 56/65/24 24/56/24 +f 57/62/7 69/66/7 56/67/7 +f 55/68/7 69/66/7 70/69/7 +f 55/68/7 71/70/7 54/71/7 +f 53/72/7 71/70/7 72/73/7 +f 53/72/7 73/74/7 51/75/7 +f 51/75/7 74/76/7 59/77/7 +f 64/78/7 74/76/7 75/79/7 +f 64/78/7 76/80/7 63/81/7 +f 62/82/7 76/80/7 77/83/7 +f 62/82/7 78/84/7 61/85/7 +f 60/86/7 78/84/7 79/87/7 +f 60/86/7 80/88/7 58/89/7 +f 58/89/7 66/90/7 50/91/7 +f 32/40/19 63/92/27 31/93/27 +f 45/19/8 75/94/6 44/17/6 +f 31/93/27 62/95/28 30/96/28 +f 46/21/9 76/97/8 45/19/8 +f 30/96/28 61/98/29 29/99/29 +f 47/100/10 77/101/9 46/21/9 +f 29/102/29 60/103/30 28/104/30 +f 48/26/11 78/105/10 47/23/10 +f 28/104/30 58/106/25 26/59/25 +f 18/107/31 66/108/31 35/109/31 +f 49/31/12 79/110/11 48/26/11 +f 17/111/15 52/112/32 20/113/32 +f 36/33/13 65/114/14 34/28/14 +f 20/113/32 57/115/26 25/64/26 +f 35/116/15 80/117/12 49/31/12 +f 34/118/31 33/119/31 17/120/31 +f 37/35/16 67/121/13 36/33/13 +f 89/122/33 2/123/33 11/124/33 +f 112/125/28 84/126/27 85/127/28 +f 113/128/27 83/129/19 84/126/27 +f 114/130/19 81/131/18 83/129/19 +f 115/132/18 89/133/20 81/131/18 +f 116/134/20 94/135/21 89/133/20 +f 65/14/7 124/136/7 137/137/7 +f 117/138/21 93/139/22 94/135/21 +f 118/140/22 92/141/23 93/142/22 +f 119/143/23 91/144/24 92/141/23 +f 120/145/24 90/146/26 91/144/24 +f 121/147/26 88/148/32 90/146/26 +f 34/28/14 82/149/25 1/29/14 +f 122/150/32 2/30/15 88/148/32 +f 109/151/25 87/152/30 82/149/25 +f 110/153/30 86/154/29 87/152/30 +f 111/155/29 85/127/28 86/156/29 +f 144/157/20 117/138/21 116/134/20 +f 136/158/3 103/159/4 108/160/3 +f 143/161/18 116/134/20 115/132/18 +f 131/162/4 95/163/5 103/159/4 +f 142/164/19 115/132/18 114/130/19 +f 123/165/5 97/166/6 95/163/5 +f 141/167/27 114/130/19 113/128/27 +f 125/168/6 98/169/8 97/166/6 +f 140/170/28 113/128/27 112/125/28 +f 126/171/8 99/172/9 98/169/8 +f 139/173/29 112/125/28 111/155/29 +f 127/174/9 100/175/10 99/172/9 +f 138/176/30 111/177/29 110/153/30 +f 50/60/14 102/178/13 18/61/14 +f 129/179/7 137/137/7 124/136/7 +f 128/180/10 101/181/11 100/182/10 +f 95/183/7 17/184/7 19/185/7 +f 139/186/7 129/179/7 128/187/7 +f 127/188/7 139/186/7 128/187/7 +f 141/189/7 127/188/7 126/190/7 +f 125/191/7 141/189/7 126/190/7 +f 143/192/7 125/191/7 123/193/7 +f 144/194/7 123/193/7 131/195/7 +f 136/196/7 144/194/7 131/195/7 +f 146/197/7 136/196/7 135/198/7 +f 134/199/7 146/197/7 135/198/7 +f 148/200/7 134/199/7 133/201/7 +f 132/202/7 148/200/7 133/201/7 +f 150/203/7 132/202/7 130/204/7 +f 66/90/7 130/204/7 50/91/7 +f 135/205/1 108/160/3 107/206/1 +f 145/207/21 118/208/22 117/138/21 +f 134/209/2 107/210/1 106/211/2 +f 146/212/22 119/143/23 118/140/22 +f 133/213/17 106/211/2 105/214/17 +f 147/215/23 120/145/24 119/143/23 +f 132/216/16 105/214/17 104/217/16 +f 148/218/24 121/147/26 120/145/24 +f 130/219/13 104/217/16 102/178/13 +f 149/220/26 122/150/32 121/147/26 +f 124/221/12 17/111/15 96/222/12 +f 65/114/14 109/151/25 34/28/14 +f 129/223/11 96/222/12 101/181/11 +f 150/224/32 35/116/15 122/150/32 +f 137/225/25 110/153/30 109/151/25 +s 0 +f 201/226/33 169/227/33 168/228/33 +f 188/229/33 156/230/33 155/231/33 +f 151/232/33 182/233/33 214/234/33 +f 170/235/33 169/227/33 201/226/33 +f 157/236/33 156/230/33 188/229/33 +f 171/237/33 170/235/33 202/238/33 +f 158/239/33 157/236/33 189/240/33 +f 172/241/33 171/237/33 203/242/33 +f 191/243/33 159/244/33 158/239/33 +f 205/245/33 173/246/33 172/241/33 +f 160/247/33 159/244/33 191/243/33 +f 206/248/33 174/249/33 173/246/33 +f 161/250/33 160/247/33 192/251/33 +f 207/252/33 175/253/33 174/249/33 +f 162/254/33 161/250/33 193/255/33 +f 176/256/33 175/253/33 207/252/33 +f 195/257/33 163/258/33 162/254/33 +f 209/259/33 177/260/33 176/256/33 +f 196/261/33 164/262/33 163/258/33 +f 210/263/33 178/264/33 177/260/33 +f 197/265/33 165/266/33 164/262/33 +f 152/267/33 151/232/33 183/268/33 +f 179/269/33 178/264/33 210/263/33 +f 166/270/33 165/266/33 197/265/33 +f 185/271/33 153/272/33 152/267/33 +f 180/273/33 179/269/33 211/274/33 +f 199/275/33 167/276/33 166/270/33 +f 154/277/33 153/272/33 185/271/33 +f 213/278/33 181/279/33 180/273/33 +f 200/280/33 168/228/33 167/276/33 +f 187/281/33 155/231/33 154/277/33 +f 182/233/33 181/279/33 213/278/33 +f 259/282/33 258/283/33 290/284/33 +f 246/285/33 245/286/33 277/287/33 +f 273/288/33 241/289/33 272/290/33 +f 260/291/33 259/282/33 291/292/33 +f 247/293/33 246/285/33 278/294/33 +f 293/295/33 261/296/33 260/291/33 +f 248/297/33 247/293/33 279/298/33 +f 294/299/33 262/300/33 261/296/33 +f 249/301/33 248/297/33 280/302/33 +f 295/303/33 263/304/33 262/300/33 +f 250/305/33 249/301/33 281/306/33 +f 264/307/33 263/304/33 295/303/33 +f 251/308/33 250/305/33 282/309/33 +f 297/310/33 265/311/33 264/307/33 +f 252/312/33 251/308/33 283/313/33 +f 266/314/33 265/311/33 297/310/33 +f 285/315/33 253/316/33 252/312/33 +f 299/317/33 267/318/33 266/314/33 +f 286/319/33 254/320/33 253/316/33 +f 300/321/33 268/322/33 267/318/33 +f 287/323/33 255/324/33 254/320/33 +f 274/325/33 242/326/33 241/289/33 +f 269/327/33 268/322/33 300/321/33 +f 256/328/33 255/324/33 287/323/33 +f 243/329/33 242/326/33 274/325/33 +f 270/330/33 269/327/33 301/331/33 +f 289/332/33 257/333/33 256/328/33 +f 276/334/33 244/335/33 243/329/33 +f 303/336/33 271/337/33 270/330/33 +f 258/283/33 257/333/33 289/332/33 +f 245/286/33 244/335/33 276/334/33 +f 304/338/33 272/290/33 271/337/33 +f 230/339/33 231/340/33 235/341/33 +f 320/342/33 321/343/33 325/344/33 +f 348/345/7 349/346/7 381/347/7 +f 335/348/7 336/349/7 368/350/7 +f 331/351/7 363/352/7 394/353/7 +f 350/354/7 382/355/7 381/347/7 +f 337/356/7 369/357/7 368/350/7 +f 351/358/7 383/359/7 382/355/7 +f 338/360/7 370/361/7 369/357/7 +f 352/362/7 384/363/7 383/359/7 +f 338/360/7 339/364/7 371/365/7 +f 352/362/7 353/366/7 385/367/7 +f 340/368/7 372/369/7 371/365/7 +f 353/366/7 354/370/7 386/371/7 +f 341/372/7 373/373/7 372/369/7 +f 354/370/7 355/374/7 387/375/7 +f 342/376/7 374/377/7 373/373/7 +f 356/378/7 388/379/7 387/375/7 +f 342/376/7 343/380/7 375/381/7 +f 356/378/7 357/382/7 389/383/7 +f 343/380/7 344/384/7 376/385/7 +f 357/382/7 358/386/7 390/387/7 +f 344/384/7 345/388/7 377/389/7 +f 332/390/7 364/391/7 363/352/7 +f 359/392/7 391/393/7 390/387/7 +f 346/394/7 378/395/7 377/389/7 +f 332/390/7 333/396/7 365/397/7 +f 360/398/7 392/399/7 391/393/7 +f 346/394/7 347/400/7 379/401/7 +f 334/402/7 366/403/7 365/397/7 +f 360/398/7 361/404/7 393/405/7 +f 347/400/7 348/345/7 380/406/7 +f 334/402/7 335/348/7 367/407/7 +f 362/408/7 394/353/7 393/405/7 +f 439/409/7 471/410/7 470/411/7 +f 426/412/7 458/413/7 457/414/7 +f 452/415/7 421/416/7 453/417/7 +f 440/418/7 472/419/7 471/410/7 +f 427/420/7 459/421/7 458/413/7 +f 440/418/7 441/422/7 473/423/7 +f 428/424/7 460/425/7 459/421/7 +f 441/422/7 442/426/7 474/427/7 +f 429/428/7 461/429/7 460/425/7 +f 442/426/7 443/430/7 475/431/7 +f 430/432/7 462/433/7 461/429/7 +f 444/434/7 476/435/7 475/431/7 +f 431/436/7 463/437/7 462/433/7 +f 444/434/7 445/438/7 477/439/7 +f 432/440/7 464/441/7 463/437/7 +f 446/442/7 478/443/7 477/439/7 +f 432/440/7 433/444/7 465/445/7 +f 446/442/7 447/446/7 479/447/7 +f 433/444/7 434/448/7 466/449/7 +f 447/446/7 448/450/7 480/451/7 +f 434/448/7 435/452/7 467/453/7 +f 421/416/7 422/454/7 454/455/7 +f 449/456/7 481/457/7 480/451/7 +f 436/458/7 468/459/7 467/453/7 +f 423/460/7 455/461/7 454/455/7 +f 450/462/7 482/463/7 481/457/7 +f 436/458/7 437/464/7 469/465/7 +f 423/460/7 424/466/7 456/467/7 +f 450/462/7 451/468/7 483/469/7 +f 438/470/7 470/411/7 469/465/7 +f 425/471/7 457/414/7 456/467/7 +f 451/468/7 452/415/7 484/472/7 +f 415/473/7 411/474/7 410/475/7 +f 505/476/7 501/477/7 500/478/7 +f 251/479/34 252/480/34 432/481/34 +f 323/482/35 504/483/35 324/484/35 +f 304/485/36 303/486/36 483/487/36 +f 181/488/36 182/489/36 362/490/36 +f 252/480/37 253/491/37 433/492/37 +f 325/493/38 506/494/38 326/495/38 +f 273/496/39 304/485/39 484/497/39 +f 182/489/39 151/498/39 331/499/39 +f 253/491/40 254/500/40 434/501/40 +f 327/502/41 508/503/41 328/504/41 +f 184/505/42 183/506/42 363/507/42 +f 254/500/43 255/508/43 435/509/43 +f 329/510/44 510/511/44 330/512/44 +f 185/513/45 184/505/45 364/514/45 +f 255/515/36 256/516/36 436/517/36 +f 314/518/46 503/519/46 323/482/46 +f 186/520/47 185/513/47 365/521/47 +f 256/516/39 257/522/39 437/523/39 +f 324/524/48 505/525/48 325/493/48 +f 187/526/49 186/520/49 366/527/49 +f 257/522/50 258/528/50 438/529/50 +f 326/495/51 507/530/51 327/502/51 +f 188/531/52 187/526/52 367/532/52 +f 258/528/53 259/533/53 439/534/53 +f 328/504/54 509/535/54 329/510/54 +f 189/536/55 188/531/55 368/537/55 +f 259/533/56 260/538/56 440/539/56 +f 330/512/57 485/540/57 305/541/57 +f 190/542/58 189/543/58 369/544/58 +f 260/538/59 261/545/59 441/546/59 +f 191/547/60 190/542/60 370/548/60 +f 261/545/61 262/549/61 442/550/61 +f 192/551/62 191/547/62 371/552/62 +f 262/549/63 263/553/63 443/554/63 +f 193/555/64 192/551/64 372/556/64 +f 263/557/65 264/558/65 444/559/65 +f 194/560/34 193/555/34 373/561/34 +f 264/558/66 265/562/66 445/563/66 +f 195/564/37 194/560/37 374/565/37 +f 265/562/67 266/566/67 446/567/67 +f 196/568/40 195/564/40 375/569/40 +f 266/566/68 267/570/68 447/571/68 +f 215/572/69 396/573/69 216/574/69 +f 197/575/43 196/568/43 376/576/43 +f 267/570/70 268/577/70 448/578/70 +f 217/579/71 398/580/71 218/581/71 +f 198/582/36 197/583/36 377/584/36 +f 268/577/72 269/585/72 449/586/72 +f 218/581/73 399/587/73 219/588/73 +f 199/589/39 198/582/39 378/590/39 +f 269/585/74 270/591/74 450/592/74 +f 219/593/75 400/594/75 220/595/75 +f 200/596/50 199/589/50 379/597/50 +f 270/591/76 271/598/76 451/599/76 +f 221/600/77 400/594/77 401/601/77 +f 201/602/53 200/596/53 380/603/53 +f 271/604/78 272/605/78 452/606/78 +f 221/607/79 402/608/79 222/609/79 +f 202/610/56 201/602/56 381/611/56 +f 272/605/80 241/612/80 421/613/80 +f 222/614/81 403/615/81 223/616/81 +f 203/617/59 202/610/59 382/618/59 +f 274/619/50 273/496/50 453/620/50 +f 151/498/50 152/621/50 332/622/50 +f 223/623/82 404/624/82 224/625/82 +f 204/626/61 203/617/61 383/627/61 +f 275/628/53 274/619/53 454/629/53 +f 152/621/53 153/630/53 333/631/53 +f 226/632/83 405/633/83 225/634/83 +f 205/635/63 204/626/63 384/636/63 +f 276/637/56 275/628/56 455/638/56 +f 153/630/56 154/639/56 334/640/56 +f 227/641/84 408/642/84 228/643/84 +f 206/644/65 205/645/65 385/646/65 +f 277/647/59 276/637/59 456/648/59 +f 154/639/59 155/649/59 335/650/59 +f 229/651/85 410/652/85 230/653/85 +f 207/654/66 206/644/66 386/655/66 +f 278/656/61 277/647/61 457/657/61 +f 155/649/61 156/658/61 336/659/61 +f 231/660/86 412/661/86 232/662/86 +f 208/663/67 207/654/67 387/664/67 +f 279/665/63 278/656/63 458/666/63 +f 156/658/63 157/667/63 337/668/63 +f 225/634/87 407/669/87 227/641/87 +f 209/670/68 208/663/68 388/671/68 +f 280/672/65 279/673/65 459/674/65 +f 157/675/65 158/676/65 338/677/65 +f 216/678/88 406/679/88 226/632/88 +f 210/680/70 209/670/70 389/681/70 +f 281/682/66 280/672/66 460/683/66 +f 158/676/66 159/684/66 339/685/66 +f 228/643/89 409/686/89 229/651/89 +f 211/687/72 210/680/72 390/688/72 +f 282/689/67 281/682/67 461/690/67 +f 159/684/67 160/691/67 340/692/67 +f 230/653/90 411/693/90 231/694/90 +f 212/695/74 211/687/74 391/696/74 +f 283/697/68 282/689/68 462/698/68 +f 160/691/68 161/699/68 341/700/68 +f 232/662/91 397/701/91 217/702/91 +f 213/703/76 212/695/76 392/704/76 +f 284/705/70 283/697/70 463/706/70 +f 161/699/70 162/707/70 342/708/70 +f 233/709/92 414/710/92 234/711/92 +f 214/712/78 213/713/78 393/714/78 +f 285/715/72 284/705/72 464/716/72 +f 162/707/72 163/717/72 343/718/72 +f 235/719/93 416/720/93 236/721/93 +f 183/506/80 214/712/80 394/722/80 +f 286/723/74 285/715/74 465/724/74 +f 163/717/74 164/725/74 344/726/74 +f 237/727/94 418/728/94 238/729/94 +f 305/730/95 486/731/95 306/732/95 +f 287/733/76 286/723/76 466/734/76 +f 164/725/76 165/735/76 345/736/76 +f 239/737/96 420/738/96 240/739/96 +f 307/740/97 488/741/97 308/742/97 +f 288/743/78 287/744/78 467/745/78 +f 165/746/78 166/747/78 346/748/78 +f 224/749/98 413/750/98 233/709/98 +f 308/742/99 489/751/99 309/752/99 +f 289/753/80 288/743/80 468/754/80 +f 166/747/80 167/755/80 347/756/80 +f 234/757/100 415/758/100 235/719/100 +f 309/759/101 490/760/101 310/761/101 +f 290/762/42 289/753/42 469/763/42 +f 167/755/42 168/764/42 348/765/42 +f 236/721/102 417/766/102 237/727/102 +f 311/767/103 490/760/103 491/768/103 +f 291/769/45 290/762/45 470/770/45 +f 168/764/45 169/771/45 349/772/45 +f 238/729/104 419/773/104 239/737/104 +f 311/774/105 492/775/105 312/776/105 +f 292/777/47 291/769/47 471/778/47 +f 169/771/47 170/779/47 350/780/47 +f 240/739/106 395/781/106 215/782/106 +f 312/783/107 493/784/107 313/785/107 +f 293/786/49 292/777/49 472/787/49 +f 170/779/49 171/788/49 351/789/49 +f 241/612/42 242/790/42 422/791/42 +f 313/792/108 494/793/108 314/794/108 +f 294/795/52 293/786/52 473/796/52 +f 171/788/52 172/797/52 352/798/52 +f 242/790/45 243/799/45 423/800/45 +f 316/801/109 495/802/109 315/803/109 +f 295/804/55 294/795/55 474/805/55 +f 172/797/55 173/806/55 353/807/55 +f 243/799/47 244/808/47 424/809/47 +f 317/810/110 498/811/110 318/812/110 +f 296/813/58 295/814/58 475/815/58 +f 173/816/58 174/817/58 354/818/58 +f 244/808/49 245/819/49 425/820/49 +f 319/821/111 500/822/111 320/823/111 +f 297/824/112 296/813/112 476/825/112 +f 174/817/60 175/826/60 355/827/60 +f 245/819/52 246/828/52 426/829/52 +f 321/830/113 502/831/113 322/832/113 +f 298/833/114 297/824/114 477/834/114 +f 175/826/62 176/835/62 356/836/62 +f 246/828/55 247/837/55 427/838/55 +f 315/803/115 497/839/115 317/810/115 +f 299/840/64 298/833/64 478/841/64 +f 176/835/64 177/842/64 357/843/64 +f 247/844/58 248/845/58 428/846/58 +f 306/847/116 496/848/116 316/801/116 +f 300/849/34 299/840/34 479/850/34 +f 177/842/34 178/851/34 358/852/34 +f 248/845/60 249/853/60 429/854/60 +f 318/812/117 499/855/117 319/821/117 +f 301/856/37 300/849/37 480/857/37 +f 178/851/37 179/858/37 359/859/37 +f 249/853/62 250/860/62 430/861/62 +f 320/823/118 501/862/118 321/863/118 +f 302/864/40 301/856/40 481/865/40 +f 179/858/40 180/866/40 360/867/40 +f 250/860/64 251/479/64 431/868/64 +f 322/832/119 487/869/119 307/870/119 +f 303/871/43 302/864/43 482/872/43 +f 180/866/43 181/873/43 361/874/43 +s 1 +f 6/1/1 40/50/1 39/2/2 +f 5/4/3 41/8/3 40/5/1 +f 3/7/4 42/10/4 41/8/3 +f 11/9/5 43/12/5 42/10/4 +f 16/11/6 44/17/6 43/12/5 +f 52/13/7 33/875/7 65/14/7 +f 15/16/8 45/19/8 44/17/6 +f 14/18/9 46/21/9 45/19/8 +f 13/20/10 47/100/10 46/21/9 +f 12/22/11 48/26/11 47/23/10 +f 10/25/12 49/31/12 48/26/11 +f 4/27/13 36/33/13 34/28/14 +f 2/30/15 35/116/15 49/31/12 +f 9/32/16 37/35/16 36/33/13 +f 8/34/17 38/36/17 37/35/16 +f 7/3/2 39/2/2 38/36/17 +f 44/17/6 75/94/6 74/37/5 +f 27/38/18 59/43/18 64/39/19 +f 43/12/5 74/37/5 73/41/4 +f 19/42/20 51/46/20 59/43/18 +f 42/10/4 73/41/4 72/44/3 +f 21/45/21 53/49/21 51/46/20 +f 41/8/3 72/44/3 71/47/1 +f 22/48/22 54/876/22 53/49/21 +f 40/50/1 71/877/1 70/51/2 +f 23/52/23 55/57/23 54/53/22 +f 39/2/2 70/51/2 69/55/17 +f 24/56/24 56/65/24 55/57/23 +f 38/36/17 69/55/17 68/58/16 +f 26/59/25 58/106/25 50/60/14 +f 57/62/7 52/13/7 67/15/7 +f 25/64/26 57/115/26 56/65/24 +f 57/62/7 68/63/7 69/66/7 +f 55/68/7 56/67/7 69/66/7 +f 55/68/7 70/69/7 71/70/7 +f 53/72/7 54/71/7 71/70/7 +f 53/72/7 72/73/7 73/74/7 +f 51/75/7 73/74/7 74/76/7 +f 64/78/7 59/77/7 74/76/7 +f 64/78/7 75/79/7 76/80/7 +f 62/82/7 63/81/7 76/80/7 +f 62/82/7 77/83/7 78/84/7 +f 60/86/7 61/85/7 78/84/7 +f 60/86/7 79/87/7 80/88/7 +f 58/89/7 80/88/7 66/90/7 +f 32/40/19 64/39/19 63/92/27 +f 45/19/8 76/97/8 75/94/6 +f 31/93/27 63/92/27 62/95/28 +f 46/21/9 77/101/9 76/97/8 +f 30/96/28 62/95/28 61/98/29 +f 47/100/10 78/878/10 77/101/9 +f 29/102/29 61/879/29 60/103/30 +f 48/26/11 79/110/11 78/105/10 +f 28/104/30 60/103/30 58/106/25 +f 18/107/31 50/880/31 66/108/31 +f 49/31/12 80/117/12 79/110/11 +f 17/111/15 33/881/15 52/112/32 +f 36/33/13 67/121/13 65/114/14 +f 20/113/32 52/112/32 57/115/26 +f 35/116/15 66/882/15 80/117/12 +f 34/118/31 65/883/31 33/119/31 +f 37/35/16 68/58/16 67/121/13 +f 9/884/33 4/885/33 3/886/33 +f 4/885/33 1/887/33 3/886/33 +f 1/887/33 82/888/33 81/889/33 +f 82/888/33 87/890/33 83/891/33 +f 87/890/33 86/892/33 85/893/33 +f 85/893/33 84/894/33 83/891/33 +f 83/891/33 81/889/33 82/888/33 +f 81/889/33 89/122/33 3/886/33 +f 1/887/33 81/889/33 3/886/33 +f 89/122/33 94/895/33 93/896/33 +f 93/896/33 92/897/33 91/898/33 +f 91/898/33 90/899/33 88/900/33 +f 2/123/33 10/901/33 11/124/33 +f 10/901/33 12/902/33 16/903/33 +f 91/898/33 88/900/33 89/122/33 +f 88/900/33 2/123/33 89/122/33 +f 89/122/33 93/896/33 91/898/33 +f 85/893/33 83/891/33 87/890/33 +f 8/904/33 9/884/33 3/886/33 +f 6/905/33 7/906/33 8/904/33 +f 3/886/33 5/907/33 6/905/33 +f 16/903/33 11/124/33 10/901/33 +f 11/124/33 3/886/33 89/122/33 +f 14/908/33 15/909/33 16/903/33 +f 12/902/33 13/910/33 14/908/33 +f 16/903/33 12/902/33 14/908/33 +f 3/886/33 6/905/33 8/904/33 +f 112/125/28 113/128/27 84/126/27 +f 113/128/27 114/130/19 83/129/19 +f 114/130/19 115/132/18 81/131/18 +f 115/132/18 116/134/20 89/133/20 +f 116/134/20 117/138/21 94/135/21 +f 65/14/7 33/875/7 124/136/7 +f 117/138/21 118/208/22 93/139/22 +f 118/140/22 119/143/23 92/141/23 +f 119/143/23 120/145/24 91/144/24 +f 120/145/24 121/147/26 90/146/26 +f 121/147/26 122/150/32 88/148/32 +f 34/28/14 109/151/25 82/149/25 +f 122/150/32 35/116/15 2/30/15 +f 109/151/25 110/153/30 87/152/30 +f 110/153/30 111/177/29 86/154/29 +f 111/155/29 112/125/28 85/127/28 +f 144/157/20 145/207/21 117/138/21 +f 136/158/3 131/162/4 103/159/4 +f 143/161/18 144/157/20 116/134/20 +f 131/162/4 123/165/5 95/163/5 +f 142/164/19 143/161/18 115/132/18 +f 123/165/5 125/168/6 97/166/6 +f 141/167/27 142/164/19 114/130/19 +f 125/168/6 126/171/8 98/169/8 +f 140/170/28 141/167/27 113/128/27 +f 126/171/8 127/174/9 99/172/9 +f 139/173/29 140/170/28 112/125/28 +f 127/174/9 128/911/10 100/175/10 +f 138/176/30 139/912/29 111/177/29 +f 50/60/14 130/219/13 102/178/13 +f 129/179/7 138/913/7 137/137/7 +f 128/180/10 129/223/11 101/181/11 +f 20/914/7 25/915/7 19/185/7 +f 25/915/7 24/916/7 21/917/7 +f 19/185/7 25/915/7 21/917/7 +f 24/916/7 23/918/7 22/919/7 +f 22/919/7 21/917/7 24/916/7 +f 19/185/7 27/920/7 95/183/7 +f 27/920/7 32/921/7 26/922/7 +f 18/923/7 27/920/7 26/922/7 +f 32/921/7 31/924/7 30/925/7 +f 30/925/7 29/926/7 28/927/7 +f 28/927/7 26/922/7 32/921/7 +f 18/923/7 102/928/7 103/929/7 +f 102/928/7 104/930/7 108/931/7 +f 104/930/7 105/932/7 106/933/7 +f 106/933/7 107/934/7 108/931/7 +f 108/931/7 103/929/7 102/928/7 +f 103/929/7 95/183/7 27/920/7 +f 18/923/7 103/929/7 27/920/7 +f 95/183/7 97/935/7 101/936/7 +f 97/935/7 98/937/7 100/938/7 +f 98/937/7 99/939/7 100/938/7 +f 100/938/7 101/936/7 97/935/7 +f 101/936/7 96/940/7 95/183/7 +f 17/184/7 20/914/7 19/185/7 +f 96/940/7 17/184/7 95/183/7 +f 106/933/7 108/931/7 104/930/7 +f 30/925/7 28/927/7 32/921/7 +f 139/186/7 138/913/7 129/179/7 +f 127/188/7 140/941/7 139/186/7 +f 141/189/7 140/941/7 127/188/7 +f 125/191/7 142/942/7 141/189/7 +f 143/192/7 142/942/7 125/191/7 +f 144/194/7 143/192/7 123/193/7 +f 136/196/7 145/943/7 144/194/7 +f 146/197/7 145/943/7 136/196/7 +f 134/199/7 147/944/7 146/197/7 +f 148/200/7 147/944/7 134/199/7 +f 132/202/7 149/945/7 148/200/7 +f 150/203/7 149/945/7 132/202/7 +f 66/90/7 150/203/7 130/204/7 +f 135/205/1 136/158/3 108/160/3 +f 145/207/21 146/946/22 118/208/22 +f 134/209/2 135/947/1 107/210/1 +f 146/212/22 147/215/23 119/143/23 +f 133/213/17 134/209/2 106/211/2 +f 147/215/23 148/218/24 120/145/24 +f 132/216/16 133/213/17 105/214/17 +f 148/218/24 149/220/26 121/147/26 +f 130/219/13 132/216/16 104/217/16 +f 149/220/26 150/224/32 122/150/32 +f 124/221/12 33/881/15 17/111/15 +f 65/114/14 137/225/25 109/151/25 +f 129/223/11 124/221/12 96/222/12 +f 150/224/32 66/882/15 35/116/15 +f 137/225/25 138/176/30 110/153/30 +s 0 +f 201/226/33 168/228/33 200/280/33 +f 188/229/33 155/231/33 187/281/33 +f 151/232/33 214/234/33 183/268/33 +f 170/235/33 201/226/33 202/238/33 +f 157/236/33 188/229/33 189/240/33 +f 171/237/33 202/238/33 203/242/33 +f 158/239/33 189/240/33 190/948/33 +f 172/241/33 203/242/33 204/949/33 +f 191/243/33 158/239/33 190/948/33 +f 205/245/33 172/241/33 204/949/33 +f 160/247/33 191/243/33 192/251/33 +f 206/248/33 173/246/33 205/245/33 +f 161/250/33 192/251/33 193/255/33 +f 207/252/33 174/249/33 206/248/33 +f 162/254/33 193/255/33 194/950/33 +f 176/256/33 207/252/33 208/951/33 +f 195/257/33 162/254/33 194/950/33 +f 209/259/33 176/256/33 208/951/33 +f 196/261/33 163/258/33 195/257/33 +f 210/263/33 177/260/33 209/259/33 +f 197/265/33 164/262/33 196/261/33 +f 152/267/33 183/268/33 184/952/33 +f 179/269/33 210/263/33 211/274/33 +f 166/270/33 197/265/33 198/953/33 +f 185/271/33 152/267/33 184/952/33 +f 180/273/33 211/274/33 212/954/33 +f 199/275/33 166/270/33 198/953/33 +f 154/277/33 185/271/33 186/955/33 +f 213/278/33 180/273/33 212/954/33 +f 200/280/33 167/276/33 199/275/33 +f 187/281/33 154/277/33 186/955/33 +f 182/233/33 213/278/33 214/234/33 +f 259/282/33 290/284/33 291/292/33 +f 246/285/33 277/287/33 278/294/33 +f 273/288/33 272/290/33 304/338/33 +f 260/291/33 291/292/33 292/956/33 +f 247/293/33 278/294/33 279/298/33 +f 293/295/33 260/291/33 292/956/33 +f 248/297/33 279/298/33 280/302/33 +f 294/299/33 261/296/33 293/295/33 +f 249/301/33 280/302/33 281/306/33 +f 295/303/33 262/300/33 294/299/33 +f 250/305/33 281/306/33 282/309/33 +f 264/307/33 295/303/33 296/957/33 +f 251/308/33 282/309/33 283/313/33 +f 297/310/33 264/307/33 296/957/33 +f 252/312/33 283/313/33 284/958/33 +f 266/314/33 297/310/33 298/959/33 +f 285/315/33 252/312/33 284/958/33 +f 299/317/33 266/314/33 298/959/33 +f 286/319/33 253/316/33 285/315/33 +f 300/321/33 267/318/33 299/317/33 +f 287/323/33 254/320/33 286/319/33 +f 274/325/33 241/289/33 273/288/33 +f 269/327/33 300/321/33 301/331/33 +f 256/328/33 287/323/33 288/960/33 +f 243/329/33 274/325/33 275/961/33 +f 270/330/33 301/331/33 302/962/33 +f 289/332/33 256/328/33 288/960/33 +f 276/334/33 243/329/33 275/961/33 +f 303/336/33 270/330/33 302/962/33 +f 258/283/33 289/332/33 290/284/33 +f 245/286/33 276/334/33 277/287/33 +f 304/338/33 271/337/33 303/336/33 +f 215/963/33 216/964/33 226/965/33 +f 215/963/33 226/965/33 240/966/33 +f 226/965/33 225/967/33 239/968/33 +f 240/966/33 226/965/33 239/968/33 +f 237/969/33 238/970/33 228/971/33 +f 238/970/33 239/968/33 227/972/33 +f 235/341/33 236/973/33 230/339/33 +f 236/973/33 237/969/33 229/974/33 +f 233/975/33 234/976/33 232/977/33 +f 234/976/33 235/341/33 231/340/33 +f 232/977/33 234/976/33 231/340/33 +f 222/978/33 223/979/33 224/980/33 +f 224/980/33 233/975/33 217/981/33 +f 217/981/33 233/975/33 232/977/33 +f 236/973/33 229/974/33 230/339/33 +f 238/970/33 227/972/33 228/971/33 +f 239/968/33 225/967/33 227/972/33 +f 221/982/33 222/978/33 224/980/33 +f 219/983/120 220/984/120 217/981/120 +f 220/984/121 221/982/121 224/980/121 +f 217/981/122 220/984/122 224/980/122 +f 217/981/33 218/985/33 219/983/33 +f 237/969/33 228/971/33 229/974/33 +f 305/986/33 306/987/33 316/988/33 +f 305/986/33 316/988/33 330/989/33 +f 316/988/33 315/990/33 329/991/33 +f 330/989/33 316/988/33 329/991/33 +f 327/992/33 328/993/33 318/994/33 +f 328/993/33 329/991/33 317/995/33 +f 325/344/33 326/996/33 320/342/33 +f 326/996/33 327/992/33 319/997/33 +f 323/998/33 324/999/33 322/1000/33 +f 324/999/33 325/344/33 321/343/33 +f 322/1000/33 324/999/33 321/343/33 +f 312/1001/33 313/1002/33 314/1003/33 +f 314/1003/33 323/998/33 307/1004/33 +f 307/1004/33 323/998/33 322/1000/33 +f 326/996/33 319/997/33 320/342/33 +f 328/993/33 317/995/33 318/994/33 +f 329/991/33 315/990/33 317/995/33 +f 311/1005/33 312/1001/33 314/1003/33 +f 309/1006/123 310/1007/123 307/1004/123 +f 310/1007/124 311/1005/124 314/1003/124 +f 307/1004/125 310/1007/125 314/1003/125 +f 307/1004/33 308/1008/33 309/1006/33 +f 327/992/33 318/994/33 319/997/33 +f 348/345/7 381/347/7 380/406/7 +f 335/348/7 368/350/7 367/407/7 +f 331/351/7 394/353/7 362/408/7 +f 350/354/7 381/347/7 349/346/7 +f 337/356/7 368/350/7 336/349/7 +f 351/358/7 382/355/7 350/354/7 +f 338/360/7 369/357/7 337/356/7 +f 352/362/7 383/359/7 351/358/7 +f 338/360/7 371/365/7 370/361/7 +f 352/362/7 385/367/7 384/363/7 +f 340/368/7 371/365/7 339/364/7 +f 353/366/7 386/371/7 385/367/7 +f 341/372/7 372/369/7 340/368/7 +f 354/370/7 387/375/7 386/371/7 +f 342/376/7 373/373/7 341/372/7 +f 356/378/7 387/375/7 355/374/7 +f 342/376/7 375/381/7 374/377/7 +f 356/378/7 389/383/7 388/379/7 +f 343/380/7 376/385/7 375/381/7 +f 357/382/7 390/387/7 389/383/7 +f 344/384/7 377/389/7 376/385/7 +f 332/390/7 363/352/7 331/351/7 +f 359/392/7 390/387/7 358/386/7 +f 346/394/7 377/389/7 345/388/7 +f 332/390/7 365/397/7 364/391/7 +f 360/398/7 391/393/7 359/392/7 +f 346/394/7 379/401/7 378/395/7 +f 334/402/7 365/397/7 333/396/7 +f 360/398/7 393/405/7 392/399/7 +f 347/400/7 380/406/7 379/401/7 +f 334/402/7 367/407/7 366/403/7 +f 362/408/7 393/405/7 361/404/7 +f 439/409/7 470/411/7 438/470/7 +f 426/412/7 457/414/7 425/471/7 +f 452/415/7 453/417/7 484/472/7 +f 440/418/7 471/410/7 439/409/7 +f 427/420/7 458/413/7 426/412/7 +f 440/418/7 473/423/7 472/419/7 +f 428/424/7 459/421/7 427/420/7 +f 441/422/7 474/427/7 473/423/7 +f 429/428/7 460/425/7 428/424/7 +f 442/426/7 475/431/7 474/427/7 +f 430/432/7 461/429/7 429/428/7 +f 444/434/7 475/431/7 443/430/7 +f 431/436/7 462/433/7 430/432/7 +f 444/434/7 477/439/7 476/435/7 +f 432/440/7 463/437/7 431/436/7 +f 446/442/7 477/439/7 445/438/7 +f 432/440/7 465/445/7 464/441/7 +f 446/442/7 479/447/7 478/443/7 +f 433/444/7 466/449/7 465/445/7 +f 447/446/7 480/451/7 479/447/7 +f 434/448/7 467/453/7 466/449/7 +f 421/416/7 454/455/7 453/417/7 +f 449/456/7 480/451/7 448/450/7 +f 436/458/7 467/453/7 435/452/7 +f 423/460/7 454/455/7 422/454/7 +f 450/462/7 481/457/7 449/456/7 +f 436/458/7 469/465/7 468/459/7 +f 423/460/7 456/467/7 455/461/7 +f 450/462/7 483/469/7 482/463/7 +f 438/470/7 469/465/7 437/464/7 +f 425/471/7 456/467/7 424/466/7 +f 451/468/7 484/472/7 483/469/7 +f 406/1009/7 396/1010/7 395/1011/7 +f 395/1011/7 420/1012/7 406/1009/7 +f 420/1012/7 419/1013/7 406/1009/7 +f 419/1013/7 418/1014/7 407/1015/7 +f 418/1014/7 417/1016/7 408/1017/7 +f 417/1016/7 416/1018/7 409/1019/7 +f 416/1018/7 415/473/7 410/475/7 +f 409/1019/7 416/1018/7 410/475/7 +f 415/473/7 414/1020/7 411/474/7 +f 414/1020/7 413/1021/7 412/1022/7 +f 404/1023/7 403/1024/7 402/1025/7 +f 414/1020/7 412/1022/7 411/474/7 +f 413/1021/7 404/1023/7 397/1026/7 +f 418/1014/7 408/1017/7 407/1015/7 +f 408/1017/7 417/1016/7 409/1019/7 +f 405/1027/7 406/1009/7 419/1013/7 +f 404/1023/7 402/1025/7 401/1028/7 +f 401/1028/126 400/1029/126 404/1023/126 +f 400/1029/127 399/1030/127 397/1026/127 +f 399/1030/7 398/1031/7 397/1026/7 +f 400/1029/128 397/1026/128 404/1023/128 +f 413/1021/7 397/1026/7 412/1022/7 +f 407/1015/7 405/1027/7 419/1013/7 +f 496/1032/7 486/1033/7 485/1034/7 +f 485/1034/7 510/1035/7 496/1032/7 +f 510/1035/7 509/1036/7 496/1032/7 +f 509/1036/7 508/1037/7 497/1038/7 +f 508/1037/7 507/1039/7 498/1040/7 +f 507/1039/7 506/1041/7 499/1042/7 +f 506/1041/7 505/476/7 500/478/7 +f 499/1042/7 506/1041/7 500/478/7 +f 505/476/7 504/1043/7 501/477/7 +f 504/1043/7 503/1044/7 502/1045/7 +f 494/1046/7 493/1047/7 492/1048/7 +f 504/1043/7 502/1045/7 501/477/7 +f 503/1044/7 494/1046/7 487/1049/7 +f 508/1037/7 498/1040/7 497/1038/7 +f 498/1040/7 507/1039/7 499/1042/7 +f 495/1050/7 496/1032/7 509/1036/7 +f 494/1046/7 492/1048/7 491/1051/7 +f 491/1051/129 490/1052/129 494/1046/129 +f 490/1052/130 489/1053/130 487/1049/130 +f 489/1053/7 488/1054/7 487/1049/7 +f 490/1052/131 487/1049/131 494/1046/131 +f 503/1044/7 487/1049/7 502/1045/7 +f 497/1038/7 495/1050/7 509/1036/7 +f 251/479/34 432/481/34 431/868/34 +f 323/482/35 503/519/35 504/483/35 +f 304/485/36 483/487/36 484/497/36 +f 181/488/36 362/490/36 361/1055/36 +f 252/480/37 433/492/37 432/481/37 +f 325/493/38 505/525/38 506/494/38 +f 273/496/39 484/497/39 453/620/39 +f 182/489/39 331/499/39 362/490/39 +f 253/491/40 434/501/40 433/492/40 +f 327/502/41 507/530/41 508/503/41 +f 184/505/42 363/507/42 364/514/42 +f 254/500/43 435/509/43 434/501/43 +f 329/510/44 509/535/44 510/511/44 +f 185/513/45 364/514/45 365/521/45 +f 255/515/36 436/517/36 435/1056/36 +f 314/518/46 494/1057/46 503/519/46 +f 186/520/47 365/521/47 366/527/47 +f 256/516/39 437/523/39 436/517/39 +f 324/524/48 504/1058/48 505/525/48 +f 187/526/49 366/527/49 367/532/49 +f 257/522/50 438/529/50 437/523/50 +f 326/495/51 506/494/51 507/530/51 +f 188/531/52 367/532/52 368/537/52 +f 258/528/53 439/534/53 438/529/53 +f 328/504/54 508/503/54 509/535/54 +f 189/536/55 368/537/55 369/1059/55 +f 259/533/56 440/539/56 439/534/56 +f 330/512/57 510/511/57 485/540/57 +f 190/542/58 369/544/58 370/548/58 +f 260/538/59 441/546/59 440/539/59 +f 191/547/60 370/548/60 371/552/60 +f 261/545/61 442/550/61 441/546/61 +f 192/551/62 371/552/62 372/556/62 +f 262/549/63 443/554/63 442/550/63 +f 193/555/64 372/556/64 373/561/64 +f 263/557/65 444/559/65 443/1060/65 +f 194/560/34 373/561/34 374/565/34 +f 264/558/66 445/563/66 444/559/66 +f 195/564/37 374/565/37 375/569/37 +f 265/562/67 446/567/67 445/563/67 +f 196/568/40 375/569/40 376/576/40 +f 266/566/68 447/571/68 446/567/68 +f 215/572/69 395/1061/69 396/573/69 +f 197/575/43 376/576/43 377/1062/43 +f 267/570/70 448/578/70 447/571/70 +f 217/579/71 397/1063/71 398/580/71 +f 198/582/36 377/584/36 378/590/36 +f 268/577/72 449/586/72 448/578/72 +f 218/581/73 398/580/73 399/587/73 +f 199/589/39 378/590/39 379/597/39 +f 269/585/74 450/592/74 449/586/74 +f 219/593/75 399/1064/75 400/594/75 +f 200/596/50 379/597/50 380/603/50 +f 270/591/76 451/599/76 450/592/76 +f 221/600/77 220/595/77 400/594/77 +f 201/602/53 380/603/53 381/611/53 +f 271/604/78 452/606/78 451/1065/78 +f 221/607/79 401/1066/79 402/608/79 +f 202/610/56 381/611/56 382/618/56 +f 272/605/80 421/613/80 452/606/80 +f 222/614/81 402/1067/81 403/615/81 +f 203/617/59 382/618/59 383/627/59 +f 274/619/50 453/620/50 454/629/50 +f 151/498/50 332/622/50 331/499/50 +f 223/623/82 403/1068/82 404/624/82 +f 204/626/61 383/627/61 384/636/61 +f 275/628/53 454/629/53 455/638/53 +f 152/621/53 333/631/53 332/622/53 +f 226/632/83 406/679/83 405/633/83 +f 205/635/63 384/636/63 385/1069/63 +f 276/637/56 455/638/56 456/648/56 +f 153/630/56 334/640/56 333/631/56 +f 227/641/84 407/669/84 408/642/84 +f 206/644/65 385/646/65 386/655/65 +f 277/647/59 456/648/59 457/657/59 +f 154/639/59 335/650/59 334/640/59 +f 229/651/85 409/686/85 410/652/85 +f 207/654/66 386/655/66 387/664/66 +f 278/656/61 457/657/61 458/666/61 +f 155/649/61 336/659/61 335/650/61 +f 231/660/86 411/1070/86 412/661/86 +f 208/663/67 387/664/67 388/671/67 +f 279/665/63 458/666/63 459/1071/63 +f 156/658/63 337/668/63 336/659/63 +f 225/634/87 405/633/87 407/669/87 +f 209/670/68 388/671/68 389/681/68 +f 280/672/65 459/674/65 460/683/65 +f 157/675/65 338/677/65 337/1072/65 +f 216/678/88 396/1073/88 406/679/88 +f 210/680/70 389/681/70 390/688/70 +f 281/682/66 460/683/66 461/690/66 +f 158/676/66 339/685/66 338/677/66 +f 228/643/89 408/642/89 409/686/89 +f 211/687/72 390/688/72 391/696/72 +f 282/689/67 461/690/67 462/698/67 +f 159/684/67 340/692/67 339/685/67 +f 230/653/90 410/652/90 411/693/90 +f 212/695/74 391/696/74 392/704/74 +f 283/697/68 462/698/68 463/706/68 +f 160/691/68 341/700/68 340/692/68 +f 232/662/91 412/661/91 397/701/91 +f 213/703/76 392/704/76 393/1074/76 +f 284/705/70 463/706/70 464/716/70 +f 161/699/70 342/708/70 341/700/70 +f 233/709/92 413/750/92 414/710/92 +f 214/712/78 393/714/78 394/722/78 +f 285/715/72 464/716/72 465/724/72 +f 162/707/72 343/718/72 342/708/72 +f 235/719/93 415/758/93 416/720/93 +f 183/506/80 394/722/80 363/507/80 +f 286/723/74 465/724/74 466/734/74 +f 163/717/74 344/726/74 343/718/74 +f 237/727/94 417/766/94 418/728/94 +f 305/730/95 485/1075/95 486/731/95 +f 287/733/76 466/734/76 467/1076/76 +f 164/725/76 345/736/76 344/726/76 +f 239/737/96 419/773/96 420/738/96 +f 307/740/97 487/1077/97 488/741/97 +f 288/743/78 467/745/78 468/754/78 +f 165/746/78 346/748/78 345/1078/78 +f 224/749/98 404/1079/98 413/750/98 +f 308/742/99 488/741/99 489/751/99 +f 289/753/80 468/754/80 469/763/80 +f 166/747/80 347/756/80 346/748/80 +f 234/757/100 414/1080/100 415/758/100 +f 309/759/101 489/1081/101 490/760/101 +f 290/762/42 469/763/42 470/770/42 +f 167/755/42 348/765/42 347/756/42 +f 236/721/102 416/720/102 417/766/102 +f 311/767/103 310/761/103 490/760/103 +f 291/769/45 470/770/45 471/778/45 +f 168/764/45 349/772/45 348/765/45 +f 238/729/104 418/728/104 419/773/104 +f 311/774/105 491/1082/105 492/775/105 +f 292/777/47 471/778/47 472/787/47 +f 169/771/47 350/780/47 349/772/47 +f 240/739/106 420/738/106 395/781/106 +f 312/783/107 492/1083/107 493/784/107 +f 293/786/49 472/787/49 473/796/49 +f 170/779/49 351/789/49 350/780/49 +f 241/612/42 422/791/42 421/613/42 +f 313/792/108 493/1084/108 494/793/108 +f 294/795/52 473/796/52 474/805/52 +f 171/788/52 352/798/52 351/789/52 +f 242/790/45 423/800/45 422/791/45 +f 316/801/109 496/848/109 495/802/109 +f 295/804/55 474/805/55 475/1085/55 +f 172/797/55 353/807/55 352/798/55 +f 243/799/47 424/809/47 423/800/47 +f 317/810/110 497/839/110 498/811/110 +f 296/813/58 475/815/58 476/825/58 +f 173/816/58 354/818/58 353/1086/58 +f 244/808/49 425/820/49 424/809/49 +f 319/821/111 499/855/111 500/822/111 +f 297/824/112 476/825/112 477/834/112 +f 174/817/60 355/827/60 354/818/60 +f 245/819/52 426/829/52 425/820/52 +f 321/830/113 501/1087/113 502/831/113 +f 298/833/114 477/834/114 478/841/114 +f 175/826/62 356/836/62 355/827/62 +f 246/828/55 427/838/55 426/829/55 +f 315/803/115 495/802/115 497/839/115 +f 299/840/64 478/841/64 479/850/64 +f 176/835/64 357/843/64 356/836/64 +f 247/844/58 428/846/58 427/1088/58 +f 306/847/116 486/1089/116 496/848/116 +f 300/849/34 479/850/34 480/857/34 +f 177/842/34 358/852/34 357/843/34 +f 248/845/60 429/854/60 428/846/60 +f 318/812/117 498/811/117 499/855/117 +f 301/856/37 480/857/37 481/865/37 +f 178/851/37 359/859/37 358/852/37 +f 249/853/62 430/861/62 429/854/62 +f 320/823/118 500/822/118 501/862/118 +f 302/864/40 481/865/40 482/872/40 +f 179/858/40 360/867/40 359/859/40 +f 250/860/64 431/868/64 430/861/64 +f 322/832/119 502/831/119 487/869/119 +f 303/871/43 482/872/43 483/1090/43 +f 180/866/43 361/874/43 360/867/43