CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HFFibreFiducial.cc
Go to the documentation of this file.
3 
4 #include "CLHEP/Units/GlobalPhysicalConstants.h"
5 #include "CLHEP/Units/GlobalSystemOfUnits.h"
6 #include<iostream>
7 
8 //#define DebugLog
9 //#define mkodebug
10 
11 int HFFibreFiducial::PMTNumber(G4ThreeVector pe_effect)
12 {
13 #ifdef mkodebug
14  static double mX=0.;
15  static double mY=0.;
16  static double mZ=0.;
17 #endif
18  double xv = pe_effect.x(); // X in global system
19  double yv = pe_effect.y(); // Y in global system
20 #ifdef DebugLog
21  double zv = pe_effect.z(); // Z in global system
22 #endif
23  double phi = atan2(yv, xv); // In global system
24  if (phi < 0.) phi+=CLHEP::pi; // Just for security
25  double dph = CLHEP::pi/18; // 10 deg = a half sector width
26  double sph = dph+dph; // 20 deg = a sector width
27  int nphi = phi/dph; // 10 deg sector #
28 #ifdef DebugLog
29  edm::LogInfo("HFShower") <<"HFFibreFiducial:***> P = " << pe_effect
30  << ", phi = " << phi/CLHEP::deg;
31 #endif
32  if (nphi > 35) nphi=35; // Just for security
33  double xl=0.; // local sector coordinates (left/right)
34  double yl=0.; // local sector coordinates (down/up)
35  int nwid=0; // CMS widget number (@@ not used now M.K.)
36  double phir= 0.; // phi for rotation to the sector system
37  if (nphi==0 || nphi==35)
38  {
39  yl=xv;
40  xl=yv;
41  nwid=6;
42  }
43  else if (nphi==17 || nphi==18)
44  {
45  yl=-xv;
46  xl=-yv;
47  nwid=15;
48  phir=CLHEP::pi; // nr=9 ?
49  }
50  else
51  {
52  int nr = (nphi+1)/2; // a sector # (@@ internal definition)
53  nwid = 6-nr;
54  if(nwid <= 0) nwid+=18; // @@ +z || -z M.K. to be improved
55  phir= sph*nr; // nontrivial phi for rotation to the sector system
56  double cosr= cos(phir);
57  double sinr= sin(phir);
58  yl= xv*cosr+yv*sinr;
59  xl= yv*cosr-xv*sinr;
60 #ifdef DebugLog
61  edm::LogInfo("HFShower") << "HFFibreFiducial: nr " << nr << " phi " << phir/CLHEP::deg;
62 #endif
63  }
64  if (yl < 0) yl =-yl;
65 #ifdef DebugLog
66  edm::LogInfo("HFShower") << "HFFibreFiducial: Global Point " << pe_effect
67  << " nphi " << nphi << " Local Sector Coordinates ("
68  << xl << ", " << yl << "), widget # " << nwid;
69 #endif
70  // Provides a PMT # for the (x,y) hit in the widget # nwid (M. Kosov, 11.2010)
71  // Send comments/questions to Mikhail.Kossov@cern.ch
72  // nwid = 1-18 for Forward HF, 19-36 for Backward HF (all equal now)
73  // npmt = 0 for No Hit, 1-24 for H(Long) PMT, 25-48 for E(Short) PMT, negative for souces
74 
75  static const int nWidM=36;
76  if (nwid > nWidM || nwid <= 0)
77  {
78 #ifdef DebugLog
79  edm::LogInfo("HFShower") << "-Warning-HFFibreFiducial::PMTNumber: "
80  << nwid << " == wrong widget number";
81 #endif
82  return 0;
83  }
84  static const double yMin= 13.1*CLHEP::cm; // start of the active area (Conv to mm?)
85  static const double yMax=129.6*CLHEP::cm; // finish of the active area (Conv to mm?)
86  if( yl < yMin || yl >= yMax )
87  {
88 #ifdef DebugLog
89  edm::LogInfo("HFShower") << "-Warning-HFFibreFiducial::PMTNumber: Point "
90  << "with y = " << yl << " outside acceptance ["
91  << yMin << ":" << yMax << "], X = " << xv
92  << ", Y = " << yv << ", x = " << xl << ", nW = "
93  << nwid << ", phi = " << phi/CLHEP::deg
94  << ", phir = " << phir/CLHEP::deg;
95 #endif
96  return 0; // ===> out of the acceptance
97  }
98  bool left=true; // flag of the left part of the widget
99  double r=xl/yl; // for the widget acceptance check
100  if (r < 0)
101  {
102  r=-r;
103  left=false;
104  }
105  static const double tg10=.17632698070847; // phi-angular acceptance of the widget
106  if (r > tg10)
107  {
108 #ifdef DebugLog
109  edm::LogInfo("HFShower") << "-Warning-HFFibreFiducial::PMTNumber: (x = "
110  << xl << ", y = " << yl << ", tg = " << r
111  << ") out of the widget acceptance tg(10) " << tg10;
112 #endif
113  return 0;
114  }
115 
116  static const int nLay=233; // a # of the sensetive layers in the widget
117  static const int nL001=4;
118  static const int nL002=4;
119  static const int nL003=5;
120  static const int nL004=5;
121  static const int nL005=5; // (5)
122  static const int nL006=5;
123  static const int nL007=5;
124  static const int nL008=6;
125  static const int nL009=6;
126  static const int nL010=6; // (6)
127  static const int nL011=6;
128  static const int nL012=6;
129  static const int nL013=6;
130  static const int nL014=7;
131  static const int nL015=7;
132  static const int nL016=7; // (6)
133  static const int nL017=7;
134  static const int nL018=7;
135  static const int nL019=7;
136  static const int nL020=8;
137  static const int nL021=8;
138  static const int nL022=8; // (5)
139  static const int nL023=8;
140  static const int nL024=8;
141  static const int nL025=9;
142  static const int nL026=9;
143  static const int nL027=9; // (6)
144  static const int nL028=9;
145  static const int nL029=9;
146  static const int nL030=9;
147  static const int nL031=10;
148  static const int nL032=10;
149  static const int nL033=10; // (6)
150  static const int nL034=10;
151  static const int nL035=10;
152  static const int nL036=10;
153  static const int nL037=11;
154  static const int nL038=11; // (5)
155  static const int nL039=11;
156  static const int nL040=11;
157  static const int nL041=11;
158  static const int nL042=12;
159  static const int nL043=12;
160  static const int nL044=12;
161  static const int nL045=12; // (6)
162  static const int nL046=12;
163  static const int nL047=12;
164  static const int nL048=13;
165  static const int nL049=13;
166  static const int nL050=13; // (6)
167  static const int nL051=13;
168  static const int nL052=13;
169  static const int nL053=13;
170  static const int nL054=14;
171  static const int nL055=14;
172  static const int nL056=14; // (5)
173  static const int nL057=14;
174  static const int nL058=14;
175  static const int nL059=15;
176  static const int nL060=15;
177  static const int nL061=15; // (6)
178  static const int nL062=15;
179  static const int nL063=15;
180  static const int nL064=15;
181  static const int nL065=16;
182  static const int nL066=16;
183  static const int nL067=16; // (6)
184  static const int nL068=16;
185  static const int nL069=16;
186  static const int nL070=16;
187  static const int nL071=17;
188  static const int nL072=17;
189  static const int nL073=17; // (5)
190  static const int nL074=17;
191  static const int nL075=17;
192  static const int nL076=18;
193  static const int nL077=18;
194  static const int nL078=18; // (6)
195  static const int nL079=18;
196  static const int nL080=18;
197  static const int nL081=18;
198  static const int nL082=19;
199  static const int nL083=19; // (6)
200  static const int nL084=19;
201  static const int nL085=19;
202  static const int nL086=19;
203  static const int nL087=19;
204  static const int nL088=20;
205  static const int nL089=20;
206  static const int nL090=20; // (5)
207  static const int nL091=20;
208  static const int nL092=20;
209  static const int nL093=21;
210  static const int nL094=21;
211  static const int nL095=21; // (6)
212  static const int nL096=21;
213  static const int nL097=21;
214  static const int nL098=21;
215  static const int nL099=22;
216  static const int nL100=22;
217  static const int nL101=22; // (6)
218  static const int nL102=22;
219  static const int nL103=22;
220  static const int nL104=22;
221  static const int nL105=23;
222  static const int nL106=23;
223  static const int nL107=23; // (5)
224  static const int nL108=23;
225  static const int nL109=23;
226  static const int nL110=24;
227  static const int nL111=24;
228  static const int nL112=24; // (6)
229  static const int nL113=24;
230  static const int nL114=24;
231  static const int nL115=24;
232  static const int nL116=25;
233  static const int nL117=25;
234  static const int nL118=25; // (6)
235  static const int nL119=25;
236  static const int nL120=25;
237  static const int nL121=25;
238  static const int nL122=26;
239  static const int nL123=26;
240  static const int nL124=26; // (5)
241  static const int nL125=26;
242  static const int nL126=26;
243  static const int nL127=27;
244  static const int nL128=27;
245  static const int nL129=27; // (6)
246  static const int nL130=27;
247  static const int nL131=27;
248  static const int nL132=27;
249  static const int nL133=28;
250  static const int nL134=28;
251  static const int nL135=28; // (6)
252  static const int nL136=28;
253  static const int nL137=28;
254  static const int nL138=28;
255  static const int nL139=29;
256  static const int nL140=29;
257  static const int nL141=29; // (5)
258  static const int nL142=29;
259  static const int nL143=29;
260  static const int nL144=30;
261  static const int nL145=30;
262  static const int nL146=30; // (6)
263  static const int nL147=30;
264  static const int nL148=30;
265  static const int nL149=30;
266  static const int nL150=31;
267  static const int nL151=31;
268  static const int nL152=31; // (6)
269  static const int nL153=31;
270  static const int nL154=31;
271  static const int nL155=31;
272  static const int nL156=32;
273  static const int nL157=32; // (5)
274  static const int nL158=32;
275  static const int nL159=32;
276  static const int nL160=32;
277  static const int nL161=33;
278  static const int nL162=33; // (6)
279  static const int nL163=33;
280  static const int nL164=33;
281  static const int nL165=33;
282  static const int nL166=33;
283  static const int nL167=34;
284  static const int nL168=34;
285  static const int nL169=34; // (6)
286  static const int nL170=34;
287  static const int nL171=34;
288  static const int nL172=34;
289  static const int nL173=35;
290  static const int nL174=35;
291  static const int nL175=35; // (5)
292  static const int nL176=35;
293  static const int nL177=35;
294  static const int nL178=36;
295  static const int nL179=36;
296  static const int nL180=36; // (6)
297  static const int nL181=36;
298  static const int nL182=36;
299  static const int nL183=36;
300  static const int nL184=37;
301  static const int nL185=37;
302  static const int nL186=37; // (6)
303  static const int nL187=37;
304  static const int nL188=37;
305  static const int nL189=37;
306  static const int nL190=38;
307  static const int nL191=38;
308  static const int nL192=38; // (5)
309  static const int nL193=38;
310  static const int nL194=38;
311  static const int nL195=39;
312  static const int nL196=39;
313  static const int nL197=39;
314  static const int nL198=39; // (6)
315  static const int nL199=39;
316  static const int nL200=39;
317  static const int nL201=40;
318  static const int nL202=40;
319  static const int nL203=40; // (6)
320  static const int nL204=40;
321  static const int nL205=40;
322  static const int nL206=40;
323  static const int nL207=41;
324  static const int nL208=41;
325  static const int nL209=41; // (5)
326  static const int nL210=41;
327  static const int nL211=41;
328  static const int nL212=42;
329  static const int nL213=42;
330  static const int nL214=42;
331  static const int nL215=42; // (6)
332  static const int nL216=42;
333  static const int nL217=42;
334  static const int nL218=43;
335  static const int nL219=43;
336  static const int nL220=43; // (6)
337  static const int nL221=43;
338  static const int nL222=43;
339  static const int nL223=43;
340  static const int nL224=44;
341  static const int nL225=44;
342  static const int nL226=44; // (5)
343  static const int nL227=44;
344  static const int nL228=44;
345  static const int nL229=45;
346  static const int nL230=45;
347  static const int nL231=45; // (5+1=6)
348  static const int nL232=45;
349  static const int nL233=45;
350  //------------------------------------------------------------------------------------
351  // Mean numbers of fibers in the layer is used. In some widgets it's bigger ***
352  // (if the fiber passed throug the hole closer to the edge) and sometimes it ***
353  // is smaller (if in some holes of the layer fibers did not pass throug). ***
354  // The real presence of fibers in the holes is now unknown (not documented), ***
355  // but the narrow electron showers can be used for revealing of the missing ***
356  // or additional fibers in the widget, because the missing fibers reduce the ***
357  // response and additional fibers increas it. So the tables can be improved ***
358  // to be individual for widgets and the FXX/BXX sources-tables can be used. ***
359  // ********************** M.Kosov, Mikhail.Kosssov@cern.ch *********************
360  // NNI, NN=tower#(1-24), i=0: dead; i=1: E(L); i=2: H(S); i=3: ESource; i=4: HSource
361  static const int tR001[nL001]={132,131,132,131}; // Left Part of the widget (-phi)
362  static const int tR002[nL002]={131,132,131,132};
363  static const int tR003[nL003]={132,131,132,131,132};
364  static const int tR004[nL004]={133,132,131,132,131}; // (5)
365  static const int tR005[nL005]={132,131,132,131,132};
366  static const int tR006[nL006]={131,132,131,132,131};
367  static const int tR007[nL007]={132,131,132,131,132};
368  static const int tR008[nL008]={131,132,131,132,131,132}; // _______________________13_
369  static const int tR009[nL009]={122,121,122,121,122,121};
370  static const int tR010[nL010]={121,122,121,122,123,122}; // (6) (A)
371  static const int tR011[nL011]={122,121,122,121,122,121};
372  static const int tR012[nL012]={121,122,121,122,121,122};
373  static const int tR013[nL013]={122,121,122,121,122,121};
374  static const int tR014[nL014]={121,122,121,122,121,122,121}; //____________________12_
375  static const int tR015[nL015]={122,121,242,241,242,241,242}; // (6)
376  static const int tR016[nL016]={241,242,241,242,241,242,241};
377  static const int tR017[nL017]={242,241,242,241,242,241,242};
378  static const int tR018[nL018]={241,242,241,242,243,242,241};
379  static const int tR019[nL019]={242,241,242,241,242,241,242};
380  static const int tR020[nL020]={241,242,241,242,241,242,241,242};
381  static const int tR021[nL021]={242,241,242,241,242,241,242,241}; // (5)
382  static const int tR022[nL022]={241,242,241,242,241,242,241,242}; //________________24_
383  static const int tR023[nL023]={232,231,232,231,232,231,232,231};
384  static const int tR024[nL024]={231,232,231,232,231,232,231,232};
385  static const int tR025[nL025]={232,231,232,231,232,231,232,231,232};
386  static const int tR026[nL026]={231,232,231,232,233,232,231,232,231};
387  static const int tR027[nL027]={232,231,232,231,232,231,232,231,232}; // (6)
388  static const int tR028[nL028]={231,232,231,232,231,232,231,232,231};
389  static const int tR029[nL029]={232,231,232,231,232,231,232,231,232};
390  static const int tR030[nL030]={231,232,231,232,231,232,231,232,231};
391  static const int tR031[nL031]={232,231,232,231,232,231,232,231,232,231}; //________23_
392  static const int tR032[nL032]={231,232,231,222,221,222,221,222,221,222};
393  static const int tR033[nL033]={222,221,222,221,222,221,222,221,222,221}; // (6)
394  static const int tR034[nL034]={221,222,221,222,221,222,221,222,221,222};
395  static const int tR035[nL035]={222,221,222,221,222,221,222,221,222,221};
396  static const int tR036[nL036]={221,222,221,222,223,222,221,222,221,222};
397  static const int tR037[nL037]={222,221,222,221,222,221,222,221,222,221,222};
398  static const int tR038[nL038]={221,222,221,222,221,222,221,222,221,222,221};
399  static const int tR039[nL039]={222,221,222,221,222,221,222,221,222,221,222}; // (5)
400  static const int tR040[nL040]={221,222,221,222,221,222,221,222,221,222,221};//_____22_
401  static const int tR041[nL041]={212,211,212,211,212,211,212,211,212,211,212};
402  static const int tR042[nL042]={211,212,211,212,211,212,211,212,211,212,211,212};
403  static const int tR043[nL043]={212,211,212,211,212,211,212,211,212,211,212,211};
404  static const int tR044[nL044]={211,212,211,212,211,212,211,212,211,212,211,212};
405  static const int tR045[nL045]={212,211,212,211,212,211,212,211,212,211,212,211};//(6)
406  static const int tR046[nL046]={211,212,211,212,211,212,211,212,211,212,211,212};
407  static const int tR047[nL047]={212,211,212,211,212,211,212,211,212,211,212,211};
408  static const int tR048[nL048]={211,212,211,212,211,212,211,214,211,212,211,212,211};
409  static const int tR049[nL049]={212,211,212,211,212,211,212,211,212,211,212,211,212};
410  static const int tR050[nL050]={211,212,211,212,211,212,211,212,211,212,211,212,211};
411  static const int tR051[nL051]={212,211,212,211,212,211,212,211,212,211,212,211,212};//(6)
412  static const int tR052[nL052]={211,212,211,212,211,212,211,212,211,212,211,212,211};
413  static const int tR053[nL053]={212,211,212,211,212,211,212,211,212,211,212,211,212};
414  static const int tR054[nL054]={211,212,211,212,211,212,211,212,211,212,211,212,211,212};
415  static const int tR055[nL055]={212,211,212,211,212,211,212,211,212,211,212,211,212,211};
416  // _______________________________________________________________________________21_ (5)
417  static const int tR056[nL056]={211,212,211,202,201,202,201,202,201,202,201,202,201,202};
418  static const int tR057[nL057]={202,201,202,201,202,201,202,201,202,201,202,201,202,201};
419  static const int tR058[nL058]={201,202,201,202,201,202,201,202,201,202,201,202,201,202};
420  static const int tR059[nL059]={202,201,202,201,202,201,202,201,202,201,202,201,202,201,
421  202};
422  static const int tR060[nL060]={201,202,201,202,201,202,201,202,201,202,201,202,201,202,
423  201};
424  static const int tR061[nL061]={202,201,202,201,202,201,202,201,202,201,202,201,202,201,
425  202}; // (6)
426  static const int tR062[nL062]={201,202,201,202,201,202,201,204,201,202,201,202,201,202,
427  201};
428  static const int tR063[nL063]={202,201,202,201,202,201,202,201,202,201,202,201,202,201,
429  202};
430  static const int tR064[nL064]={201,202,201,202,201,202,201,202,201,202,201,202,201,202,
431  201};
432  static const int tR065[nL065]={202,201,202,201,202,201,202,201,202,201,202,201,202,201,
433  202,201};
434  static const int tR066[nL066]={201,202,201,202,201,202,201,202,201,202,201,202,201,202,
435  201,202}; // (6)
436  static const int tR067[nL067]={202,201,202,201,202,201,202,201,202,201,202,201,202,201,
437  202,201};
438  static const int tR068[nL068]={201,202,201,202,201,202,201,202,201,202,201,202,201,202,
439  201,202};
440  static const int tR069[nL069]={202,201,202,201,202,201,202,201,202,201,202,201,202,201,
441  202,201};
442  static const int tR070[nL070]={201,202,201,202,201,202,201,202,201,202,201,202,201,202,
443  201,202};
444  static const int tR071[nL071]={202,201,202,201,202,201,202,201,202,201,192,191,192,191,
445  192,191,192}; // ___________________________________20_
446  static const int tR072[nL072]={191,192,191,192,191,192,191,192,191,192,191,192,191,192,
447  191,192,191};
448  static const int tR073[nL073]={192,191,192,191,192,191,192,191,192,191,192,191,192,191,
449  192,191,192}; // (5)
450  static const int tR074[nL074]={191,192,191,192,191,192,191,192,191,192,191,192,191,192,
451  191,192,191};
452  static const int tR075[nL075]={192,191,192,191,192,191,192,191,192,191,192,191,192,191,
453  192,191,192};
454  static const int tR076[nL076]={191,192,191,192,191,192,191,192,191,192,191,192,191,192,
455  191,192,191,192};
456  static const int tR077[nL077]={192,191,192,191,192,191,192,191,192,191,192,191,192,191,
457  192,191,192,191};
458  static const int tR078[nL078]={191,192,191,192,191,192,191,192,191,192,191,192,191,192,
459  191,192,191,192}; // (6)
460  static const int tR079[nL079]={192,191,192,191,192,191,192,191,192,191,192,191,192,191,
461  192,191,192,191};
462  static const int tR080[nL080]={191,192,191,192,191,192,191,194,191,192,191,192,191,192,
463  191,192,191,192};
464  static const int tR081[nL081]={192,191,192,191,192,191,192,191,192,191,192,191,192,191,
465  192,191,192,191};
466  static const int tR082[nL082]={191,192,191,192,191,192,191,192,191,192,191,192,191,192,
467  191,192,191,192,191};
468  static const int tR083[nL083]={192,191,192,191,192,191,192,191,192,191,192,191,192,191,
469  192,191,192,191,192};
470  static const int tR084[nL084]={191,192,191,192,191,192,191,192,191,192,191,192,191,192,
471  191,192,191,192,191}; // (6)
472  static const int tR085[nL085]={192,191,192,191,192,191,192,191,192,191,192,191,192,191,
473  192,191,192,191,192};
474  static const int tR086[nL086]={191,192,191,192,191,192,191,192,191,192,191,192,191,192,
475  191,192,191,192,191};
476  static const int tR087[nL087]={192,191,192,191,192,191,192,191,192,191,192,191,192,191,
477  192,191,192,191,192};
478  static const int tR088[nL088]={191,192,191,192,191,192,191,192,191,192,191,192,191,192,
479  191,192,181,182,181,182}; // _______________________19_
480  // ------------------------------------------------------------------------------------
481  static const int tR089[nL089]={192,191,192,191,182,181,182,181,182,181,182,181,182,181,
482  182,181,182,181,182,181}; // (5)
483  static const int tR090[nL090]={181,182,181,182,181,182,181,182,181,182,181,182,181,182,
484  181,182,181,182,181,182};
485  static const int tR091[nL091]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
486  182,181,182,181,182,181};
487  static const int tR092[nL092]={181,182,181,182,181,182,181,182,181,182,181,182,181,182,
488  181,182,181,182,181,182};
489  static const int tR093[nL093]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
490  182,181,182,181,182,181,182};
491  static const int tR094[nL094]={181,182,181,182,181,182,181,182,181,182,181,182,181,182,
492  181,182,181,182,181,182,181};
493  static const int tR095[nL095]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
494  182,181,182,181,182,181,182}; // (6)
495  static const int tR096[nL096]={181,182,181,182,181,182,181,182,181,182,181,182,181,182,
496  181,182,181,182,181,182,181};
497  static const int tR097[nL097]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
498  182,181,182,181,182,181,182};
499  static const int tR098[nL098]={181,182,181,182,181,182,181,182,181,182,181,182,181,182,
500  181,182,181,182,181,182,181};
501  static const int tR099[nL099]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
502  182,181,182,181,182,181,182,181};
503  static const int tR100[nL100]={181,182,181,182,181,182,181,182,181,182,181,182,183,182,
504  181,182,181,182,181,182,181,182}; // (6)
505  static const int tR101[nL101]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
506  182,181,182,181,182,181,182,181};
507  static const int tR102[nL102]={181,182,181,182,181,182,181,182,181,182,181,182,181,182,
508  181,182,181,182,181,182,181,182};
509  static const int tR103[nL103]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
510  182,181,182,181,182,181,182,181};
511  static const int tR104[nL104]={181,182,181,182,181,182,181,182,181,182,181,182,181,182,
512  181,182,181,182,181,182,181,182};
513  static const int tR105[nL105]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
514  182,181,182,181,182,181,182,181,182};
515  static const int tR106[nL106]={181,182,181,182,181,182,181,182,181,182,181,182,181,182,
516  181,182,181,182,181,182,181,182,181};
517  static const int tR107[nL107]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
518  182,181,182,181,182,181,182,181,182}; // (5)
519  static const int tR108[nL108]={181,182,181,182,181,182,181,182,181,182,181,182,181,182,
520  181,182,181,182,181,182,181,182,181};
521  static const int tR109[nL109]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
522  182,181,182,181,182,181,182,181,182};
523  static const int tR110[nL110]={181,182,181,182,181,182,181,182,181,182,181,182,181,182,
524  181,182,181,182,181,182,181,182,181,182};
525  static const int tR111[nL111]={182,181,182,181,182,181,182,181,182,181,182,181,182,181,
526  182,181,182,171,172,171,172,171,172,171}; // _________4_
527  static const int tR112[nL112]={181,182,181,182,171,172,171,172,171,172,171,172,171,172,
528  171,172,171,172,171,172,171,172,171,172}; // (6)
529  static const int tR113[nL113]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
530  172,171,172,171,172,171,172,171,172,171};
531  static const int tR114[nL114]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
532  171,172,171,172,171,172,171,172,171,172};
533  static const int tR115[nL115]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
534  172,171,172,171,172,171,172,171,172,171};
535  static const int tR116[nL116]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
536  171,172,171,172,171,172,171,172,171,172,171};
537  static const int tR117[nL117]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
538  172,171,172,171,172,171,172,171,172,171,172};
539  static const int tR118[nL118]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
540  171,172,171,172,171,172,171,172,171,172,171};
541  static const int tR119[nL119]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
542  172,171,172,171,172,171,172,171,172,171,172}; // (6)
543  static const int tR120[nL120]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
544  171,172,171,172,171,172,171,172,171,172,171};
545  static const int tR121[nL121]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
546  172,171,172,171,172,171,172,171,172,171,172};
547  static const int tR122[nL122]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
548  171,172,171,172,171,172,171,172,171,172,171,172};
549  static const int tR123[nL123]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
550  172,171,172,171,172,171,172,171,172,171,172,171};
551  static const int tR124[nL124]={171,172,171,172,171,172,171,172,171,172,171,172,173,172,
552  171,172,171,172,171,172,171,172,171,172,171,172};// (5)
553  static const int tR125[nL125]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
554  172,171,172,171,172,171,172,171,172,171,172,171};
555  static const int tR126[nL126]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
556  171,172,171,172,171,172,171,172,171,172,171,172};
557  static const int tR127[nL127]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
558  172,171,172,171,172,171,172,171,172,171,172,171,172};
559  static const int tR128[nL128]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
560  171,172,171,172,171,172,171,172,171,172,171,172,171};
561  static const int tR129[nL129]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
562  172,171,172,171,172,171,172,171,172,171,172,171,172};
563  static const int tR130[nL130]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
564  171,172,171,172,171,172,171,172,171,172,171,172,171};//(6)
565  static const int tR131[nL131]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
566  172,171,172,171,172,171,172,171,172,171,172,171,172};
567  static const int tR132[nL132]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
568  171,172,171,172,171,172,171,172,171,172,171,172,171};
569  static const int tR133[nL133]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
570  172,171,172,171,172,171,172,171,172,171,172,171,172,171};
571  static const int tR134[nL134]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
572  171,172,171,172,171,172,171,172,171,172,171,172,171,172};
573  static const int tR135[nL135]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
574  172,171,172,171,172,171,172,171,172,171,172,171,172,171};
575  static const int tR136[nL136]={171,172,171,172,171,172,171,172,171,172,171,172,171,172,
576  171,172,171,172,171,172,171,172,171,172,171,172,171,172};
577  static const int tR137[nL137]={172,171,172,171,172,171,172,171,172,171,172,171,172,171,
578  172,171,172,171,172,171,172,171,162,161,162,161,162,161};
579  // ____________________________________________________________________________(6)___3_
580  static const int tR138[nL138]={171,172,171,172,171,172,171,172,171,172,171,172,161,162,
581  161,162,161,162,161,162,161,162,161,162,161,162,161,162};
582  static const int tR139[nL139]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
583  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
584  162};
585  static const int tR140[nL140]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
586  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
587  161};
588  static const int tR141[nL141]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
589  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
590  162}; // (5)
591  static const int tR142[nL142]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
592  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
593  161};
594  static const int tR143[nL143]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
595  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
596  162};
597  static const int tR144[nL144]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
598  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
599  161,162};
600  static const int tR145[nL145]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
601  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
602  162,161};
603  static const int tR146[nL146]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
604  161,162,163,162,161,162,161,162,161,162,161,162,161,162,
605  161,162};
606  static const int tR147[nL147]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
607  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
608  162,161}; // (6)
609  static const int tR148[nL148]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
610  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
611  161,162};
612  static const int tR149[nL149]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
613  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
614  162,161};
615  static const int tR150[nL150]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
616  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
617  161,162,161};
618  static const int tR151[nL151]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
619  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
620  162,161,162};
621  static const int tR152[nL152]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
622  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
623  161,162,161}; // (6)
624  static const int tR153[nL153]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
625  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
626  162,161,162};
627  static const int tR154[nL154]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
628  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
629  161,162,161};
630  static const int tR155[nL155]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
631  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
632  162,161,162};
633  static const int tR156[nL156]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
634  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
635  161,162,161,162};
636  static const int tR157[nL157]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
637  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
638  162,161,162,161};
639  static const int tR158[nL158]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
640  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
641  161,162,161,162}; // (5)
642  static const int tR159[nL159]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
643  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
644  162,161,162,161};
645  static const int tR160[nL160]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
646  161,162,163,162,161,162,161,162,161,162,161,162,161,162,
647  161,162,161,162};
648  static const int tR161[nL161]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
649  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
650  162,161,162,161,162};
651  static const int tR162[nL162]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
652  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
653  161,162,161,162,161};
654  static const int tR163[nL163]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
655  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
656  162,161,162,161,162}; // (6)
657  static const int tR164[nL164]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
658  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
659  161,162,161,162,161};
660  static const int tR165[nL165]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
661  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
662  162,161,162,161,162};
663  static const int tR166[nL166]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
664  161,162,161,162,161,162,161,162,161,162,161,162,161,162,
665  161,162,161,162,161};
666  static const int tR167[nL167]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
667  162,161,162,161,162,161,162,161,162,161,162,161,162,161,
668  162,161,162,161,162,161};
669  static const int tR168[nL168]={161,162,161,162,161,162,161,162,161,162,161,162,161,162,
670  161,162,161,162,161,162,161,162,161,162,161,162,161,152,
671  151,152,151,152,151,152}; // _________________________2_
672  static const int tR169[nL169]={162,161,162,161,162,161,162,161,162,161,162,161,162,161,
673  162,161,162,161,152,151,152,151,152,151,152,151,152,151,
674  152,151,152,151,152,151}; // (6)
675  static const int tR170[nL170]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
676  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
677  151,152,151,152,151,152};
678  static const int tR171[nL171]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
679  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
680  152,151,152,151,152,151};
681  static const int tR172[nL172]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
682  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
683  151,152,151,152,151,152};
684  static const int tR173[nL173]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
685  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
686  152,151,152,151,152,151,152};
687  static const int tR174[nL174]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
688  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
689  151,152,151,152,151,152,151};
690  static const int tR175[nL175]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
691  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
692  152,151,152,151,152,151,152}; // (5)
693  static const int tR176[nL176]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
694  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
695  151,152,151,152,151,152,151};
696  static const int tR177[nL177]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
697  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
698  152,151,152,151,152,151,152};
699  static const int tR178[nL178]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
700  151,152,153,152,151,152,151,152,151,152,151,152,151,152,
701  151,152,151,152,151,152,151,152};
702  static const int tR179[nL179]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
703  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
704  152,151,152,151,152,151,152,151};
705  static const int tR180[nL180]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
706  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
707  151,152,151,152,151,152,151,152}; // (6)
708  static const int tR181[nL181]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
709  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
710  152,151,152,151,152,151,152,151};
711  static const int tR182[nL182]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
712  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
713  151,152,151,152,151,152,151,152};
714  static const int tR183[nL183]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
715  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
716  152,151,152,151,152,151,152,151};
717  static const int tR184[nL184]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
718  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
719  151,152,151,152,151,152,151,152,151};
720  static const int tR185[nL185]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
721  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
722  152,151,152,151,152,151,152,151,152};
723  static const int tR186[nL186]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
724  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
725  151,152,151,152,151,152,151,152,151};
726  static const int tR187[nL187]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
727  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
728  152,151,152,151,152,151,152,151,152}; // (6)
729  static const int tR188[nL188]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
730  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
731  151,152,151,152,151,152,151,152,151};
732  static const int tR189[nL189]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
733  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
734  152,151,152,151,152,151,152,151,152};
735  static const int tR190[nL190]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
736  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
737  151,152,151,152,151,152,151,152,151,152};
738  static const int tR191[nL191]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
739  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
740  152,151,152,151,152,151,152,151,152,151};
741  static const int tR192[nL192]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
742  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
743  151,152,151,152,151,152,151,152,151,152}; // (5)
744  static const int tR193[nL193]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
745  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
746  152,151,152,151,152,151,152,151,152,151};
747  static const int tR194[nL194]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
748  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
749  151,152,151,152,151,152,151,152,151,152};
750  static const int tR195[nL195]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
751  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
752  152,151,152,151,152,151,152,151,152,151,152};
753  static const int tR196[nL196]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
754  151,152,151,152,151,152,153,152,151,152,151,152,151,152,
755  151,152,151,152,151,152,151,152,151,152,151};
756  static const int tR197[nL197]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
757  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
758  152,151,152,151,152,151,152,151,152,151,152}; // (6)
759  static const int tR198[nL198]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
760  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
761  151,152,151,152,151,152,151,152,151,152,151};
762  static const int tR199[nL199]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
763  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
764  152,151,152,151,152,151,152,151,152,151,152};
765  static const int tR200[nL200]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
766  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
767  151,152,151,152,151,152,151,152,151,152,151};
768  static const int tR201[nL201]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
769  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
770  152,151,152,151,152,151,152,151,152,151,152,151};
771  static const int tR202[nL202]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
772  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
773  151,152,151,152,151,152,151,152,151,152,151,152};
774  static const int tR203[nL203]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
775  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
776  152,151,152,151,152,151,152,151,152,151,152,151}; //(6)
777  static const int tR204[nL204]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
778  151,152,151,152,151,152,151,152,151,152,151,152,151,152,
779  151,152,151,152,151,152,151,152,151,152,151,152};
780  static const int tR205[nL205]={152,151,152,151,152,151,152,151,152,151,152,151,152,151,
781  152,151,152,151,152,151,152,151,152,151,152,151,152,151,
782  152,151,152,151,142,141,142,141,142,141,142,141};
783  static const int tR206[nL206]={151,152,151,152,151,152,151,152,151,152,151,152,151,152,
784  151,152,151,152,151,152,151,152,151,152,141,142,141,142,
785  141,142,141,142,141,142,141,142,141,142,141,142};//__1_
786  static const int tR207[nL207]={152,151,152,151,152,151,152,151,152,151,152,141,142,141,
787  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
788  142,141,142,141,142,141,142,141,142,141,142,141,142};
789  static const int tR208[nL208]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
790  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
791  141,142,141,142,141,142,141,142,141,142,141,142,141};
792  static const int tR209[nL209]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
793  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
794  142,141,142,141,142,141,142,141,142,141,142,141,142};//(5)
795  static const int tR210[nL210]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
796  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
797  141,142,141,142,141,142,141,142,141,142,141,142,141};
798  static const int tR211[nL211]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
799  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
800  142,141,142,141,142,141,142,141,142,141,142,141,142};
801  static const int tR212[nL212]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
802  141,142,141,142,141,142,143,142,141,142,141,142,141,142,
803  141,142,141,142,141,142,141,142,141,142,141,142,141,142};
804  static const int tR213[nL213]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
805  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
806  142,141,142,141,142,141,142,141,142,141,142,141,142,141};
807  static const int tR214[nL214]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
808  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
809  141,142,141,142,141,142,141,142,141,142,141,142,141,142};
810  static const int tR215[nL215]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
811  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
812  142,141,142,141,142,141,142,141,142,141,142,141,142,141};
813  static const int tR216[nL216]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
814  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
815  141,142,141,142,141,142,141,142,141,142,141,142,141,142};
816  static const int tR217[nL217]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
817  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
818  142,141,142,141,142,141,142,141,142,141,142,141,142,141};
819  static const int tR218[nL218]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
820  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
821  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
822  141};
823  static const int tR219[nL219]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
824  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
825  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
826  142};
827  static const int tR220[nL220]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
828  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
829  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
830  141};
831  static const int tR221[nL221]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
832  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
833  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
834  142}; // (6)
835  static const int tR222[nL222]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
836  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
837  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
838  141};
839  static const int tR223[nL223]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
840  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
841  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
842  142};
843  static const int tR224[nL224]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
844  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
845  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
846  141,142};
847  static const int tR225[nL225]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
848  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
849  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
850  142,141};
851  static const int tR226[nL226]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
852  141,142,141,142,141,142,143,142,141,142,141,142,141,142,
853  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
854  141,142}; // (5)
855  static const int tR227[nL227]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
856  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
857  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
858  142,141};
859  static const int tR228[nL228]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
860  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
861  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
862  141,142};
863  static const int tR229[nL229]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
864  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
865  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
866  142,141,142};
867  static const int tR230[nL230]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
868  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
869  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
870  141,142,141};
871  static const int tR231[nL231]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
872  142,141,142,141,142,141,142,141,142,141,142,141,142,141,
873  142,141,142,141,142,141,142,141,142,141,142, 0, 0, 0,
874  0, 0, 0}; // (5+1=6)
875  static const int tR232[nL232]={141,142,141,142,141,142,141,142,141,142,141,142,141,142,
876  141,142,141,142,141,142,141,142,141,142,141,142,141,142,
877  141,142,141,142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
878  0, 0, 0};
879  static const int tR233[nL233]={142,141,142,141,142,141,142,141,142,141,142,141,142,141,
880  142,141,142,141,142,141,142,141, 0, 0, 0, 0, 0, 0,
881  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
882  0, 0, 0};
883  //------------------------------------------------------------------------------------
884  static const int tL001[nL001]={131,132,131,132}; // Left Part of the widget (-phi)
885  static const int tL002[nL002]={132,131,132,131};
886  static const int tL003[nL003]={131,132,131,132,131};
887  static const int tL004[nL004]={132,131,132,131,132}; // (5)
888  static const int tL005[nL005]={131,132,131,132,131};
889  static const int tL006[nL006]={132,131,132,131,132};
890  static const int tL007[nL007]={131,132,131,132,131};
891  static const int tL008[nL008]={132,131,132,131,132,131}; // ______________________13_
892  static const int tL009[nL009]={121,122,121,122,121,122};
893  static const int tL010[nL010]={122,121,122,121,124,121};
894  static const int tL011[nL011]={121,122,121,122,121,122}; // (6) (B)
895  static const int tL012[nL012]={122,121,122,121,122,121};
896  static const int tL013[nL013]={121,122,121,122,121,122};
897  static const int tL014[nL014]={122,121,122,121,122,121,122}; //___________________12_
898  static const int tL015[nL015]={121,122,111,112,111,112,111};
899  static const int tL016[nL016]={112,111,112,111,112,111,112};
900  static const int tL017[nL017]={111,112,111,112,111,112,111}; // (6)
901  static const int tL018[nL018]={112,111,112,111,114,111,112};
902  static const int tL019[nL019]={111,112,111,112,111,112,111};
903  static const int tL020[nL020]={112,111,112,111,112,111,112,111};
904  static const int tL021[nL021]={111,112,111,112,111,112,111,112}; // (5)
905  static const int tL022[nL022]={112,111,112,111,112,111,112,111}; //_______________11_
906  static const int tL023[nL023]={101,102,101,102,101,102,101,102};
907  static const int tL024[nL024]={102,101,102,101,102,101,102,101};
908  static const int tL025[nL025]={101,102,101,102,101,102,101,102,101};
909  static const int tL026[nL026]={102,101,102,101,104,101,102,101,102};
910  static const int tL027[nL027]={101,102,101,102,101,102,101,102,101}; // (6)
911  static const int tL028[nL028]={102,101,102,101,102,101,102,101,102};
912  static const int tL029[nL029]={101,102,101,102,101,102,101,102,101};
913  static const int tL030[nL030]={102,101,102,101,102,101,102,101,102};
914  static const int tL031[nL031]={101,102,101,102,101,102,101,102,101,102}; //_______10_
915  static const int tL032[nL032]={102,101,102, 91, 92, 91, 92, 91, 92, 91};
916  static const int tL033[nL033]={ 91, 92, 91, 92, 91, 92, 91, 92, 91, 92}; // (6)
917  static const int tL034[nL034]={ 92, 91, 92, 91, 92, 91, 92, 91, 92, 91};
918  static const int tL035[nL035]={ 91, 92, 91, 92, 91, 92, 91, 92, 91, 92};
919  static const int tL036[nL036]={ 92, 91, 92, 91, 94, 91, 92, 91, 92, 91};
920  static const int tL037[nL037]={ 91, 92, 91, 92, 91, 92, 91, 92, 91, 92, 91};
921  static const int tL038[nL038]={ 92, 91, 92, 91, 92, 91, 92, 91, 92, 91, 92};
922  static const int tL039[nL039]={ 91, 92, 91, 92, 91, 92, 91, 92, 91, 92, 91}; // (5)
923  static const int tL040[nL040]={ 92, 91, 92, 91, 92, 91, 92, 91, 92, 91, 92};
924  static const int tL041[nL041]={ 91, 92, 91, 92, 91, 92, 91, 92, 91, 92, 91};
925  static const int tL042[nL042]={ 92, 91, 92, 91, 92, 91, 92, 91, 92, 91, 92, 91};//_9_
926  static const int tL043[nL043]={ 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82};
927  static const int tL044[nL044]={ 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81};
928  static const int tL045[nL045]={ 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82};//(6)
929  static const int tL046[nL046]={ 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81};
930  static const int tL047[nL047]={ 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82};
931  static const int tL048[nL048]={ 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82};
932  static const int tL049[nL049]={ 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81};
933  static const int tL050[nL050]={ 82, 81, 82, 81, 82, 81, 82, 81, 84, 81, 82, 81, 82};//(6)
934  static const int tL051[nL051]={ 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81};
935  static const int tL052[nL052]={ 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82};
936  static const int tL053[nL053]={ 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81};
937  static const int tL054[nL054]={ 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81};
938  static const int tL055[nL055]={ 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82, 81, 82};
939  // ________________________________________________________________________________8_ (5)
940  static const int tL056[nL056]={ 82, 81, 82, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71};
941  static const int tL057[nL057]={ 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72};
942  static const int tL058[nL058]={ 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71};
943  static const int tL059[nL059]={ 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72,
944  71};
945  static const int tL060[nL060]={ 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71,
946  72};
947  static const int tL061[nL061]={ 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72,
948  71}; // (6)
949  static const int tL062[nL062]={ 72, 71, 72, 71, 72, 71, 72, 71, 74, 71, 72, 71, 72, 71,
950  71};
951  static const int tL063[nL063]={ 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72,
952  71};
953  static const int tL064[nL064]={ 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71,
954  72};
955  static const int tL065[nL065]={ 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72,
956  71, 72};
957  static const int tL066[nL066]={ 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71,
958  72, 71}; // (6)
959  static const int tL067[nL067]={ 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72,
960  71, 72};
961  static const int tL068[nL068]={ 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71,
962  72, 71};
963  static const int tL069[nL069]={ 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72,
964  71, 72};
965  static const int tL070[nL070]={ 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 71,
966  72, 71};
967  static const int tL071[nL071]={ 71, 72, 71, 72, 71, 72, 71, 72, 71, 72, 61, 62, 61, 62,
968  61, 62, 61}; // _____________________________________7_
969  static const int tL072[nL072]={ 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61,
970  62, 61, 62};
971  static const int tL073[nL073]={ 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62,
972  61, 62, 61}; // (5)
973  static const int tL074[nL074]={ 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61,
974  62, 61, 62};
975  static const int tL075[nL075]={ 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62,
976  61, 62, 61};
977  static const int tL076[nL076]={ 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61,
978  62, 61, 62, 61};
979  static const int tL077[nL077]={ 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62,
980  61, 62, 61, 62};
981  static const int tL078[nL078]={ 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61,
982  62, 61, 62, 61}; // (6)
983  static const int tL079[nL079]={ 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62,
984  61, 62, 61, 62};
985  static const int tL080[nL080]={ 62, 61, 62, 61, 62, 61, 62, 61, 64, 61, 62, 61, 62, 61,
986  62, 61, 62, 61};
987  static const int tL081[nL081]={ 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62,
988  61, 62, 61, 62};
989  static const int tL082[nL082]={ 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61,
990  62, 61, 62, 61, 62};
991  static const int tL083[nL083]={ 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62,
992  61, 62, 61, 62, 61}; // (6)
993  static const int tL084[nL084]={ 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61,
994  62, 61, 62, 61, 62};
995  static const int tL085[nL085]={ 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62,
996  61, 62, 61, 62, 61};
997  static const int tL086[nL086]={ 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61,
998  62, 61, 62, 61, 62};
999  static const int tL087[nL087]={ 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62,
1000  61, 62, 61, 62, 61};
1001  static const int tL088[nL088]={ 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61, 62, 61,
1002  62, 61, 52, 51, 52, 51}; // _________________________6_
1003  //-------------------------------------------------------------------------------------
1004  static const int tL089[nL089]={ 61, 62, 61, 62, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1005  51, 52, 51, 52, 51, 52}; // (5)
1006  static const int tL090[nL090]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51,
1007  52, 51, 52, 51, 52, 51};
1008  static const int tL091[nL091]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1009  51, 52, 51, 52, 51, 52};
1010  static const int tL092[nL092]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51,
1011  52, 51, 52, 51, 52, 51};
1012  static const int tL093[nL093]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1013  51, 52, 51, 52, 51, 52, 51};
1014  static const int tL094[nL094]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51,
1015  52, 51, 52, 51, 52, 51, 52};
1016  static const int tL095[nL095]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1017  51, 52, 51, 52, 51, 52, 51}; // (6)
1018  static const int tL096[nL096]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51,
1019  52, 51, 52, 51, 52, 51, 52};
1020  static const int tL097[nL097]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1021  51, 52, 51, 52, 51, 52, 51};
1022  static const int tL098[nL098]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51,
1023  52, 51, 52, 51, 52, 51, 52};
1024  static const int tL099[nL099]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1025  51, 52, 51, 52, 51, 52, 51, 52};
1026  static const int tL100[nL100]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 53, 52, 51,
1027  52, 51, 52, 51, 52, 51, 52, 51}; // (6)
1028  static const int tL101[nL101]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1029  51, 52, 51, 52, 51, 52, 51, 52};
1030  static const int tL102[nL102]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51,
1031  52, 51, 52, 51, 52, 51, 52, 51};
1032  static const int tL103[nL103]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1033  51, 52, 51, 52, 51, 52, 51, 52};
1034  static const int tL104[nL104]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51,
1035  52, 51, 52, 51, 52, 51, 52, 51};
1036  static const int tL105[nL105]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1037  51, 52, 51, 52, 51, 52, 51, 52, 51};
1038  static const int tL106[nL106]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51,
1039  52, 51, 52, 51, 52, 51, 52, 51, 52};
1040  static const int tL107[nL107]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1041  51, 52, 51, 52, 51, 52, 51, 52, 51}; // (5)
1042  static const int tL108[nL108]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51,
1043  52, 51, 52, 51, 52, 51, 52, 51, 52};
1044  static const int tL109[nL109]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1045  51, 52, 51, 52, 51, 52, 51, 52, 51};
1046  static const int tL110[nL110]={ 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51,
1047  52, 51, 52, 51, 52, 51, 52, 51, 52, 51};
1048  static const int tL111[nL111]={ 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52, 51, 52,
1049  51, 52, 51, 42, 41, 42, 41, 42, 41, 42}; // _________4_
1050  static const int tL112[nL112]={ 52, 51, 52, 51, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1051  42, 41, 42, 41, 42, 41, 42, 41, 42, 41}; // (6)
1052  static const int tL113[nL113]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1053  41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1054  static const int tL114[nL114]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1055  42, 41, 42, 41, 42, 41, 42, 41, 42, 41};
1056  static const int tL115[nL115]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1057  41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1058  static const int tL116[nL116]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1059  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1060  static const int tL117[nL117]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1061  41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41};
1062  static const int tL118[nL118]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1063  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1064  static const int tL119[nL119]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1065  41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41}; // (6)
1066  static const int tL120[nL120]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1067  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1068  static const int tL121[nL121]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1069  41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41};
1070  static const int tL122[nL122]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1071  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41};
1072  static const int tL123[nL123]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1073  41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1074  static const int tL124[nL124]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 43, 42, 41,
1075  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41};// (5)
1076  static const int tL125[nL125]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1077  41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1078  static const int tL126[nL126]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1079  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41};
1080  static const int tL127[nL127]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1081  41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41};
1082  static const int tL128[nL128]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1083  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1084  static const int tL129[nL129]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1085  41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41};
1086  static const int tL130[nL130]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1087  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42};//(6)
1088  static const int tL131[nL131]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1089  41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41};
1090  static const int tL132[nL132]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1091  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1092  static const int tL133[nL133]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1093  41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1094  static const int tL134[nL134]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1095  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41};
1096  static const int tL135[nL135]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1097  41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42};
1098  static const int tL136[nL136]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41,
1099  42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41};
1100  static const int tL137[nL137]={ 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42,
1101  41, 42, 41, 42, 41, 42, 41, 42, 31, 32, 31, 32, 31, 32};
1102  // ____________________________________________________________________________(6)___3_
1103  static const int tL138[nL138]={ 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 42, 41, 32, 31,
1104  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31};
1105  static const int tL139[nL139]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1106  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1107  31};
1108  static const int tL140[nL140]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1109  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1110  32};
1111  static const int tL141[nL141]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1112  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1113  31}; // (5)
1114  static const int tL142[nL142]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1115  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1116  32};
1117  static const int tL143[nL143]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1118  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1119  31};
1120  static const int tL144[nL144]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1121  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1122  32, 31};
1123  static const int tL145[nL145]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1124  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1125  31, 32};
1126  static const int tL146[nL146]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1127  32, 33, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1128  32, 31};
1129  static const int tL147[nL147]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1130  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1131  31, 32}; // (6)
1132  static const int tL148[nL148]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1133  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1134  32, 31};
1135  static const int tL149[nL149]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1136  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1137  31, 32};
1138  static const int tL150[nL150]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1139  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1140  32, 31, 32};
1141  static const int tL151[nL151]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1142  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1143  31, 32, 31};
1144  static const int tL152[nL152]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1145  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1146  32, 31, 32}; // (6)
1147  static const int tL153[nL153]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1148  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1149  31, 32, 31};
1150  static const int tL154[nL154]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1151  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1152  32, 31, 32};
1153  static const int tL155[nL155]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1154  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1155  31, 32, 31};
1156  static const int tL156[nL156]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1157  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1158  32, 31, 32, 31};
1159  static const int tL157[nL157]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1160  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1161  31, 32, 31, 32};
1162  static const int tL158[nL158]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1163  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1164  32, 31, 32, 31}; // (5)
1165  static const int tL159[nL159]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1166  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1167  31, 32, 31, 32};
1168  static const int tL160[nL160]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1169  32, 33, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1170  32, 31, 32, 31};
1171  static const int tL161[nL161]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1172  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1173  31, 32, 31, 32, 31};
1174  static const int tL162[nL162]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1175  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1176  32, 31, 32, 31, 32};
1177  static const int tL163[nL163]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1178  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1179  31, 32, 31, 32, 31}; // (6)
1180  static const int tL164[nL164]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1181  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1182  32, 31, 32, 31, 32};
1183  static const int tL165[nL165]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1184  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1185  31, 32, 31, 32, 31};
1186  static const int tL166[nL166]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1187  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1188  32, 31, 32, 31, 32};
1189  static const int tL167[nL167]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1190  31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1191  31, 32, 31, 32, 31, 32};
1192  static const int tL168[nL168]={ 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31,
1193  32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 21,
1194  22, 21, 22, 21, 22, 21}; // _________________________2_
1195  static const int tL169[nL169]={ 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32, 31, 32,
1196  31, 32, 31, 32, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1197  21, 22, 21, 22, 21, 22}; // (6)
1198  static const int tL170[nL170]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1199  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1200  22, 21, 22, 21, 22, 21};
1201  static const int tL171[nL171]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1202  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1203  21, 22, 21, 22, 21, 22};
1204  static const int tL172[nL172]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1205  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1206  22, 21, 22, 21, 22, 21};
1207  static const int tL173[nL173]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1208  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1209  21, 22, 21, 22, 21, 22, 21};
1210  static const int tL174[nL174]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1211  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1212  22, 21, 22, 21, 22, 21, 22};
1213  static const int tL175[nL175]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1214  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1215  21, 22, 21, 22, 21, 22, 21}; // (5)
1216  static const int tL176[nL176]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1217  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1218  22, 21, 22, 21, 22, 21, 22};
1219  static const int tL177[nL177]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1220  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1221  21, 22, 21, 22, 21, 22, 21};
1222  static const int tL178[nL178]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1223  22, 23, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1224  22, 21, 22, 21, 22, 21, 22, 21};
1225  static const int tL179[nL179]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1226  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1227  21, 22, 21, 22, 21, 22, 21, 22};
1228  static const int tL180[nL180]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1229  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1230  22, 21, 22, 21, 22, 21, 22, 21}; // (6)
1231  static const int tL181[nL181]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1232  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1233  21, 22, 21, 22, 21, 22, 21, 22};
1234  static const int tL182[nL182]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1235  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1236  22, 21, 22, 21, 22, 21, 22, 21};
1237  static const int tL183[nL183]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1238  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1239  21, 22, 21, 22, 21, 22, 21, 22};
1240  static const int tL184[nL184]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1241  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1242  22, 21, 22, 21, 22, 21, 22, 21, 22};
1243  static const int tL185[nL185]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1244  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1245  21, 22, 21, 22, 21, 22, 21, 22, 21};
1246  static const int tL186[nL186]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1247  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1248  22, 21, 22, 21, 22, 21, 22, 21, 22};
1249  static const int tL187[nL187]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1250  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1251  21, 22, 21, 22, 21, 22, 21, 22, 21}; // (6)
1252  static const int tL188[nL188]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1253  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1254  22, 21, 22, 21, 22, 21, 22, 21, 22};
1255  static const int tL189[nL189]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1256  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1257  21, 22, 21, 22, 21, 22, 21, 22, 21};
1258  static const int tL190[nL190]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1259  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1260  22, 21, 22, 21, 22, 21, 22, 21, 22, 21};
1261  static const int tL191[nL191]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1262  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1263  21, 22, 21, 22, 21, 22, 21, 22, 21, 22};
1264  static const int tL192[nL192]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1265  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1266  22, 21, 22, 21, 22, 21, 22, 21, 22, 21}; // (5)
1267  static const int tL193[nL193]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1268  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1269  21, 22, 21, 22, 21, 22, 21, 22, 21, 22};
1270  static const int tL194[nL194]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1271  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1272  22, 21, 22, 21, 22, 21, 22, 21, 22, 21};
1273  static const int tL195[nL195]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1274  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1275  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21};
1276  static const int tL196[nL196]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1277  22, 21, 22, 21, 22, 23, 22, 21, 22, 21, 22, 21, 22, 21,
1278  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22};
1279  static const int tL197[nL197]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1280  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1281  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21}; // (6)
1282  static const int tL198[nL198]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1283  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1284  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22};
1285  static const int tL199[nL199]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1286  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1287  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21};
1288  static const int tL200[nL200]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1289  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1290  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22};
1291  static const int tL201[nL201]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1292  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1293  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22};
1294  static const int tL202[nL202]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1295  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1296  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21};
1297  static const int tL203[nL203]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1298  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1299  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22}; //(6)
1300  static const int tL204[nL204]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1301  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1302  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21};
1303  static const int tL205[nL205]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1304  21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22,
1305  21, 22, 21, 22, 11, 12, 11, 12, 11, 12, 11, 12};
1306  static const int tL206[nL206]={ 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21,
1307  22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 12, 11, 12, 11,
1308  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11};//__1_
1309  static const int tL207[nL207]={ 21, 22, 21, 22, 21, 22, 21, 22, 21, 22, 21, 12, 11, 12,
1310  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1311  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11};
1312  static const int tL208[nL208]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1313  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1314  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12};
1315  static const int tL209[nL209]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1316  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1317  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11};//(5)
1318  static const int tL210[nL210]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1319  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1320  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12};
1321  static const int tL211[nL211]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1322  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1323  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11};
1324  static const int tL212[nL212]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1325  12, 11, 12, 11, 12, 13, 12, 11, 12, 11, 12, 11, 12, 11,
1326  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11};
1327  static const int tL213[nL213]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1328  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1329  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12};
1330  static const int tL214[nL214]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1331  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1332  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11};
1333  static const int tL215[nL215]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1334  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1335  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12};
1336  static const int tL216[nL216]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1337  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1338  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11};
1339  static const int tL217[nL217]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1340  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1341  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12};
1342  static const int tL218[nL218]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1343  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1344  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1345  12};
1346  static const int tL219[nL219]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1347  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1348  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1349  11};
1350  static const int tL220[nL220]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1351  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1352  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1353  12};
1354  static const int tL221[nL221]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1355  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1356  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1357  11}; // (6)
1358  static const int tL222[nL222]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1359  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1360  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1361  12};
1362  static const int tL223[nL223]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1363  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1364  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1365  11};
1366  static const int tL224[nL224]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1367  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1368  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1369  12, 11};
1370  static const int tL225[nL225]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1371  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1372  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1373  11, 12};
1374  static const int tL226[nL226]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1375  12, 11, 12, 11, 12, 13, 12, 11, 12, 11, 12, 11, 12, 11,
1376  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1377  12, 11}; // (5)
1378  static const int tL227[nL227]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1379  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1380  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1381  11, 12};
1382  static const int tL228[nL228]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1383  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1384  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1385  12, 11};
1386  static const int tL229[nL229]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1387  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1388  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1389  11, 12, 11};
1390  static const int tL230[nL230]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1391  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1392  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1393  12, 11, 12};
1394  static const int tL231[nL231]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1395  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1396  11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 0, 0, 0,
1397  0, 0, 0}; // (5+1=6)
1398  static const int tL232[nL232]={ 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1399  12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11,
1400  12, 11, 12, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1401  0, 0, 0};
1402  static const int tL233[nL233]={ 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12, 11, 12,
1403  11, 12, 11, 12, 11, 12, 11, 12, 0, 0, 0, 0, 0, 0,
1404  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1405  0, 0, 0};
1406  static const int nSL[nLay]={
1407  nL001, nL002, nL003, nL004, nL005, nL006, nL007, nL008, nL009 ,nL010,
1408  nL011, nL012, nL013, nL014, nL015, nL016, nL017, nL018, nL019 ,nL020,
1409  nL021, nL022, nL023, nL024, nL025, nL026, nL027, nL028, nL029 ,nL030,
1410  nL031, nL032, nL033, nL034, nL035, nL036, nL037, nL038, nL039 ,nL040,
1411  nL041, nL042, nL043, nL044, nL045, nL046, nL047, nL048, nL049 ,nL050,
1412  nL051, nL052, nL053, nL054, nL055, nL056, nL057, nL058, nL059 ,nL060,
1413  nL061, nL062, nL063, nL064, nL065, nL066, nL067, nL068, nL069 ,nL070,
1414  nL071, nL072, nL073, nL074, nL075, nL076, nL077, nL078, nL079 ,nL080,
1415  nL081, nL082, nL083, nL084, nL085, nL086, nL087, nL088, nL089 ,nL090,
1416  nL091, nL092, nL093, nL094, nL095, nL096, nL097, nL098, nL099 ,nL100,
1417  nL101, nL102, nL103, nL104, nL105, nL106, nL107, nL108, nL109 ,nL110,
1418  nL111, nL112, nL113, nL114, nL115, nL116, nL117, nL118, nL119 ,nL120,
1419  nL121, nL122, nL123, nL124, nL125, nL126, nL127, nL128, nL129 ,nL130,
1420  nL131, nL132, nL133, nL134, nL135, nL136, nL137, nL138, nL139 ,nL140,
1421  nL141, nL142, nL143, nL144, nL145, nL146, nL147, nL148, nL149 ,nL150,
1422  nL151, nL152, nL153, nL154, nL155, nL156, nL157, nL158, nL159 ,nL160,
1423  nL161, nL162, nL163, nL164, nL165, nL166, nL167, nL168, nL169 ,nL170,
1424  nL171, nL172, nL173, nL174, nL175, nL176, nL177, nL178, nL179 ,nL180,
1425  nL181, nL182, nL183, nL184, nL185, nL186, nL187, nL188, nL189 ,nL190,
1426  nL191, nL192, nL193, nL194, nL195, nL196, nL197, nL198, nL199 ,nL200,
1427  nL201, nL202, nL203, nL204, nL205, nL206, nL207, nL208, nL209 ,nL210,
1428  nL211, nL212, nL213, nL214, nL215, nL216, nL217, nL218, nL219 ,nL220,
1429  nL221, nL222, nL223, nL224, nL225, nL226, nL227, nL228, nL229 ,nL230,
1430  nL231, nL232, nL233};
1431  static const int* nLT[nLay]={
1432  tL001, tL002, tL003, tL004, tL005, tL006, tL007, tL008, tL009 ,tL010,
1433  tL011, tL012, tL013, tL014, tL015, tL016, tL017, tL018, tL019 ,tL020,
1434  tL021, tL022, tL023, tL024, tL025, tL026, tL027, tL028, tL029 ,tL030,
1435  tL031, tL032, tL033, tL034, tL035, tL036, tL037, tL038, tL039 ,tL040,
1436  tL041, tL042, tL043, tL044, tL045, tL046, tL047, tL048, tL049 ,tL050,
1437  tL051, tL052, tL053, tL054, tL055, tL056, tL057, tL058, tL059 ,tL060,
1438  tL061, tL062, tL063, tL064, tL065, tL066, tL067, tL068, tL069 ,tL070,
1439  tL071, tL072, tL073, tL074, tL075, tL076, tL077, tL078, tL079 ,tL080,
1440  tL081, tL082, tL083, tL084, tL085, tL086, tL087, tL088, tL089 ,tL090,
1441  tL091, tL092, tL093, tL094, tL095, tL096, tL097, tL098, tL099 ,tL100,
1442  tL101, tL102, tL103, tL104, tL105, tL106, tL107, tL108, tL109 ,tL110,
1443  tL111, tL112, tL113, tL114, tL115, tL116, tL117, tL118, tL119 ,tL120,
1444  tL121, tL122, tL123, tL124, tL125, tL126, tL127, tL128, tL129 ,tL130,
1445  tL131, tL132, tL133, tL134, tL135, tL136, tL137, tL138, tL139 ,tL140,
1446  tL141, tL142, tL143, tL144, tL145, tL146, tL147, tL148, tL149 ,tL150,
1447  tL151, tL152, tL153, tL154, tL155, tL156, tL157, tL158, tL159 ,tL160,
1448  tL161, tL162, tL163, tL164, tL165, tL166, tL167, tL168, tL169 ,tL170,
1449  tL171, tL172, tL173, tL174, tL175, tL176, tL177, tL178, tL179 ,tL180,
1450  tL181, tL182, tL183, tL184, tL185, tL186, tL187, tL188, tL189 ,tL190,
1451  tL191, tL192, tL193, tL194, tL195, tL196, tL197, tL198, tL199 ,tL200,
1452  tL201, tL202, tL203, tL204, tL205, tL206, tL207, tL208, tL209 ,tL210,
1453  tL211, tL212, tL213, tL214, tL215, tL216, tL217, tL218, tL219 ,tL220,
1454  tL221, tL222, tL223, tL224, tL225, tL226, tL227, tL228, tL229 ,tL230,
1455  tL231, tL232, tL233};
1456  static const int* nRT[nLay]={
1457  tR001, tR002, tR003, tR004, tR005, tR006, tR007, tR008, tR009 ,tR010,
1458  tR011, tR012, tR013, tR014, tR015, tR016, tR017, tR018, tR019 ,tR020,
1459  tR021, tR022, tR023, tR024, tR025, tR026, tR027, tR028, tR029 ,tR030,
1460  tR031, tR032, tR033, tR034, tR035, tR036, tR037, tR038, tR039 ,tR040,
1461  tR041, tR042, tR043, tR044, tR045, tR046, tR047, tR048, tR049 ,tR050,
1462  tR051, tR052, tR053, tR054, tR055, tR056, tR057, tR058, tR059 ,tR060,
1463  tR061, tR062, tR063, tR064, tR065, tR066, tR067, tR068, tR069 ,tR070,
1464  tR071, tR072, tR073, tR074, tR075, tR076, tR077, tR078, tR079 ,tR080,
1465  tR081, tR082, tR083, tR084, tR085, tR086, tR087, tR088, tR089 ,tR090,
1466  tR091, tR092, tR093, tR094, tR095, tR096, tR097, tR098, tR099 ,tR100,
1467  tR101, tR102, tR103, tR104, tR105, tR106, tR107, tR108, tR109 ,tR110,
1468  tR111, tR112, tR113, tR114, tR115, tR116, tR117, tR118, tR119 ,tR120,
1469  tR121, tR122, tR123, tR124, tR125, tR126, tR127, tR128, tR129 ,tR130,
1470  tR131, tR132, tR133, tR134, tR135, tR136, tR137, tR138, tR139 ,tR140,
1471  tR141, tR142, tR143, tR144, tR145, tR146, tR147, tR148, tR149 ,tR150,
1472  tR151, tR152, tR153, tR154, tR155, tR156, tR157, tR158, tR159 ,tR160,
1473  tR161, tR162, tR163, tR164, tR165, tR166, tR167, tR168, tR169 ,tR170,
1474  tR171, tR172, tR173, tR174, tR175, tR176, tR177, tR178, tR179 ,tR180,
1475  tR181, tR182, tR183, tR184, tR185, tR186, tR187, tR188, tR189 ,tR190,
1476  tR191, tR192, tR193, tR194, tR195, tR196, tR197, tR198, tR199 ,tR200,
1477  tR201, tR202, tR203, tR204, tR205, tR206, tR207, tR208, tR209 ,tR210,
1478  tR211, tR212, tR213, tR214, tR215, tR216, tR217, tR218, tR219 ,tR220,
1479  tR221, tR222, tR223, tR224, tR225, tR226, tR227, tR228, tR229 ,tR230,
1480  tR231, tR232, tR233};
1481 
1482  /*
1483  // The following are differences in the Source tube positions(not used so far)
1484  // *** At present for all widgets the F01 is used (@@ to be developed M.K.)
1485  static const int nS=31; // a # of the source tubes in the widget
1486  // 0 - H(Long), 1 - E(Short)
1487  // 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2
1488  // 1 1 2 2 3 3 4 5 6 7 8 9 0 1 2 2 3 4 4 5 5 6 6 7 8 9 0 1 2 3 4
1489  // A B A B A B A B A B A B A B
1490  static const int F01[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1491  static const int F02[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1492  static const int F03[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,1,1,1,0,0,1,1,1,0,0,0};
1493  static const int F04[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1494  static const int F05[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1495  static const int F06[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1496  static const int F07[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1497  static const int F08[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1498  static const int F09[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1499  static const int F10[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1500  static const int F11[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1501  static const int F12[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1502  static const int F13[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1503  static const int F14[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1504  static const int F15[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1505  static const int F16[nS]={0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
1506  static const int F17[nS]={0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
1507  static const int F18[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0};
1508 
1509  static const int B01[nS]={0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
1510  static const int B02[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0};
1511  static const int B03[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0};
1512  static const int B04[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0};
1513  static const int B05[nS]={0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
1514  static const int B06[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0};
1515  static const int B07[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0};
1516  static const int B08[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0};
1517  static const int B09[nS]={0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
1518  static const int B10[nS]={0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
1519  static const int B11[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0};
1520  static const int B12[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0};
1521  static const int B13[nS]={0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
1522  static const int B14[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0};
1523  static const int B15[nS]={0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
1524  static const int B16[nS]={0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
1525  static const int B17[nS]={0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
1526  static const int B18[nS]={0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0};
1527  */
1528 
1529  static const double cellSize = 0.5*CLHEP::cm; // 0.5 cm is the cell size
1530  if (!(xl > 0.))
1531  xl=-xl;
1532  double fx=xl/cellSize;
1533  int ny=static_cast<int>((yl-yMin)/cellSize); // Layer number (starting from 0)
1534  if (ny < 0 || ny >= nLay) // Sould never happen as was checked beforehand
1535  {
1536 #ifdef DebugLog
1537  edm::LogInfo("HFShower") << "-Warning-HFFibreFiducial::PMTNumber: "
1538  << "check limits y = " << yl << ", nL=" << nLay;
1539 #endif
1540  return 0;
1541  }
1542  int nx=static_cast<int>(fx); // Cell number (starting from 0)
1543 #ifdef mkodebug
1544  double phist=atan2(xl, yl)/CLHEP::deg;
1545  if(sqr(mX-xv)+sqr(mY-yv)+sqr(mZ-zv) > 9.)
1546  {
1547  std::cout<<"HFFibreFiducial::PMTNumber:X="<<xv<<",Y="<<yv<<",Z="<<zv<<",fX="<<fx
1548  <<"->nX="<<nx<<",nY="<<ny<<",mX="<<nSL[ny]<<",x="<<xl<<",y="<<yl<<",s="
1549  <<cellSize<<",nW="<<nwid<<",phi="<<phi/CLHEP::deg<<",phist="<<phist
1550  <<",phir="<<phir/CLHEP::deg<<std::endl;
1551  mX=xv;
1552  mY=yv;
1553  mZ=zv;
1554  }
1555 #endif
1556 #ifdef DebugLog
1557  double phis=atan2(xl, yl)/CLHEP::deg;
1558  edm::LogInfo("HFShower") << "HFFibreFiducial::PMTNumber:X = " << xv
1559  << ", Y = " << yv << ", Z = " << zv << ", fX = "
1560  << fx << "-> nX = " << nx << ", nY = " << ny
1561  << ", mX = " << nSL[ny] << ", x = " << xl << ", y = "
1562  << yl << ", s = " << cellSize << ", nW = "
1563  << nwid << ", phi = " << phi/CLHEP::deg
1564  << ", phis = " << phis << ", phir = "
1565  << phir/CLHEP::deg;
1566 #endif
1567  if (nx >= nSL[ny])
1568  {
1569 #ifdef DebugLog
1570  edm::LogInfo("HFShower") << "-Warning-HFFibreFiducial::nx/ny (" << nx
1571  << "," << ny <<") " << " above limit " << nSL[ny];
1572 #endif
1573  return 0; // ===> out of the acceptance
1574  }
1575  int code=0; // a prototype
1576  if (left) code=nLT[ny][nx];
1577  else code=nRT[ny][nx];
1578  int flag= code%10;
1579  int npmt= code/10;
1580  bool src= false; // by default: not a source-tube
1581 #ifdef DebugLog
1582  edm::LogInfo("HFShower") << "HFFibreFiducial::nx/ny (" << nx << ","
1583  << ny << ") code/flag/npmt " << code << "/" << flag
1584  << "/" << npmt;
1585 #endif
1586  if (!flag) return 0; // ===> no fiber in the cell
1587  else if (flag==1) npmt += 24;
1588  else if (flag==3 || flag==4) {
1589  flag-=2;
1590  src=true;
1591  }
1592 #ifdef DebugLog
1593  edm::LogInfo("HFShower") << "HFFibreFiducial::PMTNumber: src = " << src
1594  << ", npmt =" << npmt;
1595 #endif
1596  if (src) return -npmt; // return the negative number for the source
1597  return npmt;
1598 } // End of PMTNumber
long int flag
Definition: mlp_lapack.h:47
static int PMTNumber(G4ThreeVector pe_effect)
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
Square< F >::type sqr(const F &f)
Definition: Square.h:13
tuple cout
Definition: gather_cfg.py:121
double pi
Definition: DDAxes.h:10