File Coverage

blib/lib/Sport/Analytics/NHL/Errors.pm
Criterion Covered Total %
statement 12 12 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod n/a
total 16 16 100.0


line stmt bran cond sub pod time code
1             package Sport::Analytics::NHL::Errors;
2              
3 61     61   381 use strict;
  61         134  
  61         1824  
4 61     61   306 use warnings FATAL => 'all';
  61         116  
  61         2330  
5              
6 61     61   324 use Sport::Analytics::NHL::Config;
  61         122  
  61         10955  
7              
8 61     61   1391 use parent 'Exporter';
  61         2998  
  61         435  
9              
10             our @EXPORT = qw(
11             %BROKEN_FILES %BROKEN_HEADERS
12             %BROKEN_COACHES %BROKEN_PLAYERS %BROKEN_EVENTS
13             %BROKEN_ROSTERS %BROKEN_PLAYER_IDS
14             %BROKEN_TIMES %BROKEN_COORDS
15             %NAME_TYPOS %NAME_VARIATIONS %REVERSE_NAME_TYPOS
16             %SPECIAL_EVENTS %FORCED_PUSH
17             %MISSING_EVENTS %MISSING_COACHES %MISSING_PLAYERS
18             %MISSING_PLAYER_INFO
19              
20             $INCOMPLETE $REPLICA $NO_EVENTS $UNSYNCHED $BROKEN
21             );
22              
23             our %NAME_TYPOS = (
24             'BRYCE VAN BRABRANT' => 'BRYCE VAN BRABANT',
25             'TOMMY WESTLUND' => 'TOMMY VESTLUND',
26             'MATTIAS JOHANSSON' => 'MATHIAS JOHANSSON',
27             'WESTLUND' => 'VESTLUND',
28             'T. WESTLUND' => 'T. VESTLUND',
29             'N. KRONVALL' => 'N. KRONWALL',
30             'S. KRONVALL' => 'S. KRONWALL',
31             'A. KASTSITSYN' => 'A. KOSTITSYN',
32             'F. MEYER IV' => 'F. MEYER',
33             'P/ BRISEBOIS' => 'P. BRISEBOIS',
34             'K. PUSHKARYOV' => 'K. PUSHKAREV',
35             'M. SATIN' => 'M. SATAN',
36             'B. RADIVOJEVICE' => 'B. RADIVOJEVIC',
37             'J. BULLIS' => 'J. BULIS',
38             'PJ. AXELSSON' => 'P.J. AXELSSON',
39             );
40             our %REVERSE_NAME_TYPOS = (
41             'KRONWALL' => 'KRONVALL',
42             );
43              
44             our %NAME_VARIATIONS = (
45             'CHRIS KENADY' => 'CHRISTOPHER KENADY',
46             'JOHN THOMAS' => 'S. THOMAS',
47             'BILLY TIBBETTS' => 'W. TIBBETTS',
48             'WILLIAM BOWLER' => 'B. BOWLER',
49             'BOBBY HOLIK' => 'R. HOLIK',
50             'RANDY MCKAY' => 'H. MCKAY',
51             );
52              
53             our %BROKEN_COACHES = (
54             STICKLE => 'BOB MURDOCH',
55             'CASHMAN/THIFFAULT' => 'MICHEL BERGERON',
56             'LEVER/SMITH' => 'TED SATOR',
57             'WILSON/RAEDER' => 'TOM WEBSTER',
58             'RAEDER/WILSON' => 'TOM WEBSTER',
59             'BAXTER/CHARRON' => 'DOUG RISEBROUGH',
60             'CHARRON/BAXTER' => 'GUY CHARRON',
61             'CHARON,BAXTER,HISLOP' => 'GUY CHARRON',
62             );
63              
64             our %BROKEN_PLAYER_IDS = (8445204 => 8445202);
65              
66             our %BROKEN_PLAYERS = (
67             BS => {
68             192730312 => { 8448095 => { number => 16, } },
69             196820129 => { 8449481 => { penaltyMinutes => 2,}},
70             197820329 => { 8446940 => { penaltyMinutes => 16,}},
71             198020400 => { 8448411 => { penaltyMinutes => 21,}},
72             198720798 => { 8449535 => { assists => 1, } },
73             199120753 => { 8448781 => { penaltyMinutes => 7 }},
74             199320074 => { 8455408 => { penaltyMinutes => 4 }},
75             199320640 => { 8455984 => { penaltyMinutes => 6 }},
76             200320009 => {
77             8467349 => { number => 8, position => 'D', goals => 1, },
78             8468789 => { number => 29, position => 'C', },
79             8464960 => { number => 21, position => 'C', },
80             },
81             200320013 => {
82             8467333 => { number => 9, position => 'R', },
83             },
84             200320019 => {
85             8466147 => { number => 17, position => 'C',},
86             },
87             200320104 => {
88             8467333 => { goals => 1, },
89             },
90             200320132 => {
91             8452578 => { number => 19, position => 'C', goals => 1},
92             },
93             200320248 => {
94             8468003 => {goals => 1,},
95             },
96             200320459 => {
97             8468083 => { goals => 1, assists => 2, number => 40 },
98             },
99             200820502 => { 8470201 => { penaltyMinutes => 2, }},
100             201520995 => { 8470602 => { penaltyMinutes => 6, }},
101             },
102             );
103              
104             our %FORCED_PUSH = (
105             PL => {
106             200820009 => { 82 => 1, 83 => 1, },
107             201020989 => { 346 => 1 },
108             201120094 => { 198 => 1 },
109             201320083 => { 351 => 1 },
110             201420921 => { 354 => 1 },
111             201520057 => { 150 => 1, 158 => 1, 197 => 1 },
112             201520064 => { 316 => 1 },
113             201520436 => { 176 => 1 },
114             201520518 => { 152 => 1 },
115             201520593 => { 273 => 1 },
116             201520741 => { 343 => 1, 344 => 1 },
117             201521035 => { 172 => 1 },
118             201530122 => { 347 => 1 },
119             201620161 => { 286 => 1 },
120             201620177 => { 197 => 1 },
121             201620321 => { 64 => 1 },
122             201620920 => { 296 => 1, 297 => 1 },
123             201621081 => { 101 => 1 },
124             201720176 => { 303 => 1, 304 => 1, 305 => 1, 306 => 1},
125             },
126             );
127              
128             our %BROKEN_ROSTERS = (
129             198720509 => [ [], [ { 'No.' => 0, number => 30 } ], ],
130             199020353 => [ [], [ { 'No.' => 0, number => 30 } ], ],
131             199020696 => [ [], [ { 'No.' => 0, number => 35 } ], ],
132             199120656 => [ [], [ { 'No.' => 16, penaltyMinutes => 4 }, ], ],
133             199120753 => [ [ { 'No.' => 26, penaltyMinutes => 7 }, ], [], ],
134             199120809 => [ [ { 'No.' => 5, penaltyMinutes => 2 }, ], [], ],
135             199120839 => [ [ { 'No.' => 11, penaltyMinutes => 12 }, ], [], ],
136             199120877 => [ [ { 'No.' => 27, penaltyMinutes => 18 }, ], [], ],
137             199220449 => [ [ { 'No.' => 29, penaltyMinutes => 18 }, ], [], ],
138             199220585 => [ [], [ { 'No.' => 39, penaltyMinutes => 17 }, ], ],
139             199320044 => [ [ { 'No.' => 26, penaltyMinutes => 4 }, ], [], ],
140             199320074 => [ [ { 'No.' => 27, penaltyMinutes => 4 }, ], [], ],
141             199320404 => [ [ { 'No.' => 29, penaltyMinutes => 19 }, ], [], ],
142             199320499 => [ [], [ { 'No.' => 32, penaltyMinutes => 2 }, ], ],
143             199320640 => [ [], [ { 'No.' => 12, penaltyMinutes => 6 }, ], ],
144             199520048 => [ [ { 'No.' => 12, penaltyMinutes => 2, }, ], [], ],
145             199520790 => [ [ { 'No.' => 12, penaltyMinutes => 6, }, ], [], ],
146             199530123 => [ [], [ { 'No.' => 23, penaltyMinutes => 14, }, ], ],
147             199620473 => [ [ { 'No.' => 27, penaltyMinutes => 2, }, ], [], ],
148             199620546 => [ [ { 'No.' => 17, penaltyMinutes => 2, }, ], [], ],
149             199620548 => [ [ { 'No.' => 33, penaltyMinutes => 23 }, ], [], ],
150             199620927 => [ [
151             { 'No.' => 20, penaltyMinutes => 2, },
152             { 'No.' => 77, penaltyMinutes => 2, },
153             ], [], ],
154             199630222 => [ [], [ { 'No.' => 18, penaltyMinutes => 2, }, ], ],
155             199720830 => [ [], [ { 'No.' => 35, 'EV' => '10 - 12' }, ], ],
156             199720876 => [ [], [ { 'No.' => 27, 'EV' => '11 - 14' }, ], ],
157             199720997 => [ [ { 'No.' => 31, 'SH' => '3 - 3' }, ], [], ],
158             199820004 => [ [], [ { 'No.' => 34, 'EV' => '26 - 28' }, ], ],
159             199820061 => [ [], [ { 'No.' => 35, 'EV' => '19 - 20' }, ], ],
160             200320027 => [ [], [ { 'No.' => 29, 'name' => 'JAMIE MCLENNAN' }, ], ],
161             200520312 => [ [ { 'No.' => 7, error => 1 } ], [] ],
162             );
163              
164             our %BROKEN_EVENTS = (
165             BS => {
166             195520195 => { 18 => { time => '10:06' },},
167             198320770 => {
168             20 => { time => '1:29' },
169             21 => { time => '1:29' },
170             },
171             198520010 => { 16 => { time => '7:48' }, },
172             198520611 => { 32 => { time => '10:09' }, },
173             198820689 => { 5 => { player2 => 8446637 }, 6 => { player2 => 8446637 }, },
174             198920567 => { 26 => { player1 => 8450167 }},
175             201021015 => { 345 => {en => 1}},
176             201321046 => { 302 => -1 },
177             201621152 => { 9 => { assist2 => 8475209, assists => [8474141,8475209] }},
178             201621165 => { 43 => { player1 => 8465009, assists => [ 8478443, 8476374]}}
179             },
180             BH => {
181              
182             },
183             PL => {
184             200220255 => { 122 => { player2 => 29 } },
185             200220266 => {
186             81 => { player1 => 54 },
187             146 => { on_ice2 => [1, 54,21, 18, 11, 4, ] }
188             },
189             200321115 => { 10 => { player2 => 38 } },
190             200520084 => { 54 => { player1 => 35 } },
191             200520307 => { 176 => { player1 => 20 } },
192             200520312 => {
193             1 => {
194             id => 1, period => 1, time => '0:00', team => 'NSH',
195             strength => 'EV', shot_type => 'Snap',
196             distance => 18, type => 'GOAL', location => 'Off',
197             description => '22 JOHNSON, A: 20 SUTER, 7 UPSHALL, Snap, 18 ft',
198             old => 1, team1 => 'NSH', player1 => 22, assist1 => 20,
199             on_ice => [ [], [], ], special => 1, stage => 2, season => 2005,
200             },
201             },
202             200520314 => { 47 => { player1 => 20 } },
203             200520472 => { 107 => { player1 => 23 }},
204             200520473 => { 254 => 0, },
205             200520511 => { 247 => 0 },
206             200520873 => { 143 => 0 },
207             200520946 => { 211 => { player1 => 35 } },
208             200521044 => { 313 => { player1 => 19, }, },
209             200521114 => { 2 => 0 },
210             200620433 => { 132 => { player1 => 31 } },
211             200620597 => { 76 => 0, },
212             200620637 => { 123 => 0, 217 => 0 },
213             200620672 => { 131 => 0 },
214             200620681 => { 305 => 0, },
215             200620698 => { 234 => { player1 => 27 }},
216             200620765 => { 266 => 0, },
217             200621005 => { 180 => 0, },
218             200621019 => { 66 => 0, },
219             200621024 => { 139 => 0, 219 => { on_ice2 => [ 55, 47, 39, 3, 27, 94, ], }, 188 => 0, 194 => 0 },
220             200621062 => { 220 => 0, },
221             200621107 => { 151 => 0, },
222             200621145 => { 194 => 0, },
223             200720003 => { 275 => { description => 'CAR Team Too many men/ice - bench(2 min) Served By: #18 BAYDA, Neu. Zone', },
224             120 => { on_ice => [ [14,6,84,44,71,39], [17,11,13,2,5,30] ], }, },
225             200720014 => { 226 => { team1 => 'ARI', }, },
226             200720019 => { 203 => { team1 => 'DAL', }, },
227             200720026 => { 195 => { team1 => 'FLA', }, },
228             200720028 => { 269 => 0, },
229             200720039 => { 21 => { team1 => 'CAR', }, },
230             200720162 => { 281 => 0, },
231             200720199 => { 260 => 0, },
232             200720811 => { 344 => { on_ice2 => [ 35 ] }},
233             200730174 => {
234             221 => { on_ice => [ [15,25,6,33,41,29], [94,39,8,24,44,60] ]},
235             222 => { on_ice => [ [15,25,6,33,41,29], [94,39,8,24,44,60] ]},
236             223 => { on_ice => [ [15,25,6,33,41,29], [94,39,8,24,44,60] ]}
237             } ,
238             200820118 => { 4 => { winning_team => 'EDM', } },
239             200820332 => { 263 => { winning_team => 'DET', } },
240             200820444 => { 190 => { player1 => $UNKNOWN_PLAYER_ID } },
241             200820650 => { 37 => { winning_team => 'MIN', } },
242             200820749 => { 207 => { winning_team => 'TBL', } },
243             200820774 => { 92 => 0, 93 => {player1 => 17, }},
244             200820868 => { 299 => { length => 2, penalty => 'Instigator', description => 'EDM #18 MOREAU Instigator(2 min) Drawn By: DAL #29 OTT'}, },
245             200820900 => { 284 => { on_ice => [] }},
246             200820987 => { 284 => 0, },
247             200821191 => { 289 => { player1 => 20, team1 => 'NSH', player2 => 2, team2 => 'CHI' } },
248             200921066 => {
249             21 => { on_ice => [ [33,43,20,23,52,35], [17,38,40,3,29,1] ]},
250             },
251             200921217 => { 138 => 0, },
252             201020146 => { 311 => { player1 => 39, servedby => 26, }, },
253             201020596 => { 275 => 0, },
254             201020989 => { 346 => { reason => 'GOALIE STOPPED', description => 'GOALIE STOPPED', }, },
255             201120094 => { 198 => { reason => 'GOALIE STOPPED', description => 'GOALIE STOPPED', }, },
256             201120110 => {
257             89 => { on_ice => [ [81,84,19,2,51,50], [27,48,17,41,35] ]},
258             },
259             201120553 => { 294 => {
260             length => 10, penalty => 'Misconduct', misconduct => 1,
261             description => 'FLA #21 BARCH Game misconduct(10 min)',
262             } },
263             201220341 => { 301 => 0, },
264             201320971 => { 1 => {
265             id => 1, period => 1,
266             time => '0:00',
267             team => 'CBJ',
268             strength => 'EV',
269             shot_type => 'Snap',
270             distance => 18,
271             type => 'GOAL',
272             location => 'Off',
273             old => 1,
274             description => 'CBJ #8 HORTON(5), A: 11 CALVERT(4); 21 WISNIEWSKI(43), Snap, 18 ft',
275             team1 => 'NSH',
276             player1 => 8470596,
277             assist1 => 8476485,
278             assist2 => 8470222,
279             on_ice => [ [], [], ],
280             special => 1, en => 0, gwg => 0,
281             } },
282             201321046 => { 295 => 0 },
283             201321139 => {
284             13 => { on_ice => [ [51,89,57,19,84,30], [8,19,88,7,61,31] ]},
285             },
286             201420600 => { 328 => 0 },
287             201420921 => { 354 => { reason => 'GOALIE STOPPED', description => 'GOALIE STOPPED', }, },
288             201521197 => {
289             27 => { on_ice => [ [ 21,10,15,5,6,1 ], [18,57,52,3,33,37] ] },
290             },
291             201621127 => { 311 => { description => 'BOS #55 ACCIARI Misconduct(10 min), Def. Zone' }},
292             201621229 => {
293             178 => { on_ice => [[15,21,73,6,53,32], [50,10,2,53,1]]},
294             },
295             },
296             GS => {
297             }
298             );
299              
300             our %BROKEN_TIMES = (
301              
302             );
303              
304             our %BROKEN_COORDS = (
305              
306             );
307              
308             our $INCOMPLETE = -1;
309             our $REPLICA = -2;
310             our $BROKEN = -3;
311             our $NO_EVENTS = -4;
312             our $UNSYNCHED = -5;
313              
314             our %BROKEN_FILES = (
315             191730211 => { BS => $UNSYNCHED},
316             191730212 => { BS => $UNSYNCHED},
317             191730213 => { BS => $UNSYNCHED},
318             191730214 => { BS => $UNSYNCHED},
319             191730215 => { BS => $UNSYNCHED},
320             191830211 => { BS => $UNSYNCHED},
321             191830212 => { BS => $UNSYNCHED},
322             191830213 => { BS => $UNSYNCHED},
323             191830214 => { BS => $UNSYNCHED},
324             191830215 => { BS => $UNSYNCHED},
325             191930211 => { BS => $UNSYNCHED},
326             191930212 => { BS => $UNSYNCHED},
327             191930213 => { BS => $UNSYNCHED},
328             191930214 => { BS => $UNSYNCHED},
329             191930215 => { BS => $UNSYNCHED},
330             192130211 => { BS => $UNSYNCHED},
331             192130212 => { BS => $UNSYNCHED},
332             192130213 => { BS => $UNSYNCHED},
333             192130214 => { BS => $UNSYNCHED},
334             192130215 => { BS => $UNSYNCHED},
335             192430311 => { BS => $UNSYNCHED},
336             192430312 => { BS => $UNSYNCHED},
337             192430313 => { BS => $UNSYNCHED},
338             192430314 => { BS => $UNSYNCHED},
339             192530311 => { BS => $UNSYNCHED},
340             192530312 => { BS => $UNSYNCHED},
341             192530313 => { BS => $UNSYNCHED},
342             192530314 => { BS => $UNSYNCHED},
343             195220105 => { BS => $NO_EVENTS },
344             195320012 => { BS => $NO_EVENTS },
345             195620210 => { BS => $UNSYNCHED},
346             195820138 => { BS => $UNSYNCHED},
347             196320003 => { BS => $NO_EVENTS },
348             196720356 => { BS => $NO_EVENTS },
349             197320520 => { BS => $NO_EVENTS },
350             197520138 => { BS => $NO_EVENTS },
351             197520379 => { BS => $NO_EVENTS },
352             197620012 => { BS => $NO_EVENTS },
353             197720070 => { BS => $NO_EVENTS },
354             197720469 => { BS => $NO_EVENTS },
355             197820577 => { BS => $NO_EVENTS },
356             197920370 => { BS => $NO_EVENTS },
357             197920492 => { BS => $NO_EVENTS },
358             198220019 => { BS => $NO_EVENTS },
359             198520534 => { BS => $NO_EVENTS },
360             198520592 => { BS => $NO_EVENTS },
361             198620125 => { BS => $NO_EVENTS },
362             198620163 => { BS => $NO_EVENTS },
363             198630152 => { BS => $NO_EVENTS },
364             199020225 => { BS => $NO_EVENTS },
365             199020623 => { BS => $NO_EVENTS },
366             199120627 => { BS => $NO_EVENTS },
367             199220004 => { BS => $NO_EVENTS },
368             199220082 => { BS => $NO_EVENTS },
369             199220242 => { BS => $NO_EVENTS },
370             199320538 => { BS => $NO_EVENTS },
371             199520135 => { BS => $NO_EVENTS },
372             199720946 => { BS => $NO_EVENTS },
373             199920029 => { ES => $REPLICA, GS => $REPLICA },
374             199920045 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
375             199920050 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
376             199920058 => { ES => $REPLICA, GS => $REPLICA },
377             199920071 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
378             199920072 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
379             199920081 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
380             199920109 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
381             199920130 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
382             199920323 => { ES => $REPLICA, GS => $REPLICA },
383             199920619 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
384             199920689 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
385             199920690 => { ES => $BROKEN, GS => $INCOMPLETE },
386             199920836 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
387             199921034 => { BH => $INCOMPLETE, ES => $INCOMPLETE, GS => $INCOMPLETE },
388             199930325 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
389             200020029 => { ES => $REPLICA, GS => $REPLICA },
390             200020038 => { ES => $REPLICA, GS => $REPLICA },
391             200020039 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
392             200020041 => { ES => $REPLICA, GS => $REPLICA },
393             200020042 => { ES => $REPLICA, GS => $REPLICA },
394             200020043 => { ES => $REPLICA, GS => $REPLICA },
395             200020044 => { ES => $REPLICA, GS => $REPLICA },
396             200020045 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
397             200020049 => { ES => $REPLICA, GS => $REPLICA },
398             200020067 => { ES => $REPLICA, GS => $REPLICA },
399             200020072 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
400             200020073 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
401             200020077 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
402             200020080 => { ES => $REPLICA, GS => $REPLICA },
403             200020081 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
404             200020083 => { ES => $REPLICA, GS => $REPLICA },
405             200020085 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
406             200020095 => { ES => $REPLICA, GS => $REPLICA },
407             200020096 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
408             200020102 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
409             200020112 => { ES => $REPLICA, GS => $REPLICA },
410             200020186 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
411             200020187 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
412             200020189 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
413             200020920 => { ES => $REPLICA, GS => $REPLICA },
414             200020916 => { PL => $INCOMPLETE },
415             200020921 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
416             200020924 => { ES => $REPLICA, GS => $REPLICA },
417             200020925 => { ES => $REPLICA, GS => $REPLICA },
418             200020926 => { ES => $REPLICA, GS => $REPLICA },
419             200020928 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
420             200020964 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
421             200020983 => { ES => $BROKEN },
422             200021165 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
423             200021166 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
424             200021167 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
425             200021171 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
426             200120012 => { BS => $NO_EVENTS },
427             200120974 => { BS => $NO_EVENTS },
428             200220396 => { BS => $NO_EVENTS },
429             200220414 => { BS => $NO_EVENTS },
430             200220645 => { BS => $NO_EVENTS },
431             200220916 => { PL => $INCOMPLETE },
432             200320191 => { GS => $INCOMPLETE },
433             200320257 => { BS => $NO_EVENTS },
434             200321205 => { ES => $INCOMPLETE, GS => $INCOMPLETE, PL => $INCOMPLETE },
435             200330134 => { PL => $BROKEN },
436             200520298 => { ES => $REPLICA },
437             200520458 => { ES => $BROKEN },
438             200520677 => { RO => $BROKEN },
439             200520679 => { RO => $BROKEN },
440             200520681 => { RO => $BROKEN },
441             200621024 => { ES => $INCOMPLETE, GS => $INCOMPLETE, PL => $BROKEN, },
442             200621024 => { ES => $INCOMPLETE, GS => $INCOMPLETE, PL => $BROKEN, },
443             200720262 => { BS => $NO_EVENTS, },
444             200720470 => { GS => $INCOMPLETE, },
445             200720483 => { GS => $INCOMPLETE, },
446             200721178 => { ES => $INCOMPLETE, GS => $INCOMPLETE, PL => $BROKEN, RO => $INCOMPLETE },
447             200820259 => { ES => $INCOMPLETE, GS => $INCOMPLETE, PL => $BROKEN, RO => $INCOMPLETE },
448             200820409 => { ES => $INCOMPLETE, GS => $INCOMPLETE, PL => $BROKEN, RO => $INCOMPLETE },
449             200821077 => { ES => $INCOMPLETE, GS => $INCOMPLETE, PL => $BROKEN, RO => $INCOMPLETE },
450             200920081 => { ES => $INCOMPLETE, GS => $INCOMPLETE, PL => $BROKEN, RO => $INCOMPLETE },
451             200920827 => { GS => $INCOMPLETE },
452             200920836 => { GS => $INCOMPLETE },
453             200920857 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
454             200920863 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
455             200920874 => { ES => $INCOMPLETE, GS => $INCOMPLETE, RO => $INCOMPLETE },
456             200920885 => { ES => $INCOMPLETE, RO => $INCOMPLETE },
457             201020429 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
458             201020575 => { BS => $NO_EVENTS },
459             201020704 => { BS => $NO_EVENTS },
460             201120259 => { ES => $INCOMPLETE, GS => $INCOMPLETE },
461             201320338 => { BS => $NO_EVENTS },
462             201320971 => { GS => $BROKEN },
463             201520079 => {BH => $INCOMPLETE},
464             201520120 => {BH => $INCOMPLETE},
465             201520168 => {BH => $INCOMPLETE},
466             201520214 => {BH => $INCOMPLETE},
467             201520307 => {BH => $INCOMPLETE},
468             201520476 => { BS => $NO_EVENTS },
469             201720639 => { BS => $NO_EVENTS },
470             );
471              
472             our %MANUAL_FIX = (
473             200120123 => { GS => 'Remove "2" throughout the file' },
474             200520094 => {
475             GS => 'Insert missing period for 15:35 penalty',
476             PL => 'Edited string with 00:28 penalty',
477             },
478             200520305 => { GS => 'Insert missing period for 5:13 penalty' },
479             200520233 => { GS => 'Add missing TBODY closing tag' },
480             200520264 => { GS => 'Fixed bogus on ice' },
481             200620071 => { PL => 'Aligned period for event #1' },
482             200620892 => { GS => 'Add missing TBODY closing tag' },
483             201320331 => { PL => 'Remove invalid tag at the 7:50 event' },
484             201720463 => { PL => 'Fixed time -16:0-1' },
485             );
486             our %BROKEN_HEADERS = (
487             200720295 => {
488             location => 'Scottrade Center',
489             },
490             );
491              
492             our %SPECIAL_EVENTS = (
493             200520312 => { 0 => 1 },
494             201320971 => { 0 => 1 },
495             );
496              
497             our %MISSING_EVENTS = (
498             198930176 => [
499             {
500             type => 'GOAL',
501             period => 5,
502             time => '03:14',
503             team1 => 'LAK',
504             assist1 => 8446494,
505             player1 => 8448566,
506             strength => 'EV',
507             shot_type => 'Unknown',
508             distance => 999,
509             location => 'Off',
510             },
511             ],
512             199020456 => [
513             {
514             type => 'PENL',
515             period => 4,
516             time => '03:41',
517             player1 => 8448449,
518             team1 => 'BUF',
519             length => 2,
520             penalty => 'Holding',
521             strength => 'EV',
522             location => 'Unk',
523             },
524             ],
525             199030242 => [
526             {
527             type => 'GOAL',
528             period => 5,
529             time => '04:48',
530             team1 => 'EDM',
531             player1 => 8448490,
532             assist1 => 8451905,
533             assist2 => 8449020,
534             shot_type => 'Unknown',
535             distance => 999,
536             location => 'Off',
537             strength => 'EV',
538             },
539             ],
540             199030243 => [
541             {
542             type => 'GOAL',
543             period => 5,
544             time => '00:48',
545             team1 => 'EDM',
546             player1 => 8451905,
547             assist1 => 8448490,
548             assist2 => 8448641,
549             shot_type => 'Unknown',
550             distance => 999,
551             location => 'Off',
552             strength => 'EV',
553             },
554             {
555             type => 'PENL',
556             period => 5,
557             time => '00:48',
558             player1 => 8450941,
559             team1 => 'LAK',
560             length => 10,
561             penalty => 'Misconduct',
562             misconduct => 1,
563             strength => 'EV',
564             location => 'Unk',
565             },
566             ],
567             199130002 => [
568             {
569             type => 'PENL',
570             period => 5,
571             time => '00:48',
572             player1 => 8450941,
573             team1 => 'LAK',
574             length => 10,
575             penalty => 'Misconduct',
576             misconduct => 1,
577             strength => 'EV',
578             location => 'Unk',
579             },
580             ],
581             199130117 => [
582             {
583             type => 'GOAL',
584             time => '05:26',
585             period => 5,
586             team1 => 'MTL',
587             strength => 'EV',
588             location => 'Off',
589             shot_type => 'Unknown',
590             distance => 999,
591             player1 => 8446208,
592             assist1 => 8446167,
593             assist2 => 8446415,
594             },
595             ],
596             199130163 => [
597             {
598             type => 'GOAL',
599             time => '03:33',
600             period => 5,
601             team1 => 'STL',
602             strength => 'EV',
603             location => 'Off',
604             shot_type => 'Unknown',
605             distance => 999,
606             player1 => 8448091,
607             assist1 => 8445281,
608             assist2 => 8451793,
609             },
610             ],
611             199230142 => [
612             {
613             type => 'GOAL',
614             time => '14:50',
615             period => 5,
616             team1 => 'NYI',
617             strength => 'EV',
618             location => 'Off',
619             shot_type => 'Unknown',
620             distance => 999,
621             player1 => 8449742,
622             assist1 => 8446823,
623             assist2 => 8446838,
624             },
625             ],
626             199230144 => [
627             {
628             type => 'GOAL',
629             time => '05:40',
630             period => 5,
631             team1 => 'NYI',
632             strength => 'EV',
633             location => 'Off',
634             shot_type => 'Unknown',
635             distance => 999,
636             player1 => 8446823,
637             assist1 => 8448870,
638             assist2 => 8446830,
639             },
640             ],
641             199230231 => [
642             {
643             type => 'GOAL',
644             time => '03:16',
645             period => 5,
646             team1 => 'TOR',
647             strength => 'EV',
648             location => 'Off',
649             shot_type => 'Unknown',
650             distance => 999,
651             player1 => 8447206,
652             assist1 => 8447187,
653             assist2 => 8449009,
654             },
655             ],
656             199230232 => [
657             {
658             type => 'GOAL',
659             time => '03:03',
660             period => 5,
661             team1 => 'STL',
662             strength => 'EV',
663             location => 'Off',
664             shot_type => 'Unknown',
665             distance => 999,
666             player1 => 8445700,
667             assist1 => 8446675,
668             assist2 => 8448222,
669             },
670             ],
671             199230245 => [
672             {
673             type => 'GOAL',
674             time => '06:31',
675             period => 5,
676             team1 => 'LAK',
677             strength => 'EV',
678             location => 'Off',
679             shot_type => 'Unknown',
680             distance => 999,
681             player1 => 8458020,
682             assist1 => 8450941,
683             assist2 => 8448569,
684             },
685             ],
686             199230312 => [
687             {
688             type => 'GOAL',
689             time => '06:21',
690             period => 5,
691             team1 => 'MTL',
692             strength => 'EV',
693             location => 'Off',
694             shot_type => 'Unknown',
695             distance => 999,
696             player1 => 8448719,
697             assist1 => 8446303,
698             assist2 => 8445739,
699             },
700             ],
701             199330136 => [
702             {
703             type => 'GOAL',
704             time => '05:43',
705             period => 7,
706             team1 => 'BUF',
707             strength => 'EV',
708             location => 'Off',
709             shot_type => 'Unknown',
710             distance => 999,
711             player1 => 8447515,
712             assist1 => 8458549,
713             assist2 => 8450523,
714             },
715             {
716             type => 'PENL',
717             period => 6,
718             time => '00:00',
719             player1 => 8450678,
720             team1 => 'BUF',
721             length => 10,
722             penalty => 'Misconduct',
723             misconduct => 1,
724             strength => 'EV',
725             location => 'Unk',
726             },
727             {
728             type => 'PENL',
729             period => 6,
730             time => '12:10',
731             player1 => $BENCH_PLAYER_ID,
732             team1 => 'NJD',
733             length => 2,
734             penalty => 'Too many men/ice',
735             strength => 'EV',
736             location => 'Unk',
737             servedby => 8450825,
738             },
739             ],
740             199330167 => [
741             {
742             type => 'GOAL',
743             time => '02:20',
744             period => 5,
745             team1 => 'VAN',
746             strength => 'EV',
747             location => 'Off',
748             shot_type => 'Unknown',
749             distance => 999,
750             player1 => 8455738,
751             assist1 => 8445700,
752             assist2 => 8445208,
753             },
754             ],
755             199330311 => [
756             {
757             type => 'GOAL',
758             time => '15:23',
759             period => 5,
760             team1 => 'NJD',
761             strength => 'EV',
762             location => 'Off',
763             shot_type => 'Unknown',
764             distance => 999,
765             player1 => 8450825,
766             assist1 => 8445977,
767             },
768             {
769             type => 'PENL',
770             period => 5,
771             time => '04:14',
772             player1 => 8451905,
773             team1 => 'NYR',
774             length => 2,
775             penalty => 'Unsportsmanlike conduct',
776             strength => 'EV',
777             location => 'Unk',
778             },
779             {
780             type => 'PENL',
781             period => 5,
782             time => '04:14',
783             player1 => 8445461,
784             team1 => 'NYR',
785             length => 2,
786             penalty => 'Roughing',
787             location => 'Unk',
788             strength => 'EV',
789             },
790             {
791             type => 'PENL',
792             period => 5,
793             time => '04:14',
794             player1 => 8448772,
795             team1 => 'NJD',
796             length => 2,
797             penalty => 'Unsportsmanlike conduct',
798             location => 'Unk',
799             strength => 'EV',
800             },
801             {
802             type => 'PENL',
803             period => 5,
804             time => '04:14',
805             player1 => 8450825,
806             team1 => 'NJD',
807             length => 2,
808             penalty => 'Roughing',
809             location => 'Unk',
810             strength => 'EV',
811             },
812             ],
813             199330313 => [
814             {
815             type => 'GOAL',
816             time => '06:13',
817             period => 5,
818             team1 => 'NYR',
819             strength => 'EV',
820             location => 'Off',
821             shot_type => 'Unknown',
822             distance => 999,
823             player1 => 8449295,
824             },
825             ],
826             199330317 => [
827             {
828             type => 'GOAL',
829             time => '04:24',
830             period => 5,
831             team1 => 'NYR',
832             strength => 'EV',
833             location => 'Off',
834             shot_type => 'Unknown',
835             distance => 999,
836             player1 => 8449295,
837             assist1 => 8451905,
838             },
839             ],
840             199330325 => [
841             {
842             type => 'GOAL',
843             time => '00:14',
844             period => 5,
845             team1 => 'VAN',
846             strength => 'EV',
847             location => 'Off',
848             shot_type => 'Unknown',
849             distance => 999,
850             player1 => 8444894,
851             assist1 => 8445208,
852             assist2 => 8448825,
853             },
854             ],
855             199430167 => [
856             {
857             type => 'GOAL',
858             time => '01:54',
859             period => 5,
860             team1 => 'SJS',
861             strength => 'EV',
862             location => 'Off',
863             shot_type => 'Unknown',
864             distance => 999,
865             player1 => 8458537,
866             assist1 => 8448669,
867             assist2 => 8449163,
868             },
869             ],
870             199430323 => [
871             {
872             type => 'GOAL',
873             time => '09:25',
874             period => 5,
875             team1 => 'DET',
876             strength => 'EV',
877             location => 'Off',
878             shot_type => 'Unknown',
879             distance => 999,
880             player1 => 8456870,
881             assist1 => 8446789,
882             },
883             ],
884             199430325 => [
885             {
886             type => 'GOAL',
887             time => '02:25',
888             period => 5,
889             team1 => 'DET',
890             strength => 'EV',
891             location => 'Off',
892             shot_type => 'Unknown',
893             distance => 999,
894             player1 => 8456887,
895             assist1 => 8446788,
896             assist2 => 8445730,
897             },
898             ],
899             199530124 => [
900             {
901             type => 'GOAL',
902             time => '19:15',
903             period => 7,
904             team1 => 'PIT',
905             strength => 'PP',
906             location => 'Off',
907             shot_type => 'Unknown',
908             distance => 999,
909             player1 => 8449807,
910             assist1 => 8458494,
911             assist2 => 8448208,
912             },
913             {
914             type => 'PENL',
915             period => 5,
916             time => '04:33',
917             player1 => 8458179,
918             team1 => 'PIT',
919             length => 2,
920             penalty => 'Roughing',
921             location => 'Unk',
922             strength => 'EV',
923             },
924             {
925             type => 'PENL',
926             period => 5,
927             time => '04:33',
928             player1 => 8445575,
929             team1 => 'WSH',
930             length => 2,
931             penalty => 'Roughing',
932             location => 'Unk',
933             strength => 'EV',
934             },
935             {
936             type => 'PENL',
937             period => 6,
938             time => '03:24',
939             player1 => 8448380,
940             team1 => 'PIT',
941             length => 2,
942             penalty => 'Slashing',
943             location => 'Unk',
944             strength => 'EV',
945             },
946             {
947             type => 'PENL',
948             period => 6,
949             time => '04:36',
950             player1 => 8446181,
951             team1 => 'WSH',
952             length => 2,
953             location => 'Unk',
954             penalty => 'Tripping - Obstruction',
955             strength => 'PP',
956             },
957             {
958             type => 'PENL',
959             period => 6,
960             time => '19:17',
961             player1 => 8456150,
962             team1 => 'PIT',
963             length => 2,
964             penalty => 'Slashing',
965             location => 'Unk',
966             strength => 'EV',
967             },
968             {
969             type => 'PENL',
970             period => 7,
971             time => '17:21',
972             player1 => 8448303,
973             team1 => 'WSH',
974             length => 2,
975             penalty => 'Hooking',
976             location => 'Unk',
977             strength => 'EV',
978             },
979             ],
980             199530174 => [
981             {
982             type => 'GOAL',
983             time => '10:02',
984             period => 6,
985             team1 => 'CHI',
986             strength => 'EV',
987             location => 'Off',
988             shot_type => 'Unknown',
989             distance => 999,
990             player1 => 8449751,
991             assist1 => 8446217,
992             },
993             ],
994             199530215 => [
995             {
996             type => 'GOAL',
997             time => '08:05',
998             period => 5,
999             team1 => 'FLA',
1000             strength => 'EV',
1001             location => 'Off',
1002             shot_type => 'Unknown',
1003             distance => 999,
1004             player1 => 8447985,
1005             assist1 => 8451427,
1006             assist2 => 8448092,
1007             },
1008             ],
1009             199530237 => [
1010             {
1011             type => 'GOAL',
1012             time => '01:15',
1013             period => 5,
1014             team1 => 'DET',
1015             strength => 'EV',
1016             location => 'Off',
1017             shot_type => 'Unknown',
1018             distance => 999,
1019             player1 => 8452578,
1020             assist1 => 8456870,
1021             },
1022             ],
1023             199530244 => [
1024             {
1025             type => 'GOAL',
1026             time => '04:33',
1027             period => 6,
1028             team1 => 'COL',
1029             strength => 'EV',
1030             location => 'Off',
1031             shot_type => 'Unknown',
1032             distance => 999,
1033             player1 => 8451101,
1034             assist1 => 8447363,
1035             assist2 => 8450817,
1036             },
1037             {
1038             type => 'PENL',
1039             period => 5,
1040             time => '19:38',
1041             player1 => 8448772,
1042             location => 'Unk',
1043             team1 => 'COL',
1044             length => 2,
1045             penalty => 'Roughing',
1046             strength => 'EV',
1047             },
1048             {
1049             type => 'PENL',
1050             period => 5,
1051             time => '19:38',
1052             player1 => 8450561,
1053             location => 'Unk',
1054             team1 => 'CHI',
1055             length => 2,
1056             penalty => 'Cross checking',
1057             strength => 'PP',
1058             },
1059             ],
1060             199530246 => [
1061             {
1062             type => 'GOAL',
1063             time => '05:18',
1064             period => 5,
1065             team1 => 'COL',
1066             strength => 'EV',
1067             location => 'Off',
1068             shot_type => 'Unknown',
1069             distance => 999,
1070             player1 => 8458544,
1071             assist1 => 8456770,
1072             assist2 => 8451101,
1073             },
1074             ],
1075             199530414 => [
1076             {
1077             type => 'GOAL',
1078             time => '04:31',
1079             period => 6,
1080             team1 => 'COL',
1081             strength => 'EV',
1082             location => 'Off',
1083             shot_type => 'Unknown',
1084             distance => 999,
1085             player1 => 8448554,
1086             },
1087             {
1088             type => 'PENL',
1089             period => 5,
1090             time => '09:57',
1091             player1 => 8448772,
1092             team1 => 'COL',
1093             location => 'Unk',
1094             length => 2,
1095             penalty => 'Roughing',
1096             strength => 'EV',
1097             },
1098             {
1099             type => 'PENL',
1100             period => 5,
1101             time => '09:57',
1102             player1 => 8451427,
1103             team1 => 'FLA',
1104             length => 2,
1105             location => 'Unk',
1106             penalty => 'Slashing',
1107             strength => 'EV',
1108             },
1109             ],
1110             199630114 => [
1111             {
1112             type => 'GOAL',
1113             time => '07:37',
1114             period => 6,
1115             team1 => 'MTL',
1116             strength => 'EV',
1117             location => 'Off',
1118             shot_type => 'Unknown',
1119             distance => 999,
1120             player1 => 8445739,
1121             assist1 => 8459442,
1122             assist2 => 8445734,
1123             },
1124             ],
1125             199630153 => [
1126             {
1127             type => 'GOAL',
1128             time => '11:03',
1129             period => 5,
1130             team1 => 'CHI',
1131             strength => 'EV',
1132             location => 'Off',
1133             shot_type => 'Unknown',
1134             distance => 999,
1135             player1 => 8458949,
1136             assist1 => 8446295,
1137             },
1138             {
1139             type => 'PENL',
1140             location => 'Unk',
1141             period => 5,
1142             time => '06:09',
1143             player1 => 8452353,
1144             team1 => 'CHI',
1145             length => 2,
1146             penalty => 'Holding',
1147             strength => 'EV',
1148             },
1149             {
1150             type => 'PENL',
1151             location => 'Unk',
1152             period => 5,
1153             time => '06:09',
1154             player1 => 8450561,
1155             team1 => 'CHI',
1156             length => 10,
1157             penalty => 'Misconduct',
1158             misconduct => 1,
1159             strength => 'EV',
1160             },
1161             ],
1162             199630165 => [
1163             {
1164             type => 'GOAL',
1165             time => '00:22',
1166             period => 5,
1167             team1 => 'EDM',
1168             strength => 'EV',
1169             location => 'Off',
1170             shot_type => 'Unknown',
1171             distance => 999,
1172             player1 => 8460496,
1173             assist1 => 8459429,
1174             assist2 => 8458963,
1175             },
1176             ],
1177             199630242 => [
1178             {
1179             type => 'GOAL',
1180             time => '01:31',
1181             period => 6,
1182             team1 => 'DET',
1183             strength => 'PP',
1184             location => 'Off',
1185             shot_type => 'Unknown',
1186             distance => 999,
1187             player1 => 8456887,
1188             assist1 => 8456870,
1189             assist2 => 8446789,
1190             },
1191             {
1192             type => 'PENL',
1193             period => 6,
1194             time => '01:03',
1195             player1 => 8446286,
1196             location => 'Unk',
1197             team1 => 'ANA',
1198             length => 2,
1199             penalty => 'Hooking',
1200             strength => 'EV',
1201             },
1202             ],
1203             199630244 => [
1204             {
1205             type => 'GOAL',
1206             time => '17:03',
1207             period => 5,
1208             team1 => 'DET',
1209             strength => 'EV',
1210             location => 'Off',
1211             shot_type => 'Unknown',
1212             distance => 999,
1213             player1 => 8451302,
1214             assist1 => 8458524,
1215             assist2 => 8452578,
1216             },
1217             {
1218             type => 'PENL',
1219             period => 5,
1220             time => '10:52',
1221             player1 => 8446789,
1222             location => 'Unk',
1223             team1 => 'DET',
1224             length => 2,
1225             penalty => 'Hi-sticking',
1226             strength => 'EV',
1227             },
1228             ],
1229             199720894 => [
1230             {
1231             id => 999,
1232             type => 'GOAL',
1233             period => 4,
1234             time => '04:39',
1235             location => 'Off',
1236             team1 => 'PHI',
1237             shot_type => 'Unknown',
1238             strength => 'EV',
1239             player1 => 8457704,
1240             assist1 => 8456849,
1241             assist2 => 8459458,
1242             },
1243             ],
1244             199730142 => [
1245             {
1246             type => 'GOAL',
1247             time => '00:54',
1248             period => 5,
1249             team1 => 'BOS',
1250             strength => 'EV',
1251             location => 'Off',
1252             shot_type => 'Unknown',
1253             distance => 999,
1254             player1 => 8459249,
1255             assist1 => 8459439,
1256             assist2 => 8448484,
1257             },
1258             ],
1259             199730143 => [
1260             {
1261             type => 'GOAL',
1262             time => '06:31',
1263             period => 5,
1264             team1 => 'WSH',
1265             strength => 'EV',
1266             location => 'Off',
1267             shot_type => 'Unknown',
1268             distance => 999,
1269             player1 => 8456760,
1270             assist1 => 8449951,
1271             assist2 => 8445417,
1272             },
1273             ],
1274             199730223 => [
1275             {
1276             type => 'GOAL',
1277             time => '01:24',
1278             period => 5,
1279             team1 => 'BUF',
1280             strength => 'EV',
1281             location => 'Off',
1282             shot_type => 'Unknown',
1283             distance => 999,
1284             player1 => 8458976,
1285             assist1 => 8458347,
1286             assist2 => 8460579,
1287             },
1288             ],
1289             199730243 => [
1290             {
1291             type => 'GOAL',
1292             time => '11:12',
1293             period => 5,
1294             team1 => 'DET',
1295             strength => 'EV',
1296             location => 'Off',
1297             shot_type => 'Unknown',
1298             distance => 999,
1299             player1 => 8451302,
1300             assist1 => 8448669,
1301             assist2 => 8457063,
1302             },
1303             ],
1304             199830122 => [
1305             {
1306             type => 'GOAL',
1307             time => '10:35',
1308             period => 5,
1309             team1 => 'BUF',
1310             strength => 'EV',
1311             location => 'Off',
1312             shot_type => 'Unknown',
1313             distance => 999,
1314             player1 => 8459534,
1315             assist1 => 8458454,
1316             assist2 => 8456760,
1317             },
1318             ],
1319             199830135 => [
1320             {
1321             type => 'GOAL',
1322             time => '14:45',
1323             period => 5,
1324             team1 => 'BOS',
1325             strength => 'EV',
1326             location => 'Off',
1327             shot_type => 'Unknown',
1328             distance => 999,
1329             player1 => 8459156,
1330             assist1 => 8466138,
1331             assist2 => 8445621,
1332             },
1333             ],
1334             199830154 => [
1335             {
1336             type => 'GOAL',
1337             time => '17:34',
1338             period => 6,
1339             team1 => 'DAL',
1340             strength => 'EV',
1341             location => 'Off',
1342             shot_type => 'Unknown',
1343             distance => 999,
1344             player1 => 8449893,
1345             assist1 => 8458494,
1346             assist2 => 8445423,
1347             },
1348             {
1349             type => 'PENL',
1350             period => 6,
1351             time => '07:46',
1352             player1 => 8459640,
1353             team1 => 'EDM',
1354             location => 'Unk',
1355             length => 2,
1356             penalty => 'Boarding',
1357             strength => 'EV',
1358             },
1359             ],
1360             199830416 => [
1361             {
1362             type => 'GOAL',
1363             time => '14:51',
1364             period => 6,
1365             team1 => 'DAL',
1366             strength => 'EV',
1367             location => 'Off',
1368             shot_type => 'Unknown',
1369             distance => 999,
1370             player1 => 8448091,
1371             assist1 => 8459024,
1372             assist2 => 8449645,
1373             },
1374             ],
1375             200210427 => [
1376             {
1377             'period' => 3,
1378             'team' => 'PHI',
1379             'str' => 'EV',
1380             'player2' => 8465200,
1381             'penalty' => 'Game Misconduct',
1382             'length' => '10',
1383             'id' => 143,
1384             'location' => 'Unk',
1385             'type' => 'PENL',
1386             'description' => '97 ROENICK, Charging (maj), 5 min, Served By 29 FEDORUK',
1387             'old' => 1,
1388             'team2' => 'TOR',
1389             'team1' => 'PHI',
1390             'time' => '07:33',
1391             'player1' => 8459078,
1392             servedby => 8462292,
1393             misconduct => 1,
1394             },
1395             ],
1396             );
1397              
1398             our %MISSING_COACHES = (
1399             198720094 => [
1400             'Terry Simpson',
1401             'John Brophy',
1402             ],
1403             198720190 => [
1404             "Terry O'Reilly",
1405             'Dan Maloney',
1406             ],
1407             198820044 => [
1408             "Terry O'Reilly",
1409             'Pierre Page',
1410             ],
1411             198820695 => [
1412             'George Armstrong',
1413             'Larry Pleau',
1414             ],
1415             199220021 => [
1416             'John Muckler',
1417             'Paul Holmgren',
1418             ],
1419             200220148 => [
1420             'Andy Murray',
1421             'Brian Sutter',
1422             ],
1423             200320732 => [
1424             'Peter Laviolette',
1425             'Bob Hartley',
1426             ],
1427             );
1428              
1429             our %MISSING_PLAYERS = (
1430             192330311 => [
1431             [
1432             {
1433             _id => 8400001,
1434             position => 'G',
1435             decision => 'L',
1436             timeOnIce => '60:00',
1437             name => 'CHARLIE REID',
1438             number => 1,
1439             pim => 0,
1440             goals => 0,
1441             assists => 0,
1442             },
1443             ],
1444             [],
1445             ],
1446             192330312 => [
1447             [
1448             {
1449             _id => 8400001,
1450             position => 'G',
1451             decision => 'L',
1452             timeOnIce => '60:00',
1453             name => 'CHARLIE REID',
1454             number => 1,
1455             pim => 0,
1456             goals => 0,
1457             assists => 0,
1458             },
1459             ],
1460             [],
1461             ],
1462             199920450 => [
1463             [
1464             {
1465             _id => 8459457,
1466             number => 15,
1467             position => 'L',
1468             timeOnIce => '00:27',
1469             name => 'JAMIE LANGENBRUNNER',
1470             penaltyMinutes => 0,
1471             goals => 0,
1472             assists => 0,
1473             missing => 1,
1474             }
1475             ],
1476             [],
1477             ],
1478             );
1479              
1480             our %MISSING_PLAYER_INFO = (
1481             8452484 => {
1482             height => q{5' 11"},
1483             weight => 175,
1484             },
1485             8462118 => {
1486             number => 10,
1487             },
1488             8452019 => {
1489             number => 18,
1490             },
1491             8459424 => {
1492             number => 44,
1493             },
1494             8470615 => {
1495             city => q{Quebec City},
1496             },
1497             );
1498              
1499             =head1 NAME
1500              
1501             Sport::Analytics::NHL::Errors - Hard fixes to errors in the NHL reports
1502              
1503             =head1 SYNOPSYS
1504              
1505             Hard fixes to errors in the NHL reports
1506              
1507             Provides hard-coded corrections to the errors in the NHL reports or marks certain files as broken and unoperatable
1508              
1509             This list shall expand as the release grows.
1510              
1511             use Sport::Analytics::NHL::Errors;
1512             # TBA
1513              
1514             =cut
1515              
1516             1;
1517              
1518             =head1 AUTHOR
1519              
1520             More Hockey Stats, C<< >>
1521              
1522             =head1 BUGS
1523              
1524             Please report any bugs or feature requests to C, or through
1525             the web interface at L. I will be notified, and then you'll
1526             automatically be notified of progress on your bug as I make changes.
1527              
1528              
1529             =head1 SUPPORT
1530              
1531             You can find documentation for this module with the perldoc command.
1532              
1533             perldoc Sport::Analytics::NHL::Errors
1534              
1535              
1536             You can also look for information at:
1537              
1538             =over 4
1539              
1540             =item * RT: CPAN's request tracker (report bugs here)
1541              
1542             L
1543              
1544             =item * AnnoCPAN: Annotated CPAN documentation
1545              
1546             L
1547              
1548             =item * CPAN Ratings
1549              
1550             L
1551              
1552             =item * Search CPAN
1553              
1554             L
1555              
1556             =back
1557