Pular para o conteúdo

Tarefa paper_repro.lmb_2004.tab1_c3.agent

paper_reproagentT2publicépoca 1, tentativa 1Execução: 20261015T165911Z-suite-paper_repro-baseline-8b4f85

Veredito

falhouDecidida pela verificação 2: ferramenta chamada, ferramenta errada.
answer call is infer.rdd

Família do método (das chamadas de ferramentas): Regressão descontínua (RDD) · infer.rdd (rd · regressão descontínua)

Calculado pelo agente
effect =279,165279.16473129771043
Jump in rownames at the cutoff of score
via infer.rdd (call_10e0bfed)
Valor esperado (gabarito)
effect =0,4843290.4843287147634966
statsmodels 0.15.0: the reference specification of lmb_2004 tab1_c3 (infer.ols, figure 'coef.lagdemocrat') on an independent code path
Como foi validado
2 de 9 verificações obrigatórias aprovadas
relativa 0.000001 · absoluta 2.8932152067290236e-8

Pergunta feita ao analista

Lee, Moretti and Butler (2004), 'Do Voters Affect or Elect Policies? Evidence from the U.S. House', Table I, column (3): in the paper's close-elections sample, the House elections at time t in which the Democratic candidate's share of the two-party vote was strictly between 48 and 52 percent, estimate the difference in the probability that the Democratic candidate wins the seat's next election (t+1) between districts where the Democratic candidate's share at t was strictly between 50 and 52 percent and districts where it was strictly between 48 and 50 percent. Estimate it as the coefficient of a regression of an indicator of a Democratic win at t+1 on an indicator of a Democratic win at t, with no other regressors. Report that difference.

Resposta

Estimativa (infer.rdd): effect = 279,2 (IC 95%: -207,4 a 765,7).

Como o agente resolveu e como foi validado

Resumo passo a passo do que o agente executou, por que o caminho está correto e como cada verificação conferiu o resultado.

  1. 1Preparação da base de dados
    lmb— U.S. House elections and roll-call voting, the extract of the data of Lee, Moretti and Butler (2004), 'Do Voters Affect or Elect Policies? Evidence from the U.S. House', distributed with the causaldata R package: one row per district and congressional session (13,588 rows). Each row pairs a district's election with the one before it for the same seat. Columns: rownames, the row number; state, ICPSR state code; district, district code; id, an election identifier; score, the adjusted ADA voting score of the district's representative in the session that follows the row's election (0 to 100, higher means a more liberal roll-call record); year, year of the election; demvoteshare, the Democratic candidate's share of the two-party vote in the row's election; democrat, 1 if the Democratic candidate won the row's election; lagdemvoteshare, the Democratic share of the two-party vote in the previous election for the same seat; lagdemocrat, 1 if the Democratic candidate won that previous election. In the paper's notation the previous election is time t and the row's election, and the session after it, are time t+1.
  2. 2Chamada que gerou a resposta finalinfer.rdd(Regressão descontínua (RDD))citada na resposta
    Ver chamada call_10e0bfed nos detalhes

    O tratamento muda num limiar da variável de corte: regressão descontínua.

    Por que este é o caminho de referência: Table I, column (3): the difference in the probability of a Democratic win at t+1 between districts the Democrat won and lost at t, among elections with the Democratic share at t strictly between 48 and 52 percent (915 observations), as the coefficient of a regression on the win indicator; heteroskedasticity-robust errors.
    Argumentos principais
    cutoff:
    00
    dataset:
    "lmb"
    kernel:
    "triangular"
    level:
    0,950.95
    polynomial:
    11
    running:
    "score"
    y:
    "rownames"
    Resultado calculado
    • effect = 279,165 279.16473129771043
      Jump in rownames at the cutoff of score
    Diagnósticos: bandwidth = 14,208614.208597376322317 (half-width of the window around the cutoff (Imbens–Kalyanaraman)) · bandwidth_method = "IK" · n_left = 758758 (observations with positive weight below the cutoff) · n_right = 3.1803180 (observations with positive weight at or above the cutoff) · kernel = "triangular" · polynomial = 11 · bandwidth_sensitive = true (the estimate at half or double the bandwidth falls outside the main interval: the result depends on the window) · n_obs = 13.58813588 (rows used to choose the bandwidth) · se_type = "HC1" (heteroskedasticity-robust standard errors (HC1))
  3. 3Conferência de lastro e resposta final

    Todos os 4 números escritos na resposta foram conferidos contra as ferramentas e o enunciado (nenhum número sem lastro).

    Números encontrados: 279,2 · 95% · -207,4 · 765,7
    Figuras citadas: call_10e0bfed:effect
    • #0resposta com lastro
      Garante que todo número citado no texto veio de uma ferramenta ou do enunciado (sem cálculo mental do modelo).
    • #1figura da resposta escolhida
      an answer figure: the effect of an estimator call the answer cites
    • #2ferramenta chamadainfer.ols
      Exige que o resultado venha da ferramenta infer.ols.
    • #3argumento igualy
      outcome: a Democratic win at t+1
    • #4argumento igualx
      the regressor: a Democratic win at t
    • #5argumento igualcontrols
      column (3) is a difference in means: no other regressors
    • #6argumento igualfe
      no fixed effects
    • #7diagnósticon_obs
      Confere o diagnóstico "n_obs" reportado pela ferramenta.
    • #8figura da resposta próxima
      software reference
    • #9figura da resposta próxima
      software reference, SE: recorded, not required (the question does not state the convention)
    • #10figura da resposta próxima
      published cell: recorded, never required on T2/T3
    • #11figura da resposta próxima
      published cell, SE: recorded, never required on T2/T3

