1 Introduction

This is the space where i’ll describe the data set and my team and the years.

Table discussion

2 Tables

#Table for entire league stats
df %>%
  kbl(digits = 2, caption="2025 League stats") %>%
  kable_classic_2(full_width=F)
2025 League stats
team_name mean_score sd_score mean_fgp sd_fgp mean_reb sd_reb mean_tpfgp sd_tpfgp mean_steals sd_steals
Aces 85.52 9.56 45.27 5.82 33.78 5.88 35.27 7.08 6.80 2.67
Dream 76.93 10.59 41.28 6.78 35.95 4.41 30.83 9.32 7.14 2.82
Fever 84.50 10.17 45.56 5.38 35.10 5.49 35.00 8.99 5.88 2.29
Liberty 84.98 9.92 44.53 5.61 36.90 5.77 35.38 10.06 7.75 2.19
Lynx 82.36 11.39 45.21 6.34 33.15 5.06 37.80 9.43 8.36 3.17
Mercury 81.93 12.60 44.28 7.34 32.26 5.39 32.97 10.34 6.55 2.12
Mystics 79.30 8.69 43.36 4.82 31.85 4.66 36.64 8.69 7.28 2.24
Sky 77.40 9.62 42.44 5.22 36.60 5.57 31.74 11.62 7.00 3.30
Sparks 78.40 10.57 42.63 6.15 32.67 5.52 32.09 11.00 7.30 2.78
Storm 82.67 9.65 43.43 5.39 34.67 6.02 28.35 9.03 9.24 3.27
Sun 80.36 9.89 44.30 5.28 33.43 4.62 32.84 11.67 7.89 3.29
Wings 84.20 11.47 44.47 5.24 34.75 4.65 32.06 11.75 7.12 2.95
#table for 
aces_summary %>%
  kbl(digits = 2, caption="2025 Las Vegas Aces") %>%
  kable_classic(full_width=F)
2025 Las Vegas Aces
result mean_win sd_win mean_loss sd_loss
Loss 79.81 9.95 79.81 9.95
Win 88.57 7.93 88.57 7.93

3 Histgrams

Histogram discussion

p = my_team %>%
  ggplot( aes(x=team_score, fill=result)) +
  geom_histogram( color="#e9ecef", alpha=0.6, position = 'identity') +
  scale_fill_manual(values=c("#69b3a2", "#404080")) 



boxplot(team_score ~ result, data = my_team, 
        col = c("#a7a8aa", "#a7a8aa"), 
        main = "Points score by game result",
        xlab = "Result", ylab = "Points")

4 Models

\(~\)

My final model is team_score= -35.9722989 + 2.2275506 * field_goal_pct + 0.4512189 * total_rebounds + 1.5823741 * 3-pt % + -0.0312377 * 3-pt% * fg%.

This model significantly predicts team score, F(4, 4) = 22.0357486, p<.0001, adjusted R^2=0.651549.

See table below for reslts…

Dependent variable:
team_score
field_goal_pct 2.228***
(0.658)
total_rebounds 0.451***
(0.145)
three_point_field_goal_pct 1.582*
(0.813)
field_goal_pct:three_point_field_goal_pct -0.031*
(0.018)
Constant -35.972
(29.316)
Observations 46
R2 0.683
Adjusted R2 0.652
Residual Std. Error 5.642 (df = 41)
F Statistic 22.036*** (df = 4; 41)
Note: p<0.1; p<0.05; p<0.01
hist(model4$residuals)

plot(model4$fitted.values, model4$residuals)

ols_plot_cooksd_bar(model4)

ols_plot_resid_lev(model4, threshold=3)

I built the model to predct my tema’s points for a game in which they achieve the median value for each variable. The predicted team score is 86.4104953, with 95% confidence interval (84.6215024,88.1994882).

