Geometry tempGeoCurrent;
    void decreaseStack(String qName,StringBuffer data) throws SAXException {        Object child,parent;        Node childNode,parentNode;        Geometry tempGeoCurrent;        Spatial parentSpatial,childSpatial;        if (qName.equalsIgnoreCase("Scene")){            myScene=(Node) s.pop();        } else if (qName.equals("node")){            childNode=(Node) s.pop();            parentNode=(Node) s.pop();            parentNode.attachChild(childNode);            s.push(parentNode);        } else if (qName.equals("materialstate")){            MaterialState childMaterial=(MaterialState) s.pop();            parentSpatial=(Spatial) s.pop();            parentSpatial.setRenderState(childMaterial);            s.push(parentSpatial);        } else if (qName.equals("texturestate")){            TextureState childMaterial=(TextureState) s.pop();            parentSpatial=(Spatial) s.pop();            parentSpatial.setRenderState(childMaterial);            s.push(parentSpatial);        } else if (qName.equals("mesh")){            TriMesh childMesh=(TriMesh) s.pop();            if (childMesh.getModelBound()==null){                childMesh.setModelBound(new BoundingBox());                childMesh.updateModelBound();            }            parentNode=(Node) s.pop();            parentNode.attachChild(childMesh);            s.push(parentNode);        } else if (qName.equals("vertex")){            Geometry childGeometry=(Geometry) s.pop();            childGeometry.setVertices(createVector3f(data));            s.push(childGeometry);        } else if (qName.equals("normal")){            Geometry childGeometry=(Geometry) s.pop();            childGeometry.setNormals(createVector3f(data));            s.push(childGeometry);        } else if (qName.equals("color")){            Geometry childGeometry=(Geometry) s.pop();            childGeometry.setColors(createColors(data));            s.push(childGeometry);        } else if (qName.equals("texturecoords")){            Geometry childGeometry=(Geometry) s.pop();            childGeometry.setTextures(createVector2f(data));            s.push(childGeometry);        } else if (qName.equals("index")){            TriMesh childGeometry=(TriMesh) s.pop();            childGeometry.setIndices(createIntArray(data));            s.push(childGeometry);        } else if (qName.equals("primitive")){            childSpatial=(Spatial) s.pop();            parentNode=(Node) s.pop();            parentNode.attachChild(childSpatial);            s.push(parentNode);        } else if (qName.equals("sharedtypes")){            // Nothing to do, these only identify XML areas        } else if (qName.equals("xmlloadable")){            Object o=s.pop();            if (o instanceof RenderState){                parentSpatial=(Spatial) s.pop();                parentSpatial.setRenderState((RenderState) o);                s.push(parentSpatial);            } else if (o instanceof Controller){                parentSpatial=(Spatial) s.pop();                parentSpatial.addController((Controller) o);                s.push(parentSpatial);            } else if (o instanceof Spatial){                parentNode=(Node) s.pop();                parentNode.attachChild((Spatial) o);                s.push(parentNode);            }        } else if (qName.equals("sharednodeitem")){            XMLSharedNode XMLShare=(XMLSharedNode) s.pop();            shares.put(XMLShare.myIdent,XMLShare.whatIReallyAm);        } else if (qName.equals("publicobject")){            Object o=s.pop();            if (o instanceof RenderState){                parentSpatial=(Spatial) s.pop();                parentSpatial.setRenderState((RenderState) o);                s.push(parentSpatial);            } else if (o instanceof Controller){                parentSpatial=(Spatial) s.pop();                parentSpatial.addController((Controller) o);                s.push(parentSpatial);            } else if (o instanceof Spatial){                parentNode=(Node) s.pop();                parentNode.attachChild((Spatial) o);                s.push(parentNode);            }        } else {            throw new SAXException("Illegale Qualified name: " + qName);        }    }