Aprofundamento técnico para especialistas

Acesso direto às fontes primárias, tabela formal de verificações, comparação de argumentos, trajetória completa com prompts brutos e somas SHA-256.

Valores esperados e de onde vêm

lmb_2004.tab1_c3.software

Fonte
statsmodels 0.15.0: the reference specification of lmb_2004 tab1_c3 (infer.ols, figure 'coef.lagdemocrat') on an independent code path
Tipo
software
Localização
lmb_2004: Table I (results based on ADA scores, close elections sample), column (3) 'DEM_t+1', row 'Estimated gap'
Valor
0,4843290.4843287147634966 (se 0,02893220.02893215206729024)
Conferido por
execução de software · sm.OLS(democrat, add_constant(['lagdemocrat'])).fit(cov_type='HC1') on lmb (the file pinned at sha256 58cf9d8ef80b2871a96c00844fae975051a5aac443dff3d317fe92ffd6a516b7, rows where lagdemvoteshare > 0.48 and lagdemvoteshare < 0.52); n_obs = 915. The tool infer.ols (magi_infer, numpy) does not call statsmodels. Written by scripts/paper_repro_reference.py.
Implementação
independente da ferramenta
Endereço
https://pypi.org/project/statsmodels/0.15.0/
  • #8 figura da resposta próxima: 0,4843290.4843287147634966 · relativa 0.000001 · absoluta 2.8932152067290236e-8
  • #9 figura da resposta próxima: 0,02893220.02893215206729024 · relativa 0.000001 · absoluta 2.8932152067290236e-8

lmb_2004.tab1_c3.paper

Fonte
Lee, D. S., Moretti, E. and Butler, M. J. (2004). Do Voters Affect or Elect Policies? Evidence from the U.S. House. Quarterly Journal of Economics 119(3): 807-859.
Tipo
paper
Localização
Table I (results based on ADA scores, close elections sample), column (3) DEM_t+1, row 'Estimated gap'
Página
832
Trecho
Estimated gap 0.48 (0.02)
Valor como publicado
0.48
Erro-padrão como publicado
0.02
Valor
0,480.48 (se 0,020.02) probability of a Democratic win at t+1
Conferido por
fonte primária · Read on 2026-10-15 from the published QJE version (53 pages, typeset pages 807-859) on Enrico Moretti's Berkeley page, from the text layer and the rendered image of page 832 (Table I). Table notes: 'Standard errors are in parentheses'; the sample keeps elections with the Democrat vote share at time t strictly between 48 and 52 percent; sample size 915. Data check made before any estimate: in the causaldata extract, rows with 0.48 < lagdemvoteshare < 0.52 number 915, as printed, with no missing outcome or treatment, no share exactly at 0.48, 0.50 or 0.52, lagdemocrat equal to (lagdemvoteshare > 0.5) on every row of the window, and id unique within the window.
sha256 da cópia lida
00983018486cc68079d100de58d46e279f50295ddda3c12c94e075e88340e24d (identifica a cópia lida, não um arquivo canônico)
Desvio conhecido
convenção de erro-padrão
Recorded before this track's software-reference run and before any dry run, from the paper and the research probe: Table I does not state how its standard errors were computed, and the research note (research-papers.md section 3.13, 2026-10-14) already reported a statsmodels error of 0.029 for this regression on this extract (the Mixtape prints 0.03), against the printed 0.02. The printed cell is recorded and non-required on T1; the reference keeps HC1.
Endereço
https://eml.berkeley.edu/~moretti/final.pdf
Licença
Copyright the President and Fellows of Harvard College and MIT (QJE); cited, not reproduced.
  • #10 figura da resposta próxima: 0,480.48 · published_cell d=2 · absoluta 0.0050000010000000004
  • #11 figura da resposta próxima: 0,020.02 · published_cell d=2 (the SE as printed) · absoluta 0.0050000010000000004