LS0tDQp0aXRsZTogIldOQkEgU3RhdGlzdGljYWwgQW5hbHlzaXMgUmVwb3J0Ig0KYXV0aG9yOiAiIg0KZGF0ZTogImByIFN5cy5EYXRlKClgIg0Kb3V0cHV0Og0KICBodG1sX2RvY3VtZW50OiANCiAgICB0b2M6IHllcw0KICAgIHRvY19kZXB0aDogNA0KICAgIHRvY19mbG9hdDogeWVzDQogICAgbnVtYmVyX3NlY3Rpb25zOiB5ZXMNCiAgICB0b2NfY29sbGFwc2VkOiB5ZXMNCiAgICBjb2RlX2ZvbGRpbmc6IGhpZGUNCiAgICBjb2RlX2Rvd25sb2FkOiB5ZXMNCiAgICBzbW9vdGhfc2Nyb2xsOiB5ZXMNCiAgICB0aGVtZTogbHVtZW4NCiAgcGRmX2RvY3VtZW50OiANCiAgICB0b2M6IHllcw0KICAgIHRvY19kZXB0aDogNA0KICAgIGZpZ19jYXB0aW9uOiB5ZXMNCiAgICBudW1iZXJfc2VjdGlvbnM6IHllcw0KICAgIGZpZ193aWR0aDogMw0KICAgIGZpZ19oZWlnaHQ6IDMNCiAgd29yZF9kb2N1bWVudDogDQogICAgdG9jOiB5ZXMNCiAgICB0b2NfZGVwdGg6IDQNCiAgICBmaWdfY2FwdGlvbjogeWVzDQogICAga2VlcF9tZDogeWVzDQplZGl0b3Jfb3B0aW9uczogDQogIGNodW5rX291dHB1dF90eXBlOiBpbmxpbmUNCi0tLQ0KDQpgYGB7Y3NzLCBlY2hvID0gRkFMU0V9DQojVE9DOjpiZWZvcmUgew0KICBjb250ZW50OiAiVGFibGUgb2YgQ29udGVudHMiOw0KICBmb250LXdlaWdodDogYm9sZDsNCiAgZm9udC1zaXplOiAxLjJlbTsNCiAgZGlzcGxheTogYmxvY2s7DQogIGNvbG9yOiBuYXZ5Ow0KICBtYXJnaW4tYm90dG9tOiAxMHB4Ow0KfQ0KDQoNCmRpdiNUT0MgbGkgeyAgICAgLyogdGFibGUgb2YgY29udGVudCAgKi8NCiAgICBsaXN0LXN0eWxlOnVwcGVyLXJvbWFuOw0KICAgIGJhY2tncm91bmQtaW1hZ2U6bm9uZTsNCiAgICBiYWNrZ3JvdW5kLXJlcGVhdDpub25lOw0KICAgIGJhY2tncm91bmQtcG9zaXRpb246MDsNCn0NCg0KaDEudGl0bGUgeyAgICAvKiBsZXZlbCAxIGhlYWRlciBvZiB0aXRsZSAgKi8NCiAgZm9udC1zaXplOiAyMnB4Ow0KICBmb250LXdlaWdodDogYm9sZDsNCiAgY29sb3I6IERhcmtSZWQ7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCiAgZm9udC1mYW1pbHk6ICJHaWxsIFNhbnMiLCBzYW5zLXNlcmlmOw0KfQ0KDQpoNC5hdXRob3IgeyAvKiBIZWFkZXIgNCAtIGFuZCB0aGUgYXV0aG9yIGFuZCBkYXRhIGhlYWRlcnMgdXNlIHRoaXMgdG9vICAqLw0KICBmb250LXNpemU6IDE1cHg7DQogIGZvbnQtd2VpZ2h0OiBib2xkOw0KICBmb250LWZhbWlseTogc3lzdGVtLXVpOw0KICBjb2xvcjogbmF2eTsNCiAgdGV4dC1hbGlnbjogY2VudGVyOw0KfQ0KDQpoNC5kYXRlIHsgLyogSGVhZGVyIDQgLSBhbmQgdGhlIGF1dGhvciBhbmQgZGF0YSBoZWFkZXJzIHVzZSB0aGlzIHRvbyAgKi8NCiAgZm9udC1zaXplOiAxOHB4Ow0KICBmb250LXdlaWdodDogYm9sZDsNCiAgZm9udC1mYW1pbHk6ICJHaWxsIFNhbnMiLCBzYW5zLXNlcmlmOw0KICBjb2xvcjogRGFya0JsdWU7DQogIHRleHQtYWxpZ246IGNlbnRlcjsNCn0NCg0KaDEgeyAvKiBIZWFkZXIgMSAtIGFuZCB0aGUgYXV0aG9yIGFuZCBkYXRhIGhlYWRlcnMgdXNlIHRoaXMgdG9vICAqLw0KICAgIGZvbnQtc2l6ZTogMjBweDsNCiAgICBmb250LXdlaWdodDogYm9sZDsNCiAgICBmb250LWZhbWlseTogIlRpbWVzIE5ldyBSb21hbiIsIFRpbWVzLCBzZXJpZjsNCiAgICBjb2xvcjogZGFya3JlZDsNCiAgICB0ZXh0LWFsaWduOiBsZWZ0Ow0KfQ0KDQpoMiB7IC8qIEhlYWRlciAyIC0gYW5kIHRoZSBhdXRob3IgYW5kIGRhdGEgaGVhZGVycyB1c2UgdGhpcyB0b28gICovDQogICAgZm9udC1zaXplOiAxOHB4Ow0KICAgIGZvbnQtd2VpZ2h0OiBib2xkOw0KICAgIGZvbnQtZmFtaWx5OiAiVGltZXMgTmV3IFJvbWFuIiwgVGltZXMsIHNlcmlmOw0KICAgIGNvbG9yOiBuYXZ5Ow0KICAgIHRleHQtYWxpZ246IGxlZnQ7DQp9DQoNCmgzIHsgLyogSGVhZGVyIDMgLSBhbmQgdGhlIGF1dGhvciBhbmQgZGF0YSBoZWFkZXJzIHVzZSB0aGlzIHRvbyAgKi8NCiAgICBmb250LXNpemU6IDE2cHg7DQogICAgZm9udC13ZWlnaHQ6IGJvbGQ7DQogICAgZm9udC1mYW1pbHk6ICJUaW1lcyBOZXcgUm9tYW4iLCBUaW1lcywgc2VyaWY7DQogICAgY29sb3I6IG5hdnk7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCn0NCg0KaDQgeyAvKiBIZWFkZXIgNCAtIGFuZCB0aGUgYXV0aG9yIGFuZCBkYXRhIGhlYWRlcnMgdXNlIHRoaXMgdG9vICAqLw0KICAgIGZvbnQtc2l6ZTogMTRweDsNCiAgZm9udC13ZWlnaHQ6IGJvbGQ7DQogICAgZm9udC1mYW1pbHk6ICJUaW1lcyBOZXcgUm9tYW4iLCBUaW1lcywgc2VyaWY7DQogICAgY29sb3I6IGRhcmtyZWQ7DQogICAgdGV4dC1hbGlnbjogbGVmdDsNCn0NCg0KLyogQWRkIGRvdHMgYWZ0ZXIgbnVtYmVyZWQgaGVhZGVycyAqLw0KLmhlYWRlci1zZWN0aW9uLW51bWJlcjo6YWZ0ZXIgew0KICBjb250ZW50OiAiLiI7DQoNCmJvZHkgeyBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlOyB9DQoNCi5oaWdobGlnaHRtZSB7IGJhY2tncm91bmQtY29sb3I6eWVsbG93OyB9DQoNCnAgeyBiYWNrZ3JvdW5kLWNvbG9yOndoaXRlOyB9DQoNCn0NCmBgYA0KDQoNCmBgYCB7ciBzZXR1cCwgaW5jbHVkZT1GfQ0KDQpzZXR3ZCgiQzovVXNlcnMvNzVMUFlPVFQvT25lRHJpdmUgLSBXZXN0IENoZXN0ZXIgVW5pdmVyc2l0eSBvZiBQQS9EZXNrdG9wL1NUQVQzMTkgc3ByaW5nIDIwMjYiKQ0KDQpkYXRhPXJlYWQuY3N2KCJXTkJBXzIwMjRfYm94LXNjb3Jlcy5jc3YiLCBoZWFkZXI9VCkNCg0KbGlicmFyeShnZ3Bsb3QyKQ0KbGlicmFyeShkcGx5cikNCiNWSUYgZnVuY3Rpb24gaW4gdGhlIGNhciBwYWNrYWdlDQpsaWJyYXJ5KGNhcikNCmxpYnJhcnkob2xzcnIpDQoja2FibGVleHRyYSBpcyB0aGUgcGFja2FnZSBmb3IgbmljZSBNYXJrZG93biB0YWJsZXMNCmxpYnJhcnkoa2FibGVFeHRyYSkNCg0KYGBgDQoNCmBgYHtyIHdyYW5nbGluZywgaW5jbHVkZT1GfQ0KDQojQ3JlYXRlIGRmIHRoYXQgZmlsdGVycyBvdXQgYWxsLXN0YXIgZ2FtZXMNCmRhdGEgPSBkYXRhICU+JQ0KICBmaWx0ZXIodGVhbV9uYW1lICE9ICJUZWFtIFdOQkEiKSAlPiUgZmlsdGVyKHRlYW1fbmFtZSAhPSAiVGVhbSBVU0EiKSAgDQoNCiNzZWxlY3RzIG9ubHkgdmFyaWFibGVzIHdlIG5lZWQNCiNzdW1tYXJpemVzIHRlYW0gc2NvcmUsIDNwdCUsIHRvdGFsIHJlYm91bmRzLCBhbmQgc3RlYWxzLCBmZyUNCiNtZWFuIGFuZCBTRA0KZGY9ZGF0YSAlPiUNCiAgc2VsZWN0KHRlYW1fc2NvcmUsIGZpZWxkX2dvYWxfcGN0LCB0b3RhbF9yZWJvdW5kcywNCiAgICAgICAgIHRocmVlX3BvaW50X2ZpZWxkX2dvYWxfcGN0LCBzdGVhbHMsIHRlYW1fbmFtZSwgdGVhbV93aW5uZXIpICU+JQ0KICBncm91cF9ieSh0ZWFtX25hbWUpICU+JQ0KICBzdW1tYXJpc2UobWVhbl9zY29yZT1tZWFuKHRlYW1fc2NvcmUpLCBzZF9zY29yZT1zZCh0ZWFtX3Njb3JlKSwNCiAgICAgICAgICAgIG1lYW5fZmdwPW1lYW4oZmllbGRfZ29hbF9wY3QpLCBzZF9mZ3A9c2QoZmllbGRfZ29hbF9wY3QpLA0KICAgICAgICAgICAgbWVhbl9yZWI9bWVhbih0b3RhbF9yZWJvdW5kcyksIHNkX3JlYj1zZCh0b3RhbF9yZWJvdW5kcyksDQogICAgICAgICAgICBtZWFuX3RwZmdwPW1lYW4odGhyZWVfcG9pbnRfZmllbGRfZ29hbF9wY3QpLCBzZF90cGZncD1zZCh0aHJlZV9wb2ludF9maWVsZF9nb2FsX3BjdCksDQogICAgICAgICAgICBtZWFuX3N0ZWFscz1tZWFuKHN0ZWFscyksIHNkX3N0ZWFscz1zZChzdGVhbHMpKQ0KDQojY3JlYXRlIGRhdGEgZnJhbWUgdGhhdCBncmFicyBvbmx5IExWIEFjZXMNCm15X3RlYW0gPSBkYXRhICU+JQ0KICBmaWx0ZXIodGVhbV9uYW1lPT0iQWNlcyIpICU+JQ0KICBtdXRhdGUocmVzdWx0PSBjYXNlX3doZW4odGVhbV93aW5uZXI9PVRSVUV+ICJXaW4iLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVhbV93aW5uZXI9PUZBTFNFfiJMb3NzIikpDQoNCiNkYXRhIGZyYW1lIHRoYXQgc3VtbWFyaXplcyBBY2VzIHN0YXRzDQphY2VzX3N1bW1hcnkgPSBteV90ZWFtICU+JQ0KICBncm91cF9ieShyZXN1bHQpICU+JQ0KICBzdW1tYXJpc2UobWVhbl93aW49bWVhbih0ZWFtX3Njb3JlKSwgc2Rfd2luPXNkKHRlYW1fc2NvcmUpLA0KICAgICAgICAgICAgbWVhbl9sb3NzPW1lYW4odGVhbV9zY29yZSksIHNkX2xvc3M9c2QodGVhbV9zY29yZSkpDQogIA0KYGBgDQoNCiMgSW50cm9kdWN0aW9uDQoNClRoaXMgaXMgdGhlIHNwYWNlIHdoZXJlIGknbGwgZGVzY3JpYmUgdGhlIGRhdGEgc2V0IGFuZCBteSB0ZWFtIGFuZCB0aGUgeWVhcnMuDQoNClRhYmxlIGRpc2N1c3Npb24NCg0KIyBUYWJsZXMNCg0KYGBgIHtyIHRhYmxlcywgaW5jbHVkZT1UfQ0KDQojVGFibGUgZm9yIGVudGlyZSBsZWFndWUgc3RhdHMNCmRmICU+JQ0KICBrYmwoZGlnaXRzID0gMiwgY2FwdGlvbj0iMjAyNSBMZWFndWUgc3RhdHMiKSAlPiUNCiAga2FibGVfY2xhc3NpY18yKGZ1bGxfd2lkdGg9RikNCg0KI3RhYmxlIGZvciANCmFjZXNfc3VtbWFyeSAlPiUNCiAga2JsKGRpZ2l0cyA9IDIsIGNhcHRpb249IjIwMjUgTGFzIFZlZ2FzIEFjZXMiKSAlPiUNCiAga2FibGVfY2xhc3NpYyhmdWxsX3dpZHRoPUYpDQoNCg0KYGBgDQoNCiMgSGlzdGdyYW1zDQoNCkhpc3RvZ3JhbSBkaXNjdXNzaW9uDQoNCmBgYCB7ciBncmFwaHMsIGluY2x1ZGU9VCwgZmlnLndpZHRoPTYsIGZpZy5oZWlnaHQ9N30NCg0KDQpwID0gbXlfdGVhbSAlPiUNCiAgZ2dwbG90KCBhZXMoeD10ZWFtX3Njb3JlLCBmaWxsPXJlc3VsdCkpICsNCiAgZ2VvbV9oaXN0b2dyYW0oIGNvbG9yPSIjZTllY2VmIiwgYWxwaGE9MC42LCBwb3NpdGlvbiA9ICdpZGVudGl0eScpICsNCiAgc2NhbGVfZmlsbF9tYW51YWwodmFsdWVzPWMoIiM2OWIzYTIiLCAiIzQwNDA4MCIpKSANCg0KDQoNCmJveHBsb3QodGVhbV9zY29yZSB+IHJlc3VsdCwgZGF0YSA9IG15X3RlYW0sIA0KICAgICAgICBjb2wgPSBjKCIjYTdhOGFhIiwgIiNhN2E4YWEiKSwgDQogICAgICAgIG1haW4gPSAiUG9pbnRzIHNjb3JlIGJ5IGdhbWUgcmVzdWx0IiwNCiAgICAgICAgeGxhYiA9ICJSZXN1bHQiLCB5bGFiID0gIlBvaW50cyIpDQoNCmBgYA0KDQojIE1vZGVscw0KDQpgYGAge3IgZmlyc3Qgb3JkZXIgbW9kZWwsIGluY2x1ZGU9Rn0NCiNtb2RlbA0KDQojbW9kZWwgMSBpcyBhIGZpcnN0LW9yZGVyIG1vZGVsIHdpdGggNCB0ZXJtcw0KbW9kZWwxPWxtKHRlYW1fc2NvcmV+ZmllbGRfZ29hbF9wY3QrdG90YWxfcmVib3VuZHMrIHRocmVlX3BvaW50X2ZpZWxkX2dvYWxfcGN0KyBzdGVhbHMsDQogICAgICAgICAgZGF0YT1teV90ZWFtKQ0KDQojY29ycmVsYXRpb24gbWF0cml4cmVxdWlyZXMgYWxsIHF1YW50aXRhdGl2ZSB2YXJpYWJsZXMgc28ga2VlcCBvbmx5IHRob3NlIHZhcmlhYmxlcw0KY29yX2RhdGE9IG15X3RlYW0gJT4lDQogIHNlbGVjdCh0ZWFtX3Njb3JlLCBmaWVsZF9nb2FsX3BjdCwgdG90YWxfcmVib3VuZHMsDQogICAgICAgICB0aHJlZV9wb2ludF9maWVsZF9nb2FsX3BjdCwgc3RlYWxzKQ0KDQojY29ycmVsYXRpb24gbWF0cml4DQp0X2Nvcj1jb3IoY29yX2RhdGEpDQp0X2NvciAlPiUNCiAga2JsKGRpZ2l0cyA9IDMsIGNhcHRpb249IkNvcnJlbGF0aW9uIE1hdHJpeCIpICU+JQ0KICBrYWJsZV9jbGFzc2ljKGZ1bGxfd2lkdGggPSBGKQ0KDQpgYGANCg0KDQpgYGB7ciBpbnRlcmFjdGlvbiBtb2RlbCwgcmVzdWx0cz0nYXNpcycsIGVjaG89RiwgaW5jbHVkZT1ULCBjb21tZW50PU5BfQ0KbW9kZWwzPWxtKHRlYW1fc2NvcmV+ZmllbGRfZ29hbF9wY3QrdG90YWxfcmVib3VuZHMrIA0KICAgICAgICAgICAgdGhyZWVfcG9pbnRfZmllbGRfZ29hbF9wY3QrIHN0ZWFscysNCiAgICAgICAgICAgIGZpZWxkX2dvYWxfcGN0KnRvdGFsX3JlYm91bmRzKw0KICAgICAgICAgICAgZmllbGRfZ29hbF9wY3QqdGhyZWVfcG9pbnRfZmllbGRfZ29hbF9wY3QrDQogICAgICAgICAgICBmaWVsZF9nb2FsX3BjdCpzdGVhbHMrDQogICAgICAgICAgICB0b3RhbF9yZWJvdW5kcyp0aHJlZV9wb2ludF9maWVsZF9nb2FsX3BjdCsNCiAgICAgICAgICAgIHRvdGFsX3JlYm91bmRzKnN0ZWFscysNCiAgICAgICAgICAgIHRocmVlX3BvaW50X2ZpZWxkX2dvYWxfcGN0KnN0ZWFscywNCiAgICAgICAgICAgIGRhdGE9bXlfdGVhbSkNCg0KI3N1bW1hcnkobW9kZWwzKQ0KDQoNCm1vZGVsND1sbSh0ZWFtX3Njb3JlfmZpZWxkX2dvYWxfcGN0K3RvdGFsX3JlYm91bmRzKyANCiAgICAgICAgICAgIHRocmVlX3BvaW50X2ZpZWxkX2dvYWxfcGN0Kw0KICAgICAgICAgICAgZmllbGRfZ29hbF9wY3QqdGhyZWVfcG9pbnRfZmllbGRfZ29hbF9wY3QsDQogICAgICAgICAgICBkYXRhPW15X3RlYW0pDQoNCm1vZGVsNHN1bT1zdW1tYXJ5KG1vZGVsNCkNCiNtb2RlbDRzdW0NCg0KDQoNCmBgYA0KDQokfiQNCg0KTXkgZmluYWwgbW9kZWwgaXMgdGVhbV9zY29yZT0gYHIgbW9kZWw0JGNvZWZmaWNpZW50c1sxXWAgKyBgciBtb2RlbDQkY29lZmZpY2llbnRzWzJdYCAqIGZpZWxkX2dvYWxfcGN0ICsgYHIgbW9kZWw0JGNvZWZmaWNpZW50c1szXWAgKiB0b3RhbF9yZWJvdW5kcyArIGByIG1vZGVsNCRjb2VmZmljaWVudHNbNF1gICogMy1wdCAlICsgYHIgbW9kZWw0JGNvZWZmaWNpZW50c1s1XWAgKiAzLXB0JSAqIGZnJS4gICANCg0KVGhpcyBtb2RlbCBzaWduaWZpY2FudGx5IHByZWRpY3RzIHRlYW0gc2NvcmUsIEYoYHIgbW9kZWw0c3VtJGZzdGF0aXN0aWNbMl1gLCBgciBtb2RlbDRzdW0kZnN0YXRpc3RpY1syXWApID0gYHIgbW9kZWw0c3VtJGZzdGF0aXN0aWNbMV1gLCBwPC4wMDAxLCBhZGp1c3RlZCBSXjI9YHIgbW9kZWw0c3VtJGFkai5yLnNxdWFyZWRgLg0KDQpTZWUgdGFibGUgYmVsb3cgZm9yIHJlc2x0cy4uLg0KDQpgYGAge3IsIGluY2x1ZGU9VCwgZWNobz1GLCByZXN1bHRzPSdhc2lzJywgY29tbWVudD1OQSwgbWVzc2FnZT1GfQ0KbGlicmFyeShzdGFyZ2F6ZXIpDQpzdGFyZ2F6ZXIobW9kZWw0LCB0eXBlID0gImh0bWwiKQ0KYGBgDQoNCg0KDQpgYGB7ciByZXNpZHVhbHN9DQoNCmhpc3QobW9kZWw0JHJlc2lkdWFscykNCnBsb3QobW9kZWw0JGZpdHRlZC52YWx1ZXMsIG1vZGVsNCRyZXNpZHVhbHMpDQpvbHNfcGxvdF9jb29rc2RfYmFyKG1vZGVsNCkNCm9sc19wbG90X3Jlc2lkX2xldihtb2RlbDQsIHRocmVzaG9sZD0zKQ0KDQoNCmBgYA0KDQpgYGB7ciBwcmVkaWN0aW9uLCBpbmNsdWRlPUZ9DQojZm9yIGZpbmRpbmcgdGhlIG1lZGlhbiB2YWx1ZXMNCnN1bW1hcnkoY29yX2RhdGEpDQoNCiNUaGlzIGlzIGEgbmV3IGRhdGEgZnJhbWUgZm9yIHRoZSBtZWRpYW4gZ2FtZQ0KbmV3ZGF0YT1kYXRhLmZyYW1lKGZpZWxkX2dvYWxfcGN0PTQ1LjQsIHRvdGFsX3JlYm91bmRzPTM0LCB0aHJlZV9wb2ludF9maWVsZF9nb2FsX3BjdD0zNiwgc3RlYWxzPTcpDQojcHJlZGljdGluZw0KcHJlZGljdGlvbj1wcmVkaWN0KG1vZGVsNCwgbmV3ZGF0YSwgaW50ZXJ2YWwgPSAiY29uZmlkZW5jZSIsIGxldmVsPS45NSkNCnByZWRpY3Rpb24NCg0KYGBgDQoNCkkgYnVpbHQgdGhlIG1vZGVsIHRvIHByZWRjdCBteSB0ZW1hJ3MgcG9pbnRzIGZvciBhIGdhbWUgaW4gd2hpY2ggdGhleSBhY2hpZXZlIHRoZSBtZWRpYW4gdmFsdWUgZm9yIGVhY2ggdmFyaWFibGUuIFRoZSBwcmVkaWN0ZWQgdGVhbSBzY29yZSBpcyBgciBwcmVkaWN0aW9uWzFdYCwgd2l0aCA5NSUgY29uZmlkZW5jZSBpbnRlcnZhbCAoYHIgcHJlZGljdGlvblsyXWAsYHIgcHJlZGljdGlvblszXWApLg0KDQoNCg==