//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v1.0.6-01/24/2006 06:08 PM(kohsuke)-fcs 
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
// Any modifications to this file will be lost upon recompilation of the source schema. 
// Generated on: 2018.09.10 at 08:01:16 AM PDT 
//


package magoffin.matt.ieat.domain.impl;

public class UiDataImpl
    extends magoffin.matt.ieat.domain.impl.UiBaseImpl
    implements magoffin.matt.ieat.domain.UiData, java.io.Serializable, com.sun.xml.bind.JAXBObject, magoffin.matt.ieat.domain.impl.runtime.UnmarshallableObject, magoffin.matt.ieat.domain.impl.runtime.XMLSerializable, magoffin.matt.ieat.domain.impl.runtime.ValidatableObject
{

    private final static long serialVersionUID = 200905041L;
    protected com.sun.xml.bind.util.ListImpl _Ethnicity;
    protected com.sun.xml.bind.util.ListImpl _Ingredient;
    protected com.sun.xml.bind.util.ListImpl _PrepTime;
    protected com.sun.xml.bind.util.ListImpl _Recipe;
    protected com.sun.xml.bind.util.ListImpl _Difficulty;
    protected com.sun.xml.bind.util.ListImpl _Meal;
    protected magoffin.matt.ieat.domain.UiMetaSupport _MetaSupport;
    protected magoffin.matt.ieat.domain.UiSearchResults _SearchResults;
    protected com.sun.xml.bind.util.ListImpl _Course;
    protected com.sun.xml.bind.util.ListImpl _Unit;
    protected com.sun.xml.bind.util.ListImpl _Base;
    protected com.sun.xml.bind.util.ListImpl _System;
    public final static java.lang.Class version = (magoffin.matt.ieat.domain.impl.JAXBVersion.class);
    private static com.sun.msv.grammar.Grammar schemaFragment;

    private final static java.lang.Class PRIMARY_INTERFACE_CLASS() {
        return (magoffin.matt.ieat.domain.UiData.class);
    }

    protected com.sun.xml.bind.util.ListImpl _getEthnicity() {
        if (_Ethnicity == null) {
            _Ethnicity = new com.sun.xml.bind.util.ListImpl(new java.util.ArrayList());
        }
        return _Ethnicity;
    }

    public java.util.List getEthnicity() {
        return _getEthnicity();
    }

    protected com.sun.xml.bind.util.ListImpl _getIngredient() {
        if (_Ingredient == null) {
            _Ingredient = new com.sun.xml.bind.util.ListImpl(new java.util.ArrayList());
        }
        return _Ingredient;
    }

    public java.util.List getIngredient() {
        return _getIngredient();
    }

    protected com.sun.xml.bind.util.ListImpl _getPrepTime() {
        if (_PrepTime == null) {
            _PrepTime = new com.sun.xml.bind.util.ListImpl(new java.util.ArrayList());
        }
        return _PrepTime;
    }

    public java.util.List getPrepTime() {
        return _getPrepTime();
    }

    protected com.sun.xml.bind.util.ListImpl _getRecipe() {
        if (_Recipe == null) {
            _Recipe = new com.sun.xml.bind.util.ListImpl(new java.util.ArrayList());
        }
        return _Recipe;
    }

    public java.util.List getRecipe() {
        return _getRecipe();
    }

    protected com.sun.xml.bind.util.ListImpl _getDifficulty() {
        if (_Difficulty == null) {
            _Difficulty = new com.sun.xml.bind.util.ListImpl(new java.util.ArrayList());
        }
        return _Difficulty;
    }

    public java.util.List getDifficulty() {
        return _getDifficulty();
    }

    protected com.sun.xml.bind.util.ListImpl _getMeal() {
        if (_Meal == null) {
            _Meal = new com.sun.xml.bind.util.ListImpl(new java.util.ArrayList());
        }
        return _Meal;
    }

    public java.util.List getMeal() {
        return _getMeal();
    }

    public magoffin.matt.ieat.domain.UiMetaSupport getMetaSupport() {
        return _MetaSupport;
    }

    public void setMetaSupport(magoffin.matt.ieat.domain.UiMetaSupport value) {
        _MetaSupport = value;
    }

    public magoffin.matt.ieat.domain.UiSearchResults getSearchResults() {
        return _SearchResults;
    }

    public void setSearchResults(magoffin.matt.ieat.domain.UiSearchResults value) {
        _SearchResults = value;
    }

    protected com.sun.xml.bind.util.ListImpl _getCourse() {
        if (_Course == null) {
            _Course = new com.sun.xml.bind.util.ListImpl(new java.util.ArrayList());
        }
        return _Course;
    }

    public java.util.List getCourse() {
        return _getCourse();
    }

    protected com.sun.xml.bind.util.ListImpl _getUnit() {
        if (_Unit == null) {
            _Unit = new com.sun.xml.bind.util.ListImpl(new java.util.ArrayList());
        }
        return _Unit;
    }

    public java.util.List getUnit() {
        return _getUnit();
    }

    protected com.sun.xml.bind.util.ListImpl _getBase() {
        if (_Base == null) {
            _Base = new com.sun.xml.bind.util.ListImpl(new java.util.ArrayList());
        }
        return _Base;
    }

    public java.util.List getBase() {
        return _getBase();
    }

    protected com.sun.xml.bind.util.ListImpl _getSystem() {
        if (_System == null) {
            _System = new com.sun.xml.bind.util.ListImpl(new java.util.ArrayList());
        }
        return _System;
    }

    public java.util.List getSystem() {
        return _getSystem();
    }

    public magoffin.matt.ieat.domain.impl.runtime.UnmarshallingEventHandler createUnmarshaller(magoffin.matt.ieat.domain.impl.runtime.UnmarshallingContext context) {
        return new magoffin.matt.ieat.domain.impl.UiDataImpl.Unmarshaller(context);
    }

    public void serializeBody(magoffin.matt.ieat.domain.impl.runtime.XMLSerializer context)
        throws org.xml.sax.SAXException
    {
        int idx1 = 0;
        final int len1 = ((_Ethnicity == null)? 0 :_Ethnicity.size());
        int idx2 = 0;
        final int len2 = ((_Ingredient == null)? 0 :_Ingredient.size());
        int idx3 = 0;
        final int len3 = ((_PrepTime == null)? 0 :_PrepTime.size());
        int idx4 = 0;
        final int len4 = ((_Recipe == null)? 0 :_Recipe.size());
        int idx5 = 0;
        final int len5 = ((_Difficulty == null)? 0 :_Difficulty.size());
        int idx6 = 0;
        final int len6 = ((_Meal == null)? 0 :_Meal.size());
        int idx9 = 0;
        final int len9 = ((_Course == null)? 0 :_Course.size());
        int idx10 = 0;
        final int len10 = ((_Unit == null)? 0 :_Unit.size());
        int idx11 = 0;
        final int len11 = ((_Base == null)? 0 :_Base.size());
        int idx12 = 0;
        final int len12 = ((_System == null)? 0 :_System.size());
        super.serializeBody(context);
        if (_SearchResults!= null) {
            context.startElement("http://msqr.us/xsd/ieat", "search-results");
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _SearchResults), "SearchResults");
            context.endNamespaceDecls();
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _SearchResults), "SearchResults");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _SearchResults), "SearchResults");
            context.endElement();
        }
        if (_MetaSupport!= null) {
            context.startElement("http://msqr.us/xsd/ieat", "meta-support");
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _MetaSupport), "MetaSupport");
            context.endNamespaceDecls();
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _MetaSupport), "MetaSupport");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _MetaSupport), "MetaSupport");
            context.endElement();
        }
        while (idx11 != len11) {
            context.startElement("http://msqr.us/xsd/ieat", "base");
            int idx_4 = idx11;
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _Base.get(idx_4 ++)), "Base");
            context.endNamespaceDecls();
            int idx_5 = idx11;
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _Base.get(idx_5 ++)), "Base");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _Base.get(idx11 ++)), "Base");
            context.endElement();
        }
        while (idx9 != len9) {
            context.startElement("http://msqr.us/xsd/ieat", "course");
            int idx_6 = idx9;
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _Course.get(idx_6 ++)), "Course");
            context.endNamespaceDecls();
            int idx_7 = idx9;
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _Course.get(idx_7 ++)), "Course");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _Course.get(idx9 ++)), "Course");
            context.endElement();
        }
        while (idx5 != len5) {
            context.startElement("http://msqr.us/xsd/ieat", "difficulty");
            int idx_8 = idx5;
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _Difficulty.get(idx_8 ++)), "Difficulty");
            context.endNamespaceDecls();
            int idx_9 = idx5;
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _Difficulty.get(idx_9 ++)), "Difficulty");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _Difficulty.get(idx5 ++)), "Difficulty");
            context.endElement();
        }
        while (idx1 != len1) {
            context.startElement("http://msqr.us/xsd/ieat", "ethnicity");
            int idx_10 = idx1;
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _Ethnicity.get(idx_10 ++)), "Ethnicity");
            context.endNamespaceDecls();
            int idx_11 = idx1;
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _Ethnicity.get(idx_11 ++)), "Ethnicity");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _Ethnicity.get(idx1 ++)), "Ethnicity");
            context.endElement();
        }
        while (idx2 != len2) {
            context.startElement("http://msqr.us/xsd/ieat", "ingredient");
            int idx_12 = idx2;
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _Ingredient.get(idx_12 ++)), "Ingredient");
            context.endNamespaceDecls();
            int idx_13 = idx2;
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _Ingredient.get(idx_13 ++)), "Ingredient");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _Ingredient.get(idx2 ++)), "Ingredient");
            context.endElement();
        }
        while (idx3 != len3) {
            context.startElement("http://msqr.us/xsd/ieat", "prep-time");
            int idx_14 = idx3;
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _PrepTime.get(idx_14 ++)), "PrepTime");
            context.endNamespaceDecls();
            int idx_15 = idx3;
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _PrepTime.get(idx_15 ++)), "PrepTime");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _PrepTime.get(idx3 ++)), "PrepTime");
            context.endElement();
        }
        while (idx4 != len4) {
            context.startElement("http://msqr.us/xsd/ieat", "recipe");
            int idx_16 = idx4;
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _Recipe.get(idx_16 ++)), "Recipe");
            context.endNamespaceDecls();
            int idx_17 = idx4;
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _Recipe.get(idx_17 ++)), "Recipe");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _Recipe.get(idx4 ++)), "Recipe");
            context.endElement();
        }
        while (idx12 != len12) {
            context.startElement("http://msqr.us/xsd/ieat", "system");
            int idx_18 = idx12;
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _System.get(idx_18 ++)), "System");
            context.endNamespaceDecls();
            int idx_19 = idx12;
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _System.get(idx_19 ++)), "System");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _System.get(idx12 ++)), "System");
            context.endElement();
        }
        while (idx10 != len10) {
            context.startElement("http://msqr.us/xsd/ieat", "unit");
            int idx_20 = idx10;
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _Unit.get(idx_20 ++)), "Unit");
            context.endNamespaceDecls();
            int idx_21 = idx10;
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _Unit.get(idx_21 ++)), "Unit");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _Unit.get(idx10 ++)), "Unit");
            context.endElement();
        }
        while (idx6 != len6) {
            context.startElement("http://msqr.us/xsd/ieat", "meal");
            int idx_22 = idx6;
            context.childAsURIs(((com.sun.xml.bind.JAXBObject) _Meal.get(idx_22 ++)), "Meal");
            context.endNamespaceDecls();
            int idx_23 = idx6;
            context.childAsAttributes(((com.sun.xml.bind.JAXBObject) _Meal.get(idx_23 ++)), "Meal");
            context.endAttributes();
            context.childAsBody(((com.sun.xml.bind.JAXBObject) _Meal.get(idx6 ++)), "Meal");
            context.endElement();
        }
    }

    public void serializeAttributes(magoffin.matt.ieat.domain.impl.runtime.XMLSerializer context)
        throws org.xml.sax.SAXException
    {
        int idx1 = 0;
        final int len1 = ((_Ethnicity == null)? 0 :_Ethnicity.size());
        int idx2 = 0;
        final int len2 = ((_Ingredient == null)? 0 :_Ingredient.size());
        int idx3 = 0;
        final int len3 = ((_PrepTime == null)? 0 :_PrepTime.size());
        int idx4 = 0;
        final int len4 = ((_Recipe == null)? 0 :_Recipe.size());
        int idx5 = 0;
        final int len5 = ((_Difficulty == null)? 0 :_Difficulty.size());
        int idx6 = 0;
        final int len6 = ((_Meal == null)? 0 :_Meal.size());
        int idx9 = 0;
        final int len9 = ((_Course == null)? 0 :_Course.size());
        int idx10 = 0;
        final int len10 = ((_Unit == null)? 0 :_Unit.size());
        int idx11 = 0;
        final int len11 = ((_Base == null)? 0 :_Base.size());
        int idx12 = 0;
        final int len12 = ((_System == null)? 0 :_System.size());
        super.serializeAttributes(context);
        while (idx11 != len11) {
            idx11 += 1;
        }
        while (idx9 != len9) {
            idx9 += 1;
        }
        while (idx5 != len5) {
            idx5 += 1;
        }
        while (idx1 != len1) {
            idx1 += 1;
        }
        while (idx2 != len2) {
            idx2 += 1;
        }
        while (idx3 != len3) {
            idx3 += 1;
        }
        while (idx4 != len4) {
            idx4 += 1;
        }
        while (idx12 != len12) {
            idx12 += 1;
        }
        while (idx10 != len10) {
            idx10 += 1;
        }
        while (idx6 != len6) {
            idx6 += 1;
        }
    }

    public void serializeURIs(magoffin.matt.ieat.domain.impl.runtime.XMLSerializer context)
        throws org.xml.sax.SAXException
    {
        int idx1 = 0;
        final int len1 = ((_Ethnicity == null)? 0 :_Ethnicity.size());
        int idx2 = 0;
        final int len2 = ((_Ingredient == null)? 0 :_Ingredient.size());
        int idx3 = 0;
        final int len3 = ((_PrepTime == null)? 0 :_PrepTime.size());
        int idx4 = 0;
        final int len4 = ((_Recipe == null)? 0 :_Recipe.size());
        int idx5 = 0;
        final int len5 = ((_Difficulty == null)? 0 :_Difficulty.size());
        int idx6 = 0;
        final int len6 = ((_Meal == null)? 0 :_Meal.size());
        int idx9 = 0;
        final int len9 = ((_Course == null)? 0 :_Course.size());
        int idx10 = 0;
        final int len10 = ((_Unit == null)? 0 :_Unit.size());
        int idx11 = 0;
        final int len11 = ((_Base == null)? 0 :_Base.size());
        int idx12 = 0;
        final int len12 = ((_System == null)? 0 :_System.size());
        super.serializeURIs(context);
        while (idx11 != len11) {
            idx11 += 1;
        }
        while (idx9 != len9) {
            idx9 += 1;
        }
        while (idx5 != len5) {
            idx5 += 1;
        }
        while (idx1 != len1) {
            idx1 += 1;
        }
        while (idx2 != len2) {
            idx2 += 1;
        }
        while (idx3 != len3) {
            idx3 += 1;
        }
        while (idx4 != len4) {
            idx4 += 1;
        }
        while (idx12 != len12) {
            idx12 += 1;
        }
        while (idx10 != len10) {
            idx10 += 1;
        }
        while (idx6 != len6) {
            idx6 += 1;
        }
    }

    public java.lang.Class getPrimaryInterface() {
        return (magoffin.matt.ieat.domain.UiData.class);
    }

    public com.sun.msv.verifier.DocumentDeclaration createRawValidator() {
        if (schemaFragment == null) {
            schemaFragment = com.sun.xml.bind.validator.SchemaDeserializer.deserialize((
 "\u00ac\u00ed\u0000\u0005sr\u0000\u001fcom.sun.msv.grammar.SequenceExp\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xr\u0000\u001dcom.su"
+"n.msv.grammar.BinaryExp\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0002L\u0000\u0004exp1t\u0000 Lcom/sun/msv/gra"
+"mmar/Expression;L\u0000\u0004exp2q\u0000~\u0000\u0002xr\u0000\u001ecom.sun.msv.grammar.Expressi"
+"on\u00f8\u0018\u0082\u00e8N5~O\u0002\u0000\u0002L\u0000\u0013epsilonReducibilityt\u0000\u0013Ljava/lang/Boolean;L\u0000\u000b"
+"expandedExpq\u0000~\u0000\u0002xpppsq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0000pp"
+"sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0000ppsr\u0000\u001dcom.sun."
+"msv.grammar.ChoiceExp\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xq\u0000~\u0000\u0001ppsr\u0000\'com.sun.msv.gram"
+"mar.trex.ElementPattern\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0001L\u0000\tnameClasst\u0000\u001fLcom/sun/ms"
+"v/grammar/NameClass;xr\u0000\u001ecom.sun.msv.grammar.ElementExp\u0000\u0000\u0000\u0000\u0000\u0000"
+"\u0000\u0001\u0002\u0000\u0002Z\u0000\u001aignoreUndeclaredAttributesL\u0000\fcontentModelq\u0000~\u0000\u0002xq\u0000~\u0000\u0003"
+"sr\u0000\u0011java.lang.Boolean\u00cd r\u0080\u00d5\u009c\u00fa\u00ee\u0002\u0000\u0001Z\u0000\u0005valuexp\u0000p\u0000sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0013p"
+"p\u0000sq\u0000~\u0000\u0011ppsr\u0000 com.sun.msv.grammar.OneOrMoreExp\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xr\u0000"
+"\u001ccom.sun.msv.grammar.UnaryExp\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0001L\u0000\u0003expq\u0000~\u0000\u0002xq\u0000~\u0000\u0003q\u0000~"
+"\u0000\u0018psr\u0000 com.sun.msv.grammar.AttributeExp\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0002L\u0000\u0003expq\u0000~\u0000"
+"\u0002L\u0000\tnameClassq\u0000~\u0000\u0014xq\u0000~\u0000\u0003q\u0000~\u0000\u0018psr\u00002com.sun.msv.grammar.Expres"
+"sion$AnyStringExpression\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xq\u0000~\u0000\u0003sq\u0000~\u0000\u0017\u0001q\u0000~\u0000\"sr\u0000 com"
+".sun.msv.grammar.AnyNameClass\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xr\u0000\u001dcom.sun.msv.gram"
+"mar.NameClass\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xpsr\u00000com.sun.msv.grammar.Expression"
+"$EpsilonExpression\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xq\u0000~\u0000\u0003q\u0000~\u0000#q\u0000~\u0000(sr\u0000#com.sun.msv"
+".grammar.SimpleNameClass\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0002L\u0000\tlocalNamet\u0000\u0012Ljava/lang"
+"/String;L\u0000\fnamespaceURIq\u0000~\u0000*xq\u0000~\u0000%t\u0000)magoffin.matt.ieat.doma"
+"in.UiSearchResultst\u0000+http://java.sun.com/jaxb/xjc/dummy-elem"
+"entssq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018psr\u0000\u001bcom.sun.msv.grammar.DataExp\u0000\u0000\u0000\u0000\u0000"
+"\u0000\u0000\u0001\u0002\u0000\u0003L\u0000\u0002dtt\u0000\u001fLorg/relaxng/datatype/Datatype;L\u0000\u0006exceptq\u0000~\u0000\u0002L"
+"\u0000\u0004namet\u0000\u001dLcom/sun/msv/util/StringPair;xq\u0000~\u0000\u0003ppsr\u0000\"com.sun.ms"
+"v.datatype.xsd.QnameType\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xr\u0000*com.sun.msv.datatype."
+"xsd.BuiltinAtomicType\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xr\u0000%com.sun.msv.datatype.xsd"
+".ConcreteType\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xr\u0000\'com.sun.msv.datatype.xsd.XSDatat"
+"ypeImpl\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0003L\u0000\fnamespaceUriq\u0000~\u0000*L\u0000\btypeNameq\u0000~\u0000*L\u0000\nwhi"
+"teSpacet\u0000.Lcom/sun/msv/datatype/xsd/WhiteSpaceProcessor;xpt\u0000"
+" http://www.w3.org/2001/XMLSchemat\u0000\u0005QNamesr\u00005com.sun.msv.dat"
+"atype.xsd.WhiteSpaceProcessor$Collapse\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xr\u0000,com.sun"
+".msv.datatype.xsd.WhiteSpaceProcessor\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xpsr\u00000com.su"
+"n.msv.grammar.Expression$NullSetExpression\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000xq\u0000~\u0000\u0003p"
+"psr\u0000\u001bcom.sun.msv.util.StringPair\u00d0t\u001ejB\u008f\u008d\u00a0\u0002\u0000\u0002L\u0000\tlocalNameq\u0000~\u0000*"
+"L\u0000\fnamespaceURIq\u0000~\u0000*xpq\u0000~\u0000;q\u0000~\u0000:sq\u0000~\u0000)t\u0000\u0004typet\u0000)http://www.w"
+"3.org/2001/XMLSchema-instanceq\u0000~\u0000(sq\u0000~\u0000)t\u0000\u000esearch-resultst\u0000\u0017"
+"http://msqr.us/xsd/ieatq\u0000~\u0000(sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u0013q\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000ppsq\u0000"
+"~\u0000\u0013pp\u0000sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u0000\"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~\u0000)t"
+"\u0000\'magoffin.matt.ieat.domain.UiMetaSupportq\u0000~\u0000-sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001f"
+"q\u0000~\u0000\u0018pq\u0000~\u00003q\u0000~\u0000Cq\u0000~\u0000(sq\u0000~\u0000)t\u0000\fmeta-supportq\u0000~\u0000Hq\u0000~\u0000(sq\u0000~\u0000\u0011pp"
+"sq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u0013q\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0013pp\u0000sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000"
+"\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u0000\"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~\u0000)t\u0000\u001emagoffin.matt.ieat.dom"
+"ain.Baseq\u0000~\u0000-sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u00003q\u0000~\u0000Cq\u0000~\u0000(sq\u0000~\u0000)t\u0000\u0004bas"
+"eq\u0000~\u0000Hq\u0000~\u0000(sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u0013q\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0013pp"
+"\u0000sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u0000\"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~\u0000)t\u0000 mag"
+"offin.matt.ieat.domain.Courseq\u0000~\u0000-sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u00003q"
+"\u0000~\u0000Cq\u0000~\u0000(sq\u0000~\u0000)t\u0000\u0006courseq\u0000~\u0000Hq\u0000~\u0000(sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u0013"
+"q\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0013pp\u0000sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u0000"
+"\"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~\u0000)t\u0000$magoffin.matt.ieat.domain.Difficultyq\u0000~\u0000"
+"-sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u00003q\u0000~\u0000Cq\u0000~\u0000(sq\u0000~\u0000)t\u0000\ndifficultyq\u0000~\u0000H"
+"q\u0000~\u0000(sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u0013q\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0013pp\u0000sq\u0000~\u0000"
+"\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u0000\"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~\u0000)t\u0000#magoffin."
+"matt.ieat.domain.Ethnicityq\u0000~\u0000-sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u00003q\u0000~\u0000"
+"Cq\u0000~\u0000(sq\u0000~\u0000)t\u0000\tethnicityq\u0000~\u0000Hq\u0000~\u0000(sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u0013"
+"q\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0013pp\u0000sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u0000"
+"\"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~\u0000)t\u0000$magoffin.matt.ieat.domain.Ingredientq\u0000~\u0000"
+"-sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u00003q\u0000~\u0000Cq\u0000~\u0000(sq\u0000~\u0000)t\u0000\ningredientq\u0000~\u0000H"
+"q\u0000~\u0000(sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u0013q\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0013pp\u0000sq\u0000~\u0000"
+"\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u0000\"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~\u0000)t\u0000\"magoffin."
+"matt.ieat.domain.PrepTimeq\u0000~\u0000-sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u00003q\u0000~\u0000C"
+"q\u0000~\u0000(sq\u0000~\u0000)t\u0000\tprep-timeq\u0000~\u0000Hq\u0000~\u0000(sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u0013q"
+"\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0013pp\u0000sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u0000\""
+"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~\u0000)t\u0000 magoffin.matt.ieat.domain.Recipeq\u0000~\u0000-sq\u0000~"
+"\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u00003q\u0000~\u0000Cq\u0000~\u0000(sq\u0000~\u0000)t\u0000\u0006recipeq\u0000~\u0000Hq\u0000~\u0000(sq\u0000~"
+"\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u0013q\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0013pp\u0000sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001c"
+"q\u0000~\u0000\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u0000\"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~\u0000)t\u0000 magoffin.matt.ieat"
+".domain.Systemq\u0000~\u0000-sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u00003q\u0000~\u0000Cq\u0000~\u0000(sq\u0000~\u0000)"
+"t\u0000\u0006systemq\u0000~\u0000Hq\u0000~\u0000(sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u0013q\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000pp"
+"sq\u0000~\u0000\u0013pp\u0000sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u0000\"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~"
+"\u0000)t\u0000\u001emagoffin.matt.ieat.domain.Unitq\u0000~\u0000-sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018p"
+"q\u0000~\u00003q\u0000~\u0000Cq\u0000~\u0000(sq\u0000~\u0000)t\u0000\u0004unitq\u0000~\u0000Hq\u0000~\u0000(sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq"
+"\u0000~\u0000\u0013q\u0000~\u0000\u0018p\u0000sq\u0000~\u0000\u0000ppsq\u0000~\u0000\u0013pp\u0000sq\u0000~\u0000\u0011ppsq\u0000~\u0000\u001cq\u0000~\u0000\u0018psq\u0000~\u0000\u001fq\u0000~\u0000\u0018p"
+"q\u0000~\u0000\"q\u0000~\u0000&q\u0000~\u0000(sq\u0000~\u0000)t\u0000\u001emagoffin.matt.ieat.domain.Mealq\u0000~\u0000-s"
+"q\u0000~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018pq\u0000~\u00003q\u0000~\u0000Cq\u0000~\u0000(sq\u0000~\u0000)t\u0000\u0004mealq\u0000~\u0000Hq\u0000~\u0000(sq\u0000"
+"~\u0000\u0011ppsq\u0000~\u0000\u001fq\u0000~\u0000\u0018psq\u0000~\u00000ppsr\u0000#com.sun.msv.datatype.xsd.String"
+"Type\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0001Z\u0000\risAlwaysValidxq\u0000~\u00005q\u0000~\u0000:t\u0000\u0006stringsr\u00005com.s"
+"un.msv.datatype.xsd.WhiteSpaceProcessor$Preserve\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0000x"
+"q\u0000~\u0000=\u0001q\u0000~\u0000@sq\u0000~\u0000Aq\u0000~\u0000\u00e7q\u0000~\u0000:sq\u0000~\u0000)t\u0000\u0004modet\u0000\u0000q\u0000~\u0000(sr\u0000\"com.sun."
+"msv.grammar.ExpressionPool\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0000\u0001L\u0000\bexpTablet\u0000/Lcom/sun/"
+"msv/grammar/ExpressionPool$ClosedHash;xpsr\u0000-com.sun.msv.gram"
+"mar.ExpressionPool$ClosedHash\u00d7j\u00d0N\u00ef\u00e8\u00ed\u001c\u0003\u0000\u0003I\u0000\u0005countB\u0000\rstreamVer"
+"sionL\u0000\u0006parentt\u0000$Lcom/sun/msv/grammar/ExpressionPool;xp\u0000\u0000\u0000S\u0001p"
+"q\u0000~\u0000\tq\u0000~\u0000\u009cq\u0000~\u0000\u008eq\u0000~\u0000\u0080q\u0000~\u0000rq\u0000~\u0000dq\u0000~\u0000Vq\u0000~\u0000\u00aaq\u0000~\u0000\u00b8q\u0000~\u0000\u00c6q\u0000~\u0000\u00d4q\u0000~\u0000|"
+"q\u0000~\u0000nq\u0000~\u0000`q\u0000~\u0000Rq\u0000~\u0000.q\u0000~\u0000\u0010q\u0000~\u0000\u00b4q\u0000~\u0000\u00a6q\u0000~\u0000\u0098q\u0000~\u0000\u008aq\u0000~\u0000\u00c2q\u0000~\u0000\bq\u0000~\u0000\u00d0"
+"q\u0000~\u0000\u00deq\u0000~\u0000\u000eq\u0000~\u0000\fq\u0000~\u0000\u000fq\u0000~\u0000\u009dq\u0000~\u0000\u008fq\u0000~\u0000\u0081q\u0000~\u0000sq\u0000~\u0000eq\u0000~\u0000Wq\u0000~\u0000\u00abq\u0000~\u0000\u00b9"
+"q\u0000~\u0000\u00c7q\u0000~\u0000\u00d5q\u0000~\u0000\u00b0q\u0000~\u0000\u00a2q\u0000~\u0000\u0094q\u0000~\u0000\u0086q\u0000~\u0000xq\u0000~\u0000jq\u0000~\u0000\\q\u0000~\u0000Nq\u0000~\u0000\u001eq\u0000~\u0000\u00be"
+"q\u0000~\u0000\u00ccq\u0000~\u0000\u00daq\u0000~\u0000\u0006q\u0000~\u0000\u00e2q\u0000~\u0000\u00afq\u0000~\u0000\u00a1q\u0000~\u0000\u0093q\u0000~\u0000\u0085q\u0000~\u0000wq\u0000~\u0000iq\u0000~\u0000[q\u0000~\u0000M"
+"q\u0000~\u0000\u001bq\u0000~\u0000\u00bdq\u0000~\u0000\u00cbq\u0000~\u0000\u00d9q\u0000~\u0000\u0005q\u0000~\u0000Iq\u0000~\u0000\u0012q\u0000~\u0000\u00adq\u0000~\u0000\u009fq\u0000~\u0000\u0091q\u0000~\u0000\u0083q\u0000~\u0000u"
+"q\u0000~\u0000gq\u0000~\u0000Yq\u0000~\u0000Kq\u0000~\u0000\u0019q\u0000~\u0000\u00bbq\u0000~\u0000\u00c9q\u0000~\u0000\u00d7q\u0000~\u0000\u0007q\u0000~\u0000\nq\u0000~\u0000\u000bq\u0000~\u0000\rx"));
        }
        return new com.sun.msv.verifier.regexp.REDocumentDeclaration(schemaFragment);
    }

    public boolean equals(java.lang.Object obj) {
        if (this == obj) {
            return true;
        }
        if ((null == obj)||(!(obj instanceof magoffin.matt.ieat.domain.UiData))) {
            return false;
        }
        magoffin.matt.ieat.domain.impl.UiDataImpl target = ((magoffin.matt.ieat.domain.impl.UiDataImpl) obj);
        {
            java.util.List value = this.getEthnicity();
            java.util.List targetValue = target.getEthnicity();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            java.util.List value = this.getIngredient();
            java.util.List targetValue = target.getIngredient();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            java.util.List value = this.getPrepTime();
            java.util.List targetValue = target.getPrepTime();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            java.util.List value = this.getRecipe();
            java.util.List targetValue = target.getRecipe();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            java.util.List value = this.getDifficulty();
            java.util.List targetValue = target.getDifficulty();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            java.util.List value = this.getMeal();
            java.util.List targetValue = target.getMeal();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            magoffin.matt.ieat.domain.UiMetaSupport value = this.getMetaSupport();
            magoffin.matt.ieat.domain.UiMetaSupport targetValue = target.getMetaSupport();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            magoffin.matt.ieat.domain.UiSearchResults value = this.getSearchResults();
            magoffin.matt.ieat.domain.UiSearchResults targetValue = target.getSearchResults();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            java.util.List value = this.getCourse();
            java.util.List targetValue = target.getCourse();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            java.util.List value = this.getUnit();
            java.util.List targetValue = target.getUnit();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            java.util.List value = this.getBase();
            java.util.List targetValue = target.getBase();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            java.util.List value = this.getSystem();
            java.util.List targetValue = target.getSystem();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        {
            java.lang.String value = this.getMode();
            java.lang.String targetValue = target.getMode();
            if (!((value == targetValue)||((value!= null)&&value.equals(targetValue)))) {
                return false;
            }
        }
        return true;
    }

    public int hashCode() {
        int hash = 7;
        {
            java.util.List value = this.getEthnicity();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            java.util.List value = this.getIngredient();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            java.util.List value = this.getPrepTime();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            java.util.List value = this.getRecipe();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            java.util.List value = this.getDifficulty();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            java.util.List value = this.getMeal();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            magoffin.matt.ieat.domain.UiMetaSupport value = this.getMetaSupport();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            magoffin.matt.ieat.domain.UiSearchResults value = this.getSearchResults();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            java.util.List value = this.getCourse();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            java.util.List value = this.getUnit();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            java.util.List value = this.getBase();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            java.util.List value = this.getSystem();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        {
            java.lang.String value = this.getMode();
            hash = ((31 *hash)+((null == value)? 0 :value.hashCode()));
        }
        return hash;
    }

    public class Unmarshaller
        extends magoffin.matt.ieat.domain.impl.runtime.AbstractUnmarshallingEventHandlerImpl
    {


        public Unmarshaller(magoffin.matt.ieat.domain.impl.runtime.UnmarshallingContext context) {
            super(context, "--------------------------------------");
        }

        protected Unmarshaller(magoffin.matt.ieat.domain.impl.runtime.UnmarshallingContext context, int startState) {
            this(context);
            state = startState;
        }

        public java.lang.Object owner() {
            return magoffin.matt.ieat.domain.impl.UiDataImpl.this;
        }

        public void enterElement(java.lang.String ___uri, java.lang.String ___local, java.lang.String ___qname, org.xml.sax.Attributes __atts)
            throws org.xml.sax.SAXException
        {
            int attIdx;
            outer:
            while (true) {
                switch (state) {
                    case  1 :
                        if (("search-results" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, false);
                            state = 2;
                            return ;
                        }
                        state = 4;
                        continue outer;
                    case  31 :
                        if (("system" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 29;
                            return ;
                        }
                        if (("unit" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 32;
                            return ;
                        }
                        state = 34;
                        continue outer;
                    case  22 :
                        if (("ingredient" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, false);
                            state = 20;
                            return ;
                        }
                        if (("prep-time" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 23;
                            return ;
                        }
                        state = 25;
                        continue outer;
                    case  26 :
                        attIdx = context.getAttribute("", "createdDate");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        attIdx = context.getAttribute("", "modifiedDate");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        attIdx = context.getAttribute("", "recipeId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        attIdx = context.getAttribute("", "servingSize");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        if (("name" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            _getRecipe().add(((magoffin.matt.ieat.domain.impl.RecipeImpl) spawnChildFromEnterElement((magoffin.matt.ieat.domain.impl.RecipeImpl.class), 27, ___uri, ___local, ___qname, __atts)));
                            return ;
                        }
                        break;
                    case  7 :
                        if (("base" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 8;
                            return ;
                        }
                        state = 10;
                        continue outer;
                    case  29 :
                        attIdx = context.getAttribute("", "systemId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        break;
                    case  25 :
                        if (("prep-time" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 23;
                            return ;
                        }
                        if (("recipe" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, false);
                            state = 26;
                            return ;
                        }
                        state = 28;
                        continue outer;
                    case  0 :
                        attIdx = context.getAttribute("", "mode");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        spawnHandlerFromEnterElement((((magoffin.matt.ieat.domain.impl.UiBaseImpl)magoffin.matt.ieat.domain.impl.UiDataImpl.this).new Unmarshaller(context)), 1, ___uri, ___local, ___qname, __atts);
                        return ;
                    case  28 :
                        if (("recipe" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, false);
                            state = 26;
                            return ;
                        }
                        if (("system" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 29;
                            return ;
                        }
                        state = 31;
                        continue outer;
                    case  2 :
                        attIdx = context.getAttribute("", "pageSize");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        attIdx = context.getAttribute("", "pageStart");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        break;
                    case  17 :
                        attIdx = context.getAttribute("", "ethnicityId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        break;
                    case  16 :
                        if (("difficulty" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 14;
                            return ;
                        }
                        if (("ethnicity" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 17;
                            return ;
                        }
                        state = 19;
                        continue outer;
                    case  35 :
                        attIdx = context.getAttribute("", "mealId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        if (("name" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            _getMeal().add(((magoffin.matt.ieat.domain.impl.MealImpl) spawnChildFromEnterElement((magoffin.matt.ieat.domain.impl.MealImpl.class), 36, ___uri, ___local, ___qname, __atts)));
                            return ;
                        }
                        break;
                    case  14 :
                        attIdx = context.getAttribute("", "difficultyId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        break;
                    case  13 :
                        if (("course" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 11;
                            return ;
                        }
                        if (("difficulty" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 14;
                            return ;
                        }
                        state = 16;
                        continue outer;
                    case  4 :
                        if (("meta-support" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, false);
                            state = 5;
                            return ;
                        }
                        state = 7;
                        continue outer;
                    case  23 :
                        attIdx = context.getAttribute("", "prepTimeId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        break;
                    case  11 :
                        attIdx = context.getAttribute("", "courseId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        break;
                    case  19 :
                        if (("ethnicity" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 17;
                            return ;
                        }
                        if (("ingredient" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, false);
                            state = 20;
                            return ;
                        }
                        state = 22;
                        continue outer;
                    case  37 :
                        if (("meal" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, false);
                            state = 35;
                            return ;
                        }
                        revertToParentFromEnterElement(___uri, ___local, ___qname, __atts);
                        return ;
                    case  5 :
                        if (("meta" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            _MetaSupport = ((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl) spawnChildFromEnterElement((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl.class), 6, ___uri, ___local, ___qname, __atts));
                            return ;
                        }
                        _MetaSupport = ((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl) spawnChildFromEnterElement((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl.class), 6, ___uri, ___local, ___qname, __atts));
                        return ;
                    case  34 :
                        if (("unit" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 32;
                            return ;
                        }
                        if (("meal" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, false);
                            state = 35;
                            return ;
                        }
                        state = 37;
                        continue outer;
                    case  20 :
                        attIdx = context.getAttribute("", "ingredientId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        if (("name" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            _getIngredient().add(((magoffin.matt.ieat.domain.impl.IngredientImpl) spawnChildFromEnterElement((magoffin.matt.ieat.domain.impl.IngredientImpl.class), 21, ___uri, ___local, ___qname, __atts)));
                            return ;
                        }
                        break;
                    case  8 :
                        attIdx = context.getAttribute("", "baseId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        break;
                    case  10 :
                        if (("base" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 8;
                            return ;
                        }
                        if (("course" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.pushAttributes(__atts, true);
                            state = 11;
                            return ;
                        }
                        state = 13;
                        continue outer;
                    case  32 :
                        attIdx = context.getAttribute("", "abbreviation");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        attIdx = context.getAttribute("", "mass");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        attIdx = context.getAttribute("", "systemId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        attIdx = context.getAttribute("", "toImperial");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        attIdx = context.getAttribute("", "toMetric");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        attIdx = context.getAttribute("", "toUS");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        attIdx = context.getAttribute("", "unitId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().enterElement(___uri, ___local, ___qname, __atts);
                            return ;
                        }
                        break;
                }
                super.enterElement(___uri, ___local, ___qname, __atts);
                break;
            }
        }

        public void leaveElement(java.lang.String ___uri, java.lang.String ___local, java.lang.String ___qname)
            throws org.xml.sax.SAXException
        {
            int attIdx;
            outer:
            while (true) {
                switch (state) {
                    case  1 :
                        state = 4;
                        continue outer;
                    case  18 :
                        if (("ethnicity" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 19;
                            return ;
                        }
                        break;
                    case  31 :
                        state = 34;
                        continue outer;
                    case  22 :
                        state = 25;
                        continue outer;
                    case  36 :
                        if (("meal" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 37;
                            return ;
                        }
                        break;
                    case  26 :
                        attIdx = context.getAttribute("", "createdDate");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "modifiedDate");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "recipeId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "servingSize");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  30 :
                        if (("system" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 31;
                            return ;
                        }
                        break;
                    case  7 :
                        state = 10;
                        continue outer;
                    case  29 :
                        attIdx = context.getAttribute("", "systemId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  15 :
                        if (("difficulty" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 16;
                            return ;
                        }
                        break;
                    case  25 :
                        state = 28;
                        continue outer;
                    case  0 :
                        attIdx = context.getAttribute("", "mode");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        spawnHandlerFromLeaveElement((((magoffin.matt.ieat.domain.impl.UiBaseImpl)magoffin.matt.ieat.domain.impl.UiDataImpl.this).new Unmarshaller(context)), 1, ___uri, ___local, ___qname);
                        return ;
                    case  28 :
                        state = 31;
                        continue outer;
                    case  33 :
                        if (("unit" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 34;
                            return ;
                        }
                        break;
                    case  21 :
                        if (("ingredient" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 22;
                            return ;
                        }
                        break;
                    case  9 :
                        if (("base" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 10;
                            return ;
                        }
                        break;
                    case  2 :
                        attIdx = context.getAttribute("", "pageSize");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "pageStart");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  17 :
                        attIdx = context.getAttribute("", "ethnicityId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  16 :
                        state = 19;
                        continue outer;
                    case  35 :
                        attIdx = context.getAttribute("", "mealId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  27 :
                        if (("recipe" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 28;
                            return ;
                        }
                        break;
                    case  14 :
                        attIdx = context.getAttribute("", "difficultyId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  13 :
                        state = 16;
                        continue outer;
                    case  4 :
                        state = 7;
                        continue outer;
                    case  23 :
                        attIdx = context.getAttribute("", "prepTimeId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  24 :
                        if (("prep-time" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 25;
                            return ;
                        }
                        break;
                    case  11 :
                        attIdx = context.getAttribute("", "courseId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  19 :
                        state = 22;
                        continue outer;
                    case  37 :
                        revertToParentFromLeaveElement(___uri, ___local, ___qname);
                        return ;
                    case  5 :
                        _MetaSupport = ((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl) spawnChildFromLeaveElement((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl.class), 6, ___uri, ___local, ___qname));
                        return ;
                    case  34 :
                        state = 37;
                        continue outer;
                    case  6 :
                        if (("meta-support" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 7;
                            return ;
                        }
                        break;
                    case  20 :
                        attIdx = context.getAttribute("", "ingredientId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  8 :
                        attIdx = context.getAttribute("", "baseId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  10 :
                        state = 13;
                        continue outer;
                    case  12 :
                        if (("course" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 13;
                            return ;
                        }
                        break;
                    case  32 :
                        attIdx = context.getAttribute("", "abbreviation");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "mass");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "systemId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "toImperial");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "toMetric");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "toUS");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "unitId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveElement(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  3 :
                        if (("search-results" == ___local)&&("http://msqr.us/xsd/ieat" == ___uri)) {
                            context.popAttributes();
                            state = 4;
                            return ;
                        }
                        break;
                }
                super.leaveElement(___uri, ___local, ___qname);
                break;
            }
        }

        public void enterAttribute(java.lang.String ___uri, java.lang.String ___local, java.lang.String ___qname)
            throws org.xml.sax.SAXException
        {
            int attIdx;
            outer:
            while (true) {
                switch (state) {
                    case  1 :
                        state = 4;
                        continue outer;
                    case  31 :
                        state = 34;
                        continue outer;
                    case  22 :
                        state = 25;
                        continue outer;
                    case  26 :
                        if (("createdDate" == ___local)&&("" == ___uri)) {
                            _getRecipe().add(((magoffin.matt.ieat.domain.impl.RecipeImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.RecipeImpl.class), 27, ___uri, ___local, ___qname)));
                            return ;
                        }
                        if (("modifiedDate" == ___local)&&("" == ___uri)) {
                            _getRecipe().add(((magoffin.matt.ieat.domain.impl.RecipeImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.RecipeImpl.class), 27, ___uri, ___local, ___qname)));
                            return ;
                        }
                        if (("recipeId" == ___local)&&("" == ___uri)) {
                            _getRecipe().add(((magoffin.matt.ieat.domain.impl.RecipeImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.RecipeImpl.class), 27, ___uri, ___local, ___qname)));
                            return ;
                        }
                        if (("servingSize" == ___local)&&("" == ___uri)) {
                            _getRecipe().add(((magoffin.matt.ieat.domain.impl.RecipeImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.RecipeImpl.class), 27, ___uri, ___local, ___qname)));
                            return ;
                        }
                        break;
                    case  7 :
                        state = 10;
                        continue outer;
                    case  29 :
                        if (("systemId" == ___local)&&("" == ___uri)) {
                            _getSystem().add(((magoffin.matt.ieat.domain.impl.SystemImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.SystemImpl.class), 30, ___uri, ___local, ___qname)));
                            return ;
                        }
                        break;
                    case  25 :
                        state = 28;
                        continue outer;
                    case  0 :
                        if (("mode" == ___local)&&("" == ___uri)) {
                            spawnHandlerFromEnterAttribute((((magoffin.matt.ieat.domain.impl.UiBaseImpl)magoffin.matt.ieat.domain.impl.UiDataImpl.this).new Unmarshaller(context)), 1, ___uri, ___local, ___qname);
                            return ;
                        }
                        spawnHandlerFromEnterAttribute((((magoffin.matt.ieat.domain.impl.UiBaseImpl)magoffin.matt.ieat.domain.impl.UiDataImpl.this).new Unmarshaller(context)), 1, ___uri, ___local, ___qname);
                        return ;
                    case  28 :
                        state = 31;
                        continue outer;
                    case  2 :
                        if (("pageSize" == ___local)&&("" == ___uri)) {
                            _SearchResults = ((magoffin.matt.ieat.domain.impl.UiSearchResultsImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.UiSearchResultsImpl.class), 3, ___uri, ___local, ___qname));
                            return ;
                        }
                        if (("pageStart" == ___local)&&("" == ___uri)) {
                            _SearchResults = ((magoffin.matt.ieat.domain.impl.UiSearchResultsImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.UiSearchResultsImpl.class), 3, ___uri, ___local, ___qname));
                            return ;
                        }
                        break;
                    case  17 :
                        if (("ethnicityId" == ___local)&&("" == ___uri)) {
                            _getEthnicity().add(((magoffin.matt.ieat.domain.impl.EthnicityImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.EthnicityImpl.class), 18, ___uri, ___local, ___qname)));
                            return ;
                        }
                        break;
                    case  16 :
                        state = 19;
                        continue outer;
                    case  35 :
                        if (("mealId" == ___local)&&("" == ___uri)) {
                            _getMeal().add(((magoffin.matt.ieat.domain.impl.MealImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.MealImpl.class), 36, ___uri, ___local, ___qname)));
                            return ;
                        }
                        break;
                    case  14 :
                        if (("difficultyId" == ___local)&&("" == ___uri)) {
                            _getDifficulty().add(((magoffin.matt.ieat.domain.impl.DifficultyImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.DifficultyImpl.class), 15, ___uri, ___local, ___qname)));
                            return ;
                        }
                        break;
                    case  13 :
                        state = 16;
                        continue outer;
                    case  4 :
                        state = 7;
                        continue outer;
                    case  23 :
                        if (("prepTimeId" == ___local)&&("" == ___uri)) {
                            _getPrepTime().add(((magoffin.matt.ieat.domain.impl.PrepTimeImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.PrepTimeImpl.class), 24, ___uri, ___local, ___qname)));
                            return ;
                        }
                        break;
                    case  11 :
                        if (("courseId" == ___local)&&("" == ___uri)) {
                            _getCourse().add(((magoffin.matt.ieat.domain.impl.CourseImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.CourseImpl.class), 12, ___uri, ___local, ___qname)));
                            return ;
                        }
                        break;
                    case  19 :
                        state = 22;
                        continue outer;
                    case  37 :
                        revertToParentFromEnterAttribute(___uri, ___local, ___qname);
                        return ;
                    case  5 :
                        _MetaSupport = ((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl.class), 6, ___uri, ___local, ___qname));
                        return ;
                    case  34 :
                        state = 37;
                        continue outer;
                    case  20 :
                        if (("ingredientId" == ___local)&&("" == ___uri)) {
                            _getIngredient().add(((magoffin.matt.ieat.domain.impl.IngredientImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.IngredientImpl.class), 21, ___uri, ___local, ___qname)));
                            return ;
                        }
                        break;
                    case  8 :
                        if (("baseId" == ___local)&&("" == ___uri)) {
                            _getBase().add(((magoffin.matt.ieat.domain.impl.BaseImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.BaseImpl.class), 9, ___uri, ___local, ___qname)));
                            return ;
                        }
                        break;
                    case  10 :
                        state = 13;
                        continue outer;
                    case  32 :
                        if (("abbreviation" == ___local)&&("" == ___uri)) {
                            _getUnit().add(((magoffin.matt.ieat.domain.impl.UnitImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.UnitImpl.class), 33, ___uri, ___local, ___qname)));
                            return ;
                        }
                        if (("mass" == ___local)&&("" == ___uri)) {
                            _getUnit().add(((magoffin.matt.ieat.domain.impl.UnitImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.UnitImpl.class), 33, ___uri, ___local, ___qname)));
                            return ;
                        }
                        if (("systemId" == ___local)&&("" == ___uri)) {
                            _getUnit().add(((magoffin.matt.ieat.domain.impl.UnitImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.UnitImpl.class), 33, ___uri, ___local, ___qname)));
                            return ;
                        }
                        if (("toImperial" == ___local)&&("" == ___uri)) {
                            _getUnit().add(((magoffin.matt.ieat.domain.impl.UnitImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.UnitImpl.class), 33, ___uri, ___local, ___qname)));
                            return ;
                        }
                        if (("toMetric" == ___local)&&("" == ___uri)) {
                            _getUnit().add(((magoffin.matt.ieat.domain.impl.UnitImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.UnitImpl.class), 33, ___uri, ___local, ___qname)));
                            return ;
                        }
                        if (("toUS" == ___local)&&("" == ___uri)) {
                            _getUnit().add(((magoffin.matt.ieat.domain.impl.UnitImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.UnitImpl.class), 33, ___uri, ___local, ___qname)));
                            return ;
                        }
                        if (("unitId" == ___local)&&("" == ___uri)) {
                            _getUnit().add(((magoffin.matt.ieat.domain.impl.UnitImpl) spawnChildFromEnterAttribute((magoffin.matt.ieat.domain.impl.UnitImpl.class), 33, ___uri, ___local, ___qname)));
                            return ;
                        }
                        break;
                }
                super.enterAttribute(___uri, ___local, ___qname);
                break;
            }
        }

        public void leaveAttribute(java.lang.String ___uri, java.lang.String ___local, java.lang.String ___qname)
            throws org.xml.sax.SAXException
        {
            int attIdx;
            outer:
            while (true) {
                switch (state) {
                    case  1 :
                        state = 4;
                        continue outer;
                    case  31 :
                        state = 34;
                        continue outer;
                    case  22 :
                        state = 25;
                        continue outer;
                    case  26 :
                        attIdx = context.getAttribute("", "createdDate");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "modifiedDate");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "recipeId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "servingSize");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  7 :
                        state = 10;
                        continue outer;
                    case  29 :
                        attIdx = context.getAttribute("", "systemId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  25 :
                        state = 28;
                        continue outer;
                    case  0 :
                        attIdx = context.getAttribute("", "mode");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        spawnHandlerFromLeaveAttribute((((magoffin.matt.ieat.domain.impl.UiBaseImpl)magoffin.matt.ieat.domain.impl.UiDataImpl.this).new Unmarshaller(context)), 1, ___uri, ___local, ___qname);
                        return ;
                    case  28 :
                        state = 31;
                        continue outer;
                    case  2 :
                        attIdx = context.getAttribute("", "pageSize");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "pageStart");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  17 :
                        attIdx = context.getAttribute("", "ethnicityId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  16 :
                        state = 19;
                        continue outer;
                    case  35 :
                        attIdx = context.getAttribute("", "mealId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  14 :
                        attIdx = context.getAttribute("", "difficultyId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  13 :
                        state = 16;
                        continue outer;
                    case  4 :
                        state = 7;
                        continue outer;
                    case  23 :
                        attIdx = context.getAttribute("", "prepTimeId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  11 :
                        attIdx = context.getAttribute("", "courseId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  19 :
                        state = 22;
                        continue outer;
                    case  37 :
                        revertToParentFromLeaveAttribute(___uri, ___local, ___qname);
                        return ;
                    case  5 :
                        _MetaSupport = ((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl) spawnChildFromLeaveAttribute((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl.class), 6, ___uri, ___local, ___qname));
                        return ;
                    case  34 :
                        state = 37;
                        continue outer;
                    case  20 :
                        attIdx = context.getAttribute("", "ingredientId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  8 :
                        attIdx = context.getAttribute("", "baseId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                    case  10 :
                        state = 13;
                        continue outer;
                    case  32 :
                        attIdx = context.getAttribute("", "abbreviation");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "mass");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "systemId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "toImperial");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "toMetric");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "toUS");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        attIdx = context.getAttribute("", "unitId");
                        if (attIdx >= 0) {
                            context.consumeAttribute(attIdx);
                            context.getCurrentHandler().leaveAttribute(___uri, ___local, ___qname);
                            return ;
                        }
                        break;
                }
                super.leaveAttribute(___uri, ___local, ___qname);
                break;
            }
        }

        public void handleText(final java.lang.String value)
            throws org.xml.sax.SAXException
        {
            int attIdx;
            outer:
            while (true) {
                try {
                    switch (state) {
                        case  1 :
                            state = 4;
                            continue outer;
                        case  31 :
                            state = 34;
                            continue outer;
                        case  22 :
                            state = 25;
                            continue outer;
                        case  26 :
                            attIdx = context.getAttribute("", "createdDate");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            attIdx = context.getAttribute("", "modifiedDate");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            attIdx = context.getAttribute("", "recipeId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            attIdx = context.getAttribute("", "servingSize");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            break;
                        case  7 :
                            state = 10;
                            continue outer;
                        case  29 :
                            attIdx = context.getAttribute("", "systemId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            _getSystem().add(((magoffin.matt.ieat.domain.impl.SystemImpl) spawnChildFromText((magoffin.matt.ieat.domain.impl.SystemImpl.class), 30, value)));
                            return ;
                        case  25 :
                            state = 28;
                            continue outer;
                        case  0 :
                            attIdx = context.getAttribute("", "mode");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            spawnHandlerFromText((((magoffin.matt.ieat.domain.impl.UiBaseImpl)magoffin.matt.ieat.domain.impl.UiDataImpl.this).new Unmarshaller(context)), 1, value);
                            return ;
                        case  28 :
                            state = 31;
                            continue outer;
                        case  2 :
                            attIdx = context.getAttribute("", "pageSize");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            attIdx = context.getAttribute("", "pageStart");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            break;
                        case  17 :
                            attIdx = context.getAttribute("", "ethnicityId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            _getEthnicity().add(((magoffin.matt.ieat.domain.impl.EthnicityImpl) spawnChildFromText((magoffin.matt.ieat.domain.impl.EthnicityImpl.class), 18, value)));
                            return ;
                        case  16 :
                            state = 19;
                            continue outer;
                        case  35 :
                            attIdx = context.getAttribute("", "mealId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            break;
                        case  14 :
                            attIdx = context.getAttribute("", "difficultyId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            _getDifficulty().add(((magoffin.matt.ieat.domain.impl.DifficultyImpl) spawnChildFromText((magoffin.matt.ieat.domain.impl.DifficultyImpl.class), 15, value)));
                            return ;
                        case  13 :
                            state = 16;
                            continue outer;
                        case  4 :
                            state = 7;
                            continue outer;
                        case  23 :
                            attIdx = context.getAttribute("", "prepTimeId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            _getPrepTime().add(((magoffin.matt.ieat.domain.impl.PrepTimeImpl) spawnChildFromText((magoffin.matt.ieat.domain.impl.PrepTimeImpl.class), 24, value)));
                            return ;
                        case  11 :
                            attIdx = context.getAttribute("", "courseId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            _getCourse().add(((magoffin.matt.ieat.domain.impl.CourseImpl) spawnChildFromText((magoffin.matt.ieat.domain.impl.CourseImpl.class), 12, value)));
                            return ;
                        case  19 :
                            state = 22;
                            continue outer;
                        case  37 :
                            revertToParentFromText(value);
                            return ;
                        case  5 :
                            _MetaSupport = ((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl) spawnChildFromText((magoffin.matt.ieat.domain.impl.UiMetaSupportImpl.class), 6, value));
                            return ;
                        case  34 :
                            state = 37;
                            continue outer;
                        case  20 :
                            attIdx = context.getAttribute("", "ingredientId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            break;
                        case  8 :
                            attIdx = context.getAttribute("", "baseId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            _getBase().add(((magoffin.matt.ieat.domain.impl.BaseImpl) spawnChildFromText((magoffin.matt.ieat.domain.impl.BaseImpl.class), 9, value)));
                            return ;
                        case  10 :
                            state = 13;
                            continue outer;
                        case  32 :
                            attIdx = context.getAttribute("", "abbreviation");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            attIdx = context.getAttribute("", "mass");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            attIdx = context.getAttribute("", "systemId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            attIdx = context.getAttribute("", "toImperial");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            attIdx = context.getAttribute("", "toMetric");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            attIdx = context.getAttribute("", "toUS");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            attIdx = context.getAttribute("", "unitId");
                            if (attIdx >= 0) {
                                context.consumeAttribute(attIdx);
                                context.getCurrentHandler().text(value);
                                return ;
                            }
                            _getUnit().add(((magoffin.matt.ieat.domain.impl.UnitImpl) spawnChildFromText((magoffin.matt.ieat.domain.impl.UnitImpl.class), 33, value)));
                            return ;
                    }
                } catch (java.lang.RuntimeException e) {
                    handleUnexpectedTextException(value, e);
                }
                break;
            }
        }

    }

}