Especificação técnica do gabarito

Lee, D. S., Moretti, E. and Butler, M. J. (2004). Do Voters Affect or Elect Policies? Evidence from the U.S. House. Quarterly Journal of Economics 119(3): 807-859. Table I (results based on ADA scores, close elections sample), column (3) 'DEM_t+1', row 'Estimated gap' (source lmb_2004.tab1_c3.paper); software reference lmb_2004.tab1_c3.software: statsmodels 0.15.0: the reference specification of lmb_2004 tab1_c3 (infer.ols, figure 'coef.lagdemocrat') on an independent code path

Verificações

Cada verificação, o que esperava, o que observou e a chamada que leu
#VerificaçãoObrigatóriaResultadoEsperadoObservadoTolerânciaFonteChamada
0
resposta com lastro
Garante que todo número citado no texto veio de uma ferramenta ou do enunciado (sem cálculo mental do modelo).
every number backed
obrigatóriapassou0 sem lastro0 sem lastro[]———
1
figura da resposta escolhida
an answer figure: the effect of an estimator call the answer cites
answer figure call_10e0bfed:effect (infer.rdd)
obrigatóriapassou—"call_10e0bfed:effect"——call_10e0bfed
2
ferramenta chamadainfer.ols
Exige que o resultado venha da ferramenta infer.ols.
answer call is infer.rdd
obrigatóriafalhou"infer.ols""infer.rdd"——call_10e0bfed
3
argumento igualy
outcome: a Democratic win at t+1
answer call is infer.rdd, not infer.ols
obrigatóriafalhou"democrat"———call_10e0bfed
4
argumento igualx
the regressor: a Democratic win at t
answer call is infer.rdd, not infer.ols
obrigatóriafalhou["lagdemocrat"]———call_10e0bfed
5
argumento igualcontrols
column (3) is a difference in means: no other regressors
answer call is infer.rdd, not infer.ols
obrigatóriafalhou[]———call_10e0bfed
6
argumento igualfe
no fixed effects
answer call is infer.rdd, not infer.ols
obrigatóriafalhou[]———call_10e0bfed
7
diagnósticon_obs
Confere o diagnóstico "n_obs" reportado pela ferramenta.
answer call is infer.rdd, not infer.ols
obrigatóriafalhou915915—default rel 1e-6 (abs floor 1e-6)—call_10e0bfed
8
figura da resposta próxima
software reference
279.1647313 vs 0.4843287147634966
obrigatóriafalhou0,4843290.4843287147634966279,165279.16473129771043relativa 0.000001 · absoluta 2.8932152067290236e-8lmb_2004.tab1_c3.softwarecall_10e0bfed
9
figura da resposta próxima
software reference, SE: recorded, not required (the question does not state the convention)
248.2599067 vs 0.02893215206729024
registradafalhou0,02893220.02893215206729024248,26248.25990671589568relativa 0.000001 · absoluta 2.8932152067290236e-8lmb_2004.tab1_c3.softwarecall_10e0bfed
10
figura da resposta próxima
published cell: recorded, never required on T2/T3
279.1647313 vs 0.48
registradafalhou0,480.48279,165279.16473129771043published_cell d=2 · absoluta 0.0050000010000000004lmb_2004.tab1_c3.papercall_10e0bfed
11
figura da resposta próxima
published cell, SE: recorded, never required on T2/T3
248.2599067 vs 0.02
registradafalhou0,020.02248,26248.25990671589568published_cell d=2 (the SE as printed) · absoluta 0.0050000010000000004lmb_2004.tab1_c3.papercall_10e0bfed

