La tasa de interés Euribor, Euro Interbank Offered Rate, se considera como la base para todo tipo de productos de renta como: futuros, cuentas de ahorro e hipotecas. Fuente: euribor-rates.eu
Los tipos de Euribor se obtienen de la media del tipo de interés al que un gran numero de bancos europeos se prestan euros entre sí. Existen diferentes plazos de préstamo: desde 1 semana a 12 meses.
La tasa Euribor a 12 meses es utilizada por muchos Bancos Europeos como un referencia de interés variable para los créditos hipotecarios. A ese valor, determinado anualmente, también se le suma una tasa fija, llamado spread, resultando en un interés compuesto que será lo que el cliente pagará durante cada año.
Los contratos acostumbran tener una cláusula con la definición de cómo calcular la tasa anual cada año. En algunos casos, suele estar definida como: el promedio aritmético simple de las cotizaciones diarias de la tasa “Euribor 12 meses” con referencia a un año de 360 días, del mes anterior al periodo del cálculos de los intereses, arredondados a la milésima.
Existen varias páginas en internet donde se pueden ver las cotizaciones diarias de estas tasas. Una de ellas, Quandl, posee gráficas interactivas y con varias posibilidades de exportar la información para futuros análisis.
En esta página podemos ver, por ejemplo, las cotizaciones diarias de la “Euribor a 12 meses”.
A pesar de que la página permite hacer varias operaciones para buscar la información disponible, esta empresa desarrolló un R package, con su mismo nombre, Quandl, para permitir descargar las informaciones directamente en R.
Para eso necesitamos saber el Quandl Code que se encuentra en la parte superior de la pagina; en este caso BOF/QS_D_IEUTIO1A para utilizarlo en el R package.
O clickando directamente la opción “R” para saber los argumentos de la función Quandl en R y obtener directamente los datos en forma de data frame.
En este caso, considerando un contrato hipotético con inicio el 16 de Febrero de 2017, podemos buscar los valores desde esa fecha hasta el día de hoy, y ver como ha sido su variación en el tiempo, de forma a determinar también el valor promedio acumulado del interés, el cual servirá de base para determinar la tasa variable del contrato para el año siguiente.
Durante el periodo 2017-01-16 a 2017-12-29 el “Euribor 12 meses” ha fluctuado entre los siguientes valores:
|
Min_Max
|
EUR12m
|
Date
|
|
Máximo
|
-0.095
|
2017-01-16
|
|
Mínimo
|
-0.194
|
2017-12-18
|
|
Mínimo
|
-0.194
|
2017-12-19
|
El promedio acumulado de las cotizaciones diarias en el periodo analizado se muestra en la siguiente gráfica (curva naranja). Al día 2017-12-29 el valor promedio acumulado se encuentra en:
|
interes
|
valor
|
|
EUR12_promedio
|
-0.148
|
Si sumamos algebráicamente el promedio acumulado con la tasa fija spread, tendremos que el interés compuesto por el cual el préstamo se regirá en el año siguiente, será el valor del interés un dia antes del 16 de Enero de cada año.
LS0tDQp0aXRsZTogIk1vbml0b3JpemFjacOzbiBkZWwgRXVyaWJvciINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KLS0tDQoNCkxhIHRhc2EgZGUgaW50ZXLDqXMgRXVyaWJvciwgW0V1cm8gSW50ZXJiYW5rIE9mZmVyZWQgUmF0ZV0oaHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvRXVyaWJvciksIA0KKnNlIGNvbnNpZGVyYSBjb21vIGxhIGJhc2UgcGFyYSB0b2RvIHRpcG8gZGUgcHJvZHVjdG9zIGRlIHJlbnRhIGNvbW86IGZ1dHVyb3MsIGN1ZW50YXMgZGUgYWhvcnJvIGUgaGlwb3RlY2FzLioNCkZ1ZW50ZTogW2V1cmlib3ItcmF0ZXMuZXVdKGh0dHA6Ly9lcy5ldXJpYm9yLXJhdGVzLmV1LykNCg0KTG9zIHRpcG9zIGRlIEV1cmlib3Igc2Ugb2J0aWVuZW4gZGUgbGEgbWVkaWEgZGVsIHRpcG8gZGUgaW50ZXLDqXMgYWwgcXVlIHVuIGdyYW4gbnVtZXJvIGRlIGJhbmNvcyBldXJvcGVvcyBzZSBwcmVzdGFuIGV1cm9zIGVudHJlIHPDrS4gRXhpc3RlbiBkaWZlcmVudGVzIHBsYXpvcyBkZSBwcsOpc3RhbW86IGRlc2RlIDEgc2VtYW5hIGEgMTIgbWVzZXMuDQoNCkxhIHRhc2EgKipFdXJpYm9yIGEgMTIgbWVzZXMqKiBlcyB1dGlsaXphZGEgcG9yIG11Y2hvcyBCYW5jb3MgRXVyb3Blb3MgY29tbyB1biByZWZlcmVuY2lhIGRlIGludGVyw6lzIHZhcmlhYmxlIHBhcmEgbG9zIGNyw6lkaXRvcyBoaXBvdGVjYXJpb3MuIEEgZXNlIHZhbG9yLCBkZXRlcm1pbmFkbyBhbnVhbG1lbnRlLCB0YW1iacOpbiBzZSBsZSBzdW1hIHVuYSB0YXNhIGZpamEsIGxsYW1hZG8gKnNwcmVhZCosIHJlc3VsdGFuZG8gZW4gdW4gaW50ZXLDqXMgY29tcHVlc3RvIHF1ZSBzZXLDoSBsbyBxdWUgZWwgY2xpZW50ZSBwYWdhcsOhIGR1cmFudGUgY2FkYSBhw7FvLg0KDQpMb3MgY29udHJhdG9zIGFjb3N0dW1icmFuIHRlbmVyIHVuYSBjbMOhdXN1bGEgY29uIGxhIGRlZmluaWNpw7NuIGRlIGPDs21vIGNhbGN1bGFyIGxhIHRhc2EgYW51YWwgY2FkYSBhw7FvLiBFbiBhbGd1bm9zIGNhc29zLCBzdWVsZSBlc3RhciBkZWZpbmlkYSBjb21vOiAqKmVsIHByb21lZGlvIGFyaXRtw6l0aWNvIHNpbXBsZSBkZSBsYXMgY290aXphY2lvbmVzIGRpYXJpYXMgZGUgbGEgdGFzYSAiRXVyaWJvciAxMiBtZXNlcyIgY29uIHJlZmVyZW5jaWEgYSB1biBhw7FvIGRlIDM2MCBkw61hcywgZGVsIG1lcyBhbnRlcmlvciBhbCBwZXJpb2RvIGRlbCBjw6FsY3Vsb3MgZGUgbG9zIGludGVyZXNlcywgYXJyZWRvbmRhZG9zIGEgbGEgbWlsw6lzaW1hKiouDQoNCkV4aXN0ZW4gdmFyaWFzIHDDoWdpbmFzIGVuIGludGVybmV0IGRvbmRlIHNlIHB1ZWRlbiB2ZXIgbGFzIGNvdGl6YWNpb25lcyBkaWFyaWFzIGRlIGVzdGFzIHRhc2FzLg0KVW5hIGRlIGVsbGFzLCBbUXVhbmRsXShodHRwczovL3d3dy5xdWFuZGwuY29tLyksIHBvc2VlIGdyw6FmaWNhcyBpbnRlcmFjdGl2YXMgeSBjb24gdmFyaWFzIHBvc2liaWxpZGFkZXMgZGUgZXhwb3J0YXIgbGEgaW5mb3JtYWNpw7NuIHBhcmEgZnV0dXJvcyBhbsOhbGlzaXMuIA0KDQpFbiBlc3RhIFtww6FnaW5hXShodHRwczovL3d3dy5xdWFuZGwuY29tL2RhdGEvQk9GL1FTX0RfSUVVVElPMUEtRVVSSUJPUi0xMi1Nb250aHMtRGFpbHkpIHBvZGVtb3MgdmVyLCBwb3IgZWplbXBsbywgbGFzIGNvdGl6YWNpb25lcyBkaWFyaWFzIGRlIGxhICJFdXJpYm9yIGEgMTIgbWVzZXMiLg0KDQohW10oQk9GX0VVUklCT1JfMTJfTW9udGhzX0RhaWx5X1F1YW5kbC5wbmcpDQoNCg0KQSBwZXNhciBkZSBxdWUgbGEgcMOhZ2luYSBwZXJtaXRlIGhhY2VyIHZhcmlhcyBvcGVyYWNpb25lcyBwYXJhIGJ1c2NhciBsYSBpbmZvcm1hY2nDs24gZGlzcG9uaWJsZSwgZXN0YSBlbXByZXNhIGRlc2Fycm9sbMOzIHVuICpSIHBhY2thZ2UqLCBjb24gc3UgbWlzbW8gbm9tYnJlLCBbUXVhbmRsXShodHRwczovL3d3dy5xdWFuZGwuY29tL3Rvb2xzL3IpLCBwYXJhIHBlcm1pdGlyIGRlc2NhcmdhciBsYXMgaW5mb3JtYWNpb25lcyBkaXJlY3RhbWVudGUgZW4gUi4NCg0KUGFyYSBlc28gbmVjZXNpdGFtb3Mgc2FiZXIgZWwgKlF1YW5kbCBDb2RlKiBxdWUgc2UgZW5jdWVudHJhIGVuIGxhIHBhcnRlIHN1cGVyaW9yIGRlIGxhIHBhZ2luYTsgZW4gZXN0ZSBjYXNvIGBCT0YvUVNfRF9JRVVUSU8xQWAgcGFyYSB1dGlsaXphcmxvIGVuIGVsICAqUiBwYWNrYWdlKi4NCg0KIVtdKFF1YW5kbF9jb2RlX0VVUklCT1IxMm0ucG5nKQ0KDQoNCk8gY2xpY2thbmRvIGRpcmVjdGFtZW50ZSBsYSBvcGNpw7NuICJSIiBwYXJhIHNhYmVyIGxvcyBhcmd1bWVudG9zIGRlIGxhIGZ1bmNpw7NuIGBRdWFuZGxgIGVuIFIgeSBvYnRlbmVyIGRpcmVjdGFtZW50ZSBsb3MgZGF0b3MgZW4gZm9ybWEgZGUgKmRhdGEgZnJhbWUqLg0KDQohW10oUXVhbmRsX2NvZGVfRVVSSUJPUjEybV9SZnVuY3Rpb24ucG5nKQ0KDQpgYGB7ciBwYWNrYWdlcywgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRSwgaW5jbHVkZT1GQUxTRX0NCmxpYnJhcnkoUXVhbmRsKQ0KbGlicmFyeShkcGx5ciwgd2Fybi5jb25mbGljdHMgPSBGQUxTRSkNCmxpYnJhcnkodGlkeXIpDQpgYGANCg0KDQpFbiBlc3RlIGNhc28sIGNvbnNpZGVyYW5kbyB1biBjb250cmF0byBoaXBvdMOpdGljbyBjb24gaW5pY2lvIGVsIDE2IGRlIEZlYnJlcm8gZGUgMjAxNywgcG9kZW1vcyBidXNjYXIgbG9zIHZhbG9yZXMgZGVzZGUgZXNhIGZlY2hhIGhhc3RhIGVsIGTDrWEgZGUgaG95LCB5IHZlciBjb21vIGhhIHNpZG8gc3UgdmFyaWFjacOzbiBlbiBlbCB0aWVtcG8sIGRlIGZvcm1hIGEgZGV0ZXJtaW5hciB0YW1iacOpbiBlbCB2YWxvciBwcm9tZWRpbyBhY3VtdWxhZG8gZGVsIGludGVyw6lzLCBlbCBjdWFsIHNlcnZpcsOhIGRlIGJhc2UgcGFyYSBkZXRlcm1pbmFyIGxhIHRhc2EgdmFyaWFibGUgZGVsIGNvbnRyYXRvIHBhcmEgZWwgYcOxbyBzaWd1aWVudGUuDQoNCmBgYHtyIGdldHRpbmdfZGF0YSwgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRSwgaW5jbHVkZT1GQUxTRX0NCkVVUl8xMiA8LSB0YmxfZGYoUXVhbmRsKCJCT0YvUVNfRF9JRVVUSU8xQSIsIHN0YXJ0X2RhdGUgPSAiMjAxNy0wMS0xNiIpKSAlPiUgIyBzY3JhcGUgZGUgbGFzIHRhc2FzIGRlIGludGVyw6lzIGRlc2RlIDEzLTAxLTIwMTcNCiAgYXJyYW5nZShEYXRlKSAjIG9yZGVybmEgbGFzIG9ic2VydmFjaW9uZXMgcG9yIGZlY2hhDQoNCkVVUl8xMiRFVVIxMl9wcm9tZWRpbyA8LSBjdW1zdW0oRVVSXzEyJFZhbHVlKS9hcy5udW1lcmljKHJvd25hbWVzKEVVUl8xMikpICMgY3JlYXIgdW5hIGNvbmx1bW5hIGNvbiBlbCB2YWxvciBwcm9tZWRpbyBhY3VtdWxhZG8gY2FkYSBkw61hDQoNCkVVUl8xMiRjb21wdWVzdG8gPC0gRVVSXzEyJEVVUjEyX3Byb21lZGlvICsgMS44NSAgIyBjcmVhIHVuYSBjb2x1bW5hIGNvbiB1biBpbnRlcsOpcyBjb21wdWVzdG8gKEVVUklCT1IgKyBzcHJlYWQpDQoNCkVVUl8xMiA8LSBFVVJfMTIgJT4lDQogIHJlbmFtZShFVVIxMm0gPSBWYWx1ZSkgJT4lIA0KICBnYXRoZXIoa2V5ID0gaW50ZXJlcywgdmFsdWUgPSB2YWxvciwgLURhdGUpICU+JSANCiAgYXJyYW5nZShEYXRlKQ0KYGBgDQoNCmBgYHtyIEVVUjEybV9wbG90LCBlY2hvPUZBTFNFLCBmaWcuaGVpZ2h0PTUsIGZpZy53aWR0aD03LCBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFfQ0KbGlicmFyeShoaWdoY2hhcnRlcikNCg0KaGNoYXJ0KEVVUl8xMltFVVJfMTIkaW50ZXJlcyAlaW4lIGMoIkVVUjEybSIpLF0sICJsaW5lIiwNCiAgICAgICBoY2Flcyh4ID0gRGF0ZSwgeSA9IHZhbG9yKSwgY29sb3IgPSAiYmx1ZSIsIG5hbWUgPSAiRVVSMTJtIikgJT4lDQogIGhjX3RpdGxlKHRleHQgPSAiRXVyaWJvciBhIDEyIG1lc2VzIC0gRGlhcmlvIikgJT4lDQogIGhjX3N1YnRpdGxlKHRleHQgPSAiRGVzZGUgMTMvMDEvMjAxNyIpICU+JSANCiAgaGNfY3JlZGl0cyhlbmFibGVkID0gVFJVRSwgIyBhZGQgY3JlZGl0cw0KICAgICAgICAgICAgIHRleHQgPSAiRm9udGU6ICdRdWFuZGwnIFIgcGFja2FnZSIpICU+JSANCiAgaGNfeUF4aXModGl0bGUgPSBsaXN0KHRleHQgPSAiJSIpKSAlPiUNCiAgaGNfeEF4aXModGl0bGUgPSBsaXN0KHRleHQgPSAiRmVjaGEiKSkgJT4lIA0KICBoY19hZGRfdGhlbWUoaGNfdGhlbWVfc21wbCgpKSAlPiUgDQogIGhjX3Rvb2x0aXAodmFsdWVEZWNpbWFscyA9IDMsICAjIHJvdW5kIHRoZSB2YWx1ZSB0byB0aGUgdGhvdXNhbmR0aA0KICAgICAgICAgICAgICNwb2ludEZvcm1hdCA9ICI8Yj5FVVIxMjo8L2I+IHtwb2ludC55fSUiLCAgIyB0aXRsZSBvZiB0aGUgdmFsdWUNCiAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3IgPSAiI2ZjZjY4YSIpICAjIGJhY2tncm91bmQgb2YgdGhlIHRvb2x0aXANCg0KYGBgDQoNCkR1cmFudGUgZWwgcGVyaW9kbyBgciBtaW4oRVVSXzEyJERhdGUpYCBhIGByIG1heChFVVJfMTIkRGF0ZSlgIGVsICJFdXJpYm9yIDEyIG1lc2VzIiBoYSBmbHVjdHVhZG8gZW50cmUgbG9zIHNpZ3VpZW50ZXMgdmFsb3JlczoNCg0KYGBge3IgbWF4X21pbl9FdXJpYm9yMTJtLCBlY2hvPUZBTFNFLCBtZXNzYWdlPVRSVUUsIHdhcm5pbmc9VFJVRX0NCmxpYnJhcnkoa2FibGVFeHRyYSkNCmxpYnJhcnkoa25pdHIpDQoNCkVVUl8xMiAlPiUNCiAgZmlsdGVyKGludGVyZXMgPT0gIkVVUjEybSIpICU+JSANCiAgZmlsdGVyKHZhbG9yID09IG1heCh2YWxvcikgfCB2YWxvciA9PSBtaW4odmFsb3IpKSAlPiUgDQogIG11dGF0ZShNaW5fTWF4ID0gY2FzZV93aGVuKHZhbG9yID09IG1pbih2YWxvcikgfiAiTcOtbmltbyIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbG9yID09IG1heCh2YWxvcikgfiAiTcOheGltbyIpKSAlPiUgDQogICNtdXRhdGUoTWluX01heCA9IGNlbGxfc3BlYyhNaW5fTWF4LCAiaHRtbCIsIGNvbG9yID0gaWZlbHNlKE1pbl9NYXggPT0gIk1pbmltbyIsICJncmVlbiIsICJyZWQiKSkpICU+JSANCiAgcmVuYW1lKEVVUjEybSA9IHZhbG9yKSAlPiUgDQogIHNlbGVjdChNaW5fTWF4LCBFVVIxMm0sIERhdGUpICU+JSANCiAga2FibGUoImh0bWwiKSAlPiUNCiAga2FibGVfc3R5bGluZyhib290c3RyYXBfb3B0aW9ucyA9ICJzdHJpcGVkIiwgZnVsbF93aWR0aCA9IEYsIHBvc2l0aW9uID0gImxlZnQiKSAlPiUgDQogIHJvd19zcGVjKDEsIGJvbGQgPSBULCBjb2xvciA9ICJ3aGl0ZSIsIGJhY2tncm91bmQgPSAiI0Q3MjYxRSIpICU+JSANCiAgcm93X3NwZWMoMiwgYm9sZCA9IFQsIGNvbG9yID0gIndoaXRlIiwgYmFja2dyb3VuZCA9ICIjMTQ5YjAwIikNCmBgYA0KDQpFbCBwcm9tZWRpbyBhY3VtdWxhZG8gZGUgbGFzIGNvdGl6YWNpb25lcyBkaWFyaWFzIGVuIGVsIHBlcmlvZG8gYW5hbGl6YWRvIHNlIG11ZXN0cmEgZW4gbGEgc2lndWllbnRlIGdyw6FmaWNhIChjdXJ2YSBuYXJhbmphKS4gQWwgZMOtYSBgciBtYXgoRVVSXzEyJERhdGUpYCBlbCB2YWxvciBwcm9tZWRpbyBhY3VtdWxhZG8gc2UgZW5jdWVudHJhIGVuOg0KYGBge3IgbWF4X3Byb21lZGlvLCBlY2hvPUZBTFNFLCBtZXNzYWdlPUZBTFNFLCB3YXJuaW5nPUZBTFNFfQ0KRVVSXzEyICU+JQ0KICBmaWx0ZXIoaW50ZXJlcyA9PSAiRVVSMTJfcHJvbWVkaW8iKSAlPiUNCiAgZmlsdGVyKERhdGUgPT0gbWF4KERhdGUpKSAlPiUgDQogIHNlbGVjdChpbnRlcmVzLCB2YWxvcikgJT4lIA0KICBrYWJsZSgiaHRtbCIsIGRpZ2l0cyA9IDMpICU+JQ0KICBrYWJsZV9zdHlsaW5nKGJvb3RzdHJhcF9vcHRpb25zID0gInN0cmlwZWQiLCBmdWxsX3dpZHRoID0gRiwgcG9zaXRpb24gPSAibGVmdCIpICU+JSANCiAgICByb3dfc3BlYygxLCBib2xkID0gVCwgY29sb3IgPSAiYmxhY2siLCBiYWNrZ3JvdW5kID0gIiNhNWE1YTUiKQ0KYGBgDQoNCmBgYHtyIHByb21lZGlvX3Bsb3QsIGVjaG89RkFMU0UsIGZpZy5oZWlnaHQ9NSwgZmlnLndpZHRoPTcsIG1lc3NhZ2U9RkFMU0UsIHdhcm5pbmc9RkFMU0V9DQpoY2hhcnQoRVVSXzEyW0VVUl8xMiRpbnRlcmVzICVpbiUgYygiRVVSMTJtIiwgIkVVUjEyX3Byb21lZGlvIiksXSwgImxpbmUiLA0KICAgICAgIGhjYWVzKHggPSBEYXRlLCB5ID0gdmFsb3IsIGdyb3VwID0gaW50ZXJlcykpICU+JQ0KICBoY190aXRsZSh0ZXh0ID0gIkV1cmlib3IgMTIgbWVzZXMgLSBEaWFyaW8gJiBQcm9tZWRpbyBhY3VtdWxhZG8gZHVyYW50ZSBwZXJpb2RvIikgJT4lDQogIGhjX3N1YnRpdGxlKHRleHQgPSAiRGVzZGUgMTMvMDEvMjAxNyIpICU+JSANCiAgaGNfY3JlZGl0cyhlbmFibGVkID0gVFJVRSwgIyBhZGQgY3JlZGl0cw0KICAgICAgICAgICAgIHRleHQgPSAiRm9udGU6ICdRdWFuZGwnIFIgcGFja2FnZSIpICU+JSANCiAgaGNfeUF4aXModGl0bGUgPSBsaXN0KHRleHQgPSAiJSIpLA0KICAgICAgICAgICBwbG90TGluZXMgPSBsaXN0KCAjIGFkZGluZyBhbiBob3Jpem9udGFsIGxpbmUNCiAgICAgICAgICAgICBsaXN0KGxhYmVsID0gbGlzdCh0ZXh0ID0gcGFzdGUoIlByb21lZGlvOiIsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybWF0KEVVUl8xMiR2YWxvclttYXgoYXMubnVtZXJpYyhyb3duYW1lcyhFVVJfMTIpKSldLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWdpdHMgPSAzKSkpLA0KICAgICAgICAgICAgICAgICAgY29sb3IgPSAiIzBhN2YyZCIsDQogICAgICAgICAgICAgICAgICB3aWR0aCA9IDEsDQogICAgICAgICAgICAgICAgICB2YWx1ZSA9IEVVUl8xMiR2YWxvclttYXgoYXMubnVtZXJpYyhyb3duYW1lcyhFVVJfMTIpKSldKSkpICU+JQ0KICBoY194QXhpcyh0aXRsZSA9IGxpc3QodGV4dCA9ICJGZWNoYSIpKSAlPiUgDQogIGhjX2FkZF90aGVtZShoY190aGVtZV9zbXBsKCkpICU+JSANCiAgaGNfdG9vbHRpcCh2YWx1ZURlY2ltYWxzID0gMywgICMgcm91bmQgdGhlIHZhbHVlIHRvIHRoZSB0aG91c2FuZHRoDQogICAgICAgICAgICAgI3BvaW50Rm9ybWF0ID0gIjxiPkVVUjEyOjwvYj4ge3BvaW50Lnl9JSIsICAjIHRpdGxlIG9mIHRoZSB2YWx1ZQ0KICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvciA9ICIjZmNmNjhhIikgICMgYmFja2dyb3VuZCBvZiB0aGUgdG9vbHRpcA0KYGBgDQoNClNpIHN1bWFtb3MgYWxnZWJyw6FpY2FtZW50ZSBlbCBwcm9tZWRpbyBhY3VtdWxhZG8gY29uIGxhIHRhc2EgZmlqYSAqc3ByZWFkKiwgdGVuZHJlbW9zIHF1ZSBlbCBpbnRlcsOpcyBjb21wdWVzdG8gcG9yIGVsIGN1YWwgZWwgcHLDqXN0YW1vIHNlIHJlZ2lyw6EgZW4gZWwgYcOxbyBzaWd1aWVudGUsIHNlcsOhIGVsIHZhbG9yIGRlbCBpbnRlcsOpcyB1biBkaWEgYW50ZXMgZGVsIDE2IGRlIEVuZXJvIGRlIGNhZGEgYcOxby4NCg0KYGBge3IgY2hfcGxvdCwgZWNobz1GQUxTRSwgZmlnLmhlaWdodD01LCBmaWcud2lkdGg9NywgbWVzc2FnZT1GQUxTRSwgd2FybmluZz1GQUxTRX0NCmhjaGFydChFVVJfMTJbRVVSXzEyJGludGVyZXMgJWluJSBjKCJjb21wdWVzdG8iKSxdLCAibGluZSIsDQogICAgICAgaGNhZXMoeCA9IERhdGUsIHkgPSB2YWxvciksIGNvbG9yID0gImdyZWVuIiwgbmFtZSA9ICJDb21wdWVzdG8iKSAlPiUNCiAgaGNfdGl0bGUodGV4dCA9ICJUYXNhIGNvbXB1ZXN0YTogRXVyaWJvciAxMm0gKHByb21lZGlvIGFjdW11bGFkbykgKyBTcHJlYWQiKSAlPiUNCiAgaGNfc3VidGl0bGUodGV4dCA9ICJEZXNkZSAxMy8wMS8yMDE3IikgJT4lIA0KICBoY19jcmVkaXRzKGVuYWJsZWQgPSBUUlVFLCAjIGFkZCBjcmVkaXRzDQogICAgICAgICAgICAgdGV4dCA9ICJGb250ZTogJ1F1YW5kbCcgUiBwYWNrYWdlIikgJT4lIA0KICBoY195QXhpcyh0aXRsZSA9IGxpc3QodGV4dCA9ICIlIikpICU+JQ0KICBoY194QXhpcyh0aXRsZSA9IGxpc3QodGV4dCA9ICJGZWNoYSIpKSAlPiUgDQogIGhjX2FkZF90aGVtZShoY190aGVtZV9zbXBsKCkpICU+JSANCiAgaGNfdG9vbHRpcCh2YWx1ZURlY2ltYWxzID0gMywgICMgcm91bmQgdGhlIHZhbHVlIHRvIHRoZSB0aG91c2FuZHRoDQogICAgICAgICAgICAgI3BvaW50Rm9ybWF0ID0gIjxiPkVVUjEyOjwvYj4ge3BvaW50Lnl9JSIsICAjIHRpdGxlIG9mIHRoZSB2YWx1ZQ0KICAgICAgICAgICAgIGJhY2tncm91bmRDb2xvciA9ICIjZmNmNjhhIikgICMgYmFja2dyb3VuZCBvZiB0aGUgdG9vbHRpcA0KYGBgDQo=