Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software
Autor(a) principal: | |
---|---|
Data de Publicação: | 2022 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFPE |
Texto Completo: | https://repositorio.ufpe.br/handle/123456789/45634 |
Resumo: | A predição de defeitos é uma tarefa que visa alocar recursos e informações para predizer módulos de software propensos a defeitos. Contudo, devido a necessidade de quantidades sufi- cientemente grandes de dados requeridas pelos modelos, pesquisadores tem se concentrado em pesquisas sobre Cross-Project Defect Prediction (CPDP). Essa abordagem envolve construir modelos usando um conjunto de treinamento composto por informações de diversos projetos externos. Diversas abordagens CPDP propostas na literatura utilizam abordagens tradicionais como, por exemplo, normalização/transformação dos dados através do logaritmo ou uso de algoritmos de aprendizagem de máquina. Entretanto, essas abordagens não possuem nenhum mecanismo capaz de selecionar um classificador ou um conjunto de classificadores mais apto em predizer uma determinada amostra de teste. Logo, a seleção dinâmica de classificadores é uma abordagem ao qual seleciona classificadores básicos em tempo real de acordo com cada amostra de teste a ser classificada. Neste contexto e considerando as limitações das abor- dagens CPDP tradicionais, propomos uma abordagem CPDP que, com base nos dados de treinamento, seleciona a melhor configuração de parâmetros (técnica de seleção dinâmica de classificadores × classificador básico × tamanho do pool de classificadores) para classificar as novas amostras de entrada (dados de teste). A abordagem proposta é composta por três etapas: Definição do Alvo, Superprodução e Avaliação do Modelo. Portanto, nessa dissertação são almejados quatro principais pontos. Primeiro, é conduzida uma análise experimental para investigar o comportamento da abordagem proposta na predição de defeitos de software. Se- gundo, são realizadas comparações entre a abordagem proposta versus abordagens CPDP da literatura. Neste contexto, foram investigados quais métodos apresentam melhor desempenho para os mesmos conjuntos de dados ou projetos de software. Terceiro, para verificar a precisão de classificação dos métodos CPDP, foi analisada a qualidade da performance dos métodos em relação à algumas escalas da área sob a curva ROC (ROC-AUC). Quarto, foi realizada uma análise experimental para verificar quando utilizar a abordagem proposta. Neste ponto, utilizamos um meta-classificador (árvore de decisão) que, através de regras de decisão, define quais características dos dados a abordagem proposta deve ser aplicada e, consequentemente, apresentar maior desempenho. |
id |
UFPE_a0166fb39471a4b3ceed9660f64421f5 |
---|---|
oai_identifier_str |
oai:repositorio.ufpe.br:123456789/45634 |
network_acronym_str |
UFPE |
network_name_str |
Repositório Institucional da UFPE |
repository_id_str |
2221 |
spelling |
AVELINO JÚNIOR, Juscelino Sebastiãohttp://lattes.cnpq.br/6515167340670153http://lattes.cnpq.br/8577312109146354CAVALCANTI, George Darmiton da Cunha2022-08-11T15:24:25Z2022-08-11T15:24:25Z2022-03-16AVELINO JÚNIOR, Juscelino Sebastião. Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software. 2022. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2022.https://repositorio.ufpe.br/handle/123456789/45634A predição de defeitos é uma tarefa que visa alocar recursos e informações para predizer módulos de software propensos a defeitos. Contudo, devido a necessidade de quantidades sufi- cientemente grandes de dados requeridas pelos modelos, pesquisadores tem se concentrado em pesquisas sobre Cross-Project Defect Prediction (CPDP). Essa abordagem envolve construir modelos usando um conjunto de treinamento composto por informações de diversos projetos externos. Diversas abordagens CPDP propostas na literatura utilizam abordagens tradicionais como, por exemplo, normalização/transformação dos dados através do logaritmo ou uso de algoritmos de aprendizagem de máquina. Entretanto, essas abordagens não possuem nenhum mecanismo capaz de selecionar um classificador ou um conjunto de classificadores mais apto em predizer uma determinada amostra de teste. Logo, a seleção dinâmica de classificadores é uma abordagem ao qual seleciona classificadores básicos em tempo real de acordo com cada amostra de teste a ser classificada. Neste contexto e considerando as limitações das abor- dagens CPDP tradicionais, propomos uma abordagem CPDP que, com base nos dados de treinamento, seleciona a melhor configuração de parâmetros (técnica de seleção dinâmica de classificadores × classificador básico × tamanho do pool de classificadores) para classificar as novas amostras de entrada (dados de teste). A abordagem proposta é composta por três etapas: Definição do Alvo, Superprodução e Avaliação do Modelo. Portanto, nessa dissertação são almejados quatro principais pontos. Primeiro, é conduzida uma análise experimental para investigar o comportamento da abordagem proposta na predição de defeitos de software. Se- gundo, são realizadas comparações entre a abordagem proposta versus abordagens CPDP da literatura. Neste contexto, foram investigados quais métodos apresentam melhor desempenho para os mesmos conjuntos de dados ou projetos de software. Terceiro, para verificar a precisão de classificação dos métodos CPDP, foi analisada a qualidade da performance dos métodos em relação à algumas escalas da área sob a curva ROC (ROC-AUC). Quarto, foi realizada uma análise experimental para verificar quando utilizar a abordagem proposta. Neste ponto, utilizamos um meta-classificador (árvore de decisão) que, através de regras de decisão, define quais características dos dados a abordagem proposta deve ser aplicada e, consequentemente, apresentar maior desempenho.FACEPEDefect prediction is a task that aims to allocate resources and information to predict defect- prone software modules. However, due to the need for sufficiently large amounts of data required by the models, researchers have focused on research on Cross-Project Defect Pre- diction (CPDP). This approach involves building models using a training set composed of information from multiple external projects. Several CPDP approaches proposed in the lit- erature use traditional approaches such as log normalization/transformation of data or use of machine learning algorithms, however, these approaches have no mechanism to select a classifier or a set of classifiers that are best able to predict a given test sample. Therefore, dynamic classifier selection is an approach that selects basic classifiers in real time according to each test sample to be classified. In this context and considering the limitations of traditional CPDP approaches, we propose a CPDP approach that, based on training data, selects the best parameter configuration (dynamic classifier selection technique × basic classifier × size of the pool of classifiers) to classify the new input samples (test data). The proposed approach is composed of three steps: Target Definition, Overproduction and Model Evaluation. Therefore, four main points are targeted in this dissertation. First, an experimental analysis is conducted to investigate the behavior of the proposed approach in predicting software defects. Second, comparisons are conducted between the proposed approach versus CPDP approaches from the literature. In this context, it was investigated which methods perform better for the same datasets or software designs. Third, to verify the classification accuracy of CPDP methods, the quality of the methods’ performance against some scales of the area under the ROC curve (ROC-AUC) was analyzed. Fourth, an experimental analysis was performed to verify when to use the proposed approach. Here, we used a meta-classifier (decision tree) that, through decision rules, defines which characteristics of the data the proposed approach should apply and, consequently, present higher performance.porUniversidade Federal de PernambucoPrograma de Pos Graduacao em Ciencia da ComputacaoUFPEBrasilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessInteligência computacionalPredição de defeitos de softwarePredição de defeitos cruzada entre projetosSeleção dinâmica de classificadoresUma abordagem de seleção dinâmica de classificadores para predição de defeitos de softwareinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesismestradoreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPECC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8811https://repositorio.ufpe.br/bitstream/123456789/45634/2/license_rdfe39d27027a6cc9cb039ad269a5db8e34MD52ORIGINALDISSERTAÇÃO Juscelino Sebastião Avelino Júnior.pdfDISSERTAÇÃO Juscelino Sebastião Avelino Júnior.pdfapplication/pdf1997794https://repositorio.ufpe.br/bitstream/123456789/45634/1/DISSERTA%c3%87%c3%83O%20Juscelino%20Sebasti%c3%a3o%20Avelino%20J%c3%banior.pdfc043326d5d31a049f24ac6b53e60e989MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-82142https://repositorio.ufpe.br/bitstream/123456789/45634/3/license.txt6928b9260b07fb2755249a5ca9903395MD53TEXTDISSERTAÇÃO Juscelino Sebastião Avelino Júnior.pdf.txtDISSERTAÇÃO Juscelino Sebastião Avelino Júnior.pdf.txtExtracted texttext/plain198954https://repositorio.ufpe.br/bitstream/123456789/45634/4/DISSERTA%c3%87%c3%83O%20Juscelino%20Sebasti%c3%a3o%20Avelino%20J%c3%banior.pdf.txt01b4b92153cbaa3c423db953cb646394MD54THUMBNAILDISSERTAÇÃO Juscelino Sebastião Avelino Júnior.pdf.jpgDISSERTAÇÃO Juscelino Sebastião Avelino Júnior.pdf.jpgGenerated Thumbnailimage/jpeg1220https://repositorio.ufpe.br/bitstream/123456789/45634/5/DISSERTA%c3%87%c3%83O%20Juscelino%20Sebasti%c3%a3o%20Avelino%20J%c3%banior.pdf.jpg3dcf0ed7f1042752158a99e3175891ceMD55123456789/456342022-08-12 02:15:39.148oai:repositorio.ufpe.br:123456789/45634VGVybW8gZGUgRGVww7NzaXRvIExlZ2FsIGUgQXV0b3JpemHDp8OjbyBwYXJhIFB1YmxpY2HDp8OjbyBkZSBEb2N1bWVudG9zIG5vIFJlcG9zaXTDs3JpbyBEaWdpdGFsIGRhIFVGUEUKIAoKRGVjbGFybyBlc3RhciBjaWVudGUgZGUgcXVlIGVzdGUgVGVybW8gZGUgRGVww7NzaXRvIExlZ2FsIGUgQXV0b3JpemHDp8OjbyB0ZW0gbyBvYmpldGl2byBkZSBkaXZ1bGdhw6fDo28gZG9zIGRvY3VtZW50b3MgZGVwb3NpdGFkb3Mgbm8gUmVwb3NpdMOzcmlvIERpZ2l0YWwgZGEgVUZQRSBlIGRlY2xhcm8gcXVlOgoKSSAtICBvIGNvbnRlw7pkbyBkaXNwb25pYmlsaXphZG8gw6kgZGUgcmVzcG9uc2FiaWxpZGFkZSBkZSBzdWEgYXV0b3JpYTsKCklJIC0gbyBjb250ZcO6ZG8gw6kgb3JpZ2luYWwsIGUgc2UgbyB0cmFiYWxobyBlL291IHBhbGF2cmFzIGRlIG91dHJhcyBwZXNzb2FzIGZvcmFtIHV0aWxpemFkb3MsIGVzdGFzIGZvcmFtIGRldmlkYW1lbnRlIHJlY29uaGVjaWRhczsKCklJSSAtIHF1YW5kbyB0cmF0YXItc2UgZGUgVHJhYmFsaG8gZGUgQ29uY2x1c8OjbyBkZSBDdXJzbywgRGlzc2VydGHDp8OjbyBvdSBUZXNlOiBvIGFycXVpdm8gZGVwb3NpdGFkbyBjb3JyZXNwb25kZSDDoCB2ZXJzw6NvIGZpbmFsIGRvIHRyYWJhbGhvOwoKSVYgLSBxdWFuZG8gdHJhdGFyLXNlIGRlIFRyYWJhbGhvIGRlIENvbmNsdXPDo28gZGUgQ3Vyc28sIERpc3NlcnRhw6fDo28gb3UgVGVzZTogZXN0b3UgY2llbnRlIGRlIHF1ZSBhIGFsdGVyYcOnw6NvIGRhIG1vZGFsaWRhZGUgZGUgYWNlc3NvIGFvIGRvY3VtZW50byBhcMOzcyBvIGRlcMOzc2l0byBlIGFudGVzIGRlIGZpbmRhciBvIHBlcsOtb2RvIGRlIGVtYmFyZ28sIHF1YW5kbyBmb3IgZXNjb2xoaWRvIGFjZXNzbyByZXN0cml0bywgc2Vyw6EgcGVybWl0aWRhIG1lZGlhbnRlIHNvbGljaXRhw6fDo28gZG8gKGEpIGF1dG9yIChhKSBhbyBTaXN0ZW1hIEludGVncmFkbyBkZSBCaWJsaW90ZWNhcyBkYSBVRlBFIChTSUIvVUZQRSkuCgogClBhcmEgdHJhYmFsaG9zIGVtIEFjZXNzbyBBYmVydG86CgpOYSBxdWFsaWRhZGUgZGUgdGl0dWxhciBkb3MgZGlyZWl0b3MgYXV0b3JhaXMgZGUgYXV0b3IgcXVlIHJlY2FlbSBzb2JyZSBlc3RlIGRvY3VtZW50bywgZnVuZGFtZW50YWRvIG5hIExlaSBkZSBEaXJlaXRvIEF1dG9yYWwgbm8gOS42MTAsIGRlIDE5IGRlIGZldmVyZWlybyBkZSAxOTk4LCBhcnQuIDI5LCBpbmNpc28gSUlJLCBhdXRvcml6byBhIFVuaXZlcnNpZGFkZSBGZWRlcmFsIGRlIFBlcm5hbWJ1Y28gYSBkaXNwb25pYmlsaXphciBncmF0dWl0YW1lbnRlLCBzZW0gcmVzc2FyY2ltZW50byBkb3MgZGlyZWl0b3MgYXV0b3JhaXMsIHBhcmEgZmlucyBkZSBsZWl0dXJhLCBpbXByZXNzw6NvIGUvb3UgZG93bmxvYWQgKGFxdWlzacOnw6NvKSBhdHJhdsOpcyBkbyBzaXRlIGRvIFJlcG9zaXTDs3JpbyBEaWdpdGFsIGRhIFVGUEUgbm8gZW5kZXJlw6dvIGh0dHA6Ly93d3cucmVwb3NpdG9yaW8udWZwZS5iciwgYSBwYXJ0aXIgZGEgZGF0YSBkZSBkZXDDs3NpdG8uCgogClBhcmEgdHJhYmFsaG9zIGVtIEFjZXNzbyBSZXN0cml0bzoKCk5hIHF1YWxpZGFkZSBkZSB0aXR1bGFyIGRvcyBkaXJlaXRvcyBhdXRvcmFpcyBkZSBhdXRvciBxdWUgcmVjYWVtIHNvYnJlIGVzdGUgZG9jdW1lbnRvLCBmdW5kYW1lbnRhZG8gbmEgTGVpIGRlIERpcmVpdG8gQXV0b3JhbCBubyA5LjYxMCBkZSAxOSBkZSBmZXZlcmVpcm8gZGUgMTk5OCwgYXJ0LiAyOSwgaW5jaXNvIElJSSwgYXV0b3Jpem8gYSBVbml2ZXJzaWRhZGUgRmVkZXJhbCBkZSBQZXJuYW1idWNvIGEgZGlzcG9uaWJpbGl6YXIgZ3JhdHVpdGFtZW50ZSwgc2VtIHJlc3NhcmNpbWVudG8gZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCBwYXJhIGZpbnMgZGUgbGVpdHVyYSwgaW1wcmVzc8OjbyBlL291IGRvd25sb2FkIChhcXVpc2nDp8OjbykgYXRyYXbDqXMgZG8gc2l0ZSBkbyBSZXBvc2l0w7NyaW8gRGlnaXRhbCBkYSBVRlBFIG5vIGVuZGVyZcOnbyBodHRwOi8vd3d3LnJlcG9zaXRvcmlvLnVmcGUuYnIsIHF1YW5kbyBmaW5kYXIgbyBwZXLDrW9kbyBkZSBlbWJhcmdvIGNvbmRpemVudGUgYW8gdGlwbyBkZSBkb2N1bWVudG8sIGNvbmZvcm1lIGluZGljYWRvIG5vIGNhbXBvIERhdGEgZGUgRW1iYXJnby4KRepositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212022-08-12T05:15:39Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false |
dc.title.pt_BR.fl_str_mv |
Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software |
title |
Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software |
spellingShingle |
Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software AVELINO JÚNIOR, Juscelino Sebastião Inteligência computacional Predição de defeitos de software Predição de defeitos cruzada entre projetos Seleção dinâmica de classificadores |
title_short |
Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software |
title_full |
Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software |
title_fullStr |
Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software |
title_full_unstemmed |
Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software |
title_sort |
Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software |
author |
AVELINO JÚNIOR, Juscelino Sebastião |
author_facet |
AVELINO JÚNIOR, Juscelino Sebastião |
author_role |
author |
dc.contributor.authorLattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/6515167340670153 |
dc.contributor.advisorLattes.pt_BR.fl_str_mv |
http://lattes.cnpq.br/8577312109146354 |
dc.contributor.author.fl_str_mv |
AVELINO JÚNIOR, Juscelino Sebastião |
dc.contributor.advisor1.fl_str_mv |
CAVALCANTI, George Darmiton da Cunha |
contributor_str_mv |
CAVALCANTI, George Darmiton da Cunha |
dc.subject.por.fl_str_mv |
Inteligência computacional Predição de defeitos de software Predição de defeitos cruzada entre projetos Seleção dinâmica de classificadores |
topic |
Inteligência computacional Predição de defeitos de software Predição de defeitos cruzada entre projetos Seleção dinâmica de classificadores |
description |
A predição de defeitos é uma tarefa que visa alocar recursos e informações para predizer módulos de software propensos a defeitos. Contudo, devido a necessidade de quantidades sufi- cientemente grandes de dados requeridas pelos modelos, pesquisadores tem se concentrado em pesquisas sobre Cross-Project Defect Prediction (CPDP). Essa abordagem envolve construir modelos usando um conjunto de treinamento composto por informações de diversos projetos externos. Diversas abordagens CPDP propostas na literatura utilizam abordagens tradicionais como, por exemplo, normalização/transformação dos dados através do logaritmo ou uso de algoritmos de aprendizagem de máquina. Entretanto, essas abordagens não possuem nenhum mecanismo capaz de selecionar um classificador ou um conjunto de classificadores mais apto em predizer uma determinada amostra de teste. Logo, a seleção dinâmica de classificadores é uma abordagem ao qual seleciona classificadores básicos em tempo real de acordo com cada amostra de teste a ser classificada. Neste contexto e considerando as limitações das abor- dagens CPDP tradicionais, propomos uma abordagem CPDP que, com base nos dados de treinamento, seleciona a melhor configuração de parâmetros (técnica de seleção dinâmica de classificadores × classificador básico × tamanho do pool de classificadores) para classificar as novas amostras de entrada (dados de teste). A abordagem proposta é composta por três etapas: Definição do Alvo, Superprodução e Avaliação do Modelo. Portanto, nessa dissertação são almejados quatro principais pontos. Primeiro, é conduzida uma análise experimental para investigar o comportamento da abordagem proposta na predição de defeitos de software. Se- gundo, são realizadas comparações entre a abordagem proposta versus abordagens CPDP da literatura. Neste contexto, foram investigados quais métodos apresentam melhor desempenho para os mesmos conjuntos de dados ou projetos de software. Terceiro, para verificar a precisão de classificação dos métodos CPDP, foi analisada a qualidade da performance dos métodos em relação à algumas escalas da área sob a curva ROC (ROC-AUC). Quarto, foi realizada uma análise experimental para verificar quando utilizar a abordagem proposta. Neste ponto, utilizamos um meta-classificador (árvore de decisão) que, através de regras de decisão, define quais características dos dados a abordagem proposta deve ser aplicada e, consequentemente, apresentar maior desempenho. |
publishDate |
2022 |
dc.date.accessioned.fl_str_mv |
2022-08-11T15:24:25Z |
dc.date.available.fl_str_mv |
2022-08-11T15:24:25Z |
dc.date.issued.fl_str_mv |
2022-03-16 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.citation.fl_str_mv |
AVELINO JÚNIOR, Juscelino Sebastião. Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software. 2022. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2022. |
dc.identifier.uri.fl_str_mv |
https://repositorio.ufpe.br/handle/123456789/45634 |
identifier_str_mv |
AVELINO JÚNIOR, Juscelino Sebastião. Uma abordagem de seleção dinâmica de classificadores para predição de defeitos de software. 2022. Dissertação (Mestrado em Ciência da Computação) - Universidade Federal de Pernambuco, Recife, 2022. |
url |
https://repositorio.ufpe.br/handle/123456789/45634 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
http://creativecommons.org/licenses/by-nc-nd/3.0/br/ info:eu-repo/semantics/openAccess |
rights_invalid_str_mv |
http://creativecommons.org/licenses/by-nc-nd/3.0/br/ |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal de Pernambuco |
dc.publisher.program.fl_str_mv |
Programa de Pos Graduacao em Ciencia da Computacao |
dc.publisher.initials.fl_str_mv |
UFPE |
dc.publisher.country.fl_str_mv |
Brasil |
publisher.none.fl_str_mv |
Universidade Federal de Pernambuco |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFPE instname:Universidade Federal de Pernambuco (UFPE) instacron:UFPE |
instname_str |
Universidade Federal de Pernambuco (UFPE) |
instacron_str |
UFPE |
institution |
UFPE |
reponame_str |
Repositório Institucional da UFPE |
collection |
Repositório Institucional da UFPE |
bitstream.url.fl_str_mv |
https://repositorio.ufpe.br/bitstream/123456789/45634/2/license_rdf https://repositorio.ufpe.br/bitstream/123456789/45634/1/DISSERTA%c3%87%c3%83O%20Juscelino%20Sebasti%c3%a3o%20Avelino%20J%c3%banior.pdf https://repositorio.ufpe.br/bitstream/123456789/45634/3/license.txt https://repositorio.ufpe.br/bitstream/123456789/45634/4/DISSERTA%c3%87%c3%83O%20Juscelino%20Sebasti%c3%a3o%20Avelino%20J%c3%banior.pdf.txt https://repositorio.ufpe.br/bitstream/123456789/45634/5/DISSERTA%c3%87%c3%83O%20Juscelino%20Sebasti%c3%a3o%20Avelino%20J%c3%banior.pdf.jpg |
bitstream.checksum.fl_str_mv |
e39d27027a6cc9cb039ad269a5db8e34 c043326d5d31a049f24ac6b53e60e989 6928b9260b07fb2755249a5ca9903395 01b4b92153cbaa3c423db953cb646394 3dcf0ed7f1042752158a99e3175891ce |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE) |
repository.mail.fl_str_mv |
attena@ufpe.br |
_version_ |
1802310903452925952 |