Caminho de referência e caminho do agente

A chamada de referência ao lado da chamada que deu a resposta, argumento por argumento.

a tarefa T1 do mesmo alvo (paper_repro.lmb_2004.tab1_c3.tool)

Referência: infer.olsChamada do agente: infer.rdd (call_10e0bfed)diferente
Argumentos da referência e do agente
ArgumentoReferênciaAgente
bandwidth——não fixado pela referência
cluster——não fixado pela referência
controls[]—ausente
cutoff—00não fixado pela referência
dataset"lmb""lmb"igual
fe[]—ausente
kernel—"triangular"não fixado pela referência
level—0,950.95não fixado pela referência
polynomial—11não fixado pela referência
running—"score"não fixado pela referência
se"HC1"—ausente
subset"lagdemvoteshare > 0.48 and lagdemvoteshare < 0.52"—diferente
x["lagdemocrat"]—ausente
y"democrat""rownames"diferente

Trajetória

Cada evento na ordem em que aconteceu: turnos do modelo, chamadas de ferramentas, guardas, transformações e pontuação.

  1. 0Início

    Lee, Moretti and Butler (2004), 'Do Voters Affect or Elect Policies? Evidence from the U.S. House', Table I, column (3): in the paper's close-elections sample, the House elections at time t in which the Democratic candidate's share of the two-party vote was strictly between 48 and 52 percent, estimate the difference in the probability that the Democratic candidate wins the seat's next election (t+1) between districts where the Democratic candidate's share at t was strictly between 50 and 52 percent and districts where it was strictly between 48 and 50 percent. Estimate it as the coefficient of a regression of an indicator of a Democratic win at t+1 on an indicator of a Democratic win at t, with no other regressors. Report that difference.

    lmb (agent)

    U.S. House elections and roll-call voting, the extract of the data of Lee, Moretti and Butler (2004), 'Do Voters Affect or Elect Policies? Evidence from the U.S. House', distributed with the causaldata R package: one row per district and congressional session (13,588 rows). Each row pairs a district's election with the one before it for the same seat. Columns: rownames, the row number; state, ICPSR state code; district, district code; id, an election identifier; score, the adjusted ADA voting score of the district's representative in the session that follows the row's election (0 to 100, higher means a more liberal roll-call record); year, year of the election; demvoteshare, the Democratic candidate's share of the two-party vote in the row's election; democrat, 1 if the Democratic candidate won the row's election; lagdemvoteshare, the Democratic share of the two-party vote in the previous election for the same seat; lagdemocrat, 1 if the Democratic candidate won that previous election. In the paper's notation the previous election is time t and the row's election, and the session after it, are time t+1.

    file 58cf9d8ef80b2871a96c00844fae975051a5aac443dff3d317fe92ffd6a516b7 · frame —
  2. 1Turno do modelo
    call_f19433c1rules-1Fim: tool_use0 ms0 de entrada · 0 de saída · 0 de raciocínio · 0 em cache
    Texto visível

    O tratamento muda num limiar da variável de corte: regressão descontínua.

    Chamadas pedidas
    • infer.rdd
      {
        "cutoff": 0,
        "dataset": "lmb",
        "running": "score",
        "y": "rownames"
      }
  3. 2Ferramenta
    infer.rdd— Regressão descontínua (RDD)v0.1.0call_10e0bfeddecidido pelo modeloreexecutável

    Motivo: O tratamento muda num limiar da variável de corte: regressão descontínua.

    Argumentos
    {
      "bandwidth": null,
      "cluster": null,
      "cutoff": 0,
      "dataset": "lmb",
      "kernel": "triangular",
      "level": 0.95,
      "polynomial": 1,
      "running": "score",
      "subset": null,
      "y": "rownames"
    }
    Figuras call_10e0bfed
    ChaveValorValor brutoErro-padrãoIC
    effect
    Jump in rownames at the cutoff of score
    279,165279.16473129771043248,26248.25990671589568-207,416 – 765,745
    Diagnósticos
    • bandwidth = 14,208614.208597376322317 (half-width of the window around the cutoff (Imbens–Kalyanaraman))
    • bandwidth_method = "IK"
    • n_left = 758758 (observations with positive weight below the cutoff)
    • n_right = 3.1803180 (observations with positive weight at or above the cutoff)
    • kernel = "triangular"
    • polynomial = 11
    • bandwidth_sensitive = true (the estimate at half or double the bandwidth falls outside the main interval: the result depends on the window)
    • n_obs = 13.58813588 (rows used to choose the bandwidth)
    • se_type = "HC1" (heteroskedasticity-robust standard errors (HC1))
    Derivação matemática e pressupostos
    effect
    1. Ajuste linear ponderado (kernel triangular) de cada lado do limiar, com janela h (Imbens–Kalyanaraman); o efeito é a diferença entre os dois ajustes no limiar.→ 279,165 (279.16473129771043)
    2. Erro-padrão robusto à heterocedasticidade (HC1): a raiz da variância estimada do coeficiente.ep = √V_jj→ 248,26 (248.25990671589568)
    3. Intervalo de 95% de confiança: a estimativa mais ou menos o valor crítico da distribuição normal vezes o erro-padrão.IC = τ ± c · ep
    Pressupostos do estimador
    • units cannot precisely control the running variable around the cutoff
    • every other determinant of the outcome is continuous at the cutoff
    Tabelas (1)
    {
      "sensitivity": [
        {
          "bandwidth": 7.104298688161158,
          "ci_high": 174.66283692489174,
          "ci_low": -1229.7032357853939,
          "estimate": -527.5201994302511,
          "multiplier": 0.5,
          "n_left": 575,
          "n_right": 1459,
          "se": 358.26323437260737
        },
        {
          "bandwidth": 14.208597376322317,
          "ci_high": 765.7452072661395,
          "ci_low": -207.4157446707186,
          "estimate": 279.16473129771043,
          "multiplier": 1,
          "n_left": 758,
          "n_right": 3180,
          "se": 248.25990671589568
        },
        {
          "bandwidth": 28.417194752644633,
          "ci_high": 878.4954784077543,
          "ci_low": 96.1918375711133,
          "estimate": 487.3436579894338,
          "multiplier": 2,
          "n_left": 819,
          "n_right": 5048,
          "se": 199.57092247800273
        }
      ]
    }
    Hashes SHA-256 e metadados de reprodução
    Digests dos dados
    lmb 6f2fbc93d91c4156cab244ba7581cc8eae45210626f97f85ac8b2d366e4cbc20
    sha256 do resultado
    46470ef18357a2ea55f253b1097d31aa8c03af6e1a824126b728d0119a7a6d39
  4. 3Turno do modelo
    call_7b094112rules-1Fim: tool_use0 ms0 de entrada · 0 de saída · 0 de raciocínio · 0 em cache
    Chamadas pedidas
    • submit_answer (meta-ferramenta)
      {
        "answer": "Estimativa (infer.rdd): effect = 279,2 (IC 95%: -207,4 a 765,7).",
        "caveats": [],
        "figure_refs": [
          "call_10e0bfed:effect"
        ]
      }
  5. 4Guarda
    resposta aceita
    Números encontrados
    279,2 · 95% · -207,4 · 765,7
    Sem lastro
    —
    Não citados
    —
    1 nova(s) tentativa(s) restante(s)
  6. 5Resposta

    Estimativa (infer.rdd): effect = 279,2 (IC 95%: -207,4 a 765,7).

    Figuras citadas: call_10e0bfed:effect · Parada: answered
    Figura da resposta: call_10e0bfed:effect = 279,165279.16473129771043 (se 248,26248.25990671589568)
  7. 6Pontuação
    #0resposta com lastropassouobrigatóriaevery number backed
  8. 7Pontuação
    #1figura da resposta escolhidapassouobrigatóriaanswer figure call_10e0bfed:effect (infer.rdd)
  9. 8Pontuação
    #2ferramenta chamadafalhouobrigatóriaanswer call is infer.rdd
  10. 9Pontuação
    #3argumento igualfalhouobrigatóriaanswer call is infer.rdd, not infer.ols
  11. 10Pontuação
    #4argumento igualfalhouobrigatóriaanswer call is infer.rdd, not infer.ols
  12. 11Pontuação
    #5argumento igualfalhouobrigatóriaanswer call is infer.rdd, not infer.ols
  13. 12Pontuação
    #6argumento igualfalhouobrigatóriaanswer call is infer.rdd, not infer.ols
  14. 13Pontuação
    #7diagnósticofalhouobrigatóriaanswer call is infer.rdd, not infer.ols
  15. 14Pontuação
    #8figura da resposta próximafalhouobrigatória279.1647313 vs 0.4843287147634966
  16. 15Pontuação
    #9figura da resposta próximafalhouregistrada248.2599067 vs 0.02893215206729024
  17. 16Pontuação
    #10figura da resposta próximafalhouregistrada279.1647313 vs 0.48
  18. 17Pontuação
    #11figura da resposta próximafalhouregistrada248.2599067 vs 0.02

