From d07573010867c983a485c879d671371e82b84355 Mon Sep 17 00:00:00 2001 From: Boblet Date: Thu, 27 Jan 2022 14:45:51 +0100 Subject: [PATCH] experimental bufferless RF to HE converter --- src/main/java/com/hbm/blocks/ModBlocks.java | 2 - .../blocks/machine/BlockConverterRfHe.java | 22 - src/main/java/com/hbm/handler/GUIHandler.java | 14 - .../container/ContainerConverterRfHe.java | 69 -- .../hbm/inventory/gui/GUIConverterRfHe.java | 47 - .../com/hbm/main/ModEventHandlerClient.java | 15 +- .../machine/TileEntityConverterRfHe.java | 126 +-- src/main/java/com/hbm/util/LoggingUtil.java | 23 + .../assets/hbm/models/weapons/stinger.obj | 882 ++++++++++++++++++ 9 files changed, 946 insertions(+), 254 deletions(-) delete mode 100644 src/main/java/com/hbm/inventory/container/ContainerConverterRfHe.java delete mode 100644 src/main/java/com/hbm/inventory/gui/GUIConverterRfHe.java create mode 100644 src/main/java/com/hbm/util/LoggingUtil.java create mode 100644 src/main/resources/assets/hbm/models/weapons/stinger.obj diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 594eea918..409fed4a8 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -831,9 +831,7 @@ public class ModBlocks { public static Block machine_converter_he_rf; public static final int guiID_converter_he_rf = 28; - public static Block machine_converter_rf_he; - public static final int guiID_converter_rf_he = 29; public static Block machine_schrabidium_transmutator; public static final int guiID_schrabidium_transmutator = 30; diff --git a/src/main/java/com/hbm/blocks/machine/BlockConverterRfHe.java b/src/main/java/com/hbm/blocks/machine/BlockConverterRfHe.java index ad3bfa72f..34b3cfadf 100644 --- a/src/main/java/com/hbm/blocks/machine/BlockConverterRfHe.java +++ b/src/main/java/com/hbm/blocks/machine/BlockConverterRfHe.java @@ -19,26 +19,4 @@ public class BlockConverterRfHe extends BlockContainer { public TileEntity createNewTileEntity(World p_149915_1_, int p_149915_2_) { return new TileEntityConverterRfHe(); } - - @Override - public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) { - if(world.isRemote) - { - return true; - } else if(!player.isSneaking()) - { - TileEntityConverterRfHe entity = (TileEntityConverterRfHe) world.getTileEntity(x, y, z); - if(entity != null) - { - player.addChatComponentMessage(new ChatComponentText("Note: Buffer may not accuratly represent current conversion rate, keep tact rates in mind.")); - player.addChatComponentMessage(new ChatComponentText("HE: " + (entity.buf / 4))); - player.addChatComponentMessage(new ChatComponentText("RF: " + entity.buf)); - //FMLNetworkHandler.openGui(player, MainRegistry.instance, ModBlocks.guiID_converter_rf_he, world, x, y, z); - } - return true; - } else { - return false; - } - } - } diff --git a/src/main/java/com/hbm/handler/GUIHandler.java b/src/main/java/com/hbm/handler/GUIHandler.java index 777539fab..ecd3b0313 100644 --- a/src/main/java/com/hbm/handler/GUIHandler.java +++ b/src/main/java/com/hbm/handler/GUIHandler.java @@ -217,13 +217,6 @@ public class GUIHandler implements IGuiHandler { return null; } - case ModBlocks.guiID_converter_rf_he: { - if(entity instanceof TileEntityConverterRfHe) { - return new ContainerConverterRfHe(player.inventory, (TileEntityConverterRfHe) entity); - } - return null; - } - case ModBlocks.guiID_schrabidium_transmutator: { if(entity instanceof TileEntityMachineSchrabidiumTransmutator) { return new ContainerMachineSchrabidiumTransmutator(player.inventory, (TileEntityMachineSchrabidiumTransmutator) entity); @@ -1066,13 +1059,6 @@ public class GUIHandler implements IGuiHandler { return null; } - case ModBlocks.guiID_converter_rf_he: { - if(entity instanceof TileEntityConverterRfHe) { - return new GUIConverterRfHe(player.inventory, (TileEntityConverterRfHe) entity); - } - return null; - } - case ModBlocks.guiID_schrabidium_transmutator: { if(entity instanceof TileEntityMachineSchrabidiumTransmutator) { return new GUIMachineSchrabidiumTransmutator(player.inventory, (TileEntityMachineSchrabidiumTransmutator) entity); diff --git a/src/main/java/com/hbm/inventory/container/ContainerConverterRfHe.java b/src/main/java/com/hbm/inventory/container/ContainerConverterRfHe.java deleted file mode 100644 index a6f7fb286..000000000 --- a/src/main/java/com/hbm/inventory/container/ContainerConverterRfHe.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.hbm.inventory.container; - -import com.hbm.tileentity.machine.TileEntityConverterRfHe; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.inventory.Container; -import net.minecraft.inventory.ICrafting; -import net.minecraft.item.ItemStack; - -public class ContainerConverterRfHe extends Container { - - private TileEntityConverterRfHe diFurnace; - - private int water; - private int flux; - - public ContainerConverterRfHe(InventoryPlayer invPlayer, TileEntityConverterRfHe tedf) { - - diFurnace = tedf; - } - - @Override - public void addCraftingToCrafters(ICrafting crafting) { - super.addCraftingToCrafters(crafting); - crafting.sendProgressBarUpdate(this, 1, this.diFurnace.storage.getEnergyStored()); - } - - @Override - public ItemStack transferStackInSlot(EntityPlayer p_82846_1_, int p_82846_2_) - { - return null; - } - - @Override - public boolean canInteractWith(EntityPlayer player) { - return true; - } - - @Override - public void detectAndSendChanges() { - super.detectAndSendChanges(); - - for(int i = 0; i < this.crafters.size(); i++) - { - ICrafting par1 = (ICrafting)this.crafters.get(i); - - if(this.flux != this.diFurnace.storage.getEnergyStored()) - { - par1.sendProgressBarUpdate(this, 1, this.diFurnace.storage.getEnergyStored()); - } - } - - this.flux = this.diFurnace.storage.getEnergyStored(); - } - - @Override - public void updateProgressBar(int i, int j) { - if(i == 0) - { - diFurnace.power = j; - } - if(i == 1) - { - diFurnace.storage.setEnergyStored(j); - } - } - -} diff --git a/src/main/java/com/hbm/inventory/gui/GUIConverterRfHe.java b/src/main/java/com/hbm/inventory/gui/GUIConverterRfHe.java deleted file mode 100644 index 4e49bac3c..000000000 --- a/src/main/java/com/hbm/inventory/gui/GUIConverterRfHe.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.hbm.inventory.gui; - -import org.lwjgl.opengl.GL11; - -import com.hbm.inventory.container.ContainerConverterRfHe; -import com.hbm.lib.RefStrings; -import com.hbm.tileentity.machine.TileEntityConverterRfHe; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.entity.player.InventoryPlayer; -import net.minecraft.util.ResourceLocation; - -public class GUIConverterRfHe extends GuiContainer { - - private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/gui_rf_he_converter.png"); - private TileEntityConverterRfHe diFurnace; - - public GUIConverterRfHe(InventoryPlayer invPlayer, TileEntityConverterRfHe tedf) { - super(new ContainerConverterRfHe(invPlayer, tedf)); - diFurnace = tedf; - - this.xSize = 176; - this.ySize = 86; - } - - @Override - protected void drawGuiContainerForegroundLayer(int i, int j) { - } - - @Override - protected void drawGuiContainerBackgroundLayer(float p_146976_1_, int p_146976_2_, int p_146976_3_) { - GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); - Minecraft.getMinecraft().getTextureManager().bindTexture(texture); - drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); - - if(diFurnace.power > 0) { - int i = (int)diFurnace.getPowerScaled(52); - drawTexturedModalRect(guiLeft + 136, guiTop + 69 - i, 188, 52 - i, 12, i); - } - - if(diFurnace.storage.getEnergyStored() > 0) { - int i = diFurnace.getFluxScaled(52); - drawTexturedModalRect(guiLeft + 28, guiTop + 69 - i, 176, 52 - i, 12, i); - } - } -} diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index 2e7c7e33b..13ed5a233 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -52,6 +52,7 @@ import com.hbm.tileentity.bomb.TileEntityNukeCustom.CustomNukeEntry; import com.hbm.tileentity.bomb.TileEntityNukeCustom.EnumEntryType; import com.hbm.tileentity.machine.TileEntityNukeFurnace; import com.hbm.util.I18nUtil; +import com.hbm.util.LoggingUtil; import com.hbm.util.ArmorRegistry; import com.hbm.util.ArmorUtil; import com.hbm.util.ArmorRegistry.HazardClass; @@ -647,13 +648,13 @@ public class ModEventHandlerClient { if(mc.gameSettings.renderDistanceChunks > 16 && GeneralConfig.enableRenderDistCheck && ! FMLClientHandler.instance().hasOptifine()) { mc.gameSettings.renderDistanceChunks = 16; - MainRegistry.logger.error("========================== WARNING =========================="); - MainRegistry.logger.error("Dangerous render distance detected: Values over 16 only work on 1.8+ or with Optifine installed!!"); - MainRegistry.logger.error("Set '1.25_enableRenderDistCheck' in hbm.cfg to 'false' to disable this check."); - MainRegistry.logger.error("========================== WARNING =========================="); - MainRegistry.logger.error("If you got this error after removing Optifine: Consider deleting your option files after removing mods."); - MainRegistry.logger.error("If you got this error after downgrading your Minecraft version: Consider using a launcher that doesn't reuse the same folders for every game instance. MultiMC for example, it's really good and it comes with a dedicated cat button. You like cats, right? Are you using the Microsoft launcher? The one launcher that turns every version switch into a tightrope act because all the old config and options files are still here because different instances all use the same folder structure instead of different folders like a competent launcher would, because some MO-RON thought that this was an acceptable way of doing things? Really? The launcher that circumcises every crashlog into indecipherable garbage, tricking oblivious people into posting that as a \"crash report\", effectively wasting everyone's time? The launcher made by the company that thought it would be HI-LA-RI-OUS to force everyone to use Microsoft accounts, effectively breaking every other launcher until they implement their terrible auth system?"); - MainRegistry.logger.error("========================== WARNING =========================="); + LoggingUtil.errorWithHighlight("========================== WARNING =========================="); + LoggingUtil.errorWithHighlight("Dangerous render distance detected: Values over 16 only work on 1.8+ or with Optifine installed!!"); + LoggingUtil.errorWithHighlight("Set '1.25_enableRenderDistCheck' in hbm.cfg to 'false' to disable this check."); + LoggingUtil.errorWithHighlight("========================== WARNING =========================="); + LoggingUtil.errorWithHighlight("If you got this error after removing Optifine: Consider deleting your option files after removing mods."); + LoggingUtil.errorWithHighlight("If you got this error after downgrading your Minecraft version: Consider using a launcher that doesn't reuse the same folders for every game instance. MultiMC for example, it's really good and it comes with a dedicated cat button. You like cats, right? Are you using the Microsoft launcher? The one launcher that turns every version switch into a tightrope act because all the old config and options files are still here because different instances all use the same folder structure instead of different folders like a competent launcher would, because some MO-RON thought that this was an acceptable way of doing things? Really? The launcher that circumcises every crashlog into indecipherable garbage, tricking oblivious people into posting that as a \"crash report\", effectively wasting everyone's time? The launcher made by the company that thought it would be HI-LA-RI-OUS to force everyone to use Microsoft accounts, effectively breaking every other launcher until they implement their terrible auth system?"); + LoggingUtil.errorWithHighlight("========================== WARNING =========================="); } if(mc.theWorld == null || mc.thePlayer == null) diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityConverterRfHe.java b/src/main/java/com/hbm/tileentity/machine/TileEntityConverterRfHe.java index db5563c81..c58be3e43 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityConverterRfHe.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityConverterRfHe.java @@ -3,6 +3,7 @@ package com.hbm.tileentity.machine; import java.util.ArrayList; import java.util.List; +import com.hbm.interfaces.Untested; import com.hbm.lib.Library; import com.hbm.tileentity.TileEntityMachineBase; @@ -10,55 +11,24 @@ import api.hbm.energy.IEnergyGenerator; import cofh.api.energy.EnergyStorage; import cofh.api.energy.IEnergyHandler; import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.util.ForgeDirection; -public class TileEntityConverterRfHe extends TileEntityMachineBase implements IEnergyGenerator, IEnergyHandler { - - public long power; - public long maxPower = 500000000; - public EnergyStorage storage = new EnergyStorage(2000000000, 2000000000, 2000000000); - - public int buf; - - public TileEntityConverterRfHe() { - super(0); +public class TileEntityConverterRfHe extends TileEntity implements IEnergyGenerator, IEnergyHandler { + + @Override + public void setPower(long power) { + subBuffer = power; } @Override - public String getName() { - return ""; + public long getPower() { + return subBuffer; } - + @Override - public void updateEntity() { - - if (!worldObj.isRemote) { - - power = storage.getEnergyStored() / 4; - maxPower = Math.max(1000000, power); - - buf = storage.getEnergyStored(); - - - for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) - this.sendPower(worldObj, xCoord + dir.offsetX, yCoord + dir.offsetY, zCoord + dir.offsetZ, dir); - - storage.setEnergyStored((int)power * 4); - - NBTTagCompound data = new NBTTagCompound(); - data.setInteger("rf", storage.getEnergyStored()); - data.setInteger("maxrf", storage.getEnergyStored()); - data.setLong("he", power); - data.setLong("maxhe", power); - this.networkPack(data, 25); - } - } - - public void networkUnpack(NBTTagCompound nbt) { - storage.setEnergyStored(nbt.getInteger("rf")); - storage.setCapacity(nbt.getInteger("maxrf")); - power = nbt.getLong("he"); - maxPower = nbt.getLong("maxhe"); + public long getMaxPower() { + return subBuffer; } @Override @@ -66,67 +36,37 @@ public class TileEntityConverterRfHe extends TileEntityMachineBase implements IE return true; } + private long subBuffer; + + @Untested @Override public int receiveEnergy(ForgeDirection from, int maxReceive, boolean simulate) { - storage.setCapacity(2000000000); - return storage.receiveEnergy(maxReceive, simulate); - } - - @Override - public int getEnergyStored(ForgeDirection from) { - return storage.getEnergyStored(); - } - - @Override - public int getMaxEnergyStored(ForgeDirection from) { - if(storage.getEnergyStored() < 4000000) - return 2000000000; + if(simulate) + return 0; - return storage.getMaxEnergyStored(); - } - - public long getPowerScaled(long i) { - return (power * i) / maxPower; - } - - public int getFluxScaled(int i) { - return (storage.getEnergyStored() * i) / storage.getMaxEnergyStored(); - } - - @Override - public long getPower() { - return power; - } - - @Override - public void setPower(long i) { - this.power = i; - } - - @Override - public long getMaxPower() { - return this.maxPower; - } - - @Override - public void readFromNBT(NBTTagCompound nbt) { - super.readFromNBT(nbt); + long capacity = maxReceive * 4L; + subBuffer = capacity; - this.power = nbt.getLong("power"); - storage.readFromNBT(nbt); - } - - @Override - public void writeToNBT(NBTTagCompound nbt) { - super.writeToNBT(nbt); + for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) { + this.sendPower(worldObj, xCoord + dir.offsetX, yCoord + dir.offsetY, zCoord + dir.offsetZ, dir); + } - nbt.setLong("power", power); - storage.writeToNBT(nbt); + return (int) ((capacity - subBuffer) / 4L); } @Override public int extractEnergy(ForgeDirection from, int maxExtract, boolean simulate) { return 0; } + + @Override + public int getEnergyStored(ForgeDirection from) { + return 0; + } + + @Override + public int getMaxEnergyStored(ForgeDirection from) { + return 1000000; + } } diff --git a/src/main/java/com/hbm/util/LoggingUtil.java b/src/main/java/com/hbm/util/LoggingUtil.java new file mode 100644 index 000000000..a51c37b59 --- /dev/null +++ b/src/main/java/com/hbm/util/LoggingUtil.java @@ -0,0 +1,23 @@ +package com.hbm.util; + +import com.hbm.main.MainRegistry; + +public class LoggingUtil { + + /* + * Only works with ANSI-compatible outputs. http://www.mihai-nita.net/eclipse works really well for dev envs. + */ + public static final String ANSI_RESET = "\u001B[0m"; + public static final String ANSI_BLACK = "\u001B[30m"; + public static final String ANSI_RED = "\u001B[31m"; + public static final String ANSI_GREEN = "\u001B[32m"; + public static final String ANSI_YELLOW = "\u001B[33m"; + public static final String ANSI_BLUE = "\u001B[34m"; + public static final String ANSI_PURPLE = "\u001B[35m"; + public static final String ANSI_CYAN = "\u001B[36m"; + public static final String ANSI_WHITE = "\u001B[37m"; + + public static void errorWithHighlight(String error) { + MainRegistry.logger.error(ANSI_RED + error + ANSI_RESET); + } +} diff --git a/src/main/resources/assets/hbm/models/weapons/stinger.obj b/src/main/resources/assets/hbm/models/weapons/stinger.obj new file mode 100644 index 000000000..06422b0b2 --- /dev/null +++ b/src/main/resources/assets/hbm/models/weapons/stinger.obj @@ -0,0 +1,882 @@ +# Blender v2.79 (sub 0) OBJ File: '' +# www.blender.org +mtllib stinger.(1obj.mtl +o Cube.001_Cube.002 +v 0.393889 3.128783 -9.337228 +v 0.393890 1.846543 -5.892444 +v 0.393889 1.846542 -9.337228 +v -0.393894 3.128783 -5.892444 +v -0.393895 1.846542 -9.337228 +v -0.393894 1.846543 -5.892444 +v -0.393895 3.128783 -9.337228 +v -0.000002 3.303435 -5.049528 +v -0.382998 1.728983 -5.208168 +v -0.000002 1.728983 -5.049528 +v -0.382998 3.303435 -5.208168 +v -0.541638 1.728983 -5.591164 +v -0.541638 3.303435 -5.591164 +v -0.382998 1.728983 -5.974160 +v -0.382998 3.303435 -5.974160 +v -0.000002 1.728983 -6.132800 +v -0.000002 3.303435 -6.132800 +v 0.382994 1.728983 -5.974160 +v 0.382994 3.303435 -5.974160 +v 0.541634 1.728983 -5.591164 +v 0.541634 3.303435 -5.591164 +v 0.382994 1.728983 -5.208168 +v 0.382994 3.303435 -5.208168 +v -1.403786 4.699999 -5.797567 +v -1.686627 4.582843 -7.948311 +v -1.686626 4.582843 -5.797567 +v -1.803787 4.299999 -7.948311 +v -1.803786 4.299999 -5.797567 +v -1.686626 4.017155 -5.797567 +v -1.686627 4.017155 -7.948311 +v -1.403786 3.899999 -5.797567 +v -1.403787 3.899999 -7.948311 +v -1.120942 4.017155 -5.797567 +v -1.003787 4.299999 -7.948312 +v -1.003786 4.299999 -5.797568 +v -1.883787 4.299999 -7.982080 +v -1.743199 3.960587 -7.982080 +v -1.120943 4.582843 -7.948312 +v -1.120942 4.582843 -5.797568 +v -0.923786 4.299999 -5.755472 +v -0.923787 4.299999 -7.982080 +v -1.064375 4.639411 -8.277956 +v -1.064375 4.639411 -7.982080 +v -1.120943 4.017155 -7.948311 +v -1.403787 3.819999 -7.982080 +v -1.064375 3.960587 -7.982080 +v -1.403787 4.699999 -7.948311 +v -1.403787 4.779999 -7.982080 +v -1.743199 4.639411 -7.982080 +v -0.923787 4.299999 -8.277956 +v -1.743199 3.960587 -8.277955 +v -1.883787 4.299999 -8.277955 +v -1.403787 3.819999 -8.277956 +v -1.064375 3.960587 -8.277956 +v -1.743199 4.639411 -8.277956 +v -1.403787 4.779999 -8.277956 +v -1.403786 4.779999 -5.755472 +v -1.064374 4.639411 -5.489088 +v -1.064374 4.639411 -5.755472 +v -1.883786 4.299999 -5.755472 +v -1.743198 4.639411 -5.755472 +v -1.064374 3.960587 -5.755472 +v -1.403786 3.819999 -5.755472 +v -1.743198 3.960587 -5.755472 +v -1.743198 3.960587 -5.489088 +v -0.923786 4.299999 -5.489088 +v -1.883786 4.299999 -5.489088 +v -1.064374 3.960587 -5.489088 +v -1.743198 4.639411 -5.489088 +v -1.403786 3.819999 -5.489088 +v -1.403786 4.779999 -5.489088 +v -1.473919 4.208779 -7.811895 +v -0.447114 3.729971 -5.941060 +v -0.447115 3.729971 -7.811896 +v 0.128767 2.756387 -3.983544 +v 0.128767 1.614719 -3.555136 +v 0.128767 1.614719 -3.983544 +v 0.128767 2.756387 -3.555136 +v -0.128769 1.614719 -3.555136 +v -0.128769 2.756387 -3.555136 +v -0.128769 1.614719 -3.983544 +v -0.128769 2.756387 -3.983544 +v 0.190951 3.077327 -3.167776 +v -0.208109 2.727468 -3.531600 +v 0.197875 2.727295 -3.523528 +v -0.198185 2.731559 -4.030576 +v 0.207799 2.731387 -4.022504 +v -0.191081 3.087375 -4.380480 +v 0.214907 3.087207 -4.372408 +v -0.207801 3.932427 -3.521620 +v -0.190953 3.586487 -4.376348 +v -0.214909 3.576612 -3.171716 +v 0.215035 3.586319 -4.368276 +v 0.198183 3.932260 -3.513548 +v 0.191079 3.576439 -3.163644 +v 0.771273 5.530663 -9.417193 +v 0.771274 4.098263 -6.669316 +v 0.771273 4.098262 -9.417192 +v 0.771274 5.530663 -6.669316 +v -0.771278 4.098263 -6.669316 +v -0.771278 5.530663 -6.669316 +v -0.771279 4.098262 -9.417192 +v -0.000003 4.089742 -9.779048 +v -0.346641 3.977118 9.779048 +v 0.000003 4.089750 9.779048 +v -0.346647 3.977114 -9.779048 +v -0.560881 3.682245 9.779048 +v -0.560887 3.682238 -9.779048 +v -0.560881 3.317762 9.779048 +v -0.560887 3.317755 -9.779048 +v -0.346641 3.022886 9.779048 +v -0.346647 3.022882 -9.779048 +v 0.000003 2.910254 9.779048 +v -0.000003 2.910250 -9.779048 +v 0.346647 3.022886 9.779048 +v 0.346641 3.022882 -9.779048 +v 0.560887 3.317762 9.779048 +v 0.560881 3.317755 -9.779048 +v 0.560887 3.682245 9.779048 +v -0.381311 4.024827 -9.822908 +v 0.560881 3.682238 -9.779048 +v 0.346647 3.977118 9.779048 +v 0.346641 3.977114 -9.779048 +v 0.519971 4.215673 9.897908 +v -0.841321 3.226638 9.897908 +v 0.841327 3.773365 9.897908 +v -0.841321 3.773365 9.897908 +v 0.841327 3.226638 9.897908 +v 0.519971 2.784330 9.897908 +v 0.000003 2.615382 9.897908 +v -0.519965 2.784330 9.897908 +v -0.519965 4.215673 9.897908 +v 0.000003 4.384622 9.897908 +v -0.616975 3.299531 -9.822908 +v -0.616975 3.700462 -10.379472 +v -0.616975 3.299530 -10.379472 +v -0.616975 3.700462 -9.822908 +v 0.381305 4.024827 -9.822908 +v -0.000003 4.148718 -9.822908 +v 0.616969 3.700462 -9.822908 +v 0.616969 3.299531 -9.822908 +v 0.381305 2.975170 -9.822908 +v -0.381311 2.975170 -9.822908 +v -0.000003 2.851278 -9.822908 +v 0.616969 3.700462 -10.379472 +v -0.000003 4.148718 -10.379472 +v 0.381305 2.975170 -10.379472 +v 0.616969 3.299530 -10.379472 +v -0.381311 2.975170 -10.379472 +v -0.381311 4.024827 -10.379472 +v -0.000003 2.851278 -10.379472 +v 0.381305 4.024827 -10.379472 +v 0.393890 3.128783 -5.892444 +v -1.473918 4.208779 -5.941060 +v -0.215037 3.077499 -3.175848 +v -0.197877 3.936519 -4.020596 +v 0.208107 3.936351 -4.012524 +v -0.771279 5.530663 -9.417192 +vt 0.527579 0.843077 +vt 0.818514 0.903517 +vt 0.527579 0.904025 +vt 0.818514 0.999529 +vt 0.527579 0.938195 +vt 0.818514 0.938957 +vt 0.451532 0.938195 +vt 0.601607 0.751835 +vt 0.564045 0.842170 +vt 0.601607 0.842170 +vt 0.564045 0.751835 +vt 0.526858 0.842170 +vt 0.526858 0.751835 +vt 0.490047 0.842170 +vt 0.490047 0.751835 +vt 0.452109 0.842170 +vt 0.751857 0.751835 +vt 0.714295 0.842170 +vt 0.751857 0.842170 +vt 0.714295 0.751835 +vt 0.676356 0.842170 +vt 0.676356 0.751835 +vt 0.639545 0.842170 +vt 0.639545 0.751835 +vt 0.525741 0.869077 +vt 0.515026 0.885956 +vt 0.463759 0.885334 +vt 0.601692 0.396030 +vt 0.639188 0.583813 +vt 0.639188 0.396030 +vt 0.676683 0.583813 +vt 0.676683 0.396030 +vt 0.714179 0.396030 +vt 0.714179 0.583813 +vt 0.751674 0.396030 +vt 0.451711 0.583813 +vt 0.489206 0.396030 +vt 0.451711 0.396030 +vt 0.526701 0.583813 +vt 0.526701 0.396030 +vt 0.676683 0.593980 +vt 0.714179 0.593980 +vt 0.564197 0.583813 +vt 0.564197 0.396030 +vt 0.526701 0.385823 +vt 0.526701 0.593980 +vt 0.564197 0.619244 +vt 0.564197 0.593980 +vt 0.489206 0.583813 +vt 0.751674 0.583813 +vt 0.751674 0.593980 +vt 0.489206 0.593980 +vt 0.601692 0.583813 +vt 0.601692 0.593980 +vt 0.639188 0.593980 +vt 0.451827 0.314796 +vt 0.579610 0.279064 +vt 0.601536 0.314798 +vt 0.451711 0.619244 +vt 0.489206 0.619244 +vt 0.714179 0.619244 +vt 0.639188 0.619244 +vt 0.601692 0.619244 +vt 0.526701 0.619244 +vt 0.751674 0.619244 +vt 0.676683 0.619244 +vt 0.601692 0.385823 +vt 0.564197 0.365688 +vt 0.564197 0.385823 +vt 0.676683 0.385823 +vt 0.639188 0.385823 +vt 0.489206 0.385823 +vt 0.451711 0.385823 +vt 0.714179 0.385823 +vt 0.624771 0.279664 +vt 0.751320 0.315075 +vt 0.603068 0.315060 +vt 0.526701 0.365688 +vt 0.489206 0.365688 +vt 0.751674 0.385823 +vt 0.714179 0.365688 +vt 0.639188 0.365688 +vt 0.451711 0.365688 +vt 0.676683 0.365688 +vt 0.601692 0.365688 +vt 0.751346 0.193282 +vt 0.452761 0.263765 +vt 0.751346 0.263765 +vt 0.647089 0.751158 +vt 0.571440 0.645292 +vt 0.647089 0.645292 +vt 0.571440 0.751158 +vt 0.526386 0.644688 +vt 0.526386 0.751158 +vt 0.451379 0.644688 +vt 0.691237 0.751158 +vt 0.691237 0.645292 +vt 0.451379 0.619409 +vt 0.526386 0.619409 +vt 0.820207 0.914045 +vt 0.865118 0.939246 +vt 0.865118 0.914045 +vt 0.954494 0.939246 +vt 0.954494 0.914045 +vt 1.000067 0.939246 +vt 1.000067 0.914045 +vt 0.948519 0.999611 +vt 0.821154 0.982062 +vt 0.999562 0.982062 +vt 0.997335 0.982124 +vt 0.872418 0.999486 +vt 0.821195 0.982124 +vt 0.998746 0.842514 +vt 0.916847 0.720802 +vt 0.916847 0.842514 +vt 0.916847 0.665046 +vt 0.834948 0.720802 +vt 0.753049 0.720802 +vt 0.834948 0.842514 +vt 0.225330 0.955040 +vt 0.262812 0.116603 +vt 0.225330 0.116603 +vt 0.262812 0.955040 +vt 0.300293 0.116603 +vt 0.300293 0.955040 +vt 0.337775 0.116603 +vt 0.337775 0.955040 +vt 0.375256 0.116603 +vt 0.375256 0.955040 +vt 0.412738 0.116603 +vt 0.037923 0.955040 +vt 0.075404 0.116603 +vt 0.037923 0.116603 +vt 0.075404 0.955040 +vt 0.112886 0.116603 +vt 0.112886 0.955040 +vt 0.150367 0.116603 +vt 0.262812 0.959827 +vt 0.150367 0.955040 +vt 0.187849 0.116603 +vt 0.187849 0.955040 +vt 0.187849 0.101602 +vt 0.144918 0.065072 +vt 0.006436 0.036153 +vt 0.145032 0.034460 +vt 0.150367 0.101602 +vt 0.112886 0.101602 +vt 0.075404 0.101602 +vt 0.037923 0.101602 +vt 0.375256 0.101602 +vt 0.337775 0.101602 +vt 0.262812 0.101602 +vt 0.225330 0.101602 +vt 0.300293 0.101602 +vt 0.337775 0.959827 +vt 0.300293 0.999948 +vt 0.337775 0.999948 +vt 0.300293 0.959827 +vt 0.187849 0.959827 +vt 0.225330 0.959827 +vt 0.150367 0.959827 +vt 0.112886 0.959827 +vt 0.075404 0.959827 +vt 0.412738 0.955040 +vt 0.375256 0.959827 +vt 0.412738 0.959827 +vt 0.153921 0.065967 +vt 0.296232 0.034750 +vt 0.295940 0.065362 +vt 0.225330 0.999948 +vt 0.075404 0.999948 +vt 0.112886 0.999948 +vt 0.375256 0.999948 +vt 0.262812 0.999948 +vt 0.150367 0.999948 +vt 0.412738 0.999948 +vt 0.187849 0.999948 +vt 0.037923 0.999948 +vt 0.818514 0.843077 +vt 0.527579 0.999529 +vt 0.451532 0.904025 +vt 0.452109 0.751835 +vt 0.453239 0.868198 +vt 0.463954 0.851318 +vt 0.489628 0.844584 +vt 0.515221 0.851940 +vt 0.489352 0.892690 +vt 0.451711 0.593980 +vt 0.579613 0.350531 +vt 0.473752 0.350529 +vt 0.526683 0.365331 +vt 0.473750 0.279063 +vt 0.526680 0.264262 +vt 0.729617 0.350470 +vt 0.677205 0.365127 +vt 0.624787 0.350459 +vt 0.677183 0.265008 +vt 0.729601 0.279675 +vt 0.751674 0.365688 +vt 0.452761 0.193282 +vt 0.451379 0.751158 +vt 0.820207 0.939246 +vt 0.872853 0.939693 +vt 0.947243 0.939693 +vt 0.999034 0.957243 +vt 0.820625 0.957243 +vt 0.874129 0.999611 +vt 0.821713 0.957571 +vt 0.997853 0.957571 +vt 0.873670 0.940209 +vt 0.946630 0.940209 +vt 0.945378 0.999486 +vt 0.998746 0.720802 +vt 0.834948 0.665046 +vt 0.753049 0.842514 +vt 0.032998 0.011064 +vt 0.075862 0.001081 +vt 0.118655 0.010018 +vt 0.118356 0.090161 +vt 0.032699 0.091207 +vt 0.075492 0.100143 +vt 0.006322 0.066764 +vt 0.412738 0.101602 +vt 0.037923 0.959827 +vt 0.268581 0.090244 +vt 0.224605 0.099890 +vt 0.180808 0.090618 +vt 0.154212 0.035355 +vt 0.181571 0.010473 +vt 0.225547 0.000826 +vt 0.269344 0.010099 +vn 1.0000 0.0000 -0.0000 +vn -1.0000 -0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 -1.0000 0.0000 +vn -0.3827 0.0000 0.9239 +vn -0.9239 0.0000 0.3827 +vn -0.9239 -0.0000 -0.3827 +vn -0.3827 -0.0000 -0.9239 +vn 0.3827 -0.0000 -0.9239 +vn 0.9239 0.0000 -0.3827 +vn 0.9239 0.0000 0.3827 +vn 0.3827 0.0000 0.9239 +vn -0.3827 0.9239 0.0000 +vn -0.9239 0.3827 0.0000 +vn -0.9239 -0.3827 0.0000 +vn -0.3827 -0.9239 0.0000 +vn 0.3827 -0.9239 0.0000 +vn 0.9239 -0.3827 -0.0000 +vn -0.3839 -0.1590 0.9096 +vn 0.9239 0.3827 -0.0000 +vn 0.3827 0.9239 -0.0000 +vn 0.4572 0.1894 -0.8689 +vn 0.3839 -0.1590 0.9096 +vn -0.1590 -0.3839 0.9096 +vn 0.3839 0.1590 0.9096 +vn -0.3839 0.1590 0.9096 +vn 0.1590 -0.3839 0.9096 +vn 0.1590 0.3839 0.9096 +vn -0.1590 0.3839 0.9096 +vn -0.4572 0.1894 -0.8689 +vn 0.1894 -0.4572 -0.8689 +vn 0.1894 0.4572 -0.8689 +vn -0.1894 0.4572 -0.8689 +vn -0.4572 -0.1894 -0.8690 +vn -0.4572 -0.1894 -0.8689 +vn 0.4572 -0.1894 -0.8689 +vn -0.1894 -0.4572 -0.8689 +vn 0.0000 0.0000 1.0000 +vn 0.4226 0.9063 -0.0000 +vn -0.0142 -0.7129 0.7011 +vn -0.0003 -1.0000 -0.0082 +vn 0.0139 -0.7012 -0.7128 +vn -0.9998 0.0004 -0.0199 +vn 0.9998 -0.0004 0.0199 +vn -0.3090 0.9511 -0.0000 +vn -0.8090 0.5878 0.0000 +vn -0.8090 -0.5878 0.0000 +vn -0.3090 -0.9511 0.0000 +vn 0.3090 -0.9511 0.0000 +vn 0.8090 -0.5878 -0.0000 +vn -0.1904 0.5858 0.7877 +vn -0.1903 0.5859 0.7877 +vn 0.8090 0.5878 -0.0000 +vn 0.3090 0.9511 -0.0000 +vn 0.1206 0.3711 -0.9207 +vn 0.3157 0.2294 -0.9207 +vn 0.3902 0.0000 -0.9207 +vn 0.3157 -0.2294 -0.9207 +vn 0.1206 -0.3711 -0.9207 +vn -0.1206 -0.3711 -0.9207 +vn -0.3157 -0.2294 -0.9207 +vn -0.1206 0.3711 -0.9207 +vn -0.3902 0.0000 -0.9207 +vn -0.3157 0.2294 -0.9207 +vn -0.6160 0.0000 0.7877 +vn -0.4984 0.3621 0.7877 +vn -0.4983 0.3621 0.7877 +vn -0.4983 0.3621 0.7878 +vn 0.1904 0.5858 0.7877 +vn 0.1903 0.5859 0.7877 +vn 0.4984 0.3621 0.7877 +vn 0.4983 0.3621 0.7877 +vn 0.6160 0.0000 0.7877 +vn 0.4984 -0.3621 0.7877 +vn 0.1904 -0.5859 0.7877 +vn -0.1904 -0.5859 0.7877 +vn -0.4984 -0.3621 0.7877 +vn -0.4572 0.1894 -0.8690 +vn -0.4983 -0.3621 0.7877 +usemtl None +s 1 +f 1/1/1 2/2/1 3/3/1 +f 4/4/2 5/5/2 6/6/2 +f 7/7/3 3/3/3 5/5/3 +f 6/6/4 3/3/4 2/2/4 +f 8/8/5 9/9/5 10/10/5 +f 11/11/6 12/12/6 9/9/6 +f 13/13/7 14/14/7 12/12/7 +f 15/15/8 16/16/8 14/14/8 +f 17/17/9 18/18/9 16/19/9 +f 19/20/10 20/21/10 18/18/10 +f 21/22/11 22/23/11 20/21/11 +f 23/24/12 10/10/12 22/23/12 +f 16/25/4 18/26/4 22/27/4 +f 24/28/13 25/29/13 26/30/13 +f 26/30/14 27/31/14 28/32/14 +f 27/31/15 29/33/15 28/32/15 +f 30/34/16 31/35/16 29/33/16 +f 32/36/17 33/37/17 31/38/17 +f 33/37/18 34/39/18 35/40/18 +f 30/34/19 36/41/19 37/42/19 +f 35/40/20 38/43/20 39/44/20 +f 38/43/21 24/28/21 39/44/21 +f 39/44/22 40/45/22 35/40/22 +f 41/46/20 42/47/20 43/48/20 +f 44/49/23 41/46/23 34/39/23 +f 32/50/24 37/42/24 45/51/24 +f 38/43/25 41/46/25 43/48/25 +f 25/29/26 36/41/26 27/31/26 +f 32/36/27 46/52/27 44/49/27 +f 47/53/28 43/48/28 48/54/28 +f 47/53/29 49/55/29 25/29/29 +f 50/56/3 51/57/3 52/58/3 +f 46/52/17 53/59/17 54/60/17 +f 36/41/15 51/61/15 37/42/15 +f 48/54/13 55/62/13 49/55/13 +f 43/48/21 56/63/21 48/54/21 +f 46/52/18 50/64/18 41/46/18 +f 37/42/16 53/65/16 45/51/16 +f 49/55/14 52/66/14 36/41/14 +f 57/67/21 58/68/21 59/69/21 +f 26/30/30 60/70/30 61/71/30 +f 31/38/31 62/72/31 63/73/31 +f 24/28/32 59/69/32 39/44/32 +f 24/28/33 61/71/33 57/67/33 +f 29/33/34 60/70/35 28/32/35 +f 33/37/36 40/45/36 62/72/36 +f 31/35/37 64/74/37 29/33/37 +f 65/75/38 66/76/38 67/77/38 +f 62/72/18 66/78/18 68/79/18 +f 63/80/16 65/81/16 64/74/16 +f 60/70/14 69/82/14 61/71/14 +f 40/45/20 58/68/20 66/78/20 +f 62/72/17 70/83/17 63/73/17 +f 64/74/15 67/84/15 60/70/15 +f 61/71/13 71/85/13 57/67/13 +f 72/86/39 73/87/39 74/88/39 +f 75/89/1 76/90/1 77/91/1 +f 78/92/38 79/93/38 76/90/38 +f 80/94/2 81/95/2 79/93/2 +f 82/96/3 77/91/3 81/97/3 +f 79/93/4 77/98/4 76/99/4 +f 83/100/40 84/101/40 85/102/40 +f 85/102/41 86/103/41 87/104/41 +f 87/104/42 88/105/42 89/106/42 +f 90/107/43 91/108/43 92/109/43 +f 93/110/44 94/111/44 95/112/44 +f 96/113/1 97/114/1 98/115/1 +f 99/116/38 100/117/38 97/114/38 +f 101/118/2 102/119/2 100/117/2 +f 100/117/4 98/115/4 97/114/4 +f 103/120/45 104/121/45 105/122/45 +f 106/123/46 107/124/46 104/121/46 +f 108/125/2 109/126/2 107/124/2 +f 110/127/47 111/128/47 109/126/47 +f 112/129/48 113/130/48 111/128/48 +f 114/131/49 115/132/49 113/133/49 +f 116/134/50 117/135/50 115/132/50 +f 118/136/1 119/137/1 117/135/1 +f 103/120/51 120/138/52 106/123/52 +f 121/139/53 122/140/53 119/137/53 +f 123/141/54 105/122/54 122/140/54 +f 105/122/55 124/142/55 122/140/55 +f 125/143/38 126/144/38 127/145/38 +f 122/140/56 126/146/56 119/137/56 +f 117/135/57 126/146/57 128/147/57 +f 115/132/58 128/147/58 129/148/58 +f 113/133/59 129/148/59 130/149/59 +f 113/130/60 131/150/60 111/128/60 +f 111/128/61 125/151/61 109/126/61 +f 105/122/62 132/152/62 133/153/62 +f 109/126/63 127/154/63 107/124/63 +f 104/121/64 127/154/64 132/152/64 +f 134/155/2 135/156/2 136/157/2 +f 108/125/65 134/155/65 110/127/65 +f 106/123/66 137/158/67 108/125/68 +f 103/120/69 138/159/70 139/160/69 +f 123/141/71 140/161/72 138/159/71 +f 118/136/73 140/161/73 121/139/73 +f 116/134/74 141/162/74 118/136/74 +f 114/131/75 142/163/75 116/134/75 +f 114/164/76 143/165/76 144/166/76 +f 112/129/77 134/155/77 143/165/77 +f 145/167/3 136/168/3 135/169/3 +f 138/159/54 146/170/54 139/160/54 +f 141/162/50 147/171/50 148/172/50 +f 143/165/47 136/157/47 149/173/47 +f 139/160/45 150/174/45 120/138/45 +f 141/162/1 145/175/1 140/161/1 +f 144/166/48 149/173/48 151/176/48 +f 120/138/46 135/156/46 137/158/46 +f 140/161/53 152/177/53 138/159/53 +f 142/163/49 151/178/49 147/171/49 +f 1/1/1 153/179/1 2/2/1 +f 4/4/2 7/180/2 5/5/2 +f 7/7/3 1/181/3 3/3/3 +f 6/6/4 5/5/4 3/3/4 +f 8/8/5 11/11/5 9/9/5 +f 11/11/6 13/13/6 12/12/6 +f 13/13/7 15/15/7 14/14/7 +f 15/15/8 17/182/8 16/16/8 +f 17/17/9 19/20/9 18/18/9 +f 19/20/10 21/22/10 20/21/10 +f 21/22/11 23/24/11 22/23/11 +f 23/24/12 8/8/12 10/10/12 +f 22/27/4 10/183/4 16/25/4 +f 9/184/4 12/185/4 14/186/4 +f 14/186/4 16/25/4 10/183/4 +f 18/26/4 20/187/4 22/27/4 +f 10/183/4 9/184/4 14/186/4 +f 24/28/13 47/53/13 25/29/13 +f 26/30/14 25/29/14 27/31/14 +f 27/31/15 30/34/15 29/33/15 +f 30/34/16 32/50/16 31/35/16 +f 32/36/17 44/49/17 33/37/17 +f 33/37/18 44/49/18 34/39/18 +f 30/34/19 27/31/19 36/41/19 +f 35/40/20 34/39/20 38/43/20 +f 38/43/21 47/53/21 24/28/21 +f 39/44/22 59/69/22 40/45/22 +f 41/46/20 50/64/20 42/47/20 +f 44/49/23 46/52/23 41/46/23 +f 32/50/24 30/34/24 37/42/24 +f 38/43/25 34/39/25 41/46/25 +f 25/29/26 49/55/26 36/41/26 +f 32/36/27 45/188/27 46/52/27 +f 47/53/28 38/43/28 43/48/28 +f 47/53/29 48/54/29 49/55/29 +f 52/58/3 55/189/3 42/190/3 +f 56/191/3 42/190/3 55/189/3 +f 50/56/3 54/192/3 51/57/3 +f 53/193/3 51/57/3 54/192/3 +f 52/58/3 42/190/3 50/56/3 +f 46/52/17 45/188/17 53/59/17 +f 36/41/15 52/66/15 51/61/15 +f 48/54/13 56/63/13 55/62/13 +f 43/48/21 42/47/21 56/63/21 +f 46/52/18 54/60/18 50/64/18 +f 37/42/16 51/61/16 53/65/16 +f 49/55/14 55/62/14 52/66/14 +f 57/67/21 71/85/21 58/68/21 +f 26/30/30 28/32/78 60/70/30 +f 31/38/31 33/37/31 62/72/31 +f 24/28/32 57/67/32 59/69/32 +f 24/28/33 26/30/33 61/71/33 +f 29/33/34 64/74/34 60/70/35 +f 33/37/36 35/40/36 40/45/36 +f 31/35/37 63/80/37 64/74/37 +f 58/194/38 71/195/38 69/196/38 +f 69/196/38 67/77/38 58/194/38 +f 65/75/38 70/197/38 68/198/38 +f 68/198/38 66/76/38 65/75/38 +f 58/194/38 67/77/38 66/76/38 +f 62/72/18 40/45/18 66/78/18 +f 63/80/16 70/199/16 65/81/16 +f 60/70/14 67/84/14 69/82/14 +f 40/45/20 59/69/20 58/68/20 +f 62/72/17 68/79/17 70/83/17 +f 64/74/15 65/81/15 67/84/15 +f 61/71/13 69/82/13 71/85/13 +f 72/86/39 154/200/39 73/87/39 +f 75/89/1 78/92/1 76/90/1 +f 78/92/38 80/94/38 79/93/38 +f 80/94/2 82/201/2 81/95/2 +f 82/96/3 75/89/3 77/91/3 +f 79/93/4 81/95/4 77/98/4 +f 83/100/40 155/202/40 84/101/40 +f 85/102/41 84/101/41 86/103/41 +f 87/104/42 86/103/42 88/105/42 +f 86/203/43 84/204/43 155/205/43 +f 155/205/43 92/109/43 88/206/43 +f 90/107/43 156/207/43 91/108/43 +f 91/108/43 88/206/43 92/109/43 +f 86/203/43 155/205/43 88/206/43 +f 95/112/44 83/208/44 89/209/44 +f 85/210/44 87/211/44 83/208/44 +f 89/209/44 93/110/44 95/112/44 +f 157/212/44 94/111/44 93/110/44 +f 83/208/44 87/211/44 89/209/44 +f 96/113/1 99/213/1 97/114/1 +f 99/116/38 101/214/38 100/117/38 +f 101/118/2 158/215/2 102/119/2 +f 100/117/4 102/119/4 98/115/4 +f 103/120/45 106/123/45 104/121/45 +f 106/123/46 108/125/46 107/124/46 +f 108/125/2 110/127/2 109/126/2 +f 110/127/47 112/129/47 111/128/47 +f 112/129/48 114/164/48 113/130/48 +f 114/131/49 116/134/49 115/132/49 +f 116/134/50 118/136/50 117/135/50 +f 118/136/1 121/139/1 119/137/1 +f 103/120/51 139/160/51 120/138/52 +f 121/139/53 123/141/53 122/140/53 +f 123/141/54 103/120/54 105/122/54 +f 105/122/55 133/153/55 124/142/55 +f 124/216/38 133/217/38 132/218/38 +f 132/218/38 127/145/38 124/216/38 +f 125/143/38 131/219/38 129/220/38 +f 130/221/38 129/220/38 131/219/38 +f 128/222/38 126/144/38 125/143/38 +f 124/216/38 127/145/38 126/144/38 +f 125/143/38 129/220/38 128/222/38 +f 122/140/56 124/142/56 126/146/56 +f 117/135/57 119/137/57 126/146/57 +f 115/132/58 117/135/58 128/147/58 +f 113/133/59 115/132/59 129/148/59 +f 113/130/60 130/223/60 131/150/60 +f 111/128/61 131/150/61 125/151/61 +f 105/122/62 104/121/62 132/152/62 +f 109/126/63 125/151/63 127/154/63 +f 104/121/64 107/124/64 127/154/64 +f 134/155/2 137/158/2 135/156/2 +f 108/125/65 137/158/65 134/155/65 +f 106/123/66 120/138/66 137/158/67 +f 103/120/69 123/141/70 138/159/70 +f 123/141/71 121/139/72 140/161/72 +f 118/136/73 141/162/73 140/161/73 +f 116/134/74 142/163/74 141/162/74 +f 114/131/75 144/224/75 142/163/75 +f 114/164/76 112/129/76 143/165/76 +f 112/129/77 110/127/79 134/155/77 +f 135/169/3 150/225/3 145/167/3 +f 146/226/3 152/227/3 150/225/3 +f 145/167/3 148/228/3 136/168/3 +f 147/229/3 151/230/3 149/231/3 +f 149/231/3 136/168/3 148/228/3 +f 150/225/3 152/227/3 145/167/3 +f 148/228/3 147/229/3 149/231/3 +f 138/159/54 152/177/54 146/170/54 +f 141/162/50 142/163/50 147/171/50 +f 143/165/47 134/155/47 136/157/47 +f 139/160/45 146/170/45 150/174/45 +f 141/162/1 148/172/1 145/175/1 +f 144/166/48 143/165/48 149/173/48 +f 120/138/46 150/174/46 135/156/46 +f 140/161/53 145/175/53 152/177/53 +f 142/163/49 144/224/49 151/178/49 +o Mag_Cube.002 +v -0.089029 2.933951 -0.760703 +v -0.089029 1.301304 -1.115814 +v -0.089029 1.283170 -0.753593 +v 0.138329 2.939292 -1.161489 +v -0.089029 2.939292 -1.161489 +v 0.138329 2.933951 -0.760703 +v 0.110239 1.325914 -0.657225 +v 0.138329 1.283170 -0.753593 +v -0.060939 3.704485 -0.669529 +v 0.110239 3.704485 -0.669529 +v 0.138329 3.754883 -1.150658 +v -0.089029 3.752410 -0.837243 +v 0.138329 3.752410 -0.837243 +v -0.089029 3.732157 -0.767971 +v 0.138329 3.732157 -0.767971 +v 0.138329 2.961623 -0.842189 +v 0.138329 2.966964 -1.161489 +v -0.089029 2.966964 -1.161489 +v -0.089029 2.961623 -0.842189 +v -0.089029 3.754883 -1.150658 +v -0.089029 3.752410 -0.763026 +v 0.138329 3.752410 -0.763026 +v -0.060939 1.325914 -0.657225 +v 0.138329 1.301304 -1.115814 +vt 0.832504 0.337653 +vt 0.866722 0.059183 +vt 0.831819 0.056090 +vt 0.836432 0.315214 +vt 0.851387 0.264253 +vt 0.851387 0.315214 +vt 0.832504 0.337653 +vt 0.822533 0.063381 +vt 0.831819 0.056090 +vt 0.862646 0.264253 +vt 0.851387 0.337897 +vt 0.851387 0.264253 +vt 0.852658 0.180430 +vt 0.837703 0.171830 +vt 0.852658 0.171830 +vt 0.867566 0.223086 +vt 0.856749 0.233730 +vt 0.856749 0.223086 +vt 0.844313 0.232814 +vt 0.847847 0.242143 +vt 0.844313 0.243458 +vt 0.840356 0.342373 +vt 0.823718 0.469077 +vt 0.836432 0.316075 +vt 0.851387 0.316075 +vt 0.840356 0.342373 +vt 0.871123 0.338564 +vt 0.839879 0.477252 +vt 0.871123 0.343284 +vt 0.836432 0.340586 +vt 0.851387 0.340586 +vt 0.839879 0.477252 +vt 0.833204 0.473797 +vt 0.846791 0.232242 +vt 0.845893 0.221598 +vt 0.846791 0.221598 +vt 0.871123 0.343284 +vt 0.870079 0.477673 +vt 0.833204 0.473797 +vt 0.832728 0.477252 +vt 0.823718 0.469077 +vt 0.871123 0.338564 +vt 0.854191 0.233730 +vt 0.854191 0.223086 +vt 0.839550 0.169214 +vt 0.850810 0.169214 +vt 0.866722 0.059183 +vt 0.822533 0.063381 +vt 0.836432 0.264253 +vt 0.862646 0.337897 +vt 0.837703 0.180430 +vt 0.867566 0.233730 +vt 0.847847 0.234129 +vt 0.870079 0.477673 +vt 0.832728 0.477252 +vt 0.845893 0.232242 +vn -1.0000 0.0000 0.0000 +vn 0.0000 -0.0279 -0.9996 +vn 0.9599 0.0013 0.2804 +vn 0.9594 0.0014 0.2820 +vn 0.9602 0.0012 0.2793 +vn 0.0000 0.0052 1.0000 +vn 0.0000 -0.9987 -0.0500 +vn 0.0000 1.0000 0.0079 +vn 0.0000 1.0000 -0.0000 +vn 0.0000 0.9627 0.2706 +vn 0.9993 0.0350 0.0119 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0137 -0.9999 +vn 1.0000 0.0000 0.0000 +vn 0.0000 -0.2372 0.9715 +vn -0.9632 -0.0258 0.2676 +vn 0.0000 -0.9141 0.4055 +vn -0.9599 0.0013 0.2804 +vn -0.9594 0.0014 0.2820 +vn -0.9591 0.0015 0.2831 +vn 0.9591 0.0015 0.2831 +vn 0.9632 -0.0258 0.2676 +vn -0.9993 0.0350 0.0119 +vn -0.9602 0.0012 0.2793 +usemtl None_NONE +s 1 +f 159/232/80 160/233/80 161/234/80 +f 162/235/81 160/236/81 163/237/81 +f 164/238/82 165/239/83 166/240/84 +f 167/241/85 165/242/85 168/243/85 +f 160/244/86 166/245/86 161/246/86 +f 169/247/87 170/248/87 171/249/88 +f 172/250/89 168/251/89 173/252/89 +f 174/253/90 168/254/90 164/238/90 +f 175/255/91 163/237/91 176/256/92 +f 177/257/80 163/258/80 159/232/80 +f 170/259/80 176/260/80 177/257/80 +f 169/261/92 176/256/92 178/262/92 +f 171/263/93 173/264/93 174/253/93 +f 179/265/94 173/266/94 180/267/94 +f 171/263/93 175/268/93 169/269/93 +f 170/259/80 172/270/80 179/271/80 +f 177/257/95 167/272/95 172/270/95 +f 174/253/93 162/273/93 175/268/93 +f 171/249/88 179/274/88 180/275/88 +f 161/246/96 165/276/96 181/277/96 +f 164/238/93 182/278/93 162/273/93 +f 159/232/97 181/279/98 167/272/99 +f 159/232/80 163/258/80 160/233/80 +f 162/235/81 182/280/81 160/236/81 +f 164/238/82 168/254/100 165/239/83 +f 167/241/85 181/281/85 165/242/85 +f 160/244/86 182/282/86 166/245/86 +f 169/247/87 178/283/87 170/248/87 +f 172/250/89 167/284/89 168/251/89 +f 174/253/101 173/264/101 168/254/101 +f 175/255/91 162/235/91 163/237/91 +f 177/257/80 176/260/80 163/258/80 +f 170/259/80 178/285/80 176/260/80 +f 169/261/92 175/255/91 176/256/92 +f 171/263/93 180/286/93 173/264/93 +f 179/265/94 172/287/94 173/266/94 +f 171/263/93 174/253/93 175/268/93 +f 170/259/80 177/257/80 172/270/80 +f 177/257/102 159/232/102 167/272/102 +f 174/253/93 164/238/93 162/273/93 +f 171/249/88 170/248/87 179/274/88 +f 161/246/96 166/245/96 165/276/96 +f 164/238/93 166/240/93 182/278/93 +f 159/232/97 161/234/103 181/279/98 +