package br.com.elotech.controllers;

import br.com.elotech.commom.PROP_FILE;
import br.com.elotech.commom.Util;
import br.com.elotech.model.Dados;
import br.com.elotech.model.familia.*;
import java.text.ParseException;
import java.util.Properties;

/**
 * User: claiton.nazaret
 * Date: 21/02/2019
 * Time: 11:57
 */
public class FamiliaController {
  private Familia familia;
  private Properties prop;

  public FamiliaController(Familia familia) {
    this.familia = familia;
  }

  public Familia execute(Dados dados, String line, PROP_FILE p) throws ParseException {
    prop = Util.getProp(p);
    switch (p) {
      case REG01:
        if(familia != null){
          dados.getFamilias().add(familia);
        }
        familia = new Familia();
        Reg01 reg01 = new Reg01();
        reg01.setChvNaturalPrefeituraFam(Util.getStringOfProp(line, prop.getProperty("CHV_NATURAL_PREFEITURA_FAM.pos"), prop.getProperty("CHV_NATURAL_PREFEITURA_FAM.tam")));
        reg01.setCodFamiliarFam(Util.getStringOfProp(line, prop.getProperty("COD_FAMILIAR_FAM.pos"), prop.getProperty("COD_FAMILIAR_FAM.tam")));
        reg01.setDatCadastramentoFam(Util.getDateOfProp(line, prop.getProperty("DAT_CADASTRAMENTO_FAM.pos"), prop.getProperty("DAT_CADASTRAMENTO_FAM.tam")));
        reg01.setDatAlteracaoFam(Util.getDateOfProp(line, prop.getProperty("DAT_ALTERACAO_FAM.pos"), prop.getProperty("DAT_ALTERACAO_FAM.tam")));
        reg01.setCodEstCadastralFam(Util.getStringOfProp(line, prop.getProperty("COD_EST_CADASTRAL_FAM.pos"), prop.getProperty("COD_EST_CADASTRAL_FAM.tam")));
        reg01.setIndCadastroValidoFam(Util.getStringOfProp(line, prop.getProperty("IND_CADASTRO_VALIDO_FAM.pos"), prop.getProperty("IND_CADASTRO_VALIDO_FAM.tam")));
        reg01.setCodCondicaoCadastroFam(Util.getStringOfProp(line, prop.getProperty("COD_CONDICAO_CADASTRO_FAM.pos"), prop.getProperty("COD_CONDICAO_CADASTRO_FAM.tam")));
        reg01.setVlrRendaMediaFam(Util.getStringOfProp(line, prop.getProperty("VLR_RENDA_MEDIA_FAM.pos"), prop.getProperty("VLR_RENDA_MEDIA_FAM.tam")));
        reg01.setIndTrabalhoInfantilFam(Util.getStringOfProp(line, prop.getProperty("IND_TRABALHO_INFANTIL_FAM.pos"), prop.getProperty("IND_TRABALHO_INFANTIL_FAM.tam")));
        reg01.setCodMunicIbge2Fam(Util.getStringOfProp(line, prop.getProperty("COD_MUNIC_IBGE_2_FAM.pos"), prop.getProperty("COD_MUNIC_IBGE_2_FAM.tam")));
        reg01.setCodMunicIbge5Fam(Util.getStringOfProp(line, prop.getProperty("COD_MUNIC_IBGE_5_FAM.pos"), prop.getProperty("COD_MUNIC_IBGE_5_FAM.tam")));
        reg01.setCodIbgeDistritoFam(Util.getStringOfProp(line, prop.getProperty("COD_IBGE_DISTRITO_FAM.pos"), prop.getProperty("COD_IBGE_DISTRITO_FAM.tam")));
        reg01.setCodIbgeSubdistrFam(Util.getStringOfProp(line, prop.getProperty("COD_IBGE_SUBDISTR_FAM.pos"), prop.getProperty("COD_IBGE_SUBDISTR_FAM.tam")));
        reg01.setCodIbgeSetorCensoFam(Util.getStringOfProp(line, prop.getProperty("COD_IBGE_SETOR_CENSO_FAM.pos"), prop.getProperty("COD_IBGE_SETOR_CENSO_FAM.tam")));
        reg01.setCodModalidadeFam(Util.getStringOfProp(line, prop.getProperty("COD_MODALIDADE_FAM.pos"), prop.getProperty("COD_MODALIDADE_FAM.tam")));
        reg01.setCodFormaColetaFam(Util.getStringOfProp(line, prop.getProperty("COD_FORMA_COLETA_FAM.pos"), prop.getProperty("COD_FORMA_COLETA_FAM.tam")));
        reg01.setIndFormulario0Fam(Util.getStringOfProp(line, prop.getProperty("IND_FORMULARIO_0_FAM.pos"), prop.getProperty("IND_FORMULARIO_0_FAM.tam")));
        reg01.setIndFormulario1Fam(Util.getStringOfProp(line, prop.getProperty("IND_FORMULARIO_1_FAM.pos"), prop.getProperty("IND_FORMULARIO_1_FAM.tam")));
        reg01.setIndFormulario2Fam(Util.getStringOfProp(line, prop.getProperty("IND_FORMULARIO_2_FAM.pos"), prop.getProperty("IND_FORMULARIO_2_FAM.tam")));
        reg01.setIndFormularioSup1Fam(Util.getStringOfProp(line, prop.getProperty("IND_FORMULARIO_SUP1_FAM.pos"), prop.getProperty("IND_FORMULARIO_SUP1_FAM.tam")));
        reg01.setIndFormularioSup2Fam(Util.getStringOfProp(line, prop.getProperty("IND_FORMULARIO_SUP2_FAM.pos"), prop.getProperty("IND_FORMULARIO_SUP2_FAM.tam")));
        reg01.setDtaEntrevistaFam(Util.getDateOfProp(line, prop.getProperty("DTA_ENTREVISTA_FAM.pos"), prop.getProperty("DTA_ENTREVISTA_FAM.tam")));
        reg01.setNomLocalidadeFam(Util.getStringOfProp(line, prop.getProperty("NOM_LOCALIDADE_FAM.pos"), prop.getProperty("NOM_LOCALIDADE_FAM.tam")));
        reg01.setNomTipLogradouroFam(Util.getStringOfProp(line, prop.getProperty("NOM_TIP_LOGRADOURO_FAM.pos"), prop.getProperty("NOM_TIP_LOGRADOURO_FAM.tam")));
        reg01.setNomTituloLogradouroFam(Util.getStringOfProp(line, prop.getProperty("NOM_TITULO_LOGRADOURO_FAM.pos"), prop.getProperty("NOM_TITULO_LOGRADOURO_FAM.tam")));
        reg01.setNomLogradouroFam(Util.getStringOfProp(line, prop.getProperty("NOM_LOGRADOURO_FAM.pos"), prop.getProperty("NOM_LOGRADOURO_FAM.tam")));
        reg01.setDesComplementoFam(Util.getStringOfProp(line, prop.getProperty("DES_COMPLEMENTO_FAM.pos"), prop.getProperty("DES_COMPLEMENTO_FAM.tam")));
        reg01.setDesComplementoAdicFam(Util.getStringOfProp(line, prop.getProperty("DES_COMPLEMENTO_ADIC_FAM.pos"), prop.getProperty("DES_COMPLEMENTO_ADIC_FAM.tam")));
        reg01.setNumCepLogradouroFam(Util.getStringOfProp(line, prop.getProperty("NUM_CEP_LOGRADOURO_FAM.pos"), prop.getProperty("NUM_CEP_LOGRADOURO_FAM.tam")));
        reg01.setTxtReferenciaLocalFam(Util.getStringOfProp(line, prop.getProperty("TXT_REFERENCIA_LOCAL_FAM.pos"), prop.getProperty("TXT_REFERENCIA_LOCAL_FAM.tam")));
        reg01.setNomEntrevistadorFam(Util.getStringOfProp(line, prop.getProperty("NOM_ENTREVISTADOR_FAM.pos"), prop.getProperty("NOM_ENTREVISTADOR_FAM.tam")));
        reg01.setNumCpfEntrevistadorFam(Util.getStringOfProp(line, prop.getProperty("NUM_CPF_ENTREVISTADOR_FAM.pos"), prop.getProperty("NUM_CPF_ENTREVISTADOR_FAM.tam")));
        reg01.setTxtObsEntrevistadorFam(Util.getStringOfProp(line, prop.getProperty("TXT_OBS_ENTREVISTADOR_FAM.pos"), prop.getProperty("TXT_OBS_ENTREVISTADOR_FAM.tam")));
        reg01.setCodOrigemPrefeituraFam(Util.getStringOfProp(line, prop.getProperty("COD_ORIGEM_PREFEITURA_FAM.pos"), prop.getProperty("COD_ORIGEM_PREFEITURA_FAM.tam")));
        reg01.setCodOrigemFamiliaFam(Util.getStringOfProp(line, prop.getProperty("COD_ORIGEM_FAMILIA_FAM.pos"), prop.getProperty("COD_ORIGEM_FAMILIA_FAM.tam")));
        reg01.setDtCdstrAtualFmla(Util.getStringOfProp(line, prop.getProperty("DT_CDSTR_ATUAL_FMLA.pos"), prop.getProperty("DT_CDSTR_ATUAL_FMLA.tam")));
        reg01.setFlagFamAlteradaV7(Util.getStringOfProp(line, prop.getProperty("FLAG_FAM_ALTERADA_V7.pos"), prop.getProperty("FLAG_FAM_ALTERADA_V7.tam")));
        reg01.setDatAtualizacaoFamilia(Util.getStringOfProp(line, prop.getProperty("DAT_ATUALIZACAO_FAMILIA.pos"), prop.getProperty("DAT_ATUALIZACAO_FAMILIA.tam")));
        reg01.setCodUnidadeTerritorialFam(Util.getStringOfProp(line, prop.getProperty("COD_UNIDADE_TERRITORIAL_FAM.pos"), prop.getProperty("COD_UNIDADE_TERRITORIAL_FAM.tam")));
        reg01.setNomUnidadeTerritorialFam(Util.getStringOfProp(line, prop.getProperty("NOM_UNIDADE_TERRITORIAL_FAM.pos"), prop.getProperty("NOM_UNIDADE_TERRITORIAL_FAM.tam")));
        familia.setReg01(reg01);
        break;
      case REG02:
        Reg02 reg02 = new Reg02();
        reg02.setCodLocalDomicFam(Util.getStringOfProp(line, prop.getProperty("COD_LOCAL_DOMIC_FAM.pos"), prop.getProperty("COD_LOCAL_DOMIC_FAM.tam")));
        reg02.setCodEspecieDomicFam(Util.getStringOfProp(line, prop.getProperty("COD_ESPECIE_DOMIC_FAM.pos"), prop.getProperty("COD_ESPECIE_DOMIC_FAM.tam")));
        reg02.setQtdComodosDomicFam(Util.getStringOfProp(line, prop.getProperty("QTD_COMODOS_DOMIC_FAM.pos"), prop.getProperty("QTD_COMODOS_DOMIC_FAM.tam")));
        reg02.setQtdComodosDormitorioFam(Util.getStringOfProp(line, prop.getProperty("QTD_COMODOS_DORMITORIO_FAM.pos"), prop.getProperty("QTD_COMODOS_DORMITORIO_FAM.tam")));
        reg02.setCodMaterialPisoFam(Util.getStringOfProp(line, prop.getProperty("COD_MATERIAL_PISO_FAM.pos"), prop.getProperty("COD_MATERIAL_PISO_FAM.tam")));
        reg02.setCodMaterialDomicFam(Util.getStringOfProp(line, prop.getProperty("COD_MATERIAL_DOMIC_FAM.pos"), prop.getProperty("COD_MATERIAL_DOMIC_FAM.tam")));
        reg02.setCodAguaCanalizadaFam(Util.getStringOfProp(line, prop.getProperty("COD_AGUA_CANALIZADA_FAM.pos"), prop.getProperty("COD_AGUA_CANALIZADA_FAM.tam")));
        reg02.setCodAbasteAguaDomicFam(Util.getStringOfProp(line, prop.getProperty("COD_ABASTE_AGUA_DOMIC_FAM.pos"), prop.getProperty("COD_ABASTE_AGUA_DOMIC_FAM.tam")));
        reg02.setCodBanheiroDomicFam(Util.getStringOfProp(line, prop.getProperty("COD_BANHEIRO_DOMIC_FAM.pos"), prop.getProperty("COD_BANHEIRO_DOMIC_FAM.tam")));
        reg02.setCodEscoaSanitarioDomicFam(Util.getStringOfProp(line, prop.getProperty("COD_ESCOA_SANITARIO_DOMIC_FAM.pos"), prop.getProperty("COD_ESCOA_SANITARIO_DOMIC_FAM.tam")));
        reg02.setCodDestinoLixoDomicFam(Util.getStringOfProp(line, prop.getProperty("COD_DESTINO_LIXO_DOMIC_FAM.pos"), prop.getProperty("COD_DESTINO_LIXO_DOMIC_FAM.tam")));
        reg02.setCodIluminacaoDomicFam(Util.getStringOfProp(line, prop.getProperty("COD_ILUMINACAO_DOMIC_FAM.pos"), prop.getProperty("COD_ILUMINACAO_DOMIC_FAM.tam")));
        reg02.setCodCalcamentoDomicFam(Util.getStringOfProp(line, prop.getProperty("COD_CALCAMENTO_DOMIC_FAM.pos"), prop.getProperty("COD_CALCAMENTO_DOMIC_FAM.tam")));
        familia.setReg02(reg02);
        break;
      case REG03:
        Reg03 reg03 = new Reg03();
        reg03.setCodFamiliaIndigenaFam(Util.getStringOfProp(line, prop.getProperty("COD_FAMILIA_INDIGENA_FAM.pos"), prop.getProperty("COD_FAMILIA_INDIGENA_FAM.tam")));
        reg03.setCodPovoIndigenaFam(Util.getStringOfProp(line, prop.getProperty("COD_POVO_INDIGENA_FAM.pos"), prop.getProperty("COD_POVO_INDIGENA_FAM.tam")));
        reg03.setNomPovoIndigenaFam(Util.getStringOfProp(line, prop.getProperty("NOM_POVO_INDIGENA_FAM.pos"), prop.getProperty("NOM_POVO_INDIGENA_FAM.tam")));
        reg03.setCodIndigenaResideFam(Util.getStringOfProp(line, prop.getProperty("COD_INDIGENA_RESIDE_FAM.pos"), prop.getProperty("COD_INDIGENA_RESIDE_FAM.tam")));
        reg03.setCodReservaIndigenaFam(Util.getStringOfProp(line, prop.getProperty("COD_RESERVA_INDIGENA_FAM.pos"), prop.getProperty("COD_RESERVA_INDIGENA_FAM.tam")));
        reg03.setNomReservaIndigenaFam(Util.getStringOfProp(line, prop.getProperty("NOM_RESERVA_INDIGENA_FAM.pos"), prop.getProperty("NOM_RESERVA_INDIGENA_FAM.tam")));
        reg03.setIndReservaIndigenaFam(Util.getStringOfProp(line, prop.getProperty("IND_RESERVA_INDIGENA_FAM.pos"), prop.getProperty("IND_RESERVA_INDIGENA_FAM.tam")));
        reg03.setIndFamiliaQuilombolaFam(Util.getStringOfProp(line, prop.getProperty("IND_FAMILIA_QUILOMBOLA_FAM.pos"), prop.getProperty("IND_FAMILIA_QUILOMBOLA_FAM.tam")));
        reg03.setCodComunidadeQuilombolaFam(Util.getStringOfProp(line, prop.getProperty("COD_COMUNIDADE_QUILOMBOLA_FAM.pos"), prop.getProperty("COD_COMUNIDADE_QUILOMBOLA_FAM.tam")));
        reg03.setNomComunidadeQuilombolaFam(Util.getStringOfProp(line, prop.getProperty("NOM_COMUNIDADE_QUILOMBOLA_FAM.pos"), prop.getProperty("NOM_COMUNIDADE_QUILOMBOLA_FAM.tam")));
        reg03.setIndComunidadeQuilombolaFam(Util.getStringOfProp(line, prop.getProperty("IND_COMUNIDADE_QUILOMBOLA_FAM.pos"), prop.getProperty("IND_COMUNIDADE_QUILOMBOLA_FAM.tam")));
        reg03.setQtdPessoasDomicFam(Util.getStringOfProp(line, prop.getProperty("QTD_PESSOAS_DOMIC_FAM.pos"), prop.getProperty("QTD_PESSOAS_DOMIC_FAM.tam")));
        reg03.setQtdFamiliasDomicFam(Util.getStringOfProp(line, prop.getProperty("QTD_FAMILIAS_DOMIC_FAM.pos"), prop.getProperty("QTD_FAMILIAS_DOMIC_FAM.tam")));
        reg03.setQtdPessoaInter017AnosFam(Util.getStringOfProp(line, prop.getProperty("QTD_PESSOA_INTER_0_17_ANOS_FAM.pos"), prop.getProperty("QTD_PESSOA_INTER_0_17_ANOS_FAM.tam")));
        reg03.setIndPessoaInter017AnosFam(Util.getStringOfProp(line, prop.getProperty("IND_PESSOA_INTER_0_17_ANOS_FAM.pos"), prop.getProperty("IND_PESSOA_INTER_0_17_ANOS_FAM.tam")));
        reg03.setQtdPessoaInter1859AnosFam(Util.getStringOfProp(line, prop.getProperty("QTD_PESSOA_INTER_18_59_ANOS_FAM.pos"), prop.getProperty("QTD_PESSOA_INTER_18_59_ANOS_FAM.tam")));
        reg03.setIndPessoaInter1859AnosFam(Util.getStringOfProp(line, prop.getProperty("IND_PESSOA_INTER_18_59_ANOS_FAM.pos"), prop.getProperty("IND_PESSOA_INTER_18_59_ANOS_FAM.tam")));
        reg03.setQtdPessoaInter60AnosFam(Util.getStringOfProp(line, prop.getProperty("QTD_PESSOA_INTER_60_ANOS_FAM.pos"), prop.getProperty("QTD_PESSOA_INTER_60_ANOS_FAM.tam")));
        reg03.setIndPessoaInter60AnosFam(Util.getStringOfProp(line, prop.getProperty("IND_PESSOA_INTER_60_ANOS_FAM.pos"), prop.getProperty("IND_PESSOA_INTER_60_ANOS_FAM.tam")));
        reg03.setValDespEnergiaFam(Util.getStringOfProp(line, prop.getProperty("VAL_DESP_ENERGIA_FAM.pos"), prop.getProperty("VAL_DESP_ENERGIA_FAM.tam")));
        reg03.setIndDespEnergiaFam(Util.getStringOfProp(line, prop.getProperty("IND_DESP_ENERGIA_FAM.pos"), prop.getProperty("IND_DESP_ENERGIA_FAM.tam")));
        reg03.setValDespAguaEsgotoFam(Util.getStringOfProp(line, prop.getProperty("VAL_DESP_AGUA_ESGOTO_FAM.pos"), prop.getProperty("VAL_DESP_AGUA_ESGOTO_FAM.tam")));
        reg03.setIndDespAguaEsgotoFam(Util.getStringOfProp(line, prop.getProperty("IND_DESP_AGUA_ESGOTO_FAM.pos"), prop.getProperty("IND_DESP_AGUA_ESGOTO_FAM.tam")));
        reg03.setValDespGasFam(Util.getStringOfProp(line, prop.getProperty("VAL_DESP_GAS_FAM.pos"), prop.getProperty("VAL_DESP_GAS_FAM.tam")));
        reg03.setIndDespGasFam(Util.getStringOfProp(line, prop.getProperty("IND_DESP_GAS_FAM.pos"), prop.getProperty("IND_DESP_GAS_FAM.tam")));
        reg03.setValDespAlimentacaoFam(Util.getStringOfProp(line, prop.getProperty("VAL_DESP_ALIMENTACAO_FAM.pos"), prop.getProperty("VAL_DESP_ALIMENTACAO_FAM.tam")));
        reg03.setIndDespAlimentacaoFam(Util.getStringOfProp(line, prop.getProperty("IND_DESP_ALIMENTACAO_FAM.pos"), prop.getProperty("IND_DESP_ALIMENTACAO_FAM.tam")));
        reg03.setValDespTransporFam(Util.getStringOfProp(line, prop.getProperty("VAL_DESP_TRANSPOR_FAM.pos"), prop.getProperty("VAL_DESP_TRANSPOR_FAM.tam")));
        reg03.setIndDespTransporFam(Util.getStringOfProp(line, prop.getProperty("IND_DESP_TRANSPOR_FAM.pos"), prop.getProperty("IND_DESP_TRANSPOR_FAM.tam")));
        reg03.setValDespAluguelFam(Util.getStringOfProp(line, prop.getProperty("VAL_DESP_ALUGUEL_FAM.pos"), prop.getProperty("VAL_DESP_ALUGUEL_FAM.tam")));
        reg03.setIndDespAluguelFam(Util.getStringOfProp(line, prop.getProperty("IND_DESP_ALUGUEL_FAM.pos"), prop.getProperty("IND_DESP_ALUGUEL_FAM.tam")));
        reg03.setValDespMedicamentosFam(Util.getStringOfProp(line, prop.getProperty("VAL_DESP_MEDICAMENTOS_FAM.pos"), prop.getProperty("VAL_DESP_MEDICAMENTOS_FAM.tam")));
        reg03.setIndDespMedicamentosFam(Util.getStringOfProp(line, prop.getProperty("IND_DESP_MEDICAMENTOS_FAM.pos"), prop.getProperty("IND_DESP_MEDICAMENTOS_FAM.tam")));
        reg03.setNomEstabAssistSaudeFam(Util.getStringOfProp(line, prop.getProperty("NOM_ESTAB_ASSIST_SAUDE_FAM.pos"), prop.getProperty("NOM_ESTAB_ASSIST_SAUDE_FAM.tam")));
        reg03.setNuEstboSaude(Util.getStringOfProp(line, prop.getProperty("NU_ESTBO_SAUDE.pos"), prop.getProperty("NU_ESTBO_SAUDE.tam")));
        reg03.setNomCentroAssistFam(Util.getStringOfProp(line, prop.getProperty("NOM_CENTRO_ASSIST_FAM.pos"), prop.getProperty("NOM_CENTRO_ASSIST_FAM.tam")));
        reg03.setCodCentroAssistFam(Util.getStringOfProp(line, prop.getProperty("COD_CENTRO_ASSIST_FAM.pos"), prop.getProperty("COD_CENTRO_ASSIST_FAM.tam")));
        familia.setReg03(reg03);
        break;
      case REG09:
        Reg09 reg09 = new Reg09();
        reg09.setNumDddContato1Fam(Util.getStringOfProp(line, prop.getProperty("NUM_DDD_CONTATO_1_FAM.pos"), prop.getProperty("NUM_DDD_CONTATO_1_FAM.tam")));
        reg09.setNumTelContato1Fam(Util.getStringOfProp(line, prop.getProperty("NUM_TEL_CONTATO_1_FAM.pos"), prop.getProperty("NUM_TEL_CONTATO_1_FAM.tam")));
        reg09.setIcTipoContato1Fam(Util.getStringOfProp(line, prop.getProperty("IC_TIPO_CONTATO_1_FAM.pos"), prop.getProperty("IC_TIPO_CONTATO_1_FAM.tam")));
        reg09.setIcEnvoSmsContato1Fam(Util.getStringOfProp(line, prop.getProperty("IC_ENVO_SMS_CONTATO_1_FAM.pos"), prop.getProperty("IC_ENVO_SMS_CONTATO_1_FAM.tam")));
        reg09.setNumDddContato2Fam(Util.getStringOfProp(line, prop.getProperty("NUM_DDD_CONTATO_2_FAM.pos"), prop.getProperty("NUM_DDD_CONTATO_2_FAM.tam")));
        reg09.setNumTelContato2Fam(Util.getStringOfProp(line, prop.getProperty("NUM_TEL_CONTATO_2_FAM.pos"), prop.getProperty("NUM_TEL_CONTATO_2_FAM.tam")));
        reg09.setIcTipoContato2Fam(Util.getStringOfProp(line, prop.getProperty("IC_TIPO_CONTATO_2_FAM.pos"), prop.getProperty("IC_TIPO_CONTATO_2_FAM.tam")));
        reg09.setIcEnvoSmsContato2Fam(Util.getStringOfProp(line, prop.getProperty("IC_ENVO_SMS_CONTATO_2_FAM.pos"), prop.getProperty("IC_ENVO_SMS_CONTATO_2_FAM.tam")));
        reg09.setIcTipoEmailFam(Util.getStringOfProp(line, prop.getProperty("IC_TIPO_EMAIL_FAM.pos"), prop.getProperty("IC_TIPO_EMAIL_FAM.tam")));
        reg09.setEmailFam(Util.getStringOfProp(line, prop.getProperty("EMAIL_FAM.pos"), prop.getProperty("EMAIL_FAM.tam")));
        reg09.setIcEnvioEmailFam(Util.getStringOfProp(line, prop.getProperty("IC_ENVIO_EMAIL_FAM.pos"), prop.getProperty("IC_ENVIO_EMAIL_FAM.tam")));
        familia.setReg09(reg09);
        break;
      case REG11:
        Reg11 reg11 = new Reg11();
        reg11.setIndSesanVendeLeiteFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_VENDE_LEITE_FAM.pos"), prop.getProperty("IND_SESAN_VENDE_LEITE_FAM.tam")));
        reg11.setIndSesanRecebLeiteFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_RECEB_LEITE_FAM.pos"), prop.getProperty("IND_SESAN_RECEB_LEITE_FAM.tam")));
        reg11.setIndSesanVendeAlimPaaFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_VENDE_ALIM_PAA_FAM.pos"), prop.getProperty("IND_SESAN_VENDE_ALIM_PAA_FAM.tam")));
        reg11.setIndSesanRecebAlimPaaFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_RECEB_ALIM_PAA_FAM.pos"), prop.getProperty("IND_SESAN_RECEB_ALIM_PAA_FAM.tam")));
        reg11.setIndSesanRecebCestaBasicaFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_RECEB_CESTA_BASICA_FAM.pos"), prop.getProperty("IND_SESAN_RECEB_CESTA_BASICA_FAM.tam")));
        reg11.setIndSesanRefeiRestauPopularFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_REFEI_RESTAU_POPULAR_FAM.pos"), prop.getProperty("IND_SESAN_REFEI_RESTAU_POPULAR_FAM.tam")));
        reg11.setIndSesanRefeiCozinhaComumFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_REFEI_COZINHA_COMUM_FAM.pos"), prop.getProperty("IND_SESAN_REFEI_COZINHA_COMUM_FAM.tam")));
        reg11.setIndSesanParticAlimNutricaoFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_PARTIC_ALIM_NUTRICAO_FAM.pos"), prop.getProperty("IND_SESAN_PARTIC_ALIM_NUTRICAO_FAM.tam")));
        reg11.setIndSesanCapitAguaChuvaProdAlimFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_CAPIT_AGUA_CHUVA_PROD_ALIM_FAM.pos"), prop.getProperty("IND_SESAN_CAPIT_AGUA_CHUVA_PROD_ALIM_FAM.tam")));
        reg11.setIndSesanCisternaFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_CISTERNA_FAM.pos"), prop.getProperty("IND_SESAN_CISTERNA_FAM.tam")));
        reg11.setIndSesanHortaComumFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_HORTA_COMUM_FAM.pos"), prop.getProperty("IND_SESAN_HORTA_COMUM_FAM.tam")));
        reg11.setIndSesanProjCartIndigenaFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_PROJ_CART_INDIGENA_FAM.pos"), prop.getProperty("IND_SESAN_PROJ_CART_INDIGENA_FAM.tam")));
        reg11.setIndSesanFeiraPopMdsFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_FEIRA_POP_MDS_FAM.pos"), prop.getProperty("IND_SESAN_FEIRA_POP_MDS_FAM.tam")));
        reg11.setIndSesanNenhumFam(Util.getStringOfProp(line, prop.getProperty("IND_SESAN_NENHUM_FAM.pos"), prop.getProperty("IND_SESAN_NENHUM_FAM.tam")));
        reg11.setCodErradTrabEscravoFam(Util.getStringOfProp(line, prop.getProperty("COD_ERRAD_TRAB_ESCRAVO_FAM.pos"), prop.getProperty("COD_ERRAD_TRAB_ESCRAVO_FAM.tam")));
        reg11.setIndMinEnergTarifaSocFam(Util.getStringOfProp(line, prop.getProperty("IND_MIN_ENERG_TARIFA_SOC_FAM.pos"), prop.getProperty("IND_MIN_ENERG_TARIFA_SOC_FAM.tam")));
        reg11.setIndMinEnergEletDoacaoFam(Util.getStringOfProp(line, prop.getProperty("IND_MIN_ENERG_ELET_DOACAO_FAM.pos"), prop.getProperty("IND_MIN_ENERG_ELET_DOACAO_FAM.tam")));
        reg11.setIndMinEnergLuzFam(Util.getStringOfProp(line, prop.getProperty("IND_MIN_ENERG_LUZ_FAM.pos"), prop.getProperty("IND_MIN_ENERG_LUZ_FAM.tam")));
        reg11.setIndMinEnergNenhumFam(Util.getStringOfProp(line, prop.getProperty("IND_MIN_ENERG_NENHUM_FAM.pos"), prop.getProperty("IND_MIN_ENERG_NENHUM_FAM.tam")));
        reg11.setCodCtaEnergOrdemPessoaFam(Util.getStringOfProp(line, prop.getProperty("COD_CTA_ENERG_ORDEM_PESSOA_FAM.pos"), prop.getProperty("COD_CTA_ENERG_ORDEM_PESSOA_FAM.tam")));
        reg11.setCodCtaEnergUnidConsumFam(Util.getStringOfProp(line, prop.getProperty("COD_CTA_ENERG_UNID_CONSUM_FAM.pos"), prop.getProperty("COD_CTA_ENERG_UNID_CONSUM_FAM.tam")));
        reg11.setIndSnasBpcDeficienteFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_BPC_DEFICIENTE_FAM.pos"), prop.getProperty("IND_SNAS_BPC_DEFICIENTE_FAM.tam")));
        reg11.setIndSnasBpcIdosoFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_BPC_IDOSO_FAM.pos"), prop.getProperty("IND_SNAS_BPC_IDOSO_FAM.tam")));
        reg11.setIndSnasPaifFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_PAIF_FAM.pos"), prop.getProperty("IND_SNAS_PAIF_FAM.tam")));
        reg11.setIndSnasCrianca06AnosFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_CRIANCA_0_6_ANOS_FAM.pos"), prop.getProperty("IND_SNAS_CRIANCA_0_6_ANOS_FAM.tam")));
        reg11.setIndSnasGruposIdososFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_GRUPOS_IDOSOS_FAM.pos"), prop.getProperty("IND_SNAS_GRUPOS_IDOSOS_FAM.tam")));
        reg11.setIndSnasAbrigoMulherVitimaFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_ABRIGO_MULHER_VITIMA_FAM.pos"), prop.getProperty("IND_SNAS_ABRIGO_MULHER_VITIMA_FAM.tam")));
        reg11.setIndSnasAbrigoCriancaAdolesFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_ABRIGO_CRIANCA_ADOLES_FAM.pos"), prop.getProperty("IND_SNAS_ABRIGO_CRIANCA_ADOLES_FAM.tam")));
        reg11.setIndSnasAbrigoIdososFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_ABRIGO_IDOSOS_FAM.pos"), prop.getProperty("IND_SNAS_ABRIGO_IDOSOS_FAM.tam")));
        reg11.setIndSnasAbrigoAdultosFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_ABRIGO_ADULTOS_FAM.pos"), prop.getProperty("IND_SNAS_ABRIGO_ADULTOS_FAM.tam")));
        reg11.setIndSnasAbrigoPopulAdultaFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_ABRIGO_POPUL_ADULTA_FAM.pos"), prop.getProperty("IND_SNAS_ABRIGO_POPUL_ADULTA_FAM.tam")));
        reg11.setIndSnasProjovemAdolescenteFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_PROJOVEM_ADOLESCENTE_FAM.pos"), prop.getProperty("IND_SNAS_PROJOVEM_ADOLESCENTE_FAM.tam")));
        reg11.setIndSnasProjovemUrbanoFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_PROJOVEM_URBANO_FAM.pos"), prop.getProperty("IND_SNAS_PROJOVEM_URBANO_FAM.tam")));
        reg11.setIndSnasProjovemCampoFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_PROJOVEM_CAMPO_FAM.pos"), prop.getProperty("IND_SNAS_PROJOVEM_CAMPO_FAM.tam")));
        reg11.setIndSnasProjovemTrabalhadorFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_PROJOVEM_TRABALHADOR_FAM.pos"), prop.getProperty("IND_SNAS_PROJOVEM_TRABALHADOR_FAM.tam")));
        reg11.setIndSnasHabilitReabilitDeficienciaFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_HABILIT_REABILIT_DEFICIENCIA_FAM.pos"), prop.getProperty("IND_SNAS_HABILIT_REABILIT_DEFICIENCIA_FAM.tam")));
        reg11.setIndSnasEnfrentaViolenciaCriancaFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_ENFRENTA_VIOLENCIA_CRIANCA_FAM.pos"), prop.getProperty("IND_SNAS_ENFRENTA_VIOLENCIA_CRIANCA_FAM.tam")));
        reg11.setIndSnasAcompSocialLiberdadeFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_ACOMP_SOCIAL_LIBERDADE_FAM.pos"), prop.getProperty("IND_SNAS_ACOMP_SOCIAL_LIBERDADE_FAM.tam")));
        reg11.setIndSnasAcompSocialLiberdadeComunidadeFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_ACOMP_SOCIAL_LIBERDADE_COMUNIDADE_FAM.pos"), prop.getProperty("IND_SNAS_ACOMP_SOCIAL_LIBERDADE_COMUNIDADE_FAM.tam")));
        reg11.setIndSnasOrientacaoEspecialCriancasAdolFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_ORIENTACAO_ESPECIAL_CRIANCAS_ADOL_FAM.pos"), prop.getProperty("IND_SNAS_ORIENTACAO_ESPECIAL_CRIANCAS_ADOL_FAM.tam")));
        reg11.setIndSnasCentroDiaIdosoFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_CENTRO_DIA_IDOSO_FAM.pos"), prop.getProperty("IND_SNAS_CENTRO_DIA_IDOSO_FAM.tam")));
        reg11.setIndSnasAtendDomicIdososDeficFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_ATEND_DOMIC_IDOSOS_DEFIC_FAM.pos"), prop.getProperty("IND_SNAS_ATEND_DOMIC_IDOSOS_DEFIC_FAM.tam")));
        reg11.setIndSnasInclusaoProdutivaFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_INCLUSAO_PRODUTIVA_FAM.pos"), prop.getProperty("IND_SNAS_INCLUSAO_PRODUTIVA_FAM.tam")));
        reg11.setIndSnasPetiFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_PETI_FAM.pos"), prop.getProperty("IND_SNAS_PETI_FAM.tam")));
        reg11.setIndSnasNenhumFam(Util.getStringOfProp(line, prop.getProperty("IND_SNAS_NENHUM_FAM.pos"), prop.getProperty("IND_SNAS_NENHUM_FAM.tam")));
        reg11.setIndProgProhabFam(Util.getStringOfProp(line, prop.getProperty("IND_PROG_PROHAB_FAM.pos"), prop.getProperty("IND_PROG_PROHAB_FAM.tam")));
        reg11.setIndParcMdsFam(Util.getStringOfProp(line, prop.getProperty("IND_PARC_MDS_FAM.pos"), prop.getProperty("IND_PARC_MDS_FAM.tam")));
        familia.setReg11(reg11);
        break;
      case REG13:
        Reg13 reg13 = new Reg13();
        reg13.setIndPtabDesatQuilombFam(Util.getStringOfProp(line, prop.getProperty("IND_PTAB_DESAT_QUILOMB_FAM.pos"), prop.getProperty("IND_PTAB_DESAT_QUILOMB_FAM.tam")));
        reg13.setIndPtabDesatTerrasIndigFam(Util.getStringOfProp(line, prop.getProperty("IND_PTAB_DESAT_TERRAS_INDIG_FAM.pos"), prop.getProperty("IND_PTAB_DESAT_TERRAS_INDIG_FAM.tam")));
        reg13.setIndPtabDesatCrasCreasFam(Util.getStringOfProp(line, prop.getProperty("IND_PTAB_DESAT_CRAS_CREAS_FAM.pos"), prop.getProperty("IND_PTAB_DESAT_CRAS_CREAS_FAM.tam")));
        reg13.setIndPtabDesatEasFam(Util.getStringOfProp(line, prop.getProperty("IND_PTAB_DESAT_EAS_FAM.pos"), prop.getProperty("IND_PTAB_DESAT_EAS_FAM.tam")));
        reg13.setIndPmigCpoObrPrinFam(Util.getStringOfProp(line, prop.getProperty("IND_PMIG_CPO_OBR_PRIN_FAM.pos"), prop.getProperty("IND_PMIG_CPO_OBR_PRIN_FAM.tam")));
        reg13.setIndPmigCpoObrSup1Fam(Util.getStringOfProp(line, prop.getProperty("IND_PMIG_CPO_OBR_SUP1_FAM.pos"), prop.getProperty("IND_PMIG_CPO_OBR_SUP1_FAM.tam")));
        reg13.setIndPmigSemRfFam(Util.getStringOfProp(line, prop.getProperty("IND_PMIG_SEM_RF_FAM.pos"), prop.getProperty("IND_PMIG_SEM_RF_FAM.tam")));
        reg13.setIndPtrnSemRfFam(Util.getStringOfProp(line, prop.getProperty("IND_PTRN_SEM_RF_FAM.pos"), prop.getProperty("IND_PTRN_SEM_RF_FAM.tam")));
        reg13.setIndPaudCpoObrPrinFam(Util.getStringOfProp(line, prop.getProperty("IND_PAUD_CPO_OBR_PRIN_FAM.pos"), prop.getProperty("IND_PAUD_CPO_OBR_PRIN_FAM.tam")));
        reg13.setIndPaudCpoObrSup1Fam(Util.getStringOfProp(line, prop.getProperty("IND_PAUD_CPO_OBR_SUP1_FAM.pos"), prop.getProperty("IND_PAUD_CPO_OBR_SUP1_FAM.tam")));
        reg13.setIndPatlFamDesatualFam(Util.getStringOfProp(line, prop.getProperty("IND_PATL_FAM_DESATUAL_FAM.pos"), prop.getProperty("IND_PATL_FAM_DESATUAL_FAM.tam")));
        reg13.setIndOtrnOutroMunFam(Util.getStringOfProp(line, prop.getProperty("IND_OTRN_OUTRO_MUN_FAM.pos"), prop.getProperty("IND_OTRN_OUTRO_MUN_FAM.tam")));
        reg13.setIndOtrnNovaFam(Util.getStringOfProp(line, prop.getProperty("IND_OTRN_NOVA_FAM.pos"), prop.getProperty("IND_OTRN_NOVA_FAM.tam")));
        reg13.setIndOtrnExistFam(Util.getStringOfProp(line, prop.getProperty("IND_OTRN_EXIST_FAM.pos"), prop.getProperty("IND_OTRN_EXIST_FAM.tam")));
        reg13.setIndOtrnOutraFam(Util.getStringOfProp(line, prop.getProperty("IND_OTRN_OUTRA_FAM.pos"), prop.getProperty("IND_OTRN_OUTRA_FAM.tam")));
        reg13.setIndOendUterritFam(Util.getStringOfProp(line, prop.getProperty("IND_OEND_UTERRIT_FAM.pos"), prop.getProperty("IND_OEND_UTERRIT_FAM.tam")));
        familia.setReg13(reg13);
        break;
      case REG16:
        Reg16 reg16 = new Reg16();
        reg16.setDatTransferenciaFamt(Util.getDateOfProp(line, prop.getProperty("DAT_TRANSFERENCIA_FAMT.pos"), prop.getProperty("DAT_TRANSFERENCIA_FAMT.tam")));
        reg16.setCodEstCadastralAtualFamt(Util.getStringOfProp(line, prop.getProperty("COD_EST_CADASTRAL_ATUAL_FAMT.pos"), prop.getProperty("COD_EST_CADASTRAL_ATUAL_FAMT.tam")));
        reg16.setCodMunicIbgeOrigem2Famt(Util.getStringOfProp(line, prop.getProperty("COD_MUNIC_IBGE_ORIGEM_2_FAMT.pos"), prop.getProperty("COD_MUNIC_IBGE_ORIGEM_2_FAMT.tam")));
        reg16.setCodMunicIbgeOrigem5Famt(Util.getStringOfProp(line, prop.getProperty("COD_MUNIC_IBGE_ORIGEM_5_FAMT.pos"), prop.getProperty("COD_MUNIC_IBGE_ORIGEM_5_FAMT.tam")));
        reg16.setCodDestinoPrefeituraFamt(Util.getStringOfProp(line, prop.getProperty("COD_DESTINO_PREFEITURA_FAMT.pos"), prop.getProperty("COD_DESTINO_PREFEITURA_FAMT.tam")));
        reg16.setCodDestinoFamiliaFamt(Util.getStringOfProp(line, prop.getProperty("COD_DESTINO_FAMILIA_FAMT.pos"), prop.getProperty("COD_DESTINO_FAMILIA_FAMT.tam")));
        familia.getReg16s().add(reg16);
        break;
      case REG17:
        Reg17 reg17 = new Reg17();
        reg17.setDtaTransferenciaMembt(Util.getDateOfProp(line, prop.getProperty("DTA_TRANSFERENCIA_MEMBT.pos"), prop.getProperty("DTA_TRANSFERENCIA_MEMBT.tam")));
        reg17.setCodEstCadastralAtualMembt(Util.getStringOfProp(line, prop.getProperty("COD_EST_CADASTRAL_ATUAL_MEMBT.pos"), prop.getProperty("COD_EST_CADASTRAL_ATUAL_MEMBT.tam")));
        reg17.setNomMembT(Util.getStringOfProp(line, prop.getProperty("NOM_MEMB_T.pos"), prop.getProperty("NOM_MEMB_T.tam")));
        reg17.setNumNisMembt(Util.getStringOfProp(line, prop.getProperty("NUM_NIS_MEMBT.pos"), prop.getProperty("NUM_NIS_MEMBT.tam")));
        reg17.setNomApelidoMembt(Util.getStringOfProp(line, prop.getProperty("NOM_APELIDO_MEMBT.pos"), prop.getProperty("NOM_APELIDO_MEMBT.tam")));
        reg17.setCodSexoMembt(Util.getStringOfProp(line, prop.getProperty("COD_SEXO_MEMBT.pos"), prop.getProperty("COD_SEXO_MEMBT.tam")));
        reg17.setDtaNascMembt(Util.getDateOfProp(line, prop.getProperty("DTA_NASC_MEMBT.pos"), prop.getProperty("DTA_NASC_MEMBT.tam")));
        reg17.setCodRacaCorMembt(Util.getStringOfProp(line, prop.getProperty("COD_RACA_COR_MEMBT.pos"), prop.getProperty("COD_RACA_COR_MEMBT.tam")));
        reg17.setNomCompletoMaeMembt(Util.getStringOfProp(line, prop.getProperty("NOM_COMPLETO_MAE_MEMBT.pos"), prop.getProperty("NOM_COMPLETO_MAE_MEMBT.tam")));
        reg17.setIndNomCompletoMaeMembt(Util.getStringOfProp(line, prop.getProperty("IND_NOM_COMPLETO_MAE_MEMBT.pos"), prop.getProperty("IND_NOM_COMPLETO_MAE_MEMBT.tam")));
        reg17.setNomCompletoPaiMembt(Util.getStringOfProp(line, prop.getProperty("NOM_COMPLETO_PAI_MEMBT.pos"), prop.getProperty("NOM_COMPLETO_PAI_MEMBT.tam")));
        reg17.setIndNomCompletoPaiMembt(Util.getStringOfProp(line, prop.getProperty("IND_NOM_COMPLETO_PAI_MEMBT.pos"), prop.getProperty("IND_NOM_COMPLETO_PAI_MEMBT.tam")));
        reg17.setSigUfMunicNascMembt(Util.getStringOfProp(line, prop.getProperty("SIG_UF_MUNIC_NASC_MEMBT.pos"), prop.getProperty("SIG_UF_MUNIC_NASC_MEMBT.tam")));
        reg17.setIndUfMunicNascMembt(Util.getStringOfProp(line, prop.getProperty("IND_UF_MUNIC_NASC_MEMBT.pos"), prop.getProperty("IND_UF_MUNIC_NASC_MEMBT.tam")));
        reg17.setNomIbgeMunicNascMembt(Util.getStringOfProp(line, prop.getProperty("NOM_IBGE_MUNIC_NASC_MEMBT.pos"), prop.getProperty("NOM_IBGE_MUNIC_NASC_MEMBT.tam")));
        reg17.setCodIbgeMunicNascMembt(Util.getStringOfProp(line, prop.getProperty("COD_IBGE_MUNIC_NASC_MEMBT.pos"), prop.getProperty("COD_IBGE_MUNIC_NASC_MEMBT.tam")));
        reg17.setIndIbgeMunicNascMembt(Util.getStringOfProp(line, prop.getProperty("IND_IBGE_MUNIC_NASC_MEMBT.pos"), prop.getProperty("IND_IBGE_MUNIC_NASC_MEMBT.tam")));
        reg17.setNomPaisOrigemMembt(Util.getStringOfProp(line, prop.getProperty("NOM_PAIS_ORIGEM_MEMBT.pos"), prop.getProperty("NOM_PAIS_ORIGEM_MEMBT.tam")));
        reg17.setIndPaisOrigemMembt(Util.getStringOfProp(line, prop.getProperty("IND_PAIS_ORIGEM_MEMBT.pos"), prop.getProperty("IND_PAIS_ORIGEM_MEMBT.tam")));
        reg17.setCodCertidaoRegistradaMembt(Util.getStringOfProp(line, prop.getProperty("COD_CERTIDAO_REGISTRADA_MEMBT.pos"), prop.getProperty("COD_CERTIDAO_REGISTRADA_MEMBT.tam")));
        reg17.setCodDestinoPrefeituraMembt(Util.getStringOfProp(line, prop.getProperty("COD_DESTINO_PREFEITURA_MEMBT.pos"), prop.getProperty("COD_DESTINO_PREFEITURA_MEMBT.tam")));
        reg17.setCodDestinoFamiliaMembt(Util.getStringOfProp(line, prop.getProperty("COD_DESTINO_FAMILIA_MEMBT.pos"), prop.getProperty("COD_DESTINO_FAMILIA_MEMBT.tam")));
        reg17.setCodPaisOrigemMembt(Util.getStringOfProp(line, prop.getProperty("COD_PAIS_ORIGEM_MEMBT.pos"), prop.getProperty("COD_PAIS_ORIGEM_MEMBT.tam")));
        familia.getReg17s().add(reg17);
        break;
      case REG18:
        Reg18 reg18 = new Reg18();
        reg18.setDataExc(Util.getDateOfProp(line, prop.getProperty("DATA_EXC.pos"), prop.getProperty("DATA_EXC.tam")));
        reg18.setCpfOperExc(Util.getStringOfProp(line, prop.getProperty("CPF_OPER_EXC.pos"), prop.getProperty("CPF_OPER_EXC.tam")));
        reg18.setMotivoExc(Util.getStringOfProp(line, prop.getProperty("MOTIVO_EXC.pos"), prop.getProperty("MOTIVO_EXC.tam")));
        reg18.setNumPgmcu(Util.getStringOfProp(line, prop.getProperty("NUM_PGMCU.pos"), prop.getProperty("NUM_PGMCU.tam")));
        reg18.setDatEmiPgmcu(Util.getDateOfProp(line, prop.getProperty("DAT_EMI_PGMCU.pos"), prop.getProperty("DAT_EMI_PGMCU.tam")));
        reg18.setNomServdPbcoPgmcu(Util.getStringOfProp(line, prop.getProperty("NOM_SERVD_PBCO_PGMCU.pos"), prop.getProperty("NOM_SERVD_PBCO_PGMCU.tam")));
        reg18.setCpfServdPbcoPgmcuPgmcu(Util.getStringOfProp(line, prop.getProperty("CPF_SERVD_PBCO_PGMCU_PGMCU.pos"), prop.getProperty("CPF_SERVD_PBCO_PGMCU_PGMCU.tam")));
        reg18.setUfPgmcu(Util.getStringOfProp(line, prop.getProperty("UF_PGMCU.pos"), prop.getProperty("UF_PGMCU.tam")));
        reg18.setMunPgmcu(Util.getStringOfProp(line, prop.getProperty("MUN_PGMCU.pos"), prop.getProperty("MUN_PGMCU.tam")));
        reg18.setDescMotExc(Util.getStringOfProp(line, prop.getProperty("DESC_MOT_EXC.pos"), prop.getProperty("DESC_MOT_EXC.tam")));
        familia.setReg18(reg18);
        break;
    }
    return this.familia;
  }
}