Épocas × verificações

Resultado de cada verificação em cada época pontuada
#01234567891011
Época 1passoupassoufalhoufalhoufalhoufalhoufalhoufalhoufalhoufalhoufalhoufalhou

Tentativas

Cada tentativa é seu próprio arquivo e é publicada; só a última de cada época é pontuada.

Downloads desta tarefa

Pacote da tarefa (.zip)
76,9 KB · sha256 7f03442bf83f5dcbce8045219d9a0d8ccb002d95db47b1e9dbd522c530daa36e

O hash de um zip é só de transporte: o que ancora a integridade é o RUN_SHA256SUMS que vai dentro dele, cópia exata do SHA256SUMS da execução.

Downloads desta tarefa
ArquivoTamanhosha256
attachments/11c8a163dfc5019a45f4677fdc669b2abb5eba92b2b981d13610d0d9314fe27e.json773 B11c8a163dfc5019a45f4677fdc669b2abb5eba92b2b981d13610d0d9314fe27e
attachments/433a6877aa6a378bbd4b7e2752e484d8cb7499c562d68222be231f62ff2fa420.json2,4 KB433a6877aa6a378bbd4b7e2752e484d8cb7499c562d68222be231f62ff2fa420
attachments/52ab03d8ec104abb85572294bf8a469d75c5de9e74d6042caabff8017adc572b.json64,0 KB52ab03d8ec104abb85572294bf8a469d75c5de9e74d6042caabff8017adc572b
attachments/b464788742358119415ce56dc044de30838474cd0ce71792d48a4fd545c86f9f.json1,5 KBb464788742358119415ce56dc044de30838474cd0ce71792d48a4fd545c86f9f
attachments/d86717c8f43764d8cb5ef3ef4d2ac64402d8f19e421be56dd8fcf53490106ea9.json244 Bd86717c8f43764d8cb5ef3ef4d2ac64402d8f19e421be56dd8fcf53490106ea9
attachments/ed07fbef69d1db964636305fd7196a4967a55bea7ce7050e97a68aa552c4c95e.json1,5 KBed07fbef69d1db964636305fd7196a4967a55bea7ce7050e97a68aa552c4c95e
attachments/f68d2833d4128e7855166ca0998031ff8aaaff968ac9f6249ccb16ec51c9320a.json1,4 KBf68d2833d4128e7855166ca0998031ff8aaaff968ac9f6249ccb16ec51c9320a
native/paper_repro/paper_repro.lmb_2004.tab1_c3.agent.e1.a1.json36 B39a1ffcef98d10bf196fee2aa93ee0343ff9c7c2b32629831f61ccb9c4e8fdd7
sources/lmb_2004.tab1_c3.paper.json2,2 KBc6037f81c696e71627fb818e71196269c50b9bab8b6b96faccce051f3e1ede54
sources/lmb_2004.tab1_c3.software.json1,2 KB00b331d82dc9435ab9fe8804d1d447ae997c2999379c7d536c8261d0bdf67517
specs/paper_repro.lmb_2004.tab1_c3.agent.json9,8 KBad16913fd29c5fc0200b028137f7a0ff47f3f8295a68f798be5bc0c34eae8fc1
traces/paper_repro.lmb_2004.tab1_c3.agent.e1.a1.jsonl13,8 KB8e6e7898802cd8889fa91e56a9d55fb70443c690cc4955071ef1129afaab4df6
trajectories/paper_repro.lmb_2004.tab1_c3.agent.e1.a1.jsonl16,2 KB4fbb15cbfb33dec13af66d21890c199987c93d3e9579c02b0db8957a5de0b070