Simulation Experiment Recipe
Objectives
Data Generation
Linear Gaussian DGP
Function
#> function(n, beta, rho, sigma) {
#> cov_mat <- matrix(c(1, rho, rho, 1), byrow = T, nrow = 2, ncol = 2)
#> X <- MASS::mvrnorm(n = n, mu = rep(0, 2), Sigma = cov_mat)
#> y <- X %*% beta + rnorm(n, sd = sigma)
#> return(list(X = X, y = y))
#> }
#> <bytecode: 0x55629159c770>
Input Parameters
#> $n
#> [1] 200
#>
#> $beta
#> [1] 1 0
#>
#> $rho
#> [1] 0
#>
#> $sigma
#> [1] 1
Methods and Evaluation
Methods
OLS
Function
#> function(X, y, cols = c("X1", "X2")) {
#> lm_fit <- lm(y ~ X)
#> pvals <- summary(lm_fit)$coefficients[cols, "Pr(>|t|)"] %>%
#> setNames(paste(names(.), "p-value"))
#> return(pvals)
#> }
#> <bytecode: 0x556290686588>
Input Parameters
#> list()
Evaluation
Rejection Prob. (alpha = 0.1)
Function
#> function(fit_results, alpha = 0.05) {
#> group_vars <- c(".dgp_name", ".method_name")
#> eval_out <- fit_results %>%
#> dplyr::group_by(across({{group_vars}})) %>%
#> dplyr::summarise(
#> `X1 Reject Prob.` = mean(`X1 p-value` < alpha),
#> `X2 Reject Prob.` = mean(`X2 p-value` < alpha)
#> )
#> return(eval_out)
#> }
Input Parameters
#> $alpha
#> [1] 0.1
Visualizations
Power
Function
#> function(fit_results, col = "X1") {
#> plt <- ggplot2::ggplot(fit_results) +
#> ggplot2::aes(x = .data[[paste(col, "p-value")]],
#> color = as.factor(.method_name)) +
#> ggplot2::geom_abline(slope = 1, intercept = 0,
#> color = "darkgray", linetype = "solid", size = 1) +
#> ggplot2::stat_ecdf(size = 1) +
#> ggplot2::scale_x_continuous(limits = c(0, 1)) +
#> ggplot2::labs(x = "t", y = "P( p-value \u2264 t )",
#> linetype = "", color = "Method")
#> return(plt)
#> }
Input Parameters
#> list()
Base Linear Regression Experiment
Rejection Prob. (alpha = 0.1)
Power
![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAB4AAAASACAIAAACRKMcMAAAACXBIWXMAAB2HAAAdhwGP5fFlAAAgAElEQVR4nOzdW2xjiX0ffvKQlKi7RreMKEta3YaU61sbuzUMN24SA01RxAUKJDGaoEWBFnn6p4iNoigCFAWCvqVxnrrIBW3RwEiaRR9qw8lLbBebFOtF4r9rx7ZIiZIq6S/OrDSSRqMbRUo8/wel083M4ezsXI4o6fN50p7fT5qvAO4Z6TuH5yTDMEwAAAAAAMDLFlx2AAAAAAAAricFNAAAAAAAr4QCGgAAAACAV0IBDQAAAADAK6GABgAAAADglVBAAwAAAADwSiigAQAAAAB4JRTQAAAAAAC8EgpoAAAAAABeCQU0AAAAAACvhAIaAAAAAIBXQgENAAAAAMAroYAGAAAAAOCVSF92AAAAAADgyjg+Pr537967j4yOjnZ0dFxWHlqcAvpF7ezshGF42SlevlQqdevWrUQiUavVHj58eNlxaHVDQ0NHR0cnJyeXHYSWlk6n+/v7E4nE6enpwcHBZcehpSWTycHBwcPDw2q1etlZaGmZTKavry+RSFSr1cPDw8uOQ0sLgmBgYODg4OD09PSys9DS2traent7E4nEycnJ0dHRZcehpV384vzw4cNarXbZWWhp7e3tPT09iUTi+Pj4+Pj4suO8qEqlUi6Xz87O3n3w7/ydv6OAphkFNAAAAADwHk5OTorF4t7e3mUH4YpRQAMAAAAATYVhuLm5uby8fH5+ftlZuHoU0AAAAABAtMPDw2Kx2OwGrUEQjI+PDw0NxZyKK0QBDQAAAAA8rtForK2tra2tNRqNyIW+vr5CodDV1RUEQczZuEIU0AAAAADAX7G/v7+wsNDsqYlBEExNTU1MTCSTyZiDceUooAEAAACAv3R2draysrK5uRmGYeTCwMBAoVDIZrMxB+OKUkADAAAAAIlEIrGzs1MqlarVauQ0nU7Pzs7mcrmYU3GlKaABAAAA4Kar1+vLy8uVSqXZwtDQUD6fb29vjzMV14ACGgAAAAButK2trVKpVK/XI6dtbW137twZGRmJORXXgwIaAAAAAG6o09PTxcXF7e3tZgu3b9+em5vLZDJxpuI6UUADAAAAwE1UqVSWlpbOz88jp9lstlAoDAwMxJyKa0YBDQAAAAA3y8nJSbFY3Nvbi5wmk8mxsbGZmZlUKhVzMK4fBTQAAAAA3BRhGK6vr6+urjYajciF7u7uQqHQ29sbczCuKwU0AAAAANwIh4eHCwsLBwcHkdMgCCYnJycnJ4MgiDkY15gCGgAAAACuuUajsba2tra21uzC576+vkKh0NXVFXMwrj0FNAAAAABcZ/v7+wsLC8fHx5HTIAimpqYmJiaSyWTMwbgJFNAAAAAAcD2dnZ2trKxsbm6GYRi5MDg4mM/ns9lszMG4ORTQAAAAAHAN7ezslEqlarUaOc1kMjMzM7lcLuZU3DQKaAAAAAC4Vur1+tLS0r1795otjIyM5PP5TCYTZypuJgU0AAAAAFwfW1tbpVKpXq9HTtva2vL5/PDwcMypuLEU0AAAAABwHZyeni4uLm5vbzdbyOVys7Oz6bRKkPh4tQEAAADAlVepVJaWls7PzyOnHR0dhULh1q1bMacCBTQAAAAAXGEnJyfFYnFvby9ymkwmx8bGZmZmUqlUzMEgoYAGAAAAgCsqDMP19fWVlZUwDCMXuru7C4VCb29vzMHgEQU0AAAAAFw9h4eHCwsLBwcHkdMgCCYnJycnJ4MgiDkYvJsCGgAAAACukkajsbq6ur6+3uzC576+vvn5+c7OzpiDwZMU0AAAAABwZTx48KBYLB4fH0dO0+n09PT02NhYMpmMORhEUkADAAAAwBVwdnZWLpcrlUqzhcHBwXw+n81m40wFT6eABgAAAIBWd//+/VKpdHp6GjnNZDIzMzO5XC7mVPCeFNAAAAAA0LpqtVq5XL53716zhZGRkXw+n8lk4kwFz0gBDQAAAAAtamtrq1Qq1ev1yGl7e/udO3eGh4djTgXPTgENAAAAAC2nWq2WSqWdnZ1mC7lcbm5uLpVKxZkK3i8FNAAAAAC0kDAM7969u7S0dH5+HrnQ0dFRKBRu3boVczB4DgpoAAAAAGgVh4eHpVJpf38/cppMJicmJqampoIgiDkYPB8FNAAAAABcvkajsbGxsbKyEoZh5EJ3d/f8/HxPT0/MweBFKKABAAAA4JIdHBwUi8WDg4PIaRAEk5OTk5OTLnzmylFAAwAAAMClaTQaq6ur6+vrzS587uvrm5+f7+zsjDkYvBQKaAAAAAC4HA8ePCgWi8fHx5HTdDo9PT09NjaWTCZjDgYvS0sX0LVa7T/9p//0ta99LZPJ/Lf/9t+e/RM3NzffeOON7373u/v7+z09PR/+8Id/5md+ZnJy8vnWAAAAAODlOjs7K5fLlUql2cLg4GA+n89ms3Gmgpeude8as76+/sUvfvFrX/va+/3EH/7wh7/8y7/8jW98I5FIzM/Pt7W1vfnmm1/84he/973vPccaAAAAALxc9+/ff/vtt5u1z5lMZn5+/qMf/aj2mWugRa+A/vrXv/76668nEol//I//8X/5L//l2T+xVqt96UtfqlarP//zP/+zP/uzF29P+OpXv/rbv/3bX/rSl15//fWL/2+fcQ0AAAAAXqJarba4uLi1tdVsYWRkJJ/PZzKZOFPBq9OiV0B//etfHxkZ+ff//t//5E/+5Pv6xLfeeuudd9754Ac/+HM/93OPbo7z0z/90x/72Md2dnbefPPN97UGAAAAAC/L1tbW22+/3ax9bm9v//CHP/yhD31I+8x10qIF9N/+23/713/915/jdszf+ta3EonEj//4jz92/DOf+UwikXjrrbfe1xoAAAAAvLijo6Nvfetb3//+9+v1euRCLpf75Cc/OTw8HHMweNVa9BYcf+/v/b3n+8TV1dVEIjE3N/fY8dnZ2UQisbKy8r7Wbrhwdyfc3UnU66mjo8vOQqtr7O0kq9XU6ellB6GlBalUo7s7kUgk6vVUk0c8w4VkMtnYvZ88OUnVapedhZYWpNONrq5EIpGo1VInJ5cdh5YWBEFjZzt5fJxq8ms/XAgymUZnZyKRSJyepqrVy45DS0ulUo373YETC+8lmcls7u8vLy8nz88j2+X29vbx8fHubFtiYy3ucC9LV2eio/OyQ9CiWrSAfm7vvPNOIpEYGhp67PjFPx/t7e2dnp62t7c/41ociVtTGLb90Vdq3/t/E2GYSCScP3hP9UQi5aXCM3j0g7lXC++pnkikr99PKrwCFyeWpBMLz6CeSGQSCW9p5j1dnFgCJxaegRMLz2gokXi8hHrM978dT5JXpDHw/wTTj1/oCReu1a91tVrt/Pw8kUh0dHQ8Nnp05OTkJJlMPsvaYwX0D3/4w3/9r//1k3/of/7P/7m3t/dlxG8h4fe+c/7dq33iAwAAAAAu3XUroC8+SKcf/76SyWQqlTo/P6/Vao+mT197bHR6erq5ufnkHxoEQSqVegnpW8nZ/7d+2REAAAAAgCuvRR9C+Hza2touPnjybu5hGF5c9dze3v6Ma682a4s7P7/sBAAAAADAlXetroBua2u7uH75+Pj4Uct84ej/PEavo6PjGdce++J//a//9T//8z9/8g/d2dm5f//+S/seWkO2WnUHKwAAAADgBV2rAjqRSORyuY2Nja2trf7+/ncfv3jq4MjIyEXj/IxrPHL6mZ8M2x8v5eGR7u7u09PTJ99VAO8WBEFnZ2cikTg7O6t6pjxPlUwmu7q6nFh4T6lU6uK6gXq9fnp6etlxaGkXJ5ZqtXp2dnbZWWhp6XQ6m80mnFh4Bhc/3zqxcKHRaGxtbT148KDZQn9//+joaBiGcaaKTdvQyGVHoHVdtwJ6ZmZmY2OjVCrduXPn3cdLpVIikZibm3tfazxS/+BHwu6ey05B60oNDYVHR/WTk8sOQktLp9Op/v5EInF2elo/OLjsOLS0ZDKZGhxsHB7W/VsFT5fJpPr6EolEvVqtHx5edhpaWhAEqYGBxsFBXaXIUyXb2lK9vYlEonZyUv8/75GFSKlUKnXr1vnDh/UnniPFTXP//v1SqXSaySaGbz85bW9v/+hHP/raa68dHx8fHx/HHy8Gyd6+y45A67pW94BOJBKf+tSnEonEN7/5zceOf+Mb30gkEp/+9Kff1xoAAAAANFOr1f7iL/7ie9/7XrP3TIyMjHz6059+7bXX4s0FLeRqF9C/93u/95u/+ZuLi4uPjnziE5+YnJwsl8u/+7u/e/GmhjAMv/zlLy8uLo6Pj3/yk598X2sAAAAAEOnu3btvv/329vZ25DSbzX70ox/90Ic+5Eav3HCteAuOtbW1X//1X7/4+Pz8PJFInJ2d/Yt/8S8ujvT29v7qr/7qxcff/OY37927Nzs7++hOGqlU6gtf+MKv/MqvvPHGG3/8x3+cy+Uqlcre3l5XV9cXv/jFVCr1vtYAAAAA4DHVarVYLO7u7jZbyOVyc3NzKiZItGYBXa1WV1dX330kDMNHRx57bOCTpqamfuM3fuP3f//3v/Od7xSLxf7+/s9+9rOf//znR0ZGnmMNAAAAAC6EYXj37t2lpaWLiyaf1NXVVSgU+vrcExn+UisW0Pl8/itf+cqzbP7Wb/1W5PGRkZFf+qVfes9Pf8Y1AAAAADg6OlpYWHj48GHkNAiC8fHx6enpZDIZczBoZa1YQAMAAABA62g0GhsbG6urq41GI3Khp6enUCj09PTEHAxanwIaAAAAAJra398vFotHR0eR0yAIpqamJiYmXPgMkRTQAAAAABCh0Wisrq6ur6+HYRi50N/fXygUOjs7Yw4GV4gCGgAAAAAet7u7WywWq9Vq5DSdTs/OzuZyuZhTwZWjgAYAAACA/+vs7KxcLlcqlWYLQ0ND+Xy+vb09zlRwRSmgAQAAAOAv3b9/v1QqnZ6eRk7b2tru3LkzMjIScyq4uhTQAAAAAJCo1WqLi4tbW1vNFkZGRvL5fCaTiTMVXHUKaAAAAABuurt375bL5Xq9HjnNZrOFQmFgYCDmVHANKKABAAAAuLmq1WqxWNzd3Y2cJpPJ0dHRubm5VCoVczC4HhTQAAAAANxEYRhubm4uLy+fn59HLnR3d+fz+b6+vpiDwXWigAYAAADgxjk8PCwWiw8fPoycBkEwPj4+PT2dTCZjDgbXjAIaAAAAgBuk0WhsbGysrq42Go3Ihb6+vnw+393dHXMwuJYU0AAAAADcFPv7+8Vi8ejoKHIaBMHU1NTExIQLn+FlUUADAAAAcP01Go3V1dX19fUwDCMX+vv75+fnOzo6Yg4G15sCGgAAAIBrbmdnp1QqVavVyGk6nZ6dnc3lcjGngptAAQ0AAADAtVWv15eXlyuVSrOFoaGhfD7f3t4eZyq4ORTQAAAAAFxPW1tbpVKpXq9HTtva2vL5/PDwcMyp4EZRQAMAAABw3dRqtVKptL293Wzh9u3bc3NzmUwmzlRwAymgAQAAALhWKpVKuVw+OzuLnGaz2UKhMDAwEHMquJkU0AAAAABcEycnJ8VicW9vL3KaTCZHR0fn5uZSqVTMweDGUkADAAAAcOWFYbi5ubm8vHx+fh650NXVNT8/39vbG3MwuOEU0AAAAABcbYeHh8Vi8eHDh5HTIAjGx8enpqaCIIg5GKCABgAAAOCqajQaa2tra2trjUYjcqGvr69QKHR1dcUcDLiggAYAAADgStrf319YWDg+Po6cBkEwNTU1MTGRTCZjDgY8ooAGAAAA4Io5OztbWVnZ3NwMwzByYWBgoFAoZLPZmIMBj1FAAwAAAHCV7OzslEqlarUaOU2n07Ozs7lcLuZUQCQFNAAAAABXQ71eX15erlQqzRaGhoby+Xx7e3ucqYCnUEADAAAAcAVsbW2VSqV6vR45bWtru3PnzsjISMypgKdTQAMAAADQ0k5PTxcXF7e3t5st3L59e25uLpPJxJkKeBYKaAAAAABaV6VSKZfLZ2dnkdNsNlsoFAYGBmJOBTwjBTQAAAAArejk5KRYLO7t7UVOk8nk2NjYzMxMKpWKORjw7BTQAAAAALSWMAzX19dXV1cbjUbkQldX1/z8fG9vb8zBgPdLAQ0AAABACzk8PCwWiw8fPoycBkEwPj4+NTUVBEHMwYDnoIAGAAAAoCU0Go21tbW1tbVmFz739fUVCoWurq6YgwHPTQENAAAAwOXb399fWFg4Pj6OnAZBMDU1NTExkUwmYw4GvAgFNAAAAACX6ezsbGVlZXNzMwzDyIXBwcF8Pp/NZmMOBrw4BTQAAAAAl2ZnZ6dUKlWr1chpJpOZmZnJ5XIxpwJeFgU0AAAAAJegXq8vLS3du3ev2cLIyEg+n89kMnGmAl4uBTQAAAAAcdva2iqVSvV6PXLa1taWz+eHh4djTgW8dApoAAAAAOJzenq6uLi4vb3dbOH27dtzc3MufIbrQQENAAAAQEwqlcrS0tL5+XnktKOjo1Ao3Lp1K+ZUwKujgAYAAADglTs5OSkWi3t7e5HTZDI5NjY2MzOTSqViDga8UgpoAAAAAF6hMAzX19dXVlbCMIxc6O7uLhQKvb29MQcDYqCABgAAAOBVOTw8XFhYODg4iJwGQTA5OTk5ORkEQczBgHgooAEAAAB4+RqNxurq6vr6erMLn/v6+ubn5zs7O2MOBsRJAQ0AAADAS/bgwYNisXh8fBw5TafT09PTY2NjyWQy5mBAzBTQAAAAALw0Z2dnKysrm5ubzS58HhwczOfz2Ww25mDApVBAAwAAAPBy3L9/v1QqnZ6eRk4zmczMzEwul4s5FXCJFNAAAAAAvKharVYul+/du9dsYWRkJJ/PZzKZOFMBl04BDQAAAMAL2draKpVK9Xo9ctre3n7nzp3h4eGYUwGtQAENAAAAwHOqVqulUmlnZ6fZQi6Xm52dTad1UHBD+Z8fAAAAgOdRqVSWlpbOz88jpx0dHYVC4datWzGnAlqKAhoAAACA9+fk5GRhYeHBgweR02QyOTExMTU1FQRBzMGAVqOABgAAAOBZNRqNjY2NlZWVMAwjF7q7uwuFQm9vb8zBgNakgAYAAADgmRwcHBSLxYODg8hpEASTk5OTk5MufAYeUUADAAAA8B4ajcbq6ur6+nqzC5/7+vrm5+c7OztjDga0OAU0AAAAAE/z4MGDYrF4fHwcOU2n09PT02NjY8lkMuZgQOtTQAMAAAAQ7ezsrFwuVyqVZguDg4P5fD6bzcaZCrhCFNAAAAAARLh//36pVDo9PY2cZjKZ2dnZ0dHRmFMBV4sCGgAAAIC/olarLS4ubm1tNVsYGRnJ5/OZTCbOVMBVpIAGAAAA4P/a2toqlUr1ej1y2t7efufOneHh4ZhTAVeUAhoAAACARCKRqFarxWJxd3e32UIul5ubm0ulUnGmAq40BTQAAADATReG4d27d5eWls7PzyMXOjo6CoXCrVu3Yg4GXHUKaAAAAIAb7fDwsFQq7e/vR06TyeTExMT09HQymYw5GHANKKABAAAAbqhGo7GxsbGyshKGYeRCd3f3/Px8T09PzMGAa0MBDQAAAHAT7e/vF4vFo6OjyGkQBFNTUxMTEy58Bl6EAhoAAADgZmk0Gqurq+vr680ufO7v7y8UCp2dnTEHA64fBTQAAADADfLgwYOFhYWTk5PIaTqdnp6eHhsbc+Ez8FIooAEAAABuhLOzs3K5XKlUmi0MDQ3l8/n29vY4UwHXmwIaAAAA4Pq7f/9+qVQ6PT2NnLa1tc3MzIyOjsacCrj2FNAAAAAA11mtViuVStvb280WRkZG8vl8JpOJMxVwQyigAQAAAK6tu3fvlsvler0eOc1ms/l8fnBwMOZUwM2hgAYAAAC4hqrVarFY3N3dbbaQy+Xm5uZSqVScqYCbRgENAAAAcK2EYXj37t2lpaXz8/PIhY6Ojvn5+f7+/piDATeQAhoAAADg+jg8PCwWiw8fPoycBkEwPj4+PT2dTCZjDgbcTApoAAAAgOug0WhsbGysrq42Go3Ihe7u7vn5+Z6enpiDATeZAhoAAADgytvf3y8Wi0dHR5HTIAimpqYmJiZc+AzETAENAAAAcIU1Go3V1dX19fUwDCMX+vv7C4VCZ2dnzMEAEgpoAAAAgKtrd3e3WCxWq9XIaTqdnp2dzeVyMacCeEQBDQAAAHD1nJ2dlcvlSqXSbGFoaCifz7e3t8eZCuAxCmgAAACAK+b+/fulUun09DRy2tbWNjMzMzo6GnMqgCcpoAEAAACujFqtViqVtre3my2MjIzk8/lMJhNnKoBmFNAAAAAAV8Pdu3fL5XK9Xo+cZrPZQqEwMDAQcyqAp1BAAwAAALS6arVaLBZ3d3cjp8lkcnR0dG5uLpVKxRwM4OkU0AAAAACtKwzDzc3N5eXl8/PzyIXu7u58Pt/X1xdzMIBnoYAGAAAAaFFHR0cLCwsPHz6MnAZBMD4+Pj09nUwmYw4G8IwU0AAAAAAtp9FobGxsrK6uNhqNyIWenp5CodDT0xNzMID3RQENAAAA0Fr29/eLxeLR0VHkNAiCqampiYkJFz4DrU8BDQAAANAqGo3G6urq+vp6GIaRC/39/fPz8x0dHTEHA3g+CmgAAACAlrCzs1MqlarVauQ0nU7Pzs7mcrmYUwG8CAU0AAAAwCWr1+vLy8uVSqXZwtDQUD6fb29vjzMVwItTQAMAAABcpq2trVKpVK/XI6dtbW35fH54eDjmVAAvhQIaAAAA4HLUarXFxcWtra1mC7dv356bm8tkMnGmAniJFNAAAAAAl+Du3bvlcrnZhc/ZbLZQKAwMDMScCuDlUkADAAAAxOrk5KRYLO7t7UVOk8nk6Ojo3NxcKpWKORjAS6eABgAAAIhJGIabm5vLy8vn5+eRC93d3YVCobe3N+ZgAK+IAhoAAAAgDoeHh8Vi8eHDh5HTIAjGx8enpqaCIIg5GMCro4AGAAAAeLUajcba2tra2lqj0Yhc6OvrKxQKXV1dMQcDeNUU0AAAAACv0P7+/sLCwvHxceQ0CIKpqamJiYlkMhlzMIAYKKABAAAAXonz8/P//b//9/r6ehiGkQsDAwOFQiGbzcYcDCA2CmgAAACAl29nZ6dUKlWr1chpOp2enZ3N5XIxpwKImQIaAAAA4GWq1+vLy8uVSqXZwtDQUD6fb29vjzMVwKVQQAMAAAC8NFtbW6VSqV6vR07b2try+fzw8HDMqQAuiwIaAAAA4CU4PT1dXFzc3t5utnD79u25ublMJhNnKoDLpYAGAAAAeFGVSqVcLp+dnUVOs9lsoVAYGBiIORXApVNAAwAAADy/k5OTYrG4t7cXOU0mk2NjYzMzM6lUKuZgAK1AAQ0AAADwPMIwXF1dXVpaajQakQtdXV3z8/O9vb0xBwNoHQpoAAAAgPft4ODg29/+9u7ubuQ0CILx8fGpqakgCGIOBtBSFNAAAAAA70Oj0VhbW1tbW2t24XNfX1+hUOjq6oo5GEALUkC/qGt5C6dkMvnYkXQ6Haa9WniaIAjSXiQ81aMTZjKZ9GrhWTix8J6cWHh2Fz/iplIpLxWezomF9/TgwYPvf//7x8fHkdMgCGZmZl577bUnf7Pmxnp0YvHzLTeTF/2L6uvru35/qZy1t5//1SO9vb3J3r7LScMV0dHR0dHRcdkpuBra2tra2touOwVXQGdnZ2dn52Wn4Gpob29vb2+/7BRcAU4sPLtsNpvNZi87Ba2lXq9///vfL5fLYRhGLty+ffvjH/+48wzNOLFwMymgX9T+/v5lR3j5Mqenj70yHj58GDai/36FRCLR399/cnJyenp62UFoaalUqqenJ5FI1Gq1ZheMwCP9/f3Hx8e1Wu2yg9DS0ul0d3d3IpE4PT09OTm57Di0tGQy2dfX58TCe8pkMhe3TahWq9Vq9bLj0ELu37//wx/+sNmrIpPJzM3NfeADH6jVas4zPKatre3inyWu8Ymlv7//siPQuhTQL+r8/LzZv3xeXeknvqOzs7Pw7OxSwnBVNBqNMy8Snk0Yhl4tPN3Fu4ucWHhPj96I5sTCe7p4CNj5+bmXCk/36HlxTiw8Uq/Xl5aW7t2712xhZGQkn89nMhmvGSI9ugWHn2+5mRTQAAAAANG2trZKpVK9Xo+cZrPZQqEwMDAQcyqAK0QBDQAAAPC409PTxcXF7e3tZgujo6N/62/9rWq16p4bAE+hgAYAAAD4KyqVytLS0vn5eeS0o6OjUCgMDQ21tbVd11v6ArwsCmgAAACAv3RyclIsFvf29iKnyWRybGxsZmbm0V19AXg6BTQAAABAIgzD9fX1lZWVMAwjF7q7uwuFQm9vb8zBAK40BTQAAABw0x0eHi4sLBwcHEROgyCYnJycnJwMgiDmYABXnQIaAAAAuLkajcbq6ur6+nqzC5/7+vrm5+c7OztjDgZwPSigAQAAgBvqwYMHxWLx+Pg4choEwdTU1MTERDKZjDkYwLWhgAYAAABunLOzs5WVlc3NzWYXPg8ODubz+Ww2G3MwgGtGAQ0AAADcLDs7O6VSqVqtRk4zmczMzEwul4s5FcC1pIAGAAAAboparVYul+/du9dsYWRkJJ/PZzKZOFMBXGMKaAAAAOBG2NraKpVK9Xo9ctrW1pbP54eHh2NOBXC9KaABAACAa65arRaLxd3d3WYLuVxudnY2ndaTALxkTqwAAADAdVapVJaWls7PzyOnHR0dhULh1q1bMacCuCEU0AAAAMD1dHJysrCw8ODBg8hpMpkcGxubnZ0NgiDmYAA3hwIaAAAAuG4ajcbGxsbKykoYhpEL3d3dhUKht7c35mAAN40CGgAAALhWDg8PFxYWDg4OIqdBEExOTk5OTrrwGSAGCmgAAADgmmg0Gqurq+vr680ufO7r65ufn+/s7Iw5GMCNpYAGAAAAroMHDx4Ui8Xj4+PIaTqdnp6eHhsbSyaTMQcDuMkU0AAAAMDVdnZ2Vi6XK5VKs4XBwcF8Pp/NZuNMBUBCAQ0AAABcaffv3y+VSqenp5HTTCYzOzs7Otjn/vcAACAASURBVDoacyoALiigAQAAgCupVquVy+V79+41WxgZGcnn85lMJs5UALybAhoAAAC4era2tkqlUr1ej5y2t7ffuXNneHg45lQAPEYBDQAAAFwl1Wq1WCzu7u42W8jlcnNzc6lUKs5UAERSQAMAAABXQxiGd+/eXVpaOj8/j1zo6OgoFAq3bt2KORgAzSigAQAAgCvg8PCwVCrt7+9HTpPJ5MTExNTUVBAEMQcD4CkU0AAAAEBLazQaGxsbKysrYRhGLnR3d8/Pz/f09MQcDID3pIAGAAAAWtfBwUGxWDw4OIicBkEwNTU1MTGRTCZjDgbAs1BAAwAAAK2o0Wisrq6ur683u/C5v7+/UCh0dnbGHAyAZ6eABgAAAFrOgwcPFhYWTk5OIqfpdHp6enpsbMyFzwAtTgENAAAAtJCzs7NyuVypVJotDA4O5vP5bDYbZyoAno8CGgAAAGgV9+/fL5VKp6enkdO2traZmZnR0dGYUwHw3BTQAAAAwOWr1WqlUml7e7vZwsjISD6fz2QycaYC4AUpoAEAAIBLtrW1VSqV6vV65DSbzRYKhYGBgZhTAfDiFNAAAADApalWq8VicXd3t9lCLpebm5tLpVJxpgLgZVFAAwAAAJcgDMO7d+8uLS2dn59HLnR0dMzPz/f398ccDICXSAENAAAAxO3w8LBYLD58+DByGgTB+Pj49PR0MpmMORgAL5cCGgAAAIhPo9HY2NhYXV1tNBqRC93d3fPz8z09PTEHA+BVUEADAAAAMdnf3y8Wi0dHR5HTIAimpqYmJiZc+AxwbSigAQAAgFeu0Wisrq6ur6+HYRi50N/fXygUOjs7Yw4GwCulgAYAAABerd3d3WKxWK1WI6fpdHp2djaXy8WcCoAYKKABAACAV+Xs7KxcLlcqlWYLQ0ND+Xy+vb09zlQAxEYBDQAAALwS9+/fL5VKp6enkdO2traZmZnR0dGYUwEQJwU0AAAA8JLVarVSqbS9vd1sYWRkJJ/PZzKZOFMBED8FNAAAAPAy3b17t1wu1+v1yGk2m83n84ODgzGnAuBSKKABAACAl6NarRaLxd3d3chpMpkcHR2dm5tLpVIxBwPgsiigAQAAgBcVhuHm5uby8vL5+XnkQldXV6FQ6OvrizkYAJdLAQ0AAAC8kKOjo4WFhYcPH0ZOgyAYHx+fnp5OJpMxBwPg0imgAQAAgOfUaDQ2NjZWV1cbjUbkQk9PT6FQ6OnpiTkYAC1CAQ0AAAA8j/39/WKxeHR0FDkNgmBqampiYsKFzwA3mQIaAAAAeH8ajcbq6ur6+noYhpEL/f398/PzHR0dMQcDoNUooAEAAID3YXd3t1gsVqvVyGk6nZ6dnc3lcjGnAqA1KaABAACAZ1Kv15eXlyuVSrOFoaGhfD7f3t4eZyoAWpkCGgAAAHhvW1tbpVKpXq9HTtva2vL5/PDwcMypAGhxCmgAAADgaWq12uLi4tbWVrOFkZGRfD6fyWTiTAXAlaCABgAAAJq6e/duuVxuduFzNpstFAoDAwMxpwLgqlBAAwAAABGq1WqxWNzd3Y2cJpPJ0dHRubm5VCoVczAArhAFNAAAAPBXhGG4ubm5vLx8fn4eudDd3Z3P5/v6+mIOBsCVo4AGAAAA/q/Dw8Nisfjw4cPIaRAE4+Pj09PTyWQy5mAAXEUKaAAAACCRSCQajcba2tra2lqj0Yhc6OvrKxQKXV1dMQcD4OpSQAMAAACJ/f39YrF4dHQUOQ2CYGpqamJiwoXPALwvCmgAAAC40RqNxurq6vr6ehiGkQv9/f3z8/MdHR0xBwPgGlBAAwAAwM21s7NTKpWq1WrkNJ1Oz87O5nK5mFMBcG0ooAEAAOAmqtfry8vLlUql2cLQ0FA+n29vb48zFQDXjAIaAAAAbpytra1SqVSv1yOnbW1t+Xx+eHg45lQAXD8KaAAAALhBarVaqVTa3t5utnD79u25ublMJhNnKgCuKwU0AAAA3BSVSqVcLp+dnUVOs9lsoVAYGBiIORUA15gCGgAAAK6/k5OTYrG4t7cXOU0mk2NjYzMzM6lUKuZgAFxvCmgAAAC4zsIw3NzcLJfLjUYjcqGrq2t+fr63tzfmYADcBApoAAAAuLYODw+LxeLDhw8jp0EQjI+PT01NBUEQczAAbggFNAAAAFxDjUZjbW1tbW2t2YXPfX19hUKhq6sr5mAA3CgKaAAAALhu9vf3FxYWjo+PI6dBEExNTU1MTCSTyZiDAXDTKKABAADg+jg7O1tZWdnc3AzDMHJhYGCgUChks9mYgwFwMymgAQAA4JrY2dkplUrVajVymslkZmZmcrlczKkAuMkU0AAAAHDl1ev15eXlSqXSbGFkZCSfz2cymThTAYACGgAAAK62ra2tUqlUr9cjp21tbXfu3BkZGYk5FQAkFNAAAABwdZ2eni4uLm5vbzdbuH379tzcnAufAbgsCmgAAAC4kiqVytLS0vn5eeQ0m80WCoWBgYGYUwHAuymgAQAA4Io5OTkpFot7e3uR02QyOTY2NjMzk0qlYg4GAI9RQAMAAMCVEYbh+vr66upqo9GIXOju7i4UCr29vTEHA4BICmgAAAC4Gg4PDxcWFg4ODiKnQRBMTk5OTk4GQRBzMABoRgENAAAAra7RaKyurq6vr4dhGLnQ19dXKBS6urpiDgYAT6eABgAAgJb24MGDYrF4fHwcOQ2CYGpqamJiIplMxhwMAN6TAhoAAABa1NnZ2crKyubmZrMLnwcHB/P5fDabjTkYADwjBTQAAAC0op2dnVKpVK1WI6eZTGZmZiaXy8WcCgDeFwU0AAAAtJZarVYul+/du9dsYWRkJJ/PZzKZOFMBwHNQQAMAAEAL2draKpVK9Xo9ctrW1pbP54eHh2NOBQDPRwENAAAALaFarRaLxd3d3WYLuVxudnY2nfa7PABXhr+0AAAA4PJVKpWlpaXz8/PIaUdHR6FQuHXrVsypAOAFKaABAADgMp2cnBSLxb29vchpMpkcGxubmZlJpVIxBwOAF6eABgAAgMsRhuH6+vrKykoYhpEL3d3dhUKht7c35mAA8LIooAEAAOASHB4eLiwsHBwcRE6DIJicnJycnAyCIOZgAPASKaABAAAgVo1GY3V1dX19vdmFz319ffPz852dnTEHA4CXTgENAAAA8Xnw4EGxWDw+Po6cptPp6enpsbGxZDIZczAAeBUU0AAAABCHs7OzcrlcqVSaLQwODubz+Ww2G2cqAHilFNAAAADwyt2/f79UKp2enkZOM5nMzMxMLpeLORUAvGoKaAAAAHiFarVauVy+d+9es4WRkZF8Pp/JZOJMBQDxUEADAADAq7K1tVUqler1euS0vb39zp07w8PDMacCgNgooAEAAODlq1arpVJpZ2en2UIul5ubm0ulUnGmAoCYKaABAADgZQrD8O7du0tLS+fn55ELHR0dhULh1q1bMQcDgPgpoAEAAOClOTw8LJVK+/v7kdNkMjkxMTE1NRUEQczBAOBSKKABAADgJWg0GhsbGysrK2EYRi50d3fPz8/39PTEHAwALpECGgAAAF7UwcFBsVg8ODiInAZBMDk5OTk56cJnAG4aBTQAAAA8v0ajsbq6ur6+3uzC576+vvn5+c7OzpiDAUArUEADAADAc3rw4EGxWDw+Po6cptPp6enpsbGxZDIZczAAaBEKaAAAAHjfzs7OyuVypVJptjA4OJjP57PZbJypAKDVKKABAADg/bl//36pVDo9PY2cZjKZ2dnZ0dHRmFMBQAtSQAMAAMCzqtVqpVJpe3u72cLIyEg+n89kMnGmAoCWpYAGAACAZ7K1tVUqler1euQ0m80WCoWBgYGYUwFAK2vdAnpzc/ONN9747ne/u7+/39PT8+EPf/hnfuZnJicnn/5ZX/jCF8rlcrPpyMjI7/zO7yQSiYcPH/7CL/xCs7Xf+Z3fGRkZee7kAAAAXDPVarVYLO7u7jZbyOVyc3NzqVQqzlQA0PpatID+4Q9/+G//7b+tVquDg4Pz8/NbW1tvvvnmt771rX/zb/7NRz7ykad84vj4eOTx09PTjY2NR++BunhCcVtb28TExJPL3ioFAADAhTAM7969u7S0dH5+HrnQ0dFRKBRu3boVczAAuBJasYCu1Wpf+tKXqtXqz//8z//sz/5sMplMJBJf/epXf/u3f/tLX/rS66+//pSHCP/yL/9y5PH/+B//48bGxuc+97mL/zw6OkokEq+99tqv/dqvvYLvAAAAgOvg8PCwVCrt7+9HTpPJ5MTExPT09MXvrQDAk4LLDhDhrbfeeueddz74wQ/+3M/93KO/xX/6p3/6Yx/72M7Ozptvvvl+v+D6+vpXv/rV6enpv/t3/+7FkYsCuqOj4yXGBgAA4NpoNBpra2t/9md/1qx97u7u/vjHPz4zM6N9BoCnaMUC+lvf+lYikfjxH//xx45/5jOfSSQSb7311vv9gq+//vr5+fkv/uIvBsFffr8XBXRXV9eLZgUAAODaubj4aXl5OQzDJ6dBEMzMzHziE5/o6emJPxsAXC2teAuO1dXVRCIxNzf32PHZ2dlEIrGysvK+vtqf/Mmf/OAHP/ixH/ux+fn5Rwcv7gHd2dn5olkBAAC4RhqNxve+971SqRRZPScSif7+/kKh4NdJAHhGrVhAv/POO4lEYmho6LHjw8PDiURib2/v9PS0vb39Wb5UGIb/9b/+11Qq9Qu/8AvvPv6ogP7BD37wp3/6p++8804mk3nttdd+4id+4kd+5EdezrcBAADAlfLgwYNisXjxC+OT0un07OxsLpeLORUAXGktV0DXarWLJws/eYPmR0dOTk6esYB+66231tfXP/vZz96+ffvdxw8PDxOJxP/4H//jK1/5yruX/+AP/uAXf/EXf+qnfurJL/Wd73znn//zf/7k8a9//et9fX3PEuYKOctmH3u688DAQLL3un2bvFxdXV1ua8Mzam9vf8bTODdcd3d3d3f3Zafgashms095TjU80tPT454JRKrX69/97nef8o7bXC73oz/6o54kxJN6e3svOwJXRmdnp/dPcAO1YgF98UE6/Xi2ZDKZSqXOz88f7bynP/iDP0gkEv/gH/yDx45f/IN2rVb7J//kn/zYj/3YrVu37t279+Uvf/l//s//+frrr3/gAx/40Ic+9ELfBgAAAFdEpVL59re/fXJyEjnNZrMf+chHXnvttXhDAcA10XIFdFtb28UH9Xr90ccXwjC8uDj6Ga+b+4u/+IuVlZUPfvCDk5OTj43+4T/8h5/97Gf7+vr6+/svjnzgAx/4V//qX/27f/fv3n777TfeeOPJArq9vX1sbOzJP6XRaFykuk6evNnZ+fl58tp9m7xEqVQqDMNGo3HZQWhpyWTy4mGwXi08i1Qq1Wg0mt1/Ey44sfDsLl4tTiw8plqt/q//9b82NzebLXzgAx/42Mc+1t7efv1+7+PFObHwjB79xHKNXy2pVOqyI9C6WrGAvrjM+fj4+LEC+ujo6OKDZ3zT09e//vVEIvGZz3zmydGtW7du3br15PHPfe5zb7/99ve///0wDJPJ5LtHH/zgB//7f//vT37Kzs7O3t7es+S5QrKnp5m/emR/fz8890sdTQ0NDR0fHze7ZgQupNPpi3/2q9VqBwcHlx2HlpZMJgcHB4+Pj6vV6mVnoaVlMpmLm6Gdnp5e3GMNmgmCYGBg4Ojo6PT09LKz0Cru3r1bLpfr9XrktLOzc25u7uLvo2Z3heaGS6VSt27dOjw8fPY3anMztbe3X9wAqlqtXtfzyZPPcoNHWq6ATiQSuVxuY2Nja2vr0eXJFy4eTjgyMvJYMR2p0Wi8/fbbiUTib/7Nv/nsf/TFraLr9XqtVnN/UgAAgGupWq0Wi8Xd3d3IaTKZnJqayufz/rkCAF5ccNkBIszMzCQSiVKp9NjxiyNzc3PP8kUWFxePjo5yudzg4OCT0zAMd3Z2nnzXw9bWVsLTsQAAAK6pMAwrlcrbb7/drH3u7u7+iZ/4iY9//ONPPpcIAHgOrVhAf+pTn0okEt/85jcfO/6Nb3wjkUh8+tOffpYvUiwWE/+ny35MGIb/7J/9s3/6T//pn//5nz82+tM//dNEIvHX/tpfe/+pAQAAaGlHR0ff/va3i8Vi5A2dgyCYnJz81Kc+FXkZEwDwfFqxgP7EJz4xOTlZLpd/93d/9+Ii5TAMv/zlLy8uLo6Pj3/yk598tPl7v/d7v/mbv7m4uPjkF1lfX08kEpGPDUwmkxc3hv4P/+E/PPrcMAy/9rWv/dEf/VEikfjc5z73Cr4tAAAALkej0VhbW/uzP/uzhw8fRi709PT86I/+6MzMzMWDwgCAl6UV31KUSqW+8IUv/Mqv/Mobb7zxx3/8x7lcrlKp7O3tdXV1ffGLX3z3UzW/+c1v3rt3b3Z29s6dO499ke3t7UQi8dhdpB/5R//oHy0sLPzgBz/4l//yX/7Ij/xIf3//5ubmxROxPv/5z/+Nv/E3Xtk3BwAAQKz29/eLxeKjx9o/JgiCqampiYmJxx5EDwC8FK1YQCcSiampqd/4jd/4/d///e985zvFYrG/v/+zn/3s5z//+ZGRkWf8CicnJ4lEIpvNRk7T6fSv/uqv/uEf/uGbb765sbGxvb3d29v7qU996u///b//4Q9/+KV9GwAAAFyeRqOxurq6vr7+5BOALvT39xcKhc7OzpiDAcDN0aIFdCKRGBkZ+aVf+qWn7/zWb/1Ws9Gv/dqvPf1z0+n05z73OXfbAAAAuJZ2d3eLxWK1Wo2cptPp2dnZXC4XcyoAuGlat4AGAACA51Cv15eXlyuVSrOFoaGhfD7f3t4eZyoAuJkU0AAAAFwfW1tbpVKpXq9HTtva2vL5/PDwcMypAODGUkADAABwHdRqtcXFxa2trWYLIyMj+Xw+k8nEmQoAbjgFNAAAAFfe3bt3y+Vyswufs9lsoVAYGBiIORUAoIAGAADgCqtWq8VicXd3N3KaTCZHR0fn5uZSqVTMwQCAhAIaAACAKyoMw83NzeXl5fPz88iF7u7ufD7f19cXczAA4BEFNAAAAFfP4eFhsVh8+PBh5DQIgvHx8enp6WQyGXMwAODdFNAAAABcJY1GY21tbW1trdFoRC709fXl8/nu7u6YgwEAT1JAAwAAcGXs7+8Xi8Wjo6PIaRAEU1NTExMTLnwGgBahgAYAAOAKaDQaq6ur6+vrYRhGLvT398/Pz3d0dMQcDAB4CgU0AAAArW5nZ6dUKlWr1chpOp2enZ3N5XIxpwIA3pMCGgAAgNZVr9eXl5crlUqzhaGhoXw+397eHmcqAOAZKaABAABoUVtbW6VSqV6vR07b2try+fzw8HDMqQCAZ6eABgAAoOXUarVSqbS9vd1s4fbt23Nzc5lMJs5UAMD7pYAGAACgtVQqlXK5fHZ2FjnNZrOFQmFgYCDmVADAc1BAAwAA0CpOTk6KxeLe3l7kNJlMjo6Ozs3NpVKpmIMBAM9HAQ0AAMDlC8Nwc3NzeXn5/Pw8cqGrq2t+fr63tzfmYADAi1BAAwAAcMkODw//f/buPLyt6s7/+LlXq23Z8h5bjm3kTRIQAoHEIZS1CQEaIC2ENWwBSksHGGhpZ6BDy9MHaJ+ZFpqWsrZAaYACKWVrCk3YFzuQkJAUS96ENzl4jW3Z1mLp/v7QjH9pLDmObF/L9vv1l3LPV/d8HIwif310jtPp7O/vjzoqy3JhYaHVapVlWeVgAABgkmhAAwAAAABmTDgcbmpqampqCofDUQvMZrPdbk9JSVE5GAAAmBI0oAEAAAAAM6Ovr6+mpmZoaCjqqCzLVqu1qKhIkiSVgwEAgKlCAxoAAAAAoLaRkZHGxsa2tjZFUaIWZGZm2u12o9GocjAAADC1aEADAAAAAFTV3d3tcrl8Pl/UUa1WW1ZWZrFYVE4FAACmAw1oAAAAAIBKgsFgQ0ODx+OJVZCdnW2z2QwGg5qpAADA9KEBDQAAAABQQ0dHh8vlCgaDUUf1en1FRUVubq7KqQAAwLSiAQ0AAAAAmF5+v7+2trazszNWQV5eXnl5uU6nUzMVAABQAQ1oAAAAAMA08ng8dXV1oVAo6qjRaLTb7ZmZmSqnAgAA6qABDQAAAACYFsPDw06ns7e3N+qoJEkFBQWlpaUajUblYAAAQDU0oAEAAAAAU0xRlObmZrfbHQ6HoxaYTCa73Z6WlqZyMAAAoDIa0AAAAACAqeT1emtqagYGBqKOyrJcXFxcXFwsy7LKwQAAgPpoQAMAAAAApkY4HG5qampqaoq18NlsNtvt9pSUFJWDAQCAmUIDGgAAAAAwBfr6+mpqaoaGhqKOyrJstVqLiookSVI5GAAAmEE0oAEAAAAAkzIyMtLY2NjW1qYoStSCrKwsm81mNBpVDgYAAGYcDWgAAAAAQPy6u7tdLpfP54s6qtPpSktLLRaLyqkAAECCoAENAAAAAIhHMBisq6vbt29frILc3FybzabT6dRMBQAAEgoNaAAAAADAYevo6HC5XMFgMOqoXq+32Ww5OTkqpwIAAImGBjQAAAAA4DD4/f7a2trOzs5YBRaLpaysTKvl500AAEADGgAAAAAwYR6Pp66uLhQKRR1NSkqy2+0ZGRkqpwIAAAmLBjQAAAAA4NCGh4edTmdvb2/UUUmSCgoKSktLNRqNysEAAEAiowENAAAAABiPoijNzc2NjY2KokQtMJlMdrs9LS1N5WAAACDx0YAGAAAAAMTk9XpramoGBgaijsqyXFxcXFxcLMuyysEAAMCsQAMaAAAAABBFOBx2u93Nzc2xFj6bzWaHw5GcnKxyMAAAMIvQgAYAAAAAHGz//v1Op3NoaCjqqFarLSkpKSgokCRJ5WAAAGB2oQENAAAAAPj/RkZG6uvrPR5PrIKsrCybzWY0GtVMBQAAZika0AAAAACA/9XV1eVyufx+f9RRnU5XWlpqsVhUTgUAAGYvGtAAAAAAABEIBOrr6/ft2xerIDc312az6XQ6NVMBAIDZjgY0AAAAAMx3HR0dLpcrGAxGHTUYDBUVFTk5OSqnAgAAcwANaAAAAACYv3w+n8vl6u7ujlVgsVjKy8s1Go2aqQAAwJxBAxoAAAAA5iNFUdrb2+vq6kKhUNSCpKQku92ekZGhcjAAADCX0IAGAAAAgHnH6/W6XK6+vr6oo5IkFRUVWa1WWZZVDgYAAOYYGtAAAAAAMI+Ew+GWlpbGxkZFUaIWmEwmh8ORmpqqcjAAADAn0YAGAAAAgPliYGDA6XQODAxEHZVlubi4uLi4mIXPAABgqtCABgAAAIC5LxwOu93u5ubmWAufzWazw+FITk5WORgAAJjbaEADAAAAwBy3f/9+p9M5NDQUdVSr1ZaUlBQUFEiSpHIwAAAw59GABgAAAIA5a2RkpL6+3uPxxCrIysqy2WxGo1HNVAAAYP6gAQ0AAAAAc1NXV5fL5fL7/VFHdTpdWVlZfn6+yqkAAMC8QgMaAAAAAOaaQCBQW1vb0dERqyA3N9dms+l0OjVTAQCAeYgGNAAAAADMKR0dHS6XKxgMRh01GAwVFRU5OTkqpwIAAPMTDWgAAAAAmCN8Pp/T6ezp6YlVYLFYysvLNRqNmqkAAMB8RgMaAAAAAGY9RVHa29vr6upCoVDUgqSkJLvdnpGRoXIwAAAwz9GABgAAAIDZzev1ulyuvr6+qKOSJBUVFZWUlEiSpHIwAAAAGtAAAAAAMFuFw+GWlpbGxkZFUaIWmEwmh8ORmpqqcjAAAIAIGtAAAAAAMCv19fU5nc7BwcGoo7IsW63WoqIiFj4DAIAZRAMaAAAAAGaZcDjsdrubm5tjLXxOT0+32+3JyckqBwMAADgIDWgAAAAAmE32799fU1MzPDwcdVSr1ZaUlBQUFLDwGQAAJAIa0AAAAAAwO4yMjNTX13s8nlgF2dnZNpvNYDComQoAAGAcNKABAAAAYBbo6upyuVx+vz/qqF6vLy0tzc/PVzkVAADA+GhAAwAAAEBCCwQCLpers7MzVkFubq7NZtPpdGqmAgAAmAga0AAAAACQuNrb2+vr64PBYNRRo9Fos9mysrJUTgUAADBBNKABAAAAIBH5fD6n09nT0xOrwGKxlJeXazQaNVMBAAAcFhrQAAAAAJBYFEVpb2+vq6sLhUJRC1JSUux2u9lsVjkYAADA4aIBDQAAAAAJZHBwsKampr+/P+qoLMuFhYUlJSWSJKkcDAAAIA40oAEAAAAgIYTD4ZaWFrfbHQ6Hoxakpqba7fbU1FSVgwEAAMSNBjQAAAAAzLy+vj6n0zk4OBh1VJZlq9VaVFTEwmcAADC70IAGAAAAgJkUDofdbndzc7OiKFEL0tPT7XZ7cnKyysEAAAAmjwY0AAAAAMyYnp4ep9Pp8/mijmq12rKyMovFonIqAACAqUIDGgAAAABmwMjISH19vcfjiVWQnZ1ts9kMBoOaqQAAAKYWDWgAAAAAUFtXV5fL5fL7/VFH9Xp9RUVFbm6uyqkAAACmHA1oAAAAAFBPIBCora3t6OiIVZCbm2uz2XQ6nZqpAAAApgkNaAAAAABQSXt7e319fTAYjDpqNBrtdntmZqbKqQAAAKYPDWgAAAAAmHY+n8/pdPb09EQdlSQpPz+/vLxco9GoHAwAAGBa0YAGAAAAgGmkKEpbW1tDQ0MoFIpaYDKZbDab2WxWORgAAIAKaEADAAAAwHTxer1Op7O/vz/qqCzLhYWFJSUlkiSpHAwAAEAdNKABAAAAYOqFw+GWlha32x0Oh6MWmM1mm81mMplUDgYAAKAmGtAAAAAAMMX6+vqcTufg4GDUUVmWrVZrUVERC58BAMCcRwMaAAAAAKZMOBx2u93Nzc2KokQtSE9PdzgcSUlJKgcDAACYETSgAQAAAGBqdHd3u1wun88XdVSr1ZaVlVksFpVTAQAAzCAa0AAAAAAwWcFgsKGhwePxxCrIzs622WwGg0HNVAAAADOOBjQAB9irWQAAIABJREFUAAAATEpHR4fL5QoGg1FH9Xq9zWbLyclRORUAAEAioAENAAAAAHEKBAIul6uzszNWQV5eXnl5uU6nUzMVAABA4qABDQAAAADx8Hg89fX1IyMjUUeNRqPdbs/MzFQ5FQAAQEKhAQ0AAAAAh2d4eNjpdPb29kYdlSQpPz+/vLxco9GoHAwAACDR0IAGAAAAgIlSFKWtra2hoSEUCkUtSElJcTgcaWlpKgcDAABITDSgAQAAAGBCvF6v0+ns7++POirLcmFhodVqlWVZ5WAAAAAJiwY0AAAAABxCOBxuampqamoKh8NRC8xms91uT0lJUTkYAABAgqMBDQAAAADj6evrq6mpGRoaijoqy7LVai0qKpIkSeVgAAAAiY8GNAAAAABENzIy0tjY2NbWpihK1ILMzEy73W40GlUOBgAAMFvQgAYAAACAKLq7u10ul8/nizqq1WrLysosFovKqQAAAGYXGtAAAAAA8C+CwWBDQ4PH44lVkJ2dbbPZDAaDmqkAAABmIxrQAAAAAPD/dXR0uFyuYDAYdVSv19tstpycHJVTAQAAzFI0oAEAAABACCH8fn9tbW1nZ2esgry8vPLycp1Op2YqAACAWY0GNAAAAAAIj8dTX18/MjISddRoNNrt9szMTJVTAQAAzHY0oAEAAADMa8PDw06ns7e3N+qoJEkFBQWlpaUajUblYAAAAHMADWgAAAAA85SiKM3NzW63OxwORy1ISUlxOBxpaWkqBwMAAJgzaEADAAAAmI+8Xq/T6ezv7486KstyYWGh1WqVZVnlYAAAAHMJDWgAAAAA80s4HG5qampqaoq18NlsNtvt9pSUFJWDAQAAzD00oAEAAADMI319fTU1NUNDQ1FHZVm2Wq1FRUWSJKkcDAAAYE6iAQ0AAABgXggGg1988UVzc7OiKFELsrKybDab0WhUORgAAMAcRgMaAAAAwNzX1dX10UcfxVr4rNPpSktLLRaLyqkAAADmPBrQAAAAAOayYDBYV1e3b9++WAW5ubk2m02n06mZCgAAYJ6gAT1Zer1+piNMPY1Gc9AVvV4vDIYZCYPZQqvVGvgmwbhGX1tkWea7BRPBCwsOafSFRaPR8N2CqNrb27/44otAIBB11GAwHHXUUQsWLFA5FRKZVvu/PybzwoJDkmVZCKHT6dg1HuMb/R0nLyyYn2hAT5bJZJp7/9KM6HShf71iMpmk1NSZSYNZwmAw8O8oJkin07HKDBNhNBrZiRUTxAsLxhoeHt65c2dbW1usguLi4uOOO25OLijBlNDr9Xx7YCKSkpJmOgJmDX5wxvxEA3qyent7Y51hMnsZfL6DfoDr7e1VgiMzkwazQVZW1uDgoM/nm+kgSGhardZsNgsh/H6/1+ud6ThIaJIkZWZm8sKCQ9LpdGlpaUIIn883ODg403GQQDweT21tbSgUijqalJTkcDgyMjIGBgZUDobEp9frU1NThRDDw8OxNg0HImRZjrySxPqYBRBhMBhMJpMQYmhoaHh4eKbjTIusrKyZjoDERQN6shRFmXsN6LHmyZeJSeKbBOM78DuE7xZMBP/64JB4YcFYw8PDTqezt7c36qgkSQUFBaWlpRqNhu8ZRMULCw4X71hwSLywYJ6jAQ0AAABgLlAUpbm5ubGxMdbP9unp6UceeSR7+wAAAKiJBjQAAACAWc/r9dbU1MTaUkOW5SOOOGLJkiWDg4N+v1/lbAAAAPMZDWgAAAAAs1g4HHa73c3NzbEWPpvNZofDYTKZZFlWORsAAABoQAMAAACYrfbv3+90OmOdFKfVaktKSgoKCiRJUjkYAAAAImhAAwAAAJh9RkZGGhsb29raYi18zsrKstls7PgMAAAws2hAAwAAAJhlurq6XC5XrN2cdTpdaWmpxWJRORUAAADGogENAAAAYNYIBAL19fX79u2LVZCbm2uz2XQ6nZqpAAAAEAsNaAAAAACzQ0dHh8vlCgaDUUcNBkNFRUVOTo7KqQAAADAOGtAAAAAAEp3P53O5XN3d3bEKLBZLWVmZVssPOAAAAImF92cAAAAAEprH46mrqwuFQlFHk5KS7HZ7RkaGyqkAAAAwETSgAQAAACSo4eHhmpqa/fv3Rx2VJKmoqMhqtcqyrHIwAAAATBANaAAAAAAJJxwOt7S0NDY2KooStcBkMtnt9rS0NJWDAQAA4LDQgAYAAACQWAYGBpxO58DAQNRRWZaLi4uLi4tZ+AwAAJD4aEADAAAASBThcNjtdjc3N8da+Gw2mx0OR3JyssrBAAAAEB8a0AAAAAASwv79+51O59DQUNRRrVZbUlJSUFAgSZLKwQAAABA3GtAAAAAAZtjIyEh9fb3H44lVkJWVZbPZjEajmqkAAAAweTSgAQAAAMykrq4ul8vl9/ujjup0urKysvz8fJVTAQAAYErQgAYAAAAwMwKBQH19/b59+2IV5Obm2mw2nU6nZioAAABMIRrQAAAAAGZAR0eHy+UKBoNRRw0GQ0VFRU5OjsqpAAAAMLVoQAMAAABQlc/nczqdPT09sQosFkt5eblGo1EzFQAAAKYDDWgAAAAAKlEUpb29va6uLhQKRS1ISkqy2+0ZGRkqBwMAAMA0oQENAAAAQA1er9flcvX19UUdlSSpqKiopKREkiSVgwEAAGD60IAGAAAAML3C4XBLS0tjY6OiKFELTCaTw+FITU1VORgAAACm26Qa0AMDA2+//XZ1dfXevXubmpo6OzuHhoaEEMnJyTk5OcXFxUcffXRlZeXpp5/OW0kAAABgfurr63M6nYODg1FHZVm2Wq1FRUUsfAYAAJiT4mlAK4ryj3/848EHH3zjjTf8fv/Ygv3793s8nt27d7/yyitCCIPBsHr16u9973tnnnnmZPMCAAAAmCXC4bDb7W5ubo618Dk9Pd1utycnJ6scDAAAAKo57Ab0+++/f9ttt3366acHXszLyysuLs7JyUlKSpJleXBwsKur68svv9y3b58Qwu/3v/LKK6+88soJJ5zwq1/96uSTT56y+AAAAAAS0v79+2tqaoaHh6OOarXakpKSgoICFj4DAADMbYfRgB4cHPz+97//yCOPRP5YUFBw/vnnn3322cuXL8/Ozo76lM7Ozurq6i1btrz88sttbW2ffvrpKaeccsMNN/zyl79MSUmZgvgAAAAAEszIyEh9fb3H44lVkJ2dbbPZDAaDmqkAAAAwI+QJ1tXX1y9dujTSfV6xYsVLL73U1NT04IMPrlmzJlb3WQiRk5OzZs2aBx98sKmp6aWXXjrppJOEEI888sjSpUsbGhqm5AsAAAAAkDi6urqqq6tjdZ/1er3D4TjmmGPoPgMAAMwTE10BXVlZ2dPTU1hYuHHjxrVr1x7uNBqNZu3atWvXrv3rX/96880319TULFu2rLu7+3DvAwAAACAxBQIBl8vV2dkZqyA3N9dms+l0OjVTAQAAYGZNdAV0T0/PFVdcsXfv3ji6zwdau3btnj171q9f39PTM5n7AAAAAEgc7e3t1dXVsbrPRqNx8eLFRx99NN1nAACA+WaiK6A3btx40003TcmUZrP56aefXrp06ZTcDQAAAMAM8vl8TqdznPUlFoulvLxco9GomQoAAAAJYqIN6KnqPo+6+eabp/aGAAAAANSkKEp7e3tdXV0oFIpakJSU5HA40tPTVQ4GAACAxDHRBjQAAAAAjPJ6vU6ns7+/P+qoLMuFhYUlJSWSJKkcDAAAAAmFBjQAAACAwxAOh1taWtxudzgcjlpgMpkcDkdqaqrKwQAAAJCAaEADAAAAmKi+vj6n0zk4OBh1VJZlq9VaVFTEwmcAAABE0IAGAAAAcGjhcNjtdjc3NyuKErUgPT3dbrcnJyerHAwAAACJjAY0AAAAgEPo6elxOp0+ny/qqFarLSsrs1gsKqcCAABA4qMBDQAAACCmkZGR+vp6j8cTqyA7O9tmsxkMBjVTAQAAYLagAQ0AAAAguq6uLpfL5ff7o47q9frS0tL8/HyVUwEAAGAWkeN+5oUXXnjDDTccsmz37t3p6elr1qyJeyIAAAAAKgsEAnv27Pn8889jdZ9zc3MrKyvpPgMAAGB88a+A3rx5c0FBwSHLsrOz+/r6tm/fHvdEAAAAANTU3t5eX18fDAajjhqNRrvdnpmZqXIqAAAAzEbTvgXH1q1bhRB9fX3TPREAAACASfL5fE6ns6enJ+qoJEn5+fnl5eUajUblYAAAAJilDq8B/fDDDz/88MOjf+zo6Dj22GPHqd+/f39TU5MQorCwML58AAAAAFSgKEpbW1tDQ0MoFIpaYDKZbDab2WxWORgAAABmtcNrQPf09OzevXv0j8Fg8MA/juPGG288vFwAAAAA1DI4OFhTU9Pf3x91VJblwsLCkpISSZJUDgYAAIDZ7vAa0Hfcccell15aVVVVVVW1ceNGvV6/dOnScer1ev3ChQsvuOCC888/f3I5AQAAAEy9cDjc0tLidrvD4XDUgtTUVLvdnpqaqnIwAAAAzA2HvQe01Wq1Wq2XXnrpxo0bc3JyPvjgg+mIBQAAAGC69fX1OZ3OwcHBqKOyLFut1qKiIhY+AwAAIG7xH0J4yy23pKenT2EUAAAAAOoIh8Nut7u5uVlRlKgF6enpDocjKSlJ5WAAAACYY+JvQD/wwANTmAMAAACAOnp6epxOp8/nizqq1WrLysosFovKqQAAADAnxd+ABgAAADC7BIPBhoYGj8cTqyA7O9tmsxkMBjVTAQAAYA6jAQ0AAADMCx0dHS6XKxgMRh3V6/U2my0nJ0flVAAAAJjbaEADAAAAc1wgEKitre3o6IhVkJeXV15ertPp1EwFAACA+YAGNAAAADCXtbe319fXx1r4bDQa7XZ7ZmamyqkAAAAwT9CABgAAAOam4eFhp9PZ29sbdVSSpPz8/PLyco1Go3IwAAAAzB80oAEAAIC5RlGUtra2hoaGUCgUtcBkMtnt9rS0NJWDAQAAYL6hAQ0AAADMKV6v1+l09vf3Rx2VZbmwsNBqtcqyrHIwAAAAzEPxNKA9Hk9PT09mZqbFYhm/JisrKzc3t66uTghht9vjjwkAAADgUMLhcFNTU1NTUzgcjlpgNpvtdntKSorKwQAAADBvxbPq4a233lq0aNHXv/71cWrOOOOMRYsWvfXWW729vQ6Hw+FwxJsQAAAAwKH19fVt377d7XZH7T7LslxaWrpkyRK6zwAAAFBTPA3oCy+8MCMjw+l0vvvuu1EL3nnnHZfLlZmZecEFF0wuHgAAAIBDCIVCDQ0NO3fuHBoailqQmZm5fPny4uJiSZJUzgYAAIB5Lp4GtNFovOKKK4QQjz76aNSCyPUrrrjCaDROJhwAAACA8XV3d1dXVzc1NSmKMnZUq9Xa7fZjjz2Wd+YAAACYEXEePPLtb39bCLF58+bu7u6Dhrq6uv7yl7+M1gAAAACYDsFg0Ol07t692+fzRS3Izs6urKwc5+AWAAAAYLrF2YA+6qijVqxY4ff7n3zyyYOGnnzySb/ff9JJJx155JGTTQcAAAAgmo6OjqqqKo/HE3VUr9cvWrTomGOOMRgMKgcDAAAADhRnA1r83wLnxx577KDrkSssfwYAAACmg9/v37Nnz969e4PBYNSCvLy8ysrKnJwclYMBAAAAY8XfgL7ooovS09NdLtc777wzevHtt9+ura1NT09ft27dFKQDAAAAcACPx1NdXd3Z2Rl11Gg0HnvssUceeaROp1M5GAAAABBV/A3opKSkyy+/XPzrUYSRx+vXr09KSpp8OAAAAAARw8PDn332mdPpHBkZGTsqSdLChQsrKyszMzPVzwYAAADEEn8DWhxwFGFXV5fg+EEAAABgGiiK0tTUVF1d3dvbG7UgJSXl+OOPr6io0Gg0KmcDAAAAxjepBvQxxxxTWVkZCASeeuopIcSTTz4ZCASWL1++aNGiKYoHAAAAzGter3fHjh0NDQ3hcHjsqCzLxcXFS5cuTUtLUz8bAAAAcEiTakALIa6//nohxKOPPqooSmT/jcgVAAAAAJMRDofdbvenn37a398ftcBsNi9durS0tFSWJ/uuHgAAAJgmk32reskll6SlpdXW1t511111dXVpaWkXX3zxlCQDAAAA5q2+vr7t27e73e5YC59LS0uXLFmSkpKifjYAAABg4ibbgE5JSbnsssuEEPfcc48Q4vLLL+dNMAAAABC3kZGR2tranTt3Dg0NRS3IzMxcvnx5cXGxJEkqZwMAAAAO1xR8WC9y5KCiKIL9NwAAAIBJ6O7u3r59e2tra+Td9UF0Op3dbj/22GONRqP62QAAAIA4aCd/i+OOO27//v2KokiSZDabDxrNyspqb2+f/CwAAADAHBYMBuvq6vbt2xerIDc312az6XQ6NVMBAAAAkzQFDWghxNi+8yhJkvLy8qZkFgAAAGBO6ujocLlcwWAw6qher6+oqMjNzVU5FQAAADB5U9OABgAAABAHv99fW1vb2dkZqyAvL6+8vJyFzwAAAJilaEADAAAAM8Pj8dTV1YVCoaijSUlJdrs9IyND5VQAAADAFKIBDQAAAKhteHjY6XT29vZGHZUkqaCgoLS0VKPRqBwMAAAAmFryTAcAAAAA5hFFUZqamqqqqmJ1n00m0/HHH19RUUH3GQAAYLYzGo2SJF133XXqT/3OO+9IkiRJ0osvvqj+7AdiBTQAAACgEq/XW1NTMzAwEHVUluXi4uLi4mJZZpkIAAAA5gje2gIAAADTLhwONzQ0fPLJJ7G6z2azedmyZVarle4zAABA3L7zne9I/2fXrl2HrL/wwgtH630+32Smvvfeex9++OHJ3GGu4t0tAAAAML3279+/ffv2pqYmRVHGjsqyXFpaumTJkuTkZPWzAQAAzFVPPvnk+AW9vb2vvfbalMzldrvvvPNOGtBR0YAGAAAApsvIyEhtbe1nn302NDQUtSArK2v58uXFxcWSJKmcDQAAYK4ymUxCiE2bNgUCgXHKnn32Wb/fPyWLAKqqqiZ/k7lqChrQ77777ne/+93jjz8+MzNTq9WOjIyMDj311FPj/2cGAAAA5qru7u7t27e3trZGXfis0+nsdvvixYuNRqP62QAAAOawRYsW5eTkdHV1jb/A+amnnhJCLF++fPIzVldXT/4mc9WkGtBer/f8888/7bTTHn744Z07d/b29oZCodHR3bt3X3311cccc0xDQ8OkcwIAAACzRiAQ+OKLL3bv3h1rJ8Hc3Nzly5dbLBaVgwEAAMwHgUDg3HPPFUI88cQTsWqcTuf27ds1Gs0ZZ5wRq6axsfG222475phj0tLSjEZjYWHh2rVr//znPx+4vODf//3fJUn69a9/LYTYvXt3ZDvpCy+88MD7RA75qKqqWrdu3cKFC/V6fU5Oztlnn71169ao8+7du/e73/2uw+FIS0szGAwWi2XNmjVPPPHEgQt/R/l8vnvuuWfx4sUmk8lsNh933HH33XffJPeznlrxN6AVRTn//PNfeeUVIURqaurY/1SRfb5dLteaNWv8fv9kUgIAAACzRUdHR3V19b59+6KO6vX6RYsWHX300TqdTuVgAAAA84Tf77/ggguEEFu2bIn1riyy/Pm0005LS0uLWvD73//e4XDcf//9e/bs8Xq94XC4tbX15ZdfvuSSS1atWuX1eiNl6enpBQUFer1eCKHT6QoKCgoKCrKysg68lcFgePrpp08++eQXX3yxra0tGAx2dXX9/e9/P/PMM5955pmD5r333nsXL1788MMPO53OoaEhjUbT3t7++uuvb9iwYfny5R0dHQcW9/f3r1ix4sc//vHnn38+ODgYDAZ37959xx13fO1rXxtNOOPib0A///zzb731lkaj+e///u/Ozs5t27YdVHDVVVdt2bLFaDQ6nc5xftsAAAAAzA0+n2/Xrl179+4NBoNRCywWy/Lly3NyclQOBgAAMK+EQqFVq1bl5OSEQqGnn356bEE4HP7Tn/4khLjsssvC4fDYgtdff/36668PBAKnnXbaBx98MDQ0NDw8XF9ff8stt2g0mm3btq1fvz5S+dOf/rS1tXXp0qVCiCOPPLK1tbW1tfWRRx458G5NTU3f/va3L7roop07dw4ODra1tT3wwAM6nU5RlFtvvfXALSWefPLJO++8MxwOL1u27N133/X7/UNDQ21tbT/60Y+EEDt27Fi3bt2B66+///3vf/bZZ0KIDRs2tLa2Dg0NDQ4OPv/8821tbf/1X/81+b/JKRF/AzrSnr/pppt+8IMfGAyGqDVnnXXWHXfcIYTYvHlz3BMBAAAAic/j8VRXV/f09EQdTUpKOu644+x2u1arVTkYAADAfBMOh3U63ZVXXili7MKxbdu21tbWlJSUiy66aOxxHaFQ6JZbblEUZcWKFW+++eZJJ51kNBo1Gk1paekDDzxw3333CSFefvnld999d4J5Xn311Q0bNmzatOm4445LTk62WCy33HLLNddcI4To6OjYvXt3pCwQCPzwhz8UQhxxxBHbtm075ZRTNBqNEMJisfz85z+/9dZbhRDvvffeq6++Gqnv6OiIfHWnnnrq448/XlBQIIRISkpat27d3/72tz179hzu39s0ib8BvWPHDiHETTfdNH7ZFVdcIYQY/XsEAAAA5pjh4eGdO3c6nc4DV6+MkiRp4cKFlZWVGRkZ6mcDAACYt6699lohRE1NzdgTAiP7b6xbt85kMo194rZt2yJn2t19991jt027+eabU1NThRDPPffcBJOkpKTce++9B12M7FIthGhra4s82LJlS2dnpxDi1ltvHRvshz/8YWQv6WeffTZy5fXXX4+8/7zxxhslSTqw+Ljjjjv77LMnGG+6xd+A7urq0ul0xcXF45cVFhbKsrx///64JwIAAAASUzgcbmpqqqqqivV212QyHX/88RUVFZGfFgAAAKAah8Nx4oknijGLoAcGBl566SUhxIYNG6I+cXRp8/Lly8eOGgyGZcuWCSG2b98+wSQnnnii2Ww+6GJeXl7kwVdffRV58OGHH0YerFq1auxN8vLy7Ha7EOKTTz6JXIlsvhEr5+mnnz7BeNMt/vfBOp0uFApFXeVxoMHBwXA4nJKSEvdEAAAAQALyer07duxoaGgY+7FNIYQsy1ar9YQTToh1rA0AAACmW2QR9HPPPTc8PDx68YUXXhgaGiovLz/55JOjPiuy/FkIkZqaKkUTOQzP7XZPMEZkc4yDjO7MNjIyEnlQX18feVBeXh71PqWlpZF5I+8/m5qahBCyLC9cuHBscUlJyQTjTbf4G9BWqzUcDu/cuXP8sr/+9a9CiEMulAYAAABmi3A43NDQ8MknnwwMDEQtMJvNy5Yts1qtLHwGAACYQRdffLHJZOrr64sseY6I7L8R2YI5qt7e3oncvL+/f4IxJngKSF9fnxAiOTk5Vn1k649wOOz1eoUQkfeiycnJUd9zRt1dZEbE/4Z45cqVQoj//M//jHXGtxCipqbm9ttvFzHWjQMAAACzzv79+7dv397U1BR14bNWq62oqFiyZElycrL62QAAAHAgk8l08cUXiwN24XC73e+//75Go7nqqqtiPSvSz5Vl2efzBWPz+XxTmzayj3PUN5kR4XD4wISRylj1owurZ1z8Deh/+7d/0+v177zzzumnn75169ZI310IEQqF2tra3n///dtuu+2EE07o6OgwGAyHPKsQAAAASHAjIyNOp3Pnzp1DQ0NRC7KyspYtW7Zw4cKDDoEBAADATInswrFt27bm5mYhxB//+EdFUVavXm2xWGI9JT09XQgRDoe7urq045raqJF5h4eHY633jay51mq1ke2OI2uch4eHo26SHFlPnQjib0CXlJQ8+OCDkiR9+OGHq1atiqwAF0IkJycvXLjwlFNOuf/++4eGhiRJevzxx4uKiqYoMAAAADADurq6qqurPR5P1FGdTudwOBYvXmw0GlUOBgAAgHGceOKJDodDUZRnnnlGCPH000+L2McPRjgcjsiDxsZGFRKOGt362eVyRS2IXB8ti2z9HA6HW1tbxxY7nc5pSXn4JrUn3XXXXffKK68ctKH16FJwIURZWdkbb7yxfv36ycwCAAAAzKBAIPDFF198/vnnfr8/akFubu7y5cvz8/NVDgYAAICJiCyCfu211yInSGdnZ5933nnj1I8eTnjgztEHeuqppz7//PMpz3nSSSdFHrz55ptjR91ud+R0xNGyRYsWRR589NFHY+v//ve/T3nC+Ez2UJQ1a9bU1tb+/e9/v+OOOy6++OIzzzzzrLPOuuSSS+6+++633367traW3Z8BAAAwe3V0dFRXV+/bty/qqMFgWLRo0dFHH63T6VQOBgAAgAm68sordTpdVVXVn/70JyHE+vXrx3/zdtppp5WWlgohHnnkkZqamoNG33jjjauvvnrx4sWRwwwj9Hq9EGL//v2TyXnWWWcVFBQIIX7961+Pbnc86r777os8GF2+fc4550Qe/OY3vzlwTbAQ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/qeffvr8+fNXvuP58+effvrp97///R0dHb/927+dz+ff8pa3vPzyyz/xEz9xw+EBAPaSzc3NbDZ76tSptbW1wIWWlpZ77703lUqFHAwAAOAmiV/96h133PG1r33td37nd377t397eXn52WefffbZZ6PR6PHjx0+cOPGmN72ppaWlpqYmGo2urq7OzMy8/vrr3/nOd06fPn3xdE9dXd3jjz/+K7/yK5WVlTfnywEA2KVmZ2dzudz6+nrgtLKysqenp62tLeRUAAAAN9U1FNCRSKSysvJXf/VXf/Znf/b3f//3n3rqqenp6VKplMvlcrncle/Y2tr6D/7BP/iFX/iF22677QbSAgDsPRsbG7lcbmZmptxCa2trOp1OJBJhpgIAAAjBtRXQ22677baPfexjv/7rv/4Xf/EXn//8519++eVXX331woULl6wdOnTozjvvfPvb3/7e97733e9+dzx+Pc8FALCnTU1NDQ0Nlfv45WQymU6nm5ubQ04FAAAQjusvhePx+A//8A//8A//8PZ/Li4uzs3NbV/QsLq6urm5uaGhYWcyAgDsQfl8PpvNzs/PB06j0WhbW1tfX19FRUXIwQAAAEKzY6eSGxoaNM4AAJFIpFQqTU1NDQ4Obm1tBS7U1tZmMhnfOwEAAPuey2IAAOyklZWVgYGBy69Oti0Wix07dqy7uzsajYYcDAAAIHwKaACAnVEsFicmJkZHR4vFYuBCfX19JpOpr68PORgAAMCtEruO+8zOzj7++OOZTKaqqqqmpuaee+753d/93dXV1R0PBwCwVywuLn79618fHh4ObJ9jsVhPT89b3/pW7TMAAHCgXPMJ6Ndee+1HfuRHpqamLt5y6tSpU6dO/Zf/8l++8IUv3H777TsaDwBgtysWi6Ojo+Pj46VSKXChsbExk8nU1NSEHAwAAOCWu7YCen19/cEHH9xun+vq6k6cOFEqlf7qr/5qdXX1u9/97k//9E+/+OKLsdj1nKoGANiL5ufns9lsPp8PnMbj8d7e3lQqFXIqAACAXeLayuJPf/rTuVwuEok89thj586de/HFF1966aVz5879o3/0jyKRyMmTJz/zmc/clJgAALtMoVDIZrPf+ta3yrXPLS0t9957r/YZAAA4yK6tgN7ul+++++5PfOITF99GWldX9+///b9/xzveEYlEnn766R2PCACw20xPT7/88suTk5OB08rKyhMnTnzf931fVVVVyMEAAAB2lWu7BMc3v/nNSCTy6KOPXnKdjWg0+qEPfejFF188efLkTqYDANhlNjY2Tp8+PT09XW6htbU1nU4nEokwUwEAAOxO11ZAz8zMRCKRO+644/LRm9/85osLAAD70tTU1NDQUKFQCJwmk8lMJtPU1BRyKgAAgF3r2gro7Usc1tfXXz6qq6u7uAAAsM/k8/lsNjs/Px84jUajbW1tfX19FRUVIQcDAADYza6tgN4WjUZ3PAcAwO5UKpXOnDkzPDy8tbUVuFBXV5dOpxsaGkIOBgAAsPtdTwENAHBALC8vZ7PZCxcuBE5jsdixY8e6u7v9eh4AACCQAhoAIECxWBwbGxsbGysWi4ELDQ0N6XR6+ypkAAAABFJAAwBcanFxMZvNrqysBE5jsVhXV1dHR4eDzwAAAFd2PQX0//2//3doaOiSGycmJrb/cPloW29v73U8FwBAmIrF4ujo6Pj4eKlUClxobGzs7++vrq4OORgAAMBedD0F9Pvf//4rTPv6+gJvL/dTHADALjE3N5fL5fL5fOA0Ho/39vamUqmQUwEAAOxdLsEBABApFArDw8OTk5PlFlpaWtLpdFVVVZipAAAA9rprK6Afe+yxm5QDAOBWmZ6ezuVyhUIhcFpZWZlOp48cORJyKgAAgH3g2groP/iDP7hJOQAAwrexsZHL5WZmZsotHD16tK+vL5FIhJkKAABg33AJDgDggJqcnBwaGtrc3AycJpPJTCbT1NQUcioAAID9RAENABw4a2tr2Wz2/PnzgdNoNNrW1tbX11dRURFyMAAAgH1GAQ0AHCClUunMmTPDw8NbW1uBC7W1tf39/YcOHQo5GAAAwL6kgAYADorl5eVsNnvhwoXAaSwWO3bsWFdXVywWCzkYAADAfqWABgD2v2KxODY2NjY2ViwWAxcaGhoymUxtbW3IwQAAAPY3BTQAsM8tLi4ODAysrq4GTmOxWFdXV0dHRzQaDTkYAADAvqeABgD2rc3NzZGRkTNnzpRKpcCFpqamTCaTTCZDDgYAAHBAKKABgP1pbm4ul8vl8/nAaTwe7+3tTaVSIacCAAA4UBTQAMB+UygUhoeHJycnyy20tLSk0+mqqqowUwEAABxACmgAYF+Znp7O5XKFQiFwWllZefz48dbW1pBTAQAAHEwKaABgn1hfXz99+vTMzEy5haNHj/b19SUSiTBTAQAAHGQKaABgP5icnBwcHNza2gqcJpPJTCbT1NQUcioAAIADTgENAOxta2tr2Wz2/PnzgdNoNNre3t7T01NRURFyMAAAABTQAMBeVSqVxsfHR0dHi8Vi4EJdXV0mkzl06FDIwQAAANimgAYA9qTl5eWBgYGlpaXAaSwW6+zs7OzsjMViIQcDAADgIgU0ALDHFIvFsbGxsbGxcgefGxoaMplMbW1tyMEAAAC4hAIaANhLFhcXBwYGVldXA6exWKyrq6ujoyMajYYcDAAAgMspoAGAvWFzc3NkZOTMmTOlUilwobm5OZ1OJ5PJkIMBAABQjgIaANgD5ubmcrlcPp8PnCYSiZ6enlQqFXIqAAAArkwBDQDsaoVCYXBw8OzZs+UWWltb0+l0IpEIMxUAAABXQwENAOxe09PTuVyuUCgETisrK9Pp9JEjR0JOBQAAwFVSQAMAu9Ha2to3vvGNc+fOlVtIpVK9vb3xuG9mAAAAdi8/swEAu87k5OTg4ODm5mbgtLq6OpPJHD58OORUAAAAXCsFNACwi6ytrWWz2fPnzwdOo9Foe3t7T09PRUVFyMEAAAC4DgroG1VdXR2NRm91ih0WveztzDU1NZHa2lsShr2isrIyFovd6hTsahf/hsTj8VovKVymVCoNDw/ncrlisRi4cOjQobe85S2NjY0hB2M388LC1dv+pr2qqsqle7iyi7/jTCQSXli4su0XlmQy6cOQuTIvLBxwvve6UVVVVfuvdNuKx7f++i1VVVXRZPLWpGGPiMfjfpzjKlVUVCS9pPDXLSwsvPLKK+UOPldUVKTT6f7+/v33by47JR6POxfP1UgkEnoirpIXFq6SFxaunh+cOZj8pb9RCwsLpVLpVqfYYcl8/pJ/PM+fP18qBF+IEyKRSEtLy+rq6tra2q0Owq4Wj8e3z66ur68vLS3d6jjsFsVicXR0dHx8vNy/pw0NDf39/TU1NeXqaQ6yRCLR0NAQiUTy+fzy8vKtjsOuFovFmpqalpeX19fXb3UWdrXKyspDhw5FIpG1tbWVlZVbHYddraKi4vDhw0tLSxsbG7c6C7taVVVVfX19JBJZW1tbXV291XFuipaWllsdgd1LAQ0A3DILCwvZbLbcd+HxeLy7u7u9vX3/Xe0KAADggFBAAwC3wObm5tDQ0OTkZLmFtra2TCajegYAANjTFNAAQNhmZ2dzuVy5d8EnEone3t4TJ04sLy/n8/mQswEAALCDFNAAQHg2NjaGhobOnj1bbqG1tTWdTldWVoaZCgAAgJtEAQ0AhGR6ejqXyxUKhcBpVVXV8ePHjxw5EnIqAAAAbh4FNABw0+Xz+VwuNzc3V24hlUr19fVVVFSEmQoAAICbTQENANxEpVJpampqcHBwa2srcKG6ujqTyRw+fDjkYAAAAIRAAQ0A3CzLy8u5XG5xcTFwGo1GOzo6urq6YrFYyMEAAAAIhwIaANh5xWJxYmJiZGSkVCoFLtTV1fX399fX14ccDAAAgDApoAGAHba0tJTNZpeWlgKnsViss7Ozs7PTwWcAAIB9TwENAOyYYrE4Ojo6Pj5e7uBzQ0NDf39/TU1NyMEAAAC4JRTQAMDOWFhYyGazq6urgdN4PN7d3d3e3h6NRkMOBgAAwK2igAYAbtTm5ubQ0NDk5GS5hebm5nQ6nUwmw0wFAADALaeABgBuyOzsbC6XW19fD5wmEone3t62traQUwEAALAbKKABgOu0sbFx+vTp6enpcgutra3pdDqRSISZCgAAgN1DAQ0AXI/p6elcLlcoFAKnVVVVx48fP3LkSMipAAAA2FUU0ADAtcnn89lsdn5+vtxCKpXq6+urqKgIMxUAAAC7kAIaALhapVJpampqcHBwa2srcKG6ujqTyRw+fDjkYAAAAOxOCmgA4KosLy/ncrnFxcXAaTQa7ejo6O7ujkajIQcDAABg11JAAwBvoFgsTkxMjIyMlEqlwIW6urr+/v76+vqQgwEAALDLKaABgCtZXFzMZrMrKyuB01gs1tXV1dHR4eAzAAAAl1NAAwDBisXi6Ojo+Ph4uYPPjY2NmUympqYm5GAAAADsFQpoACDAwsLCwMDA2tpa4DQej3d3d7e3tzv4DAAAwBUooAGAv2Zzc3NoaGhycrLcQktLSzqdrqqqCjMVAAAAe5ECGgD4/83OzuZyufX19cBpZWVlT09PW1tbyKkAAADYoxTQAEAkEolsbGzkcrmZmZlyC62trel0OpFIhJkKAACAPU0BDQBEpqamhoaGCoVC4DSZTKbT6ebm5pBTAQAAsNcpoAHgQMvn89lsdn5+vtxCKpXq6+urqKgIMxUAAAD7gwIaAA6oUqk0NTU1ODi4tbUVuFBdXd3f39/Y2BhyMAAAAPYNBTQAHEQrKysDAwMXLlwInMZisWPHjnV3d0ej0ZCDAQAAsJ8ooAHgYCkWixMTE6Ojo8ViMXChvr4+k8nU19eHHAwAAID9RwENAAfI4uJiNptdWVkJnMZisa6uro6ODgefAQAA2BEKaAA4EIrF4ujo6Pj4eKlUClxobGzMZDI1NTUhBwMAAGAfU0ADwP43Pz+fzWbz+XzgNB6P9/b2plKpkFMBAACw7ymgAWA/29zcHBoampycLLfQ0tKSTqerqqrCTAUAAMABoYAGgH1rdnY2l8utr68HTisrK48fP97a2hpyKgAAAA4OBTQA7EMbGxunT5+enp4ut9Da2ppOpxOJRJipAAAAOGgU0ACw30xNTQ0NDRUKhcBpMpnMZDJNTU0hpwIAAOAAUkADwP6Rz+ez2ez8/HzgNBqNtrW19fX1VVRUhBwMAACAg0kBDQD7QalUOnPmzPDw8NbWVuBCXV1dOp1uaGgIORgAAAAHmQIaAPa85eXlbDZ74cKFwGksFjt27Fh3d3c0Gg05GAAAAAecAhoA9rBisTgxMTE6OlosFgMXGhoa0ul0XV1dyMEAAAAgooAGgL1rcXExm82urKwETmOxWFdXV0dHh4PPAAAA3CoKaADYe4rF4ujo6Pj4eKlUClxobGzs7++vrq4OORgAAAB8LwU0AOwxc3NzuVwun88HTuPxeG9vbyqVCjkVAAAAXE4BDQB7RqFQGB4enpycLLfQ0tKSTqerqqrCTAUAAADlKKABYG+Ynp7O5XKFQiFwWllZmU6njxw5EnIqAAAAuAIFNADsdhsbG7lcbmZmptzC0aNH+/r6EolEmKkAAADgDSmgAWBXm5ycHBoa2tzcDJwmk8lMJtPU1BRyKgAAALgaCmgA2KXW1tay2ez58+cDp9FotK2tra+vr6KiIuRgAAAAcJUU0ACw65RKpTNnzgwPD29tbQUu1NbW9vf3Hzp0KORgAAAAcE0U0ACwuywvL2ez2QsXLgROY7HYsWPHurq6YrFYyMEAAADgWimgAWC3KBaLY2NjY2NjxWIxcKGhoSGTydTW1oYcDAAAAK6PAhoAdoXFxcWBgYHV1dXAaSwW6+rq6ujoiEajIQcDAACA66aABoBbbHNzc2Rk5MyZM6VSKXChqakpk8kkk8mQgwEAAMANUkADwK00NzeXy+Xy+XzgNB6P9/b2plKpkFMBAADAjlBAA8CtUSgUhoeHJycnyy20tLSk0+mqqqowUwEAAMAOUkADwC0wPT2dy+UKhULgtLKyMp1OHzlyJORUAAAAsLMU0AAQqvX19dOnT8/MzJRbOHr0aF9fXyKRCDMVAAAA3AwKaAAIz+Tk5NDQ0ObmZuA0mUxmMpmmpqaQUwEAAMBNooAGgDCsra1ls9nz588HTqPRaHt7e09PT0VFRcjBAAAA4OZRQAPAzVUqlcbHx0dHR4vFYuBCbW1tf3//oUOHQg4GAAAAN5sCGgBuouXl5Ww2e+HChcBpLBY7duxYV1dXLBYLORgAAACEQAENADdFsVgcGxsbGxsrd/C5oaEhk8nU1taGHAwAAABCo4AGgJ23uLg4MDCwuroaOI3FYl1dXR0dHdFoNORgAAAAECYFNADspM3NzZGRkTNnzpRKpcCF5ubmdDqdTCZDDgYAAADhU0ADwI6Zm5vL5XL5fD5wmkgkenp6UqlUyKkAAADgVlFAA8AOKBQKg4ODZ8+eLbfQ2tqaTqcTiUSYqQAAAODWUkADwI2anp7O5XKFQiFwWllZmU6njxw5EnIqAAAAuOUU0ABw/dbX10+fPj0zM1Nu4ejRo319fQ4+AwAAcDApoAHgOk1OTg4ODm5tbQVOq6urM5nM4cOHQ04FAAAAu4cCGgCu2draWjabPX/+fOA0Go22t7f39PRUVFSEHAwAAAB2FQU0AFyDUqk0Pj4+MjJSKpUCF+rq6jKZzKFDh0IOBgAAALuQAhoArtby8vLAwMDS0lLgNBaLdXZ2dnZ2xmKxkIMBAADA7qSABoA3ViwWR0dHx8fHyx18bmho6O/vr6mpCTkYAAAA7GYKaAB4AwsLC9lsdnV1NXAaj8e7u7vb29uj0WjIwQAAAGCXU0ADQFmbm5sjIyNnzpwpd/C5ubk5nU4nk8mQgwEAAMCeoIAGgGCzs7O5XG59fT1wmkgkenp6UqlUyKkAAABgD1FAA8ClNjY2hoaGzp49W26htbU1nU4nEokwUwEAAMCeo4AGgL9meno6l8sVCoXAaVVV1fHjx48cORJyKgAAANiLFNAA8P/k8/lcLjc3N1duIZVK9fb2xuP+9QQAAICr4kdoAIhEIpHJycnBwcGtra3AaXV1dSaTOXz4cMipAAAAYE9TQANw0K2trQ0MDCwsLAROo9FoR0dHV1dXLBYLORgAAADsdQpoAA6uYrE4MTExMjJSKpUCF+rq6jKZzKFDh0IOBgAAAPuDAhqAA2ppaSmbzS4tLQVOY7FYZ2dnZ2eng88AAABw3RTQABw4xWJxdHR0fHy83MHnhoaG/v7+mpqakIMBAADAPqOABuBgWVhYyGazq6urgdN4PN7d3d3e3h6NRkMOBgAAAPuPAhqAg2Jzc3NoaGhycrLcQnNzczqdTiaTYaYCAACAfUwBDcCBMDs7m8vl1tfXA6eJRKK3t7etrS3kVAAAALC/KaAB2Oc2NjaGhobOnj1bbqG1tTWdTicSiTBTAQAAwEGggAZgP5uens7lcoVCIXBaVVV1/PjxI0eOhJwKAAAADggFNAD7Uz6fz2az8/Pz5RZSqVRfX19FRUWYqQAAAOBAUUADsN+USqWpqanBwcGtra3Aherq6kwmc/jw4ZCDAQAAwEGjgAZgX1leXs7lcouLi4HTaDTa0dHR3d0djUZDDgYAAAAHkAIagH2iWCxOTEyMjIyUSqXAhbq6uv7+/vr6+pCDAQAAwIGlgAZgP1hcXMxmsysrK4HTWCzW1dXV0dHh4DMAAACESQENwN5WLBZHR0fHx8fLHXxubGzMZDI1NTUhBwMAAAAU0ADsYQsLCwMDA2tra4HTeDze3d3d3t7u4DMAAADcEgpoAPakzc3NoaGhycnJcgstLS3pdLqqqirMVAAAAMD3UkADsPfMzs7mcrn19fXAaWVlZU9PT1tbW8ipAAAAgEsooAHYSzY2NnK53MzMTLmF1tbWdDqdSCTCTAUAAAAEUkADsGdMTU0NDQ0VCoXAaTKZTKfTzc3NIacCAAAAylFAA7AH5PP5bDY7Pz9fbiGVSvX19VVUVISZCgAAALgyBTQAu1qpVJqamhocHNza2gpcqK6u7u/vb2xsDDkYAAAA8IYU0ADsXsvLy9ls9sKFC4HTWCx27Nix7u7uaDQacjAAAADgaiigAdiNisXixMTE6OhosVgMXKirq+vv76+vrw85GAAAAHD1FNAA7DqLi4vZbHZlZSVwGovFurq6Ojo6HHwGAACAXU4BDcAuUiwWR0dHx8fHS6VS4EJjY2Mmk6mpqQk5GAAAAHAdFNAA7Bbz8/PZbDafzwdO4/F4b29vKpUKORUAAABw3RTQANx6m5ubQ0NDk5OT5RZaWlrS6XRVVVWYqQAAAIAbtHsL6DNnzjzzzDPf/va3FxcX6+vrT5w48f73v7+zs/Nq7nv69OnPfOYz3/3udy9cuFBdXd3T03Pfffe9853vvLhw4cKFRx99tNzd/8N/+A+tra078DUAcBVmZ2dzudz6+nrgtLKysqenp62tLeRUAAAAwI3bpQX0d7/73d/4jd/I5/PNzc39/f3T09MvvPDCyy+//NGPfvT7vu/7rnzf559//g/+4A9KpVJdXV13d/fs7Oy3v/3tb3/72z/5kz/54Q9/eHtndXU1EolUVlZ2dHRc/giJRGLHvyIALrexsZHL5WZmZsottLa2ptNpL8sAAACwR+3GAnpjY+PjH/94Pp9/5JFH/s7f+TvRaDQSiXz2s5/9wz/8w49//OOf/OQnk8lkufueOXPmqaeeKpVKjzzyyE//9E9XVFSUSqX/9b/+1yc/+cnPfOYz73rXu3p6eiKRyMrKSiQSedOb3vR7v/d7oX1dAHyvqampoaGhQqEQOE0mk5lMpqmpKeRUAAAAwA6K3eoAAV566aVz5869+c1vfuihh7bb50gk8uM//uN33XXX3NzcCy+8cIX7fvGLX9za2nrrW9/60EMPVVRURCKRaDT6Yz/2Y3fddVckEjl58uT22nYBXV1dfXO/EgCCrK6ufutb3xoYGAhsn6PRaCqVuvfee7XPAAAAsNftxhPQL7/8ciQS+Vt/629dcvu73/3ub33rWy+99NKP/uiPlrvviRMnqqqq7rzzzktu7+rq+ta3vnX+/Pnt/9wuoGtra3cyNwBvpFQqDQ0Nfec739nc3AxcqKurS6fTDQ0NIQcDAAAAbobdWECPjo5GIpG+vr5Lbu/t7Y1EIiMjI1e47z333HPPPfdcfvvS0lIkEmlsbNz+z+1rQNfU1OxEXgCuyvLy8iuvvDI/Px84jcVix44d6+7uvvjeFwAAAGCv240F9Llz5yKRSEtLyyW3HzlyJBKJnD9/fn19vaqq6uofcGVl5eWXX45Goz/wAz+wfcvFAvq111776le/eu7cuUQi8aY3vemHfuiHbrvttsAHWVhYeOWVVy6//e67766srLz6MHvC9tVLvldlZWXkWv435wCKx+PX9H9MDpRisfj6668PDg4Wi8XAhUOHDt15550OPnMJLyy8oYvftFRUVPjbwpVt/4IzHt+NPwGxq1z8S+KFhTcUi8UikUgikXCEgiu7+LHqXlg4mHbdt18bGxtbW1uRoAs0X7xlbW3t6v/vWiqV/t2/+3fLy8s/8iM/0tnZuX3j8vJyJBL5yle+8qd/+qcXN1966aX//t//+2OPPXbfffdd/jijo6Mf+chHLr/9z//8z+vr668yzF6xmUhs/fVb6urqovvuy2RnVVVV+XeUQLOzs6+88sqFCxcCpxUVFXfccUc6nfZdO5dLJpNX+ORh+F6JROLij3ZwBT4GhqtXWVm5/w4bcTN4YeHq+cGZg2k3FtDbf7j8bEI0Gq2oqNja2rq484a2traefPLJF198sbe397HHHrt4+/YJ6I2NjQ996EPvete7Dh8+fPbs2T/+4z/+y7/8y09+8pO333775VeRBuBabW1tvfbaa7lcrlQqBS4cOXLkbW97W11dXcjBAAAAgHDsugL64m+YC4XCJb9tLpVK24ejr/KXRfl8/rd+67dOnTrV29v7xBNPfO+j/dRP/dR73vOehoaGi1eFvv322x9//PF/+S//5cmTJ5955pnLC+jbbrvtQx/60OXPsrW1tba2dtVf394Q3dy85CBiPp+PJPzyn7Kqq6sLhUK5j5XjYJqZmfn2t79d7hUyHo/fcccdHR0dkUhk/72KsiOqq6svvi8KyonFYtvfGW5ubhYKhVsdh10tGo0mk0kvLLyhioqK7R8evbDwhrZfWNbX18tdaA62XXxh2cc/OHsrAFewGwvo7WPOq6urlxTQKysr23+4mr/T58+ff+KJJ0ZGRv7G3/gbjz/++CWfN3j48OHDhw9ffq8HHnjg5MmTr776JY2k0AAAIABJREFUaqlUuuTN4KlU6h//4398+V3m5uYuBts3kpubl7yFdXV1tRS79MLQcNF2T6RGZFuhUBgeHp6cnCy3cPTo0Z6enqqqqv33+slOiUaj2y8s+Xz+VmdhV0skEhcLaC8pXFksFtvuidbX1291Fna1i1feKBQKXli4soqKiu0Xlqt/ozYHU1VV1cUXlu035e8/CmiuYNcV0JFIJJVKTUxMTE9PXzyevG37wwlbW1vf8Dpc58+f/5Vf+ZVz587dd999jz322OUfqVfO0aNHI5FIoVDY2NhwUR6A6zA9PZ3L5codF0omk3ffffeRI0eWlpZCDgYAAACEL3arAwTo6emJRCK5XO6S27dv6evru/LdV1ZWPvrRj547d+6hhx76uZ/7ucD2uVQqzc3NXX5N0unp6YhLwgNcl42NjVdfffXVV18t1z63tbXdd999t99+e8jBAAAAgFtlNxbQ73jHOyKRyJe//OVLbv/Sl74UiUR+4Ad+4Mp3//jHPz42NvbAAw888sgjgQulUunv//2//+EPf/iVV165ZPTVr341Eonccccd15cc4MCampo6efLk9q/xLpdMJu+6664TJ074KHkAAAA4UHZjAf22t72ts7NzaGjov/7X/7p9SLlUKv3xH//x6dOnjx079va3v/3i5qc//elPfepTp0+fvnjLSy+99LWvfe3YsWMf/vCHyz1+NBp997vfHYlEPvGJT1y8b6lUeu65555//vlIJPLAAw/cpC8NYP9ZW1v75je/OTAwEHjwORqNplKpe++9t6mpKfxsAAAAwK21G68BXVFR8Uu/9Ev/4l/8i2eeeeZ//+//nUqlJicnz58/X1tb+0//6T/93ktqfPnLXz579mxvb+/x48e3b/nsZz8biUSWlpZ+6Zd+6fJHbmpq+vVf//VIJPLwww8PDAy89tprv/zLv3zbbbc1NjaeOXNm+4KkH/jAB+6+++4wvk6APa5UKp05c2Z4eHhraytwoa6uLpPJHDp0KORgAAAAwC6xGwvoSCTS1dX1b/7Nv3n66ae/+c1vZrPZxsbG97znPR/4wAdaW1uvfMftDyleWFhYWFgoN41EIvF4/GMf+9jnP//5F154YWJiYmZm5tChQ+94xzvuv//+EydO7PiXA7D/LC8vZ7PZCxcuBE5jsdixY8e6urpisd34VhsAAAAgHLu0gI5EIq2trb/4i7945Z2nnnrqkluefPLJq3z8eDz+wAMPuNoGwLUqFotjY2NjY2PFYjFwoaGhIZPJ1NbWhhwMAAAA2G12bwENwC60uLg4MDCwuroaOI3FYl1dXR0dHdFoNORgAAAAwC6kgAbgqmxtbb3++uvj4+PbHw97uaampkwmk0wmQw4GAAAA7FoKaADe2NzcXC6Xy+fzgdN4PN7b25tKpUJOBQAAAOxyCmgArqRQKAwPD09OTpZbaGlpSafTVVVVYaYCAAAA9gQFNABlTU9P53K5QqEQOK2srEyn00eOHAk5FQAAALBXKKABCLC+vn769OmZmZlyC0ePHu3r60skEmGmAgAAAPYWBTQAl5qcnBwaGtrc3AycJpPJTCbT1NQUcioAAABgz1FAA/D/W1tby2az58+fD5xGo9H29vaenp6KioqQgwEAAAB7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)
LS0tCnRpdGxlOiAiYHIgcGFyYW1zJHNpbV9uYW1lYCIKYXV0aG9yOiAiYHIgcGFyYW1zJGF1dGhvcmAiCmRhdGU6ICJgciBmb3JtYXQoU3lzLnRpbWUoKSwgJyVCICVkLCAlWScpYCIKaGVhZGVyLWluY2x1ZGVzOgogICAgLSBcdXNlcGFja2FnZXtmbG9hdH0KICAgIC0gXHVzZXBhY2thZ2V7YW1zbWF0aH0KICAgIC0gXHVzZXBhY2thZ2V7Z2Vuc3ltYn0Kb3V0cHV0OgogIHZ0aGVtZXM6OnZtb2Rlcm46CmNzczogY3NzL3NpbWNoZWYuY3NzCnBhcmFtczoKICBhdXRob3I6IAogICAgbGFiZWw6ICJBdXRob3I6IgogICAgdmFsdWU6ICIiCiAgc2ltX25hbWU6CiAgICBsYWJlbDogIlNpbXVsYXRpb24gRXhwZXJpbWVudCBOYW1lOiIKICAgIHZhbHVlOiAiIgogIHNpbV9wYXRoOgogICAgbGFiZWw6ICJQYXRoIHRvIFNpbXVsYXRpb24gRXhwZXJpbWVudCBGb2xkZXI6IgogICAgdmFsdWU6ICIiCiAgZXZhbF9vcmRlcjoKICAgIGxhYmVsOiAiT3JkZXIgb2YgRXZhbHVhdG9yczoiCiAgICB2YWx1ZTogTlVMTAogIHZpel9vcmRlcjoKICAgIGxhYmVsOiAiT3JkZXIgb2YgVmlzdWFsaXplcnM6IgogICAgdmFsdWU6IE5VTEwKICB2ZXJib3NlOgogICAgbGFiZWw6ICJWZXJib3NlIExldmVsOiIKICAgIHZhbHVlOiAyCi0tLQoKPHNjcmlwdCBzcmM9ImpzL3NpbWNoZWZOYXZDbGFzcy5qcyI+PC9zY3JpcHQ+CgpgYGB7ciBzZXR1cCwgaW5jbHVkZT1GQUxTRX0Kb3B0aW9ucyh3aWR0aCA9IDEwMDAwKQprbml0cjo6b3B0c19jaHVuayRzZXQoCiAgZWNobyA9IEZBTFNFLAogIHdhcm5pbmcgPSBGQUxTRSwKICBtZXNzYWdlID0gRkFMU0UsCiAgY2FjaGUgPSBGQUxTRSwKICBmaWcuYWxpZ24gPSAiY2VudGVyIiwKICBmaWcucG9zID0gIkgiLAogIGZpZy5oZWlnaHQgPSAxMiwKICBmaWcud2lkdGggPSAxMAopCgpvcHRpb25zKGtuaXRyLmthYmxlLk5BID0gJ05BJywKICAgICAgICBkcGx5ci5zdW1tYXJpc2UuaW5mb3JtID0gRkFMU0UpCgojIHNjcm9sbGFibGUgdGV4dCBvdXRwdXQKbG9jYWwoewogIGhvb2tfb3V0cHV0IDwtIGtuaXRyOjprbml0X2hvb2tzJGdldCgnb3V0cHV0JykKICBrbml0cjo6a25pdF9ob29rcyRzZXQob3V0cHV0ID0gZnVuY3Rpb24oeCwgb3B0aW9ucykgewogICAgaWYgKCFpcy5udWxsKG9wdGlvbnMkbWF4LmhlaWdodCkpIG9wdGlvbnMkYXR0ci5vdXRwdXQgPC0gYygKICAgICAgb3B0aW9ucyRhdHRyLm91dHB1dCwKICAgICAgc3ByaW50Zignc3R5bGU9Im1heC1oZWlnaHQ6ICVzOyInLCBvcHRpb25zJG1heC5oZWlnaHQpCiAgICApCiAgICBob29rX291dHB1dCh4LCBvcHRpb25zKQogIH0pCn0pCgpjaHVua19pZHggPC0gMQpkb2NfZGlyIDwtIGZpbGUucGF0aChwYXJhbXMkc2ltX3BhdGgsICJkb2NzIikKYGBgCgpgYGB7ciBoZWxwZXItZnVuc30KCiMnIEdldCBvcmRlciBvZiBvYmplY3RzIHRvIGRpc3BsYXkKIycKIycgQHBhcmFtIG9ial9uYW1lcyBWZWN0b3Igb2YgYWxsIG9iamVjdCBuYW1lcyB0aGF0IG5lZWQgdG8gYmUgZGlzcGxheWVkLgojJyBAcGFyYW0gb2JqX29yZGVyIFZlY3RvciBvZiBvYmplY3QgbmFtZXMgaW4gdGhlIGRlc2lyZWQgYXBwZWFyYW5jZSBvcmRlci4KIycgQHJldHVybiBWZWN0b3Igb2Ygb2JqZWN0IG5hbWVzIGluIHRoZSBvcmRlciBpbiB3aGljaCB0aGV5IHdpbGwgYmUgZGlzcGxheWVkLgpnZXRPYmpPcmRlciA8LSBmdW5jdGlvbihvYmpfbmFtZXMsIG9ial9vcmRlciA9IE5VTEwpIHsKICBpZiAoaXMubnVsbChvYmpfb3JkZXIpKSB7CiAgICByZXR1cm4ob2JqX25hbWVzKQogIH0gZWxzZSB7CiAgICByZXR1cm4oaW50ZXJzZWN0KG9ial9vcmRlciwgb2JqX25hbWVzKSkKICB9Cn0KCiMnIEdldCBhbGwgZXhwZXJpbWVudHMgdW5kZXIgYSBnaXZlbiBkaXJlY3RvcnkgbmFtZQojJwojJyBAcGFyYW0gZGlyX25hbWUgbmFtZSBvZiBkaXJlY3RvcnkKIycgQHJldHVybiBsaXN0IG9mIG5hbWVkIGV4cGVyaW1lbnRzCmdldERlc2NlbmRhbnRzIDwtIGZ1bmN0aW9uKGRpcl9uYW1lKSB7CiAgZXhwZXJpbWVudHMgPC0gbGlzdCgpCiAgZm9yIChkIGluIGxpc3QuZGlycyhkaXJfbmFtZSkpIHsKICAgIGlmIChmaWxlLmV4aXN0cyhmaWxlLnBhdGgoZCwgImV4cGVyaW1lbnQucmRzIikpKSB7CiAgICAgIGlmIChpZGVudGljYWwoZCwgcGFyYW1zJHNpbV9wYXRoKSkgewogICAgICAgIGV4cF9uYW1lIDwtICJCYXNlIgogICAgICB9IGVsc2UgewogICAgICAgIGV4cF9uYW1lIDwtIHN0cmluZ3I6OnN0cl9yZXBsYWNlX2FsbCgKICAgICAgICAgIHN0cmluZ3I6OnN0cl9yZW1vdmUoZCwgcGFzdGUwKHBhcmFtcyRzaW1fcGF0aCwgIi8iKSksCiAgICAgICAgICAiLyIsICIgLSAiCiAgICAgICAgKQogICAgICB9CiAgICAgIGV4cGVyaW1lbnRzW1tleHBfbmFtZV1dIDwtIHJlYWRSRFMoZmlsZS5wYXRoKGQsICJleHBlcmltZW50LnJkcyIpKQogICAgfQogIH0KICByZXR1cm4oZXhwZXJpbWVudHMpCn0KCiMnIENoZWNrIGlmIGV4cGVyaW1lbnQgZXhpc3RzCiMnCiMnIEBwYXJhbSBkaXJfbmFtZSBuYW1lIG9mIGRpcmVjdG9yeSBvciB2ZWN0b3IgdGhlcmVvZgojJyBAcGFyYW0gcmVjdXJzaXZlIGxvZ2ljYWw7IGlmIFRSVUUsIGNoZWNrcyBpZiBleHBlcmltZW50IGV4aXN0cyB1bmRlciB0aGUKIycgICBnaXZlbiBkaXJlY3Rvcnkocyk7IGlmIEZBTFNFLCBjaGVja3MgaWYgYW55IGV4cGVyaW1lbnQgZXhpc3RzIHVuZGVyIHRoZQojJyAgIGRpcmVjdG9yeShzKSBhbmQgaXRzIGRlc2NlbmRhbnRzCiMnIEByZXR1cm4gVFJVRSBpZiBleHBlcmltZW50IGV4aXN0cyBhbmQgRkFMU0Ugb3RoZXJ3aXNlCmV4cGVyaW1lbnRFeGlzdHMgPC0gZnVuY3Rpb24oZGlyX25hbWUsIHJlY3Vyc2l2ZSA9IEZBTFNFKSB7CiAgcmVzIDwtIHB1cnJyOjptYXBfbGdsKGRpcl9uYW1lLAogICAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbihkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFyZWN1cnNpdmUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGV4cF9mbmFtZSA8LSBmaWxlLnBhdGgoZCwgImV4cGVyaW1lbnQucmRzIikKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybihmaWxlLmV4aXN0cyhleHBfZm5hbWUpKQogICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXNjZW5kYW50cyA8LSBnZXREZXNjZW5kYW50cyhkKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuKGxlbmd0aChkZXNjZW5kYW50cykgPiAwKQogICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSkKICByZXR1cm4oYW55KHJlcykpCn0KCiMnIERpc3BsYXlzIGNvbnRlbnQgZm9yIHNwZWNpZmllZCBwYXJ0IG9mIHJlY2lwZQojJwojJyBAcGFyYW0gZmllbGRfbmFtZSBwYXJ0IG9mIHJlY2lwZSB0byBzaG93OyBtdXN0IGJlIG9uZSBvZiAiZGdwIiwgIm1ldGhvZCIsCiMnICAgImV2YWx1YXRvciIsIG9yICJ2aXN1YWxpemVyIgojJyBAcmV0dXJuIGNvbnRlbnQgZm9yIHJlY2lwZQpzaG93UmVjaXBlUGFydCA8LSBmdW5jdGlvbihmaWVsZF9uYW1lID0gYygiZGdwIiwgIm1ldGhvZCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJldmFsdWF0b3IiLCAidmlzdWFsaXplciIpKSB7CgogIGZpZWxkX25hbWUgPC0gbWF0Y2guYXJnKGZpZWxkX25hbWUpCiAgZnVuY19uYW1lIDwtIGRwbHlyOjpjYXNlX3doZW4oZmllbGRfbmFtZSA9PSAiZXZhbHVhdG9yIiB+ICJldmFsIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZF9uYW1lID09ICJ2aXN1YWxpemVyIiB+ICJ2aXoiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRSVUUgfiBmaWVsZF9uYW1lKQogIGRlc2NlbmRhbnRzIDwtIGdldERlc2NlbmRhbnRzKGRpcl9uYW1lID0gcGFyYW1zJHNpbV9wYXRoKQogIG9ianMgPC0gcHVycnI6Om1hcChkZXNjZW5kYW50cywgfi54W1twYXN0ZTAoImdldF8iLCBmaWVsZF9uYW1lLCAicyIpXV0oKSkKICBvYmpfbmFtZXMgPC0gdW5pcXVlKHB1cnJyOjpyZWR1Y2Uoc2FwcGx5KG9ianMsIG5hbWVzKSwgYykpCgogIG9ial9oZWFkZXIgPC0gIjxwIHN0eWxlPSdmb250LXdlaWdodDogYm9sZDsgZm9udC1zaXplOiAyMHB4Jz4gJXMgPC9wPiIKICBpbnZpc19oZWFkZXIgPC0gIlxuXG4jIyMgJXMgey50YWJzZXQgLnRhYnNldC1waWxscyAudGFic2V0LXJlY2lwZSAudGFic2V0LWNpcmNsZX1cblxuIgogIHNob3d0eXBlX2hlYWRlciA8LSAiXG5cbiMjIyMgJXMgey50YWJzZXQgLnRhYnNldC1waWxsc31cblxuIgogIGV4cF9oZWFkZXIgPC0gIlxuXG4jIyMjIyAlcyBcblxuIgoKICBpZiAoYWxsKHNhcHBseShvYmpzLCBsZW5ndGgpID09IDApKSB7CiAgICByZXR1cm4oY2F0KCJOL0EiKSkKICB9CgogIGZvciAoaWR4IGluIDE6bGVuZ3RoKG9ial9uYW1lcykpIHsKICAgIGNhdChzcHJpbnRmKGludmlzX2hlYWRlciwgIiIpKQogICAgb2JqX25hbWUgPC0gb2JqX25hbWVzW2lkeF0KCiAgICBjYXQoIjxkaXYgY2xhc3M9J3BhbmVsIHBhbmVsLWRlZmF1bHQgcGFkZGVkLXBhbmVsJz4iKQogICAgY2F0KHNwcmludGYob2JqX2hlYWRlciwgb2JqX25hbWUpKQoKICAgIGNhdChzcHJpbnRmKHNob3d0eXBlX2hlYWRlciwgZm9udGF3ZXNvbWU6OmZhKCJyZWFkbWUiLCBmaWxsID0gIndoaXRlIikpKQogICAgcGFzdGVNZChmaWxlLnBhdGgoZG9jX2RpciwgcGFzdGUwKGZpZWxkX25hbWUsICJzIiksCiAgICAgICAgICAgICAgICAgICAgICBwYXN0ZTAob2JqX25hbWUsICIubWQiKSkpCgogICAgY2F0KHNwcmludGYoc2hvd3R5cGVfaGVhZGVyLCBmb250YXdlc29tZTo6ZmEoImNvZGUiLCBmaWxsID0gIndoaXRlIikpKQogICAga2VlcF9vYmpzIDwtIHB1cnJyOjptYXAob2Jqcywgb2JqX25hbWUpCiAgICBrZWVwX29ianNbc2FwcGx5KGtlZXBfb2JqcywgaXMubnVsbCldIDwtIE5VTEwKICAgIGlmIChhbGwocHVycnI6Om1hcF9sZ2woa2VlcF9vYmpzLAogICAgICAgICAgICAgICAgICAgICAgICAgICB+aXNUUlVFKGNoZWNrX2VxdWFsKC54LCBrZWVwX29ianNbWzFdXSkpKSkpIHsKICAgICAgb2JqIDwtIGtlZXBfb2Jqc1tbMV1dCiAgICAgIGNhdCgiPGI+RnVuY3Rpb248L2I+IikKICAgICAgdnRoZW1lczo6c3ViY2h1bmtpZnkob2JqW1twYXN0ZTAoZnVuY19uYW1lLCAiX2Z1biIpXV0sCiAgICAgICAgICAgICAgICAgIGNodW5rX2lkeCwgb3RoZXJfYXJncyA9ICJtYXguaGVpZ2h0PScyMDBweCciKQogICAgICBjaHVua19pZHggPDwtIGNodW5rX2lkeCArIDEKICAgICAgY2F0KCI8Yj5JbnB1dCBQYXJhbWV0ZXJzPC9iPiIpCiAgICAgIHZ0aGVtZXM6OnN1YmNodW5raWZ5KG9ialtbcGFzdGUwKGZ1bmNfbmFtZSwgIl9wYXJhbXMiKV1dLAogICAgICAgICAgICAgICAgICBjaHVua19pZHgsIG90aGVyX2FyZ3MgPSAibWF4LmhlaWdodD0nMjAwcHgnIikKICAgICAgY2h1bmtfaWR4IDw8LSBjaHVua19pZHggKyAxCiAgICB9IGVsc2UgewogICAgICBmb3IgKGV4cCBpbiBuYW1lcyhvYmpzKSkgewogICAgICAgIG9iaiA8LSBvYmpzW1tleHBdXVtbb2JqX25hbWVdXQogICAgICAgIGlmIChpcy5udWxsKG9iaikpIHsKICAgICAgICAgIG5leHQKICAgICAgICB9CiAgICAgICAgY2F0KHNwcmludGYoZXhwX2hlYWRlciwgZXhwKSkKICAgICAgICBjYXQoIjxiPkZ1bmN0aW9uPC9iPiIpCiAgICAgICAgdnRoZW1lczo6c3ViY2h1bmtpZnkob2JqW1twYXN0ZTAoZnVuY19uYW1lLCAiX2Z1biIpXV0sCiAgICAgICAgICAgICAgICAgICAgY2h1bmtfaWR4LCBvdGhlcl9hcmdzID0gIm1heC5oZWlnaHQ9JzIwMHB4JyIpCiAgICAgICAgY2h1bmtfaWR4IDw8LSBjaHVua19pZHggKyAxCiAgICAgICAgY2F0KCI8Yj5JbnB1dCBQYXJhbWV0ZXJzPC9iPiIpCiAgICAgICAgdnRoZW1lczo6c3ViY2h1bmtpZnkob2JqW1twYXN0ZTAoZnVuY19uYW1lLCAiX3BhcmFtcyIpXV0sCiAgICAgICAgICAgICAgICAgICAgY2h1bmtfaWR4LCBvdGhlcl9hcmdzID0gIm1heC5oZWlnaHQ9JzIwMHB4JyIpCiAgICAgICAgY2h1bmtfaWR4IDw8LSBjaHVua19pZHggKyAxCiAgICAgIH0KICAgIH0KICAgIGNhdCgiPC9kaXY+IikKICB9Cn0KCiMnIFJlYWRzIGluIGZpbGUgaWYgaXQgZXhpc3RzIGFuZCByZXR1cm5zIE5VTEwgaWYgdGhlIGZpbGUgZG9lcyBub3QgZXhpc3QKIycKIycgQHBhcmFtIGZpbGVuYW1lIG5hbWUgb2YgLnJkcyBmaWxlIHRvIHRyeSByZWFkaW5nIGluCiMnIEByZXR1cm4gb3V0cHV0IG9mIGZpbGVuYW1lLnJkcyBpZiB0aGUgZmlsZSBleGlzdHMgYW5kIE5VTEwgb3RoZXJ3aXNlCmdldFJlc3VsdHMgPC0gZnVuY3Rpb24oZmlsZW5hbWUpIHsKICBpZiAoZmlsZS5leGlzdHMoZmlsZW5hbWUpKSB7CiAgICByZXN1bHRzIDwtIHJlYWRSRFMoZmlsZW5hbWUpCiAgfSBlbHNlIHsKICAgIHJlc3VsdHMgPC0gTlVMTAogIH0KICByZXR1cm4ocmVzdWx0cykKfQoKIycgRGlzcGxheXMgb3V0cHV0IChib3RoIGZyb20gZXZhbHVhdGUoKSBhbmQgdmlzdWFsaXplKCkpIGZyb20gc2F2ZWQgcmVzdWx0cyB1bmRlcgojJyBhIHNwZWNpZmllZCBkaXJlY3RvcnkKIycKIycgQHBhcmFtIGRpcl9uYW1lIG5hbWUgb2YgZGlyZWN0b3J5CiMnIEBwYXJhbSBkZXB0aCBpbnRlZ2VyOyBkZXB0aCBvZiBkaXJlY3RvcnkgZnJvbSBwYXJlbnQvYmFzZSBleHBlcmltZW50J3MgZm9sZGVyCiMnIEBwYXJhbSBiYXNlIGxvZ2ljYWw7IHdoZXRoZXIgb3Igbm90IHRoaXMgaXMgYSBiYXNlIGV4cGVyaW1lbnQKIycgQHBhcmFtIHNob3dfaGVhZGVyIGxvZ2ljYWw7IHdoZXRoZXIgb3Igbm90IHRvIHNob3cgc2VjdGlvbiBoZWFkZXIKIycgQHBhcmFtIHZlcmJvc2UgaW50ZWdlcjsgMCA9IG5vIG1lc3NhZ2VzOyAxID0gcHJpbnQgb3V0IGRpcmVjdG9yeSBuYW1lIG9ubHk7CiMnICAgMiA9IHByaW50IG91dCBkaXJlY3RvcnkgbmFtZSBhbmQgbmFtZSBvZiBldmFsdWF0b3JzL3Zpc3VhbGl6ZXJzCiMnIEByZXR1cm4gY29udGVudCByZXN1bHRzIGZyb20gZXZhbHVhdGUoKSBhbmQgdmlzdWFsaXplKCkgZnJvbSB0aGUgZXhwZXJpbWVudApzaG93UmVzdWx0cyA8LSBmdW5jdGlvbihkaXJfbmFtZSwgZGVwdGgsIGJhc2UgPSBGQUxTRSwgc2hvd19oZWFkZXIgPSBUUlVFLAogICAgICAgICAgICAgICAgICAgICAgICB2ZXJib3NlID0gMSkgewogIGlmICh2ZXJib3NlID49IDEpIHsKICAgIG1lc3NhZ2UocmVwKCIqIiwgZGVwdGgpLCBiYXNlbmFtZShkaXJfbmFtZSkpCiAgfQoKICBpZiAoZGVwdGggPT0gMSkgewogICAgaGVhZGVyX3RlbXBsYXRlIDwtICJcblxuJXMgJXMgey50YWJzZXQgLnRhYnNldC1waWxscyAudGFic2V0LXZtb2Rlcm59XG5cbiIKICB9IGVsc2UgewogICAgaWYgKGJhc2UgfCAhZXhwZXJpbWVudEV4aXN0cyhkaXJfbmFtZSkpIHsKICAgICAgaGVhZGVyX3RlbXBsYXRlIDwtICJcblxuJXMgJXMgey50YWJzZXQgLnRhYnNldC1waWxsc30iCiAgICB9IGVsc2UgewogICAgICBoZWFkZXJfdGVtcGxhdGUgPC0gIlxuXG4lcyAlcyB7LnRhYnNldCAudGFic2V0LXBpbGxzIC50YWJzZXQtY2lyY2xlfSIKICAgIH0KICB9CgogIGlmIChzaG93X2hlYWRlcikgewogICAgY2F0KHNwcmludGYoaGVhZGVyX3RlbXBsYXRlLAogICAgICAgICAgICAgICAgcGFzdGUocmVwKCIjIiwgZGVwdGgpLCBjb2xsYXBzZSA9ICIiKSwKICAgICAgICAgICAgICAgIGJhc2VuYW1lKGRpcl9uYW1lKSkpCiAgfQoKICBpZiAoYmFzZSkgewogICAgY2F0KHBhc3RlMCgiXG5cbiIsCiAgICAgICAgICAgICAgIHBhc3RlKHJlcCgiIyIsIGRlcHRoICsgMSksIGNvbGxhcHNlID0gIiIpLAogICAgICAgICAgICAgICAiIEJhc2UgLSAiLCBiYXNlbmFtZShkaXJfbmFtZSksCiAgICAgICAgICAgICAgICIgey50YWJzZXQgLnRhYnNldC1waWxscyAudGFic2V0LWNpcmNsZX1cblxuIikpCiAgICBkZXB0aCA8LSBkZXB0aCArIDEKICB9CgogIHNob3d0eXBlX3RlbXBsYXRlIDwtIHBhc3RlMCgKICAgICJcblxuIiwgcGFzdGUocmVwKCIjIiwgZGVwdGggKyAxKSwgY29sbGFwc2UgPSAiIiksICIgJXNcblxuIgogICkKICBmaWduYW1lX3RlbXBsYXRlIDwtICI8aDMgc3R5bGU9J2ZvbnQtd2VpZ2h0OiBib2xkJz4gJXMgPC9oMz4iCiAgaW52aXNpYmxlX2hlYWRlciA8LSBwYXN0ZTAoCiAgICAiXG5cbiIsIHBhc3RlKHJlcCgiIyIsIGRlcHRoICsgMiksIGNvbGxhcHNlID0gIiIpLAogICAgIiB7LnRhYnNldCAudGFic2V0LXBpbGxzfVxuXG4iCiAgKQogIHBsdF90ZW1wbGF0ZSA8LSBwYXN0ZTAoCiAgICAiXG5cbiIsIHBhc3RlKHJlcCgiIyIsIGRlcHRoICsgMyksIGNvbGxhcHNlID0gIiIpLCAiICVzXG5cbiIKICApCgogIGV4cF9mbmFtZSA8LSBmaWxlLnBhdGgoZGlyX25hbWUsICJleHBlcmltZW50LnJkcyIpCiAgIyBmaXRfZm5hbWUgPC0gZmlsZS5wYXRoKGRpcl9uYW1lLCAiZml0X3Jlc3VsdHMucmRzIikKICBldmFsX2ZuYW1lIDwtIGZpbGUucGF0aChkaXJfbmFtZSwgImV2YWxfcmVzdWx0cy5yZHMiKQogIHZpel9mbmFtZSA8LSBmaWxlLnBhdGgoZGlyX25hbWUsICJ2aXpfcmVzdWx0cy5yZHMiKQoKICBleHAgPC0gZ2V0UmVzdWx0cyhleHBfZm5hbWUpCiAgIyBmaXRfcmVzdWx0cyA8LSBnZXRSZXN1bHRzKGZpdF9mbmFtZSkKICBldmFsX3Jlc3VsdHMgPC0gZ2V0UmVzdWx0cyhldmFsX2ZuYW1lKQogIHZpel9yZXN1bHRzIDwtIGdldFJlc3VsdHModml6X2ZuYW1lKQoKICBpZiAoIWlzLm51bGwoZXZhbF9yZXN1bHRzKSkgewogICAgY2F0KHNwcmludGYoc2hvd3R5cGVfdGVtcGxhdGUsIGZvbnRhd2Vzb21lOjpmYSgidGFibGUiLCBmaWxsID0gIndoaXRlIikpKQogICAgZXZhbF9uYW1lcyA8LSBnZXRPYmpPcmRlcihuYW1lcyhldmFsX3Jlc3VsdHMpLCBwYXJhbXMkZXZhbF9vcmRlcikKICAgIGZvciAoZXZhbF9uYW1lIGluIGV2YWxfbmFtZXMpIHsKICAgICAgaWYgKHZlcmJvc2UgPj0gMikgewogICAgICAgIG1lc3NhZ2UocmVwKCIgIiwgZGVwdGggKyAxKSwgZXZhbF9uYW1lKQogICAgICB9CiAgICAgIGV2YWx1YXRvciA8LSBleHAkZ2V0X2V2YWx1YXRvcnMoKVtbZXZhbF9uYW1lXV0KICAgICAgaWYgKGV2YWx1YXRvciRybWRfc2hvdykgewogICAgICAgIGNhdChzcHJpbnRmKGZpZ25hbWVfdGVtcGxhdGUsIGV2YWxfbmFtZSkpCiAgICAgICAgZG8uY2FsbCh2dGhlbWVzOjpwcmV0dHlfRFQsCiAgICAgICAgICAgICAgICBjKGxpc3QoZXZhbF9yZXN1bHRzW1tldmFsX25hbWVdXSksIGV2YWx1YXRvciRybWRfb3B0aW9ucykpICU+JQogICAgICAgICAgdnRoZW1lczo6c3ViY2h1bmtpZnkoaSA9IGNodW5rX2lkeCkKICAgICAgICBjaHVua19pZHggPDwtIGNodW5rX2lkeCArIDEKICAgICAgfQogICAgfQogIH0KCiAgaWYgKCFpcy5udWxsKHZpel9yZXN1bHRzKSkgewogICAgY2F0KHNwcmludGYoc2hvd3R5cGVfdGVtcGxhdGUsCiAgICAgICAgICAgICAgICBmb250YXdlc29tZTo6ZmEoImNoYXJ0LWJhciIsIGZpbGwgPSAid2hpdGUiKSkpCiAgICB2aXpfbmFtZXMgPC0gZ2V0T2JqT3JkZXIobmFtZXModml6X3Jlc3VsdHMpLCBwYXJhbXMkdml6X29yZGVyKQogICAgZm9yICh2aXpfbmFtZSBpbiB2aXpfbmFtZXMpIHsKICAgICAgaWYgKHZlcmJvc2UgPj0gMikgewogICAgICAgIG1lc3NhZ2UocmVwKCIgIiwgZGVwdGggKyAxKSwgdml6X25hbWUpCiAgICAgIH0KICAgICAgdmlzdWFsaXplciA8LSBleHAkZ2V0X3Zpc3VhbGl6ZXJzKClbW3Zpel9uYW1lXV0KICAgICAgaWYgKHZpc3VhbGl6ZXIkcm1kX3Nob3cpIHsKICAgICAgICBjYXQoaW52aXNpYmxlX2hlYWRlcikKICAgICAgICBjYXQoc3ByaW50ZihmaWduYW1lX3RlbXBsYXRlLCB2aXpfbmFtZSkpCiAgICAgICAgcGx0cyA8LSB2aXpfcmVzdWx0c1tbdml6X25hbWVdXQogICAgICAgIGlmICghaW5oZXJpdHMocGx0cywgImxpc3QiKSkgewogICAgICAgICAgcGx0cyA8LSBsaXN0KHBsdCA9IHBsdHMpCiAgICAgICAgfQogICAgICAgIGlmIChpcy5udWxsKG5hbWVzKHBsdHMpKSkgewogICAgICAgICAgbmFtZXMocGx0cykgPC0gMTpsZW5ndGgocGx0cykKICAgICAgICB9CiAgICAgICAgZm9yIChwbHRfbmFtZSBpbiBuYW1lcyhwbHRzKSkgewogICAgICAgICAgaWYgKGxlbmd0aChwbHRzKSAhPSAxKSB7CiAgICAgICAgICAgIGNhdChzcHJpbnRmKHBsdF90ZW1wbGF0ZSwgcGx0X25hbWUpKQogICAgICAgICAgfQogICAgICAgICAgcGx0IDwtIHBsdHNbW3BsdF9uYW1lXV0KICAgICAgICAgIGlmIChpbmhlcml0cyhwbHQsICJwbG90bHkiKSkgewogICAgICAgICAgICBhZGRfY2xhc3MgPC0gYygicGFuZWwgcGFuZWwtZGVmYXVsdCBwYWRkZWQtcGFuZWwiKQogICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgYWRkX2NsYXNzIDwtIE5VTEwKICAgICAgICAgIH0KICAgICAgICAgIHZ0aGVtZXM6OnN1YmNodW5raWZ5KHBsdCwgaSA9IGNodW5rX2lkeCwKICAgICAgICAgICAgICAgICAgICAgIGZpZ19oZWlnaHQgPSB2aXN1YWxpemVyJHJtZF9vcHRpb25zJGhlaWdodCwKICAgICAgICAgICAgICAgICAgICAgIGZpZ193aWR0aCA9IHZpc3VhbGl6ZXIkcm1kX29wdGlvbnMkd2lkdGgsCiAgICAgICAgICAgICAgICAgICAgICBvdGhlcl9hcmdzID0gIm91dC53aWR0aCA9ICcxMDAlJyIsCiAgICAgICAgICAgICAgICAgICAgICBhZGRfY2xhc3MgPSBhZGRfY2xhc3MpCiAgICAgICAgICBjaHVua19pZHggPDwtIGNodW5rX2lkeCArIDEKICAgICAgICB9CiAgICAgIH0KICAgIH0KICB9CgogIGlmICghaXMubnVsbChleHApKSB7CiAgICBpZiAoKGxlbmd0aChleHAkZ2V0X3ZhcnlfYWNyb3NzKCkkZGdwKSAhPSAwKSB8CiAgICAgICAgKGxlbmd0aChleHAkZ2V0X3ZhcnlfYWNyb3NzKCkkbWV0aG9kKSAhPSAwKSkgewogICAgICBjYXQoc3ByaW50ZihzaG93dHlwZV90ZW1wbGF0ZSwgZm9udGF3ZXNvbWU6OmZhKCJjb2RlIiwgZmlsbCA9ICJ3aGl0ZSIpKSkKICAgICAgY2F0KCI8Yj5QYXJhbWV0ZXIgVmFsdWVzPC9iPiIpCiAgICAgIHZ0aGVtZXM6OnN1YmNodW5raWZ5KGV4cCRnZXRfdmFyeV9hY3Jvc3MoKSwKICAgICAgICAgICAgICAgICAgY2h1bmtfaWR4LCBvdGhlcl9hcmdzID0gIm1heC5oZWlnaHQ9JzIwMHB4JyIpCiAgICAgIGNodW5rX2lkeCA8PC0gY2h1bmtfaWR4ICsgMQogICAgfQogIH0KfQoKIycgRGlzcGxheXMgb3V0cHV0IG9mIGV4cGVyaW1lbnQgZm9yIGFsbCBvZiBpdHMgKHNhdmVkKSBkZXNjZW5kYW50cwojJwojJyBAcGFyYW0gZGlyX25hbWUgbmFtZSBvZiBwYXJlbnQgZXhwZXJpbWVudCBkaXJlY3RvcnkKIycgQHBhcmFtIGRlcHRoIHBsYWNlaG9sZGVyIGZvciByZWN1cnNpb247IHNob3VsZCBub3QgYmUgbWVzc2VkIHdpdGgKIycgQHBhcmFtIC4uLiBvdGhlciBhcmd1bWVudHMgdG8gcGFzcyBpbnRvIHNob3dSZXN1bHRzKCkKc2hvd0Rlc2NlbmRhbnRSZXN1bHRzIDwtIGZ1bmN0aW9uKGRpcl9uYW1lLCBkZXB0aCA9IDEsIC4uLikgewogIGNoaWxkcmVuIDwtIGxpc3QuZGlycyhkaXJfbmFtZSwgcmVjdXJzaXZlID0gRkFMU0UpCiAgaWYgKGxlbmd0aChjaGlsZHJlbikgPT0gMCkgewogICAgcmV0dXJuKCkKICB9CiAgZm9yIChjaGlsZF9pZHggaW4gMTpsZW5ndGgoY2hpbGRyZW4pKSB7CiAgICBjaGlsZCA8LSBjaGlsZHJlbltjaGlsZF9pZHhdCiAgICBpZiAoIWV4cGVyaW1lbnRFeGlzdHMoY2hpbGQsIHJlY3Vyc2l2ZSA9IFRSVUUpKSB7CiAgICAgIG5leHQKICAgIH0KICAgIGlmIChleHBlcmltZW50RXhpc3RzKGNoaWxkLCByZWN1cnNpdmUgPSBGQUxTRSkgJgogICAgICAgIChleHBlcmltZW50RXhpc3RzKGxpc3QuZGlycyhjaGlsZCwgcmVjdXJzaXZlID0gVFJVRSlbLTFdKSB8CiAgICAgICAgIChkZXB0aCA9PSAxKSkpIHsKICAgICAgYmFzZSA8LSBUUlVFCiAgICB9IGVsc2UgewogICAgICBiYXNlIDwtIEZBTFNFCiAgICB9CiAgICBzaG93UmVzdWx0cyhjaGlsZCwgZGVwdGgsIGJhc2UgPSBiYXNlLCAuLi4pCiAgICBzaG93RGVzY2VuZGFudFJlc3VsdHMoY2hpbGQsIGRlcHRoICsgMSwgLi4uKQogIH0KfQoKCmBgYAoKIyBTaW11bGF0aW9uIEV4cGVyaW1lbnQgUmVjaXBlIHsudGFic2V0IC50YWJzZXQtdm1vZGVybn0KCiMjIE9iamVjdGl2ZXMgey5wYW5lbCAucGFuZWwtZGVmYXVsdCAucGFkZGVkLXBhbmVsfQoKYGBge3Igb2JqZWN0aXZlcywgcmVzdWx0cyA9ICJhc2lzIn0KcGFzdGVNZChmaWxlLnBhdGgoZG9jX2RpciwgIm9iamVjdGl2ZXMubWQiKSkKYGBgCgojIyBEYXRhIEdlbmVyYXRpb24KCmBgYHtyIGRncHMsIHJlc3VsdHMgPSAiYXNpcyJ9CnNob3dSZWNpcGVQYXJ0KGZpZWxkX25hbWUgPSAiZGdwIikKYGBgCgojIyBNZXRob2RzIGFuZCBFdmFsdWF0aW9uCgojIyMgTWV0aG9kcwoKYGBge3IgbWV0aG9kcywgcmVzdWx0cyA9ICJhc2lzIn0Kc2hvd1JlY2lwZVBhcnQoZmllbGRfbmFtZSA9ICJtZXRob2QiKQpgYGAKCiMjIyBFdmFsdWF0aW9uCgpgYGB7ciBldmFsdWF0b3JzLCByZXN1bHRzID0gImFzaXMifQpzaG93UmVjaXBlUGFydChmaWVsZF9uYW1lID0gImV2YWx1YXRvciIpCmBgYAoKIyMgVmlzdWFsaXphdGlvbnMKCmBgYHtyIHZpc3VhbGl6ZXJzLCByZXN1bHRzID0gImFzaXMifQpzaG93UmVjaXBlUGFydChmaWVsZF9uYW1lID0gInZpc3VhbGl6ZXIiKQpgYGAKCgoKYGBge3IgcmVzLCByZXN1bHRzID0gImFzaXMifQoKIyBzaG93IHJlc3VsdHMKaWYgKGV4cGVyaW1lbnRFeGlzdHMocGFyYW1zJHNpbV9wYXRoKSkgewogIGNhdChzcHJpbnRmKCJcblxuIyBCYXNlICVzIFxuXG4iLCBwYXJhbXMkc2ltX25hbWUpKQogIGNhdCgiXG5cbiMjIHsudGFic2V0IC50YWJzZXQtcGlsbHMgLnRhYnNldC1jaXJjbGV9XG5cbiIpCiAgbWVzc2FnZShzcHJpbnRmKCJDcmVhdGluZyBSIE1hcmtkb3duIHJlcG9ydCBmb3IgJXMuLi4iLCBwYXJhbXMkc2ltX25hbWUpKQogIHNob3dSZXN1bHRzKHBhcmFtcyRzaW1fcGF0aCwgZGVwdGggPSAyLCBiYXNlID0gRkFMU0UsIHNob3dfaGVhZGVyID0gRkFMU0UsCiAgICAgICAgICAgICAgdmVyYm9zZSA9IDApCn0KCnNob3dEZXNjZW5kYW50UmVzdWx0cyhwYXJhbXMkc2ltX3BhdGgsIHZlcmJvc2UgPSBwYXJhbXMkdmVyYm9zZSkKCmBgYAo=