public void StreamIn(RStrmIn reader)
        {
            while (reader.MoveNext())
            {
                int propertyId = reader.GetPropertyId(ModelSchema.BridgeAssignmentEstItemKeywordArray);
                if (propertyId == -1)
                {
                    propertyId = reader.GetPropertyId(ModelSchema.BridgeAssignmentEstItemKeywordArrayOld);
                }

                switch (propertyId)
                {
                case (int)BridgeAssignEstItemProperty.Id:
                    EstItemId = reader.ReadString();
                    break;

                case (int)BridgeAssignEstItemProperty.Qty:
                    QuantityGenerated = reader.ReadDouble();
                    break;

                case (int)BridgeAssignEstItemProperty.Asn:
                    var obj = new VariableAssignmentSummary();
                    obj.StreamIn(reader);
                    VariableAssignmentList.Add(obj);
                    break;
                }
            }
        }
        public void StreamIn(RStrmIn reader)
        {
            while (reader.MoveNext())
            {
                int propertyId = reader.GetPropertyId(ModelSchema.BridgeAssignmentPassKeywordArray);
                if (propertyId == -1)
                {
                    propertyId = reader.GetPropertyId(ModelSchema.BridgeAssignmentPassKeywordArrayOld);
                }

                switch (propertyId)
                {
                case (int)BridgeAssignPassProperty.PTko:
                    PrimaryTakeoffNumber = reader.ReadInteger();
                    break;

                case (int)BridgeAssignPassProperty.Asn:
                    var obj = new VariableAssignmentSummary();
                    obj.StreamIn(reader);
                    VariableAssignmentList.Add(obj);
                    break;
                }
            }
        }