<commit_before># Summary

* [README](README.md)

## Parte I: Introdução
* [Introdução](Parte-I/README.md)
    * [Introdução ao SimPy](Parte-I/introducao_ao_simpy.md)
    * [Instalando o SimPy](Parte-I/instalando_o_simpy.md)
    * [Introdução ao Python](Parte-I/introducao_ao_python.md)
    * [Solução desafio 1](Parte-I/solucao_desafio_1.md)
* [Criando as primeiras entidades](Parte-I/criando_as_primeiras_entidades.md)
    * [Solução dos desafios 2 e 3](Parte-I/solucao_dos_desafios_2_e_3.md)
* [Criando, ocupando e desocupando recursos](criando,_ocupando_e_desocupando_recursos.md)
    * [Exemplo Fila M\/M\/1](Parte-I/exemplo_fila_mm1.md)
    * [Solução dos desafios 4, 5 e 6](Parte-I/solucao_dos_desafios_4_e_5.md)
* [Atributos e variáveis](atributos_e_variaveis.md)
    * [Solução dos desafios 7 e 8](Parte-I/solucao_dos_desafios_7_e_8_atributos.md)
* [Environments: controlando a simulação](environments_controlando_a_simulacao.md)
    * [Solução dos desafios 9 e 10](Parte-I/solucao_dos_desafios_6_e_7.md)
* \[Opções avançadas de recursos e processos\]
    * [Recursos com prioridade](Parte-I/recursos_com_prioridade.md)
        * [Solução dos desafios 11 e 12](Parte-I/solucao_dos_desafios_11_e_12.md)
    * [Interrupções de processos](Parte-I/interrupcoes_de_processos.md)
        * [Solução dos desafios 13 e 14](Parte-I/solucao_dos_desafios_13_e_14.md)
    * [Interrompendo o processo sem try except](Parte-I/interrompendo-o-processo-sem-try-except.md)
    * [Selecionando um recurso específico para um processo](Parte-I/selecionando_um_recurso_especifico_para_um_processo.md)
        * [Solução dos desafios 15 e 16](Parte-I/soluçãodosdesafios15e16.md)
    * [Enchendo ou esvaziando tanques, caixas ou estoques](Parte-I/enchendo_ou_esvaziando_caixas_tanques.md)
        * [Solução dos desafios 17 e 18](Parte-I/solucao_dos_desafios_15_e_16.md)
* [Criando lotes \(ou agrupando\) entidades durante a simulação](Parte-I/criando_lotes_ou_agrupando_entidades_durante_a_simulacao.md)
    * [Solução dos desafios 19 e 20](Parte-I/solução-dos-desafios-19-e-20.md)

## Parte II: Eventos
* [Events: os diversos tipos de Eventos em SimPy](Parte-II/events_os_diversos_tipos_de_eventos_em_simpy.md)
    * [Solução dos desafios 21 e 22](Parte-II/solução-dos-desafios-21-e-22.md)
* [Aguardando múltiplos eventos](Parte-II/aguardando-múltiplos-eventos.md)
    * [Solução dos desafios 23 e 24](Parte-II/solução-dos-desafions-23-e-24.md)
* [Propriedades úteis dos eventos](Parte-II/propriedades-úteis-dos-eventos.md)
    * [Solução do desafio 25](Parte-II/cancelando-um-evento-já-iniciado.md)
* [Adicionando funções aos eventos com callbacks](Parte-II/adicionando-funções-aos-eventos-com-callbacks.md)
    * [Solução do desafio 26](Parte-II/solução-do-desafio-26.md)
* [Interrupções de eventos](Parte-II/interrupções-de-eventos.md)
* [O que são funções geradoras? \(Ou como funciona o SimPy\)](Parte-II/o_que_sao_funcoes_geradoras_ou_como_funciona_o_simpy.md)
* [O que são funções geradoras? \(Ou como funciona o SimPy?\)  Parte II](Parte-II/o_que_sao_funcoes_geradoras_ou_como_parte_II.md)

## Parte III: Controlando os Parâmetros de Saída do Modelo
* \[Um exemplo de simulação e otimização\]Parte-III\/\(um\_exemplo\_de\_simulacao\_e\_otimizacao.md\)
* [Simulação de Agentes em SimPy!](Parte-III/simulacao_de_agentes_em_simpy.md)
* [Gravar Saída em Arquivo ou Planilha](Parte-III/exportar_saida_para_arquivo_ou_planilha.md)
* [Construção de modelos de simulação](Parte-III/construção-de-modelos-de-simulação.md)
<commit_msg>Updates SUMMARY.md<commit_after># Summary

* [README](README.md)

## Parte I: Introdução

