Fuente: [https://docs.google.com/spreadsheets/d/1KxCgIUcBpiW3b8Pn-W3HqjEICs7e-jvNpF8y4vHSxxs/edit?usp=sharing]

Ver abajo la ED50 = 8.25 mg/kg

No se pudo encontrar diferencia entre la proporción de individuos mostrando retracción del ala de las cuatro distintas dósis. La dósis de 11mg/kg es la que mostró más individuos con mayor tiempo (hasta 20 min). Les hice un análisis binomial (regresión logística), tomando el umbral de 10 minutos, para ver si al menos la dósis 11mg/kg mostró diferencia con la dósis de 8mg/kg en cuanto a la proporción de individuos que lograron pasar los 10 minutos. Esta última es una forma más robusta de anaizarlo

Tienen un problema básico de diseño, ya que no tienen un grupo control (Sin Lidocaina). Al no tener un grupo sin Lidocaina, no pueden concluir si al menos la dósis máxima de Lidocaina tuvo algún efecto diferente. Existió un problema similar con el proyecto en ratas. El grupo control siempre es importante porque de otra forma no hay manera de saber si hay algun efecto de alguna dósis de lo que se está probando. No adjutaron los demás datos de las variables que en el protocolo dicen que analizarian (FC,FR, etc)

Reading Data

Plots


Call:
glm(formula = time.sens.min ~ dose, family = quasipoisson, data = lidoca)

Coefficients:
                Estimate Std. Error t value Pr(>|t|)    
(Intercept)    2.140e+00  1.782e-01  12.011 3.75e-14 ***
doseb.9mg.kg  -2.033e-10  2.520e-01   0.000   1.0000    
dosec.10mg.kg  1.112e-01  2.453e-01   0.454   0.6529    
dosed.11mg.kg  4.626e-01  2.275e-01   2.034   0.0494 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for quasipoisson family taken to be 2.698557)

    Null deviance: 114.573  on 39  degrees of freedom
Residual deviance:  98.546  on 36  degrees of freedom
AIC: NA

Number of Fisher Scoring iterations: 4

Passed 10 min


Call:
glm(formula = Y ~ dose, family = binomial, data = lidoca2)

Coefficients:
              Estimate Std. Error z value Pr(>|z|)  
(Intercept)    -2.1972     1.0541  -2.084   0.0371 *
doseb.9mg.kg    0.8109     1.3176   0.615   0.5383  
dosec.10mg.kg   1.3499     1.2599   1.071   0.2840  
dosed.11mg.kg   2.6027     1.2360   2.106   0.0352 *
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 6.6819e+00  on 3  degrees of freedom
Residual deviance: 6.6613e-16  on 0  degrees of freedom
AIC: 17.7

Number of Fisher Scoring iterations: 4

Pr. wing retraction

Proportion of wing retraction among groups

Regresión logística


Call:
glm(formula = wing ~ dose, family = binomial, data = wing2)

Coefficients:
                Estimate Std. Error z value Pr(>|z|)
(Intercept)   -4.701e-16  6.325e-01   0.000    1.000
doseb.9mg.kg   2.441e-16  8.944e-01   0.000    1.000
dosec.10mg.kg  4.055e-01  9.037e-01   0.449    0.654
dosed.11mg.kg  4.055e-01  9.037e-01   0.449    0.654

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 55.051  on 39  degrees of freedom
Residual deviance: 54.646  on 36  degrees of freedom
AIC: 62.646

Number of Fisher Scoring iterations: 4

ED50 (DE50)

(Intercept) 
       8.25 

No se pudo encontrar diferencia entre la proporción de individuos mostrando retracción del ala de las cuatro distintas dósis. La dósis de 11mg/kg es la que mostró más individuos con mayor tiempo (hasta 20 min). Les hice un análisis binomial (regresión logística), tomando el umbral de 10 minutos, para ver si al menos la dósis 11mg/kg mostró diferencia con la dósis de 8mg/kg en cuanto a la proporción de individuos que lograron pasar los 10 minutos. Esta última es una forma más robusta de anaizarlo

Tienen un problema básico de diseño, ya que no tienen un grupo control (Sin Lidocaina). Al no tener un grupo sin Lidocaina, no pueden concluir si al menos la dósis máxima de Lidocaina tuvo algún efecto diferente. Existió un problema similar con el proyecto en ratas. El grupo control siempre es importante porque de otra forma no hay manera de saber si hay algun efecto de alguna dósis de lo que se está probando.

LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6DQogIGh0bWxfbm90ZWJvb2s6DQogICAgdG9jOiB0cnVlDQogICAgdG9jX2RlcHRoOiA0DQogICAgdG9jX2Zsb2F0OiB0cnVlDQotLS0NCg0KIyMjIyMgRnVlbnRlOiBbaHR0cHM6Ly9kb2NzLmdvb2dsZS5jb20vc3ByZWFkc2hlZXRzL2QvMUt4Q2dJVWNCcGlXM2I4UG4tVzNIcWpFSUNzN2UtanZOcEY4eTR2SFN4eHMvZWRpdD91c3A9c2hhcmluZ10NCg0KXypWZXIgYWJham8gbGEgRUQ1MCA9IDguMjUgbWcva2cgKl8NCg0KKipObyBzZSBwdWRvIGVuY29udHJhciBkaWZlcmVuY2lhIGVudHJlIGxhIHByb3BvcmNpw7NuIGRlIGluZGl2aWR1b3MgbW9zdHJhbmRvIHJldHJhY2Npw7NuIGRlbCBhbGEgZGUgIGxhcyBjdWF0cm8gZGlzdGludGFzIGTDs3Npcy4gTGEgZMOzc2lzIGRlIDExbWcva2cgZXMgbGEgcXVlIG1vc3Ryw7MgbcOhcyBpbmRpdmlkdW9zIGNvbiBtYXlvciB0aWVtcG8gKGhhc3RhIDIwIG1pbikuIExlcyBoaWNlIHVuIGFuw6FsaXNpcyBiaW5vbWlhbCAocmVncmVzacOzbiBsb2fDrXN0aWNhKSwgdG9tYW5kbyBlbCB1bWJyYWwgZGUgMTAgbWludXRvcywgcGFyYSB2ZXIgc2kgYWwgbWVub3MgbGEgZMOzc2lzIDExbWcva2cgbW9zdHLDsyBkaWZlcmVuY2lhIGNvbiBsYSBkw7NzaXMgZGUgOG1nL2tnIGVuIGN1YW50byBhIGxhIHByb3BvcmNpw7NuIGRlIGluZGl2aWR1b3MgcXVlIGxvZ3Jhcm9uIHBhc2FyIGxvcyAxMCBtaW51dG9zLiBFc3RhIMO6bHRpbWEgZXMgdW5hIGZvcm1hIG3DoXMgcm9idXN0YSBkZSBhbmFpemFybG8qKiANCg0KKipUaWVuZW4gdW4gcHJvYmxlbWEgYsOhc2ljbyBkZSBkaXNlw7FvLCB5YSBxdWUgbm8gdGllbmVuIHVuIGdydXBvIGNvbnRyb2wgKFNpbiBMaWRvY2FpbmEpLiBBbCBubyB0ZW5lciB1biBncnVwbyBzaW4gTGlkb2NhaW5hLCBubyBwdWVkZW4gY29uY2x1aXIgc2kgYWwgbWVub3MgbGEgZMOzc2lzIG3DoXhpbWEgZGUgTGlkb2NhaW5hICB0dXZvIGFsZ8O6biBlZmVjdG8gZGlmZXJlbnRlLiBFeGlzdGnDsyB1biBwcm9ibGVtYSBzaW1pbGFyIGNvbiBlbCBwcm95ZWN0byBlbiByYXRhcy4gRWwgZ3J1cG8gY29udHJvbCBzaWVtcHJlIGVzIGltcG9ydGFudGUgcG9ycXVlIGRlIG90cmEgZm9ybWEgbm8gaGF5IG1hbmVyYSBkZSBzYWJlciBzaSBoYXkgYWxndW4gZWZlY3RvIGRlIGFsZ3VuYSBkw7NzaXMgZGUgbG8gcXVlIHNlIGVzdMOhIHByb2JhbmRvLiBObyBhZGp1dGFyb24gbG9zIGRlbcOhcyBkYXRvcyBkZSBsYXMgdmFyaWFibGVzIHF1ZSBlbiBlbCBwcm90b2NvbG8gZGljZW4gcXVlIGFuYWxpemFyaWFuIChGQyxGUiwgZXRjKSoqDQoNCg0KDQpgYGB7ciBzZXR1cCwgaW5jbHVkZT1GQUxTRX0NCmxpYnJhcnkoZmxleGRhc2hib2FyZCkNCmtuaXRyOjpvcHRzX2NodW5rJHNldCgNCiAgZWNobyA9IEZBTFNFLA0KCW1lc3NhZ2UgPSBGQUxTRSwNCiAgd2FybmluZyA9IEZBTFNFLA0KCWluY2x1ZGUgPSBUUlVFDQopDQpgYGAgIA0KDQpgYGB7ciBwYWNrYWdlcywgbWVzc2FnZT1GQUxTRSwgaW5jbHVkZT1GQUxTRX0NCmlmKCFyZXF1aXJlKHRpZHl2ZXJzZSkpe2luc3RhbGwucGFja2FnZXMoInRpZHl2ZXJzZSIscmVwb3MgPSAiaHR0cDovL2NyYW4udXMuci1wcm9qZWN0Lm9yZyIpfQ0KaWYoIXJlcXVpcmUoZ29vZ2xlc2hlZXRzNCkpe2luc3RhbGwucGFja2FnZXMoImdvb2dsZXNoZWV0czQiKX0NCmlmKCFyZXF1aXJlKGdvb2dsZWRyaXZlKSl7aW5zdGFsbC5wYWNrYWdlcygiZ29vZ2xlZHJpdmUiKX0NCmlmKCFyZXF1aXJlKGRwbHlyKSl7aW5zdGFsbC5wYWNrYWdlcygiZHBseXIiKX0NCmlmKCFyZXF1aXJlKGh0dHIyKSl7aW5zdGFsbC5wYWNrYWdlcygiaHR0cjIiKX0NCg0KaWYoIXJlcXVpcmUoRFQpKXtpbnN0YWxsLnBhY2thZ2VzKCJEVCIpfQ0KaWYoIXJlcXVpcmUocGxvdGx5KSl7aW5zdGFsbC5wYWNrYWdlcygicGxvdGx5Iil9DQojIw0KbGlicmFyeShwbG90bHkpDQpsaWJyYXJ5KERUKQ0KbGlicmFyeSh0aWR5dmVyc2UpDQpsaWJyYXJ5KGRwbHlyKQ0KDQpsaWJyYXJ5KGdvb2dsZXNoZWV0czQpDQpsaWJyYXJ5KGdvb2dsZWRyaXZlKQ0KDQpgYGAgIA0KDQojIyMjIyBSZWFkaW5nIERhdGENCg0KYGBge3IgaW5jbHVkZT1GQUxTRX0NCg0Kb3B0aW9ucyhnYXJnbGVfb2F1dGhfZW1haWwgPSAidmlsbGF0b3JvcGF6ZmpAZGF0YWFuYWx5c2lzbGFiLmNvbSIpDQoNCnNzIDwtICJodHRwczovL2RvY3MuZ29vZ2xlLmNvbS9zcHJlYWRzaGVldHMvZC8xS3hDZ0lVY0JwaVczYjhQbi1XM0hxakVJQ3M3ZS1qdk5wRjh5NHZIU3h4cy9lZGl0P3VzcD1zaGFyaW5nIg0KaG9qYSA9IDENCnJhbmdvID0gIkEyOko0MiINCmxpZG9jYSA8LSByZWFkX3NoZWV0KHNzLA0KICAgICAgICAgICAgICAgIHNoZWV0PWhvamEsDQogICAgICAgICAgICAgICAgcmFuZ2U9IHJhbmdvLCANCiAgICAgICAgICAgICAgICAgICBjb2xfbmFtZXMgPSBUUlVFLA0KICAgICAgICAgICAgICAgIGNvbF90eXBlcyA9ICJjIikNCg0KbGlkb2NhJHRpbWUuc2Vucy5taW4gPC0gYXMubnVtZXJpYyhsaWRvY2EkdGltZS5zZW5zLm1pbikNCg0KbGlkb2NhIDwtICBsaWRvY2EgJT4lDQogIG11dGF0ZV9pZihpcy5jaGFyYWN0ZXIsIGFzLmZhY3RvcikNCiMjIw0KDQpvcHRpb25zKGdhcmdsZV9vYXV0aF9lbWFpbCA9ICJ2aWxsYXRvcm9wYXpmakBkYXRhYW5hbHlzaXNsYWIuY29tIikNCg0Kc3MgPC0gImh0dHBzOi8vZG9jcy5nb29nbGUuY29tL3NwcmVhZHNoZWV0cy9kLzFLeENnSVVjQnBpVzNiOFBuLVczSHFqRUlDczdlLWp2TnBGOHk0dkhTeHhzL2VkaXQ/dXNwPXNoYXJpbmciDQpob2phID0gMQ0KcmFuZ28gPSAiTDI6UDYiDQpsaWRvY2EyIDwtIHJlYWRfc2hlZXQoc3MsDQogICAgICAgICAgICAgICAgc2hlZXQ9aG9qYSwNCiAgICAgICAgICAgICAgICByYW5nZT0gcmFuZ28sIA0KICAgICAgICAgICAgICAgICAgIGNvbF9uYW1lcyA9IFRSVUUsDQogICAgICAgICAgICAgICAgY29sX3R5cGVzID0gImMiKQ0KDQpsaWRvY2EyWyxjKDQsNSldIDwtIGxpZG9jYTJbLGMoNCw1KV0gJT4lDQogIHNhcHBseShhcy5udW1lcmljKQ0KDQpsaWRvY2EyIDwtICBsaWRvY2EyICU+JQ0KICBtdXRhdGVfaWYoaXMuY2hhcmFjdGVyLCBhcy5mYWN0b3IpDQoNCg0KDQpgYGAgIA0KDQojIyMgUGxvdHMNCg0KYGBge3J9DQpwIDwtIGxpZG9jYSAlPiUNCiAgZ2dwbG90KGFlcyh4PWRvc2UsIHk9IHRpbWUuc2Vucy5taW4sIGNvbD0gZ3JvdXApKSArDQogIGdlb21fYm94cGxvdCgpICsNCiAgZ2VvbV9wb2ludChwb3NpdGlvbiA9IHBvc2l0aW9uX2ppdHRlcih3aWR0aCA9IDAuMywgaGVpZ2h0ID0gMC4xKSkgKw0KIyAgc3RhdF9zdW1tYXJ5KHBvc2l0aW9uID0gcG9zaXRpb25faml0dGVyZG9kZ2UoKSwNCiAjICAgICAgICAgICAgICBmdW4uZGF0YSA9ICJtZWFuX2NsX2Jvb3QiLCBmaWxsPSJibGFjayIsDQogICMgICAgICAgICAgICAgZ2VvbSA9ICJwb2ludHJhbmdlIiwgc2hhcGU9IDE4LA0KICAgIyAgICAgICAgICAgIHNpemU9Miwgc2hvdy5sZWdlbmQgPSBGQUxTRSkgKw0KICBzY2FsZV94X2Rpc2NyZXRlKG5hbWUgPSAiRG9zZSIsIA0KICAgICAgICAgICAgICAgICAgIGxpbWl0cyA9IGMoImEuOG1nLmtnIiwiYi45bWcua2ciLCJjLjEwbWcua2ciLCJkLjExbWcua2ciKSwNCiAgICAgICAgICAgICAgICAgICBsYWJlbHM9YygiOG1nLmtnIiwiOW1nLmtnIiwiMTBtZy5rZyIsIjExbWcua2ciKSkgDQoNCiAgDQpnZ3Bsb3RseShwKQ0KYGBgDQoNCg0KYGBge3J9DQpwIDwtIGxpZG9jYSAlPiUNCiAgZ2dwbG90KGFlcyh4PWRvc2UsIHk9IHRpbWUuc2Vucy5taW4sIGNvbD0gZG9zZSkpICsNCiAjIGdlb21fYm94cGxvdCgpICsNCiAgZ2VvbV9wb2ludChwb3NpdGlvbiA9IHBvc2l0aW9uX2ppdHRlcih3aWR0aCA9IDAuMiwgaGVpZ2h0ID0gMC4yKSkgKw0KICBzdGF0X3N1bW1hcnkoDQogICAgI3Bvc2l0aW9uID0gcG9zaXRpb25faml0dGVyZG9kZ2UoKSwNCiAgICAgICAgICAgICAgIGZ1bi5kYXRhID0gIm1lYW5fY2xfYm9vdCIsDQogICAgICAgICAgICAgICBnZW9tID0gImxpbmVyYW5nZSIsIHNoYXBlPSAxOCwNCiAgICAgICAgICAgICAgIHNpemU9Miwgc2hvdy5sZWdlbmQgPSBGQUxTRSkgKw0KICBzdGF0X3N1bW1hcnkoDQogICAgI3Bvc2l0aW9uID0gcG9zaXRpb25faml0dGVyZG9kZ2UoKSwNCiAgICAgICAgICAgICAgIGZ1biA9ICJtZWRpYW4iLCBmaWxsPSJibGFjayIsDQogICAgICAgICAgICAgICBnZW9tID0gInBvaW50Iiwgc2hhcGU9IDE4LA0KICAgICAgICAgICAgICAgc2l6ZT0zKSArDQogIHNjYWxlX3hfZGlzY3JldGUobmFtZSA9ICJEb3NlIiwgDQogICAgICAgICAgICAgICAgICAgbGltaXRzID0gYygiYS44bWcua2ciLCJiLjltZy5rZyIsImMuMTBtZy5rZyIsImQuMTFtZy5rZyIpLA0KICAgICAgICAgICAgICAgICAgIGxhYmVscz1jKCI4bWcua2ciLCI5bWcua2ciLCIxMG1nLmtnIiwiMTFtZy5rZyIpKSANCg0KICANCmdncGxvdGx5KHApDQpgYGAgIA0KDQoNCmBgYHtyfQ0KDQpnbG0gPC0gZ2xtKHRpbWUuc2Vucy5taW4gfiAgZG9zZSwgDQogICAgICAgICAgICAgICAgZmFtaWx5PSBxdWFzaXBvaXNzb24sIGRhdGE9IGxpZG9jYSkNCnN1bW1hcnkoZ2xtKQ0KYGBgDQoNCiMjIyBQYXNzZWQgMTAgbWluDQoNCmBgYHtyfQ0KQ0lzIDwtIGJpbm9tLmNvbmZpbnQoeD1saWRvY2EyJHBhc3NlZC50ZW4sDQogICAgICAgICAgICAgICAgICAgICBuPSBsaWRvY2EyJG4sDQogICAgICAgICAgICAgICAgICAgICBtZXRob2RzPSJ3aWxzb24iKQ0KDQpsaWRvY2EyJGxvd2VyIDwtIENJc1ssNV0NCmxpZG9jYTIkdXBwZXI8LSBDSXNbLDZdDQpsaWRvY2EyJHByLiA8LSBsaWRvY2EyJHBhc3NlZC50ZW4vbGlkb2NhMiRuIA0KI2xpZG9jYTINCg0Kc2l6ZT0zDQoNCnAgPC0gbGlkb2NhMiAlPiUgDQogIGdncGxvdChhZXMoeD1kb3NlICwgeT0gcHIuLCBjb2w9IGRvc2UsIHltaW4gPSBsb3dlciwgeW1heCA9IHVwcGVyKSkgKw0KICANCiAgZ2VvbV9obGluZSh5aW50ZXJjZXB0ID0gbWVhbihsaWRvY2EyJHByLiksDQogICAgICAgICAgICAgICBsaW5ldHlwZT0gImRhc2hlZCIsIGNvbD0iZGFyayBncmF5IikgKw0KICANCiAgZ2VvbV9wb2ludChwb3NpdGlvbj0gcG9zaXRpb25fZG9kZ2Uod2lkdGg9MC4yKSwgc2l6ZT1zaXplLCBhZXMoc2l6ZT0zKSApICsNCiAgDQogIGdlb21fbGluZXJhbmdlKHBvc2l0aW9uID0gcG9zaXRpb25fZG9kZ2Uod2lkdGg9MC4yKSkgKw0KICB5bGltKDAsMSkgKw0KICANCiAgc2NhbGVfeF9kaXNjcmV0ZSgNCiAgICAjYnJlYWtzPWMoIjhtZy5rZyIsIjltZy5rZyIsIjEwbWcua2ciLCIxMW1nLmtnIiksDQogICAgICAgICAgICAgICAgICAgbGltaXRzID0gYygiYS44bWcua2ciLCJiLjltZy5rZyIsImMuMTBtZy5rZyIsImQuMTFtZy5rZyIpICwNCiAgICAgICAgbGFiZWxzPWMoIjhtZy5rZyIsIjltZy5rZyIsIjEwbWcua2ciLCIxMW1nLmtnIiksDQogICAgICAgIG5hbWU9ICJMaWRvY2FpbmUgRG9zZSAiKSAgKw0KICBzY2FsZV95X2NvbnRpbnVvdXMobi5icmVha3MgPSA1LCBsYWJlbHM9YygiMCUiLCIyNSUiLCAiNTAlIiwgIjc1JSIsICIxMDAlIiksDQogICAgICAgICAgICAgICAgICAgICBicmVha3M9YygwLCAwLjI1LCAwLjUwLDAuNzUsIDEpLCBsaW1pdHMgPSBjKDAsMSksDQogICAgICAgICAgICAgICAgICAgICBuYW1lPSAiUHJvYmFiaWxpdHkgb2YgcGFzc2luZyAxMCBtaW4gKCUpIikgKw0KICB0aGVtZShheGlzLnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemU9MTEpLA0KICAgICAgICBheGlzLnRleHQgPSBlbGVtZW50X3RleHQoc2l6ZT0xMSkgKSArDQogIGxhYnMoY29sb3IgPSAiTGlkb2NhaW5lIERvc2UgIikNCnANCg0KDQojIyMjIyMjDQpsaWRvY2EyJHBhc3NlZC50ZW4ubm90IDwtIGxpZG9jYTIkbi1saWRvY2EyJHBhc3NlZC50ZW4NCg0KWSA8LSBjYmluZChsaWRvY2EyJHBhc3NlZC50ZW4sIGxpZG9jYTIkcGFzc2VkLnRlbi5ub3QpDQoNCmdsbSA8LSBnbG0oWSB+ICBkb3NlLCANCiAgICAgICAgICAgICAgICBmYW1pbHk9Ymlub21pYWwsIGRhdGE9IGxpZG9jYTIpDQpzdW1tYXJ5KGdsbSkNCg0KYGBgDQoNCg0KDQojIyMgUHIuIHdpbmcgcmV0cmFjdGlvbg0KDQpgYGB7cn0NCm9wdGlvbnMoZ2FyZ2xlX29hdXRoX2VtYWlsID0gInZpbGxhdG9yb3BhemZqQGRhdGFhbmFseXNpc2xhYi5jb20iKQ0KZ29vZ2xlc2hlZXRzNDo6Z3M0X2F1dGgoKQ0KDQpzcyA8LSAiaHR0cHM6Ly9kb2NzLmdvb2dsZS5jb20vc3ByZWFkc2hlZXRzL2QvMUt4Q2dJVWNCcGlXM2I4UG4tVzNIcWpFSUNzN2UtanZOcEY4eTR2SFN4eHMvZWRpdD91c3A9c2hhcmluZyINCmhvamEgPSAyDQpyYW5nbyA9ICJCMjpHNiINCndpbmcgPC0gcmVhZF9zaGVldChzcywNCiAgICAgICAgICAgICAgICBzaGVldD1ob2phLA0KICAgICAgICAgICAgICAgIHJhbmdlPSByYW5nbywgDQogICAgICAgICAgICAgICAgICAgY29sX25hbWVzID0gVFJVRSwNCiAgICAgICAgICAgICAgICBjb2xfdHlwZXMgPSAiYyIpDQoNCndpbmdbLCBjKDM6NildIDwtIHdpbmdbLCBjKDM6NildICU+JSANCiAgc2FwcGx5KGFzLm51bWVyaWMpDQoNCndpbmcgPC0gd2luZyAlPiUgDQogIG11dGF0ZV9pZihpcy5jaGFyYWN0ZXIsIGFzLmZhY3RvcikNCiMjIyMNCm9wdGlvbnMoZ2FyZ2xlX29hdXRoX2VtYWlsID0gInZpbGxhdG9yb3BhemZqQGRhdGFhbmFseXNpc2xhYi5jb20iKQ0KZ29vZ2xlc2hlZXRzNDo6Z3M0X2F1dGgoKQ0Kc3MgPC0gImh0dHBzOi8vZG9jcy5nb29nbGUuY29tL3NwcmVhZHNoZWV0cy9kLzFLeENnSVVjQnBpVzNiOFBuLVczSHFqRUlDczdlLWp2TnBGOHk0dkhTeHhzL2VkaXQ/dXNwPXNoYXJpbmciDQpob2phID0gMg0KcmFuZ28gPSAiSjI6SzQyIg0Kd2luZzIgPC0gcmVhZF9zaGVldChzcywNCiAgICAgICAgICAgICAgICBzaGVldD1ob2phLA0KICAgICAgICAgICAgICAgIHJhbmdlPSByYW5nbywgDQogICAgICAgICAgICAgICAgICAgY29sX25hbWVzID0gVFJVRSwNCiAgICAgICAgICAgICAgICBjb2xfdHlwZXMgPSAiYyIpDQoNCg0Kd2luZzJbLCAxXSA8LSB3aW5nMlssIDFdICU+JSANCiAgc2FwcGx5KGFzLm51bWVyaWMpDQoNCndpbmcyIDwtIHdpbmcyICU+JSANCiAgbXV0YXRlX2lmKGlzLmNoYXJhY3RlciwgYXMuZmFjdG9yKQ0KDQp3aW5nMiRkb3NlLmdyb3VwIDwtIGMoIHJlcCg4LDEwKSwgcmVwKDksMTApLCByZXAoMTAsMTApLHJlcCgxMSwxMCkgKQ0KDQpgYGANCg0KIyMjIFByb3BvcnRpb24gb2Ygd2luZyByZXRyYWN0aW9uIGFtb25nIGdyb3Vwcw0KDQoNCmBgYHtyIH0NCkNJcyA8LSBiaW5vbS5jb25maW50KHg9d2luZyR3aW5nLnJldHJhY3QsDQogICAgICAgICAgICAgICAgICAgICBuPSB3aW5nJG4sDQogICAgICAgICAgICAgICAgICAgICBtZXRob2RzPSJ3aWxzb24iKQ0KDQp3aW5nJGxvd2VyIDwtIENJc1ssNV0NCndpbmckdXBwZXI8LSBDSXNbLDZdDQp3aW5nDQoNCnNpemU9Mw0KDQpwIDwtIHdpbmcgJT4lIA0KICBnZ3Bsb3QoYWVzKHg9ZG9zZSAsIHk9IHByLiwgY29sPSBkb3NlLCB5bWluID0gbG93ZXIsIHltYXggPSB1cHBlcikpICsNCiAgDQogIGdlb21faGxpbmUoeWludGVyY2VwdCA9IG1lYW4od2luZyRwci4pLA0KICAgICAgICAgICAgICAgbGluZXR5cGU9ICJkYXNoZWQiLCBjb2w9ImRhcmsgZ3JheSIpICsNCiAgDQogIGdlb21fcG9pbnQocG9zaXRpb249IHBvc2l0aW9uX2RvZGdlKHdpZHRoPTAuMiksIHNpemU9c2l6ZSwgYWVzKHNpemU9MykgKSArDQogIA0KICBnZW9tX2xpbmVyYW5nZShwb3NpdGlvbiA9IHBvc2l0aW9uX2RvZGdlKHdpZHRoPTAuMikpICsNCiAgeWxpbSgwLDEpICsNCiAgDQogIHNjYWxlX3hfZGlzY3JldGUoDQogICAgI2JyZWFrcz1jKCI4bWcua2ciLCI5bWcua2ciLCIxMG1nLmtnIiwiMTFtZy5rZyIpLA0KICAgICAgICAgICAgICAgICAgIGxpbWl0cyA9IGMoImEuOG1nLmtnIiwiYi45bWcua2ciLCJjLjEwbWcua2ciLCJkLjExbWcua2ciKSAsDQogICAgICAgIGxhYmVscz1jKCI4bWcua2ciLCI5bWcua2ciLCIxMG1nLmtnIiwiMTFtZy5rZyIpLA0KICAgICAgICBuYW1lPSAiTGlkb2NhaW5lIERvc2UgIikgICsNCiAgc2NhbGVfeV9jb250aW51b3VzKG4uYnJlYWtzID0gNSwgbGFiZWxzPWMoIjAlIiwiMjUlIiwgIjUwJSIsICI3NSUiLCAiMTAwJSIpLA0KICAgICAgICAgICAgICAgICAgICAgYnJlYWtzPWMoMCwgMC4yNSwgMC41MCwwLjc1LCAxKSwgbGltaXRzID0gYygwLDEpLA0KICAgICAgICAgICAgICAgICAgICAgbmFtZT0gIldpbmcgcmV0cmFjdGlvbiByZWZsZXggKCUpIikgKw0KICB0aGVtZShheGlzLnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemU9MTEpLA0KICAgICAgICBheGlzLnRleHQgPSBlbGVtZW50X3RleHQoc2l6ZT0xMSkgKSArDQogIGxhYnMoY29sb3IgPSAiTGlkb2NhaW5lIERvc2UgIikNCnANCg0KYGBgICANCiMjIyBSZWdyZXNpw7NuIGxvZ8Otc3RpY2ENCg0KYGBge3J9DQpZIDwtIGNiaW5kKHdpbmckd2luZy5yZXRyYWN0LHdpbmckTm8ud2luZy5yZXRyYWN0KQ0KDQpnbG0gPC0gZ2xtKHdpbmcgfiAgZG9zZSwgDQogICAgICAgICAgICAgICAgZmFtaWx5PWJpbm9taWFsLCBkYXRhPSB3aW5nMikNCnN1bW1hcnkoZ2xtKQ0KYGBgICANCg0KIyMjIEVENTAgKERFNTApDQoNCmBgYHtyfQ0KZ2xtIDwtIGdsbSh3aW5nIH4gIGRvc2UuZ3JvdXAsIA0KICAgICAgICAgICAgICAgIGZhbWlseT1iaW5vbWlhbChwcm9iaXQpLGRhdGE9IHdpbmcyKQ0Kc3VtbWFyeShnbG0pDQoNCiMjIw0KDQpFRDUwIDwtIC1jb2VmKGdsbSlbMV0vY29lZihnbG0pWzJdDQpyb3VuZChFRDUwLCAyKQ0KYGBgICANCmBgYHtyfQ0KQ0lzIDwtIGJpbm9tLmNvbmZpbnQoeD13aW5nJHdpbmcucmV0cmFjdCwNCiAgICAgICAgICAgICAgICAgICAgIG49IHdpbmckbiwNCiAgICAgICAgICAgICAgICAgICAgIG1ldGhvZHM9IndpbHNvbiIpDQoNCndpbmckbG93ZXIgPC0gQ0lzWyw1XQ0Kd2luZyR1cHBlcjwtIENJc1ssNl0NCndpbmcNCg0Kc2l6ZT0yDQoNCnAgPC0gd2luZzIgJT4lIA0KICBnZ3Bsb3QoYWVzKHg9IGRvc2UuZ3JvdXAgLCB5PSB3aW5nLCBjb2w9IGRvc2UuZ3JvdXApKSArDQogIA0KICBnZW9tX2hsaW5lKHlpbnRlcmNlcHQgPSAwLjUsDQogICAgICAgICAgICAgICBsaW5ldHlwZT0gImRhc2hlZCIsIGNvbD0iZGFyayBncmF5IikgKw0KICANCiAgZ2VvbV9wb2ludChwb3NpdGlvbiA9IHBvc2l0aW9uX2ppdHRlcih3aWR0aCA9IDAuMDMsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0ID0gMC4wMyksDQogICAgICAgICAgICAgKSArDQogIA0KICBnZW9tX3Ntb290aChhZXMoeD0gZG9zZS5ncm91cCksIA0KICAgICAgICAgICAgICBtZXRob2Q9ImdsbSIsIGZvcm11bGEgPSB5IH4geCArIEkoeF4yKSAsDQogICAgICAgICAgICAgIG1ldGhvZC5hcmdzPWxpc3QoZmFtaWx5PSJiaW5vbWlhbCIpLCBzZSA9IFRSVUUpICsNCiAgDQogIGdlb21fc2VnbWVudCh4PSA4LjI1MzgwNix5PSAwICwNCiAgICAgICAgICAgICAgIHhlbmQ9IDguMjUzODA2LCB5ZW5kPSAwLjUsDQogICAgICAgICAgICAgICBsdHk9MiwgbHdkPTAxLCBjb2w9Im9yYW5nZSIpICsNCiAgI2dlb21fdmxpbmUoeGludGVyY2VwdCA9IDguMjUzODA2ICwNCiAgICMgICAgICAgICAgbHR5PTIsIGx3ZD0wLjksIGNvbD0ib3JhbmdlIikgKw0KICANCiAgc2NhbGVfeF9kaXNjcmV0ZSgNCiAgICAjYnJlYWtzPWMoIjhtZy5rZyIsIjltZy5rZyIsIjEwbWcua2ciLCIxMW1nLmtnIiksDQogICAgICAgICAgICAgICAgICAgbGltaXRzID0gYyg4LDksMTAsMTEpICwNCiAgICAgICAgbGFiZWxzPWMoIjhtZy5rZyIsIjltZy5rZyIsIjEwbWcua2ciLCIxMW1nLmtnIiksDQogICAgICAgIG5hbWU9ICJMaWRvY2FpbmUgRG9zZSAiKSAgKw0KICBzY2FsZV95X2NvbnRpbnVvdXMobi5icmVha3MgPSA1LCBsYWJlbHM9YygiMCUiLCIyNSUiLCAiNTAlIiwgIjc1JSIsICIxMDAlIiksDQogICAgICAgICAgICAgICAgICAgICBicmVha3M9YygwLCAwLjI1LCAwLjUwLDAuNzUsIDEpLCBsaW1pdHMgPSBjKDAsMSksDQogICAgICAgICAgICAgICAgICAgICBuYW1lPSAiV2luZyByZXRyYWN0aW9uIHJlZmxleCAoJSkiKSArDQogIHRoZW1lKGF4aXMudGl0bGUgPSBlbGVtZW50X3RleHQoc2l6ZT0xMSksDQogICAgICAgIGF4aXMudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplPTExKSApICsNCiAgbGFicyhjb2xvciA9ICJMaWRvY2FpbmUgRG9zZSAiKQ0KcA0KDQpgYGANCg0KDQoNCioqTm8gc2UgcHVkbyBlbmNvbnRyYXIgZGlmZXJlbmNpYSBlbnRyZSBsYSBwcm9wb3JjacOzbiBkZSBpbmRpdmlkdW9zIG1vc3RyYW5kbyByZXRyYWNjacOzbiBkZWwgYWxhIGRlICBsYXMgY3VhdHJvIGRpc3RpbnRhcyBkw7NzaXMuIExhIGTDs3NpcyBkZSAxMW1nL2tnIGVzIGxhIHF1ZSBtb3N0csOzIG3DoXMgaW5kaXZpZHVvcyBjb24gbWF5b3IgdGllbXBvIChoYXN0YSAyMCBtaW4pLiBMZXMgaGljZSB1biBhbsOhbGlzaXMgYmlub21pYWwgKHJlZ3Jlc2nDs24gbG9nw61zdGljYSksIHRvbWFuZG8gZWwgdW1icmFsIGRlIDEwIG1pbnV0b3MsIHBhcmEgdmVyIHNpIGFsIG1lbm9zIGxhIGTDs3NpcyAxMW1nL2tnIG1vc3Ryw7MgZGlmZXJlbmNpYSBjb24gbGEgZMOzc2lzIGRlIDhtZy9rZyBlbiBjdWFudG8gYSBsYSBwcm9wb3JjacOzbiBkZSBpbmRpdmlkdW9zIHF1ZSBsb2dyYXJvbiBwYXNhciBsb3MgMTAgbWludXRvcy4gRXN0YSDDumx0aW1hIGVzIHVuYSBmb3JtYSBtw6FzIHJvYnVzdGEgZGUgYW5haXphcmxvKiogDQoNCioqVGllbmVuIHVuIHByb2JsZW1hIGLDoXNpY28gZGUgZGlzZcOxbywgeWEgcXVlIG5vIHRpZW5lbiB1biBncnVwbyBjb250cm9sIChTaW4gTGlkb2NhaW5hKS4gQWwgbm8gdGVuZXIgdW4gZ3J1cG8gc2luIExpZG9jYWluYSwgbm8gcHVlZGVuIGNvbmNsdWlyIHNpIGFsIG1lbm9zIGxhIGTDs3NpcyBtw6F4aW1hIGRlIExpZG9jYWluYSAgdHV2byBhbGfDum4gZWZlY3RvIGRpZmVyZW50ZS4gRXhpc3Rpw7MgdW4gcHJvYmxlbWEgc2ltaWxhciBjb24gZWwgcHJveWVjdG8gZW4gcmF0YXMuIEVsIGdydXBvIGNvbnRyb2wgc2llbXByZSBlcyBpbXBvcnRhbnRlIHBvcnF1ZSBkZSBvdHJhIGZvcm1hIG5vIGhheSBtYW5lcmEgZGUgc2FiZXIgc2kgaGF5IGFsZ3VuIGVmZWN0byBkZSBhbGd1bmEgZMOzc2lzIGRlIGxvIHF1ZSBzZSBlc3TDoSBwcm9iYW5kby4qKg==