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=