* [Introdução](Parte-I/README.md)
  * [Introdução ao SimPy](Parte-I/introducao_ao_simpy.md)
  * [Instalando o SimPy](Parte-I/instalando_o_simpy.md)
  * [Introdução ao Python](Parte-I/introducao_ao_python.md)
  * [Solução desafio 1](Parte-I/solucao_desafio_1.md)
* [Criando as primeiras entidades](Parte-I/criando_as_primeiras_entidades.md)
  * [Solução dos desafios 2 e 3](Parte-I/solucao_dos_desafios_2_e_3.md)
* [Criando, ocupando e desocupando recursos](criando,_ocupando_e_desocupando_recursos.md)
  * [Exemplo Fila M\/M\/1](Parte-I/exemplo_fila_mm1.md)
  * [Solução dos desafios 4, 5 e 6](Parte-I/solucao_dos_desafios_4_e_5.md)
* [Atributos e variáveis](atributos_e_variaveis.md)
  * [Solução dos desafios 7 e 8](Parte-I/solucao_dos_desafios_7_e_8_atributos.md)
* [Environments: controlando a simulação](environments_controlando_a_simulacao.md)
  * [Solução dos desafios 9 e 10](Parte-I/solucao_dos_desafios_6_e_7.md)
* \[Opções avançadas de recursos e processos\]
  * [Recursos com prioridade](Parte-I/recursos_com_prioridade.md)
    * [Solução dos desafios 11 e 12](Parte-I/solucao_dos_desafios_11_e_12.md)
  * [Interrupções de processos](Parte-I/interrupcoes_de_processos.md)
  * [Interrompendo o processo sem try except](Parte-I/interrompendo-o-processo-sem-try-except.md)
  * [Solução dos desafios 13 e 14](Parte-I/solucao_dos_desafios_13_e_14.md)
  * [Selecionando um recurso específico para um processo](Parte-I/selecionando_um_recurso_especifico_para_um_processo.md)
    * [Solução dos desafios 15 e 16](Parte-I/soluçãodosdesafios15e16.md)
  * [Enchendo ou esvaziando tanques, caixas ou estoques](Parte-I/enchendo_ou_esvaziando_caixas_tanques.md)
    * [Solução dos desafios 17 e 18](Parte-I/solucao_dos_desafios_15_e_16.md)
* [Criando lotes \(ou agrupando\) entidades durante a simulação](Parte-I/criando_lotes_ou_agrupando_entidades_durante_a_simulacao.md)
  * [Solução dos desafios 19 e 20](Parte-I/solução-dos-desafios-19-e-20.md)

## Parte II: Eventos

* [Events: os diversos tipos de Eventos em SimPy](Parte-II/events_os_diversos_tipos_de_eventos_em_simpy.md)
  * [Solução dos desafios 21 e 22](Parte-II/solução-dos-desafios-21-e-22.md)
* [Aguardando múltiplos eventos](Parte-II/aguardando-múltiplos-eventos.md)
  * [Solução dos desafios 23 e 24](Parte-II/solução-dos-desafions-23-e-24.md)
* [Propriedades úteis dos eventos](Parte-II/propriedades-úteis-dos-eventos.md)
  * [Solução do desafio 25](Parte-II/cancelando-um-evento-já-iniciado.md)
* [Adicionando funções aos eventos com callbacks](Parte-II/adicionando-funções-aos-eventos-com-callbacks.md)
  * [Solução do desafio 26](Parte-II/solução-do-desafio-26.md)
* [Interrupções de eventos](Parte-II/interrupções-de-eventos.md)
* [O que são funções geradoras? \(Ou como funciona o SimPy\)](Parte-II/o_que_sao_funcoes_geradoras_ou_como_funciona_o_simpy.md)
* [O que são funções geradoras? \(Ou como funciona o SimPy?\)  Parte II](Parte-II/o_que_sao_funcoes_geradoras_ou_como_parte_II.md)

## Parte III: Controlando os Parâmetros de Saída do Modelo

* \[Um exemplo de simulação e otimização\]Parte-III\/\(um\_exemplo\_de\_simulacao\_e\_otimizacao.md\)
* [Simulação de Agentes em SimPy!](Parte-III/simulacao_de_agentes_em_simpy.md)
* [Gravar Saída em Arquivo ou Planilha](Parte-III/exportar_saida_para_arquivo_ou_planilha.md)
* [Construção de modelos de simulação](Parte-III/construção-de-modelos-de-simulação.md)

{'fraction_non_alphanumeric': 0.11942219679633867, 'fraction_numerical': 0.02402745995423341, 'mean_word_length': 5.403846153846154, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1108553', 'n_tokens_mistral': 3267, 'n_tokens_neox': 3087, 'n_words': 467}