This is an R Markdown Notebook. When you execute code within the notebook, the results appear beneath the code.
Try executing this chunk by clicking the Run button within the chunk or by placing your cursor inside it and pressing Cmd+Shift+Enter.
plot(cars)
Add a new chunk by clicking the Insert Chunk button on the toolbar or by pressing Cmd+Option+I.
When you save the notebook, an HTML file containing the code and output will be saved alongside it (click the Preview button or press Cmd+Shift+K to preview the HTML file).
rm(list=ls())
17 April Panel Data and Causal Effects
Slide 1: Panel data and causal effects ENT5587B - Research Design & Theory Testing II Brian S. Anderson, Ph.D. Assistant Professor Department of Global Entrepreneurship & Innovation andersonbri@umkc.edu
RIEI Logo © 2017 Brian S. Anderson
Slide 2: Paper revision and reviewer responses due 24 April Data collection discussion Measuring change Instrument variables in panel data Hybrid methods Lab 20 April – Panel data paper assessment Seminar 24 April – LDV models and panel data // special topics
Slide 3: Training time out. What are the big questions you have about panel models?
Slide 4 Lets start off by getting some data. This is the same panel data that we used last week.
library(readr) library(tidyverse) my.panel.ds <- read_csv(“http://a.web.umkc.edu/andersonbri/Panel.csv”) my.panel.df <- my.panel.ds
library(readr)
library(tidyverse)
Loading tidyverse: ggplot2
Loading tidyverse: tibble
Loading tidyverse: tidyr
Loading tidyverse: purrr
Loading tidyverse: dplyr
Conflicts with tidy packages -------------------------------------------------------------------------------------------------------------
filter(): dplyr, stats
lag(): dplyr, stats
my.panel.ds <- read_csv("http://a.web.umkc.edu/andersonbri/Panel.csv")
Parsed with column specification:
cols(
gvkey = col_character(),
datadate = col_integer(),
fyear = col_integer(),
tic = col_character(),
conm = col_character(),
at = col_double(),
ch = col_double(),
dltt = col_double(),
dvt = col_double(),
lt = col_double(),
re = col_double(),
revt = col_double(),
sic = col_integer()
)
my.panel.df <- my.panel.ds
Slide 5:
We often refer to panel data as “time-series cross-sectional” data.
The reason being is that you can think of each tt observation as being a snapshot in time of the corresponding i′si′s condition.
Slide 6: If you collected one tt for each ii, you would have cross-sectional data. Since you collected multiple t′st′s per ii, you have time-series cross-sectional data.
Slide 7: The material point is this…
Just because you have panel data DOES NOT mean that you can estimate causal effects. Or even that it helps identify causal relationships.
As we will talk about, with panel data you may be more likely to make an incorrect nomological conclusion, because of the noise in the data and the difficulty in isolating causal effects.
Slide 8: yit=α+βxit+μi+ϵityit=α+βxit+μi+ϵit Just to review…
yy = Value of the tthtth observation of yy for the ithith entity αα = The value of yy when xx equals zero across all i,t′si,t′s ββ = The expected change in yy for an average ii across time tt. Note that this interpretation gets more complicated, quickly. xx = Value of the tthtth observation of xx for the ithith entity μμ = The portion of the disturbance term unique to ii and that is constant over time tt. ϵϵ = The variance in the tthtth observation of yy for the ithith entity that is not explained by the variance in the tthtth observation of xx for the ithith entity or μiμi.
Slide 9:
Recall that we can decompose xitxit into the following:
xit=γi+τitxit=γi+τit For each xitxit, there is going to be a between-component, γγ, that never changes over time for each ii in the sample (the firm, for example). But there is also going to be a within-component, ττ, that can change for each ii over time (the firm’s sales, for example).
Slide 10: xit=γi+τitxit=γi+τit In OLS or the pooled model, we assume that γiγi = 0, or otherwise is constant for every ii in the sample and, hence, meaningless for analysis purposes.
If γiγi ≠ 0, or if γiγi varies among the i′si′s in the sample, then the OLS (or pooled) model will produce biased estimates of ββ.
Slide 11: In a panel model, we are assuming that the higher order entity (γiγi), has some meaningful effect on the observation of xitxit.
The problem is that we don’t directly observe this effect. So any unobserved factors of ii that do correlate with xitxit will show up in the disturbance term of ϵitϵit.
Slide 12:
What’s this problem called again?
Slide 13: You guys rock!!!
So in our panel equation:
yit=α+βxit+μi+ϵityit=α+βxit+μi+ϵit We need to take some steps to control for the μiμi effect. We can do that by using the dummy variable approach, or using the within-transformation. This is the fixed effect model.
Slide 14: Sidebar…
How does a fixed effect model differ from a random effect model?
Slide 15: So full disclosure, but we’re not going to spend much time on random effect models, despite the obsession with these models in the psych/OB literature and which, very often, are improperly specified.
One exception is the hybrid method, which we’ll talk about later.
…End sidebar
Slide 16: yit=α+βxit+μi+ϵityit=α+βxit+μi+ϵit The dummy variable method, while effective, is a little clunky. So most estimators—like the plm package, use the within-transformation.
Using the within-transformation, our equation looks like this…
(yit−y¯i)=β(xit−x¯i)+(μi−μ¯i)+(ϵit−ϵ¯i)
Slide 17: (yit−y¯i)=β(xit−x¯i)+(μi−μ¯i)+(ϵit−ϵ¯i)(yit−y¯i)=β(xit−x¯i)+(μi−μ¯i)+(ϵit−ϵ¯i) In this equation, we’re removing the time invariant component by demeaning each term. This effectively gets rid of any information between i′i′, because we’re holding that effect constant (just like with the dummy variables).
Slide 18: You will sometimes see the fixed effect model written like this…
y¨it=βx¨it+ϵ¨ity¨it=βx¨it+ϵ¨it Because μiμi is constant over time, (μi−μ¯i)(μi−μ¯i) equal 0, so we drop it from the equation. We’ve removed the effect of ii on the other variables of interest by subtracting out the constant.
Slide 19 What we are left with is the average within-firm effect over time for, effectively, an average firm in the sample.
Slide 20 Side note…
(yit−y¯i)=β(xit−x¯i)+(μi−μ¯i)+(ϵit−ϵ¯i)(yit−y¯i)=β(xit−x¯i)+(μi−μ¯i)+(ϵit−ϵ¯i) What happened to the intercept αα and why?
Slide 21 BTW…
This approach is also called “group mean centering,” which is a very common term/approach in the psychology literature using multi-level modeling.
Yes, I know that multi-level modeling is the same thing as panel modeling. It’s a classic case of two disciplines really, really, really, not talking to each other.
Slide 22 Lets revisit our model from yesterday…
library(plm) my.panel.df\(log.revt <- log(my.panel.df\)revt) panel.plm.df <- pdata.frame(my.panel.df, index=c(“gvkey”,“fyear”), drop.index=TRUE) fixed.year.model <- plm(log.revt ~ dltt, data = panel.plm.df, index=c(“gvkey”, “fyear”), model=“within”, effect = c(“twoways”)) summary(fixed.year.model)
install.packages("plm")
also installing the dependency ‘bdsmatrix’
trying URL 'https://cran.rstudio.com/bin/macosx/mavericks/contrib/3.3/bdsmatrix_1.3-2.tgz'
Content type 'application/x-gzip' length 168411 bytes (164 KB)
==================================================
downloaded 164 KB
trying URL 'https://cran.rstudio.com/bin/macosx/mavericks/contrib/3.3/plm_1.6-5.tgz'
Content type 'application/x-gzip' length 1551766 bytes (1.5 MB)
==================================================
downloaded 1.5 MB
The downloaded binary packages are in
/var/folders/pr/f0j9m7c57qn207nwvv58nzyc0000gn/T//RtmpScccIo/downloaded_packages
library(plm)
Loading required package: Formula
Attaching package: ‘plm’
The following objects are masked from ‘package:dplyr’:
between, lag, lead
my.panel.df$log.revt <- log(my.panel.df$revt)
panel.plm.df <- pdata.frame(my.panel.df, index=c("gvkey","fyear"),
drop.index=TRUE)
fixed.year.model <- plm(log.revt ~ dltt, data = panel.plm.df,
index=c("gvkey", "fyear"),
model="within", effect = c("twoways"))
summary(fixed.year.model)
Twoways effects Within Model
Call:
plm(formula = log.revt ~ dltt, data = panel.plm.df, effect = c("twoways"),
model = "within", index = c("gvkey", "fyear"))
Unbalanced Panel: n=845, T=1-21, N=9994
Residuals :
Min. 1st Qu. Median 3rd Qu. Max.
-5.0200 -0.1700 0.0104 0.1900 1.9000
Coefficients :
Estimate Std. Error t-value Pr(>|t|)
dltt 4.3075e-07 6.1306e-08 7.0263 2.272e-12 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Total Sum of Squares: 1336.7
Residual Sum of Squares: 1329.5
R-Squared: 0.0053795
Adj. R-Squared: -0.088874
F-statistic: 49.3696 on 1 and 9128 DF, p-value: 2.272e-12
Slide 23 ## Twoways effects Within Model ## ## Call: ## plm(formula = log.revt ~ dltt, data = panel.plm.df, effect = c(“twoways”), ## model = “within”, index = c(“gvkey”, “fyear”)) ## ## Unbalanced Panel: n=845, T=1-21, N=9994 ## ## Residuals : ## Min. 1st Qu. Median 3rd Qu. Max. ## -5.0200 -0.1700 0.0104 0.1900 1.9000 ## ## Coefficients : ## Estimate Std. Error t-value Pr(>|t|)
## dltt 4.3075e-07 6.1306e-08 7.0263 2.272e-12 *** ## — ## Signif. codes: 0 ‘’ 0.001 ’’ 0.01 ’’ 0.05 ‘.’ 0.1 ‘’ 1 ## ## Total Sum of Squares: 1336.7 ## Residual Sum of Squares: 1329.5 ## R-Squared: 0.0053795 ## Adj. R-Squared: -0.088874 ## F-statistic: 49.3696 on 1 and 9128 DF, p-value: 2.272e-12
Slide 24 We interpret ββ as the average expected change in firm revenue for a given (average) firm for each unit increase in long term debt.
Specifically, we expect a 0.00000043075 change in log transformed revenue for an average firm.
Slide 25 Or to better interpret a continuous IV with a log transformed DV…
x.effect <- summary(fixed.year.model)$coefficients[1,1] y.delta <- 100*(exp(x.effect)-1) y.delta ## [1] 4.307544e-05
x.effect <- summary(fixed.year.model)$coefficients[1,1]
y.delta <- 100*(exp(x.effect)-1)
y.delta
[1] 4.307544e-05
We expect a .000043075% change in revenue for every one million dollar increase in long term debt for an average firm across time holding the effect of differences in time constant. We could also say we expect a 0.0431% change for every billionbillion dollar increase in long term debt.
Not exactly a BIG effect, but hey, it’s statistically significant!
Slide 26 That we can interpret ββ as a percentage change in revenue (because revenue was log transformed) is pretty handy, because that’s often what we’re really interested in with panel models—change.
Slide 27 Lets say though that we’re getting deeper with the whole change thing. We’re thinking that long-term debt isn’t really related to the level of sales, but to sales growth rate.
What we want to model then is how much a change in the level of long term debt influences the rate of change in revenue.
Slide 28 So lets go back to our panel data frame and create a sales growth measure. While we are at it, lets also calculate a growth rate measure for long term debt.
library(tidyverse) # Love dplyr! my.panel.df <- my.panel.df %>% arrange(gvkey, fyear) %>% # Sort by firm and then by year group_by(gvkey) %>% # Tell dplyr to go within each firm mutate(sg.diff = revt - lag(revt), sgr = (100(sg.diff/lag(revt))), dgr.diff = revt - lag(dltt), dgr = (100(dgr.diff/lag(dltt))))
library(tidyverse) # Love dplyr!
my.panel.df <- my.panel.df %>%
arrange(gvkey, fyear) %>% # Sort by firm and then by year
group_by(gvkey) %>% # Tell dplyr to go within each firm
mutate(sg.diff = revt - lag(revt), sgr = (100*(sg.diff/lag(revt))),
dgr.diff = revt - lag(dltt), dgr = (100*(dgr.diff/lag(dltt))))
Slide 29 Lets take a look at something…
panel.head <- my.panel.df %>% select(gvkey, fyear, revt, sgr, dltt, dgr) head(panel.head, 10)
panel.head <- my.panel.df %>%
select(gvkey, fyear, revt, sgr, dltt, dgr)
head(panel.head, 10)
Source: local data frame [10 x 6]
Groups: gvkey [2]
gvkey fyear revt sgr dltt dgr
1 001062 2007 101.160 NA 0.0 NA
2 001062 2008 169.921 67.972519 0.0 Inf
3 001062 2009 69.026 -59.377593 0.0 Inf
4 001177 1995 13310.500 NA 977.2 NA
5 001177 1996 15360.900 15.404380 2380.0 1471.9300
6 001177 1997 18744.900 22.029959 2346.2 687.6008
7 001177 1998 20754.000 10.718115 2521.2 784.5793
8 001177 1999 26452.700 27.458321 2677.9 949.2107
9 001177 2000 26949.000 1.876179 0.0 906.3483
10 001177 2001 25377.900 -5.829901 1591.3 Inf
Slide 30 One issue with calculating rate of changes is that we lose one year of observations for each firm. If the firm only showed up once in the sample, it’s gone now.
For unbalanced panels, the year lost will also be a function of when in the sample the firm first shows up. Further, it could be the case that you missed a year in between observations of the firm because it may have skipped a year of rate of change
Slide 31 We see this happening with the dgr variable. There are a few years that have a 0 value. Well, the firm might have paid off its debt that year (or it could be a data entry error), but that creates a division by zero problem. So, the next year’s growth rate may be HUGE by comparison, skewing the distribution.
There’s not a whole lot to do about it, other than really getting to know your data. Average smoothing or rolling averages may also help.
Slide 32 One thing to keep in mind with ALL data but especially when working with secondary financial data is outliers. Take a look at this…
qqplot(panel.head)
Error: Unsupported use of matrix or array for column indexing
Slide 33 Lets take a look at observations with a greater than 500% sales growth rate…
extreme.df <- my.panel.df %>% select(gvkey, conm, fyear, sgr) %>% filter(sgr > 500) %>% arrange(desc(sgr)) extreme.df
extreme.df <- my.panel.df %>%
select(gvkey, conm, fyear, sgr) %>%
filter(sgr > 500) %>%
arrange(desc(sgr))
extreme.df
Source: local data frame [7 x 4]
Groups: gvkey [7]
gvkey conm fyear sgr
1 031521 INTL FCSTONE INC 2007 4240.4735
2 025895 RADIAN GROUP INC 2008 1370.5761
3 160312 PRIMUS GUARANTY LTD 2009 894.0807
4 160293 NORTHSTAR REALTY FINANCE CP 2013 718.9489
5 001487 AMERICAN INTERNATIONAL GROUP 2009 700.9000
6 127377 BGC PARTNERS INC 2008 671.8695
7 023485 COVANTA HOLDING CORP 2002 557.8243
Slide 34 Now, you would need to get in to the data to really understand what is going on here. For now, lets just drop these observations on the assumption that they are so far outside the mainstream to bias our results
Yes, that is a big assumption—don’t just do this without thinking!
panel.no.df <- my.panel.df %>% filter(sgr < 500) # Note that this will also get rid of 0 values for SGR!
panel.no.df <- my.panel.df %>%
filter(sgr < 500) # Note that this will also get rid of 0 values for SGR!
Slide 35
Take a look now though at the distribution of sales growth rate…
Slide 36 Ok, so lets create a new plm dataframe, and lets estimate a fixed effect model of the level of long term debt (not dgr) predicting sales growth rate without our outliers.
no.plm.df <- pdata.frame(panel.no.df, index=c(“gvkey”,“fyear”), drop.index=TRUE) sgr.model <- plm(sgr ~ dltt, data = no.plm.df, index=c(“gvkey”, “fyear”), model=“within”, effect = c(“twoways”)) summary(sgr.model)
no.plm.df <- pdata.frame(panel.no.df, index=c("gvkey","fyear"),
drop.index=TRUE)
sgr.model <- plm(sgr ~ dltt, data = no.plm.df, index=c("gvkey", "fyear"),
model="within", effect = c("twoways"))
summary(sgr.model)
Twoways effects Within Model
Call:
plm(formula = sgr ~ dltt, data = no.plm.df, effect = c("twoways"),
model = "within", index = c("gvkey", "fyear"))
Unbalanced Panel: n=822, T=1-20, N=9149
Residuals :
Min. 1st Qu. Median 3rd Qu. Max.
-157.00 -9.93 -1.75 6.70 440.00
Coefficients :
Estimate Std. Error t-value Pr(>|t|)
dltt 2.5155e-05 4.6848e-06 5.3696 8.104e-08 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Total Sum of Squares: 6815900
Residual Sum of Squares: 6792400
R-Squared: 0.0034589
Adj. R-Squared: -0.097431
F-statistic: 28.8327 on 1 and 8307 DF, p-value: 8.104e-08
Slide 37 ## Twoways effects Within Model ## ## Call: ## plm(formula = sgr ~ dltt, data = no.plm.df, effect = c(“twoways”), ## model = “within”, index = c(“gvkey”, “fyear”)) ## ## Unbalanced Panel: n=822, T=1-20, N=9149 ## ## Residuals : ## Min. 1st Qu. Median 3rd Qu. Max. ## -157.00 -9.93 -1.75 6.70 440.00 ## ## Coefficients : ## Estimate Std. Error t-value Pr(>|t|)
## dltt 2.5155e-05 4.6848e-06 5.3696 8.104e-08 *** ## — ## Signif. codes: 0 ‘’ 0.001 ’’ 0.01 ’’ 0.05 ‘.’ 0.1 ‘’ 1 ## ## Total Sum of Squares: 6815900 ## Residual Sum of Squares: 6792400 ## R-Squared: 0.0034589 ## Adj. R-Squared: -0.097431 ## F-statistic: 28.8327 on 1 and 8307 DF, p-value: 8.104e-08 Ok, your turn. How do we interpret ββ?
Slide 38 Modeling change is actually pretty difficult. It is, however, theoretically interesting and practically important.
The best way to learn about modeling change is to grab a longitudinal dataset and start p-hacking. Just to be clear though, no, you can’t publish what you p-hacked!
Slide 39 Lets move on to instrument variable models.
Slide 40 No causation without manipulation.
In panel data like we have been working with, it’s entirely observational. That means that we’re dealing with an omitted variable problem from any number of sources.
Slide 41 One nice thing though about fixed effect models is that we’ve already controlled for a substantial omitted variable problem—the unobserved heterogeneity existing at the ii level that correlates with the tt level observation.
Basically, all of the unobserved ‘stuff’ existing at the firm (or manager, or team, etc.) that you didn’t measure but that can influence the xitxit—> yityit relationship.
Slide 42 So with a fixed effect model, we’re already a long way to where we need to be to isolate the causal effect of xitxit on yityit.
But…
There may also be other factors at the tt level that are unobserved, and that represent an omitted variable problem. So, we need some help.
Slide 43 If you remember, the great thing about instrument variable models is that once you understand the basics, you can extend the framework into more complicated models.
Instruments must be…
Individually and jointly valid predictors of the endogenous variable Properly excluded from the second stage equation (exogenous)
Slide 44 Note the | operator to delineate the instruments in the model.
inst.model <- plm(sgr ~ dltt | lt + ch, data = no.plm.df, index=c(“gvkey”, “fyear”), model=“within”, effect = c(“twoways”)) summary(inst.model)
inst.model <- plm(sgr ~ dltt | lt + ch,
data = no.plm.df, index=c("gvkey", "fyear"),
model="within", effect = c("twoways"))
summary(inst.model)
Twoways effects Within Model
Instrumental variable estimation
(Balestra-Varadharajan-Krishnakumar's transformation)
Call:
plm(formula = sgr ~ dltt | lt + ch, data = no.plm.df, effect = c("twoways"),
model = "within", index = c("gvkey", "fyear"))
Unbalanced Panel: n=822, T=1-20, N=9149
Residuals :
Min. 1st Qu. Median 3rd Qu. Max.
-157.00 -9.92 -1.76 6.68 440.00
Coefficients :
Estimate Std. Error t-value Pr(>|t|)
dltt 1.7049e-05 7.2804e-06 2.3418 0.01921 *
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Total Sum of Squares: 6815900
Residual Sum of Squares: 6794800
R-Squared: 0.0034589
Adj. R-Squared: -0.097431
F-statistic: 25.8294 on 1 and 8307 DF, p-value: 3.811e-07
Twoways effects Within Model
Instrumental variable estimation
(Balestra-Varadharajan-Krishnakumar’s transformation)
Call:
plm(formula = sgr ~ dltt | lt + ch, data = no.plm.df, effect = c(“twoways”),
model = “within”, index = c(“gvkey”, “fyear”))
Unbalanced Panel: n=822, T=1-20, N=9149
Residuals :
Min. 1st Qu. Median 3rd Qu. Max.
-157.00 -9.92 -1.76 6.68 440.00
Coefficients :
Estimate Std. Error t-value Pr(>|t|)
dltt 1.7049e-05 7.2804e-06 2.3418 0.01921 * ## — ## Signif. codes: 0 ‘’ 0.001 ’’ 0.01 ’’ 0.05 ‘.’ 0.1 ‘’ 1 ## ## Total Sum of Squares: 6815900 ## Residual Sum of Squares: 6794800 ## R-Squared: 0.0034589 ## Adj. R-Squared: -0.097431 ## F-statistic: 25.8294 on 1 and 8307 DF, p-value: 3.811e-07
Slide 45 Unfortunately, 2SLS with panel data gets really complicated, really fast. The big thing to remember at this stage of your training is that yes, you can—and likely need to—integrate instruments into your fixed effect panel models.
If your research takes you down that path, we’ll get you additional training :)
Slide 46 A criticism—completely accurate—of fixed effect models is that they are a blunt instrument.
By eliminating all of the between-effect variance, any variable that exists at the ii (firm) level, or that is otherwise invariant across time for each ii, can’t be used in the model.
Slide 47 Why?
Well, lets do an experiment.
In our dataframe is the firm’s SIC code, which represents the firm’s Standard Industrial Classification–basically, the firm’s primary industry.
Slide 48 Now lets say that we want to control for the firm’s industry. Makes sense, right? Firms are nested within industries, so it follows that there might be factors at the industry level that might impact how all, or some, or none, of the firms within that industry on whatever research question we are interested in.
Slide 49 The problem though is that there are not any cases of firm’s within the sample changing industries. Lets take a look at how many industries there are in our dataset…
We’re first going to create a new factor variable based on SIC code
panel.no.df\(industry <- as.factor(panel.no.df\)sic) nlevels(panel.no.df$industry) # Count the instries ## [1] 43
panel.no.df$industry <- as.factor(panel.no.df$sic)
nlevels(panel.no.df$industry) # Count the instries
[1] 43
Slide 50 This will be easier to see using the dummy variable method…
sgr.ind.model <- lm(sgr ~ dltt + factor(gvkey)-1 + factor(industry)-1, data = panel.no.df) summary(sgr.ind.model)
sgr.ind.model <- lm(sgr ~ dltt + factor(gvkey)-1 +
factor(industry)-1, data = panel.no.df)
summary(sgr.ind.model)
Call:
lm(formula = sgr ~ dltt + factor(gvkey) - 1 + factor(industry) -
1, data = panel.no.df)
Residuals:
Min 1Q Median 3Q Max
-152.27 -11.16 -1.99 7.81 430.10
Coefficients: (42 not defined because of singularities)
Estimate Std. Error t value Pr(>|t|)
dltt 1.610e-05 4.813e-06 3.346 0.000823 ***
factor(gvkey)001062 4.297e+00 2.093e+01 0.205 0.837285
factor(gvkey)001177 8.756e+00 6.789e+00 1.290 0.197169
factor(gvkey)001257 1.051e+01 7.641e+00 1.376 0.168843
factor(gvkey)001274 3.045e+01 7.909e+00 3.851 0.000119 ***
factor(gvkey)001414 -6.133e+00 1.208e+01 -0.508 0.611734
factor(gvkey)001447 3.845e+00 6.790e+00 0.566 0.571204
factor(gvkey)001449 6.471e+00 6.789e+00 0.953 0.340528
factor(gvkey)001487 1.355e+00 6.981e+00 0.194 0.846126
factor(gvkey)001526 4.032e+00 6.789e+00 0.594 0.552569
factor(gvkey)001545 -9.211e+00 1.118e+01 -0.823 0.410256
factor(gvkey)001618 -1.112e+01 1.118e+01 -0.994 0.320218
factor(gvkey)001949 3.631e+00 2.959e+01 0.123 0.902352
factor(gvkey)001982 9.767e+00 7.641e+00 1.278 0.201196
factor(gvkey)002002 3.002e+00 6.789e+00 0.442 0.658352
factor(gvkey)002005 -2.189e+00 6.789e+00 -0.322 0.747093
factor(gvkey)002019 8.846e+00 6.789e+00 1.303 0.192610
factor(gvkey)002176 2.448e+01 6.790e+00 3.606 0.000313 ***
factor(gvkey)002547 3.554e+00 6.789e+00 0.524 0.600602
factor(gvkey)002558 -1.839e+00 6.789e+00 -0.271 0.786464
factor(gvkey)002620 6.318e+00 6.789e+00 0.931 0.352051
factor(gvkey)002849 9.727e+00 7.641e+00 1.273 0.203051
factor(gvkey)002968 7.364e+00 6.815e+00 1.081 0.279904
factor(gvkey)003024 4.792e+00 6.789e+00 0.706 0.480299
factor(gvkey)003082 9.813e+00 6.789e+00 1.445 0.148380
factor(gvkey)003221 7.559e+00 6.789e+00 1.113 0.265535
factor(gvkey)003231 -4.315e-01 6.789e+00 -0.064 0.949327
factor(gvkey)003238 2.125e+00 6.789e+00 0.313 0.754316
factor(gvkey)003243 9.952e+00 6.844e+00 1.454 0.145915
factor(gvkey)003278 4.276e+01 1.323e+01 3.231 0.001238 **
factor(gvkey)003410 -8.911e+00 1.118e+01 -0.797 0.425631
factor(gvkey)003562 1.144e+01 7.909e+00 1.447 0.147915
factor(gvkey)003643 6.410e+00 6.789e+00 0.944 0.345141
factor(gvkey)004193 5.740e+00 7.641e+00 0.751 0.452508
factor(gvkey)004201 1.273e+01 6.789e+00 1.876 0.060725 .
factor(gvkey)004601 6.510e+00 8.607e+00 0.756 0.449416
factor(gvkey)004605 6.489e+00 7.909e+00 0.820 0.411981
factor(gvkey)004640 9.010e+00 6.789e+00 1.327 0.184493
factor(gvkey)004666 2.217e+01 7.909e+00 2.803 0.005074 **
factor(gvkey)004674 1.025e+01 6.789e+00 1.509 0.131249
factor(gvkey)004678 5.468e+00 6.789e+00 0.805 0.420611
factor(gvkey)004685 2.367e+00 6.789e+00 0.349 0.727387
factor(gvkey)004690 4.111e+00 6.789e+00 0.606 0.544793
factor(gvkey)004699 8.580e+00 6.789e+00 1.264 0.206342
factor(gvkey)004723 2.712e+01 6.790e+00 3.994 6.54e-05 ***
factor(gvkey)004737 7.305e-01 6.789e+00 0.108 0.914312
factor(gvkey)004740 1.421e+01 8.207e+00 1.731 0.083501 .
factor(gvkey)004842 3.846e+00 7.909e+00 0.486 0.626818
factor(gvkey)004885 1.506e+01 6.789e+00 2.218 0.026566 *
factor(gvkey)005048 -3.569e+00 7.715e+00 -0.463 0.643629
factor(gvkey)005072 -4.347e+00 2.093e+01 -0.208 0.835450
factor(gvkey)005149 3.698e+00 7.641e+00 0.484 0.628391
factor(gvkey)005342 4.821e+01 9.358e+00 5.152 2.63e-07 ***
factor(gvkey)005543 2.794e+01 7.909e+00 3.533 0.000413 ***
factor(gvkey)005735 4.608e+00 6.794e+00 0.678 0.497655
factor(gvkey)005763 7.355e+00 8.922e+00 0.824 0.409783
factor(gvkey)005786 3.381e+00 6.789e+00 0.498 0.618461
factor(gvkey)005849 7.685e+00 7.909e+00 0.972 0.331220
factor(gvkey)005862 -1.691e+00 8.207e+00 -0.206 0.836806
factor(gvkey)006239 1.452e+01 6.789e+00 2.139 0.032503 *
factor(gvkey)006333 6.181e-02 7.641e+00 0.008 0.993546
factor(gvkey)006653 1.887e+01 6.975e+00 2.706 0.006822 **
factor(gvkey)006682 3.354e+01 9.864e+00 3.401 0.000676 ***
factor(gvkey)006742 5.478e+00 6.789e+00 0.807 0.419766
factor(gvkey)006781 -9.033e-01 6.789e+00 -0.133 0.894156
factor(gvkey)006791 7.336e+00 9.864e+00 0.744 0.457052
factor(gvkey)007063 1.753e+01 6.975e+00 2.513 0.011986 *
factor(gvkey)007525 9.362e+00 1.480e+01 0.633 0.526948
factor(gvkey)007647 1.110e+01 6.823e+00 1.627 0.103678
factor(gvkey)007982 5.772e+00 6.789e+00 0.850 0.395248
factor(gvkey)008007 1.553e+01 6.799e+00 2.284 0.022387 *
factor(gvkey)008148 1.218e+01 2.093e+01 0.582 0.560686
factor(gvkey)008240 -3.683e+00 8.207e+00 -0.449 0.653621
factor(gvkey)008245 6.611e+00 6.790e+00 0.974 0.330263
factor(gvkey)008363 1.362e+01 7.641e+00 1.782 0.074760 .
factor(gvkey)008431 2.733e+00 6.789e+00 0.403 0.687244
factor(gvkey)008457 1.270e+01 7.909e+00 1.606 0.108221
factor(gvkey)008605 5.530e-02 8.207e+00 0.007 0.994625
factor(gvkey)008898 1.306e+01 6.789e+00 1.924 0.054359 .
factor(gvkey)009061 6.904e+00 6.789e+00 1.017 0.309258
factor(gvkey)009083 1.819e+01 8.543e+00 2.130 0.033220 *
factor(gvkey)009256 7.954e+00 1.046e+01 0.760 0.447127
factor(gvkey)009317 1.088e+01 6.789e+00 1.602 0.109134
factor(gvkey)009783 -1.396e+00 6.789e+00 -0.206 0.837103
factor(gvkey)010035 9.380e+00 6.789e+00 1.382 0.167115
factor(gvkey)010086 1.286e+01 6.975e+00 1.844 0.065261 .
factor(gvkey)010096 8.727e+00 7.909e+00 1.103 0.269879
factor(gvkey)010121 2.266e+00 6.799e+00 0.333 0.738902
factor(gvkey)010137 9.100e+00 8.927e+00 1.019 0.308053
factor(gvkey)010187 5.840e+00 6.789e+00 0.860 0.389707
factor(gvkey)010390 1.260e+00 1.323e+01 0.095 0.924136
factor(gvkey)010614 3.593e+00 6.789e+00 0.529 0.596695
factor(gvkey)010713 1.465e+00 1.709e+01 0.086 0.931647
factor(gvkey)010894 6.272e+00 7.177e+00 0.874 0.382201
factor(gvkey)010903 1.402e+01 7.641e+00 1.835 0.066555 .
factor(gvkey)010916 3.230e+00 6.789e+00 0.476 0.634255
factor(gvkey)010917 1.852e+01 2.093e+01 0.885 0.376244
factor(gvkey)011099 -6.691e+00 8.922e+00 -0.750 0.453309
factor(gvkey)011220 1.012e+01 7.641e+00 1.324 0.185523
factor(gvkey)011301 5.973e+00 7.641e+00 0.782 0.434418
factor(gvkey)011340 7.321e+00 7.641e+00 0.958 0.338002
factor(gvkey)011687 9.817e+00 6.789e+00 1.446 0.148208
factor(gvkey)011729 2.174e+01 6.789e+00 3.203 0.001367 **
factor(gvkey)011770 2.139e+01 7.641e+00 2.800 0.005129 **
factor(gvkey)011819 2.245e+01 1.323e+01 1.697 0.089827 .
factor(gvkey)011842 9.463e+00 6.789e+00 1.394 0.163413
factor(gvkey)011856 1.003e+01 6.789e+00 1.477 0.139611
factor(gvkey)011861 4.148e+00 6.789e+00 0.611 0.541252
factor(gvkey)011896 3.091e+00 6.789e+00 0.455 0.648897
factor(gvkey)012124 1.042e+01 6.632e+00 1.572 0.116072
factor(gvkey)012138 1.346e+01 6.789e+00 1.982 0.047520 *
factor(gvkey)012140 1.289e+01 7.398e+00 1.742 0.081512 .
factor(gvkey)012407 -4.331e+00 2.959e+01 -0.146 0.883641
factor(gvkey)012544 2.098e+01 7.641e+00 2.746 0.006040 **
factor(gvkey)012603 4.293e+00 6.789e+00 0.632 0.527172
factor(gvkey)012673 3.506e+00 6.804e+00 0.515 0.606350
factor(gvkey)012726 6.667e+00 6.789e+00 0.982 0.326131
factor(gvkey)012796 5.513e+00 6.789e+00 0.812 0.416772
factor(gvkey)012909 1.275e+01 7.909e+00 1.612 0.107004
factor(gvkey)013041 2.518e+00 6.789e+00 0.371 0.710762
factor(gvkey)013125 1.598e+01 7.909e+00 2.021 0.043357 *
factor(gvkey)013142 -5.792e-01 7.909e+00 -0.073 0.941626
factor(gvkey)013189 1.426e+01 9.358e+00 1.524 0.127542
factor(gvkey)013294 -5.626e+00 1.480e+01 -0.380 0.703801
factor(gvkey)013341 1.075e+01 6.789e+00 1.583 0.113479
factor(gvkey)013342 8.513e+00 6.789e+00 1.254 0.209884
factor(gvkey)013453 1.208e+01 6.789e+00 1.779 0.075240 .
factor(gvkey)013510 4.635e+00 7.641e+00 0.607 0.544147
factor(gvkey)013561 1.718e+01 7.398e+00 2.322 0.020256 *
factor(gvkey)013562 6.594e+00 7.641e+00 0.863 0.388133
factor(gvkey)013579 5.411e+00 7.909e+00 0.684 0.493875
factor(gvkey)013580 2.991e+01 1.709e+01 1.750 0.080075 .
factor(gvkey)013988 8.286e+00 6.789e+00 1.220 0.222313
factor(gvkey)014140 8.355e+00 6.844e+00 1.221 0.222237
factor(gvkey)014172 6.426e+00 6.789e+00 0.946 0.343928
factor(gvkey)014219 5.958e+00 6.789e+00 0.878 0.380210
factor(gvkey)014253 1.489e+00 6.789e+00 0.219 0.826364
factor(gvkey)014275 1.500e+01 6.789e+00 2.210 0.027138 *
factor(gvkey)014401 1.532e+01 1.480e+01 1.036 0.300378
factor(gvkey)014403 1.438e+01 1.480e+01 0.972 0.331274
factor(gvkey)014802 6.411e+00 6.795e+00 0.943 0.345463
factor(gvkey)014822 1.059e+01 7.398e+00 1.431 0.152378
factor(gvkey)014824 6.158e+00 6.789e+00 0.907 0.364388
factor(gvkey)014828 7.731e+00 7.909e+00 0.978 0.328328
factor(gvkey)015101 2.326e+01 8.207e+00 2.834 0.004603 **
factor(gvkey)015111 7.864e+00 7.641e+00 1.029 0.303390
factor(gvkey)015142 4.746e+00 7.909e+00 0.600 0.548468
factor(gvkey)015153 7.923e+00 7.641e+00 1.037 0.299805
factor(gvkey)015181 7.093e+00 6.798e+00 1.043 0.296812
factor(gvkey)015197 5.781e+00 6.789e+00 0.852 0.394501
factor(gvkey)015199 3.355e+00 6.789e+00 0.494 0.621144
factor(gvkey)015208 1.103e+01 7.599e+00 1.452 0.146535
factor(gvkey)015261 4.551e+00 7.909e+00 0.575 0.565032
factor(gvkey)015362 9.492e+00 6.794e+00 1.397 0.162395
factor(gvkey)015363 3.410e+00 6.789e+00 0.502 0.615510
factor(gvkey)015364 1.748e+01 7.641e+00 2.288 0.022187 *
factor(gvkey)015505 5.246e+00 7.178e+00 0.731 0.464927
factor(gvkey)015509 3.636e+00 7.423e+00 0.490 0.624298
factor(gvkey)015532 3.753e+00 8.293e+00 0.453 0.650835
factor(gvkey)015552 2.670e-02 8.252e+00 0.003 0.997418
factor(gvkey)015576 1.896e+00 6.823e+00 0.278 0.781126
factor(gvkey)015634 9.320e+00 7.668e+00 1.215 0.224217
factor(gvkey)015679 1.110e+01 8.208e+00 1.352 0.176362
factor(gvkey)015743 9.070e+00 8.208e+00 1.105 0.269181
factor(gvkey)015784 9.977e+00 7.945e+00 1.256 0.209256
factor(gvkey)015889 8.337e+00 6.792e+00 1.227 0.219705
factor(gvkey)015929 8.142e+00 7.951e+00 1.024 0.305831
factor(gvkey)016245 5.299e+00 6.789e+00 0.781 0.435089
factor(gvkey)016305 1.091e+01 8.208e+00 1.329 0.183766
factor(gvkey)016348 -1.394e+01 2.095e+01 -0.666 0.505722
factor(gvkey)016549 1.464e+01 2.093e+01 0.700 0.484189
factor(gvkey)016668 1.533e+00 6.789e+00 0.226 0.821329
factor(gvkey)016681 5.039e+00 6.975e+00 0.722 0.470080
factor(gvkey)016698 7.712e+00 8.207e+00 0.940 0.347433
factor(gvkey)016705 4.480e+00 6.789e+00 0.660 0.509297
factor(gvkey)016714 9.308e+00 7.641e+00 1.218 0.223187
factor(gvkey)016716 6.483e+00 7.641e+00 0.848 0.396205
factor(gvkey)016720 4.930e+02 2.959e+01 16.659 < 2e-16 ***
factor(gvkey)016748 3.743e+00 7.398e+00 0.506 0.612866
factor(gvkey)016775 8.802e+00 7.641e+00 1.152 0.249386
factor(gvkey)016777 5.618e+00 7.909e+00 0.710 0.477502
factor(gvkey)016781 7.315e+00 6.789e+00 1.077 0.281328
factor(gvkey)016790 8.389e+00 6.789e+00 1.236 0.216603
factor(gvkey)016821 6.540e+00 6.789e+00 0.963 0.335391
factor(gvkey)016832 1.392e+01 7.177e+00 1.940 0.052438 .
factor(gvkey)016845 9.296e+00 6.789e+00 1.369 0.170954
factor(gvkey)016878 5.677e+00 8.922e+00 0.636 0.524647
factor(gvkey)016889 6.800e+00 6.789e+00 1.002 0.316563
factor(gvkey)016890 4.728e+00 6.975e+00 0.678 0.497876
factor(gvkey)016910 5.323e+00 7.177e+00 0.742 0.458350
factor(gvkey)016929 7.889e-02 6.789e+00 0.012 0.990729
factor(gvkey)016967 5.015e+00 1.709e+01 0.294 0.769133
factor(gvkey)016981 1.208e+01 6.789e+00 1.780 0.075153 .
factor(gvkey)016989 6.473e-01 9.864e+00 0.066 0.947684
factor(gvkey)017035 6.740e+00 7.641e+00 0.882 0.377720
factor(gvkey)017070 7.582e+00 6.789e+00 1.117 0.264082
factor(gvkey)017073 5.952e+00 7.641e+00 0.779 0.436044
factor(gvkey)017074 1.711e+01 7.641e+00 2.239 0.025184 *
factor(gvkey)017076 8.231e+00 1.480e+01 0.556 0.578048
factor(gvkey)017095 2.277e+00 6.789e+00 0.335 0.737369
[ reached getOption("max.print") -- omitted 665 rows ]
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 29.59 on 8326 degrees of freedom
(8 observations deleted due to missingness)
Multiple R-squared: 0.2586, Adjusted R-squared: 0.1854
F-statistic: 3.529 on 823 and 8326 DF, p-value: < 2.2e-16
Call:
lm(formula = sgr ~ dltt + factor(gvkey) - 1 + factor(industry) -
1, data = panel.no.df)
Residuals:
Min 1Q Median 3Q Max
-152.27 -11.16 -1.99 7.81 430.10
Coefficients: (42 not defined because of singularities)
Estimate Std. Error t value Pr(>|t|)
dltt 1.610e-05 4.813e-06 3.346 0.000823 ## factor(gvkey)001062 4.297e+00 2.093e+01 0.205 0.837285
## factor(gvkey)001177 8.756e+00 6.789e+00 1.290 0.197169
## factor(gvkey)001257 1.051e+01 7.641e+00 1.376 0.168843
## factor(gvkey)001274 3.045e+01 7.909e+00 3.851 0.000119
factor(gvkey)001414 -6.133e+00 1.208e+01 -0.508 0.611734
factor(gvkey)001447 3.845e+00 6.790e+00 0.566 0.571204
factor(gvkey)001449 6.471e+00 6.789e+00 0.953 0.340528
factor(gvkey)001487 1.355e+00 6.981e+00 0.194 0.846126
factor(gvkey)001526 4.032e+00 6.789e+00 0.594 0.552569
factor(gvkey)001545 -9.211e+00 1.118e+01 -0.823 0.410256
factor(gvkey)001618 -1.112e+01 1.118e+01 -0.994 0.320218
factor(gvkey)001949 3.631e+00 2.959e+01 0.123 0.902352
factor(gvkey)001982 9.767e+00 7.641e+00 1.278 0.201196
factor(gvkey)002002 3.002e+00 6.789e+00 0.442 0.658352
factor(gvkey)002005 -2.189e+00 6.789e+00 -0.322 0.747093
factor(gvkey)002019 8.846e+00 6.789e+00 1.303 0.192610
factor(gvkey)002176 2.448e+01 6.790e+00 3.606 0.000313 ## factor(gvkey)002547 3.554e+00 6.789e+00 0.524 0.600602
## factor(gvkey)002558 -1.839e+00 6.789e+00 -0.271 0.786464
## factor(gvkey)002620 6.318e+00 6.789e+00 0.931 0.352051
## factor(gvkey)002849 9.727e+00 7.641e+00 1.273 0.203051
## factor(gvkey)002968 7.364e+00 6.815e+00 1.081 0.279904
## factor(gvkey)003024 4.792e+00 6.789e+00 0.706 0.480299
## factor(gvkey)003082 9.813e+00 6.789e+00 1.445 0.148380
## factor(gvkey)003221 7.559e+00 6.789e+00 1.113 0.265535
## factor(gvkey)003231 -4.315e-01 6.789e+00 -0.064 0.949327
## factor(gvkey)003238 2.125e+00 6.789e+00 0.313 0.754316
## factor(gvkey)003243 9.952e+00 6.844e+00 1.454 0.145915
## factor(gvkey)003278 4.276e+01 1.323e+01 3.231 0.001238 ## factor(gvkey)003410 -8.911e+00 1.118e+01 -0.797 0.425631
## factor(gvkey)003562 1.144e+01 7.909e+00 1.447 0.147915
## factor(gvkey)003643 6.410e+00 6.789e+00 0.944 0.345141
## factor(gvkey)004193 5.740e+00 7.641e+00 0.751 0.452508
## factor(gvkey)004201 1.273e+01 6.789e+00 1.876 0.060725 .
## factor(gvkey)004601 6.510e+00 8.607e+00 0.756 0.449416
## factor(gvkey)004605 6.489e+00 7.909e+00 0.820 0.411981
## factor(gvkey)004640 9.010e+00 6.789e+00 1.327 0.184493
## factor(gvkey)004666 2.217e+01 7.909e+00 2.803 0.005074 ## factor(gvkey)004674 1.025e+01 6.789e+00 1.509 0.131249
## factor(gvkey)004678 5.468e+00 6.789e+00 0.805 0.420611
## factor(gvkey)004685 2.367e+00 6.789e+00 0.349 0.727387
## factor(gvkey)004690 4.111e+00 6.789e+00 0.606 0.544793
## factor(gvkey)004699 8.580e+00 6.789e+00 1.264 0.206342
## factor(gvkey)004723 2.712e+01 6.790e+00 3.994 6.54e-05
factor(gvkey)004737 7.305e-01 6.789e+00 0.108 0.914312
factor(gvkey)004740 1.421e+01 8.207e+00 1.731 0.083501 .
factor(gvkey)004842 3.846e+00 7.909e+00 0.486 0.626818
factor(gvkey)004885 1.506e+01 6.789e+00 2.218 0.026566 *
## factor(gvkey)005048 -3.569e+00 7.715e+00 -0.463 0.643629
factor(gvkey)005072 -4.347e+00 2.093e+01 -0.208 0.835450
factor(gvkey)005149 3.698e+00 7.641e+00 0.484 0.628391
factor(gvkey)005342 4.821e+01 9.358e+00 5.152 2.63e-07 ## factor(gvkey)005543 2.794e+01 7.909e+00 3.533 0.000413
factor(gvkey)005735 4.608e+00 6.794e+00 0.678 0.497655
factor(gvkey)005763 7.355e+00 8.922e+00 0.824 0.409783
factor(gvkey)005786 3.381e+00 6.789e+00 0.498 0.618461
factor(gvkey)005849 7.685e+00 7.909e+00 0.972 0.331220
factor(gvkey)005862 -1.691e+00 8.207e+00 -0.206 0.836806
factor(gvkey)006239 1.452e+01 6.789e+00 2.139 0.032503 *
## factor(gvkey)006333 6.181e-02 7.641e+00 0.008 0.993546
factor(gvkey)006653 1.887e+01 6.975e+00 2.706 0.006822 **
factor(gvkey)006682 3.354e+01 9.864e+00 3.401 0.000676 ## factor(gvkey)006742 5.478e+00 6.789e+00 0.807 0.419766
## factor(gvkey)006781 -9.033e-01 6.789e+00 -0.133 0.894156
## factor(gvkey)006791 7.336e+00 9.864e+00 0.744 0.457052
## factor(gvkey)007063 1.753e+01 6.975e+00 2.513 0.011986
## factor(gvkey)007525 9.362e+00 1.480e+01 0.633 0.526948
## factor(gvkey)007647 1.110e+01 6.823e+00 1.627 0.103678
## factor(gvkey)007982 5.772e+00 6.789e+00 0.850 0.395248
## factor(gvkey)008007 1.553e+01 6.799e+00 2.284 0.022387 *
## factor(gvkey)008148 1.218e+01 2.093e+01 0.582 0.560686
## factor(gvkey)008240 -3.683e+00 8.207e+00 -0.449 0.653621
## factor(gvkey)008245 6.611e+00 6.790e+00 0.974 0.330263
## factor(gvkey)008363 1.362e+01 7.641e+00 1.782 0.074760 .
## factor(gvkey)008431 2.733e+00 6.789e+00 0.403 0.687244
## factor(gvkey)008457 1.270e+01 7.909e+00 1.606 0.108221
## factor(gvkey)008605 5.530e-02 8.207e+00 0.007 0.994625
## factor(gvkey)008898 1.306e+01 6.789e+00 1.924 0.054359 .
## factor(gvkey)009061 6.904e+00 6.789e+00 1.017 0.309258
## factor(gvkey)009083 1.819e+01 8.543e+00 2.130 0.033220 *
## factor(gvkey)009256 7.954e+00 1.046e+01 0.760 0.447127
## factor(gvkey)009317 1.088e+01 6.789e+00 1.602 0.109134
## factor(gvkey)009783 -1.396e+00 6.789e+00 -0.206 0.837103
## factor(gvkey)010035 9.380e+00 6.789e+00 1.382 0.167115
## factor(gvkey)010086 1.286e+01 6.975e+00 1.844 0.065261 .
## factor(gvkey)010096 8.727e+00 7.909e+00 1.103 0.269879
## factor(gvkey)010121 2.266e+00 6.799e+00 0.333 0.738902
## factor(gvkey)010137 9.100e+00 8.927e+00 1.019 0.308053
## factor(gvkey)010187 5.840e+00 6.789e+00 0.860 0.389707
## factor(gvkey)010390 1.260e+00 1.323e+01 0.095 0.924136
## factor(gvkey)010614 3.593e+00 6.789e+00 0.529 0.596695
## factor(gvkey)010713 1.465e+00 1.709e+01 0.086 0.931647
## factor(gvkey)010894 6.272e+00 7.177e+00 0.874 0.382201
## factor(gvkey)010903 1.402e+01 7.641e+00 1.835 0.066555 .
## factor(gvkey)010916 3.230e+00 6.789e+00 0.476 0.634255
## factor(gvkey)010917 1.852e+01 2.093e+01 0.885 0.376244
## factor(gvkey)011099 -6.691e+00 8.922e+00 -0.750 0.453309
## factor(gvkey)011220 1.012e+01 7.641e+00 1.324 0.185523
## factor(gvkey)011301 5.973e+00 7.641e+00 0.782 0.434418
## factor(gvkey)011340 7.321e+00 7.641e+00 0.958 0.338002
## factor(gvkey)011687 9.817e+00 6.789e+00 1.446 0.148208
## factor(gvkey)011729 2.174e+01 6.789e+00 3.203 0.001367
factor(gvkey)011770 2.139e+01 7.641e+00 2.800 0.005129 **
factor(gvkey)011819 2.245e+01 1.323e+01 1.697 0.089827 .
factor(gvkey)011842 9.463e+00 6.789e+00 1.394 0.163413
factor(gvkey)011856 1.003e+01 6.789e+00 1.477 0.139611
factor(gvkey)011861 4.148e+00 6.789e+00 0.611 0.541252
factor(gvkey)011896 3.091e+00 6.789e+00 0.455 0.648897
factor(gvkey)012124 1.042e+01 6.632e+00 1.572 0.116072
factor(gvkey)012138 1.346e+01 6.789e+00 1.982 0.047520 *
## factor(gvkey)012140 1.289e+01 7.398e+00 1.742 0.081512 .
factor(gvkey)012407 -4.331e+00 2.959e+01 -0.146 0.883641
factor(gvkey)012544 2.098e+01 7.641e+00 2.746 0.006040 **
factor(gvkey)012603 4.293e+00 6.789e+00 0.632 0.527172
factor(gvkey)012673 3.506e+00 6.804e+00 0.515 0.606350
factor(gvkey)012726 6.667e+00 6.789e+00 0.982 0.326131
factor(gvkey)012796 5.513e+00 6.789e+00 0.812 0.416772
factor(gvkey)012909 1.275e+01 7.909e+00 1.612 0.107004
factor(gvkey)013041 2.518e+00 6.789e+00 0.371 0.710762
factor(gvkey)013125 1.598e+01 7.909e+00 2.021 0.043357 *
## factor(gvkey)013142 -5.792e-01 7.909e+00 -0.073 0.941626
factor(gvkey)013189 1.426e+01 9.358e+00 1.524 0.127542
factor(gvkey)013294 -5.626e+00 1.480e+01 -0.380 0.703801
factor(gvkey)013341 1.075e+01 6.789e+00 1.583 0.113479
factor(gvkey)013342 8.513e+00 6.789e+00 1.254 0.209884
factor(gvkey)013453 1.208e+01 6.789e+00 1.779 0.075240 .
factor(gvkey)013510 4.635e+00 7.641e+00 0.607 0.544147
factor(gvkey)013561 1.718e+01 7.398e+00 2.322 0.020256 *
## factor(gvkey)013562 6.594e+00 7.641e+00 0.863 0.388133
factor(gvkey)013579 5.411e+00 7.909e+00 0.684 0.493875
factor(gvkey)013580 2.991e+01 1.709e+01 1.750 0.080075 .
factor(gvkey)013988 8.286e+00 6.789e+00 1.220 0.222313
factor(gvkey)014140 8.355e+00 6.844e+00 1.221 0.222237
factor(gvkey)014172 6.426e+00 6.789e+00 0.946 0.343928
factor(gvkey)014219 5.958e+00 6.789e+00 0.878 0.380210
factor(gvkey)014253 1.489e+00 6.789e+00 0.219 0.826364
factor(gvkey)014275 1.500e+01 6.789e+00 2.210 0.027138 *
## factor(gvkey)014401 1.532e+01 1.480e+01 1.036 0.300378
factor(gvkey)014403 1.438e+01 1.480e+01 0.972 0.331274
factor(gvkey)014802 6.411e+00 6.795e+00 0.943 0.345463
factor(gvkey)014822 1.059e+01 7.398e+00 1.431 0.152378
factor(gvkey)014824 6.158e+00 6.789e+00 0.907 0.364388
factor(gvkey)014828 7.731e+00 7.909e+00 0.978 0.328328
factor(gvkey)015101 2.326e+01 8.207e+00 2.834 0.004603 **
factor(gvkey)015111 7.864e+00 7.641e+00 1.029 0.303390
factor(gvkey)015142 4.746e+00 7.909e+00 0.600 0.548468
factor(gvkey)015153 7.923e+00 7.641e+00 1.037 0.299805
factor(gvkey)015181 7.093e+00 6.798e+00 1.043 0.296812
factor(gvkey)015197 5.781e+00 6.789e+00 0.852 0.394501
factor(gvkey)015199 3.355e+00 6.789e+00 0.494 0.621144
factor(gvkey)015208 1.103e+01 7.599e+00 1.452 0.146535
factor(gvkey)015261 4.551e+00 7.909e+00 0.575 0.565032
factor(gvkey)015362 9.492e+00 6.794e+00 1.397 0.162395
factor(gvkey)015363 3.410e+00 6.789e+00 0.502 0.615510
factor(gvkey)015364 1.748e+01 7.641e+00 2.288 0.022187 *
## factor(gvkey)015505 5.246e+00 7.178e+00 0.731 0.464927
factor(gvkey)015509 3.636e+00 7.423e+00 0.490 0.624298
factor(gvkey)015532 3.753e+00 8.293e+00 0.453 0.650835
factor(gvkey)015552 2.670e-02 8.252e+00 0.003 0.997418
factor(gvkey)015576 1.896e+00 6.823e+00 0.278 0.781126
factor(gvkey)015634 9.320e+00 7.668e+00 1.215 0.224217
factor(gvkey)015679 1.110e+01 8.208e+00 1.352 0.176362
factor(gvkey)015743 9.070e+00 8.208e+00 1.105 0.269181
factor(gvkey)015784 9.977e+00 7.945e+00 1.256 0.209256
factor(gvkey)015889 8.337e+00 6.792e+00 1.227 0.219705
factor(gvkey)015929 8.142e+00 7.951e+00 1.024 0.305831
factor(gvkey)016245 5.299e+00 6.789e+00 0.781 0.435089
factor(gvkey)016305 1.091e+01 8.208e+00 1.329 0.183766
factor(gvkey)016348 -1.394e+01 2.095e+01 -0.666 0.505722
factor(gvkey)016549 1.464e+01 2.093e+01 0.700 0.484189
factor(gvkey)016668 1.533e+00 6.789e+00 0.226 0.821329
factor(gvkey)016681 5.039e+00 6.975e+00 0.722 0.470080
factor(gvkey)016698 7.712e+00 8.207e+00 0.940 0.347433
factor(gvkey)016705 4.480e+00 6.789e+00 0.660 0.509297
factor(gvkey)016714 9.308e+00 7.641e+00 1.218 0.223187
factor(gvkey)016716 6.483e+00 7.641e+00 0.848 0.396205
factor(gvkey)016720 4.930e+02 2.959e+01 16.659 < 2e-16 ## factor(gvkey)016748 3.743e+00 7.398e+00 0.506 0.612866
## factor(gvkey)016775 8.802e+00 7.641e+00 1.152 0.249386
## factor(gvkey)016777 5.618e+00 7.909e+00 0.710 0.477502
## factor(gvkey)016781 7.315e+00 6.789e+00 1.077 0.281328
## factor(gvkey)016790 8.389e+00 6.789e+00 1.236 0.216603
## factor(gvkey)016821 6.540e+00 6.789e+00 0.963 0.335391
## factor(gvkey)016832 1.392e+01 7.177e+00 1.940 0.052438 .
## factor(gvkey)016845 9.296e+00 6.789e+00 1.369 0.170954
## factor(gvkey)016878 5.677e+00 8.922e+00 0.636 0.524647
## factor(gvkey)016889 6.800e+00 6.789e+00 1.002 0.316563
## factor(gvkey)016890 4.728e+00 6.975e+00 0.678 0.497876
## factor(gvkey)016910 5.323e+00 7.177e+00 0.742 0.458350
## factor(gvkey)016929 7.889e-02 6.789e+00 0.012 0.990729
## factor(gvkey)016967 5.015e+00 1.709e+01 0.294 0.769133
## factor(gvkey)016981 1.208e+01 6.789e+00 1.780 0.075153 .
## factor(gvkey)016989 6.473e-01 9.864e+00 0.066 0.947684
## factor(gvkey)017035 6.740e+00 7.641e+00 0.882 0.377720
## factor(gvkey)017070 7.582e+00 6.789e+00 1.117 0.264082
## factor(gvkey)017073 5.952e+00 7.641e+00 0.779 0.436044
## factor(gvkey)017074 1.711e+01 7.641e+00 2.239 0.025184
## factor(gvkey)017076 8.231e+00 1.480e+01 0.556 0.578048
## factor(gvkey)017095 2.277e+00 6.789e+00 0.335 0.737369
## factor(gvkey)017106 5.077e+00 6.975e+00 0.728 0.466692
## factor(gvkey)017115 5.024e+00 6.789e+00 0.740 0.459313
## factor(gvkey)017120 1.740e+01 6.789e+00 2.563 0.010381 *
## factor(gvkey)017130 2.303e+01 6.789e+00 3.392 0.000696 ## factor(gvkey)017131 1.073e+01 7.641e+00 1.404 0.160421
## factor(gvkey)017132 5.211e+00 6.789e+00 0.768 0.442776
## factor(gvkey)017136 9.731e-01 6.789e+00 0.143 0.886024
## factor(gvkey)017145 2.990e+00 6.789e+00 0.440 0.659627
## factor(gvkey)017150 8.836e+00 6.789e+00 1.302 0.193107
## factor(gvkey)017151 5.776e+00 6.789e+00 0.851 0.394949
## factor(gvkey)017168 2.521e+00 9.358e+00 0.269 0.787604
## factor(gvkey)017173 5.680e-01 1.118e+01 0.051 0.959497
## factor(gvkey)017184 4.413e+00 6.789e+00 0.650 0.515702
## factor(gvkey)017195 4.671e+00 6.789e+00 0.688 0.491438
## factor(gvkey)017197 2.937e+01 6.975e+00 4.211 2.57e-05 ## factor(gvkey)017222 1.951e-01 2.959e+01 0.007 0.994740
## factor(gvkey)017240 9.940e+00 6.975e+00 1.425 0.154176
## factor(gvkey)017245 1.239e-01 6.789e+00 0.018 0.985439
## factor(gvkey)017248 7.981e+00 6.789e+00 1.176 0.239795
## factor(gvkey)017252 6.992e+00 7.641e+00 0.915 0.360154
## factor(gvkey)017266 2.733e+01 7.641e+00 3.576 0.000350 ## factor(gvkey)017269 -4.337e+00 6.789e+00 -0.639 0.522970
## factor(gvkey)017367 2.216e+00 1.208e+01 0.183 0.854438
## factor(gvkey)017388 -1.602e+00 8.922e+00 -0.179 0.857553
## factor(gvkey)017438 1.248e+01 1.480e+01 0.844 0.398934
## factor(gvkey)017451 3.269e+01 1.709e+01 1.913 0.055765 .
## factor(gvkey)017534 7.531e+00 1.046e+01 0.720 0.471646
## factor(gvkey)017556 2.503e+01 2.093e+01 1.196 0.231607
## factor(gvkey)017696 1.757e+01 1.709e+01 1.028 0.303746
## factor(gvkey)017709 2.442e+01 1.709e+01 1.429 0.153020
## factor(gvkey)017715 3.240e+00 1.480e+01 0.219 0.826674
## factor(gvkey)017724 8.577e+00 9.864e+00 0.869 0.384616
## factor(gvkey)017875 1.073e+01 2.959e+01 0.363 0.716971
## factor(gvkey)017877 4.251e+00 1.118e+01 0.380 0.703932
## factor(gvkey)018035 1.354e+00 2.959e+01 0.046 0.963518
## factor(gvkey)018037 7.079e-01 7.909e+00 0.090 0.928677
## factor(gvkey)018040 4.175e+00 1.709e+01 0.244 0.806968
## factor(gvkey)018049 9.697e+00 6.789e+00 1.428 0.153218
## factor(gvkey)018110 1.014e+00 6.789e+00 0.149 0.881326
## factor(gvkey)018184 5.744e+01 2.093e+01 2.745 0.006064 ## factor(gvkey)018195 -4.121e+00 2.093e+01 -0.197 0.843881
## factor(gvkey)018241 2.421e+00 6.789e+00 0.357 0.721424
## factor(gvkey)018276 2.128e+00 6.789e+00 0.313 0.753914
## factor(gvkey)018307 6.568e+00 1.046e+01 0.628 0.530202
## factor(gvkey)018329 5.974e+00 7.177e+00 0.832 0.405203
## factor(gvkey)018358 1.565e+00 7.398e+00 0.212 0.832455
## factor(gvkey)018385 -3.309e+00 1.480e+01 -0.224 0.823022
## factor(gvkey)018392 -1.922e+01 2.093e+01 -0.919 0.358351
## factor(gvkey)018434 9.024e+00 1.046e+01 0.863 0.388425
## factor(gvkey)018533 5.988e+00 8.207e+00 0.730 0.465661
## factor(gvkey)018732 4.533e+00 7.641e+00 0.593 0.552994
## factor(gvkey)018948 -4.048e+00 2.093e+01 -0.193 0.846615
## factor(gvkey)019057 -4.801e+00 7.909e+00 -0.607 0.543846
## factor(gvkey)019094 9.695e+00 6.789e+00 1.428 0.153296
## factor(gvkey)019124 3.183e+00 6.789e+00 0.469 0.639194
## factor(gvkey)019137 -1.715e-01 9.864e+00 -0.017 0.986128
## factor(gvkey)019150 3.335e+00 6.789e+00 0.491 0.623260
## factor(gvkey)019159 8.309e+00 2.959e+01 0.281 0.778877
## factor(gvkey)019262 1.872e+00 6.789e+00 0.276 0.782699
## factor(gvkey)019318 6.401e+00 6.789e+00 0.943 0.345753
## factor(gvkey)019355 6.459e+00 6.789e+00 0.951 0.341450
## factor(gvkey)019428 7.268e+00 6.789e+00 1.071 0.284367
## factor(gvkey)019570 3.515e+00 6.789e+00 0.518 0.604694
## factor(gvkey)019713 1.302e+01 7.398e+00 1.759 0.078562 .
## factor(gvkey)019817 2.449e+00 7.641e+00 0.320 0.748625
## factor(gvkey)019860 -1.063e+00 2.959e+01 -0.036 0.971357
## factor(gvkey)019873 7.056e+00 6.975e+00 1.012 0.311740
## factor(gvkey)019927 2.546e+01 2.959e+01 0.860 0.389694
## factor(gvkey)020019 8.174e+00 6.789e+00 1.204 0.228603
## factor(gvkey)020029 3.883e+00 1.118e+01 0.347 0.728485
## factor(gvkey)020109 4.215e+00 6.789e+00 0.621 0.534693
## factor(gvkey)020277 1.350e+01 2.093e+01 0.645 0.518860
## factor(gvkey)020280 1.677e+02 2.959e+01 5.668 1.49e-08
factor(gvkey)020299 3.525e+01 2.959e+01 1.191 0.233622
factor(gvkey)020344 4.291e+00 2.093e+01 0.205 0.837527
factor(gvkey)020422 8.723e+01 2.959e+01 2.948 0.003210 **
factor(gvkey)020677 2.227e+01 2.959e+01 0.753 0.451689
factor(gvkey)020761 6.533e+01 2.959e+01 2.208 0.027300 *
## factor(gvkey)020791 2.625e+01 8.543e+00 3.072 0.002131 **
factor(gvkey)021073 2.064e+01 2.959e+01 0.697 0.485588
factor(gvkey)021104 2.702e+01 2.959e+01 0.913 0.361314
factor(gvkey)021326 1.523e+01 2.093e+01 0.728 0.466629
factor(gvkey)021382 -2.474e+00 7.918e+00 -0.312 0.754726
factor(gvkey)021503 2.873e+00 6.789e+00 0.423 0.672130
factor(gvkey)021593 2.149e+00 1.046e+01 0.205 0.837247
factor(gvkey)021616 -2.030e+00 2.093e+01 -0.097 0.922726
factor(gvkey)021825 -3.623e+00 2.093e+01 -0.173 0.862561
factor(gvkey)022025 1.995e+02 2.959e+01 6.741 1.68e-11 ## factor(gvkey)022086 5.264e+00 6.789e+00 0.775 0.438176
## factor(gvkey)022459 2.044e+00 2.959e+01 0.069 0.944930
## factor(gvkey)022717 5.821e+00 7.398e+00 0.787 0.431386
## factor(gvkey)022983 5.146e+00 2.959e+01 0.174 0.861960
## factor(gvkey)023025 1.298e+01 8.543e+00 1.520 0.128607
## factor(gvkey)023111 6.725e+00 7.398e+00 0.909 0.363390
## factor(gvkey)023432 8.803e+00 2.959e+01 0.297 0.766121
## factor(gvkey)023450 3.289e+00 7.909e+00 0.416 0.677481
## factor(gvkey)023485 7.859e+00 1.709e+01 0.460 0.645517
## factor(gvkey)023500 1.078e+01 6.789e+00 1.587 0.112470
## factor(gvkey)023698 2.255e+01 2.959e+01 0.762 0.445995
## factor(gvkey)023768 4.471e+01 1.208e+01 3.701 0.000216
factor(gvkey)023793 9.310e+00 7.641e+00 1.218 0.223089
factor(gvkey)023848 7.176e-01 1.118e+01 0.064 0.948845
factor(gvkey)024098 1.569e+01 2.959e+01 0.530 0.595969
factor(gvkey)024232 9.690e+00 6.789e+00 1.427 0.153519
factor(gvkey)024233 8.031e+00 7.641e+00 1.051 0.293251
factor(gvkey)024287 2.254e+01 8.208e+00 2.747 0.006033 **
factor(gvkey)024318 1.448e+01 6.975e+00 2.076 0.037971 *
## factor(gvkey)024379 2.869e+00 6.789e+00 0.423 0.672599
factor(gvkey)024440 1.225e+01 7.909e+00 1.548 0.121570
factor(gvkey)024447 7.572e+00 6.789e+00 1.115 0.264763
factor(gvkey)024466 1.621e+01 6.975e+00 2.323 0.020184 *
## factor(gvkey)024533 4.206e+00 7.909e+00 0.532 0.594897
factor(gvkey)024578 -9.182e+00 1.209e+01 -0.759 0.447706
factor(gvkey)024678 2.365e+00 6.789e+00 0.348 0.727605
factor(gvkey)024725 1.361e+01 7.641e+00 1.781 0.074889 .
factor(gvkey)024731 7.234e+00 7.909e+00 0.915 0.360379
factor(gvkey)024750 4.312e+01 1.709e+01 2.524 0.011636 *
## factor(gvkey)024825 1.427e+01 7.909e+00 1.805 0.071131 .
factor(gvkey)025030 1.443e+01 1.118e+01 1.290 0.196973
factor(gvkey)025140 1.003e+00 7.177e+00 0.140 0.888816
factor(gvkey)025173 8.627e+00 6.789e+00 1.271 0.203833
factor(gvkey)025236 -2.726e+00 1.323e+01 -0.206 0.836788
factor(gvkey)025296 1.107e+01 1.118e+01 0.990 0.322362
factor(gvkey)025339 1.329e+01 7.641e+00 1.739 0.082119 .
factor(gvkey)025376 1.063e+01 7.177e+00 1.481 0.138519
factor(gvkey)025425 -2.190e+00 2.959e+01 -0.074 0.941000
factor(gvkey)025462 2.242e+01 1.480e+01 1.515 0.129698
factor(gvkey)025481 5.330e-01 9.358e+00 0.057 0.954582
factor(gvkey)025570 1.143e+00 6.617e+00 0.173 0.862831
factor(gvkey)025632 5.043e+01 1.323e+01 3.810 0.000140 ## factor(gvkey)025633 7.530e+00 7.909e+00 0.952 0.341100
## factor(gvkey)025665 2.629e+00 7.909e+00 0.332 0.739577
## factor(gvkey)025714 2.076e+01 8.209e+00 2.529 0.011461
## factor(gvkey)025751 4.102e+00 6.789e+00 0.604 0.545716
## factor(gvkey)025877 1.566e+01 7.641e+00 2.049 0.040449 *
## factor(gvkey)025895 2.433e+01 6.975e+00 3.488 0.000489 ## factor(gvkey)025950 4.248e+00 7.909e+00 0.537 0.591164
## factor(gvkey)026016 1.065e+01 1.118e+01 0.953 0.340828
## factor(gvkey)026071 3.935e+00 7.909e+00 0.498 0.618816
## factor(gvkey)026347 1.192e+00 2.959e+01 0.040 0.967857
## factor(gvkey)027780 1.220e+01 7.641e+00 1.596 0.110495
## factor(gvkey)027875 9.400e+00 7.909e+00 1.188 0.234673
## factor(gvkey)027914 1.148e+01 7.641e+00 1.503 0.132967
## factor(gvkey)027932 2.131e+01 9.864e+00 2.160 0.030795
factor(gvkey)028022 7.584e+00 6.789e+00 1.117 0.263992
factor(gvkey)028034 2.178e+01 6.975e+00 3.123 0.001798 **
factor(gvkey)028119 1.339e+01 7.398e+00 1.810 0.070354 .
factor(gvkey)028152 9.364e+00 9.864e+00 0.949 0.342478
factor(gvkey)028155 6.272e+00 6.789e+00 0.924 0.355599
factor(gvkey)028216 1.396e+01 7.641e+00 1.827 0.067725 .
factor(gvkey)028278 2.893e+00 7.641e+00 0.379 0.704926
factor(gvkey)028322 5.100e+00 7.909e+00 0.645 0.519062
factor(gvkey)028323 1.154e+01 7.641e+00 1.510 0.131156
factor(gvkey)028340 1.056e+01 7.641e+00 1.381 0.167168
factor(gvkey)028349 2.451e+00 6.789e+00 0.361 0.718144
factor(gvkey)028409 1.666e+01 1.323e+01 1.259 0.208022
factor(gvkey)028608 4.553e+00 7.909e+00 0.576 0.564858
factor(gvkey)028620 5.778e+00 7.398e+00 0.781 0.434821
factor(gvkey)028629 7.584e+00 7.909e+00 0.959 0.337629
factor(gvkey)028733 1.200e+01 6.975e+00 1.720 0.085518 .
factor(gvkey)028769 7.221e+00 7.641e+00 0.945 0.344659
factor(gvkey)028866 1.120e+01 1.046e+01 1.071 0.284326
factor(gvkey)028967 7.628e+00 9.864e+00 0.773 0.439385
factor(gvkey)029052 1.735e+01 7.398e+00 2.345 0.019068 *
## factor(gvkey)029055 9.962e+00 8.543e+00 1.166 0.243575
factor(gvkey)029061 -7.836e-01 1.323e+01 -0.059 0.952785
factor(gvkey)029082 9.030e+00 7.641e+00 1.182 0.237303
factor(gvkey)029097 5.588e+00 9.864e+00 0.566 0.571095
factor(gvkey)029099 4.478e+00 7.909e+00 0.566 0.571311
factor(gvkey)029101 6.524e+00 6.789e+00 0.961 0.336570
factor(gvkey)029211 1.565e+01 7.641e+00 2.048 0.040620 *
## factor(gvkey)029246 3.635e+00 6.789e+00 0.535 0.592382
factor(gvkey)029282 2.129e+01 6.789e+00 3.136 0.001719 **
factor(gvkey)029286 1.382e+01 6.789e+00 2.036 0.041766 *
## factor(gvkey)029359 9.205e+00 7.641e+00 1.205 0.228326
factor(gvkey)029389 6.732e+00 7.909e+00 0.851 0.394696
factor(gvkey)029446 3.015e+00 6.789e+00 0.444 0.656930
factor(gvkey)029613 8.540e+00 8.922e+00 0.957 0.338530
factor(gvkey)029649 1.196e+01 7.909e+00 1.512 0.130489
factor(gvkey)029710 3.694e+00 7.641e+00 0.483 0.628784
factor(gvkey)029804 1.145e+01 9.358e+00 1.224 0.221098
factor(gvkey)029855 -9.401e-01 1.323e+01 -0.071 0.943374
factor(gvkey)029868 1.614e+01 7.641e+00 2.112 0.034699 *
## factor(gvkey)029875 1.225e+01 7.398e+00 1.656 0.097795 .
factor(gvkey)029984 2.503e+01 7.398e+00 3.384 0.000718 ## factor(gvkey)029994 2.847e+00 1.323e+01 0.215 0.829650
## factor(gvkey)030146 1.331e+01 6.789e+00 1.960 0.050019 .
## factor(gvkey)030188 -5.236e-01 1.046e+01 -0.050 0.960088
## factor(gvkey)030218 1.092e+01 7.909e+00 1.381 0.167332
## factor(gvkey)030222 9.356e+00 6.975e+00 1.341 0.179841
## factor(gvkey)030293 1.700e+01 7.177e+00 2.368 0.017883
## factor(gvkey)030298 1.901e+00 7.398e+00 0.257 0.797234
## factor(gvkey)030328 7.802e+00 8.922e+00 0.874 0.381932
## factor(gvkey)030354 9.362e+00 7.177e+00 1.304 0.192139
## factor(gvkey)030384 -8.115e-01 7.909e+00 -0.103 0.918278
## factor(gvkey)030416 1.265e+00 8.922e+00 0.142 0.887256
## factor(gvkey)030452 1.391e+01 7.910e+00 1.759 0.078685 .
## factor(gvkey)030490 9.422e+00 7.398e+00 1.274 0.202833
## factor(gvkey)030495 -1.004e+00 8.207e+00 -0.122 0.902642
## factor(gvkey)030501 1.206e+01 7.642e+00 1.579 0.114442
## factor(gvkey)030539 7.831e+00 7.641e+00 1.025 0.305440
## factor(gvkey)030580 1.868e+01 7.912e+00 2.361 0.018231 *
## factor(gvkey)030582 3.439e+00 7.641e+00 0.450 0.652667
## factor(gvkey)030637 2.632e+00 7.398e+00 0.356 0.722003
## factor(gvkey)030640 9.301e+00 8.922e+00 1.042 0.297223
## factor(gvkey)030647 2.444e+00 2.959e+01 0.083 0.934179
## factor(gvkey)030822 1.654e+01 7.909e+00 2.091 0.036577 *
## factor(gvkey)030888 7.290e+00 6.789e+00 1.074 0.282916
## factor(gvkey)030932 6.233e+00 6.789e+00 0.918 0.358583
## factor(gvkey)030990 1.928e+01 6.789e+00 2.839 0.004535
factor(gvkey)031242 5.922e+00 1.118e+01 0.529 0.596514
factor(gvkey)031358 2.544e+00 8.207e+00 0.310 0.756580
factor(gvkey)031368 9.653e+00 7.398e+00 1.305 0.192010
factor(gvkey)031521 6.432e+01 1.118e+01 5.751 9.19e-09 ## factor(gvkey)031692 1.829e+01 7.177e+00 2.548 0.010837
## factor(gvkey)031702 6.011e-01 2.093e+01 0.029 0.977085
## factor(gvkey)031718 6.915e+00 2.959e+01 0.234 0.815232
## factor(gvkey)031764 5.253e+00 9.864e+00 0.533 0.594340
## factor(gvkey)031895 1.930e+00 1.046e+01 0.184 0.853672
## factor(gvkey)060914 9.846e+00 7.641e+00 1.289 0.197586
## factor(gvkey)060990 2.717e-01 1.118e+01 0.024 0.980620
## factor(gvkey)061019 1.901e+01 2.959e+01 0.643 0.520553
## factor(gvkey)061067 1.893e+01 6.789e+00 2.789 0.005302
factor(gvkey)061129 2.958e+01 8.208e+00 3.604 0.000315 ## factor(gvkey)061163 1.044e+01 8.922e+00 1.170 0.242110
## factor(gvkey)061188 1.983e+01 6.975e+00 2.844 0.004471 ## factor(gvkey)061302 2.405e+01 8.543e+00 2.815 0.004882 ## factor(gvkey)061380 6.123e+01 1.208e+01 5.068 4.10e-07
factor(gvkey)061388 1.139e+01 6.789e+00 1.677 0.093499 .
factor(gvkey)061406 -9.232e-01 9.864e+00 -0.094 0.925433
factor(gvkey)061408 2.760e+00 6.975e+00 0.396 0.692354
factor(gvkey)061452 1.217e+01 6.789e+00 1.793 0.073058 .
factor(gvkey)061487 7.943e+00 6.975e+00 1.139 0.254842
factor(gvkey)061544 1.468e+01 1.480e+01 0.992 0.321284
factor(gvkey)061585 7.834e+00 6.975e+00 1.123 0.261387
factor(gvkey)061586 1.676e+01 7.641e+00 2.193 0.028307 *
## factor(gvkey)061693 6.940e+00 7.909e+00 0.877 0.380242
factor(gvkey)061739 8.575e+00 6.789e+00 1.263 0.206581
factor(gvkey)061939 3.994e+00 9.864e+00 0.405 0.685562
factor(gvkey)062243 6.090e-01 1.709e+01 0.036 0.971565
factor(gvkey)062365 4.488e+00 2.959e+01 0.152 0.879450
factor(gvkey)062646 -3.508e+00 1.480e+01 -0.237 0.812620
factor(gvkey)062654 6.932e+00 6.789e+00 1.021 0.307284
factor(gvkey)062689 1.117e+01 6.789e+00 1.646 0.099797 .
factor(gvkey)062755 -1.478e-01 1.208e+01 -0.012 0.990241
factor(gvkey)062895 3.035e+00 1.046e+01 0.290 0.771748
factor(gvkey)062919 -3.122e+00 1.709e+01 -0.183 0.854996
factor(gvkey)062976 2.650e+01 1.323e+01 2.002 0.045290 *
## factor(gvkey)062979 5.982e+00 7.641e+00 0.783 0.433718
factor(gvkey)063058 -5.124e-01 1.046e+01 -0.049 0.960940
factor(gvkey)063069 -6.745e+00 1.480e+01 -0.456 0.648499
factor(gvkey)063135 8.247e+00 6.975e+00 1.182 0.237096
factor(gvkey)063178 2.659e+00 7.398e+00 0.359 0.719301
factor(gvkey)063232 1.255e+00 6.975e+00 0.180 0.857237
factor(gvkey)063244 3.420e+00 1.046e+01 0.327 0.743747
factor(gvkey)063288 7.708e+00 7.909e+00 0.975 0.329809
factor(gvkey)063501 3.664e+01 6.975e+00 5.253 1.53e-07 ## factor(gvkey)063538 1.004e-01 7.641e+00 0.013 0.989513
## factor(gvkey)063590 3.877e+00 7.400e+00 0.524 0.600382
## factor(gvkey)063639 1.828e+01 6.975e+00 2.621 0.008789 ## factor(gvkey)063687 4.234e+00 9.358e+00 0.452 0.650922
## factor(gvkey)063725 2.865e+00 8.543e+00 0.335 0.737330
## factor(gvkey)063781 1.577e+01 7.398e+00 2.131 0.033087
factor(gvkey)064189 1.547e+01 9.864e+00 1.568 0.116809
factor(gvkey)064218 1.413e+01 8.922e+00 1.584 0.113251
factor(gvkey)064228 8.948e-01 2.093e+01 0.043 0.965891
factor(gvkey)064306 1.490e+01 7.177e+00 2.076 0.037909 *
## factor(gvkey)064536 1.334e+01 1.046e+01 1.275 0.202215
factor(gvkey)064547 1.495e+01 7.398e+00 2.020 0.043369 *
## factor(gvkey)064552 2.573e+01 7.398e+00 3.478 0.000508 ## factor(gvkey)064584 -1.577e+00 1.323e+01 -0.119 0.905149
## factor(gvkey)064628 1.922e+01 1.709e+01 1.125 0.260697
## factor(gvkey)064699 1.379e+01 6.975e+00 1.977 0.048101
## factor(gvkey)064794 3.356e+00 7.909e+00 0.424 0.671330
## factor(gvkey)064821 1.588e+01 7.641e+00 2.079 0.037658 *
## factor(gvkey)064925 1.272e+01 7.398e+00 1.720 0.085517 .
## factor(gvkey)064934 1.949e+01 2.959e+01 0.659 0.510206
## factor(gvkey)064979 1.026e+01 1.208e+01 0.849 0.395715
## factor(gvkey)065106 1.388e+01 7.641e+00 1.817 0.069320 .
## factor(gvkey)065108 1.448e+01 7.909e+00 1.831 0.067076 .
## factor(gvkey)065228 2.362e+01 7.909e+00 2.987 0.002826
factor(gvkey)065230 -7.105e-01 1.323e+01 -0.054 0.957186
factor(gvkey)065235 1.631e+01 1.323e+01 1.232 0.217962
factor(gvkey)065290 1.644e+01 7.909e+00 2.078 0.037705 *
## factor(gvkey)065345 4.231e+01 8.543e+00 4.952 7.47e-07 ## factor(gvkey)065365 1.021e+01 1.323e+01 0.772 0.440232
## factor(gvkey)065532 3.485e-01 1.046e+01 0.033 0.973428
## factor(gvkey)065540 2.117e+01 8.922e+00 2.372 0.017708
## factor(gvkey)065548 5.493e+00 7.398e+00 0.743 0.457791
## factor(gvkey)065556 3.508e+01 7.641e+00 4.591 4.48e-06 ## factor(gvkey)065581 3.122e+00 1.480e+01 0.211 0.832893
## factor(gvkey)065610 1.724e+00 1.046e+01 0.165 0.869153
## factor(gvkey)065640 1.243e+01 7.909e+00 1.572 0.115930
## factor(gvkey)065689 8.350e+00 8.543e+00 0.977 0.328374
## factor(gvkey)065710 1.576e+01 7.909e+00 1.993 0.046279
factor(gvkey)065717 3.681e+01 9.864e+00 3.732 0.000191 ## factor(gvkey)065737 1.828e+01 7.909e+00 2.311 0.020845
## factor(gvkey)065796 6.048e+00 1.046e+01 0.578 0.563219
## factor(gvkey)065886 1.414e+01 7.641e+00 1.851 0.064204 .
## factor(gvkey)065958 6.631e+00 8.543e+00 0.776 0.437609
## factor(gvkey)066085 2.049e+01 9.864e+00 2.077 0.037834 *
## factor(gvkey)066148 -1.885e-01 1.323e+01 -0.014 0.988637
## factor(gvkey)066161 -2.106e+00 2.959e+01 -0.071 0.943276
## factor(gvkey)066235 1.543e+01 7.909e+00 1.951 0.051048 .
## factor(gvkey)066281 3.642e+01 9.358e+00 3.892 0.000100 ## factor(gvkey)066285 1.227e+01 9.358e+00 1.311 0.189918
## factor(gvkey)066313 -1.046e+00 1.480e+01 -0.071 0.943649
## factor(gvkey)066503 7.328e+00 9.358e+00 0.783 0.433580
## factor(gvkey)066504 1.233e+00 8.207e+00 0.150 0.880545
## factor(gvkey)066597 -1.674e-01 8.922e+00 -0.019 0.985030
## factor(gvkey)066599 1.233e+01 7.177e+00 1.719 0.085739 .
## factor(gvkey)066654 1.029e+01 8.543e+00 1.205 0.228221
## factor(gvkey)066731 3.677e+00 7.398e+00 0.497 0.619196
## factor(gvkey)105538 2.581e+00 7.909e+00 0.326 0.744155
## factor(gvkey)105547 -1.925e+01 2.960e+01 -0.650 0.515463
## factor(gvkey)105670 9.547e+00 6.789e+00 1.406 0.159683
## factor(gvkey)106853 -1.811e+00 1.323e+01 -0.137 0.891174
## factor(gvkey)107325 1.245e+00 8.543e+00 0.146 0.884170
## factor(gvkey)107817 6.283e+00 8.922e+00 0.704 0.481354
## factor(gvkey)108979 -2.272e+00 1.709e+01 -0.133 0.894208
## factor(gvkey)109183 5.665e+00 9.864e+00 0.574 0.565746
## factor(gvkey)109318 1.400e+00 1.709e+01 0.082 0.934694
## factor(gvkey)109599 6.146e-02 7.909e+00 0.008 0.993800
## factor(gvkey)109621 6.148e+00 7.641e+00 0.805 0.421087
## factor(gvkey)109683 1.966e+01 7.177e+00 2.740 0.006165 ## factor(gvkey)109699 1.612e+01 1.046e+01 1.541 0.123375
## factor(gvkey)109926 2.506e+01 7.909e+00 3.169 0.001537 ## factor(gvkey)110065 2.908e+00 7.909e+00 0.368 0.713116
## factor(gvkey)110179 2.136e+01 7.641e+00 2.796 0.005188 ## factor(gvkey)110250 -2.184e-01 9.358e+00 -0.023 0.981378
## factor(gvkey)110359 1.199e+00 1.480e+01 0.081 0.935437
## factor(gvkey)110382 1.406e+01 8.207e+00 1.713 0.086815 .
## factor(gvkey)110979 4.167e+00 1.480e+01 0.282 0.778256
## factor(gvkey)111179 1.093e+00 8.922e+00 0.123 0.902465
## factor(gvkey)111721 1.863e+01 1.046e+01 1.781 0.075016 .
## factor(gvkey)111779 8.803e+00 7.909e+00 1.113 0.265739
## factor(gvkey)111819 1.218e+00 1.046e+01 0.116 0.907323
## factor(gvkey)111940 9.643e-01 9.864e+00 0.098 0.922123
## factor(gvkey)112112 8.818e+00 2.093e+01 0.421 0.673484
## factor(gvkey)112254 -7.767e+00 2.093e+01 -0.371 0.710497
## factor(gvkey)112410 5.269e-01 7.177e+00 0.073 0.941479
## factor(gvkey)112542 5.350e-01 1.046e+01 0.051 0.959223
## factor(gvkey)112626 7.971e+00 9.864e+00 0.808 0.419062
## factor(gvkey)112721 5.284e+00 6.789e+00 0.778 0.436379
## factor(gvkey)113978 1.964e+00 1.208e+01 0.163 0.870878
## factor(gvkey)114628 5.011e+00 7.199e+00 0.696 0.486475
## factor(gvkey)114880 -3.378e+00 2.959e+01 -0.114 0.909114
## factor(gvkey)114956 3.119e+01 1.208e+01 2.581 0.009857 ## factor(gvkey)115766 7.110e+01 2.093e+01 3.398 0.000683 ## factor(gvkey)115876 2.031e+01 8.207e+00 2.475 0.013357 *
## factor(gvkey)117020 4.914e+00 2.093e+01 0.235 0.814338
## factor(gvkey)117141 8.045e+00 7.909e+00 1.017 0.309098
## factor(gvkey)117161 1.357e+01 7.398e+00 1.834 0.066619 .
## factor(gvkey)117260 2.693e+01 9.358e+00 2.878 0.004018
factor(gvkey)118042 1.682e+01 7.177e+00 2.344 0.019124 *
## factor(gvkey)118264 7.187e+00 7.641e+00 0.941 0.346955
factor(gvkey)118525 6.066e+00 9.864e+00 0.615 0.538603
factor(gvkey)119414 3.456e-02 7.177e+00 0.005 0.996158
factor(gvkey)119714 1.671e+01 7.909e+00 2.113 0.034654 *
## factor(gvkey)119756 5.352e+00 7.398e+00 0.723 0.469434
factor(gvkey)120193 1.595e+01 2.959e+01 0.539 0.589940
factor(gvkey)120318 9.424e+00 9.864e+00 0.955 0.339423
factor(gvkey)120413 -3.244e+00 1.323e+01 -0.245 0.806374
factor(gvkey)120458 4.424e+01 2.093e+01 2.114 0.034543 *
## factor(gvkey)121381 2.434e+00 1.208e+01 0.201 0.840336
factor(gvkey)121713 8.040e+00 7.398e+00 1.087 0.277189
factor(gvkey)121815 2.365e+01 8.543e+00 2.769 0.005640 **
factor(gvkey)121816 1.945e+01 7.909e+00 2.459 0.013953 *
## factor(gvkey)122015 7.288e+00 7.398e+00 0.985 0.324579
factor(gvkey)122515 1.950e+01 1.118e+01 1.743 0.081327 .
factor(gvkey)124046 2.401e+01 7.641e+00 3.142 0.001682 **
factor(gvkey)124434 3.075e+01 7.641e+00 4.024 5.76e-05 ## factor(gvkey)127377 7.143e+00 1.208e+01 0.591 0.554346
## factor(gvkey)127797 9.319e-01 8.207e+00 0.114 0.909599
## factor(gvkey)133768 6.881e+00 7.399e+00 0.930 0.352402
## factor(gvkey)136265 2.377e+01 8.543e+00 2.782 0.005415 ## factor(gvkey)137230 2.858e+00 1.709e+01 0.167 0.867171
## factor(gvkey)137232 5.657e+00 7.398e+00 0.765 0.444495
## factor(gvkey)137351 1.128e+01 7.641e+00 1.476 0.139864
## factor(gvkey)137944 6.530e+00 8.207e+00 0.796 0.426274
## factor(gvkey)138541 6.004e+00 1.480e+01 0.406 0.684931
## factor(gvkey)139025 2.529e+01 9.864e+00 2.563 0.010383
factor(gvkey)140983 -3.211e-01 7.641e+00 -0.042 0.966483
factor(gvkey)142088 1.346e+01 1.046e+01 1.286 0.198418
factor(gvkey)142462 -2.942e+00 7.641e+00 -0.385 0.700186
factor(gvkey)143153 -3.320e-01 9.864e+00 -0.034 0.973153
factor(gvkey)143356 7.816e+00 7.909e+00 0.988 0.323108
factor(gvkey)143689 5.077e+00 7.909e+00 0.642 0.520906
factor(gvkey)144122 1.381e+01 2.959e+01 0.467 0.640716
factor(gvkey)144535 3.272e+01 7.909e+00 4.137 3.56e-05 ## factor(gvkey)145046 1.897e+01 7.909e+00 2.398 0.016503
## factor(gvkey)145552 3.718e+01 7.909e+00 4.701 2.63e-06 ## factor(gvkey)145636 6.053e+00 9.864e+00 0.614 0.539488
## factor(gvkey)145701 1.411e+00 7.909e+00 0.178 0.858434
## factor(gvkey)146140 4.912e+00 8.922e+00 0.550 0.582001
## factor(gvkey)146607 2.775e-01 1.323e+01 0.021 0.983274
## factor(gvkey)146734 1.030e+01 1.323e+01 0.778 0.436402
## factor(gvkey)147303 2.234e+01 8.922e+00 2.504 0.012309
factor(gvkey)147312 5.755e+00 1.709e+01 0.337 0.736242
factor(gvkey)147792 -1.719e+00 1.323e+01 -0.130 0.896675
factor(gvkey)148469 3.408e+00 8.543e+00 0.399 0.689973
factor(gvkey)148669 7.239e+00 9.358e+00 0.774 0.439240
factor(gvkey)149070 2.283e+01 7.909e+00 2.887 0.003900 **
factor(gvkey)149082 1.971e+01 1.480e+01 1.332 0.182787
factor(gvkey)149337 1.546e+01 8.207e+00 1.884 0.059604 .
factor(gvkey)149618 1.094e+02 2.093e+01 5.229 1.75e-07 ## factor(gvkey)149738 6.076e+00 7.642e+00 0.795 0.426615
## factor(gvkey)150279 3.802e+00 7.909e+00 0.481 0.630708
## factor(gvkey)150306 1.865e+01 7.909e+00 2.358 0.018391
## factor(gvkey)152149 2.605e+01 8.207e+00 3.173 0.001512
factor(gvkey)152249 7.881e-01 9.864e+00 0.080 0.936319
factor(gvkey)153130 2.190e+01 8.543e+00 2.564 0.010360 *
## factor(gvkey)154595 1.613e+01 1.208e+01 1.336 0.181747
factor(gvkey)154739 2.094e+01 2.093e+01 1.001 0.317093
factor(gvkey)154759 1.563e+01 2.093e+01 0.747 0.455201
factor(gvkey)155174 1.177e+01 9.864e+00 1.193 0.233002
factor(gvkey)155738 1.036e+01 8.543e+00 1.212 0.225481
factor(gvkey)155754 3.413e+01 9.358e+00 3.647 0.000267 ## factor(gvkey)156156 4.076e+01 1.208e+01 3.374 0.000745
factor(gvkey)156157 6.052e+00 8.922e+00 0.678 0.497637
factor(gvkey)156176 4.969e+00 1.046e+01 0.475 0.634813
factor(gvkey)156383 2.576e+01 8.207e+00 3.138 0.001704 **
factor(gvkey)156384 -4.465e+00 9.864e+00 -0.453 0.650813
factor(gvkey)156653 -5.095e+00 8.922e+00 -0.571 0.567974
factor(gvkey)156953 3.783e+01 8.543e+00 4.429 9.60e-06 ## factor(gvkey)157057 4.031e+00 8.543e+00 0.472 0.637000
## factor(gvkey)157307 -1.478e+00 1.323e+01 -0.112 0.911063
## factor(gvkey)157353 5.635e+00 9.864e+00 0.571 0.567825
## factor(gvkey)157452 2.277e+01 2.093e+01 1.088 0.276554
## factor(gvkey)157679 5.325e+01 1.323e+01 4.024 5.78e-05
factor(gvkey)157955 2.688e+01 8.922e+00 3.013 0.002598 **
factor(gvkey)158053 8.535e+01 2.093e+01 4.079 4.56e-05 ## factor(gvkey)158354 -1.209e+00 8.543e+00 -0.142 0.887427
## factor(gvkey)158587 1.600e+01 9.864e+00 1.622 0.104818
## factor(gvkey)158742 1.497e+01 9.864e+00 1.517 0.129260
## factor(gvkey)160173 1.824e+01 9.358e+00 1.949 0.051359 .
## factor(gvkey)160181 1.397e+01 8.543e+00 1.636 0.101921
## factor(gvkey)160225 1.531e+01 1.323e+01 1.157 0.247443
## factor(gvkey)160233 6.455e+01 1.208e+01 5.343 9.36e-08
factor(gvkey)160293 4.997e+01 1.046e+01 4.776 1.82e-06 ## factor(gvkey)160312 -3.628e+01 1.709e+01 -2.124 0.033731
## factor(gvkey)160378 3.236e+01 1.046e+01 3.093 0.001989
factor(gvkey)160417 7.869e+00 8.543e+00 0.921 0.356975
factor(gvkey)160479 2.848e+01 9.358e+00 3.043 0.002351 **
factor(gvkey)160541 2.224e+01 1.323e+01 1.680 0.092944 .
factor(gvkey)160621 -3.915e-01 1.208e+01 -0.032 0.974151
factor(gvkey)160667 3.358e+00 1.709e+01 0.197 0.844189
factor(gvkey)160706 2.138e+01 9.864e+00 2.167 0.030235 *
## factor(gvkey)160719 1.344e+01 8.922e+00 1.506 0.132018
factor(gvkey)160776 2.499e+01 9.358e+00 2.671 0.007581 **
factor(gvkey)160891 1.964e+00 9.864e+00 0.199 0.842161
factor(gvkey)160989 2.385e+01 8.922e+00 2.673 0.007531 **
factor(gvkey)160990 1.637e+01 8.922e+00 1.834 0.066667 .
factor(gvkey)160991 3.665e+01 8.922e+00 4.108 4.03e-05 ## factor(gvkey)161000 8.307e+00 1.046e+01 0.794 0.427252
## factor(gvkey)161013 2.343e+01 9.864e+00 2.376 0.017541
## factor(gvkey)161040 1.492e+01 9.358e+00 1.595 0.110809
## factor(gvkey)161048 2.522e+01 8.543e+00 2.952 0.003163
factor(gvkey)161065 4.832e+01 1.709e+01 2.828 0.004694 **
factor(gvkey)161853 8.252e-01 8.922e+00 0.092 0.926315
factor(gvkey)161942 1.416e-01 8.922e+00 0.016 0.987337
factor(gvkey)161952 1.465e+01 8.922e+00 1.642 0.100635
factor(gvkey)161953 1.477e+01 9.864e+00 1.497 0.134429
factor(gvkey)161966 5.507e+01 1.046e+01 5.263 1.45e-07 ## factor(gvkey)162160 2.557e+01 1.046e+01 2.444 0.014545
## factor(gvkey)162385 1.808e+01 1.046e+01 1.728 0.083984 .
## factor(gvkey)162489 1.579e+01 9.358e+00 1.687 0.091659 .
## factor(gvkey)162557 1.705e+01 9.864e+00 1.728 0.084009 .
## factor(gvkey)162559 6.839e+00 8.922e+00 0.767 0.443380
## factor(gvkey)162560 2.060e+01 1.208e+01 1.705 0.088237 .
## factor(gvkey)162925 6.598e+00 1.046e+01 0.631 0.528326
## factor(gvkey)163049 5.669e+01 2.959e+01 1.916 0.055431 .
## factor(gvkey)163610 4.622e+01 8.922e+00 5.181 2.26e-07 ## factor(gvkey)163678 5.139e+00 8.922e+00 0.576 0.564627
## factor(gvkey)163680 3.755e+01 1.323e+01 2.838 0.004555 ## factor(gvkey)163863 1.775e+01 2.093e+01 0.848 0.396295
## factor(gvkey)163872 2.488e+01 2.093e+01 1.189 0.234447
## factor(gvkey)163884 1.086e+01 8.922e+00 1.218 0.223412
## factor(gvkey)163920 2.524e+01 8.922e+00 2.829 0.004679 ## factor(gvkey)163924 7.303e+01 2.093e+01 3.490 0.000485 ## factor(gvkey)163963 1.094e+00 2.093e+01 0.052 0.958300
## factor(gvkey)164059 9.626e+00 2.959e+01 0.325 0.744971
## factor(gvkey)164132 3.863e-01 1.480e+01 0.026 0.979174
## factor(gvkey)164364 1.380e+01 8.922e+00 1.546 0.122089
## factor(gvkey)164365 7.756e+00 8.922e+00 0.869 0.384733
## factor(gvkey)164368 -2.341e+00 1.208e+01 -0.194 0.846361
## factor(gvkey)164404 2.077e+01 1.208e+01 1.720 0.085550 .
## factor(gvkey)164555 6.028e+00 2.093e+01 0.288 0.773306
## factor(gvkey)164572 4.959e+00 9.864e+00 0.503 0.615155
## factor(gvkey)164633 2.533e+01 9.358e+00 2.707 0.006812
factor(gvkey)164708 6.684e+00 8.922e+00 0.749 0.453816
factor(gvkey)165264 6.825e+00 8.922e+00 0.765 0.444361
factor(gvkey)165284 3.856e+00 1.046e+01 0.369 0.712457
factor(gvkey)166005 3.962e+01 9.864e+00 4.016 5.96e-05 ## factor(gvkey)166368 2.243e+01 9.358e+00 2.397 0.016574
## factor(gvkey)166582 1.335e+01 1.480e+01 0.902 0.366912
## factor(gvkey)166705 7.203e+00 1.208e+01 0.596 0.551058
## factor(gvkey)170375 2.447e+01 1.480e+01 1.654 0.098161 .
## factor(gvkey)170396 4.331e+01 1.709e+01 2.535 0.011258 *
## factor(gvkey)170419 -3.043e+00 1.480e+01 -0.206 0.837062
## factor(gvkey)171023 -9.115e-02 2.093e+01 -0.004 0.996524
## factor(gvkey)174022 -1.437e+00 9.358e+00 -0.154 0.878003
## factor(gvkey)174053 7.874e+00 9.864e+00 0.798 0.424775
## factor(gvkey)174159 1.011e+02 2.093e+01 4.833 1.37e-06 ## factor(gvkey)174301 3.903e+00 1.046e+01 0.373 0.709117
## factor(gvkey)174313 7.492e+00 9.358e+00 0.801 0.423361
## factor(gvkey)174647 5.145e+00 1.046e+01 0.492 0.622873
## factor(gvkey)174729 4.950e+00 9.864e+00 0.502 0.615830
## factor(gvkey)174744 2.341e+01 1.046e+01 2.238 0.025259
factor(gvkey)175131 3.854e-01 1.046e+01 0.037 0.970619
factor(gvkey)175263 4.851e+00 9.358e+00 0.518 0.604199
factor(gvkey)175307 6.143e+00 9.358e+00 0.656 0.511565
factor(gvkey)175575 2.690e+01 1.709e+01 1.574 0.115466
factor(gvkey)175646 -3.611e+00 2.959e+01 -0.122 0.902870
factor(gvkey)175674 -7.671e+00 1.118e+01 -0.686 0.492832
factor(gvkey)175688 -1.835e+00 9.864e+00 -0.186 0.852392
factor(gvkey)176239 5.263e+00 1.046e+01 0.503 0.614931
factor(gvkey)176268 1.583e+01 9.864e+00 1.605 0.108524
factor(gvkey)176351 1.204e+01 1.046e+01 1.151 0.249804
factor(gvkey)176375 2.023e+01 2.093e+01 0.967 0.333616
factor(gvkey)176591 6.530e+00 9.358e+00 0.698 0.485348
factor(gvkey)176592 1.926e+01 9.358e+00 2.058 0.039624 *
## factor(gvkey)176595 6.946e+00 1.046e+01 0.664 0.506807
factor(gvkey)176637 1.351e+02 1.709e+01 7.908 2.95e-15 ## factor(gvkey)176701 4.736e+00 9.864e+00 0.480 0.631120
## factor(gvkey)176703 2.074e+00 1.118e+01 0.185 0.852905
## factor(gvkey)176725 1.854e+00 1.709e+01 0.109 0.913597
## factor(gvkey)176766 -1.057e+00 9.864e+00 -0.107 0.914648
## factor(gvkey)176828 4.675e-01 1.323e+01 0.035 0.971822
## factor(gvkey)176973 4.024e+01 1.118e+01 3.598 0.000323
factor(gvkey)177088 1.456e+01 1.118e+01 1.302 0.192978
factor(gvkey)177216 5.203e+01 1.709e+01 3.045 0.002332 **
factor(gvkey)177255 1.890e+01 1.118e+01 1.690 0.091060 .
factor(gvkey)177300 3.565e+00 9.864e+00 0.361 0.717828
factor(gvkey)177376 7.853e+00 9.864e+00 0.796 0.425986
factor(gvkey)177640 -5.633e+00 2.959e+01 -0.190 0.849036
factor(gvkey)177782 2.408e+01 1.118e+01 2.153 0.031353 *
## factor(gvkey)177996 3.198e+01 1.046e+01 3.056 0.002247 **
factor(gvkey)178371 3.819e+01 1.208e+01 3.161 0.001577 **
factor(gvkey)178529 3.433e+01 1.480e+01 2.320 0.020362 *
## factor(gvkey)178539 3.701e+01 1.709e+01 2.166 0.030342 *
## factor(gvkey)178545 9.752e-02 1.323e+01 0.007 0.994121
factor(gvkey)178610 3.963e+01 1.118e+01 3.543 0.000398 ## factor(gvkey)178703 1.255e+00 1.046e+01 0.120 0.904489
## factor(gvkey)178811 2.869e+01 1.208e+01 2.375 0.017587
## factor(gvkey)178823 4.634e+01 2.093e+01 2.215 0.026806 *
## factor(gvkey)178834 4.093e+00 9.864e+00 0.415 0.678210
## factor(gvkey)178862 2.743e+01 1.323e+01 2.073 0.038235 *
## factor(gvkey)179077 1.389e+01 9.864e+00 1.408 0.159152
## factor(gvkey)179298 1.400e+01 1.118e+01 1.251 0.210816
## factor(gvkey)179361 -4.372e+00 2.093e+01 -0.209 0.834510
## factor(gvkey)179534 2.110e+01 1.046e+01 2.017 0.043755 *
## factor(gvkey)179889 6.084e+01 1.323e+01 4.597 4.34e-06 ## factor(gvkey)179974 4.223e+01 1.480e+01 2.854 0.004322 ## factor(gvkey)180183 8.769e+00 2.093e+01 0.419 0.675194
## factor(gvkey)180193 4.571e+01 1.709e+01 2.675 0.007484 ## factor(gvkey)180228 4.027e+01 1.480e+01 2.722 0.006506 ## factor(gvkey)180272 5.907e+00 1.208e+01 0.489 0.624882
## factor(gvkey)180423 2.997e+00 1.118e+01 0.268 0.788732
## factor(gvkey)182701 2.445e+01 1.208e+01 2.024 0.043022 *
## factor(gvkey)182788 5.508e+01 1.208e+01 4.559 5.21e-06
factor(gvkey)183247 4.259e-02 1.118e+01 0.004 0.996962
factor(gvkey)183324 7.328e+01 1.709e+01 4.289 1.81e-05 ## factor(gvkey)183388 8.498e+01 1.480e+01 5.744 9.59e-09
factor(gvkey)183603 6.706e+01 1.709e+01 3.925 8.75e-05 ## factor(gvkey)183606 3.966e+01 1.709e+01 2.321 0.020290
## factor(gvkey)183780 6.080e+01 1.709e+01 3.559 0.000375 ## factor(gvkey)183797 3.459e+01 1.323e+01 2.614 0.008964 ## factor(gvkey)183826 3.417e+01 1.323e+01 2.582 0.009852 ## factor(gvkey)183830 1.159e+02 1.480e+01 7.832 5.40e-15 ## factor(gvkey)183963 8.630e+01 1.480e+01 5.832 5.67e-09 ## factor(gvkey)184009 2.578e+01 1.208e+01 2.134 0.032897
factor(gvkey)184167 -3.109e+00 1.208e+01 -0.257 0.796905
factor(gvkey)184287 4.383e+00 1.323e+01 0.331 0.740504
factor(gvkey)184498 7.168e+01 1.480e+01 4.845 1.29e-06 ## factor(gvkey)184500 7.686e+00 1.323e+01 0.581 0.561417
## factor(gvkey)184571 2.819e+01 1.323e+01 2.130 0.033208
## factor(gvkey)184688 3.948e+01 1.709e+01 2.311 0.020870 *
## factor(gvkey)184689 3.846e+01 2.093e+01 1.838 0.066109 .
## factor(gvkey)184735 2.831e+01 2.093e+01 1.353 0.176178
## factor(gvkey)184899 1.557e+00 1.208e+01 0.129 0.897444
## factor(gvkey)185177 1.683e+01 1.709e+01 0.985 0.324528
## factor(gvkey)185339 4.698e+01 1.709e+01 2.750 0.005981
factor(gvkey)185370 1.308e+01 2.959e+01 0.442 0.658555
factor(gvkey)185396 4.632e+01 2.093e+01 2.214 0.026874 *
## factor(gvkey)185453 1.622e+01 2.959e+01 0.548 0.583641
factor(gvkey)185518 4.977e+00 2.093e+01 0.238 0.812016
factor(gvkey)185549 2.015e+01 1.323e+01 1.523 0.127809
factor(gvkey)185585 3.539e+00 1.480e+01 0.239 0.810950
factor(gvkey)185618 3.068e+01 1.709e+01 1.796 0.072565 .
factor(gvkey)185824 6.411e-01 1.480e+01 0.043 0.965439
factor(gvkey)186230 3.696e+01 2.959e+01 1.249 0.211765
factor(gvkey)186344 6.052e+00 1.323e+01 0.457 0.647462
factor(gvkey)186363 1.850e+01 1.323e+01 1.398 0.162207
factor(gvkey)186428 5.403e+00 1.480e+01 0.365 0.715021
factor(gvkey)187164 1.596e+01 1.323e+01 1.206 0.227752
factor(gvkey)187252 1.702e+01 2.093e+01 0.813 0.416080
factor(gvkey)187253 2.396e+01 1.480e+01 1.620 0.105368
factor(gvkey)187549 6.722e+00 1.709e+01 0.393 0.694010
factor(gvkey)189517 1.080e+01 2.093e+01 0.516 0.605832
factor(gvkey)190963 -5.252e+00 1.709e+01 -0.307 0.758546
factor(gvkey)192458 1.669e+01 1.709e+01 0.977 0.328650
factor(gvkey)200664 5.573e+00 1.480e+01 0.377 0.706459
factor(gvkey)211732 2.674e+01 9.358e+00 2.858 0.004275 **
factor(gvkey)223148 3.602e+01 7.909e+00 4.554 5.33e-06 ## factor(gvkey)241366 1.377e+01 7.641e+00 1.803 0.071476 .
## factor(gvkey)241388 -9.684e+00 2.093e+01 -0.463 0.643523
## factor(gvkey)243588 6.681e+00 1.709e+01 0.391 0.695770
## factor(gvkey)248136 -3.050e+00 9.918e+00 -0.307 0.758502
## factor(gvkey)252819 3.636e+00 8.208e+00 0.443 0.657809
## factor(gvkey)252940 6.421e+00 8.557e+00 0.750 0.453058
## factor(gvkey)258664 2.341e+01 9.358e+00 2.502 0.012375
## factor(gvkey)260774 2.069e+01 8.543e+00 2.422 0.015477 *
## factor(gvkey)260778 2.739e+01 8.543e+00 3.207 0.001347
factor(gvkey)260779 7.348e+00 8.543e+00 0.860 0.389745
factor(gvkey)264395 1.059e+01 8.543e+00 1.240 0.215099
factor(gvkey)264510 7.588e+01 2.959e+01 2.564 0.010365 *
## factor(gvkey)266214 2.096e+01 8.543e+00 2.454 0.014156 *
## factor(gvkey)266216 -1.273e-01 1.709e+01 -0.007 0.994055
factor(gvkey)266257 7.936e+01 1.046e+01 7.585 3.67e-14 *** ## factor(gvkey)266315 1.450e+01 9.864e+00 1.470 0.141679
## factor(gvkey)275661 2.670e+00 2.959e+01 0.090 0.928119
## factor(gvkey)285313 2.067e+01 1.119e+01 1.848 0.064708 .
## factor(industry)2011 NA NA NA NA
## factor(industry)2741 NA NA NA NA
## factor(industry)3714 NA NA NA NA
## factor(industry)4950 NA NA NA NA
## factor(industry)5063 NA NA NA NA
## factor(industry)6020 NA NA NA NA
## factor(industry)6035 NA NA NA NA
## factor(industry)6036 NA NA NA NA
## factor(industry)6099 NA NA NA NA
## factor(industry)6111 NA NA NA NA
## factor(industry)6141 NA NA NA NA
## factor(industry)6153 NA NA NA NA
## factor(industry)6159 NA NA NA NA
## factor(industry)6162 NA NA NA NA
## factor(industry)6163 NA NA NA NA
## factor(industry)6172 NA NA NA NA
## factor(industry)6199 NA NA NA NA
## factor(industry)6200 NA NA NA NA
## factor(industry)6211 NA NA NA NA
## factor(industry)6282 NA NA NA NA
## factor(industry)6311 NA NA NA NA
## factor(industry)6321 NA NA NA NA
## factor(industry)6324 NA NA NA NA
## factor(industry)6331 NA NA NA NA
## factor(industry)6351 NA NA NA NA
## factor(industry)6361 NA NA NA NA
## factor(industry)6411 NA NA NA NA
## factor(industry)6500 NA NA NA NA
## factor(industry)6512 NA NA NA NA
## factor(industry)6513 NA NA NA NA
## factor(industry)6531 NA NA NA NA
## factor(industry)6552 NA NA NA NA
## factor(industry)6726 NA NA NA NA
## factor(industry)6797 NA NA NA NA
## factor(industry)6798 NA NA NA NA
## factor(industry)6799 NA NA NA NA
## factor(industry)7370 NA NA NA NA
## factor(industry)7374 NA NA NA NA
## factor(industry)7389 NA NA NA NA
## factor(industry)7510 NA NA NA NA
## factor(industry)9995 NA NA NA NA
## factor(industry)9997 NA NA NA NA
## — ## Signif. codes: 0 ‘’ 0.001 ’’ 0.01 ’’ 0.05 ‘.’ 0.1 ‘’ 1 ## ## Residual standard error: 29.59 on 8326 degrees of freedom ## (8 observations deleted due to missingness) ## Multiple R-squared: 0.2586, Adjusted R-squared: 0.1854 ## F-statistic: 3.529 on 823 and 8326 DF, p-value: < 2.2e-16
Slide 51
The key part is this line of the output…
Coefficients: (42 not defined because of singularities) Remember, we had 43 industries, and used 42 (k-1) industry dummies. The lm function got mad and said we’re not going to estimate coefficients for these.
Why?
Slide 52 With fixed effect models, you can’t estimate what’s called cross-level interactions. These are very popular in OB/psychology, but you know where I stand on those models.
Slide 53 Bottom line? If you fail the Hausman test and need to retain a fixed effect model, you’re not going to be able to include any variable (or interaction effect) that is time invariant within the panel (the ii).
Unless you use the hybrid method.
Slide 54 This is pretty common in other literatures, and ironically it’s often done in OB/pysch (although for a different reason).
It combines, in a sense, the best element of the fixed effect model while still being able to estimate a between (and hence ii level) effect.
Slide 55 We don’t have time to go through all of the details, but the approach is straightforward, and so is the interpretation. What you do with this model is to split the predictor into its between and within elements.
We haven’t seen it used a lot to date, but I have a hunch we will in the near future.
Slide 56 What about lagged values?
Temporal sequencing can be a great thing! But…
Slide 57 The same rules about establishing causality still apply…damn omitted variable problem!
Slide 58 I actually have a bias against using one year lags (which is very common in strategy) in our models. The reason being is that the choice of the lag structure is—almost—always a function of the lag structure imposed by the data provider.
There’s nothing theoretical about it—it’s just a one year lag because that’s the way Compustat, etc., spits out the data.
Slide 59 My challenge with the one year lag is that there is usually very little reason to justify that the relationship between xx and yy manifests over a one-year period.
In fact, there may be little reason to expect that this is the ‘correct’ timeframe. Furthermore, you may be more likely to induce omitted variable bias by including the lag, why?
Slide 60 Still, lets estimate a model with a one year lag of long term debt on sales growth rate to show how it’s done.
There are a couple of ways to create a lagged variable, but I like using dplyr (part of the tidyverse).
panel.no.df <- panel.no.df %>% arrange(gvkey, fyear) %>% # Sort by firm and then by year group_by(gvkey) %>% # Tell dplyr to go within each firm mutate(lag.dltt = lag(dltt)) # Generate a new lagged dltt value lag.plm.df <- pdata.frame(panel.no.df, index=c(“gvkey”,“fyear”), drop.index=TRUE)
panel.no.df <- panel.no.df %>%
arrange(gvkey, fyear) %>% # Sort by firm and then by year
group_by(gvkey) %>% # Tell dplyr to go within each firm
mutate(lag.dltt = lag(dltt)) # Generate a new lagged dltt value
lag.plm.df <- pdata.frame(panel.no.df, index=c("gvkey","fyear"),
drop.index=TRUE)
Slide 61 lag.model <- plm(sgr ~ lag.dltt, data = lag.plm.df, index=c(“gvkey”, “fyear”), model=“within”, effect = c(“twoways”)) summary(lag.model)
lag.model <- plm(sgr ~ lag.dltt, data = lag.plm.df, index=c("gvkey", "fyear"),
model="within", effect = c("twoways"))
summary(lag.model)
Slide 62 ## Twoways effects Within Model ## ## Call: ## plm(formula = sgr ~ lag.dltt, data = lag.plm.df, effect = c(“twoways”), ## model = “within”, index = c(“gvkey”, “fyear”)) ## ## Unbalanced Panel: n=779, T=1-19, N=8328 ## ## Residuals : ## Min. 1st Qu. Median 3rd Qu. Max. ## -146.00 -9.31 -1.60 6.51 436.00 ## ## Coefficients : ## Estimate Std. Error t-value Pr(>|t|)
## lag.dltt -1.6327e-05 4.8252e-06 -3.3837 0.0007188 *** ## — ## Signif. codes: 0 ‘’ 0.001 ’’ 0.01 ’’ 0.05 ‘.’ 0.1 ‘’ 1 ## ## Total Sum of Squares: 5586100 ## Residual Sum of Squares: 5577700 ## R-Squared: 0.0015182 ## Adj. R-Squared: -0.10416 ## F-statistic: 11.4495 on 1 and 7530 DF, p-value: 0.00071877 FWIW, the sign flip isn’t all that surprising with panel data, and particularly with small effect sizes. Remember, these are really, really small effects with a large N dataset.
Slide 63 NOTE
Keep in mind that the manual lag and the auto lag work a bit differently. The coefficients are close, but the number of firms is different. The reason being is how the inline model handles missing data.
Purely FWIW, I like the manual way to preserve power.
Slide 64 PARTING NOTE
DO NOT DO NOT DO NOT lag the DV and include it as a predictor in the panel model.
Yes, this happens a lot, under the logic that the value of the DV at time tt is often a function of the value of the DV at t−1t−1. Makes sense, but with panel estimators (or other OLS estimators) including a lagged DV term biases all of the other ββ’s in the model. That and the lagged DV will be endogenous by definition, so you can’t interpret it anyway.
Slide 65 Properly specified lagged DV models are, however, very cool. We call them dynamic panel estimators, and the plm package can estimate these kind of models.
This is, though, pretty advanced stuff, so if you really want to ask these kinds of research questions, lets get you some additional training.
Slide 66 Wrap-up.
LS0tCnRpdGxlOiAiUiBOb3RlYm9vayIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKVGhpcyBpcyBhbiBbUiBNYXJrZG93bl0oaHR0cDovL3JtYXJrZG93bi5yc3R1ZGlvLmNvbSkgTm90ZWJvb2suIFdoZW4geW91IGV4ZWN1dGUgY29kZSB3aXRoaW4gdGhlIG5vdGVib29rLCB0aGUgcmVzdWx0cyBhcHBlYXIgYmVuZWF0aCB0aGUgY29kZS4gCgpUcnkgZXhlY3V0aW5nIHRoaXMgY2h1bmsgYnkgY2xpY2tpbmcgdGhlICpSdW4qIGJ1dHRvbiB3aXRoaW4gdGhlIGNodW5rIG9yIGJ5IHBsYWNpbmcgeW91ciBjdXJzb3IgaW5zaWRlIGl0IGFuZCBwcmVzc2luZyAqQ21kK1NoaWZ0K0VudGVyKi4gCgpgYGB7cn0KcGxvdChjYXJzKQpgYGAKCkFkZCBhIG5ldyBjaHVuayBieSBjbGlja2luZyB0aGUgKkluc2VydCBDaHVuayogYnV0dG9uIG9uIHRoZSB0b29sYmFyIG9yIGJ5IHByZXNzaW5nICpDbWQrT3B0aW9uK0kqLgoKV2hlbiB5b3Ugc2F2ZSB0aGUgbm90ZWJvb2ssIGFuIEhUTUwgZmlsZSBjb250YWluaW5nIHRoZSBjb2RlIGFuZCBvdXRwdXQgd2lsbCBiZSBzYXZlZCBhbG9uZ3NpZGUgaXQgKGNsaWNrIHRoZSAqUHJldmlldyogYnV0dG9uIG9yIHByZXNzICpDbWQrU2hpZnQrSyogdG8gcHJldmlldyB0aGUgSFRNTCBmaWxlKS4KCmBgYHtyfQpybShsaXN0PWxzKCkpCmBgYAoKMTcgQXByaWwgUGFuZWwgRGF0YSBhbmQgQ2F1c2FsIEVmZmVjdHMKClNsaWRlIDE6ClBhbmVsIGRhdGEgYW5kIGNhdXNhbCBlZmZlY3RzIApFTlQ1NTg3QiAtIFJlc2VhcmNoIERlc2lnbiAmIFRoZW9yeSBUZXN0aW5nIElJIApCcmlhbiBTLiBBbmRlcnNvbiwgUGguRC4KQXNzaXN0YW50IFByb2Zlc3NvcgpEZXBhcnRtZW50IG9mIEdsb2JhbCBFbnRyZXByZW5ldXJzaGlwICYgSW5ub3ZhdGlvbgphbmRlcnNvbmJyaUB1bWtjLmVkdSAgClJJRUkgTG9nbwrCqSAyMDE3IEJyaWFuIFMuIEFuZGVyc29uCgoKCgpTbGlkZSAyOgpQYXBlciByZXZpc2lvbiBhbmQgcmV2aWV3ZXIgcmVzcG9uc2VzIGR1ZSAyNCBBcHJpbApEYXRhIGNvbGxlY3Rpb24gZGlzY3Vzc2lvbgpNZWFzdXJpbmcgY2hhbmdlCkluc3RydW1lbnQgdmFyaWFibGVzIGluIHBhbmVsIGRhdGEKSHlicmlkIG1ldGhvZHMKTGFiIDIwIEFwcmlsIOKAkyBQYW5lbCBkYXRhIHBhcGVyIGFzc2Vzc21lbnQKU2VtaW5hciAyNCBBcHJpbCDigJMgTERWIG1vZGVscyBhbmQgcGFuZWwgZGF0YSAvLyBzcGVjaWFsIHRvcGljcwoKCgpTbGlkZSAzOgpUcmFpbmluZyB0aW1lIG91dC4KV2hhdCBhcmUgdGhlIGJpZyBxdWVzdGlvbnMgeW91IGhhdmUgYWJvdXQgcGFuZWwgbW9kZWxzPwoKClNsaWRlIDQKTGV0cyBzdGFydCBvZmYgYnkgZ2V0dGluZyBzb21lIGRhdGEuIFRoaXMgaXMgdGhlIHNhbWUgcGFuZWwgZGF0YSB0aGF0IHdlIHVzZWQgbGFzdCB3ZWVrLgoKbGlicmFyeShyZWFkcikKbGlicmFyeSh0aWR5dmVyc2UpCm15LnBhbmVsLmRzIDwtIHJlYWRfY3N2KCJodHRwOi8vYS53ZWIudW1rYy5lZHUvYW5kZXJzb25icmkvUGFuZWwuY3N2IikKbXkucGFuZWwuZGYgPC0gbXkucGFuZWwuZHMKYGBge3J9CmxpYnJhcnkocmVhZHIpCmxpYnJhcnkodGlkeXZlcnNlKQpteS5wYW5lbC5kcyA8LSByZWFkX2NzdigiaHR0cDovL2Eud2ViLnVta2MuZWR1L2FuZGVyc29uYnJpL1BhbmVsLmNzdiIpCm15LnBhbmVsLmRmIDwtIG15LnBhbmVsLmRzCmBgYAoKCgpTbGlkZSA1OgoKV2Ugb2Z0ZW4gcmVmZXIgdG8gcGFuZWwgZGF0YSBhcyDigJx0aW1lLXNlcmllcyBjcm9zcy1zZWN0aW9uYWzigJ0gZGF0YS4KClRoZSByZWFzb24gYmVpbmcgaXMgdGhhdCB5b3UgY2FuIHRoaW5rIG9mIGVhY2ggdHQgb2JzZXJ2YXRpb24gYXMgYmVpbmcgYSBzbmFwc2hvdCBpbiB0aW1lIG9mIHRoZSBjb3JyZXNwb25kaW5nIGnigLJzaeKAsnMgY29uZGl0aW9uLgoKCgpTbGlkZSA2OgpJZiB5b3UgY29sbGVjdGVkIG9uZSB0dCBmb3IgZWFjaCBpaSwgeW91IHdvdWxkIGhhdmUgY3Jvc3Mtc2VjdGlvbmFsIGRhdGEuIFNpbmNlIHlvdSBjb2xsZWN0ZWQgbXVsdGlwbGUgdOKAsnN04oCycyBwZXIgaWksIHlvdSBoYXZlIHRpbWUtc2VyaWVzIGNyb3NzLXNlY3Rpb25hbCBkYXRhLgoKCgoKU2xpZGUgNzoKVGhlIG1hdGVyaWFsIHBvaW50IGlzIHRoaXPigKYKCkp1c3QgYmVjYXVzZSB5b3UgaGF2ZSBwYW5lbCBkYXRhIERPRVMgTk9UIG1lYW4gdGhhdCB5b3UgY2FuIGVzdGltYXRlIGNhdXNhbCBlZmZlY3RzLiBPciBldmVuIHRoYXQgaXQgaGVscHMgaWRlbnRpZnkgY2F1c2FsIHJlbGF0aW9uc2hpcHMuCgpBcyB3ZSB3aWxsIHRhbGsgYWJvdXQsIHdpdGggcGFuZWwgZGF0YSB5b3UgbWF5IGJlIG1vcmUgbGlrZWx5IHRvIG1ha2UgYW4gaW5jb3JyZWN0IG5vbW9sb2dpY2FsIGNvbmNsdXNpb24sIGJlY2F1c2Ugb2YgdGhlIG5vaXNlIGluIHRoZSBkYXRhIGFuZCB0aGUgZGlmZmljdWx0eSBpbiBpc29sYXRpbmcgY2F1c2FsIGVmZmVjdHMuCgoKCgoKClNsaWRlIDg6CnlpdD3OsSvOsnhpdCvOvGkrz7VpdHlpdD3OsSvOsnhpdCvOvGkrz7VpdApKdXN0IHRvIHJldmlld+KApgoKeXkgPSBWYWx1ZSBvZiB0aGUgdHRodHRoIG9ic2VydmF0aW9uIG9mIHl5IGZvciB0aGUgaXRoaXRoIGVudGl0eQrOsc6xID0gVGhlIHZhbHVlIG9mIHl5IHdoZW4geHggZXF1YWxzIHplcm8gYWNyb3NzIGFsbCBpLHTigLJzaSx04oCycwrOss6yID0gVGhlIGV4cGVjdGVkIGNoYW5nZSBpbiB5eSBmb3IgYW4gYXZlcmFnZSBpaSBhY3Jvc3MgdGltZSB0dC4gTm90ZSB0aGF0IHRoaXMgaW50ZXJwcmV0YXRpb24gZ2V0cyBtb3JlIGNvbXBsaWNhdGVkLCBxdWlja2x5Lgp4eCA9IFZhbHVlIG9mIHRoZSB0dGh0dGggb2JzZXJ2YXRpb24gb2YgeHggZm9yIHRoZSBpdGhpdGggZW50aXR5Cs68zrwgPSBUaGUgcG9ydGlvbiBvZiB0aGUgZGlzdHVyYmFuY2UgdGVybSB1bmlxdWUgdG8gaWkgYW5kIHRoYXQgaXMgY29uc3RhbnQgb3ZlciB0aW1lIHR0LgrPtc+1ID0gVGhlIHZhcmlhbmNlIGluIHRoZSB0dGh0dGggb2JzZXJ2YXRpb24gb2YgeXkgZm9yIHRoZSBpdGhpdGggZW50aXR5IHRoYXQgaXMgbm90IGV4cGxhaW5lZCBieSB0aGUgdmFyaWFuY2UgaW4gdGhlIHR0aHR0aCBvYnNlcnZhdGlvbiBvZiB4eCBmb3IgdGhlIGl0aGl0aCBlbnRpdHkgb3IgzrxpzrxpLgoKClNsaWRlIDk6CgpSZWNhbGwgdGhhdCB3ZSBjYW4gZGVjb21wb3NlIHhpdHhpdCBpbnRvIHRoZSBmb2xsb3dpbmc6Cgp4aXQ9zrNpK8+EaXR4aXQ9zrNpK8+EaXQKRm9yIGVhY2ggeGl0eGl0LCB0aGVyZSBpcyBnb2luZyB0byBiZSBhIGJldHdlZW4tY29tcG9uZW50LCDOs86zLCB0aGF0IG5ldmVyIGNoYW5nZXMgb3ZlciB0aW1lIGZvciBlYWNoIGlpIGluIHRoZSBzYW1wbGUgKHRoZSBmaXJtLCBmb3IgZXhhbXBsZSkuIEJ1dCB0aGVyZSBpcyBhbHNvIGdvaW5nIHRvIGJlIGEgd2l0aGluLWNvbXBvbmVudCwgz4TPhCwgdGhhdCBjYW4gY2hhbmdlIGZvciBlYWNoIGlpIG92ZXIgdGltZSAodGhlIGZpcm3igJlzIHNhbGVzLCBmb3IgZXhhbXBsZSkuCgoKCgoKCgpTbGlkZSAxMDoKeGl0Pc6zaSvPhGl0eGl0Pc6zaSvPhGl0CkluIE9MUyBvciB0aGUgcG9vbGVkIG1vZGVsLCB3ZSBhc3N1bWUgdGhhdCDOs2nOs2kgPSAwLCBvciBvdGhlcndpc2UgaXMgY29uc3RhbnQgZm9yIGV2ZXJ5IGlpIGluIHRoZSBzYW1wbGUgYW5kLCBoZW5jZSwgbWVhbmluZ2xlc3MgZm9yIGFuYWx5c2lzIHB1cnBvc2VzLgoKSWYgzrNpzrNpIOKJoCAwLCBvciBpZiDOs2nOs2kgdmFyaWVzIGFtb25nIHRoZSBp4oCyc2nigLJzIGluIHRoZSBzYW1wbGUsIHRoZW4gdGhlIE9MUyAob3IgcG9vbGVkKSBtb2RlbCB3aWxsIHByb2R1Y2UgYmlhc2VkIGVzdGltYXRlcyBvZiDOss6yLgoKCgoKCgpTbGlkZSAxMToKSW4gYSBwYW5lbCBtb2RlbCwgd2UgYXJlIGFzc3VtaW5nIHRoYXQgdGhlIGhpZ2hlciBvcmRlciBlbnRpdHkgKM6zac6zaSksIGhhcyBzb21lIG1lYW5pbmdmdWwgZWZmZWN0IG9uIHRoZSBvYnNlcnZhdGlvbiBvZiB4aXR4aXQuCgpUaGUgcHJvYmxlbSBpcyB0aGF0IHdlIGRvbuKAmXQgZGlyZWN0bHkgb2JzZXJ2ZSB0aGlzIGVmZmVjdC4gU28gYW55IHVub2JzZXJ2ZWQgZmFjdG9ycyBvZiBpaSB0aGF0IGRvIGNvcnJlbGF0ZSB3aXRoIHhpdHhpdCB3aWxsIHNob3cgdXAgaW4gdGhlIGRpc3R1cmJhbmNlIHRlcm0gb2Ygz7VpdM+1aXQuCgoKCgoKCgoKClNsaWRlIDEyOgoKV2hhdOKAmXMgdGhpcyBwcm9ibGVtIGNhbGxlZCBhZ2Fpbj8KCgoKCgoKU2xpZGUgMTM6CllvdSBndXlzIHJvY2shISEKClNvIGluIG91ciBwYW5lbCBlcXVhdGlvbjoKCnlpdD3OsSvOsnhpdCvOvGkrz7VpdHlpdD3OsSvOsnhpdCvOvGkrz7VpdApXZSBuZWVkIHRvIHRha2Ugc29tZSBzdGVwcyB0byBjb250cm9sIGZvciB0aGUgzrxpzrxpIGVmZmVjdC4gV2UgY2FuIGRvIHRoYXQgYnkgdXNpbmcgdGhlIGR1bW15IHZhcmlhYmxlIGFwcHJvYWNoLCBvciB1c2luZyB0aGUgd2l0aGluLXRyYW5zZm9ybWF0aW9uLiBUaGlzIGlzIHRoZSBmaXhlZCBlZmZlY3QgbW9kZWwuCgoKCgoKClNsaWRlIDE0OgpTaWRlYmFy4oCmCgpIb3cgZG9lcyBhIGZpeGVkIGVmZmVjdCBtb2RlbCBkaWZmZXIgZnJvbSBhIHJhbmRvbSBlZmZlY3QgbW9kZWw/CgoKCgoKClNsaWRlIDE1OgpTbyBmdWxsIGRpc2Nsb3N1cmUsIGJ1dCB3ZeKAmXJlIG5vdCBnb2luZyB0byBzcGVuZCBtdWNoIHRpbWUgb24gcmFuZG9tIGVmZmVjdCBtb2RlbHMsIGRlc3BpdGUgdGhlIG9ic2Vzc2lvbiB3aXRoIHRoZXNlIG1vZGVscyBpbiB0aGUgcHN5Y2gvT0IgbGl0ZXJhdHVyZSBhbmQgd2hpY2gsIHZlcnkgb2Z0ZW4sIGFyZSBpbXByb3Blcmx5IHNwZWNpZmllZC4KCk9uZSBleGNlcHRpb24gaXMgdGhlIGh5YnJpZCBtZXRob2QsIHdoaWNoIHdl4oCZbGwgdGFsayBhYm91dCBsYXRlci4KCuKApkVuZCBzaWRlYmFyCgoKCgpTbGlkZSAxNjoKeWl0Pc6xK86yeGl0K868aSvPtWl0eWl0Pc6xK86yeGl0K868aSvPtWl0ClRoZSBkdW1teSB2YXJpYWJsZSBtZXRob2QsIHdoaWxlIGVmZmVjdGl2ZSwgaXMgYSBsaXR0bGUgY2x1bmt5LiBTbyBtb3N0IGVzdGltYXRvcnPigJRsaWtlIHRoZSBwbG0gcGFja2FnZSwgdXNlIHRoZSB3aXRoaW4tdHJhbnNmb3JtYXRpb24uCgpVc2luZyB0aGUgd2l0aGluLXRyYW5zZm9ybWF0aW9uLCBvdXIgZXF1YXRpb24gbG9va3MgbGlrZSB0aGlz4oCmCgooeWl04oiSecKvaSk9zrIoeGl04oiSeMKvaSkrKM68aeKIks68wq9pKSsoz7VpdOKIks+1wq9pKQoKCgoKU2xpZGUgMTc6Cih5aXTiiJJ5wq9pKT3Osih4aXTiiJJ4wq9pKSsozrxp4oiSzrzCr2kpKyjPtWl04oiSz7XCr2kpKHlpdOKIknnCr2kpPc6yKHhpdOKIknjCr2kpKyjOvGniiJLOvMKvaSkrKM+1aXTiiJLPtcKvaSkKSW4gdGhpcyBlcXVhdGlvbiwgd2XigJlyZSByZW1vdmluZyB0aGUgdGltZSBpbnZhcmlhbnQgY29tcG9uZW50IGJ5IGRlbWVhbmluZyBlYWNoIHRlcm0uIFRoaXMgZWZmZWN0aXZlbHkgZ2V0cyByaWQgb2YgYW55IGluZm9ybWF0aW9uIGJldHdlZW4gaeKAsmnigLIsIGJlY2F1c2Ugd2XigJlyZSBob2xkaW5nIHRoYXQgZWZmZWN0IGNvbnN0YW50IChqdXN0IGxpa2Ugd2l0aCB0aGUgZHVtbXkgdmFyaWFibGVzKS4KCgoKClNsaWRlIDE4OgpZb3Ugd2lsbCBzb21ldGltZXMgc2VlIHRoZSBmaXhlZCBlZmZlY3QgbW9kZWwgd3JpdHRlbiBsaWtlIHRoaXPigKYKCnnCqGl0Pc6yeMKoaXQrz7XCqGl0ecKoaXQ9zrJ4wqhpdCvPtcKoaXQKQmVjYXVzZSDOvGnOvGkgaXMgY29uc3RhbnQgb3ZlciB0aW1lLCAozrxp4oiSzrzCr2kpKM68aeKIks68wq9pKSBlcXVhbCAwLCBzbyB3ZSBkcm9wIGl0IGZyb20gdGhlIGVxdWF0aW9uLiBXZeKAmXZlIHJlbW92ZWQgdGhlIGVmZmVjdCBvZiBpaSBvbiB0aGUgb3RoZXIgdmFyaWFibGVzIG9mIGludGVyZXN0IGJ5IHN1YnRyYWN0aW5nIG91dCB0aGUgY29uc3RhbnQuCgoKCgpTbGlkZSAxOQpXaGF0IHdlIGFyZSBsZWZ0IHdpdGggaXMgdGhlIGF2ZXJhZ2Ugd2l0aGluLWZpcm0gZWZmZWN0IG92ZXIgdGltZSBmb3IsIGVmZmVjdGl2ZWx5LCBhbiBhdmVyYWdlIGZpcm0gaW4gdGhlIHNhbXBsZS4KCgoKCgpTbGlkZSAyMApTaWRlIG5vdGXigKYKCih5aXTiiJJ5wq9pKT3Osih4aXTiiJJ4wq9pKSsozrxp4oiSzrzCr2kpKyjPtWl04oiSz7XCr2kpKHlpdOKIknnCr2kpPc6yKHhpdOKIknjCr2kpKyjOvGniiJLOvMKvaSkrKM+1aXTiiJLPtcKvaSkKV2hhdCBoYXBwZW5lZCB0byB0aGUgaW50ZXJjZXB0IM6xzrEgYW5kIHdoeT8KCgoKCgoKU2xpZGUgMjEKQlRX4oCmCgpUaGlzIGFwcHJvYWNoIGlzIGFsc28gY2FsbGVkIOKAnGdyb3VwIG1lYW4gY2VudGVyaW5nLOKAnSB3aGljaCBpcyBhIHZlcnkgY29tbW9uIHRlcm0vYXBwcm9hY2ggaW4gdGhlIHBzeWNob2xvZ3kgbGl0ZXJhdHVyZSB1c2luZyBtdWx0aS1sZXZlbCBtb2RlbGluZy4KClllcywgSSBrbm93IHRoYXQgbXVsdGktbGV2ZWwgbW9kZWxpbmcgaXMgdGhlIHNhbWUgdGhpbmcgYXMgcGFuZWwgbW9kZWxpbmcuIEl04oCZcyBhIGNsYXNzaWMgY2FzZSBvZiB0d28gZGlzY2lwbGluZXMgcmVhbGx5LCByZWFsbHksIHJlYWxseSwgbm90IHRhbGtpbmcgdG8gZWFjaCBvdGhlci4KCgoKCgoKU2xpZGUgMjIKTGV0cyByZXZpc2l0IG91ciBtb2RlbCBmcm9tIHllc3RlcmRheeKApgoKbGlicmFyeShwbG0pCm15LnBhbmVsLmRmJGxvZy5yZXZ0IDwtIGxvZyhteS5wYW5lbC5kZiRyZXZ0KQpwYW5lbC5wbG0uZGYgPC0gcGRhdGEuZnJhbWUobXkucGFuZWwuZGYsIGluZGV4PWMoImd2a2V5IiwiZnllYXIiKSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkcm9wLmluZGV4PVRSVUUpCmZpeGVkLnllYXIubW9kZWwgPC0gcGxtKGxvZy5yZXZ0IH4gZGx0dCwgZGF0YSA9IHBhbmVsLnBsbS5kZiwgCiAgICAgICAgICAgICAgICAgICAgICAgIGluZGV4PWMoImd2a2V5IiwgImZ5ZWFyIiksIAogICAgICAgICAgICAgICAgICAgICAgICBtb2RlbD0id2l0aGluIiwgZWZmZWN0ID0gYygidHdvd2F5cyIpKQpzdW1tYXJ5KGZpeGVkLnllYXIubW9kZWwpCgpgYGB7cn0KaW5zdGFsbC5wYWNrYWdlcygicGxtIikKYGBgCgoKYGBge3J9CmxpYnJhcnkocGxtKQpteS5wYW5lbC5kZiRsb2cucmV2dCA8LSBsb2cobXkucGFuZWwuZGYkcmV2dCkKcGFuZWwucGxtLmRmIDwtIHBkYXRhLmZyYW1lKG15LnBhbmVsLmRmLCBpbmRleD1jKCJndmtleSIsImZ5ZWFyIiksIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHJvcC5pbmRleD1UUlVFKQpmaXhlZC55ZWFyLm1vZGVsIDwtIHBsbShsb2cucmV2dCB+IGRsdHQsIGRhdGEgPSBwYW5lbC5wbG0uZGYsIAogICAgICAgICAgICAgICAgICAgICAgICBpbmRleD1jKCJndmtleSIsICJmeWVhciIpLCAKICAgICAgICAgICAgICAgICAgICAgICAgbW9kZWw9IndpdGhpbiIsIGVmZmVjdCA9IGMoInR3b3dheXMiKSkKc3VtbWFyeShmaXhlZC55ZWFyLm1vZGVsKQpgYGAKCgoKCgoKU2xpZGUgMjMKIyMgVHdvd2F5cyBlZmZlY3RzIFdpdGhpbiBNb2RlbAojIyAKIyMgQ2FsbDoKIyMgcGxtKGZvcm11bGEgPSBsb2cucmV2dCB+IGRsdHQsIGRhdGEgPSBwYW5lbC5wbG0uZGYsIGVmZmVjdCA9IGMoInR3b3dheXMiKSwgCiMjICAgICBtb2RlbCA9ICJ3aXRoaW4iLCBpbmRleCA9IGMoImd2a2V5IiwgImZ5ZWFyIikpCiMjIAojIyBVbmJhbGFuY2VkIFBhbmVsOiBuPTg0NSwgVD0xLTIxLCBOPTk5OTQKIyMgCiMjIFJlc2lkdWFscyA6CiMjICAgIE1pbi4gMXN0IFF1LiAgTWVkaWFuIDNyZCBRdS4gICAgTWF4LiAKIyMgLTUuMDIwMCAtMC4xNzAwICAwLjAxMDQgIDAuMTkwMCAgMS45MDAwIAojIyAKIyMgQ29lZmZpY2llbnRzIDoKIyMgICAgICAgIEVzdGltYXRlIFN0ZC4gRXJyb3IgdC12YWx1ZSAgUHIoPnx0fCkgICAgCiMjIGRsdHQgNC4zMDc1ZS0wNyA2LjEzMDZlLTA4ICA3LjAyNjMgMi4yNzJlLTEyICoqKgojIyAtLS0KIyMgU2lnbmlmLiBjb2RlczogIDAgJyoqKicgMC4wMDEgJyoqJyAwLjAxICcqJyAwLjA1ICcuJyAwLjEgJyAnIDEKIyMgCiMjIFRvdGFsIFN1bSBvZiBTcXVhcmVzOiAgICAxMzM2LjcKIyMgUmVzaWR1YWwgU3VtIG9mIFNxdWFyZXM6IDEzMjkuNQojIyBSLVNxdWFyZWQ6ICAgICAgMC4wMDUzNzk1CiMjIEFkai4gUi1TcXVhcmVkOiAtMC4wODg4NzQKIyMgRi1zdGF0aXN0aWM6IDQ5LjM2OTYgb24gMSBhbmQgOTEyOCBERiwgcC12YWx1ZTogMi4yNzJlLTEyCgoKCgpTbGlkZSAyNApXZSBpbnRlcnByZXQgzrLOsiBhcyB0aGUgYXZlcmFnZSBleHBlY3RlZCBjaGFuZ2UgaW4gZmlybSByZXZlbnVlIGZvciBhIGdpdmVuIChhdmVyYWdlKSBmaXJtIGZvciBlYWNoIHVuaXQgaW5jcmVhc2UgaW4gbG9uZyB0ZXJtIGRlYnQuCgpTcGVjaWZpY2FsbHksIHdlIGV4cGVjdCBhIDAuMDAwMDAwNDMwNzUgY2hhbmdlIGluIGxvZyB0cmFuc2Zvcm1lZCByZXZlbnVlIGZvciBhbiBhdmVyYWdlIGZpcm0uCgoKCgpTbGlkZSAyNQpPciB0byBiZXR0ZXIgaW50ZXJwcmV0IGEgY29udGludW91cyBJViB3aXRoIGEgbG9nIHRyYW5zZm9ybWVkIERW4oCmCgp4LmVmZmVjdCA8LSBzdW1tYXJ5KGZpeGVkLnllYXIubW9kZWwpJGNvZWZmaWNpZW50c1sxLDFdCnkuZGVsdGEgPC0gMTAwKihleHAoeC5lZmZlY3QpLTEpCnkuZGVsdGEKIyMgWzFdIDQuMzA3NTQ0ZS0wNQoKYGBge3J9CnguZWZmZWN0IDwtIHN1bW1hcnkoZml4ZWQueWVhci5tb2RlbCkkY29lZmZpY2llbnRzWzEsMV0KeS5kZWx0YSA8LSAxMDAqKGV4cCh4LmVmZmVjdCktMSkKeS5kZWx0YQpgYGAKCgoKV2UgZXhwZWN0IGEgLjAwMDA0MzA3NSUgY2hhbmdlIGluIHJldmVudWUgZm9yIGV2ZXJ5IG9uZSBtaWxsaW9uIGRvbGxhciBpbmNyZWFzZSBpbiBsb25nIHRlcm0gZGVidCBmb3IgYW4gYXZlcmFnZSBmaXJtIGFjcm9zcyB0aW1lIGhvbGRpbmcgdGhlIGVmZmVjdCBvZiBkaWZmZXJlbmNlcyBpbiB0aW1lIGNvbnN0YW50LiBXZSBjb3VsZCBhbHNvIHNheSB3ZSBleHBlY3QgYSAwLjA0MzElIGNoYW5nZSBmb3IgZXZlcnkgYmlsbGlvbmJpbGxpb24gZG9sbGFyIGluY3JlYXNlIGluIGxvbmcgdGVybSBkZWJ0LgoKTm90IGV4YWN0bHkgYSBCSUcgZWZmZWN0LCBidXQgaGV5LCBpdOKAmXMgc3RhdGlzdGljYWxseSBzaWduaWZpY2FudCEKCgoKCgoKClNsaWRlIDI2ClRoYXQgd2UgY2FuIGludGVycHJldCDOss6yIGFzIGEgcGVyY2VudGFnZSBjaGFuZ2UgaW4gcmV2ZW51ZSAoYmVjYXVzZSByZXZlbnVlIHdhcyBsb2cgdHJhbnNmb3JtZWQpIGlzIHByZXR0eSBoYW5keSwgYmVjYXVzZSB0aGF04oCZcyBvZnRlbiB3aGF0IHdl4oCZcmUgcmVhbGx5IGludGVyZXN0ZWQgaW4gd2l0aCBwYW5lbCBtb2RlbHPigJRjaGFuZ2UuCgoKCgoKClNsaWRlIDI3CkxldHMgc2F5IHRob3VnaCB0aGF0IHdl4oCZcmUgZ2V0dGluZyBkZWVwZXIgd2l0aCB0aGUgd2hvbGUgY2hhbmdlIHRoaW5nLiBXZeKAmXJlIHRoaW5raW5nIHRoYXQgbG9uZy10ZXJtIGRlYnQgaXNu4oCZdCByZWFsbHkgcmVsYXRlZCB0byB0aGUgbGV2ZWwgb2Ygc2FsZXMsIGJ1dCB0byBzYWxlcyBncm93dGggcmF0ZS4KCldoYXQgd2Ugd2FudCB0byBtb2RlbCB0aGVuIGlzIGhvdyBtdWNoIGEgY2hhbmdlIGluIHRoZSBsZXZlbCBvZiBsb25nIHRlcm0gZGVidCBpbmZsdWVuY2VzIHRoZSByYXRlIG9mIGNoYW5nZSBpbiByZXZlbnVlLgoKCgoKU2xpZGUgMjgKU28gbGV0cyBnbyBiYWNrIHRvIG91ciBwYW5lbCBkYXRhIGZyYW1lIGFuZCBjcmVhdGUgYSBzYWxlcyBncm93dGggbWVhc3VyZS4gV2hpbGUgd2UgYXJlIGF0IGl0LCBsZXRzIGFsc28gY2FsY3VsYXRlIGEgZ3Jvd3RoIHJhdGUgbWVhc3VyZSBmb3IgbG9uZyB0ZXJtIGRlYnQuCgpsaWJyYXJ5KHRpZHl2ZXJzZSkgICMgTG92ZSBkcGx5ciEKbXkucGFuZWwuZGYgPC0gbXkucGFuZWwuZGYgJT4lCiAgYXJyYW5nZShndmtleSwgZnllYXIpICU+JSAgIyBTb3J0IGJ5IGZpcm0gYW5kIHRoZW4gYnkgeWVhcgogIGdyb3VwX2J5KGd2a2V5KSAlPiUgICMgVGVsbCBkcGx5ciB0byBnbyB3aXRoaW4gZWFjaCBmaXJtCiAgbXV0YXRlKHNnLmRpZmYgPSByZXZ0IC0gbGFnKHJldnQpLCBzZ3IgPSAoMTAwKihzZy5kaWZmL2xhZyhyZXZ0KSkpLAogICAgICAgICBkZ3IuZGlmZiA9IHJldnQgLSBsYWcoZGx0dCksIGRnciA9ICgxMDAqKGRnci5kaWZmL2xhZyhkbHR0KSkpKQoKYGBge3J9CmxpYnJhcnkodGlkeXZlcnNlKSAgIyBMb3ZlIGRwbHlyIQpteS5wYW5lbC5kZiA8LSBteS5wYW5lbC5kZiAlPiUKICBhcnJhbmdlKGd2a2V5LCBmeWVhcikgJT4lICAjIFNvcnQgYnkgZmlybSBhbmQgdGhlbiBieSB5ZWFyCiAgZ3JvdXBfYnkoZ3ZrZXkpICU+JSAgIyBUZWxsIGRwbHlyIHRvIGdvIHdpdGhpbiBlYWNoIGZpcm0KICBtdXRhdGUoc2cuZGlmZiA9IHJldnQgLSBsYWcocmV2dCksIHNnciA9ICgxMDAqKHNnLmRpZmYvbGFnKHJldnQpKSksCiAgICAgICAgIGRnci5kaWZmID0gcmV2dCAtIGxhZyhkbHR0KSwgZGdyID0gKDEwMCooZGdyLmRpZmYvbGFnKGRsdHQpKSkpCmBgYAoKCgoKClNsaWRlIDI5CkxldHMgdGFrZSBhIGxvb2sgYXQgc29tZXRoaW5n4oCmCgpwYW5lbC5oZWFkIDwtIG15LnBhbmVsLmRmICU+JQogIHNlbGVjdChndmtleSwgZnllYXIsIHJldnQsIHNnciwgZGx0dCwgZGdyKQpoZWFkKHBhbmVsLmhlYWQsIDEwKQoKCmBgYHtyfQpwYW5lbC5oZWFkIDwtIG15LnBhbmVsLmRmICU+JQogIHNlbGVjdChndmtleSwgZnllYXIsIHJldnQsIHNnciwgZGx0dCwgZGdyKQpoZWFkKHBhbmVsLmhlYWQsIDEwKQpgYGAKCgoKCgoKCgoKIyMgU291cmNlOiBsb2NhbCBkYXRhIGZyYW1lIFsxMCB4IDZdCiMjIEdyb3VwczogZ3ZrZXkgWzJdCiMjIAojIyAgICAgZ3ZrZXkgZnllYXIgICAgICByZXZ0ICAgICAgICBzZ3IgICBkbHR0ICAgICAgIGRncgojIyAgICAgPGNocj4gPGludD4gICAgIDxkYmw+ICAgICAgPGRibD4gIDxkYmw+ICAgICA8ZGJsPgojIyAxICAwMDEwNjIgIDIwMDcgICAxMDEuMTYwICAgICAgICAgTkEgICAgMC4wICAgICAgICBOQQojIyAyICAwMDEwNjIgIDIwMDggICAxNjkuOTIxICA2Ny45NzI1MTkgICAgMC4wICAgICAgIEluZgojIyAzICAwMDEwNjIgIDIwMDkgICAgNjkuMDI2IC01OS4zNzc1OTMgICAgMC4wICAgICAgIEluZgojIyA0ICAwMDExNzcgIDE5OTUgMTMzMTAuNTAwICAgICAgICAgTkEgIDk3Ny4yICAgICAgICBOQQojIyA1ICAwMDExNzcgIDE5OTYgMTUzNjAuOTAwICAxNS40MDQzODAgMjM4MC4wIDE0NzEuOTMwMAojIyA2ICAwMDExNzcgIDE5OTcgMTg3NDQuOTAwICAyMi4wMjk5NTkgMjM0Ni4yICA2ODcuNjAwOAojIyA3ICAwMDExNzcgIDE5OTggMjA3NTQuMDAwICAxMC43MTgxMTUgMjUyMS4yICA3ODQuNTc5MwojIyA4ICAwMDExNzcgIDE5OTkgMjY0NTIuNzAwICAyNy40NTgzMjEgMjY3Ny45ICA5NDkuMjEwNwojIyA5ICAwMDExNzcgIDIwMDAgMjY5NDkuMDAwICAgMS44NzYxNzkgICAgMC4wICA5MDYuMzQ4MwojIyAxMCAwMDExNzcgIDIwMDEgMjUzNzcuOTAwICAtNS44Mjk5MDEgMTU5MS4zICAgICAgIEluZgoKCgoKU2xpZGUgMzAKT25lIGlzc3VlIHdpdGggY2FsY3VsYXRpbmcgcmF0ZSBvZiBjaGFuZ2VzIGlzIHRoYXQgd2UgbG9zZSBvbmUgeWVhciBvZiBvYnNlcnZhdGlvbnMgZm9yIGVhY2ggZmlybS4gSWYgdGhlIGZpcm0gb25seSBzaG93ZWQgdXAgb25jZSBpbiB0aGUgc2FtcGxlLCBpdOKAmXMgZ29uZSBub3cuCgpGb3IgdW5iYWxhbmNlZCBwYW5lbHMsIHRoZSB5ZWFyIGxvc3Qgd2lsbCBhbHNvIGJlIGEgZnVuY3Rpb24gb2Ygd2hlbiBpbiB0aGUgc2FtcGxlIHRoZSBmaXJtIGZpcnN0IHNob3dzIHVwLiBGdXJ0aGVyLCBpdCBjb3VsZCBiZSB0aGUgY2FzZSB0aGF0IHlvdSBtaXNzZWQgYSB5ZWFyIGluIGJldHdlZW4gb2JzZXJ2YXRpb25zIG9mIHRoZSBmaXJtIGJlY2F1c2UgaXQgbWF5IGhhdmUgc2tpcHBlZCBhIHllYXIgb2YgcmF0ZSBvZiBjaGFuZ2UKCgoKCgoKU2xpZGUgMzEKV2Ugc2VlIHRoaXMgaGFwcGVuaW5nIHdpdGggdGhlIGRnciB2YXJpYWJsZS4gVGhlcmUgYXJlIGEgZmV3IHllYXJzIHRoYXQgaGF2ZSBhIDAgdmFsdWUuIFdlbGwsIHRoZSBmaXJtIG1pZ2h0IGhhdmUgcGFpZCBvZmYgaXRzIGRlYnQgdGhhdCB5ZWFyIChvciBpdCBjb3VsZCBiZSBhIGRhdGEgZW50cnkgZXJyb3IpLCBidXQgdGhhdCBjcmVhdGVzIGEgZGl2aXNpb24gYnkgemVybyBwcm9ibGVtLiBTbywgdGhlIG5leHQgeWVhcuKAmXMgZ3Jvd3RoIHJhdGUgbWF5IGJlIEhVR0UgYnkgY29tcGFyaXNvbiwgc2tld2luZyB0aGUgZGlzdHJpYnV0aW9uLgoKVGhlcmXigJlzIG5vdCBhIHdob2xlIGxvdCB0byBkbyBhYm91dCBpdCwgb3RoZXIgdGhhbiByZWFsbHkgZ2V0dGluZyB0byBrbm93IHlvdXIgZGF0YS4gQXZlcmFnZSBzbW9vdGhpbmcgb3Igcm9sbGluZyBhdmVyYWdlcyBtYXkgYWxzbyBoZWxwLgoKCgoKU2xpZGUgMzIKT25lIHRoaW5nIHRvIGtlZXAgaW4gbWluZCB3aXRoIEFMTCBkYXRhIGJ1dCBlc3BlY2lhbGx5IHdoZW4gd29ya2luZyB3aXRoIHNlY29uZGFyeSBmaW5hbmNpYWwgZGF0YSBpcyBvdXRsaWVycy4gVGFrZSBhIGxvb2sgYXQgdGhpc+KApgoKCmBgYHtyfQpxcXBsb3QocGFuZWwuaGVhZCkKYGBgCgoKCgpTbGlkZSAzMwpMZXRzIHRha2UgYSBsb29rIGF0IG9ic2VydmF0aW9ucyB3aXRoIGEgZ3JlYXRlciB0aGFuIDUwMCUgc2FsZXMgZ3Jvd3RoIHJhdGXigKYKCmV4dHJlbWUuZGYgPC0gbXkucGFuZWwuZGYgJT4lIAogIHNlbGVjdChndmtleSwgY29ubSwgZnllYXIsIHNncikgJT4lCiAgZmlsdGVyKHNnciA+IDUwMCkgJT4lCiAgYXJyYW5nZShkZXNjKHNncikpCmV4dHJlbWUuZGYKYGBge3J9CmV4dHJlbWUuZGYgPC0gbXkucGFuZWwuZGYgJT4lIAogIHNlbGVjdChndmtleSwgY29ubSwgZnllYXIsIHNncikgJT4lCiAgZmlsdGVyKHNnciA+IDUwMCkgJT4lCiAgYXJyYW5nZShkZXNjKHNncikpCmV4dHJlbWUuZGYKYGBgCgoKCgoKCiMjIFNvdXJjZTogbG9jYWwgZGF0YSBmcmFtZSBbNyB4IDRdCiMjIEdyb3VwczogZ3ZrZXkgWzddCiMjIAojIyAgICBndmtleSAgICAgICAgICAgICAgICAgICAgICAgICBjb25tIGZ5ZWFyICAgICAgIHNncgojIyAgICA8Y2hyPiAgICAgICAgICAgICAgICAgICAgICAgIDxjaHI+IDxpbnQ+ICAgICA8ZGJsPgojIyAxIDAzMTUyMSAgICAgICAgICAgICBJTlRMIEZDU1RPTkUgSU5DICAyMDA3IDQyNDAuNDczNQojIyAyIDAyNTg5NSAgICAgICAgICAgICBSQURJQU4gR1JPVVAgSU5DICAyMDA4IDEzNzAuNTc2MQojIyAzIDE2MDMxMiAgICAgICAgICBQUklNVVMgR1VBUkFOVFkgTFREICAyMDA5ICA4OTQuMDgwNwojIyA0IDE2MDI5MyAgTk9SVEhTVEFSIFJFQUxUWSBGSU5BTkNFIENQICAyMDEzICA3MTguOTQ4OQojIyA1IDAwMTQ4NyBBTUVSSUNBTiBJTlRFUk5BVElPTkFMIEdST1VQICAyMDA5ICA3MDAuOTAwMAojIyA2IDEyNzM3NyAgICAgICAgICAgICBCR0MgUEFSVE5FUlMgSU5DICAyMDA4ICA2NzEuODY5NQojIyA3IDAyMzQ4NSAgICAgICAgIENPVkFOVEEgSE9MRElORyBDT1JQICAyMDAyICA1NTcuODI0MwoKCgoKU2xpZGUgMzQKTm93LCB5b3Ugd291bGQgbmVlZCB0byBnZXQgaW4gdG8gdGhlIGRhdGEgdG8gcmVhbGx5IHVuZGVyc3RhbmQgd2hhdCBpcyBnb2luZyBvbiBoZXJlLiBGb3Igbm93LCBsZXRzIGp1c3QgZHJvcCB0aGVzZSBvYnNlcnZhdGlvbnMgb24gdGhlIGFzc3VtcHRpb24gdGhhdCB0aGV5IGFyZSBzbyBmYXIgb3V0c2lkZSB0aGUgbWFpbnN0cmVhbSB0byBiaWFzIG91ciByZXN1bHRzCgpZZXMsIHRoYXQgaXMgYSBiaWcgYXNzdW1wdGlvbuKAlGRvbuKAmXQganVzdCBkbyB0aGlzIHdpdGhvdXQgdGhpbmtpbmchCgpwYW5lbC5uby5kZiA8LSBteS5wYW5lbC5kZiAlPiUgCiAgZmlsdGVyKHNnciA8IDUwMCkgICMgTm90ZSB0aGF0IHRoaXMgd2lsbCBhbHNvIGdldCByaWQgb2YgMCB2YWx1ZXMgZm9yIFNHUiEKCmBgYHtyfQpwYW5lbC5uby5kZiA8LSBteS5wYW5lbC5kZiAlPiUgCiAgZmlsdGVyKHNnciA8IDUwMCkgICMgTm90ZSB0aGF0IHRoaXMgd2lsbCBhbHNvIGdldCByaWQgb2YgMCB2YWx1ZXMgZm9yIFNHUiEKYGBgCgoKCgoKCgoKU2xpZGUgMzUKClRha2UgYSBsb29rIG5vdyB0aG91Z2ggYXQgdGhlIGRpc3RyaWJ1dGlvbiBvZiBzYWxlcyBncm93dGggcmF0ZeKApgoKCgoKU2xpZGUgMzYKT2ssIHNvIGxldHMgY3JlYXRlIGEgbmV3IHBsbSBkYXRhZnJhbWUsIGFuZCBsZXRzIGVzdGltYXRlIGEgZml4ZWQgZWZmZWN0IG1vZGVsIG9mIHRoZSBsZXZlbCBvZiBsb25nIHRlcm0gZGVidCAobm90IGRncikgcHJlZGljdGluZyBzYWxlcyBncm93dGggcmF0ZSB3aXRob3V0IG91ciBvdXRsaWVycy4KCm5vLnBsbS5kZiA8LSBwZGF0YS5mcmFtZShwYW5lbC5uby5kZiwgaW5kZXg9YygiZ3ZrZXkiLCJmeWVhciIpLCAKICAgICAgICAgICAgICAgICAgICAgICAgIGRyb3AuaW5kZXg9VFJVRSkKc2dyLm1vZGVsIDwtIHBsbShzZ3IgfiBkbHR0LCBkYXRhID0gbm8ucGxtLmRmLCBpbmRleD1jKCJndmtleSIsICJmeWVhciIpLCAKICAgICAgICAgICAgICAgICBtb2RlbD0id2l0aGluIiwgZWZmZWN0ID0gYygidHdvd2F5cyIpKQpzdW1tYXJ5KHNnci5tb2RlbCkKYGBge3J9Cm5vLnBsbS5kZiA8LSBwZGF0YS5mcmFtZShwYW5lbC5uby5kZiwgaW5kZXg9YygiZ3ZrZXkiLCJmeWVhciIpLCAKICAgICAgICAgICAgICAgICAgICAgICAgIGRyb3AuaW5kZXg9VFJVRSkKc2dyLm1vZGVsIDwtIHBsbShzZ3IgfiBkbHR0LCBkYXRhID0gbm8ucGxtLmRmLCBpbmRleD1jKCJndmtleSIsICJmeWVhciIpLCAKICAgICAgICAgICAgICAgICBtb2RlbD0id2l0aGluIiwgZWZmZWN0ID0gYygidHdvd2F5cyIpKQpzdW1tYXJ5KHNnci5tb2RlbCkKYGBgCgoKCgpTbGlkZSAzNwojIyBUd293YXlzIGVmZmVjdHMgV2l0aGluIE1vZGVsCiMjIAojIyBDYWxsOgojIyBwbG0oZm9ybXVsYSA9IHNnciB+IGRsdHQsIGRhdGEgPSBuby5wbG0uZGYsIGVmZmVjdCA9IGMoInR3b3dheXMiKSwgCiMjICAgICBtb2RlbCA9ICJ3aXRoaW4iLCBpbmRleCA9IGMoImd2a2V5IiwgImZ5ZWFyIikpCiMjIAojIyBVbmJhbGFuY2VkIFBhbmVsOiBuPTgyMiwgVD0xLTIwLCBOPTkxNDkKIyMgCiMjIFJlc2lkdWFscyA6CiMjICAgIE1pbi4gMXN0IFF1LiAgTWVkaWFuIDNyZCBRdS4gICAgTWF4LiAKIyMgLTE1Ny4wMCAgIC05LjkzICAgLTEuNzUgICAgNi43MCAgNDQwLjAwIAojIyAKIyMgQ29lZmZpY2llbnRzIDoKIyMgICAgICAgIEVzdGltYXRlIFN0ZC4gRXJyb3IgdC12YWx1ZSAgUHIoPnx0fCkgICAgCiMjIGRsdHQgMi41MTU1ZS0wNSA0LjY4NDhlLTA2ICA1LjM2OTYgOC4xMDRlLTA4ICoqKgojIyAtLS0KIyMgU2lnbmlmLiBjb2RlczogIDAgJyoqKicgMC4wMDEgJyoqJyAwLjAxICcqJyAwLjA1ICcuJyAwLjEgJyAnIDEKIyMgCiMjIFRvdGFsIFN1bSBvZiBTcXVhcmVzOiAgICA2ODE1OTAwCiMjIFJlc2lkdWFsIFN1bSBvZiBTcXVhcmVzOiA2NzkyNDAwCiMjIFItU3F1YXJlZDogICAgICAwLjAwMzQ1ODkKIyMgQWRqLiBSLVNxdWFyZWQ6IC0wLjA5NzQzMQojIyBGLXN0YXRpc3RpYzogMjguODMyNyBvbiAxIGFuZCA4MzA3IERGLCBwLXZhbHVlOiA4LjEwNGUtMDgKT2ssIHlvdXIgdHVybi4gSG93IGRvIHdlIGludGVycHJldCDOss6yPwoKCgoKU2xpZGUgMzgKTW9kZWxpbmcgY2hhbmdlIGlzIGFjdHVhbGx5IHByZXR0eSBkaWZmaWN1bHQuIEl0IGlzLCBob3dldmVyLCB0aGVvcmV0aWNhbGx5IGludGVyZXN0aW5nIGFuZCBwcmFjdGljYWxseSBpbXBvcnRhbnQuCgpUaGUgYmVzdCB3YXkgdG8gbGVhcm4gYWJvdXQgbW9kZWxpbmcgY2hhbmdlIGlzIHRvIGdyYWIgYSBsb25naXR1ZGluYWwgZGF0YXNldCBhbmQgc3RhcnQgcC1oYWNraW5nLiBKdXN0IHRvIGJlIGNsZWFyIHRob3VnaCwgbm8sIHlvdSBjYW7igJl0IHB1Ymxpc2ggd2hhdCB5b3UgcC1oYWNrZWQhCgoKCgpTbGlkZSAzOQpMZXRzIG1vdmUgb24gdG8gaW5zdHJ1bWVudCB2YXJpYWJsZSBtb2RlbHMuCgoKCgoKClNsaWRlIDQwCk5vIGNhdXNhdGlvbiB3aXRob3V0IG1hbmlwdWxhdGlvbi4KCkluIHBhbmVsIGRhdGEgbGlrZSB3ZSBoYXZlIGJlZW4gd29ya2luZyB3aXRoLCBpdOKAmXMgZW50aXJlbHkgb2JzZXJ2YXRpb25hbC4gVGhhdCBtZWFucyB0aGF0IHdl4oCZcmUgZGVhbGluZyB3aXRoIGFuIG9taXR0ZWQgdmFyaWFibGUgcHJvYmxlbSBmcm9tIGFueSBudW1iZXIgb2Ygc291cmNlcy4KCgoKClNsaWRlIDQxCk9uZSBuaWNlIHRoaW5nIHRob3VnaCBhYm91dCBmaXhlZCBlZmZlY3QgbW9kZWxzIGlzIHRoYXQgd2XigJl2ZSBhbHJlYWR5IGNvbnRyb2xsZWQgZm9yIGEgc3Vic3RhbnRpYWwgb21pdHRlZCB2YXJpYWJsZSBwcm9ibGVt4oCUdGhlIHVub2JzZXJ2ZWQgaGV0ZXJvZ2VuZWl0eSBleGlzdGluZyBhdCB0aGUgaWkgbGV2ZWwgdGhhdCBjb3JyZWxhdGVzIHdpdGggdGhlIHR0IGxldmVsIG9ic2VydmF0aW9uLgoKQmFzaWNhbGx5LCBhbGwgb2YgdGhlIHVub2JzZXJ2ZWQg4oCYc3R1ZmbigJkgZXhpc3RpbmcgYXQgdGhlIGZpcm0gKG9yIG1hbmFnZXIsIG9yIHRlYW0sIGV0Yy4pIHRoYXQgeW91IGRpZG7igJl0IG1lYXN1cmUgYnV0IHRoYXQgY2FuIGluZmx1ZW5jZSB0aGUgeGl0eGl04oCUPiB5aXR5aXQgcmVsYXRpb25zaGlwLgoKCgoKU2xpZGUgNDIKU28gd2l0aCBhIGZpeGVkIGVmZmVjdCBtb2RlbCwgd2XigJlyZSBhbHJlYWR5IGEgbG9uZyB3YXkgdG8gd2hlcmUgd2UgbmVlZCB0byBiZSB0byBpc29sYXRlIHRoZSBjYXVzYWwgZWZmZWN0IG9mIHhpdHhpdCBvbiB5aXR5aXQuCgpCdXTigKYKClRoZXJlIG1heSBhbHNvIGJlIG90aGVyIGZhY3RvcnMgYXQgdGhlIHR0IGxldmVsIHRoYXQgYXJlIHVub2JzZXJ2ZWQsIGFuZCB0aGF0IHJlcHJlc2VudCBhbiBvbWl0dGVkIHZhcmlhYmxlIHByb2JsZW0uIFNvLCB3ZSBuZWVkIHNvbWUgaGVscC4KCgoKClNsaWRlIDQzCklmIHlvdSByZW1lbWJlciwgdGhlIGdyZWF0IHRoaW5nIGFib3V0IGluc3RydW1lbnQgdmFyaWFibGUgbW9kZWxzIGlzIHRoYXQgb25jZSB5b3UgdW5kZXJzdGFuZCB0aGUgYmFzaWNzLCB5b3UgY2FuIGV4dGVuZCB0aGUgZnJhbWV3b3JrIGludG8gbW9yZSBjb21wbGljYXRlZCBtb2RlbHMuCgpJbnN0cnVtZW50cyBtdXN0IGJl4oCmCgpJbmRpdmlkdWFsbHkgYW5kIGpvaW50bHkgdmFsaWQgcHJlZGljdG9ycyBvZiB0aGUgZW5kb2dlbm91cyB2YXJpYWJsZQpQcm9wZXJseSBleGNsdWRlZCBmcm9tIHRoZSBzZWNvbmQgc3RhZ2UgZXF1YXRpb24gKGV4b2dlbm91cykKCgoKClNsaWRlIDQ0Ck5vdGUgdGhlIHwgb3BlcmF0b3IgdG8gZGVsaW5lYXRlIHRoZSBpbnN0cnVtZW50cyBpbiB0aGUgbW9kZWwuCgppbnN0Lm1vZGVsIDwtIHBsbShzZ3IgfiBkbHR0IHwgbHQgKyBjaCwgCiAgICAgICAgICAgICAgICAgIGRhdGEgPSBuby5wbG0uZGYsIGluZGV4PWMoImd2a2V5IiwgImZ5ZWFyIiksIAogICAgICAgICAgICAgICAgICBtb2RlbD0id2l0aGluIiwgZWZmZWN0ID0gYygidHdvd2F5cyIpKQpzdW1tYXJ5KGluc3QubW9kZWwpCgpgYGB7cn0KaW5zdC5tb2RlbCA8LSBwbG0oc2dyIH4gZGx0dCB8IGx0ICsgY2gsIAogICAgICAgICAgICAgICAgICBkYXRhID0gbm8ucGxtLmRmLCBpbmRleD1jKCJndmtleSIsICJmeWVhciIpLCAKICAgICAgICAgICAgICAgICAgbW9kZWw9IndpdGhpbiIsIGVmZmVjdCA9IGMoInR3b3dheXMiKSkKc3VtbWFyeShpbnN0Lm1vZGVsKQpgYGAKCgoKCgoKCgojIyBUd293YXlzIGVmZmVjdHMgV2l0aGluIE1vZGVsCiMjIEluc3RydW1lbnRhbCB2YXJpYWJsZSBlc3RpbWF0aW9uCiMjICAgIChCYWxlc3RyYS1WYXJhZGhhcmFqYW4tS3Jpc2huYWt1bWFyJ3MgdHJhbnNmb3JtYXRpb24pCiMjIAojIyBDYWxsOgojIyBwbG0oZm9ybXVsYSA9IHNnciB+IGRsdHQgfCBsdCArIGNoLCBkYXRhID0gbm8ucGxtLmRmLCBlZmZlY3QgPSBjKCJ0d293YXlzIiksIAojIyAgICAgbW9kZWwgPSAid2l0aGluIiwgaW5kZXggPSBjKCJndmtleSIsICJmeWVhciIpKQojIyAKIyMgVW5iYWxhbmNlZCBQYW5lbDogbj04MjIsIFQ9MS0yMCwgTj05MTQ5CiMjIAojIyBSZXNpZHVhbHMgOgojIyAgICBNaW4uIDFzdCBRdS4gIE1lZGlhbiAzcmQgUXUuICAgIE1heC4gCiMjIC0xNTcuMDAgICAtOS45MiAgIC0xLjc2ICAgIDYuNjggIDQ0MC4wMCAKIyMgCiMjIENvZWZmaWNpZW50cyA6CiMjICAgICAgICBFc3RpbWF0ZSBTdGQuIEVycm9yIHQtdmFsdWUgUHIoPnx0fCkgIAojIyBkbHR0IDEuNzA0OWUtMDUgNy4yODA0ZS0wNiAgMi4zNDE4ICAwLjAxOTIxICoKIyMgLS0tCiMjIFNpZ25pZi4gY29kZXM6ICAwICcqKionIDAuMDAxICcqKicgMC4wMSAnKicgMC4wNSAnLicgMC4xICcgJyAxCiMjIAojIyBUb3RhbCBTdW0gb2YgU3F1YXJlczogICAgNjgxNTkwMAojIyBSZXNpZHVhbCBTdW0gb2YgU3F1YXJlczogNjc5NDgwMAojIyBSLVNxdWFyZWQ6ICAgICAgMC4wMDM0NTg5CiMjIEFkai4gUi1TcXVhcmVkOiAtMC4wOTc0MzEKIyMgRi1zdGF0aXN0aWM6IDI1LjgyOTQgb24gMSBhbmQgODMwNyBERiwgcC12YWx1ZTogMy44MTFlLTA3CgoKCgpTbGlkZSA0NQpVbmZvcnR1bmF0ZWx5LCAyU0xTIHdpdGggcGFuZWwgZGF0YSBnZXRzIHJlYWxseSBjb21wbGljYXRlZCwgcmVhbGx5IGZhc3QuIFRoZSBiaWcgdGhpbmcgdG8gcmVtZW1iZXIgYXQgdGhpcyBzdGFnZSBvZiB5b3VyIHRyYWluaW5nIGlzIHRoYXQgeWVzLCB5b3UgY2Fu4oCUYW5kIGxpa2VseSBuZWVkIHRv4oCUaW50ZWdyYXRlIGluc3RydW1lbnRzIGludG8geW91ciBmaXhlZCBlZmZlY3QgcGFuZWwgbW9kZWxzLgoKSWYgeW91ciByZXNlYXJjaCB0YWtlcyB5b3UgZG93biB0aGF0IHBhdGgsIHdl4oCZbGwgZ2V0IHlvdSBhZGRpdGlvbmFsIHRyYWluaW5nIDopCgoKCgpTbGlkZSA0NgpBIGNyaXRpY2lzbeKAlGNvbXBsZXRlbHkgYWNjdXJhdGXigJRvZiBmaXhlZCBlZmZlY3QgbW9kZWxzIGlzIHRoYXQgdGhleSBhcmUgYSBibHVudCBpbnN0cnVtZW50LgoKQnkgZWxpbWluYXRpbmcgYWxsIG9mIHRoZSBiZXR3ZWVuLWVmZmVjdCB2YXJpYW5jZSwgYW55IHZhcmlhYmxlIHRoYXQgZXhpc3RzIGF0IHRoZSBpaSAoZmlybSkgbGV2ZWwsIG9yIHRoYXQgaXMgb3RoZXJ3aXNlIGludmFyaWFudCBhY3Jvc3MgdGltZSBmb3IgZWFjaCBpaSwgY2Fu4oCZdCBiZSB1c2VkIGluIHRoZSBtb2RlbC4KCgoKClNsaWRlIDQ3CldoeT8KCldlbGwsIGxldHMgZG8gYW4gZXhwZXJpbWVudC4KCkluIG91ciBkYXRhZnJhbWUgaXMgdGhlIGZpcm3igJlzIFNJQyBjb2RlLCB3aGljaCByZXByZXNlbnRzIHRoZSBmaXJt4oCZcyBTdGFuZGFyZCBJbmR1c3RyaWFsIENsYXNzaWZpY2F0aW9u4oCTYmFzaWNhbGx5LCB0aGUgZmlybeKAmXMgcHJpbWFyeSBpbmR1c3RyeS4KCgoKCgoKU2xpZGUgNDgKTm93IGxldHMgc2F5IHRoYXQgd2Ugd2FudCB0byBjb250cm9sIGZvciB0aGUgZmlybeKAmXMgaW5kdXN0cnkuIE1ha2VzIHNlbnNlLCByaWdodD8gRmlybXMgYXJlIG5lc3RlZCB3aXRoaW4gaW5kdXN0cmllcywgc28gaXQgZm9sbG93cyB0aGF0IHRoZXJlIG1pZ2h0IGJlIGZhY3RvcnMgYXQgdGhlIGluZHVzdHJ5IGxldmVsIHRoYXQgbWlnaHQgaW1wYWN0IGhvdyBhbGwsIG9yIHNvbWUsIG9yIG5vbmUsIG9mIHRoZSBmaXJtcyB3aXRoaW4gdGhhdCBpbmR1c3RyeSBvbiB3aGF0ZXZlciByZXNlYXJjaCBxdWVzdGlvbiB3ZSBhcmUgaW50ZXJlc3RlZCBpbi4KCgoKCgoKU2xpZGUgNDkKVGhlIHByb2JsZW0gdGhvdWdoIGlzIHRoYXQgdGhlcmUgYXJlIG5vdCBhbnkgY2FzZXMgb2YgZmlybeKAmXMgd2l0aGluIHRoZSBzYW1wbGUgY2hhbmdpbmcgaW5kdXN0cmllcy4gTGV0cyB0YWtlIGEgbG9vayBhdCBob3cgbWFueSBpbmR1c3RyaWVzIHRoZXJlIGFyZSBpbiBvdXIgZGF0YXNldOKApgoKIyBXZSdyZSBmaXJzdCBnb2luZyB0byBjcmVhdGUgYSBuZXcgZmFjdG9yIHZhcmlhYmxlIGJhc2VkIG9uIFNJQyBjb2RlCnBhbmVsLm5vLmRmJGluZHVzdHJ5IDwtIGFzLmZhY3RvcihwYW5lbC5uby5kZiRzaWMpCm5sZXZlbHMocGFuZWwubm8uZGYkaW5kdXN0cnkpICAjIENvdW50IHRoZSBpbnN0cmllcwojIyBbMV0gNDMKCgpgYGB7cn0KcGFuZWwubm8uZGYkaW5kdXN0cnkgPC0gYXMuZmFjdG9yKHBhbmVsLm5vLmRmJHNpYykKbmxldmVscyhwYW5lbC5uby5kZiRpbmR1c3RyeSkgICMgQ291bnQgdGhlIGluc3RyaWVzCmBgYAoKCgpTbGlkZSA1MApUaGlzIHdpbGwgYmUgZWFzaWVyIHRvIHNlZSB1c2luZyB0aGUgZHVtbXkgdmFyaWFibGUgbWV0aG9k4oCmCgpzZ3IuaW5kLm1vZGVsIDwtIGxtKHNnciB+IGRsdHQgKyBmYWN0b3IoZ3ZrZXkpLTEgKyAKICAgICAgICAgICAgICAgICAgICAgIGZhY3RvcihpbmR1c3RyeSktMSwgZGF0YSA9IHBhbmVsLm5vLmRmKQpzdW1tYXJ5KHNnci5pbmQubW9kZWwpCgpgYGB7cn0Kc2dyLmluZC5tb2RlbCA8LSBsbShzZ3IgfiBkbHR0ICsgZmFjdG9yKGd2a2V5KS0xICsgCiAgICAgICAgICAgICAgICAgICAgICBmYWN0b3IoaW5kdXN0cnkpLTEsIGRhdGEgPSBwYW5lbC5uby5kZikKc3VtbWFyeShzZ3IuaW5kLm1vZGVsKQpgYGAKCgoKCgoKCgojIyAKIyMgQ2FsbDoKIyMgbG0oZm9ybXVsYSA9IHNnciB+IGRsdHQgKyBmYWN0b3IoZ3ZrZXkpIC0gMSArIGZhY3RvcihpbmR1c3RyeSkgLSAKIyMgICAgIDEsIGRhdGEgPSBwYW5lbC5uby5kZikKIyMgCiMjIFJlc2lkdWFsczoKIyMgICAgIE1pbiAgICAgIDFRICBNZWRpYW4gICAgICAzUSAgICAgTWF4IAojIyAtMTUyLjI3ICAtMTEuMTYgICAtMS45OSAgICA3LjgxICA0MzAuMTAgCiMjIAojIyBDb2VmZmljaWVudHM6ICg0MiBub3QgZGVmaW5lZCBiZWNhdXNlIG9mIHNpbmd1bGFyaXRpZXMpCiMjICAgICAgICAgICAgICAgICAgICAgICAgRXN0aW1hdGUgU3RkLiBFcnJvciB0IHZhbHVlIFByKD58dHwpICAgIAojIyBkbHR0ICAgICAgICAgICAgICAgICAgMS42MTBlLTA1ICA0LjgxM2UtMDYgICAzLjM0NiAwLjAwMDgyMyAqKioKIyMgZmFjdG9yKGd2a2V5KTAwMTA2MiAgIDQuMjk3ZSswMCAgMi4wOTNlKzAxICAgMC4yMDUgMC44MzcyODUgICAgCiMjIGZhY3RvcihndmtleSkwMDExNzcgICA4Ljc1NmUrMDAgIDYuNzg5ZSswMCAgIDEuMjkwIDAuMTk3MTY5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDAxMjU3ICAgMS4wNTFlKzAxICA3LjY0MWUrMDAgICAxLjM3NiAwLjE2ODg0MyAgICAKIyMgZmFjdG9yKGd2a2V5KTAwMTI3NCAgIDMuMDQ1ZSswMSAgNy45MDllKzAwICAgMy44NTEgMC4wMDAxMTkgKioqCiMjIGZhY3RvcihndmtleSkwMDE0MTQgIC02LjEzM2UrMDAgIDEuMjA4ZSswMSAgLTAuNTA4IDAuNjExNzM0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDAxNDQ3ICAgMy44NDVlKzAwICA2Ljc5MGUrMDAgICAwLjU2NiAwLjU3MTIwNCAgICAKIyMgZmFjdG9yKGd2a2V5KTAwMTQ0OSAgIDYuNDcxZSswMCAgNi43ODllKzAwICAgMC45NTMgMC4zNDA1MjggICAgCiMjIGZhY3RvcihndmtleSkwMDE0ODcgICAxLjM1NWUrMDAgIDYuOTgxZSswMCAgIDAuMTk0IDAuODQ2MTI2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDAxNTI2ICAgNC4wMzJlKzAwICA2Ljc4OWUrMDAgICAwLjU5NCAwLjU1MjU2OSAgICAKIyMgZmFjdG9yKGd2a2V5KTAwMTU0NSAgLTkuMjExZSswMCAgMS4xMThlKzAxICAtMC44MjMgMC40MTAyNTYgICAgCiMjIGZhY3RvcihndmtleSkwMDE2MTggIC0xLjExMmUrMDEgIDEuMTE4ZSswMSAgLTAuOTk0IDAuMzIwMjE4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDAxOTQ5ICAgMy42MzFlKzAwICAyLjk1OWUrMDEgICAwLjEyMyAwLjkwMjM1MiAgICAKIyMgZmFjdG9yKGd2a2V5KTAwMTk4MiAgIDkuNzY3ZSswMCAgNy42NDFlKzAwICAgMS4yNzggMC4yMDExOTYgICAgCiMjIGZhY3RvcihndmtleSkwMDIwMDIgICAzLjAwMmUrMDAgIDYuNzg5ZSswMCAgIDAuNDQyIDAuNjU4MzUyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDAyMDA1ICAtMi4xODllKzAwICA2Ljc4OWUrMDAgIC0wLjMyMiAwLjc0NzA5MyAgICAKIyMgZmFjdG9yKGd2a2V5KTAwMjAxOSAgIDguODQ2ZSswMCAgNi43ODllKzAwICAgMS4zMDMgMC4xOTI2MTAgICAgCiMjIGZhY3RvcihndmtleSkwMDIxNzYgICAyLjQ0OGUrMDEgIDYuNzkwZSswMCAgIDMuNjA2IDAuMDAwMzEzICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDAyNTQ3ICAgMy41NTRlKzAwICA2Ljc4OWUrMDAgICAwLjUyNCAwLjYwMDYwMiAgICAKIyMgZmFjdG9yKGd2a2V5KTAwMjU1OCAgLTEuODM5ZSswMCAgNi43ODllKzAwICAtMC4yNzEgMC43ODY0NjQgICAgCiMjIGZhY3RvcihndmtleSkwMDI2MjAgICA2LjMxOGUrMDAgIDYuNzg5ZSswMCAgIDAuOTMxIDAuMzUyMDUxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDAyODQ5ICAgOS43MjdlKzAwICA3LjY0MWUrMDAgICAxLjI3MyAwLjIwMzA1MSAgICAKIyMgZmFjdG9yKGd2a2V5KTAwMjk2OCAgIDcuMzY0ZSswMCAgNi44MTVlKzAwICAgMS4wODEgMC4yNzk5MDQgICAgCiMjIGZhY3RvcihndmtleSkwMDMwMjQgICA0Ljc5MmUrMDAgIDYuNzg5ZSswMCAgIDAuNzA2IDAuNDgwMjk5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDAzMDgyICAgOS44MTNlKzAwICA2Ljc4OWUrMDAgICAxLjQ0NSAwLjE0ODM4MCAgICAKIyMgZmFjdG9yKGd2a2V5KTAwMzIyMSAgIDcuNTU5ZSswMCAgNi43ODllKzAwICAgMS4xMTMgMC4yNjU1MzUgICAgCiMjIGZhY3RvcihndmtleSkwMDMyMzEgIC00LjMxNWUtMDEgIDYuNzg5ZSswMCAgLTAuMDY0IDAuOTQ5MzI3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDAzMjM4ICAgMi4xMjVlKzAwICA2Ljc4OWUrMDAgICAwLjMxMyAwLjc1NDMxNiAgICAKIyMgZmFjdG9yKGd2a2V5KTAwMzI0MyAgIDkuOTUyZSswMCAgNi44NDRlKzAwICAgMS40NTQgMC4xNDU5MTUgICAgCiMjIGZhY3RvcihndmtleSkwMDMyNzggICA0LjI3NmUrMDEgIDEuMzIzZSswMSAgIDMuMjMxIDAuMDAxMjM4ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMDAzNDEwICAtOC45MTFlKzAwICAxLjExOGUrMDEgIC0wLjc5NyAwLjQyNTYzMSAgICAKIyMgZmFjdG9yKGd2a2V5KTAwMzU2MiAgIDEuMTQ0ZSswMSAgNy45MDllKzAwICAgMS40NDcgMC4xNDc5MTUgICAgCiMjIGZhY3RvcihndmtleSkwMDM2NDMgICA2LjQxMGUrMDAgIDYuNzg5ZSswMCAgIDAuOTQ0IDAuMzQ1MTQxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDA0MTkzICAgNS43NDBlKzAwICA3LjY0MWUrMDAgICAwLjc1MSAwLjQ1MjUwOCAgICAKIyMgZmFjdG9yKGd2a2V5KTAwNDIwMSAgIDEuMjczZSswMSAgNi43ODllKzAwICAgMS44NzYgMC4wNjA3MjUgLiAgCiMjIGZhY3RvcihndmtleSkwMDQ2MDEgICA2LjUxMGUrMDAgIDguNjA3ZSswMCAgIDAuNzU2IDAuNDQ5NDE2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDA0NjA1ICAgNi40ODllKzAwICA3LjkwOWUrMDAgICAwLjgyMCAwLjQxMTk4MSAgICAKIyMgZmFjdG9yKGd2a2V5KTAwNDY0MCAgIDkuMDEwZSswMCAgNi43ODllKzAwICAgMS4zMjcgMC4xODQ0OTMgICAgCiMjIGZhY3RvcihndmtleSkwMDQ2NjYgICAyLjIxN2UrMDEgIDcuOTA5ZSswMCAgIDIuODAzIDAuMDA1MDc0ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMDA0Njc0ICAgMS4wMjVlKzAxICA2Ljc4OWUrMDAgICAxLjUwOSAwLjEzMTI0OSAgICAKIyMgZmFjdG9yKGd2a2V5KTAwNDY3OCAgIDUuNDY4ZSswMCAgNi43ODllKzAwICAgMC44MDUgMC40MjA2MTEgICAgCiMjIGZhY3RvcihndmtleSkwMDQ2ODUgICAyLjM2N2UrMDAgIDYuNzg5ZSswMCAgIDAuMzQ5IDAuNzI3Mzg3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDA0NjkwICAgNC4xMTFlKzAwICA2Ljc4OWUrMDAgICAwLjYwNiAwLjU0NDc5MyAgICAKIyMgZmFjdG9yKGd2a2V5KTAwNDY5OSAgIDguNTgwZSswMCAgNi43ODllKzAwICAgMS4yNjQgMC4yMDYzNDIgICAgCiMjIGZhY3RvcihndmtleSkwMDQ3MjMgICAyLjcxMmUrMDEgIDYuNzkwZSswMCAgIDMuOTk0IDYuNTRlLTA1ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDA0NzM3ICAgNy4zMDVlLTAxICA2Ljc4OWUrMDAgICAwLjEwOCAwLjkxNDMxMiAgICAKIyMgZmFjdG9yKGd2a2V5KTAwNDc0MCAgIDEuNDIxZSswMSAgOC4yMDdlKzAwICAgMS43MzEgMC4wODM1MDEgLiAgCiMjIGZhY3RvcihndmtleSkwMDQ4NDIgICAzLjg0NmUrMDAgIDcuOTA5ZSswMCAgIDAuNDg2IDAuNjI2ODE4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDA0ODg1ICAgMS41MDZlKzAxICA2Ljc4OWUrMDAgICAyLjIxOCAwLjAyNjU2NiAqICAKIyMgZmFjdG9yKGd2a2V5KTAwNTA0OCAgLTMuNTY5ZSswMCAgNy43MTVlKzAwICAtMC40NjMgMC42NDM2MjkgICAgCiMjIGZhY3RvcihndmtleSkwMDUwNzIgIC00LjM0N2UrMDAgIDIuMDkzZSswMSAgLTAuMjA4IDAuODM1NDUwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDA1MTQ5ICAgMy42OThlKzAwICA3LjY0MWUrMDAgICAwLjQ4NCAwLjYyODM5MSAgICAKIyMgZmFjdG9yKGd2a2V5KTAwNTM0MiAgIDQuODIxZSswMSAgOS4zNThlKzAwICAgNS4xNTIgMi42M2UtMDcgKioqCiMjIGZhY3RvcihndmtleSkwMDU1NDMgICAyLjc5NGUrMDEgIDcuOTA5ZSswMCAgIDMuNTMzIDAuMDAwNDEzICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDA1NzM1ICAgNC42MDhlKzAwICA2Ljc5NGUrMDAgICAwLjY3OCAwLjQ5NzY1NSAgICAKIyMgZmFjdG9yKGd2a2V5KTAwNTc2MyAgIDcuMzU1ZSswMCAgOC45MjJlKzAwICAgMC44MjQgMC40MDk3ODMgICAgCiMjIGZhY3RvcihndmtleSkwMDU3ODYgICAzLjM4MWUrMDAgIDYuNzg5ZSswMCAgIDAuNDk4IDAuNjE4NDYxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDA1ODQ5ICAgNy42ODVlKzAwICA3LjkwOWUrMDAgICAwLjk3MiAwLjMzMTIyMCAgICAKIyMgZmFjdG9yKGd2a2V5KTAwNTg2MiAgLTEuNjkxZSswMCAgOC4yMDdlKzAwICAtMC4yMDYgMC44MzY4MDYgICAgCiMjIGZhY3RvcihndmtleSkwMDYyMzkgICAxLjQ1MmUrMDEgIDYuNzg5ZSswMCAgIDIuMTM5IDAuMDMyNTAzICogIAojIyBmYWN0b3IoZ3ZrZXkpMDA2MzMzICAgNi4xODFlLTAyICA3LjY0MWUrMDAgICAwLjAwOCAwLjk5MzU0NiAgICAKIyMgZmFjdG9yKGd2a2V5KTAwNjY1MyAgIDEuODg3ZSswMSAgNi45NzVlKzAwICAgMi43MDYgMC4wMDY4MjIgKiogCiMjIGZhY3RvcihndmtleSkwMDY2ODIgICAzLjM1NGUrMDEgIDkuODY0ZSswMCAgIDMuNDAxIDAuMDAwNjc2ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDA2NzQyICAgNS40NzhlKzAwICA2Ljc4OWUrMDAgICAwLjgwNyAwLjQxOTc2NiAgICAKIyMgZmFjdG9yKGd2a2V5KTAwNjc4MSAgLTkuMDMzZS0wMSAgNi43ODllKzAwICAtMC4xMzMgMC44OTQxNTYgICAgCiMjIGZhY3RvcihndmtleSkwMDY3OTEgICA3LjMzNmUrMDAgIDkuODY0ZSswMCAgIDAuNzQ0IDAuNDU3MDUyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDA3MDYzICAgMS43NTNlKzAxICA2Ljk3NWUrMDAgICAyLjUxMyAwLjAxMTk4NiAqICAKIyMgZmFjdG9yKGd2a2V5KTAwNzUyNSAgIDkuMzYyZSswMCAgMS40ODBlKzAxICAgMC42MzMgMC41MjY5NDggICAgCiMjIGZhY3RvcihndmtleSkwMDc2NDcgICAxLjExMGUrMDEgIDYuODIzZSswMCAgIDEuNjI3IDAuMTAzNjc4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDA3OTgyICAgNS43NzJlKzAwICA2Ljc4OWUrMDAgICAwLjg1MCAwLjM5NTI0OCAgICAKIyMgZmFjdG9yKGd2a2V5KTAwODAwNyAgIDEuNTUzZSswMSAgNi43OTllKzAwICAgMi4yODQgMC4wMjIzODcgKiAgCiMjIGZhY3RvcihndmtleSkwMDgxNDggICAxLjIxOGUrMDEgIDIuMDkzZSswMSAgIDAuNTgyIDAuNTYwNjg2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDA4MjQwICAtMy42ODNlKzAwICA4LjIwN2UrMDAgIC0wLjQ0OSAwLjY1MzYyMSAgICAKIyMgZmFjdG9yKGd2a2V5KTAwODI0NSAgIDYuNjExZSswMCAgNi43OTBlKzAwICAgMC45NzQgMC4zMzAyNjMgICAgCiMjIGZhY3RvcihndmtleSkwMDgzNjMgICAxLjM2MmUrMDEgIDcuNjQxZSswMCAgIDEuNzgyIDAuMDc0NzYwIC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDA4NDMxICAgMi43MzNlKzAwICA2Ljc4OWUrMDAgICAwLjQwMyAwLjY4NzI0NCAgICAKIyMgZmFjdG9yKGd2a2V5KTAwODQ1NyAgIDEuMjcwZSswMSAgNy45MDllKzAwICAgMS42MDYgMC4xMDgyMjEgICAgCiMjIGZhY3RvcihndmtleSkwMDg2MDUgICA1LjUzMGUtMDIgIDguMjA3ZSswMCAgIDAuMDA3IDAuOTk0NjI1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDA4ODk4ICAgMS4zMDZlKzAxICA2Ljc4OWUrMDAgICAxLjkyNCAwLjA1NDM1OSAuICAKIyMgZmFjdG9yKGd2a2V5KTAwOTA2MSAgIDYuOTA0ZSswMCAgNi43ODllKzAwICAgMS4wMTcgMC4zMDkyNTggICAgCiMjIGZhY3RvcihndmtleSkwMDkwODMgICAxLjgxOWUrMDEgIDguNTQzZSswMCAgIDIuMTMwIDAuMDMzMjIwICogIAojIyBmYWN0b3IoZ3ZrZXkpMDA5MjU2ICAgNy45NTRlKzAwICAxLjA0NmUrMDEgICAwLjc2MCAwLjQ0NzEyNyAgICAKIyMgZmFjdG9yKGd2a2V5KTAwOTMxNyAgIDEuMDg4ZSswMSAgNi43ODllKzAwICAgMS42MDIgMC4xMDkxMzQgICAgCiMjIGZhY3RvcihndmtleSkwMDk3ODMgIC0xLjM5NmUrMDAgIDYuNzg5ZSswMCAgLTAuMjA2IDAuODM3MTAzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDEwMDM1ICAgOS4zODBlKzAwICA2Ljc4OWUrMDAgICAxLjM4MiAwLjE2NzExNSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMDA4NiAgIDEuMjg2ZSswMSAgNi45NzVlKzAwICAgMS44NDQgMC4wNjUyNjEgLiAgCiMjIGZhY3RvcihndmtleSkwMTAwOTYgICA4LjcyN2UrMDAgIDcuOTA5ZSswMCAgIDEuMTAzIDAuMjY5ODc5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDEwMTIxICAgMi4yNjZlKzAwICA2Ljc5OWUrMDAgICAwLjMzMyAwLjczODkwMiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMDEzNyAgIDkuMTAwZSswMCAgOC45MjdlKzAwICAgMS4wMTkgMC4zMDgwNTMgICAgCiMjIGZhY3RvcihndmtleSkwMTAxODcgICA1Ljg0MGUrMDAgIDYuNzg5ZSswMCAgIDAuODYwIDAuMzg5NzA3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDEwMzkwICAgMS4yNjBlKzAwICAxLjMyM2UrMDEgICAwLjA5NSAwLjkyNDEzNiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMDYxNCAgIDMuNTkzZSswMCAgNi43ODllKzAwICAgMC41MjkgMC41OTY2OTUgICAgCiMjIGZhY3RvcihndmtleSkwMTA3MTMgICAxLjQ2NWUrMDAgIDEuNzA5ZSswMSAgIDAuMDg2IDAuOTMxNjQ3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDEwODk0ICAgNi4yNzJlKzAwICA3LjE3N2UrMDAgICAwLjg3NCAwLjM4MjIwMSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMDkwMyAgIDEuNDAyZSswMSAgNy42NDFlKzAwICAgMS44MzUgMC4wNjY1NTUgLiAgCiMjIGZhY3RvcihndmtleSkwMTA5MTYgICAzLjIzMGUrMDAgIDYuNzg5ZSswMCAgIDAuNDc2IDAuNjM0MjU1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDEwOTE3ICAgMS44NTJlKzAxICAyLjA5M2UrMDEgICAwLjg4NSAwLjM3NjI0NCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMTA5OSAgLTYuNjkxZSswMCAgOC45MjJlKzAwICAtMC43NTAgMC40NTMzMDkgICAgCiMjIGZhY3RvcihndmtleSkwMTEyMjAgICAxLjAxMmUrMDEgIDcuNjQxZSswMCAgIDEuMzI0IDAuMTg1NTIzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDExMzAxICAgNS45NzNlKzAwICA3LjY0MWUrMDAgICAwLjc4MiAwLjQzNDQxOCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMTM0MCAgIDcuMzIxZSswMCAgNy42NDFlKzAwICAgMC45NTggMC4zMzgwMDIgICAgCiMjIGZhY3RvcihndmtleSkwMTE2ODcgICA5LjgxN2UrMDAgIDYuNzg5ZSswMCAgIDEuNDQ2IDAuMTQ4MjA4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDExNzI5ICAgMi4xNzRlKzAxICA2Ljc4OWUrMDAgICAzLjIwMyAwLjAwMTM2NyAqKiAKIyMgZmFjdG9yKGd2a2V5KTAxMTc3MCAgIDIuMTM5ZSswMSAgNy42NDFlKzAwICAgMi44MDAgMC4wMDUxMjkgKiogCiMjIGZhY3RvcihndmtleSkwMTE4MTkgICAyLjI0NWUrMDEgIDEuMzIzZSswMSAgIDEuNjk3IDAuMDg5ODI3IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDExODQyICAgOS40NjNlKzAwICA2Ljc4OWUrMDAgICAxLjM5NCAwLjE2MzQxMyAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMTg1NiAgIDEuMDAzZSswMSAgNi43ODllKzAwICAgMS40NzcgMC4xMzk2MTEgICAgCiMjIGZhY3RvcihndmtleSkwMTE4NjEgICA0LjE0OGUrMDAgIDYuNzg5ZSswMCAgIDAuNjExIDAuNTQxMjUyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDExODk2ICAgMy4wOTFlKzAwICA2Ljc4OWUrMDAgICAwLjQ1NSAwLjY0ODg5NyAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMjEyNCAgIDEuMDQyZSswMSAgNi42MzJlKzAwICAgMS41NzIgMC4xMTYwNzIgICAgCiMjIGZhY3RvcihndmtleSkwMTIxMzggICAxLjM0NmUrMDEgIDYuNzg5ZSswMCAgIDEuOTgyIDAuMDQ3NTIwICogIAojIyBmYWN0b3IoZ3ZrZXkpMDEyMTQwICAgMS4yODllKzAxICA3LjM5OGUrMDAgICAxLjc0MiAwLjA4MTUxMiAuICAKIyMgZmFjdG9yKGd2a2V5KTAxMjQwNyAgLTQuMzMxZSswMCAgMi45NTllKzAxICAtMC4xNDYgMC44ODM2NDEgICAgCiMjIGZhY3RvcihndmtleSkwMTI1NDQgICAyLjA5OGUrMDEgIDcuNjQxZSswMCAgIDIuNzQ2IDAuMDA2MDQwICoqIAojIyBmYWN0b3IoZ3ZrZXkpMDEyNjAzICAgNC4yOTNlKzAwICA2Ljc4OWUrMDAgICAwLjYzMiAwLjUyNzE3MiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMjY3MyAgIDMuNTA2ZSswMCAgNi44MDRlKzAwICAgMC41MTUgMC42MDYzNTAgICAgCiMjIGZhY3RvcihndmtleSkwMTI3MjYgICA2LjY2N2UrMDAgIDYuNzg5ZSswMCAgIDAuOTgyIDAuMzI2MTMxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDEyNzk2ICAgNS41MTNlKzAwICA2Ljc4OWUrMDAgICAwLjgxMiAwLjQxNjc3MiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMjkwOSAgIDEuMjc1ZSswMSAgNy45MDllKzAwICAgMS42MTIgMC4xMDcwMDQgICAgCiMjIGZhY3RvcihndmtleSkwMTMwNDEgICAyLjUxOGUrMDAgIDYuNzg5ZSswMCAgIDAuMzcxIDAuNzEwNzYyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDEzMTI1ICAgMS41OThlKzAxICA3LjkwOWUrMDAgICAyLjAyMSAwLjA0MzM1NyAqICAKIyMgZmFjdG9yKGd2a2V5KTAxMzE0MiAgLTUuNzkyZS0wMSAgNy45MDllKzAwICAtMC4wNzMgMC45NDE2MjYgICAgCiMjIGZhY3RvcihndmtleSkwMTMxODkgICAxLjQyNmUrMDEgIDkuMzU4ZSswMCAgIDEuNTI0IDAuMTI3NTQyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDEzMjk0ICAtNS42MjZlKzAwICAxLjQ4MGUrMDEgIC0wLjM4MCAwLjcwMzgwMSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMzM0MSAgIDEuMDc1ZSswMSAgNi43ODllKzAwICAgMS41ODMgMC4xMTM0NzkgICAgCiMjIGZhY3RvcihndmtleSkwMTMzNDIgICA4LjUxM2UrMDAgIDYuNzg5ZSswMCAgIDEuMjU0IDAuMjA5ODg0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDEzNDUzICAgMS4yMDhlKzAxICA2Ljc4OWUrMDAgICAxLjc3OSAwLjA3NTI0MCAuICAKIyMgZmFjdG9yKGd2a2V5KTAxMzUxMCAgIDQuNjM1ZSswMCAgNy42NDFlKzAwICAgMC42MDcgMC41NDQxNDcgICAgCiMjIGZhY3RvcihndmtleSkwMTM1NjEgICAxLjcxOGUrMDEgIDcuMzk4ZSswMCAgIDIuMzIyIDAuMDIwMjU2ICogIAojIyBmYWN0b3IoZ3ZrZXkpMDEzNTYyICAgNi41OTRlKzAwICA3LjY0MWUrMDAgICAwLjg2MyAwLjM4ODEzMyAgICAKIyMgZmFjdG9yKGd2a2V5KTAxMzU3OSAgIDUuNDExZSswMCAgNy45MDllKzAwICAgMC42ODQgMC40OTM4NzUgICAgCiMjIGZhY3RvcihndmtleSkwMTM1ODAgICAyLjk5MWUrMDEgIDEuNzA5ZSswMSAgIDEuNzUwIDAuMDgwMDc1IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDEzOTg4ICAgOC4yODZlKzAwICA2Ljc4OWUrMDAgICAxLjIyMCAwLjIyMjMxMyAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNDE0MCAgIDguMzU1ZSswMCAgNi44NDRlKzAwICAgMS4yMjEgMC4yMjIyMzcgICAgCiMjIGZhY3RvcihndmtleSkwMTQxNzIgICA2LjQyNmUrMDAgIDYuNzg5ZSswMCAgIDAuOTQ2IDAuMzQzOTI4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE0MjE5ICAgNS45NThlKzAwICA2Ljc4OWUrMDAgICAwLjg3OCAwLjM4MDIxMCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNDI1MyAgIDEuNDg5ZSswMCAgNi43ODllKzAwICAgMC4yMTkgMC44MjYzNjQgICAgCiMjIGZhY3RvcihndmtleSkwMTQyNzUgICAxLjUwMGUrMDEgIDYuNzg5ZSswMCAgIDIuMjEwIDAuMDI3MTM4ICogIAojIyBmYWN0b3IoZ3ZrZXkpMDE0NDAxICAgMS41MzJlKzAxICAxLjQ4MGUrMDEgICAxLjAzNiAwLjMwMDM3OCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNDQwMyAgIDEuNDM4ZSswMSAgMS40ODBlKzAxICAgMC45NzIgMC4zMzEyNzQgICAgCiMjIGZhY3RvcihndmtleSkwMTQ4MDIgICA2LjQxMWUrMDAgIDYuNzk1ZSswMCAgIDAuOTQzIDAuMzQ1NDYzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE0ODIyICAgMS4wNTllKzAxICA3LjM5OGUrMDAgICAxLjQzMSAwLjE1MjM3OCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNDgyNCAgIDYuMTU4ZSswMCAgNi43ODllKzAwICAgMC45MDcgMC4zNjQzODggICAgCiMjIGZhY3RvcihndmtleSkwMTQ4MjggICA3LjczMWUrMDAgIDcuOTA5ZSswMCAgIDAuOTc4IDAuMzI4MzI4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE1MTAxICAgMi4zMjZlKzAxICA4LjIwN2UrMDAgICAyLjgzNCAwLjAwNDYwMyAqKiAKIyMgZmFjdG9yKGd2a2V5KTAxNTExMSAgIDcuODY0ZSswMCAgNy42NDFlKzAwICAgMS4wMjkgMC4zMDMzOTAgICAgCiMjIGZhY3RvcihndmtleSkwMTUxNDIgICA0Ljc0NmUrMDAgIDcuOTA5ZSswMCAgIDAuNjAwIDAuNTQ4NDY4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE1MTUzICAgNy45MjNlKzAwICA3LjY0MWUrMDAgICAxLjAzNyAwLjI5OTgwNSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNTE4MSAgIDcuMDkzZSswMCAgNi43OThlKzAwICAgMS4wNDMgMC4yOTY4MTIgICAgCiMjIGZhY3RvcihndmtleSkwMTUxOTcgICA1Ljc4MWUrMDAgIDYuNzg5ZSswMCAgIDAuODUyIDAuMzk0NTAxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE1MTk5ICAgMy4zNTVlKzAwICA2Ljc4OWUrMDAgICAwLjQ5NCAwLjYyMTE0NCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNTIwOCAgIDEuMTAzZSswMSAgNy41OTllKzAwICAgMS40NTIgMC4xNDY1MzUgICAgCiMjIGZhY3RvcihndmtleSkwMTUyNjEgICA0LjU1MWUrMDAgIDcuOTA5ZSswMCAgIDAuNTc1IDAuNTY1MDMyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE1MzYyICAgOS40OTJlKzAwICA2Ljc5NGUrMDAgICAxLjM5NyAwLjE2MjM5NSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNTM2MyAgIDMuNDEwZSswMCAgNi43ODllKzAwICAgMC41MDIgMC42MTU1MTAgICAgCiMjIGZhY3RvcihndmtleSkwMTUzNjQgICAxLjc0OGUrMDEgIDcuNjQxZSswMCAgIDIuMjg4IDAuMDIyMTg3ICogIAojIyBmYWN0b3IoZ3ZrZXkpMDE1NTA1ICAgNS4yNDZlKzAwICA3LjE3OGUrMDAgICAwLjczMSAwLjQ2NDkyNyAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNTUwOSAgIDMuNjM2ZSswMCAgNy40MjNlKzAwICAgMC40OTAgMC42MjQyOTggICAgCiMjIGZhY3RvcihndmtleSkwMTU1MzIgICAzLjc1M2UrMDAgIDguMjkzZSswMCAgIDAuNDUzIDAuNjUwODM1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE1NTUyICAgMi42NzBlLTAyICA4LjI1MmUrMDAgICAwLjAwMyAwLjk5NzQxOCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNTU3NiAgIDEuODk2ZSswMCAgNi44MjNlKzAwICAgMC4yNzggMC43ODExMjYgICAgCiMjIGZhY3RvcihndmtleSkwMTU2MzQgICA5LjMyMGUrMDAgIDcuNjY4ZSswMCAgIDEuMjE1IDAuMjI0MjE3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE1Njc5ICAgMS4xMTBlKzAxICA4LjIwOGUrMDAgICAxLjM1MiAwLjE3NjM2MiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNTc0MyAgIDkuMDcwZSswMCAgOC4yMDhlKzAwICAgMS4xMDUgMC4yNjkxODEgICAgCiMjIGZhY3RvcihndmtleSkwMTU3ODQgICA5Ljk3N2UrMDAgIDcuOTQ1ZSswMCAgIDEuMjU2IDAuMjA5MjU2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE1ODg5ICAgOC4zMzdlKzAwICA2Ljc5MmUrMDAgICAxLjIyNyAwLjIxOTcwNSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNTkyOSAgIDguMTQyZSswMCAgNy45NTFlKzAwICAgMS4wMjQgMC4zMDU4MzEgICAgCiMjIGZhY3RvcihndmtleSkwMTYyNDUgICA1LjI5OWUrMDAgIDYuNzg5ZSswMCAgIDAuNzgxIDAuNDM1MDg5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE2MzA1ICAgMS4wOTFlKzAxICA4LjIwOGUrMDAgICAxLjMyOSAwLjE4Mzc2NiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNjM0OCAgLTEuMzk0ZSswMSAgMi4wOTVlKzAxICAtMC42NjYgMC41MDU3MjIgICAgCiMjIGZhY3RvcihndmtleSkwMTY1NDkgICAxLjQ2NGUrMDEgIDIuMDkzZSswMSAgIDAuNzAwIDAuNDg0MTg5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE2NjY4ICAgMS41MzNlKzAwICA2Ljc4OWUrMDAgICAwLjIyNiAwLjgyMTMyOSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNjY4MSAgIDUuMDM5ZSswMCAgNi45NzVlKzAwICAgMC43MjIgMC40NzAwODAgICAgCiMjIGZhY3RvcihndmtleSkwMTY2OTggICA3LjcxMmUrMDAgIDguMjA3ZSswMCAgIDAuOTQwIDAuMzQ3NDMzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE2NzA1ICAgNC40ODBlKzAwICA2Ljc4OWUrMDAgICAwLjY2MCAwLjUwOTI5NyAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNjcxNCAgIDkuMzA4ZSswMCAgNy42NDFlKzAwICAgMS4yMTggMC4yMjMxODcgICAgCiMjIGZhY3RvcihndmtleSkwMTY3MTYgICA2LjQ4M2UrMDAgIDcuNjQxZSswMCAgIDAuODQ4IDAuMzk2MjA1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE2NzIwICAgNC45MzBlKzAyICAyLjk1OWUrMDEgIDE2LjY1OSAgPCAyZS0xNiAqKioKIyMgZmFjdG9yKGd2a2V5KTAxNjc0OCAgIDMuNzQzZSswMCAgNy4zOThlKzAwICAgMC41MDYgMC42MTI4NjYgICAgCiMjIGZhY3RvcihndmtleSkwMTY3NzUgICA4LjgwMmUrMDAgIDcuNjQxZSswMCAgIDEuMTUyIDAuMjQ5Mzg2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE2Nzc3ICAgNS42MThlKzAwICA3LjkwOWUrMDAgICAwLjcxMCAwLjQ3NzUwMiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNjc4MSAgIDcuMzE1ZSswMCAgNi43ODllKzAwICAgMS4wNzcgMC4yODEzMjggICAgCiMjIGZhY3RvcihndmtleSkwMTY3OTAgICA4LjM4OWUrMDAgIDYuNzg5ZSswMCAgIDEuMjM2IDAuMjE2NjAzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE2ODIxICAgNi41NDBlKzAwICA2Ljc4OWUrMDAgICAwLjk2MyAwLjMzNTM5MSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNjgzMiAgIDEuMzkyZSswMSAgNy4xNzdlKzAwICAgMS45NDAgMC4wNTI0MzggLiAgCiMjIGZhY3RvcihndmtleSkwMTY4NDUgICA5LjI5NmUrMDAgIDYuNzg5ZSswMCAgIDEuMzY5IDAuMTcwOTU0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE2ODc4ICAgNS42NzdlKzAwICA4LjkyMmUrMDAgICAwLjYzNiAwLjUyNDY0NyAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNjg4OSAgIDYuODAwZSswMCAgNi43ODllKzAwICAgMS4wMDIgMC4zMTY1NjMgICAgCiMjIGZhY3RvcihndmtleSkwMTY4OTAgICA0LjcyOGUrMDAgIDYuOTc1ZSswMCAgIDAuNjc4IDAuNDk3ODc2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE2OTEwICAgNS4zMjNlKzAwICA3LjE3N2UrMDAgICAwLjc0MiAwLjQ1ODM1MCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNjkyOSAgIDcuODg5ZS0wMiAgNi43ODllKzAwICAgMC4wMTIgMC45OTA3MjkgICAgCiMjIGZhY3RvcihndmtleSkwMTY5NjcgICA1LjAxNWUrMDAgIDEuNzA5ZSswMSAgIDAuMjk0IDAuNzY5MTMzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE2OTgxICAgMS4yMDhlKzAxICA2Ljc4OWUrMDAgICAxLjc4MCAwLjA3NTE1MyAuICAKIyMgZmFjdG9yKGd2a2V5KTAxNjk4OSAgIDYuNDczZS0wMSAgOS44NjRlKzAwICAgMC4wNjYgMC45NDc2ODQgICAgCiMjIGZhY3RvcihndmtleSkwMTcwMzUgICA2Ljc0MGUrMDAgIDcuNjQxZSswMCAgIDAuODgyIDAuMzc3NzIwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3MDcwICAgNy41ODJlKzAwICA2Ljc4OWUrMDAgICAxLjExNyAwLjI2NDA4MiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzA3MyAgIDUuOTUyZSswMCAgNy42NDFlKzAwICAgMC43NzkgMC40MzYwNDQgICAgCiMjIGZhY3RvcihndmtleSkwMTcwNzQgICAxLjcxMWUrMDEgIDcuNjQxZSswMCAgIDIuMjM5IDAuMDI1MTg0ICogIAojIyBmYWN0b3IoZ3ZrZXkpMDE3MDc2ICAgOC4yMzFlKzAwICAxLjQ4MGUrMDEgICAwLjU1NiAwLjU3ODA0OCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzA5NSAgIDIuMjc3ZSswMCAgNi43ODllKzAwICAgMC4zMzUgMC43MzczNjkgICAgCiMjIGZhY3RvcihndmtleSkwMTcxMDYgICA1LjA3N2UrMDAgIDYuOTc1ZSswMCAgIDAuNzI4IDAuNDY2NjkyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3MTE1ICAgNS4wMjRlKzAwICA2Ljc4OWUrMDAgICAwLjc0MCAwLjQ1OTMxMyAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzEyMCAgIDEuNzQwZSswMSAgNi43ODllKzAwICAgMi41NjMgMC4wMTAzODEgKiAgCiMjIGZhY3RvcihndmtleSkwMTcxMzAgICAyLjMwM2UrMDEgIDYuNzg5ZSswMCAgIDMuMzkyIDAuMDAwNjk2ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDE3MTMxICAgMS4wNzNlKzAxICA3LjY0MWUrMDAgICAxLjQwNCAwLjE2MDQyMSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzEzMiAgIDUuMjExZSswMCAgNi43ODllKzAwICAgMC43NjggMC40NDI3NzYgICAgCiMjIGZhY3RvcihndmtleSkwMTcxMzYgICA5LjczMWUtMDEgIDYuNzg5ZSswMCAgIDAuMTQzIDAuODg2MDI0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3MTQ1ICAgMi45OTBlKzAwICA2Ljc4OWUrMDAgICAwLjQ0MCAwLjY1OTYyNyAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzE1MCAgIDguODM2ZSswMCAgNi43ODllKzAwICAgMS4zMDIgMC4xOTMxMDcgICAgCiMjIGZhY3RvcihndmtleSkwMTcxNTEgICA1Ljc3NmUrMDAgIDYuNzg5ZSswMCAgIDAuODUxIDAuMzk0OTQ5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3MTY4ICAgMi41MjFlKzAwICA5LjM1OGUrMDAgICAwLjI2OSAwLjc4NzYwNCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzE3MyAgIDUuNjgwZS0wMSAgMS4xMThlKzAxICAgMC4wNTEgMC45NTk0OTcgICAgCiMjIGZhY3RvcihndmtleSkwMTcxODQgICA0LjQxM2UrMDAgIDYuNzg5ZSswMCAgIDAuNjUwIDAuNTE1NzAyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3MTk1ICAgNC42NzFlKzAwICA2Ljc4OWUrMDAgICAwLjY4OCAwLjQ5MTQzOCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzE5NyAgIDIuOTM3ZSswMSAgNi45NzVlKzAwICAgNC4yMTEgMi41N2UtMDUgKioqCiMjIGZhY3RvcihndmtleSkwMTcyMjIgICAxLjk1MWUtMDEgIDIuOTU5ZSswMSAgIDAuMDA3IDAuOTk0NzQwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3MjQwICAgOS45NDBlKzAwICA2Ljk3NWUrMDAgICAxLjQyNSAwLjE1NDE3NiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzI0NSAgIDEuMjM5ZS0wMSAgNi43ODllKzAwICAgMC4wMTggMC45ODU0MzkgICAgCiMjIGZhY3RvcihndmtleSkwMTcyNDggICA3Ljk4MWUrMDAgIDYuNzg5ZSswMCAgIDEuMTc2IDAuMjM5Nzk1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3MjUyICAgNi45OTJlKzAwICA3LjY0MWUrMDAgICAwLjkxNSAwLjM2MDE1NCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzI2NiAgIDIuNzMzZSswMSAgNy42NDFlKzAwICAgMy41NzYgMC4wMDAzNTAgKioqCiMjIGZhY3RvcihndmtleSkwMTcyNjkgIC00LjMzN2UrMDAgIDYuNzg5ZSswMCAgLTAuNjM5IDAuNTIyOTcwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3MzY3ICAgMi4yMTZlKzAwICAxLjIwOGUrMDEgICAwLjE4MyAwLjg1NDQzOCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzM4OCAgLTEuNjAyZSswMCAgOC45MjJlKzAwICAtMC4xNzkgMC44NTc1NTMgICAgCiMjIGZhY3RvcihndmtleSkwMTc0MzggICAxLjI0OGUrMDEgIDEuNDgwZSswMSAgIDAuODQ0IDAuMzk4OTM0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3NDUxICAgMy4yNjllKzAxICAxLjcwOWUrMDEgICAxLjkxMyAwLjA1NTc2NSAuICAKIyMgZmFjdG9yKGd2a2V5KTAxNzUzNCAgIDcuNTMxZSswMCAgMS4wNDZlKzAxICAgMC43MjAgMC40NzE2NDYgICAgCiMjIGZhY3RvcihndmtleSkwMTc1NTYgICAyLjUwM2UrMDEgIDIuMDkzZSswMSAgIDEuMTk2IDAuMjMxNjA3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3Njk2ICAgMS43NTdlKzAxICAxLjcwOWUrMDEgICAxLjAyOCAwLjMwMzc0NiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzcwOSAgIDIuNDQyZSswMSAgMS43MDllKzAxICAgMS40MjkgMC4xNTMwMjAgICAgCiMjIGZhY3RvcihndmtleSkwMTc3MTUgICAzLjI0MGUrMDAgIDEuNDgwZSswMSAgIDAuMjE5IDAuODI2Njc0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE3NzI0ICAgOC41NzdlKzAwICA5Ljg2NGUrMDAgICAwLjg2OSAwLjM4NDYxNiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxNzg3NSAgIDEuMDczZSswMSAgMi45NTllKzAxICAgMC4zNjMgMC43MTY5NzEgICAgCiMjIGZhY3RvcihndmtleSkwMTc4NzcgICA0LjI1MWUrMDAgIDEuMTE4ZSswMSAgIDAuMzgwIDAuNzAzOTMyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE4MDM1ICAgMS4zNTRlKzAwICAyLjk1OWUrMDEgICAwLjA0NiAwLjk2MzUxOCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxODAzNyAgIDcuMDc5ZS0wMSAgNy45MDllKzAwICAgMC4wOTAgMC45Mjg2NzcgICAgCiMjIGZhY3RvcihndmtleSkwMTgwNDAgICA0LjE3NWUrMDAgIDEuNzA5ZSswMSAgIDAuMjQ0IDAuODA2OTY4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE4MDQ5ICAgOS42OTdlKzAwICA2Ljc4OWUrMDAgICAxLjQyOCAwLjE1MzIxOCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxODExMCAgIDEuMDE0ZSswMCAgNi43ODllKzAwICAgMC4xNDkgMC44ODEzMjYgICAgCiMjIGZhY3RvcihndmtleSkwMTgxODQgICA1Ljc0NGUrMDEgIDIuMDkzZSswMSAgIDIuNzQ1IDAuMDA2MDY0ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMDE4MTk1ICAtNC4xMjFlKzAwICAyLjA5M2UrMDEgIC0wLjE5NyAwLjg0Mzg4MSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxODI0MSAgIDIuNDIxZSswMCAgNi43ODllKzAwICAgMC4zNTcgMC43MjE0MjQgICAgCiMjIGZhY3RvcihndmtleSkwMTgyNzYgICAyLjEyOGUrMDAgIDYuNzg5ZSswMCAgIDAuMzEzIDAuNzUzOTE0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE4MzA3ICAgNi41NjhlKzAwICAxLjA0NmUrMDEgICAwLjYyOCAwLjUzMDIwMiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxODMyOSAgIDUuOTc0ZSswMCAgNy4xNzdlKzAwICAgMC44MzIgMC40MDUyMDMgICAgCiMjIGZhY3RvcihndmtleSkwMTgzNTggICAxLjU2NWUrMDAgIDcuMzk4ZSswMCAgIDAuMjEyIDAuODMyNDU1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE4Mzg1ICAtMy4zMDllKzAwICAxLjQ4MGUrMDEgIC0wLjIyNCAwLjgyMzAyMiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxODM5MiAgLTEuOTIyZSswMSAgMi4wOTNlKzAxICAtMC45MTkgMC4zNTgzNTEgICAgCiMjIGZhY3RvcihndmtleSkwMTg0MzQgICA5LjAyNGUrMDAgIDEuMDQ2ZSswMSAgIDAuODYzIDAuMzg4NDI1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE4NTMzICAgNS45ODhlKzAwICA4LjIwN2UrMDAgICAwLjczMCAwLjQ2NTY2MSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxODczMiAgIDQuNTMzZSswMCAgNy42NDFlKzAwICAgMC41OTMgMC41NTI5OTQgICAgCiMjIGZhY3RvcihndmtleSkwMTg5NDggIC00LjA0OGUrMDAgIDIuMDkzZSswMSAgLTAuMTkzIDAuODQ2NjE1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE5MDU3ICAtNC44MDFlKzAwICA3LjkwOWUrMDAgIC0wLjYwNyAwLjU0Mzg0NiAgICAKIyMgZmFjdG9yKGd2a2V5KTAxOTA5NCAgIDkuNjk1ZSswMCAgNi43ODllKzAwICAgMS40MjggMC4xNTMyOTYgICAgCiMjIGZhY3RvcihndmtleSkwMTkxMjQgICAzLjE4M2UrMDAgIDYuNzg5ZSswMCAgIDAuNDY5IDAuNjM5MTk0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE5MTM3ICAtMS43MTVlLTAxICA5Ljg2NGUrMDAgIC0wLjAxNyAwLjk4NjEyOCAgICAKIyMgZmFjdG9yKGd2a2V5KTAxOTE1MCAgIDMuMzM1ZSswMCAgNi43ODllKzAwICAgMC40OTEgMC42MjMyNjAgICAgCiMjIGZhY3RvcihndmtleSkwMTkxNTkgICA4LjMwOWUrMDAgIDIuOTU5ZSswMSAgIDAuMjgxIDAuNzc4ODc3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE5MjYyICAgMS44NzJlKzAwICA2Ljc4OWUrMDAgICAwLjI3NiAwLjc4MjY5OSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxOTMxOCAgIDYuNDAxZSswMCAgNi43ODllKzAwICAgMC45NDMgMC4zNDU3NTMgICAgCiMjIGZhY3RvcihndmtleSkwMTkzNTUgICA2LjQ1OWUrMDAgIDYuNzg5ZSswMCAgIDAuOTUxIDAuMzQxNDUwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE5NDI4ICAgNy4yNjhlKzAwICA2Ljc4OWUrMDAgICAxLjA3MSAwLjI4NDM2NyAgICAKIyMgZmFjdG9yKGd2a2V5KTAxOTU3MCAgIDMuNTE1ZSswMCAgNi43ODllKzAwICAgMC41MTggMC42MDQ2OTQgICAgCiMjIGZhY3RvcihndmtleSkwMTk3MTMgICAxLjMwMmUrMDEgIDcuMzk4ZSswMCAgIDEuNzU5IDAuMDc4NTYyIC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDE5ODE3ICAgMi40NDllKzAwICA3LjY0MWUrMDAgICAwLjMyMCAwLjc0ODYyNSAgICAKIyMgZmFjdG9yKGd2a2V5KTAxOTg2MCAgLTEuMDYzZSswMCAgMi45NTllKzAxICAtMC4wMzYgMC45NzEzNTcgICAgCiMjIGZhY3RvcihndmtleSkwMTk4NzMgICA3LjA1NmUrMDAgIDYuOTc1ZSswMCAgIDEuMDEyIDAuMzExNzQwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDE5OTI3ICAgMi41NDZlKzAxICAyLjk1OWUrMDEgICAwLjg2MCAwLjM4OTY5NCAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMDAxOSAgIDguMTc0ZSswMCAgNi43ODllKzAwICAgMS4yMDQgMC4yMjg2MDMgICAgCiMjIGZhY3RvcihndmtleSkwMjAwMjkgICAzLjg4M2UrMDAgIDEuMTE4ZSswMSAgIDAuMzQ3IDAuNzI4NDg1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDIwMTA5ICAgNC4yMTVlKzAwICA2Ljc4OWUrMDAgICAwLjYyMSAwLjUzNDY5MyAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMDI3NyAgIDEuMzUwZSswMSAgMi4wOTNlKzAxICAgMC42NDUgMC41MTg4NjAgICAgCiMjIGZhY3RvcihndmtleSkwMjAyODAgICAxLjY3N2UrMDIgIDIuOTU5ZSswMSAgIDUuNjY4IDEuNDllLTA4ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDIwMjk5ICAgMy41MjVlKzAxICAyLjk1OWUrMDEgICAxLjE5MSAwLjIzMzYyMiAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMDM0NCAgIDQuMjkxZSswMCAgMi4wOTNlKzAxICAgMC4yMDUgMC44Mzc1MjcgICAgCiMjIGZhY3RvcihndmtleSkwMjA0MjIgICA4LjcyM2UrMDEgIDIuOTU5ZSswMSAgIDIuOTQ4IDAuMDAzMjEwICoqIAojIyBmYWN0b3IoZ3ZrZXkpMDIwNjc3ICAgMi4yMjdlKzAxICAyLjk1OWUrMDEgICAwLjc1MyAwLjQ1MTY4OSAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMDc2MSAgIDYuNTMzZSswMSAgMi45NTllKzAxICAgMi4yMDggMC4wMjczMDAgKiAgCiMjIGZhY3RvcihndmtleSkwMjA3OTEgICAyLjYyNWUrMDEgIDguNTQzZSswMCAgIDMuMDcyIDAuMDAyMTMxICoqIAojIyBmYWN0b3IoZ3ZrZXkpMDIxMDczICAgMi4wNjRlKzAxICAyLjk1OWUrMDEgICAwLjY5NyAwLjQ4NTU4OCAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMTEwNCAgIDIuNzAyZSswMSAgMi45NTllKzAxICAgMC45MTMgMC4zNjEzMTQgICAgCiMjIGZhY3RvcihndmtleSkwMjEzMjYgICAxLjUyM2UrMDEgIDIuMDkzZSswMSAgIDAuNzI4IDAuNDY2NjI5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDIxMzgyICAtMi40NzRlKzAwICA3LjkxOGUrMDAgIC0wLjMxMiAwLjc1NDcyNiAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMTUwMyAgIDIuODczZSswMCAgNi43ODllKzAwICAgMC40MjMgMC42NzIxMzAgICAgCiMjIGZhY3RvcihndmtleSkwMjE1OTMgICAyLjE0OWUrMDAgIDEuMDQ2ZSswMSAgIDAuMjA1IDAuODM3MjQ3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDIxNjE2ICAtMi4wMzBlKzAwICAyLjA5M2UrMDEgIC0wLjA5NyAwLjkyMjcyNiAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMTgyNSAgLTMuNjIzZSswMCAgMi4wOTNlKzAxICAtMC4xNzMgMC44NjI1NjEgICAgCiMjIGZhY3RvcihndmtleSkwMjIwMjUgICAxLjk5NWUrMDIgIDIuOTU5ZSswMSAgIDYuNzQxIDEuNjhlLTExICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDIyMDg2ICAgNS4yNjRlKzAwICA2Ljc4OWUrMDAgICAwLjc3NSAwLjQzODE3NiAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMjQ1OSAgIDIuMDQ0ZSswMCAgMi45NTllKzAxICAgMC4wNjkgMC45NDQ5MzAgICAgCiMjIGZhY3RvcihndmtleSkwMjI3MTcgICA1LjgyMWUrMDAgIDcuMzk4ZSswMCAgIDAuNzg3IDAuNDMxMzg2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDIyOTgzICAgNS4xNDZlKzAwICAyLjk1OWUrMDEgICAwLjE3NCAwLjg2MTk2MCAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMzAyNSAgIDEuMjk4ZSswMSAgOC41NDNlKzAwICAgMS41MjAgMC4xMjg2MDcgICAgCiMjIGZhY3RvcihndmtleSkwMjMxMTEgICA2LjcyNWUrMDAgIDcuMzk4ZSswMCAgIDAuOTA5IDAuMzYzMzkwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDIzNDMyICAgOC44MDNlKzAwICAyLjk1OWUrMDEgICAwLjI5NyAwLjc2NjEyMSAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMzQ1MCAgIDMuMjg5ZSswMCAgNy45MDllKzAwICAgMC40MTYgMC42Nzc0ODEgICAgCiMjIGZhY3RvcihndmtleSkwMjM0ODUgICA3Ljg1OWUrMDAgIDEuNzA5ZSswMSAgIDAuNDYwIDAuNjQ1NTE3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDIzNTAwICAgMS4wNzhlKzAxICA2Ljc4OWUrMDAgICAxLjU4NyAwLjExMjQ3MCAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMzY5OCAgIDIuMjU1ZSswMSAgMi45NTllKzAxICAgMC43NjIgMC40NDU5OTUgICAgCiMjIGZhY3RvcihndmtleSkwMjM3NjggICA0LjQ3MWUrMDEgIDEuMjA4ZSswMSAgIDMuNzAxIDAuMDAwMjE2ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDIzNzkzICAgOS4zMTBlKzAwICA3LjY0MWUrMDAgICAxLjIxOCAwLjIyMzA4OSAgICAKIyMgZmFjdG9yKGd2a2V5KTAyMzg0OCAgIDcuMTc2ZS0wMSAgMS4xMThlKzAxICAgMC4wNjQgMC45NDg4NDUgICAgCiMjIGZhY3RvcihndmtleSkwMjQwOTggICAxLjU2OWUrMDEgIDIuOTU5ZSswMSAgIDAuNTMwIDAuNTk1OTY5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI0MjMyICAgOS42OTBlKzAwICA2Ljc4OWUrMDAgICAxLjQyNyAwLjE1MzUxOSAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNDIzMyAgIDguMDMxZSswMCAgNy42NDFlKzAwICAgMS4wNTEgMC4yOTMyNTEgICAgCiMjIGZhY3RvcihndmtleSkwMjQyODcgICAyLjI1NGUrMDEgIDguMjA4ZSswMCAgIDIuNzQ3IDAuMDA2MDMzICoqIAojIyBmYWN0b3IoZ3ZrZXkpMDI0MzE4ICAgMS40NDhlKzAxICA2Ljk3NWUrMDAgICAyLjA3NiAwLjAzNzk3MSAqICAKIyMgZmFjdG9yKGd2a2V5KTAyNDM3OSAgIDIuODY5ZSswMCAgNi43ODllKzAwICAgMC40MjMgMC42NzI1OTkgICAgCiMjIGZhY3RvcihndmtleSkwMjQ0NDAgICAxLjIyNWUrMDEgIDcuOTA5ZSswMCAgIDEuNTQ4IDAuMTIxNTcwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI0NDQ3ICAgNy41NzJlKzAwICA2Ljc4OWUrMDAgICAxLjExNSAwLjI2NDc2MyAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNDQ2NiAgIDEuNjIxZSswMSAgNi45NzVlKzAwICAgMi4zMjMgMC4wMjAxODQgKiAgCiMjIGZhY3RvcihndmtleSkwMjQ1MzMgICA0LjIwNmUrMDAgIDcuOTA5ZSswMCAgIDAuNTMyIDAuNTk0ODk3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI0NTc4ICAtOS4xODJlKzAwICAxLjIwOWUrMDEgIC0wLjc1OSAwLjQ0NzcwNiAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNDY3OCAgIDIuMzY1ZSswMCAgNi43ODllKzAwICAgMC4zNDggMC43Mjc2MDUgICAgCiMjIGZhY3RvcihndmtleSkwMjQ3MjUgICAxLjM2MWUrMDEgIDcuNjQxZSswMCAgIDEuNzgxIDAuMDc0ODg5IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDI0NzMxICAgNy4yMzRlKzAwICA3LjkwOWUrMDAgICAwLjkxNSAwLjM2MDM3OSAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNDc1MCAgIDQuMzEyZSswMSAgMS43MDllKzAxICAgMi41MjQgMC4wMTE2MzYgKiAgCiMjIGZhY3RvcihndmtleSkwMjQ4MjUgICAxLjQyN2UrMDEgIDcuOTA5ZSswMCAgIDEuODA1IDAuMDcxMTMxIC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDI1MDMwICAgMS40NDNlKzAxICAxLjExOGUrMDEgICAxLjI5MCAwLjE5Njk3MyAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNTE0MCAgIDEuMDAzZSswMCAgNy4xNzdlKzAwICAgMC4xNDAgMC44ODg4MTYgICAgCiMjIGZhY3RvcihndmtleSkwMjUxNzMgICA4LjYyN2UrMDAgIDYuNzg5ZSswMCAgIDEuMjcxIDAuMjAzODMzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI1MjM2ICAtMi43MjZlKzAwICAxLjMyM2UrMDEgIC0wLjIwNiAwLjgzNjc4OCAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNTI5NiAgIDEuMTA3ZSswMSAgMS4xMThlKzAxICAgMC45OTAgMC4zMjIzNjIgICAgCiMjIGZhY3RvcihndmtleSkwMjUzMzkgICAxLjMyOWUrMDEgIDcuNjQxZSswMCAgIDEuNzM5IDAuMDgyMTE5IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDI1Mzc2ICAgMS4wNjNlKzAxICA3LjE3N2UrMDAgICAxLjQ4MSAwLjEzODUxOSAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNTQyNSAgLTIuMTkwZSswMCAgMi45NTllKzAxICAtMC4wNzQgMC45NDEwMDAgICAgCiMjIGZhY3RvcihndmtleSkwMjU0NjIgICAyLjI0MmUrMDEgIDEuNDgwZSswMSAgIDEuNTE1IDAuMTI5Njk4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI1NDgxICAgNS4zMzBlLTAxICA5LjM1OGUrMDAgICAwLjA1NyAwLjk1NDU4MiAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNTU3MCAgIDEuMTQzZSswMCAgNi42MTdlKzAwICAgMC4xNzMgMC44NjI4MzEgICAgCiMjIGZhY3RvcihndmtleSkwMjU2MzIgICA1LjA0M2UrMDEgIDEuMzIzZSswMSAgIDMuODEwIDAuMDAwMTQwICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDI1NjMzICAgNy41MzBlKzAwICA3LjkwOWUrMDAgICAwLjk1MiAwLjM0MTEwMCAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNTY2NSAgIDIuNjI5ZSswMCAgNy45MDllKzAwICAgMC4zMzIgMC43Mzk1NzcgICAgCiMjIGZhY3RvcihndmtleSkwMjU3MTQgICAyLjA3NmUrMDEgIDguMjA5ZSswMCAgIDIuNTI5IDAuMDExNDYxICogIAojIyBmYWN0b3IoZ3ZrZXkpMDI1NzUxICAgNC4xMDJlKzAwICA2Ljc4OWUrMDAgICAwLjYwNCAwLjU0NTcxNiAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNTg3NyAgIDEuNTY2ZSswMSAgNy42NDFlKzAwICAgMi4wNDkgMC4wNDA0NDkgKiAgCiMjIGZhY3RvcihndmtleSkwMjU4OTUgICAyLjQzM2UrMDEgIDYuOTc1ZSswMCAgIDMuNDg4IDAuMDAwNDg5ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDI1OTUwICAgNC4yNDhlKzAwICA3LjkwOWUrMDAgICAwLjUzNyAwLjU5MTE2NCAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNjAxNiAgIDEuMDY1ZSswMSAgMS4xMThlKzAxICAgMC45NTMgMC4zNDA4MjggICAgCiMjIGZhY3RvcihndmtleSkwMjYwNzEgICAzLjkzNWUrMDAgIDcuOTA5ZSswMCAgIDAuNDk4IDAuNjE4ODE2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI2MzQ3ICAgMS4xOTJlKzAwICAyLjk1OWUrMDEgICAwLjA0MCAwLjk2Nzg1NyAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNzc4MCAgIDEuMjIwZSswMSAgNy42NDFlKzAwICAgMS41OTYgMC4xMTA0OTUgICAgCiMjIGZhY3RvcihndmtleSkwMjc4NzUgICA5LjQwMGUrMDAgIDcuOTA5ZSswMCAgIDEuMTg4IDAuMjM0NjczICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI3OTE0ICAgMS4xNDhlKzAxICA3LjY0MWUrMDAgICAxLjUwMyAwLjEzMjk2NyAgICAKIyMgZmFjdG9yKGd2a2V5KTAyNzkzMiAgIDIuMTMxZSswMSAgOS44NjRlKzAwICAgMi4xNjAgMC4wMzA3OTUgKiAgCiMjIGZhY3RvcihndmtleSkwMjgwMjIgICA3LjU4NGUrMDAgIDYuNzg5ZSswMCAgIDEuMTE3IDAuMjYzOTkyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI4MDM0ICAgMi4xNzhlKzAxICA2Ljk3NWUrMDAgICAzLjEyMyAwLjAwMTc5OCAqKiAKIyMgZmFjdG9yKGd2a2V5KTAyODExOSAgIDEuMzM5ZSswMSAgNy4zOThlKzAwICAgMS44MTAgMC4wNzAzNTQgLiAgCiMjIGZhY3RvcihndmtleSkwMjgxNTIgICA5LjM2NGUrMDAgIDkuODY0ZSswMCAgIDAuOTQ5IDAuMzQyNDc4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI4MTU1ICAgNi4yNzJlKzAwICA2Ljc4OWUrMDAgICAwLjkyNCAwLjM1NTU5OSAgICAKIyMgZmFjdG9yKGd2a2V5KTAyODIxNiAgIDEuMzk2ZSswMSAgNy42NDFlKzAwICAgMS44MjcgMC4wNjc3MjUgLiAgCiMjIGZhY3RvcihndmtleSkwMjgyNzggICAyLjg5M2UrMDAgIDcuNjQxZSswMCAgIDAuMzc5IDAuNzA0OTI2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI4MzIyICAgNS4xMDBlKzAwICA3LjkwOWUrMDAgICAwLjY0NSAwLjUxOTA2MiAgICAKIyMgZmFjdG9yKGd2a2V5KTAyODMyMyAgIDEuMTU0ZSswMSAgNy42NDFlKzAwICAgMS41MTAgMC4xMzExNTYgICAgCiMjIGZhY3RvcihndmtleSkwMjgzNDAgICAxLjA1NmUrMDEgIDcuNjQxZSswMCAgIDEuMzgxIDAuMTY3MTY4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI4MzQ5ICAgMi40NTFlKzAwICA2Ljc4OWUrMDAgICAwLjM2MSAwLjcxODE0NCAgICAKIyMgZmFjdG9yKGd2a2V5KTAyODQwOSAgIDEuNjY2ZSswMSAgMS4zMjNlKzAxICAgMS4yNTkgMC4yMDgwMjIgICAgCiMjIGZhY3RvcihndmtleSkwMjg2MDggICA0LjU1M2UrMDAgIDcuOTA5ZSswMCAgIDAuNTc2IDAuNTY0ODU4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI4NjIwICAgNS43NzhlKzAwICA3LjM5OGUrMDAgICAwLjc4MSAwLjQzNDgyMSAgICAKIyMgZmFjdG9yKGd2a2V5KTAyODYyOSAgIDcuNTg0ZSswMCAgNy45MDllKzAwICAgMC45NTkgMC4zMzc2MjkgICAgCiMjIGZhY3RvcihndmtleSkwMjg3MzMgICAxLjIwMGUrMDEgIDYuOTc1ZSswMCAgIDEuNzIwIDAuMDg1NTE4IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDI4NzY5ICAgNy4yMjFlKzAwICA3LjY0MWUrMDAgICAwLjk0NSAwLjM0NDY1OSAgICAKIyMgZmFjdG9yKGd2a2V5KTAyODg2NiAgIDEuMTIwZSswMSAgMS4wNDZlKzAxICAgMS4wNzEgMC4yODQzMjYgICAgCiMjIGZhY3RvcihndmtleSkwMjg5NjcgICA3LjYyOGUrMDAgIDkuODY0ZSswMCAgIDAuNzczIDAuNDM5Mzg1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI5MDUyICAgMS43MzVlKzAxICA3LjM5OGUrMDAgICAyLjM0NSAwLjAxOTA2OCAqICAKIyMgZmFjdG9yKGd2a2V5KTAyOTA1NSAgIDkuOTYyZSswMCAgOC41NDNlKzAwICAgMS4xNjYgMC4yNDM1NzUgICAgCiMjIGZhY3RvcihndmtleSkwMjkwNjEgIC03LjgzNmUtMDEgIDEuMzIzZSswMSAgLTAuMDU5IDAuOTUyNzg1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI5MDgyICAgOS4wMzBlKzAwICA3LjY0MWUrMDAgICAxLjE4MiAwLjIzNzMwMyAgICAKIyMgZmFjdG9yKGd2a2V5KTAyOTA5NyAgIDUuNTg4ZSswMCAgOS44NjRlKzAwICAgMC41NjYgMC41NzEwOTUgICAgCiMjIGZhY3RvcihndmtleSkwMjkwOTkgICA0LjQ3OGUrMDAgIDcuOTA5ZSswMCAgIDAuNTY2IDAuNTcxMzExICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI5MTAxICAgNi41MjRlKzAwICA2Ljc4OWUrMDAgICAwLjk2MSAwLjMzNjU3MCAgICAKIyMgZmFjdG9yKGd2a2V5KTAyOTIxMSAgIDEuNTY1ZSswMSAgNy42NDFlKzAwICAgMi4wNDggMC4wNDA2MjAgKiAgCiMjIGZhY3RvcihndmtleSkwMjkyNDYgICAzLjYzNWUrMDAgIDYuNzg5ZSswMCAgIDAuNTM1IDAuNTkyMzgyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI5MjgyICAgMi4xMjllKzAxICA2Ljc4OWUrMDAgICAzLjEzNiAwLjAwMTcxOSAqKiAKIyMgZmFjdG9yKGd2a2V5KTAyOTI4NiAgIDEuMzgyZSswMSAgNi43ODllKzAwICAgMi4wMzYgMC4wNDE3NjYgKiAgCiMjIGZhY3RvcihndmtleSkwMjkzNTkgICA5LjIwNWUrMDAgIDcuNjQxZSswMCAgIDEuMjA1IDAuMjI4MzI2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI5Mzg5ICAgNi43MzJlKzAwICA3LjkwOWUrMDAgICAwLjg1MSAwLjM5NDY5NiAgICAKIyMgZmFjdG9yKGd2a2V5KTAyOTQ0NiAgIDMuMDE1ZSswMCAgNi43ODllKzAwICAgMC40NDQgMC42NTY5MzAgICAgCiMjIGZhY3RvcihndmtleSkwMjk2MTMgICA4LjU0MGUrMDAgIDguOTIyZSswMCAgIDAuOTU3IDAuMzM4NTMwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI5NjQ5ICAgMS4xOTZlKzAxICA3LjkwOWUrMDAgICAxLjUxMiAwLjEzMDQ4OSAgICAKIyMgZmFjdG9yKGd2a2V5KTAyOTcxMCAgIDMuNjk0ZSswMCAgNy42NDFlKzAwICAgMC40ODMgMC42Mjg3ODQgICAgCiMjIGZhY3RvcihndmtleSkwMjk4MDQgICAxLjE0NWUrMDEgIDkuMzU4ZSswMCAgIDEuMjI0IDAuMjIxMDk4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDI5ODU1ICAtOS40MDFlLTAxICAxLjMyM2UrMDEgIC0wLjA3MSAwLjk0MzM3NCAgICAKIyMgZmFjdG9yKGd2a2V5KTAyOTg2OCAgIDEuNjE0ZSswMSAgNy42NDFlKzAwICAgMi4xMTIgMC4wMzQ2OTkgKiAgCiMjIGZhY3RvcihndmtleSkwMjk4NzUgICAxLjIyNWUrMDEgIDcuMzk4ZSswMCAgIDEuNjU2IDAuMDk3Nzk1IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDI5OTg0ICAgMi41MDNlKzAxICA3LjM5OGUrMDAgICAzLjM4NCAwLjAwMDcxOCAqKioKIyMgZmFjdG9yKGd2a2V5KTAyOTk5NCAgIDIuODQ3ZSswMCAgMS4zMjNlKzAxICAgMC4yMTUgMC44Mjk2NTAgICAgCiMjIGZhY3RvcihndmtleSkwMzAxNDYgICAxLjMzMWUrMDEgIDYuNzg5ZSswMCAgIDEuOTYwIDAuMDUwMDE5IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDMwMTg4ICAtNS4yMzZlLTAxICAxLjA0NmUrMDEgIC0wLjA1MCAwLjk2MDA4OCAgICAKIyMgZmFjdG9yKGd2a2V5KTAzMDIxOCAgIDEuMDkyZSswMSAgNy45MDllKzAwICAgMS4zODEgMC4xNjczMzIgICAgCiMjIGZhY3RvcihndmtleSkwMzAyMjIgICA5LjM1NmUrMDAgIDYuOTc1ZSswMCAgIDEuMzQxIDAuMTc5ODQxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDMwMjkzICAgMS43MDBlKzAxICA3LjE3N2UrMDAgICAyLjM2OCAwLjAxNzg4MyAqICAKIyMgZmFjdG9yKGd2a2V5KTAzMDI5OCAgIDEuOTAxZSswMCAgNy4zOThlKzAwICAgMC4yNTcgMC43OTcyMzQgICAgCiMjIGZhY3RvcihndmtleSkwMzAzMjggICA3LjgwMmUrMDAgIDguOTIyZSswMCAgIDAuODc0IDAuMzgxOTMyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDMwMzU0ICAgOS4zNjJlKzAwICA3LjE3N2UrMDAgICAxLjMwNCAwLjE5MjEzOSAgICAKIyMgZmFjdG9yKGd2a2V5KTAzMDM4NCAgLTguMTE1ZS0wMSAgNy45MDllKzAwICAtMC4xMDMgMC45MTgyNzggICAgCiMjIGZhY3RvcihndmtleSkwMzA0MTYgICAxLjI2NWUrMDAgIDguOTIyZSswMCAgIDAuMTQyIDAuODg3MjU2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDMwNDUyICAgMS4zOTFlKzAxICA3LjkxMGUrMDAgICAxLjc1OSAwLjA3ODY4NSAuICAKIyMgZmFjdG9yKGd2a2V5KTAzMDQ5MCAgIDkuNDIyZSswMCAgNy4zOThlKzAwICAgMS4yNzQgMC4yMDI4MzMgICAgCiMjIGZhY3RvcihndmtleSkwMzA0OTUgIC0xLjAwNGUrMDAgIDguMjA3ZSswMCAgLTAuMTIyIDAuOTAyNjQyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDMwNTAxICAgMS4yMDZlKzAxICA3LjY0MmUrMDAgICAxLjU3OSAwLjExNDQ0MiAgICAKIyMgZmFjdG9yKGd2a2V5KTAzMDUzOSAgIDcuODMxZSswMCAgNy42NDFlKzAwICAgMS4wMjUgMC4zMDU0NDAgICAgCiMjIGZhY3RvcihndmtleSkwMzA1ODAgICAxLjg2OGUrMDEgIDcuOTEyZSswMCAgIDIuMzYxIDAuMDE4MjMxICogIAojIyBmYWN0b3IoZ3ZrZXkpMDMwNTgyICAgMy40MzllKzAwICA3LjY0MWUrMDAgICAwLjQ1MCAwLjY1MjY2NyAgICAKIyMgZmFjdG9yKGd2a2V5KTAzMDYzNyAgIDIuNjMyZSswMCAgNy4zOThlKzAwICAgMC4zNTYgMC43MjIwMDMgICAgCiMjIGZhY3RvcihndmtleSkwMzA2NDAgICA5LjMwMWUrMDAgIDguOTIyZSswMCAgIDEuMDQyIDAuMjk3MjIzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDMwNjQ3ICAgMi40NDRlKzAwICAyLjk1OWUrMDEgICAwLjA4MyAwLjkzNDE3OSAgICAKIyMgZmFjdG9yKGd2a2V5KTAzMDgyMiAgIDEuNjU0ZSswMSAgNy45MDllKzAwICAgMi4wOTEgMC4wMzY1NzcgKiAgCiMjIGZhY3RvcihndmtleSkwMzA4ODggICA3LjI5MGUrMDAgIDYuNzg5ZSswMCAgIDEuMDc0IDAuMjgyOTE2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDMwOTMyICAgNi4yMzNlKzAwICA2Ljc4OWUrMDAgICAwLjkxOCAwLjM1ODU4MyAgICAKIyMgZmFjdG9yKGd2a2V5KTAzMDk5MCAgIDEuOTI4ZSswMSAgNi43ODllKzAwICAgMi44MzkgMC4wMDQ1MzUgKiogCiMjIGZhY3RvcihndmtleSkwMzEyNDIgICA1LjkyMmUrMDAgIDEuMTE4ZSswMSAgIDAuNTI5IDAuNTk2NTE0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDMxMzU4ICAgMi41NDRlKzAwICA4LjIwN2UrMDAgICAwLjMxMCAwLjc1NjU4MCAgICAKIyMgZmFjdG9yKGd2a2V5KTAzMTM2OCAgIDkuNjUzZSswMCAgNy4zOThlKzAwICAgMS4zMDUgMC4xOTIwMTAgICAgCiMjIGZhY3RvcihndmtleSkwMzE1MjEgICA2LjQzMmUrMDEgIDEuMTE4ZSswMSAgIDUuNzUxIDkuMTllLTA5ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMDMxNjkyICAgMS44MjllKzAxICA3LjE3N2UrMDAgICAyLjU0OCAwLjAxMDgzNyAqICAKIyMgZmFjdG9yKGd2a2V5KTAzMTcwMiAgIDYuMDExZS0wMSAgMi4wOTNlKzAxICAgMC4wMjkgMC45NzcwODUgICAgCiMjIGZhY3RvcihndmtleSkwMzE3MTggICA2LjkxNWUrMDAgIDIuOTU5ZSswMSAgIDAuMjM0IDAuODE1MjMyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDMxNzY0ICAgNS4yNTNlKzAwICA5Ljg2NGUrMDAgICAwLjUzMyAwLjU5NDM0MCAgICAKIyMgZmFjdG9yKGd2a2V5KTAzMTg5NSAgIDEuOTMwZSswMCAgMS4wNDZlKzAxICAgMC4xODQgMC44NTM2NzIgICAgCiMjIGZhY3RvcihndmtleSkwNjA5MTQgICA5Ljg0NmUrMDAgIDcuNjQxZSswMCAgIDEuMjg5IDAuMTk3NTg2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDYwOTkwICAgMi43MTdlLTAxICAxLjExOGUrMDEgICAwLjAyNCAwLjk4MDYyMCAgICAKIyMgZmFjdG9yKGd2a2V5KTA2MTAxOSAgIDEuOTAxZSswMSAgMi45NTllKzAxICAgMC42NDMgMC41MjA1NTMgICAgCiMjIGZhY3RvcihndmtleSkwNjEwNjcgICAxLjg5M2UrMDEgIDYuNzg5ZSswMCAgIDIuNzg5IDAuMDA1MzAyICoqIAojIyBmYWN0b3IoZ3ZrZXkpMDYxMTI5ICAgMi45NThlKzAxICA4LjIwOGUrMDAgICAzLjYwNCAwLjAwMDMxNSAqKioKIyMgZmFjdG9yKGd2a2V5KTA2MTE2MyAgIDEuMDQ0ZSswMSAgOC45MjJlKzAwICAgMS4xNzAgMC4yNDIxMTAgICAgCiMjIGZhY3RvcihndmtleSkwNjExODggICAxLjk4M2UrMDEgIDYuOTc1ZSswMCAgIDIuODQ0IDAuMDA0NDcxICoqIAojIyBmYWN0b3IoZ3ZrZXkpMDYxMzAyICAgMi40MDVlKzAxICA4LjU0M2UrMDAgICAyLjgxNSAwLjAwNDg4MiAqKiAKIyMgZmFjdG9yKGd2a2V5KTA2MTM4MCAgIDYuMTIzZSswMSAgMS4yMDhlKzAxICAgNS4wNjggNC4xMGUtMDcgKioqCiMjIGZhY3RvcihndmtleSkwNjEzODggICAxLjEzOWUrMDEgIDYuNzg5ZSswMCAgIDEuNjc3IDAuMDkzNDk5IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDYxNDA2ICAtOS4yMzJlLTAxICA5Ljg2NGUrMDAgIC0wLjA5NCAwLjkyNTQzMyAgICAKIyMgZmFjdG9yKGd2a2V5KTA2MTQwOCAgIDIuNzYwZSswMCAgNi45NzVlKzAwICAgMC4zOTYgMC42OTIzNTQgICAgCiMjIGZhY3RvcihndmtleSkwNjE0NTIgICAxLjIxN2UrMDEgIDYuNzg5ZSswMCAgIDEuNzkzIDAuMDczMDU4IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDYxNDg3ICAgNy45NDNlKzAwICA2Ljk3NWUrMDAgICAxLjEzOSAwLjI1NDg0MiAgICAKIyMgZmFjdG9yKGd2a2V5KTA2MTU0NCAgIDEuNDY4ZSswMSAgMS40ODBlKzAxICAgMC45OTIgMC4zMjEyODQgICAgCiMjIGZhY3RvcihndmtleSkwNjE1ODUgICA3LjgzNGUrMDAgIDYuOTc1ZSswMCAgIDEuMTIzIDAuMjYxMzg3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDYxNTg2ICAgMS42NzZlKzAxICA3LjY0MWUrMDAgICAyLjE5MyAwLjAyODMwNyAqICAKIyMgZmFjdG9yKGd2a2V5KTA2MTY5MyAgIDYuOTQwZSswMCAgNy45MDllKzAwICAgMC44NzcgMC4zODAyNDIgICAgCiMjIGZhY3RvcihndmtleSkwNjE3MzkgICA4LjU3NWUrMDAgIDYuNzg5ZSswMCAgIDEuMjYzIDAuMjA2NTgxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDYxOTM5ICAgMy45OTRlKzAwICA5Ljg2NGUrMDAgICAwLjQwNSAwLjY4NTU2MiAgICAKIyMgZmFjdG9yKGd2a2V5KTA2MjI0MyAgIDYuMDkwZS0wMSAgMS43MDllKzAxICAgMC4wMzYgMC45NzE1NjUgICAgCiMjIGZhY3RvcihndmtleSkwNjIzNjUgICA0LjQ4OGUrMDAgIDIuOTU5ZSswMSAgIDAuMTUyIDAuODc5NDUwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDYyNjQ2ICAtMy41MDhlKzAwICAxLjQ4MGUrMDEgIC0wLjIzNyAwLjgxMjYyMCAgICAKIyMgZmFjdG9yKGd2a2V5KTA2MjY1NCAgIDYuOTMyZSswMCAgNi43ODllKzAwICAgMS4wMjEgMC4zMDcyODQgICAgCiMjIGZhY3RvcihndmtleSkwNjI2ODkgICAxLjExN2UrMDEgIDYuNzg5ZSswMCAgIDEuNjQ2IDAuMDk5Nzk3IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDYyNzU1ICAtMS40NzhlLTAxICAxLjIwOGUrMDEgIC0wLjAxMiAwLjk5MDI0MSAgICAKIyMgZmFjdG9yKGd2a2V5KTA2Mjg5NSAgIDMuMDM1ZSswMCAgMS4wNDZlKzAxICAgMC4yOTAgMC43NzE3NDggICAgCiMjIGZhY3RvcihndmtleSkwNjI5MTkgIC0zLjEyMmUrMDAgIDEuNzA5ZSswMSAgLTAuMTgzIDAuODU0OTk2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDYyOTc2ICAgMi42NTBlKzAxICAxLjMyM2UrMDEgICAyLjAwMiAwLjA0NTI5MCAqICAKIyMgZmFjdG9yKGd2a2V5KTA2Mjk3OSAgIDUuOTgyZSswMCAgNy42NDFlKzAwICAgMC43ODMgMC40MzM3MTggICAgCiMjIGZhY3RvcihndmtleSkwNjMwNTggIC01LjEyNGUtMDEgIDEuMDQ2ZSswMSAgLTAuMDQ5IDAuOTYwOTQwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDYzMDY5ICAtNi43NDVlKzAwICAxLjQ4MGUrMDEgIC0wLjQ1NiAwLjY0ODQ5OSAgICAKIyMgZmFjdG9yKGd2a2V5KTA2MzEzNSAgIDguMjQ3ZSswMCAgNi45NzVlKzAwICAgMS4xODIgMC4yMzcwOTYgICAgCiMjIGZhY3RvcihndmtleSkwNjMxNzggICAyLjY1OWUrMDAgIDcuMzk4ZSswMCAgIDAuMzU5IDAuNzE5MzAxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDYzMjMyICAgMS4yNTVlKzAwICA2Ljk3NWUrMDAgICAwLjE4MCAwLjg1NzIzNyAgICAKIyMgZmFjdG9yKGd2a2V5KTA2MzI0NCAgIDMuNDIwZSswMCAgMS4wNDZlKzAxICAgMC4zMjcgMC43NDM3NDcgICAgCiMjIGZhY3RvcihndmtleSkwNjMyODggICA3LjcwOGUrMDAgIDcuOTA5ZSswMCAgIDAuOTc1IDAuMzI5ODA5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDYzNTAxICAgMy42NjRlKzAxICA2Ljk3NWUrMDAgICA1LjI1MyAxLjUzZS0wNyAqKioKIyMgZmFjdG9yKGd2a2V5KTA2MzUzOCAgIDEuMDA0ZS0wMSAgNy42NDFlKzAwICAgMC4wMTMgMC45ODk1MTMgICAgCiMjIGZhY3RvcihndmtleSkwNjM1OTAgICAzLjg3N2UrMDAgIDcuNDAwZSswMCAgIDAuNTI0IDAuNjAwMzgyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDYzNjM5ICAgMS44MjhlKzAxICA2Ljk3NWUrMDAgICAyLjYyMSAwLjAwODc4OSAqKiAKIyMgZmFjdG9yKGd2a2V5KTA2MzY4NyAgIDQuMjM0ZSswMCAgOS4zNThlKzAwICAgMC40NTIgMC42NTA5MjIgICAgCiMjIGZhY3RvcihndmtleSkwNjM3MjUgICAyLjg2NWUrMDAgIDguNTQzZSswMCAgIDAuMzM1IDAuNzM3MzMwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDYzNzgxICAgMS41NzdlKzAxICA3LjM5OGUrMDAgICAyLjEzMSAwLjAzMzA4NyAqICAKIyMgZmFjdG9yKGd2a2V5KTA2NDE4OSAgIDEuNTQ3ZSswMSAgOS44NjRlKzAwICAgMS41NjggMC4xMTY4MDkgICAgCiMjIGZhY3RvcihndmtleSkwNjQyMTggICAxLjQxM2UrMDEgIDguOTIyZSswMCAgIDEuNTg0IDAuMTEzMjUxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY0MjI4ICAgOC45NDhlLTAxICAyLjA5M2UrMDEgICAwLjA0MyAwLjk2NTg5MSAgICAKIyMgZmFjdG9yKGd2a2V5KTA2NDMwNiAgIDEuNDkwZSswMSAgNy4xNzdlKzAwICAgMi4wNzYgMC4wMzc5MDkgKiAgCiMjIGZhY3RvcihndmtleSkwNjQ1MzYgICAxLjMzNGUrMDEgIDEuMDQ2ZSswMSAgIDEuMjc1IDAuMjAyMjE1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY0NTQ3ICAgMS40OTVlKzAxICA3LjM5OGUrMDAgICAyLjAyMCAwLjA0MzM2OSAqICAKIyMgZmFjdG9yKGd2a2V5KTA2NDU1MiAgIDIuNTczZSswMSAgNy4zOThlKzAwICAgMy40NzggMC4wMDA1MDggKioqCiMjIGZhY3RvcihndmtleSkwNjQ1ODQgIC0xLjU3N2UrMDAgIDEuMzIzZSswMSAgLTAuMTE5IDAuOTA1MTQ5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY0NjI4ICAgMS45MjJlKzAxICAxLjcwOWUrMDEgICAxLjEyNSAwLjI2MDY5NyAgICAKIyMgZmFjdG9yKGd2a2V5KTA2NDY5OSAgIDEuMzc5ZSswMSAgNi45NzVlKzAwICAgMS45NzcgMC4wNDgxMDEgKiAgCiMjIGZhY3RvcihndmtleSkwNjQ3OTQgICAzLjM1NmUrMDAgIDcuOTA5ZSswMCAgIDAuNDI0IDAuNjcxMzMwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY0ODIxICAgMS41ODhlKzAxICA3LjY0MWUrMDAgICAyLjA3OSAwLjAzNzY1OCAqICAKIyMgZmFjdG9yKGd2a2V5KTA2NDkyNSAgIDEuMjcyZSswMSAgNy4zOThlKzAwICAgMS43MjAgMC4wODU1MTcgLiAgCiMjIGZhY3RvcihndmtleSkwNjQ5MzQgICAxLjk0OWUrMDEgIDIuOTU5ZSswMSAgIDAuNjU5IDAuNTEwMjA2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY0OTc5ICAgMS4wMjZlKzAxICAxLjIwOGUrMDEgICAwLjg0OSAwLjM5NTcxNSAgICAKIyMgZmFjdG9yKGd2a2V5KTA2NTEwNiAgIDEuMzg4ZSswMSAgNy42NDFlKzAwICAgMS44MTcgMC4wNjkzMjAgLiAgCiMjIGZhY3RvcihndmtleSkwNjUxMDggICAxLjQ0OGUrMDEgIDcuOTA5ZSswMCAgIDEuODMxIDAuMDY3MDc2IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDY1MjI4ICAgMi4zNjJlKzAxICA3LjkwOWUrMDAgICAyLjk4NyAwLjAwMjgyNiAqKiAKIyMgZmFjdG9yKGd2a2V5KTA2NTIzMCAgLTcuMTA1ZS0wMSAgMS4zMjNlKzAxICAtMC4wNTQgMC45NTcxODYgICAgCiMjIGZhY3RvcihndmtleSkwNjUyMzUgICAxLjYzMWUrMDEgIDEuMzIzZSswMSAgIDEuMjMyIDAuMjE3OTYyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY1MjkwICAgMS42NDRlKzAxICA3LjkwOWUrMDAgICAyLjA3OCAwLjAzNzcwNSAqICAKIyMgZmFjdG9yKGd2a2V5KTA2NTM0NSAgIDQuMjMxZSswMSAgOC41NDNlKzAwICAgNC45NTIgNy40N2UtMDcgKioqCiMjIGZhY3RvcihndmtleSkwNjUzNjUgICAxLjAyMWUrMDEgIDEuMzIzZSswMSAgIDAuNzcyIDAuNDQwMjMyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY1NTMyICAgMy40ODVlLTAxICAxLjA0NmUrMDEgICAwLjAzMyAwLjk3MzQyOCAgICAKIyMgZmFjdG9yKGd2a2V5KTA2NTU0MCAgIDIuMTE3ZSswMSAgOC45MjJlKzAwICAgMi4zNzIgMC4wMTc3MDggKiAgCiMjIGZhY3RvcihndmtleSkwNjU1NDggICA1LjQ5M2UrMDAgIDcuMzk4ZSswMCAgIDAuNzQzIDAuNDU3NzkxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY1NTU2ICAgMy41MDhlKzAxICA3LjY0MWUrMDAgICA0LjU5MSA0LjQ4ZS0wNiAqKioKIyMgZmFjdG9yKGd2a2V5KTA2NTU4MSAgIDMuMTIyZSswMCAgMS40ODBlKzAxICAgMC4yMTEgMC44MzI4OTMgICAgCiMjIGZhY3RvcihndmtleSkwNjU2MTAgICAxLjcyNGUrMDAgIDEuMDQ2ZSswMSAgIDAuMTY1IDAuODY5MTUzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY1NjQwICAgMS4yNDNlKzAxICA3LjkwOWUrMDAgICAxLjU3MiAwLjExNTkzMCAgICAKIyMgZmFjdG9yKGd2a2V5KTA2NTY4OSAgIDguMzUwZSswMCAgOC41NDNlKzAwICAgMC45NzcgMC4zMjgzNzQgICAgCiMjIGZhY3RvcihndmtleSkwNjU3MTAgICAxLjU3NmUrMDEgIDcuOTA5ZSswMCAgIDEuOTkzIDAuMDQ2Mjc5ICogIAojIyBmYWN0b3IoZ3ZrZXkpMDY1NzE3ICAgMy42ODFlKzAxICA5Ljg2NGUrMDAgICAzLjczMiAwLjAwMDE5MSAqKioKIyMgZmFjdG9yKGd2a2V5KTA2NTczNyAgIDEuODI4ZSswMSAgNy45MDllKzAwICAgMi4zMTEgMC4wMjA4NDUgKiAgCiMjIGZhY3RvcihndmtleSkwNjU3OTYgICA2LjA0OGUrMDAgIDEuMDQ2ZSswMSAgIDAuNTc4IDAuNTYzMjE5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY1ODg2ICAgMS40MTRlKzAxICA3LjY0MWUrMDAgICAxLjg1MSAwLjA2NDIwNCAuICAKIyMgZmFjdG9yKGd2a2V5KTA2NTk1OCAgIDYuNjMxZSswMCAgOC41NDNlKzAwICAgMC43NzYgMC40Mzc2MDkgICAgCiMjIGZhY3RvcihndmtleSkwNjYwODUgICAyLjA0OWUrMDEgIDkuODY0ZSswMCAgIDIuMDc3IDAuMDM3ODM0ICogIAojIyBmYWN0b3IoZ3ZrZXkpMDY2MTQ4ICAtMS44ODVlLTAxICAxLjMyM2UrMDEgIC0wLjAxNCAwLjk4ODYzNyAgICAKIyMgZmFjdG9yKGd2a2V5KTA2NjE2MSAgLTIuMTA2ZSswMCAgMi45NTllKzAxICAtMC4wNzEgMC45NDMyNzYgICAgCiMjIGZhY3RvcihndmtleSkwNjYyMzUgICAxLjU0M2UrMDEgIDcuOTA5ZSswMCAgIDEuOTUxIDAuMDUxMDQ4IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMDY2MjgxICAgMy42NDJlKzAxICA5LjM1OGUrMDAgICAzLjg5MiAwLjAwMDEwMCAqKioKIyMgZmFjdG9yKGd2a2V5KTA2NjI4NSAgIDEuMjI3ZSswMSAgOS4zNThlKzAwICAgMS4zMTEgMC4xODk5MTggICAgCiMjIGZhY3RvcihndmtleSkwNjYzMTMgIC0xLjA0NmUrMDAgIDEuNDgwZSswMSAgLTAuMDcxIDAuOTQzNjQ5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY2NTAzICAgNy4zMjhlKzAwICA5LjM1OGUrMDAgICAwLjc4MyAwLjQzMzU4MCAgICAKIyMgZmFjdG9yKGd2a2V5KTA2NjUwNCAgIDEuMjMzZSswMCAgOC4yMDdlKzAwICAgMC4xNTAgMC44ODA1NDUgICAgCiMjIGZhY3RvcihndmtleSkwNjY1OTcgIC0xLjY3NGUtMDEgIDguOTIyZSswMCAgLTAuMDE5IDAuOTg1MDMwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMDY2NTk5ICAgMS4yMzNlKzAxICA3LjE3N2UrMDAgICAxLjcxOSAwLjA4NTczOSAuICAKIyMgZmFjdG9yKGd2a2V5KTA2NjY1NCAgIDEuMDI5ZSswMSAgOC41NDNlKzAwICAgMS4yMDUgMC4yMjgyMjEgICAgCiMjIGZhY3RvcihndmtleSkwNjY3MzEgICAzLjY3N2UrMDAgIDcuMzk4ZSswMCAgIDAuNDk3IDAuNjE5MTk2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTA1NTM4ICAgMi41ODFlKzAwICA3LjkwOWUrMDAgICAwLjMyNiAwLjc0NDE1NSAgICAKIyMgZmFjdG9yKGd2a2V5KTEwNTU0NyAgLTEuOTI1ZSswMSAgMi45NjBlKzAxICAtMC42NTAgMC41MTU0NjMgICAgCiMjIGZhY3RvcihndmtleSkxMDU2NzAgICA5LjU0N2UrMDAgIDYuNzg5ZSswMCAgIDEuNDA2IDAuMTU5NjgzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTA2ODUzICAtMS44MTFlKzAwICAxLjMyM2UrMDEgIC0wLjEzNyAwLjg5MTE3NCAgICAKIyMgZmFjdG9yKGd2a2V5KTEwNzMyNSAgIDEuMjQ1ZSswMCAgOC41NDNlKzAwICAgMC4xNDYgMC44ODQxNzAgICAgCiMjIGZhY3RvcihndmtleSkxMDc4MTcgICA2LjI4M2UrMDAgIDguOTIyZSswMCAgIDAuNzA0IDAuNDgxMzU0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTA4OTc5ICAtMi4yNzJlKzAwICAxLjcwOWUrMDEgIC0wLjEzMyAwLjg5NDIwOCAgICAKIyMgZmFjdG9yKGd2a2V5KTEwOTE4MyAgIDUuNjY1ZSswMCAgOS44NjRlKzAwICAgMC41NzQgMC41NjU3NDYgICAgCiMjIGZhY3RvcihndmtleSkxMDkzMTggICAxLjQwMGUrMDAgIDEuNzA5ZSswMSAgIDAuMDgyIDAuOTM0Njk0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTA5NTk5ICAgNi4xNDZlLTAyICA3LjkwOWUrMDAgICAwLjAwOCAwLjk5MzgwMCAgICAKIyMgZmFjdG9yKGd2a2V5KTEwOTYyMSAgIDYuMTQ4ZSswMCAgNy42NDFlKzAwICAgMC44MDUgMC40MjEwODcgICAgCiMjIGZhY3RvcihndmtleSkxMDk2ODMgICAxLjk2NmUrMDEgIDcuMTc3ZSswMCAgIDIuNzQwIDAuMDA2MTY1ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTA5Njk5ICAgMS42MTJlKzAxICAxLjA0NmUrMDEgICAxLjU0MSAwLjEyMzM3NSAgICAKIyMgZmFjdG9yKGd2a2V5KTEwOTkyNiAgIDIuNTA2ZSswMSAgNy45MDllKzAwICAgMy4xNjkgMC4wMDE1MzcgKiogCiMjIGZhY3RvcihndmtleSkxMTAwNjUgICAyLjkwOGUrMDAgIDcuOTA5ZSswMCAgIDAuMzY4IDAuNzEzMTE2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTEwMTc5ICAgMi4xMzZlKzAxICA3LjY0MWUrMDAgICAyLjc5NiAwLjAwNTE4OCAqKiAKIyMgZmFjdG9yKGd2a2V5KTExMDI1MCAgLTIuMTg0ZS0wMSAgOS4zNThlKzAwICAtMC4wMjMgMC45ODEzNzggICAgCiMjIGZhY3RvcihndmtleSkxMTAzNTkgICAxLjE5OWUrMDAgIDEuNDgwZSswMSAgIDAuMDgxIDAuOTM1NDM3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTEwMzgyICAgMS40MDZlKzAxICA4LjIwN2UrMDAgICAxLjcxMyAwLjA4NjgxNSAuICAKIyMgZmFjdG9yKGd2a2V5KTExMDk3OSAgIDQuMTY3ZSswMCAgMS40ODBlKzAxICAgMC4yODIgMC43NzgyNTYgICAgCiMjIGZhY3RvcihndmtleSkxMTExNzkgICAxLjA5M2UrMDAgIDguOTIyZSswMCAgIDAuMTIzIDAuOTAyNDY1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTExNzIxICAgMS44NjNlKzAxICAxLjA0NmUrMDEgICAxLjc4MSAwLjA3NTAxNiAuICAKIyMgZmFjdG9yKGd2a2V5KTExMTc3OSAgIDguODAzZSswMCAgNy45MDllKzAwICAgMS4xMTMgMC4yNjU3MzkgICAgCiMjIGZhY3RvcihndmtleSkxMTE4MTkgICAxLjIxOGUrMDAgIDEuMDQ2ZSswMSAgIDAuMTE2IDAuOTA3MzIzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTExOTQwICAgOS42NDNlLTAxICA5Ljg2NGUrMDAgICAwLjA5OCAwLjkyMjEyMyAgICAKIyMgZmFjdG9yKGd2a2V5KTExMjExMiAgIDguODE4ZSswMCAgMi4wOTNlKzAxICAgMC40MjEgMC42NzM0ODQgICAgCiMjIGZhY3RvcihndmtleSkxMTIyNTQgIC03Ljc2N2UrMDAgIDIuMDkzZSswMSAgLTAuMzcxIDAuNzEwNDk3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTEyNDEwICAgNS4yNjllLTAxICA3LjE3N2UrMDAgICAwLjA3MyAwLjk0MTQ3OSAgICAKIyMgZmFjdG9yKGd2a2V5KTExMjU0MiAgIDUuMzUwZS0wMSAgMS4wNDZlKzAxICAgMC4wNTEgMC45NTkyMjMgICAgCiMjIGZhY3RvcihndmtleSkxMTI2MjYgICA3Ljk3MWUrMDAgIDkuODY0ZSswMCAgIDAuODA4IDAuNDE5MDYyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTEyNzIxICAgNS4yODRlKzAwICA2Ljc4OWUrMDAgICAwLjc3OCAwLjQzNjM3OSAgICAKIyMgZmFjdG9yKGd2a2V5KTExMzk3OCAgIDEuOTY0ZSswMCAgMS4yMDhlKzAxICAgMC4xNjMgMC44NzA4NzggICAgCiMjIGZhY3RvcihndmtleSkxMTQ2MjggICA1LjAxMWUrMDAgIDcuMTk5ZSswMCAgIDAuNjk2IDAuNDg2NDc1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTE0ODgwICAtMy4zNzhlKzAwICAyLjk1OWUrMDEgIC0wLjExNCAwLjkwOTExNCAgICAKIyMgZmFjdG9yKGd2a2V5KTExNDk1NiAgIDMuMTE5ZSswMSAgMS4yMDhlKzAxICAgMi41ODEgMC4wMDk4NTcgKiogCiMjIGZhY3RvcihndmtleSkxMTU3NjYgICA3LjExMGUrMDEgIDIuMDkzZSswMSAgIDMuMzk4IDAuMDAwNjgzICoqKgojIyBmYWN0b3IoZ3ZrZXkpMTE1ODc2ICAgMi4wMzFlKzAxICA4LjIwN2UrMDAgICAyLjQ3NSAwLjAxMzM1NyAqICAKIyMgZmFjdG9yKGd2a2V5KTExNzAyMCAgIDQuOTE0ZSswMCAgMi4wOTNlKzAxICAgMC4yMzUgMC44MTQzMzggICAgCiMjIGZhY3RvcihndmtleSkxMTcxNDEgICA4LjA0NWUrMDAgIDcuOTA5ZSswMCAgIDEuMDE3IDAuMzA5MDk4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTE3MTYxICAgMS4zNTdlKzAxICA3LjM5OGUrMDAgICAxLjgzNCAwLjA2NjYxOSAuICAKIyMgZmFjdG9yKGd2a2V5KTExNzI2MCAgIDIuNjkzZSswMSAgOS4zNThlKzAwICAgMi44NzggMC4wMDQwMTggKiogCiMjIGZhY3RvcihndmtleSkxMTgwNDIgICAxLjY4MmUrMDEgIDcuMTc3ZSswMCAgIDIuMzQ0IDAuMDE5MTI0ICogIAojIyBmYWN0b3IoZ3ZrZXkpMTE4MjY0ICAgNy4xODdlKzAwICA3LjY0MWUrMDAgICAwLjk0MSAwLjM0Njk1NSAgICAKIyMgZmFjdG9yKGd2a2V5KTExODUyNSAgIDYuMDY2ZSswMCAgOS44NjRlKzAwICAgMC42MTUgMC41Mzg2MDMgICAgCiMjIGZhY3RvcihndmtleSkxMTk0MTQgICAzLjQ1NmUtMDIgIDcuMTc3ZSswMCAgIDAuMDA1IDAuOTk2MTU4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTE5NzE0ICAgMS42NzFlKzAxICA3LjkwOWUrMDAgICAyLjExMyAwLjAzNDY1NCAqICAKIyMgZmFjdG9yKGd2a2V5KTExOTc1NiAgIDUuMzUyZSswMCAgNy4zOThlKzAwICAgMC43MjMgMC40Njk0MzQgICAgCiMjIGZhY3RvcihndmtleSkxMjAxOTMgICAxLjU5NWUrMDEgIDIuOTU5ZSswMSAgIDAuNTM5IDAuNTg5OTQwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTIwMzE4ICAgOS40MjRlKzAwICA5Ljg2NGUrMDAgICAwLjk1NSAwLjMzOTQyMyAgICAKIyMgZmFjdG9yKGd2a2V5KTEyMDQxMyAgLTMuMjQ0ZSswMCAgMS4zMjNlKzAxICAtMC4yNDUgMC44MDYzNzQgICAgCiMjIGZhY3RvcihndmtleSkxMjA0NTggICA0LjQyNGUrMDEgIDIuMDkzZSswMSAgIDIuMTE0IDAuMDM0NTQzICogIAojIyBmYWN0b3IoZ3ZrZXkpMTIxMzgxICAgMi40MzRlKzAwICAxLjIwOGUrMDEgICAwLjIwMSAwLjg0MDMzNiAgICAKIyMgZmFjdG9yKGd2a2V5KTEyMTcxMyAgIDguMDQwZSswMCAgNy4zOThlKzAwICAgMS4wODcgMC4yNzcxODkgICAgCiMjIGZhY3RvcihndmtleSkxMjE4MTUgICAyLjM2NWUrMDEgIDguNTQzZSswMCAgIDIuNzY5IDAuMDA1NjQwICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTIxODE2ICAgMS45NDVlKzAxICA3LjkwOWUrMDAgICAyLjQ1OSAwLjAxMzk1MyAqICAKIyMgZmFjdG9yKGd2a2V5KTEyMjAxNSAgIDcuMjg4ZSswMCAgNy4zOThlKzAwICAgMC45ODUgMC4zMjQ1NzkgICAgCiMjIGZhY3RvcihndmtleSkxMjI1MTUgICAxLjk1MGUrMDEgIDEuMTE4ZSswMSAgIDEuNzQzIDAuMDgxMzI3IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMTI0MDQ2ICAgMi40MDFlKzAxICA3LjY0MWUrMDAgICAzLjE0MiAwLjAwMTY4MiAqKiAKIyMgZmFjdG9yKGd2a2V5KTEyNDQzNCAgIDMuMDc1ZSswMSAgNy42NDFlKzAwICAgNC4wMjQgNS43NmUtMDUgKioqCiMjIGZhY3RvcihndmtleSkxMjczNzcgICA3LjE0M2UrMDAgIDEuMjA4ZSswMSAgIDAuNTkxIDAuNTU0MzQ2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTI3Nzk3ICAgOS4zMTllLTAxICA4LjIwN2UrMDAgICAwLjExNCAwLjkwOTU5OSAgICAKIyMgZmFjdG9yKGd2a2V5KTEzMzc2OCAgIDYuODgxZSswMCAgNy4zOTllKzAwICAgMC45MzAgMC4zNTI0MDIgICAgCiMjIGZhY3RvcihndmtleSkxMzYyNjUgICAyLjM3N2UrMDEgIDguNTQzZSswMCAgIDIuNzgyIDAuMDA1NDE1ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTM3MjMwICAgMi44NThlKzAwICAxLjcwOWUrMDEgICAwLjE2NyAwLjg2NzE3MSAgICAKIyMgZmFjdG9yKGd2a2V5KTEzNzIzMiAgIDUuNjU3ZSswMCAgNy4zOThlKzAwICAgMC43NjUgMC40NDQ0OTUgICAgCiMjIGZhY3RvcihndmtleSkxMzczNTEgICAxLjEyOGUrMDEgIDcuNjQxZSswMCAgIDEuNDc2IDAuMTM5ODY0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTM3OTQ0ICAgNi41MzBlKzAwICA4LjIwN2UrMDAgICAwLjc5NiAwLjQyNjI3NCAgICAKIyMgZmFjdG9yKGd2a2V5KTEzODU0MSAgIDYuMDA0ZSswMCAgMS40ODBlKzAxICAgMC40MDYgMC42ODQ5MzEgICAgCiMjIGZhY3RvcihndmtleSkxMzkwMjUgICAyLjUyOWUrMDEgIDkuODY0ZSswMCAgIDIuNTYzIDAuMDEwMzgzICogIAojIyBmYWN0b3IoZ3ZrZXkpMTQwOTgzICAtMy4yMTFlLTAxICA3LjY0MWUrMDAgIC0wLjA0MiAwLjk2NjQ4MyAgICAKIyMgZmFjdG9yKGd2a2V5KTE0MjA4OCAgIDEuMzQ2ZSswMSAgMS4wNDZlKzAxICAgMS4yODYgMC4xOTg0MTggICAgCiMjIGZhY3RvcihndmtleSkxNDI0NjIgIC0yLjk0MmUrMDAgIDcuNjQxZSswMCAgLTAuMzg1IDAuNzAwMTg2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTQzMTUzICAtMy4zMjBlLTAxICA5Ljg2NGUrMDAgIC0wLjAzNCAwLjk3MzE1MyAgICAKIyMgZmFjdG9yKGd2a2V5KTE0MzM1NiAgIDcuODE2ZSswMCAgNy45MDllKzAwICAgMC45ODggMC4zMjMxMDggICAgCiMjIGZhY3RvcihndmtleSkxNDM2ODkgICA1LjA3N2UrMDAgIDcuOTA5ZSswMCAgIDAuNjQyIDAuNTIwOTA2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTQ0MTIyICAgMS4zODFlKzAxICAyLjk1OWUrMDEgICAwLjQ2NyAwLjY0MDcxNiAgICAKIyMgZmFjdG9yKGd2a2V5KTE0NDUzNSAgIDMuMjcyZSswMSAgNy45MDllKzAwICAgNC4xMzcgMy41NmUtMDUgKioqCiMjIGZhY3RvcihndmtleSkxNDUwNDYgICAxLjg5N2UrMDEgIDcuOTA5ZSswMCAgIDIuMzk4IDAuMDE2NTAzICogIAojIyBmYWN0b3IoZ3ZrZXkpMTQ1NTUyICAgMy43MThlKzAxICA3LjkwOWUrMDAgICA0LjcwMSAyLjYzZS0wNiAqKioKIyMgZmFjdG9yKGd2a2V5KTE0NTYzNiAgIDYuMDUzZSswMCAgOS44NjRlKzAwICAgMC42MTQgMC41Mzk0ODggICAgCiMjIGZhY3RvcihndmtleSkxNDU3MDEgICAxLjQxMWUrMDAgIDcuOTA5ZSswMCAgIDAuMTc4IDAuODU4NDM0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTQ2MTQwICAgNC45MTJlKzAwICA4LjkyMmUrMDAgICAwLjU1MCAwLjU4MjAwMSAgICAKIyMgZmFjdG9yKGd2a2V5KTE0NjYwNyAgIDIuNzc1ZS0wMSAgMS4zMjNlKzAxICAgMC4wMjEgMC45ODMyNzQgICAgCiMjIGZhY3RvcihndmtleSkxNDY3MzQgICAxLjAzMGUrMDEgIDEuMzIzZSswMSAgIDAuNzc4IDAuNDM2NDAyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTQ3MzAzICAgMi4yMzRlKzAxICA4LjkyMmUrMDAgICAyLjUwNCAwLjAxMjMwOSAqICAKIyMgZmFjdG9yKGd2a2V5KTE0NzMxMiAgIDUuNzU1ZSswMCAgMS43MDllKzAxICAgMC4zMzcgMC43MzYyNDIgICAgCiMjIGZhY3RvcihndmtleSkxNDc3OTIgIC0xLjcxOWUrMDAgIDEuMzIzZSswMSAgLTAuMTMwIDAuODk2Njc1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTQ4NDY5ICAgMy40MDhlKzAwICA4LjU0M2UrMDAgICAwLjM5OSAwLjY4OTk3MyAgICAKIyMgZmFjdG9yKGd2a2V5KTE0ODY2OSAgIDcuMjM5ZSswMCAgOS4zNThlKzAwICAgMC43NzQgMC40MzkyNDAgICAgCiMjIGZhY3RvcihndmtleSkxNDkwNzAgICAyLjI4M2UrMDEgIDcuOTA5ZSswMCAgIDIuODg3IDAuMDAzOTAwICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTQ5MDgyICAgMS45NzFlKzAxICAxLjQ4MGUrMDEgICAxLjMzMiAwLjE4Mjc4NyAgICAKIyMgZmFjdG9yKGd2a2V5KTE0OTMzNyAgIDEuNTQ2ZSswMSAgOC4yMDdlKzAwICAgMS44ODQgMC4wNTk2MDQgLiAgCiMjIGZhY3RvcihndmtleSkxNDk2MTggICAxLjA5NGUrMDIgIDIuMDkzZSswMSAgIDUuMjI5IDEuNzVlLTA3ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMTQ5NzM4ICAgNi4wNzZlKzAwICA3LjY0MmUrMDAgICAwLjc5NSAwLjQyNjYxNSAgICAKIyMgZmFjdG9yKGd2a2V5KTE1MDI3OSAgIDMuODAyZSswMCAgNy45MDllKzAwICAgMC40ODEgMC42MzA3MDggICAgCiMjIGZhY3RvcihndmtleSkxNTAzMDYgICAxLjg2NWUrMDEgIDcuOTA5ZSswMCAgIDIuMzU4IDAuMDE4MzkxICogIAojIyBmYWN0b3IoZ3ZrZXkpMTUyMTQ5ICAgMi42MDVlKzAxICA4LjIwN2UrMDAgICAzLjE3MyAwLjAwMTUxMiAqKiAKIyMgZmFjdG9yKGd2a2V5KTE1MjI0OSAgIDcuODgxZS0wMSAgOS44NjRlKzAwICAgMC4wODAgMC45MzYzMTkgICAgCiMjIGZhY3RvcihndmtleSkxNTMxMzAgICAyLjE5MGUrMDEgIDguNTQzZSswMCAgIDIuNTY0IDAuMDEwMzYwICogIAojIyBmYWN0b3IoZ3ZrZXkpMTU0NTk1ICAgMS42MTNlKzAxICAxLjIwOGUrMDEgICAxLjMzNiAwLjE4MTc0NyAgICAKIyMgZmFjdG9yKGd2a2V5KTE1NDczOSAgIDIuMDk0ZSswMSAgMi4wOTNlKzAxICAgMS4wMDEgMC4zMTcwOTMgICAgCiMjIGZhY3RvcihndmtleSkxNTQ3NTkgICAxLjU2M2UrMDEgIDIuMDkzZSswMSAgIDAuNzQ3IDAuNDU1MjAxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTU1MTc0ICAgMS4xNzdlKzAxICA5Ljg2NGUrMDAgICAxLjE5MyAwLjIzMzAwMiAgICAKIyMgZmFjdG9yKGd2a2V5KTE1NTczOCAgIDEuMDM2ZSswMSAgOC41NDNlKzAwICAgMS4yMTIgMC4yMjU0ODEgICAgCiMjIGZhY3RvcihndmtleSkxNTU3NTQgICAzLjQxM2UrMDEgIDkuMzU4ZSswMCAgIDMuNjQ3IDAuMDAwMjY3ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMTU2MTU2ICAgNC4wNzZlKzAxICAxLjIwOGUrMDEgICAzLjM3NCAwLjAwMDc0NSAqKioKIyMgZmFjdG9yKGd2a2V5KTE1NjE1NyAgIDYuMDUyZSswMCAgOC45MjJlKzAwICAgMC42NzggMC40OTc2MzcgICAgCiMjIGZhY3RvcihndmtleSkxNTYxNzYgICA0Ljk2OWUrMDAgIDEuMDQ2ZSswMSAgIDAuNDc1IDAuNjM0ODEzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTU2MzgzICAgMi41NzZlKzAxICA4LjIwN2UrMDAgICAzLjEzOCAwLjAwMTcwNCAqKiAKIyMgZmFjdG9yKGd2a2V5KTE1NjM4NCAgLTQuNDY1ZSswMCAgOS44NjRlKzAwICAtMC40NTMgMC42NTA4MTMgICAgCiMjIGZhY3RvcihndmtleSkxNTY2NTMgIC01LjA5NWUrMDAgIDguOTIyZSswMCAgLTAuNTcxIDAuNTY3OTc0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTU2OTUzICAgMy43ODNlKzAxICA4LjU0M2UrMDAgICA0LjQyOSA5LjYwZS0wNiAqKioKIyMgZmFjdG9yKGd2a2V5KTE1NzA1NyAgIDQuMDMxZSswMCAgOC41NDNlKzAwICAgMC40NzIgMC42MzcwMDAgICAgCiMjIGZhY3RvcihndmtleSkxNTczMDcgIC0xLjQ3OGUrMDAgIDEuMzIzZSswMSAgLTAuMTEyIDAuOTExMDYzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTU3MzUzICAgNS42MzVlKzAwICA5Ljg2NGUrMDAgICAwLjU3MSAwLjU2NzgyNSAgICAKIyMgZmFjdG9yKGd2a2V5KTE1NzQ1MiAgIDIuMjc3ZSswMSAgMi4wOTNlKzAxICAgMS4wODggMC4yNzY1NTQgICAgCiMjIGZhY3RvcihndmtleSkxNTc2NzkgICA1LjMyNWUrMDEgIDEuMzIzZSswMSAgIDQuMDI0IDUuNzhlLTA1ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMTU3OTU1ICAgMi42ODhlKzAxICA4LjkyMmUrMDAgICAzLjAxMyAwLjAwMjU5OCAqKiAKIyMgZmFjdG9yKGd2a2V5KTE1ODA1MyAgIDguNTM1ZSswMSAgMi4wOTNlKzAxICAgNC4wNzkgNC41NmUtMDUgKioqCiMjIGZhY3RvcihndmtleSkxNTgzNTQgIC0xLjIwOWUrMDAgIDguNTQzZSswMCAgLTAuMTQyIDAuODg3NDI3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTU4NTg3ICAgMS42MDBlKzAxICA5Ljg2NGUrMDAgICAxLjYyMiAwLjEwNDgxOCAgICAKIyMgZmFjdG9yKGd2a2V5KTE1ODc0MiAgIDEuNDk3ZSswMSAgOS44NjRlKzAwICAgMS41MTcgMC4xMjkyNjAgICAgCiMjIGZhY3RvcihndmtleSkxNjAxNzMgICAxLjgyNGUrMDEgIDkuMzU4ZSswMCAgIDEuOTQ5IDAuMDUxMzU5IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMTYwMTgxICAgMS4zOTdlKzAxICA4LjU0M2UrMDAgICAxLjYzNiAwLjEwMTkyMSAgICAKIyMgZmFjdG9yKGd2a2V5KTE2MDIyNSAgIDEuNTMxZSswMSAgMS4zMjNlKzAxICAgMS4xNTcgMC4yNDc0NDMgICAgCiMjIGZhY3RvcihndmtleSkxNjAyMzMgICA2LjQ1NWUrMDEgIDEuMjA4ZSswMSAgIDUuMzQzIDkuMzZlLTA4ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMTYwMjkzICAgNC45OTdlKzAxICAxLjA0NmUrMDEgICA0Ljc3NiAxLjgyZS0wNiAqKioKIyMgZmFjdG9yKGd2a2V5KTE2MDMxMiAgLTMuNjI4ZSswMSAgMS43MDllKzAxICAtMi4xMjQgMC4wMzM3MzEgKiAgCiMjIGZhY3RvcihndmtleSkxNjAzNzggICAzLjIzNmUrMDEgIDEuMDQ2ZSswMSAgIDMuMDkzIDAuMDAxOTg5ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTYwNDE3ICAgNy44NjllKzAwICA4LjU0M2UrMDAgICAwLjkyMSAwLjM1Njk3NSAgICAKIyMgZmFjdG9yKGd2a2V5KTE2MDQ3OSAgIDIuODQ4ZSswMSAgOS4zNThlKzAwICAgMy4wNDMgMC4wMDIzNTEgKiogCiMjIGZhY3RvcihndmtleSkxNjA1NDEgICAyLjIyNGUrMDEgIDEuMzIzZSswMSAgIDEuNjgwIDAuMDkyOTQ0IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMTYwNjIxICAtMy45MTVlLTAxICAxLjIwOGUrMDEgIC0wLjAzMiAwLjk3NDE1MSAgICAKIyMgZmFjdG9yKGd2a2V5KTE2MDY2NyAgIDMuMzU4ZSswMCAgMS43MDllKzAxICAgMC4xOTcgMC44NDQxODkgICAgCiMjIGZhY3RvcihndmtleSkxNjA3MDYgICAyLjEzOGUrMDEgIDkuODY0ZSswMCAgIDIuMTY3IDAuMDMwMjM1ICogIAojIyBmYWN0b3IoZ3ZrZXkpMTYwNzE5ICAgMS4zNDRlKzAxICA4LjkyMmUrMDAgICAxLjUwNiAwLjEzMjAxOCAgICAKIyMgZmFjdG9yKGd2a2V5KTE2MDc3NiAgIDIuNDk5ZSswMSAgOS4zNThlKzAwICAgMi42NzEgMC4wMDc1ODEgKiogCiMjIGZhY3RvcihndmtleSkxNjA4OTEgICAxLjk2NGUrMDAgIDkuODY0ZSswMCAgIDAuMTk5IDAuODQyMTYxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTYwOTg5ICAgMi4zODVlKzAxICA4LjkyMmUrMDAgICAyLjY3MyAwLjAwNzUzMSAqKiAKIyMgZmFjdG9yKGd2a2V5KTE2MDk5MCAgIDEuNjM3ZSswMSAgOC45MjJlKzAwICAgMS44MzQgMC4wNjY2NjcgLiAgCiMjIGZhY3RvcihndmtleSkxNjA5OTEgICAzLjY2NWUrMDEgIDguOTIyZSswMCAgIDQuMTA4IDQuMDNlLTA1ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMTYxMDAwICAgOC4zMDdlKzAwICAxLjA0NmUrMDEgICAwLjc5NCAwLjQyNzI1MiAgICAKIyMgZmFjdG9yKGd2a2V5KTE2MTAxMyAgIDIuMzQzZSswMSAgOS44NjRlKzAwICAgMi4zNzYgMC4wMTc1NDEgKiAgCiMjIGZhY3RvcihndmtleSkxNjEwNDAgICAxLjQ5MmUrMDEgIDkuMzU4ZSswMCAgIDEuNTk1IDAuMTEwODA5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTYxMDQ4ICAgMi41MjJlKzAxICA4LjU0M2UrMDAgICAyLjk1MiAwLjAwMzE2MyAqKiAKIyMgZmFjdG9yKGd2a2V5KTE2MTA2NSAgIDQuODMyZSswMSAgMS43MDllKzAxICAgMi44MjggMC4wMDQ2OTQgKiogCiMjIGZhY3RvcihndmtleSkxNjE4NTMgICA4LjI1MmUtMDEgIDguOTIyZSswMCAgIDAuMDkyIDAuOTI2MzE1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTYxOTQyICAgMS40MTZlLTAxICA4LjkyMmUrMDAgICAwLjAxNiAwLjk4NzMzNyAgICAKIyMgZmFjdG9yKGd2a2V5KTE2MTk1MiAgIDEuNDY1ZSswMSAgOC45MjJlKzAwICAgMS42NDIgMC4xMDA2MzUgICAgCiMjIGZhY3RvcihndmtleSkxNjE5NTMgICAxLjQ3N2UrMDEgIDkuODY0ZSswMCAgIDEuNDk3IDAuMTM0NDI5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTYxOTY2ICAgNS41MDdlKzAxICAxLjA0NmUrMDEgICA1LjI2MyAxLjQ1ZS0wNyAqKioKIyMgZmFjdG9yKGd2a2V5KTE2MjE2MCAgIDIuNTU3ZSswMSAgMS4wNDZlKzAxICAgMi40NDQgMC4wMTQ1NDUgKiAgCiMjIGZhY3RvcihndmtleSkxNjIzODUgICAxLjgwOGUrMDEgIDEuMDQ2ZSswMSAgIDEuNzI4IDAuMDgzOTg0IC4gIAojIyBmYWN0b3IoZ3ZrZXkpMTYyNDg5ICAgMS41NzllKzAxICA5LjM1OGUrMDAgICAxLjY4NyAwLjA5MTY1OSAuICAKIyMgZmFjdG9yKGd2a2V5KTE2MjU1NyAgIDEuNzA1ZSswMSAgOS44NjRlKzAwICAgMS43MjggMC4wODQwMDkgLiAgCiMjIGZhY3RvcihndmtleSkxNjI1NTkgICA2LjgzOWUrMDAgIDguOTIyZSswMCAgIDAuNzY3IDAuNDQzMzgwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTYyNTYwICAgMi4wNjBlKzAxICAxLjIwOGUrMDEgICAxLjcwNSAwLjA4ODIzNyAuICAKIyMgZmFjdG9yKGd2a2V5KTE2MjkyNSAgIDYuNTk4ZSswMCAgMS4wNDZlKzAxICAgMC42MzEgMC41MjgzMjYgICAgCiMjIGZhY3RvcihndmtleSkxNjMwNDkgICA1LjY2OWUrMDEgIDIuOTU5ZSswMSAgIDEuOTE2IDAuMDU1NDMxIC4gIAojIyBmYWN0b3IoZ3ZrZXkpMTYzNjEwICAgNC42MjJlKzAxICA4LjkyMmUrMDAgICA1LjE4MSAyLjI2ZS0wNyAqKioKIyMgZmFjdG9yKGd2a2V5KTE2MzY3OCAgIDUuMTM5ZSswMCAgOC45MjJlKzAwICAgMC41NzYgMC41NjQ2MjcgICAgCiMjIGZhY3RvcihndmtleSkxNjM2ODAgICAzLjc1NWUrMDEgIDEuMzIzZSswMSAgIDIuODM4IDAuMDA0NTU1ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTYzODYzICAgMS43NzVlKzAxICAyLjA5M2UrMDEgICAwLjg0OCAwLjM5NjI5NSAgICAKIyMgZmFjdG9yKGd2a2V5KTE2Mzg3MiAgIDIuNDg4ZSswMSAgMi4wOTNlKzAxICAgMS4xODkgMC4yMzQ0NDcgICAgCiMjIGZhY3RvcihndmtleSkxNjM4ODQgICAxLjA4NmUrMDEgIDguOTIyZSswMCAgIDEuMjE4IDAuMjIzNDEyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTYzOTIwICAgMi41MjRlKzAxICA4LjkyMmUrMDAgICAyLjgyOSAwLjAwNDY3OSAqKiAKIyMgZmFjdG9yKGd2a2V5KTE2MzkyNCAgIDcuMzAzZSswMSAgMi4wOTNlKzAxICAgMy40OTAgMC4wMDA0ODUgKioqCiMjIGZhY3RvcihndmtleSkxNjM5NjMgICAxLjA5NGUrMDAgIDIuMDkzZSswMSAgIDAuMDUyIDAuOTU4MzAwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTY0MDU5ICAgOS42MjZlKzAwICAyLjk1OWUrMDEgICAwLjMyNSAwLjc0NDk3MSAgICAKIyMgZmFjdG9yKGd2a2V5KTE2NDEzMiAgIDMuODYzZS0wMSAgMS40ODBlKzAxICAgMC4wMjYgMC45NzkxNzQgICAgCiMjIGZhY3RvcihndmtleSkxNjQzNjQgICAxLjM4MGUrMDEgIDguOTIyZSswMCAgIDEuNTQ2IDAuMTIyMDg5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTY0MzY1ICAgNy43NTZlKzAwICA4LjkyMmUrMDAgICAwLjg2OSAwLjM4NDczMyAgICAKIyMgZmFjdG9yKGd2a2V5KTE2NDM2OCAgLTIuMzQxZSswMCAgMS4yMDhlKzAxICAtMC4xOTQgMC44NDYzNjEgICAgCiMjIGZhY3RvcihndmtleSkxNjQ0MDQgICAyLjA3N2UrMDEgIDEuMjA4ZSswMSAgIDEuNzIwIDAuMDg1NTUwIC4gIAojIyBmYWN0b3IoZ3ZrZXkpMTY0NTU1ICAgNi4wMjhlKzAwICAyLjA5M2UrMDEgICAwLjI4OCAwLjc3MzMwNiAgICAKIyMgZmFjdG9yKGd2a2V5KTE2NDU3MiAgIDQuOTU5ZSswMCAgOS44NjRlKzAwICAgMC41MDMgMC42MTUxNTUgICAgCiMjIGZhY3RvcihndmtleSkxNjQ2MzMgICAyLjUzM2UrMDEgIDkuMzU4ZSswMCAgIDIuNzA3IDAuMDA2ODEyICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTY0NzA4ICAgNi42ODRlKzAwICA4LjkyMmUrMDAgICAwLjc0OSAwLjQ1MzgxNiAgICAKIyMgZmFjdG9yKGd2a2V5KTE2NTI2NCAgIDYuODI1ZSswMCAgOC45MjJlKzAwICAgMC43NjUgMC40NDQzNjEgICAgCiMjIGZhY3RvcihndmtleSkxNjUyODQgICAzLjg1NmUrMDAgIDEuMDQ2ZSswMSAgIDAuMzY5IDAuNzEyNDU3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTY2MDA1ICAgMy45NjJlKzAxICA5Ljg2NGUrMDAgICA0LjAxNiA1Ljk2ZS0wNSAqKioKIyMgZmFjdG9yKGd2a2V5KTE2NjM2OCAgIDIuMjQzZSswMSAgOS4zNThlKzAwICAgMi4zOTcgMC4wMTY1NzQgKiAgCiMjIGZhY3RvcihndmtleSkxNjY1ODIgICAxLjMzNWUrMDEgIDEuNDgwZSswMSAgIDAuOTAyIDAuMzY2OTEyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTY2NzA1ICAgNy4yMDNlKzAwICAxLjIwOGUrMDEgICAwLjU5NiAwLjU1MTA1OCAgICAKIyMgZmFjdG9yKGd2a2V5KTE3MDM3NSAgIDIuNDQ3ZSswMSAgMS40ODBlKzAxICAgMS42NTQgMC4wOTgxNjEgLiAgCiMjIGZhY3RvcihndmtleSkxNzAzOTYgICA0LjMzMWUrMDEgIDEuNzA5ZSswMSAgIDIuNTM1IDAuMDExMjU4ICogIAojIyBmYWN0b3IoZ3ZrZXkpMTcwNDE5ICAtMy4wNDNlKzAwICAxLjQ4MGUrMDEgIC0wLjIwNiAwLjgzNzA2MiAgICAKIyMgZmFjdG9yKGd2a2V5KTE3MTAyMyAgLTkuMTE1ZS0wMiAgMi4wOTNlKzAxICAtMC4wMDQgMC45OTY1MjQgICAgCiMjIGZhY3RvcihndmtleSkxNzQwMjIgIC0xLjQzN2UrMDAgIDkuMzU4ZSswMCAgLTAuMTU0IDAuODc4MDAzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc0MDUzICAgNy44NzRlKzAwICA5Ljg2NGUrMDAgICAwLjc5OCAwLjQyNDc3NSAgICAKIyMgZmFjdG9yKGd2a2V5KTE3NDE1OSAgIDEuMDExZSswMiAgMi4wOTNlKzAxICAgNC44MzMgMS4zN2UtMDYgKioqCiMjIGZhY3RvcihndmtleSkxNzQzMDEgICAzLjkwM2UrMDAgIDEuMDQ2ZSswMSAgIDAuMzczIDAuNzA5MTE3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc0MzEzICAgNy40OTJlKzAwICA5LjM1OGUrMDAgICAwLjgwMSAwLjQyMzM2MSAgICAKIyMgZmFjdG9yKGd2a2V5KTE3NDY0NyAgIDUuMTQ1ZSswMCAgMS4wNDZlKzAxICAgMC40OTIgMC42MjI4NzMgICAgCiMjIGZhY3RvcihndmtleSkxNzQ3MjkgICA0Ljk1MGUrMDAgIDkuODY0ZSswMCAgIDAuNTAyIDAuNjE1ODMwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc0NzQ0ICAgMi4zNDFlKzAxICAxLjA0NmUrMDEgICAyLjIzOCAwLjAyNTI1OSAqICAKIyMgZmFjdG9yKGd2a2V5KTE3NTEzMSAgIDMuODU0ZS0wMSAgMS4wNDZlKzAxICAgMC4wMzcgMC45NzA2MTkgICAgCiMjIGZhY3RvcihndmtleSkxNzUyNjMgICA0Ljg1MWUrMDAgIDkuMzU4ZSswMCAgIDAuNTE4IDAuNjA0MTk5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc1MzA3ICAgNi4xNDNlKzAwICA5LjM1OGUrMDAgICAwLjY1NiAwLjUxMTU2NSAgICAKIyMgZmFjdG9yKGd2a2V5KTE3NTU3NSAgIDIuNjkwZSswMSAgMS43MDllKzAxICAgMS41NzQgMC4xMTU0NjYgICAgCiMjIGZhY3RvcihndmtleSkxNzU2NDYgIC0zLjYxMWUrMDAgIDIuOTU5ZSswMSAgLTAuMTIyIDAuOTAyODcwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc1Njc0ICAtNy42NzFlKzAwICAxLjExOGUrMDEgIC0wLjY4NiAwLjQ5MjgzMiAgICAKIyMgZmFjdG9yKGd2a2V5KTE3NTY4OCAgLTEuODM1ZSswMCAgOS44NjRlKzAwICAtMC4xODYgMC44NTIzOTIgICAgCiMjIGZhY3RvcihndmtleSkxNzYyMzkgICA1LjI2M2UrMDAgIDEuMDQ2ZSswMSAgIDAuNTAzIDAuNjE0OTMxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc2MjY4ICAgMS41ODNlKzAxICA5Ljg2NGUrMDAgICAxLjYwNSAwLjEwODUyNCAgICAKIyMgZmFjdG9yKGd2a2V5KTE3NjM1MSAgIDEuMjA0ZSswMSAgMS4wNDZlKzAxICAgMS4xNTEgMC4yNDk4MDQgICAgCiMjIGZhY3RvcihndmtleSkxNzYzNzUgICAyLjAyM2UrMDEgIDIuMDkzZSswMSAgIDAuOTY3IDAuMzMzNjE2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc2NTkxICAgNi41MzBlKzAwICA5LjM1OGUrMDAgICAwLjY5OCAwLjQ4NTM0OCAgICAKIyMgZmFjdG9yKGd2a2V5KTE3NjU5MiAgIDEuOTI2ZSswMSAgOS4zNThlKzAwICAgMi4wNTggMC4wMzk2MjQgKiAgCiMjIGZhY3RvcihndmtleSkxNzY1OTUgICA2Ljk0NmUrMDAgIDEuMDQ2ZSswMSAgIDAuNjY0IDAuNTA2ODA3ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc2NjM3ICAgMS4zNTFlKzAyICAxLjcwOWUrMDEgICA3LjkwOCAyLjk1ZS0xNSAqKioKIyMgZmFjdG9yKGd2a2V5KTE3NjcwMSAgIDQuNzM2ZSswMCAgOS44NjRlKzAwICAgMC40ODAgMC42MzExMjAgICAgCiMjIGZhY3RvcihndmtleSkxNzY3MDMgICAyLjA3NGUrMDAgIDEuMTE4ZSswMSAgIDAuMTg1IDAuODUyOTA1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc2NzI1ICAgMS44NTRlKzAwICAxLjcwOWUrMDEgICAwLjEwOSAwLjkxMzU5NyAgICAKIyMgZmFjdG9yKGd2a2V5KTE3Njc2NiAgLTEuMDU3ZSswMCAgOS44NjRlKzAwICAtMC4xMDcgMC45MTQ2NDggICAgCiMjIGZhY3RvcihndmtleSkxNzY4MjggICA0LjY3NWUtMDEgIDEuMzIzZSswMSAgIDAuMDM1IDAuOTcxODIyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc2OTczICAgNC4wMjRlKzAxICAxLjExOGUrMDEgICAzLjU5OCAwLjAwMDMyMyAqKioKIyMgZmFjdG9yKGd2a2V5KTE3NzA4OCAgIDEuNDU2ZSswMSAgMS4xMThlKzAxICAgMS4zMDIgMC4xOTI5NzggICAgCiMjIGZhY3RvcihndmtleSkxNzcyMTYgICA1LjIwM2UrMDEgIDEuNzA5ZSswMSAgIDMuMDQ1IDAuMDAyMzMyICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTc3MjU1ICAgMS44OTBlKzAxICAxLjExOGUrMDEgICAxLjY5MCAwLjA5MTA2MCAuICAKIyMgZmFjdG9yKGd2a2V5KTE3NzMwMCAgIDMuNTY1ZSswMCAgOS44NjRlKzAwICAgMC4zNjEgMC43MTc4MjggICAgCiMjIGZhY3RvcihndmtleSkxNzczNzYgICA3Ljg1M2UrMDAgIDkuODY0ZSswMCAgIDAuNzk2IDAuNDI1OTg2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc3NjQwICAtNS42MzNlKzAwICAyLjk1OWUrMDEgIC0wLjE5MCAwLjg0OTAzNiAgICAKIyMgZmFjdG9yKGd2a2V5KTE3Nzc4MiAgIDIuNDA4ZSswMSAgMS4xMThlKzAxICAgMi4xNTMgMC4wMzEzNTMgKiAgCiMjIGZhY3RvcihndmtleSkxNzc5OTYgICAzLjE5OGUrMDEgIDEuMDQ2ZSswMSAgIDMuMDU2IDAuMDAyMjQ3ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTc4MzcxICAgMy44MTllKzAxICAxLjIwOGUrMDEgICAzLjE2MSAwLjAwMTU3NyAqKiAKIyMgZmFjdG9yKGd2a2V5KTE3ODUyOSAgIDMuNDMzZSswMSAgMS40ODBlKzAxICAgMi4zMjAgMC4wMjAzNjIgKiAgCiMjIGZhY3RvcihndmtleSkxNzg1MzkgICAzLjcwMWUrMDEgIDEuNzA5ZSswMSAgIDIuMTY2IDAuMDMwMzQyICogIAojIyBmYWN0b3IoZ3ZrZXkpMTc4NTQ1ICAgOS43NTJlLTAyICAxLjMyM2UrMDEgICAwLjAwNyAwLjk5NDEyMSAgICAKIyMgZmFjdG9yKGd2a2V5KTE3ODYxMCAgIDMuOTYzZSswMSAgMS4xMThlKzAxICAgMy41NDMgMC4wMDAzOTggKioqCiMjIGZhY3RvcihndmtleSkxNzg3MDMgICAxLjI1NWUrMDAgIDEuMDQ2ZSswMSAgIDAuMTIwIDAuOTA0NDg5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc4ODExICAgMi44NjllKzAxICAxLjIwOGUrMDEgICAyLjM3NSAwLjAxNzU4NyAqICAKIyMgZmFjdG9yKGd2a2V5KTE3ODgyMyAgIDQuNjM0ZSswMSAgMi4wOTNlKzAxICAgMi4yMTUgMC4wMjY4MDYgKiAgCiMjIGZhY3RvcihndmtleSkxNzg4MzQgICA0LjA5M2UrMDAgIDkuODY0ZSswMCAgIDAuNDE1IDAuNjc4MjEwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc4ODYyICAgMi43NDNlKzAxICAxLjMyM2UrMDEgICAyLjA3MyAwLjAzODIzNSAqICAKIyMgZmFjdG9yKGd2a2V5KTE3OTA3NyAgIDEuMzg5ZSswMSAgOS44NjRlKzAwICAgMS40MDggMC4xNTkxNTIgICAgCiMjIGZhY3RvcihndmtleSkxNzkyOTggICAxLjQwMGUrMDEgIDEuMTE4ZSswMSAgIDEuMjUxIDAuMjEwODE2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTc5MzYxICAtNC4zNzJlKzAwICAyLjA5M2UrMDEgIC0wLjIwOSAwLjgzNDUxMCAgICAKIyMgZmFjdG9yKGd2a2V5KTE3OTUzNCAgIDIuMTEwZSswMSAgMS4wNDZlKzAxICAgMi4wMTcgMC4wNDM3NTUgKiAgCiMjIGZhY3RvcihndmtleSkxNzk4ODkgICA2LjA4NGUrMDEgIDEuMzIzZSswMSAgIDQuNTk3IDQuMzRlLTA2ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMTc5OTc0ICAgNC4yMjNlKzAxICAxLjQ4MGUrMDEgICAyLjg1NCAwLjAwNDMyMiAqKiAKIyMgZmFjdG9yKGd2a2V5KTE4MDE4MyAgIDguNzY5ZSswMCAgMi4wOTNlKzAxICAgMC40MTkgMC42NzUxOTQgICAgCiMjIGZhY3RvcihndmtleSkxODAxOTMgICA0LjU3MWUrMDEgIDEuNzA5ZSswMSAgIDIuNjc1IDAuMDA3NDg0ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTgwMjI4ICAgNC4wMjdlKzAxICAxLjQ4MGUrMDEgICAyLjcyMiAwLjAwNjUwNiAqKiAKIyMgZmFjdG9yKGd2a2V5KTE4MDI3MiAgIDUuOTA3ZSswMCAgMS4yMDhlKzAxICAgMC40ODkgMC42MjQ4ODIgICAgCiMjIGZhY3RvcihndmtleSkxODA0MjMgICAyLjk5N2UrMDAgIDEuMTE4ZSswMSAgIDAuMjY4IDAuNzg4NzMyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTgyNzAxICAgMi40NDVlKzAxICAxLjIwOGUrMDEgICAyLjAyNCAwLjA0MzAyMiAqICAKIyMgZmFjdG9yKGd2a2V5KTE4Mjc4OCAgIDUuNTA4ZSswMSAgMS4yMDhlKzAxICAgNC41NTkgNS4yMWUtMDYgKioqCiMjIGZhY3RvcihndmtleSkxODMyNDcgICA0LjI1OWUtMDIgIDEuMTE4ZSswMSAgIDAuMDA0IDAuOTk2OTYyICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTgzMzI0ICAgNy4zMjhlKzAxICAxLjcwOWUrMDEgICA0LjI4OSAxLjgxZS0wNSAqKioKIyMgZmFjdG9yKGd2a2V5KTE4MzM4OCAgIDguNDk4ZSswMSAgMS40ODBlKzAxICAgNS43NDQgOS41OWUtMDkgKioqCiMjIGZhY3RvcihndmtleSkxODM2MDMgICA2LjcwNmUrMDEgIDEuNzA5ZSswMSAgIDMuOTI1IDguNzVlLTA1ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMTgzNjA2ICAgMy45NjZlKzAxICAxLjcwOWUrMDEgICAyLjMyMSAwLjAyMDI5MCAqICAKIyMgZmFjdG9yKGd2a2V5KTE4Mzc4MCAgIDYuMDgwZSswMSAgMS43MDllKzAxICAgMy41NTkgMC4wMDAzNzUgKioqCiMjIGZhY3RvcihndmtleSkxODM3OTcgICAzLjQ1OWUrMDEgIDEuMzIzZSswMSAgIDIuNjE0IDAuMDA4OTY0ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTgzODI2ICAgMy40MTdlKzAxICAxLjMyM2UrMDEgICAyLjU4MiAwLjAwOTg1MiAqKiAKIyMgZmFjdG9yKGd2a2V5KTE4MzgzMCAgIDEuMTU5ZSswMiAgMS40ODBlKzAxICAgNy44MzIgNS40MGUtMTUgKioqCiMjIGZhY3RvcihndmtleSkxODM5NjMgICA4LjYzMGUrMDEgIDEuNDgwZSswMSAgIDUuODMyIDUuNjdlLTA5ICoqKgojIyBmYWN0b3IoZ3ZrZXkpMTg0MDA5ICAgMi41NzhlKzAxICAxLjIwOGUrMDEgICAyLjEzNCAwLjAzMjg5NyAqICAKIyMgZmFjdG9yKGd2a2V5KTE4NDE2NyAgLTMuMTA5ZSswMCAgMS4yMDhlKzAxICAtMC4yNTcgMC43OTY5MDUgICAgCiMjIGZhY3RvcihndmtleSkxODQyODcgICA0LjM4M2UrMDAgIDEuMzIzZSswMSAgIDAuMzMxIDAuNzQwNTA0ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTg0NDk4ICAgNy4xNjhlKzAxICAxLjQ4MGUrMDEgICA0Ljg0NSAxLjI5ZS0wNiAqKioKIyMgZmFjdG9yKGd2a2V5KTE4NDUwMCAgIDcuNjg2ZSswMCAgMS4zMjNlKzAxICAgMC41ODEgMC41NjE0MTcgICAgCiMjIGZhY3RvcihndmtleSkxODQ1NzEgICAyLjgxOWUrMDEgIDEuMzIzZSswMSAgIDIuMTMwIDAuMDMzMjA4ICogIAojIyBmYWN0b3IoZ3ZrZXkpMTg0Njg4ICAgMy45NDhlKzAxICAxLjcwOWUrMDEgICAyLjMxMSAwLjAyMDg3MCAqICAKIyMgZmFjdG9yKGd2a2V5KTE4NDY4OSAgIDMuODQ2ZSswMSAgMi4wOTNlKzAxICAgMS44MzggMC4wNjYxMDkgLiAgCiMjIGZhY3RvcihndmtleSkxODQ3MzUgICAyLjgzMWUrMDEgIDIuMDkzZSswMSAgIDEuMzUzIDAuMTc2MTc4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTg0ODk5ICAgMS41NTdlKzAwICAxLjIwOGUrMDEgICAwLjEyOSAwLjg5NzQ0NCAgICAKIyMgZmFjdG9yKGd2a2V5KTE4NTE3NyAgIDEuNjgzZSswMSAgMS43MDllKzAxICAgMC45ODUgMC4zMjQ1MjggICAgCiMjIGZhY3RvcihndmtleSkxODUzMzkgICA0LjY5OGUrMDEgIDEuNzA5ZSswMSAgIDIuNzUwIDAuMDA1OTgxICoqIAojIyBmYWN0b3IoZ3ZrZXkpMTg1MzcwICAgMS4zMDhlKzAxICAyLjk1OWUrMDEgICAwLjQ0MiAwLjY1ODU1NSAgICAKIyMgZmFjdG9yKGd2a2V5KTE4NTM5NiAgIDQuNjMyZSswMSAgMi4wOTNlKzAxICAgMi4yMTQgMC4wMjY4NzQgKiAgCiMjIGZhY3RvcihndmtleSkxODU0NTMgICAxLjYyMmUrMDEgIDIuOTU5ZSswMSAgIDAuNTQ4IDAuNTgzNjQxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTg1NTE4ICAgNC45NzdlKzAwICAyLjA5M2UrMDEgICAwLjIzOCAwLjgxMjAxNiAgICAKIyMgZmFjdG9yKGd2a2V5KTE4NTU0OSAgIDIuMDE1ZSswMSAgMS4zMjNlKzAxICAgMS41MjMgMC4xMjc4MDkgICAgCiMjIGZhY3RvcihndmtleSkxODU1ODUgICAzLjUzOWUrMDAgIDEuNDgwZSswMSAgIDAuMjM5IDAuODEwOTUwICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTg1NjE4ICAgMy4wNjhlKzAxICAxLjcwOWUrMDEgICAxLjc5NiAwLjA3MjU2NSAuICAKIyMgZmFjdG9yKGd2a2V5KTE4NTgyNCAgIDYuNDExZS0wMSAgMS40ODBlKzAxICAgMC4wNDMgMC45NjU0MzkgICAgCiMjIGZhY3RvcihndmtleSkxODYyMzAgICAzLjY5NmUrMDEgIDIuOTU5ZSswMSAgIDEuMjQ5IDAuMjExNzY1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTg2MzQ0ICAgNi4wNTJlKzAwICAxLjMyM2UrMDEgICAwLjQ1NyAwLjY0NzQ2MiAgICAKIyMgZmFjdG9yKGd2a2V5KTE4NjM2MyAgIDEuODUwZSswMSAgMS4zMjNlKzAxICAgMS4zOTggMC4xNjIyMDcgICAgCiMjIGZhY3RvcihndmtleSkxODY0MjggICA1LjQwM2UrMDAgIDEuNDgwZSswMSAgIDAuMzY1IDAuNzE1MDIxICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTg3MTY0ICAgMS41OTZlKzAxICAxLjMyM2UrMDEgICAxLjIwNiAwLjIyNzc1MiAgICAKIyMgZmFjdG9yKGd2a2V5KTE4NzI1MiAgIDEuNzAyZSswMSAgMi4wOTNlKzAxICAgMC44MTMgMC40MTYwODAgICAgCiMjIGZhY3RvcihndmtleSkxODcyNTMgICAyLjM5NmUrMDEgIDEuNDgwZSswMSAgIDEuNjIwIDAuMTA1MzY4ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTg3NTQ5ICAgNi43MjJlKzAwICAxLjcwOWUrMDEgICAwLjM5MyAwLjY5NDAxMCAgICAKIyMgZmFjdG9yKGd2a2V5KTE4OTUxNyAgIDEuMDgwZSswMSAgMi4wOTNlKzAxICAgMC41MTYgMC42MDU4MzIgICAgCiMjIGZhY3RvcihndmtleSkxOTA5NjMgIC01LjI1MmUrMDAgIDEuNzA5ZSswMSAgLTAuMzA3IDAuNzU4NTQ2ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMTkyNDU4ICAgMS42NjllKzAxICAxLjcwOWUrMDEgICAwLjk3NyAwLjMyODY1MCAgICAKIyMgZmFjdG9yKGd2a2V5KTIwMDY2NCAgIDUuNTczZSswMCAgMS40ODBlKzAxICAgMC4zNzcgMC43MDY0NTkgICAgCiMjIGZhY3RvcihndmtleSkyMTE3MzIgICAyLjY3NGUrMDEgIDkuMzU4ZSswMCAgIDIuODU4IDAuMDA0Mjc1ICoqIAojIyBmYWN0b3IoZ3ZrZXkpMjIzMTQ4ICAgMy42MDJlKzAxICA3LjkwOWUrMDAgICA0LjU1NCA1LjMzZS0wNiAqKioKIyMgZmFjdG9yKGd2a2V5KTI0MTM2NiAgIDEuMzc3ZSswMSAgNy42NDFlKzAwICAgMS44MDMgMC4wNzE0NzYgLiAgCiMjIGZhY3RvcihndmtleSkyNDEzODggIC05LjY4NGUrMDAgIDIuMDkzZSswMSAgLTAuNDYzIDAuNjQzNTIzICAgIAojIyBmYWN0b3IoZ3ZrZXkpMjQzNTg4ICAgNi42ODFlKzAwICAxLjcwOWUrMDEgICAwLjM5MSAwLjY5NTc3MCAgICAKIyMgZmFjdG9yKGd2a2V5KTI0ODEzNiAgLTMuMDUwZSswMCAgOS45MThlKzAwICAtMC4zMDcgMC43NTg1MDIgICAgCiMjIGZhY3RvcihndmtleSkyNTI4MTkgICAzLjYzNmUrMDAgIDguMjA4ZSswMCAgIDAuNDQzIDAuNjU3ODA5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMjUyOTQwICAgNi40MjFlKzAwICA4LjU1N2UrMDAgICAwLjc1MCAwLjQ1MzA1OCAgICAKIyMgZmFjdG9yKGd2a2V5KTI1ODY2NCAgIDIuMzQxZSswMSAgOS4zNThlKzAwICAgMi41MDIgMC4wMTIzNzUgKiAgCiMjIGZhY3RvcihndmtleSkyNjA3NzQgICAyLjA2OWUrMDEgIDguNTQzZSswMCAgIDIuNDIyIDAuMDE1NDc3ICogIAojIyBmYWN0b3IoZ3ZrZXkpMjYwNzc4ICAgMi43MzllKzAxICA4LjU0M2UrMDAgICAzLjIwNyAwLjAwMTM0NyAqKiAKIyMgZmFjdG9yKGd2a2V5KTI2MDc3OSAgIDcuMzQ4ZSswMCAgOC41NDNlKzAwICAgMC44NjAgMC4zODk3NDUgICAgCiMjIGZhY3RvcihndmtleSkyNjQzOTUgICAxLjA1OWUrMDEgIDguNTQzZSswMCAgIDEuMjQwIDAuMjE1MDk5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMjY0NTEwICAgNy41ODhlKzAxICAyLjk1OWUrMDEgICAyLjU2NCAwLjAxMDM2NSAqICAKIyMgZmFjdG9yKGd2a2V5KTI2NjIxNCAgIDIuMDk2ZSswMSAgOC41NDNlKzAwICAgMi40NTQgMC4wMTQxNTYgKiAgCiMjIGZhY3RvcihndmtleSkyNjYyMTYgIC0xLjI3M2UtMDEgIDEuNzA5ZSswMSAgLTAuMDA3IDAuOTk0MDU1ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMjY2MjU3ICAgNy45MzZlKzAxICAxLjA0NmUrMDEgICA3LjU4NSAzLjY3ZS0xNCAqKioKIyMgZmFjdG9yKGd2a2V5KTI2NjMxNSAgIDEuNDUwZSswMSAgOS44NjRlKzAwICAgMS40NzAgMC4xNDE2NzkgICAgCiMjIGZhY3RvcihndmtleSkyNzU2NjEgICAyLjY3MGUrMDAgIDIuOTU5ZSswMSAgIDAuMDkwIDAuOTI4MTE5ICAgIAojIyBmYWN0b3IoZ3ZrZXkpMjg1MzEzICAgMi4wNjdlKzAxICAxLjExOWUrMDEgICAxLjg0OCAwLjA2NDcwOCAuICAKIyMgZmFjdG9yKGluZHVzdHJ5KTIwMTEgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSkyNzQxICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpMzcxNCAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTQ5NTAgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk1MDYzICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjAyMCAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTYwMzUgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk2MDM2ICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjA5OSAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTYxMTEgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk2MTQxICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjE1MyAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTYxNTkgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk2MTYyICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjE2MyAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTYxNzIgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk2MTk5ICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjIwMCAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTYyMTEgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk2MjgyICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjMxMSAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTYzMjEgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk2MzI0ICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjMzMSAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTYzNTEgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk2MzYxICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjQxMSAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTY1MDAgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk2NTEyICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjUxMyAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTY1MzEgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk2NTUyICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjcyNiAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTY3OTcgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk2Nzk4ICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNjc5OSAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTczNzAgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk3Mzc0ICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpNzM4OSAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgZmFjdG9yKGluZHVzdHJ5KTc1MTAgICAgICAgICBOQSAgICAgICAgIE5BICAgICAgTkEgICAgICAgTkEgICAgCiMjIGZhY3RvcihpbmR1c3RyeSk5OTk1ICAgICAgICAgTkEgICAgICAgICBOQSAgICAgIE5BICAgICAgIE5BICAgIAojIyBmYWN0b3IoaW5kdXN0cnkpOTk5NyAgICAgICAgIE5BICAgICAgICAgTkEgICAgICBOQSAgICAgICBOQSAgICAKIyMgLS0tCiMjIFNpZ25pZi4gY29kZXM6ICAwICcqKionIDAuMDAxICcqKicgMC4wMSAnKicgMC4wNSAnLicgMC4xICcgJyAxCiMjIAojIyBSZXNpZHVhbCBzdGFuZGFyZCBlcnJvcjogMjkuNTkgb24gODMyNiBkZWdyZWVzIG9mIGZyZWVkb20KIyMgICAoOCBvYnNlcnZhdGlvbnMgZGVsZXRlZCBkdWUgdG8gbWlzc2luZ25lc3MpCiMjIE11bHRpcGxlIFItc3F1YXJlZDogIDAuMjU4NiwgQWRqdXN0ZWQgUi1zcXVhcmVkOiAgMC4xODU0IAojIyBGLXN0YXRpc3RpYzogMy41Mjkgb24gODIzIGFuZCA4MzI2IERGLCAgcC12YWx1ZTogPCAyLjJlLTE2CgoKCgpTbGlkZSA1MQoKVGhlIGtleSBwYXJ0IGlzIHRoaXMgbGluZSBvZiB0aGUgb3V0cHV04oCmCgpDb2VmZmljaWVudHM6ICg0MiBub3QgZGVmaW5lZCBiZWNhdXNlIG9mIHNpbmd1bGFyaXRpZXMpClJlbWVtYmVyLCB3ZSBoYWQgNDMgaW5kdXN0cmllcywgYW5kIHVzZWQgNDIgKGstMSkgaW5kdXN0cnkgZHVtbWllcy4gVGhlIGxtIGZ1bmN0aW9uIGdvdCBtYWQgYW5kIHNhaWQgd2XigJlyZSBub3QgZ29pbmcgdG8gZXN0aW1hdGUgY29lZmZpY2llbnRzIGZvciB0aGVzZS4KCldoeT8KCgoKU2xpZGUgNTIKV2l0aCBmaXhlZCBlZmZlY3QgbW9kZWxzLCB5b3UgY2Fu4oCZdCBlc3RpbWF0ZSB3aGF04oCZcyBjYWxsZWQgY3Jvc3MtbGV2ZWwgaW50ZXJhY3Rpb25zLiBUaGVzZSBhcmUgdmVyeSBwb3B1bGFyIGluIE9CL3BzeWNob2xvZ3ksIGJ1dCB5b3Uga25vdyB3aGVyZSBJIHN0YW5kIG9uIHRob3NlIG1vZGVscy4KCgoKClNsaWRlIDUzCkJvdHRvbSBsaW5lPyBJZiB5b3UgZmFpbCB0aGUgSGF1c21hbiB0ZXN0IGFuZCBuZWVkIHRvIHJldGFpbiBhIGZpeGVkIGVmZmVjdCBtb2RlbCwgeW914oCZcmUgbm90IGdvaW5nIHRvIGJlIGFibGUgdG8gaW5jbHVkZSBhbnkgdmFyaWFibGUgKG9yIGludGVyYWN0aW9uIGVmZmVjdCkgdGhhdCBpcyB0aW1lIGludmFyaWFudCB3aXRoaW4gdGhlIHBhbmVsICh0aGUgaWkpLgoKVW5sZXNzIHlvdSB1c2UgdGhlIGh5YnJpZCBtZXRob2QuCgoKCgpTbGlkZSA1NApUaGlzIGlzIHByZXR0eSBjb21tb24gaW4gb3RoZXIgbGl0ZXJhdHVyZXMsIGFuZCBpcm9uaWNhbGx5IGl04oCZcyBvZnRlbiBkb25lIGluIE9CL3B5c2NoIChhbHRob3VnaCBmb3IgYSBkaWZmZXJlbnQgcmVhc29uKS4KCkl0IGNvbWJpbmVzLCBpbiBhIHNlbnNlLCB0aGUgYmVzdCBlbGVtZW50IG9mIHRoZSBmaXhlZCBlZmZlY3QgbW9kZWwgd2hpbGUgc3RpbGwgYmVpbmcgYWJsZSB0byBlc3RpbWF0ZSBhIGJldHdlZW4gKGFuZCBoZW5jZSBpaSBsZXZlbCkgZWZmZWN0LgoKCgoKCgoKU2xpZGUgNTUKV2UgZG9u4oCZdCBoYXZlIHRpbWUgdG8gZ28gdGhyb3VnaCBhbGwgb2YgdGhlIGRldGFpbHMsIGJ1dCB0aGUgYXBwcm9hY2ggaXMgc3RyYWlnaHRmb3J3YXJkLCBhbmQgc28gaXMgdGhlIGludGVycHJldGF0aW9uLiBXaGF0IHlvdSBkbyB3aXRoIHRoaXMgbW9kZWwgaXMgdG8gc3BsaXQgdGhlIHByZWRpY3RvciBpbnRvIGl0cyBiZXR3ZWVuIGFuZCB3aXRoaW4gZWxlbWVudHMuCgpXZSBoYXZlbuKAmXQgc2VlbiBpdCB1c2VkIGEgbG90IHRvIGRhdGUsIGJ1dCBJIGhhdmUgYSBodW5jaCB3ZSB3aWxsIGluIHRoZSBuZWFyIGZ1dHVyZS4KCgoKCgoKU2xpZGUgNTYKV2hhdCBhYm91dCBsYWdnZWQgdmFsdWVzPwoKVGVtcG9yYWwgc2VxdWVuY2luZyBjYW4gYmUgYSBncmVhdCB0aGluZyEgQnV04oCmCgoKCgoKClNsaWRlIDU3ClRoZSBzYW1lIHJ1bGVzIGFib3V0IGVzdGFibGlzaGluZyBjYXVzYWxpdHkgc3RpbGwgYXBwbHnigKZkYW1uIG9taXR0ZWQgdmFyaWFibGUgcHJvYmxlbSEKCgoKCgoKU2xpZGUgNTgKSSBhY3R1YWxseSBoYXZlIGEgYmlhcyBhZ2FpbnN0IHVzaW5nIG9uZSB5ZWFyIGxhZ3MgKHdoaWNoIGlzIHZlcnkgY29tbW9uIGluIHN0cmF0ZWd5KSBpbiBvdXIgbW9kZWxzLiBUaGUgcmVhc29uIGJlaW5nIGlzIHRoYXQgdGhlIGNob2ljZSBvZiB0aGUgbGFnIHN0cnVjdHVyZSBpc+KAlGFsbW9zdOKAlGFsd2F5cyBhIGZ1bmN0aW9uIG9mIHRoZSBsYWcgc3RydWN0dXJlIGltcG9zZWQgYnkgdGhlIGRhdGEgcHJvdmlkZXIuCgpUaGVyZeKAmXMgbm90aGluZyB0aGVvcmV0aWNhbCBhYm91dCBpdOKAlGl04oCZcyBqdXN0IGEgb25lIHllYXIgbGFnIGJlY2F1c2UgdGhhdOKAmXMgdGhlIHdheSBDb21wdXN0YXQsIGV0Yy4sIHNwaXRzIG91dCB0aGUgZGF0YS4KCgoKCgoKU2xpZGUgNTkKTXkgY2hhbGxlbmdlIHdpdGggdGhlIG9uZSB5ZWFyIGxhZyBpcyB0aGF0IHRoZXJlIGlzIHVzdWFsbHkgdmVyeSBsaXR0bGUgcmVhc29uIHRvIGp1c3RpZnkgdGhhdCB0aGUgcmVsYXRpb25zaGlwIGJldHdlZW4geHggYW5kIHl5IG1hbmlmZXN0cyBvdmVyIGEgb25lLXllYXIgcGVyaW9kLgoKSW4gZmFjdCwgdGhlcmUgbWF5IGJlIGxpdHRsZSByZWFzb24gdG8gZXhwZWN0IHRoYXQgdGhpcyBpcyB0aGUg4oCYY29ycmVjdOKAmSB0aW1lZnJhbWUuIEZ1cnRoZXJtb3JlLCB5b3UgbWF5IGJlIG1vcmUgbGlrZWx5IHRvIGluZHVjZSBvbWl0dGVkIHZhcmlhYmxlIGJpYXMgYnkgaW5jbHVkaW5nIHRoZSBsYWcsIHdoeT8KCgoKCgoKU2xpZGUgNjAKU3RpbGwsIGxldHMgZXN0aW1hdGUgYSBtb2RlbCB3aXRoIGEgb25lIHllYXIgbGFnIG9mIGxvbmcgdGVybSBkZWJ0IG9uIHNhbGVzIGdyb3d0aCByYXRlIHRvIHNob3cgaG93IGl04oCZcyBkb25lLgoKVGhlcmUgYXJlIGEgY291cGxlIG9mIHdheXMgdG8gY3JlYXRlIGEgbGFnZ2VkIHZhcmlhYmxlLCBidXQgSSBsaWtlIHVzaW5nIGRwbHlyIChwYXJ0IG9mIHRoZSB0aWR5dmVyc2UpLgoKcGFuZWwubm8uZGYgPC0gcGFuZWwubm8uZGYgJT4lCiAgYXJyYW5nZShndmtleSwgZnllYXIpICU+JSAgIyBTb3J0IGJ5IGZpcm0gYW5kIHRoZW4gYnkgeWVhcgogIGdyb3VwX2J5KGd2a2V5KSAlPiUgICMgVGVsbCBkcGx5ciB0byBnbyB3aXRoaW4gZWFjaCBmaXJtCiAgbXV0YXRlKGxhZy5kbHR0ID0gbGFnKGRsdHQpKSAgIyBHZW5lcmF0ZSBhIG5ldyBsYWdnZWQgZGx0dCB2YWx1ZQpsYWcucGxtLmRmIDwtIHBkYXRhLmZyYW1lKHBhbmVsLm5vLmRmLCBpbmRleD1jKCJndmtleSIsImZ5ZWFyIiksIAogICAgICAgICAgICAgICAgICAgICAgICAgIGRyb3AuaW5kZXg9VFJVRSkKCmBgYHtyfQpwYW5lbC5uby5kZiA8LSBwYW5lbC5uby5kZiAlPiUKICBhcnJhbmdlKGd2a2V5LCBmeWVhcikgJT4lICAjIFNvcnQgYnkgZmlybSBhbmQgdGhlbiBieSB5ZWFyCiAgZ3JvdXBfYnkoZ3ZrZXkpICU+JSAgIyBUZWxsIGRwbHlyIHRvIGdvIHdpdGhpbiBlYWNoIGZpcm0KICBtdXRhdGUobGFnLmRsdHQgPSBsYWcoZGx0dCkpICAjIEdlbmVyYXRlIGEgbmV3IGxhZ2dlZCBkbHR0IHZhbHVlCmxhZy5wbG0uZGYgPC0gcGRhdGEuZnJhbWUocGFuZWwubm8uZGYsIGluZGV4PWMoImd2a2V5IiwiZnllYXIiKSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgZHJvcC5pbmRleD1UUlVFKQoKYGBgCgoKClNsaWRlIDYxCmxhZy5tb2RlbCA8LSBwbG0oc2dyIH4gbGFnLmRsdHQsIGRhdGEgPSBsYWcucGxtLmRmLCBpbmRleD1jKCJndmtleSIsICJmeWVhciIpLCAKICAgICAgICAgICAgICAgICBtb2RlbD0id2l0aGluIiwgZWZmZWN0ID0gYygidHdvd2F5cyIpKQpzdW1tYXJ5KGxhZy5tb2RlbCkKCmBgYHtyfQpsYWcubW9kZWwgPC0gcGxtKHNnciB+IGxhZy5kbHR0LCBkYXRhID0gbGFnLnBsbS5kZiwgaW5kZXg9YygiZ3ZrZXkiLCAiZnllYXIiKSwgCiAgICAgICAgICAgICAgICAgbW9kZWw9IndpdGhpbiIsIGVmZmVjdCA9IGMoInR3b3dheXMiKSkKc3VtbWFyeShsYWcubW9kZWwpCmBgYAoKCgoKU2xpZGUgNjIKIyMgVHdvd2F5cyBlZmZlY3RzIFdpdGhpbiBNb2RlbAojIyAKIyMgQ2FsbDoKIyMgcGxtKGZvcm11bGEgPSBzZ3IgfiBsYWcuZGx0dCwgZGF0YSA9IGxhZy5wbG0uZGYsIGVmZmVjdCA9IGMoInR3b3dheXMiKSwgCiMjICAgICBtb2RlbCA9ICJ3aXRoaW4iLCBpbmRleCA9IGMoImd2a2V5IiwgImZ5ZWFyIikpCiMjIAojIyBVbmJhbGFuY2VkIFBhbmVsOiBuPTc3OSwgVD0xLTE5LCBOPTgzMjgKIyMgCiMjIFJlc2lkdWFscyA6CiMjICAgIE1pbi4gMXN0IFF1LiAgTWVkaWFuIDNyZCBRdS4gICAgTWF4LiAKIyMgLTE0Ni4wMCAgIC05LjMxICAgLTEuNjAgICAgNi41MSAgNDM2LjAwIAojIyAKIyMgQ29lZmZpY2llbnRzIDoKIyMgICAgICAgICAgICAgRXN0aW1hdGUgIFN0ZC4gRXJyb3IgdC12YWx1ZSAgUHIoPnx0fCkgICAgCiMjIGxhZy5kbHR0IC0xLjYzMjdlLTA1ICA0LjgyNTJlLTA2IC0zLjM4MzcgMC4wMDA3MTg4ICoqKgojIyAtLS0KIyMgU2lnbmlmLiBjb2RlczogIDAgJyoqKicgMC4wMDEgJyoqJyAwLjAxICcqJyAwLjA1ICcuJyAwLjEgJyAnIDEKIyMgCiMjIFRvdGFsIFN1bSBvZiBTcXVhcmVzOiAgICA1NTg2MTAwCiMjIFJlc2lkdWFsIFN1bSBvZiBTcXVhcmVzOiA1NTc3NzAwCiMjIFItU3F1YXJlZDogICAgICAwLjAwMTUxODIKIyMgQWRqLiBSLVNxdWFyZWQ6IC0wLjEwNDE2CiMjIEYtc3RhdGlzdGljOiAxMS40NDk1IG9uIDEgYW5kIDc1MzAgREYsIHAtdmFsdWU6IDAuMDAwNzE4NzcKRldJVywgdGhlIHNpZ24gZmxpcCBpc27igJl0IGFsbCB0aGF0IHN1cnByaXNpbmcgd2l0aCBwYW5lbCBkYXRhLCBhbmQgcGFydGljdWxhcmx5IHdpdGggc21hbGwgZWZmZWN0IHNpemVzLiBSZW1lbWJlciwgdGhlc2UgYXJlIHJlYWxseSwgcmVhbGx5IHNtYWxsIGVmZmVjdHMgd2l0aCBhIGxhcmdlIE4gZGF0YXNldC4KCgoKCgpTbGlkZSA2MwpOT1RFCgpLZWVwIGluIG1pbmQgdGhhdCB0aGUgbWFudWFsIGxhZyBhbmQgdGhlIGF1dG8gbGFnIHdvcmsgYSBiaXQgZGlmZmVyZW50bHkuIFRoZSBjb2VmZmljaWVudHMgYXJlIGNsb3NlLCBidXQgdGhlIG51bWJlciBvZiBmaXJtcyBpcyBkaWZmZXJlbnQuIFRoZSByZWFzb24gYmVpbmcgaXMgaG93IHRoZSBpbmxpbmUgbW9kZWwgaGFuZGxlcyBtaXNzaW5nIGRhdGEuCgpQdXJlbHkgRldJVywgSSBsaWtlIHRoZSBtYW51YWwgd2F5IHRvIHByZXNlcnZlIHBvd2VyLgoKCgoKU2xpZGUgNjQKUEFSVElORyBOT1RFCgpETyBOT1QgRE8gTk9UIERPIE5PVCBsYWcgdGhlIERWIGFuZCBpbmNsdWRlIGl0IGFzIGEgcHJlZGljdG9yIGluIHRoZSBwYW5lbCBtb2RlbC4KClllcywgdGhpcyBoYXBwZW5zIGEgbG90LCB1bmRlciB0aGUgbG9naWMgdGhhdCB0aGUgdmFsdWUgb2YgdGhlIERWIGF0IHRpbWUgdHQgaXMgb2Z0ZW4gYSBmdW5jdGlvbiBvZiB0aGUgdmFsdWUgb2YgdGhlIERWIGF0IHTiiJIxdOKIkjEuIE1ha2VzIHNlbnNlLCBidXQgd2l0aCBwYW5lbCBlc3RpbWF0b3JzIChvciBvdGhlciBPTFMgZXN0aW1hdG9ycykgaW5jbHVkaW5nIGEgbGFnZ2VkIERWIHRlcm0gYmlhc2VzIGFsbCBvZiB0aGUgb3RoZXIgzrLOsuKAmXMgaW4gdGhlIG1vZGVsLiBUaGF0IGFuZCB0aGUgbGFnZ2VkIERWIHdpbGwgYmUgZW5kb2dlbm91cyBieSBkZWZpbml0aW9uLCBzbyB5b3UgY2Fu4oCZdCBpbnRlcnByZXQgaXQgYW55d2F5LgoKCgoKClNsaWRlIDY1ClByb3Blcmx5IHNwZWNpZmllZCBsYWdnZWQgRFYgbW9kZWxzIGFyZSwgaG93ZXZlciwgdmVyeSBjb29sLiBXZSBjYWxsIHRoZW0gZHluYW1pYyBwYW5lbCBlc3RpbWF0b3JzLCBhbmQgdGhlIHBsbSBwYWNrYWdlIGNhbiBlc3RpbWF0ZSB0aGVzZSBraW5kIG9mIG1vZGVscy4KClRoaXMgaXMsIHRob3VnaCwgcHJldHR5IGFkdmFuY2VkIHN0dWZmLCBzbyBpZiB5b3UgcmVhbGx5IHdhbnQgdG8gYXNrIHRoZXNlIGtpbmRzIG9mIHJlc2VhcmNoIHF1ZXN0aW9ucywgbGV0cyBnZXQgeW91IHNvbWUgYWRkaXRpb25hbCB0cmFpbmluZy4KCgoKCgoKU2xpZGUgNjYKV3JhcC11cC4KCgo=