00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00027 #ifndef make_array_h
00028 #define make_array_h
00029 
00030 #include "array.h"
00031 
00050 template<class base>
00051 class MakeArray : public Array<base>
00052 {
00053 public:
00054   MakeArray();
00055   MakeArray(
00056         const base& a0
00057         );
00058   MakeArray(
00059         const base& a0,
00060         const base& a1
00061         );
00062   MakeArray(
00063         const base& a0,
00064         const base& a1,
00065         const base& a2
00066         );
00067   MakeArray(
00068         const base& a0,
00069         const base& a1,
00070         const base& a2,
00071         const base& a3
00072         );
00073   MakeArray(
00074         const base& a0,
00075         const base& a1,
00076         const base& a2,
00077         const base& a3,
00078         const base& a4
00079         );
00080   MakeArray(
00081         const base& a0,
00082         const base& a1,
00083         const base& a2,
00084         const base& a3,
00085         const base& a4,
00086         const base& a5
00087         );
00088   MakeArray(
00089         const base& a0,
00090         const base& a1,
00091         const base& a2,
00092         const base& a3,
00093         const base& a4,
00094         const base& a5,
00095         const base& a6
00096         );
00097   MakeArray(
00098         const base& a0,
00099         const base& a1,
00100         const base& a2,
00101         const base& a3,
00102         const base& a4,
00103         const base& a5,
00104         const base& a6,
00105         const base& a7
00106         );
00107   MakeArray(
00108         const base& a0,
00109         const base& a1,
00110         const base& a2,
00111         const base& a3,
00112         const base& a4,
00113         const base& a5,
00114         const base& a6,
00115         const base& a7,
00116         const base& a8
00117         );
00118   MakeArray(
00119         const base& a0,
00120         const base& a1,
00121         const base& a2,
00122         const base& a3,
00123         const base& a4,
00124         const base& a5,
00125         const base& a6,
00126         const base& a7,
00127         const base& a8,
00128         const base& a9
00129         );
00130   MakeArray(
00131         const base& a0,
00132         const base& a1,
00133         const base& a2,
00134         const base& a3,
00135         const base& a4,
00136         const base& a5,
00137         const base& a6,
00138         const base& a7,
00139         const base& a8,
00140         const base& a9,
00141         const base& a10
00142         );
00143   MakeArray(
00144         const base& a0,
00145         const base& a1,
00146         const base& a2,
00147         const base& a3,
00148         const base& a4,
00149         const base& a5,
00150         const base& a6,
00151         const base& a7,
00152         const base& a8,
00153         const base& a9,
00154         const base& a10,
00155         const base& a11
00156         );
00157   MakeArray(
00158         const base& a0,
00159         const base& a1,
00160         const base& a2,
00161         const base& a3,
00162         const base& a4,
00163         const base& a5,
00164         const base& a6,
00165         const base& a7,
00166         const base& a8,
00167         const base& a9,
00168         const base& a10,
00169         const base& a11,
00170         const base& a12
00171         );
00172   MakeArray(
00173         const base& a0,
00174         const base& a1,
00175         const base& a2,
00176         const base& a3,
00177         const base& a4,
00178         const base& a5,
00179         const base& a6,
00180         const base& a7,
00181         const base& a8,
00182         const base& a9,
00183         const base& a10,
00184         const base& a11,
00185         const base& a12,
00186         const base& a13
00187         );
00188   MakeArray(
00189         const base& a0,
00190         const base& a1,
00191         const base& a2,
00192         const base& a3,
00193         const base& a4,
00194         const base& a5,
00195         const base& a6,
00196         const base& a7,
00197         const base& a8,
00198         const base& a9,
00199         const base& a10,
00200         const base& a11,
00201         const base& a12,
00202         const base& a13,
00203         const base& a14
00204         );
00205   MakeArray(
00206         const base& a0,
00207         const base& a1,
00208         const base& a2,
00209         const base& a3,
00210         const base& a4,
00211         const base& a5,
00212         const base& a6,
00213         const base& a7,
00214         const base& a8,
00215         const base& a9,
00216         const base& a10,
00217         const base& a11,
00218         const base& a12,
00219         const base& a13,
00220         const base& a14,
00221         const base& a15
00222         );
00223   MakeArray(
00224         const base& a0,
00225         const base& a1,
00226         const base& a2,
00227         const base& a3,
00228         const base& a4,
00229         const base& a5,
00230         const base& a6,
00231         const base& a7,
00232         const base& a8,
00233         const base& a9,
00234         const base& a10,
00235         const base& a11,
00236         const base& a12,
00237         const base& a13,
00238         const base& a14,
00239         const base& a15,
00240         const base& a16
00241         );
00242   MakeArray(
00243         const base& a0,
00244         const base& a1,
00245         const base& a2,
00246         const base& a3,
00247         const base& a4,
00248         const base& a5,
00249         const base& a6,
00250         const base& a7,
00251         const base& a8,
00252         const base& a9,
00253         const base& a10,
00254         const base& a11,
00255         const base& a12,
00256         const base& a13,
00257         const base& a14,
00258         const base& a15,
00259         const base& a16,
00260         const base& a17
00261         );
00262   MakeArray(
00263         const base& a0,
00264         const base& a1,
00265         const base& a2,
00266         const base& a3,
00267         const base& a4,
00268         const base& a5,
00269         const base& a6,
00270         const base& a7,
00271         const base& a8,
00272         const base& a9,
00273         const base& a10,
00274         const base& a11,
00275         const base& a12,
00276         const base& a13,
00277         const base& a14,
00278         const base& a15,
00279         const base& a16,
00280         const base& a17,
00281         const base& a18
00282         );
00283   MakeArray(
00284         const base& a0,
00285         const base& a1,
00286         const base& a2,
00287         const base& a3,
00288         const base& a4,
00289         const base& a5,
00290         const base& a6,
00291         const base& a7,
00292         const base& a8,
00293         const base& a9,
00294         const base& a10,
00295         const base& a11,
00296         const base& a12,
00297         const base& a13,
00298         const base& a14,
00299         const base& a15,
00300         const base& a16,
00301         const base& a17,
00302         const base& a18,
00303         const base& a19
00304         );
00305   MakeArray(
00306         const base& a0,
00307         const base& a1,
00308         const base& a2,
00309         const base& a3,
00310         const base& a4,
00311         const base& a5,
00312         const base& a6,
00313         const base& a7,
00314         const base& a8,
00315         const base& a9,
00316         const base& a10,
00317         const base& a11,
00318         const base& a12,
00319         const base& a13,
00320         const base& a14,
00321         const base& a15,
00322         const base& a16,
00323         const base& a17,
00324         const base& a18,
00325         const base& a19,
00326         const base& a20
00327         );
00328   MakeArray(
00329         const base& a0,
00330         const base& a1,
00331         const base& a2,
00332         const base& a3,
00333         const base& a4,
00334         const base& a5,
00335         const base& a6,
00336         const base& a7,
00337         const base& a8,
00338         const base& a9,
00339         const base& a10,
00340         const base& a11,
00341         const base& a12,
00342         const base& a13,
00343         const base& a14,
00344         const base& a15,
00345         const base& a16,
00346         const base& a17,
00347         const base& a18,
00348         const base& a19,
00349         const base& a20,
00350         const base& a21
00351         );
00352   MakeArray(
00353         const base& a0,
00354         const base& a1,
00355         const base& a2,
00356         const base& a3,
00357         const base& a4,
00358         const base& a5,
00359         const base& a6,
00360         const base& a7,
00361         const base& a8,
00362         const base& a9,
00363         const base& a10,
00364         const base& a11,
00365         const base& a12,
00366         const base& a13,
00367         const base& a14,
00368         const base& a15,
00369         const base& a16,
00370         const base& a17,
00371         const base& a18,
00372         const base& a19,
00373         const base& a20,
00374         const base& a21,
00375         const base& a22
00376         );
00377   MakeArray(
00378         const base& a0,
00379         const base& a1,
00380         const base& a2,
00381         const base& a3,
00382         const base& a4,
00383         const base& a5,
00384         const base& a6,
00385         const base& a7,
00386         const base& a8,
00387         const base& a9,
00388         const base& a10,
00389         const base& a11,
00390         const base& a12,
00391         const base& a13,
00392         const base& a14,
00393         const base& a15,
00394         const base& a16,
00395         const base& a17,
00396         const base& a18,
00397         const base& a19,
00398         const base& a20,
00399         const base& a21,
00400         const base& a22,
00401         const base& a23
00402         );
00403   MakeArray(
00404         const base& a0,
00405         const base& a1,
00406         const base& a2,
00407         const base& a3,
00408         const base& a4,
00409         const base& a5,
00410         const base& a6,
00411         const base& a7,
00412         const base& a8,
00413         const base& a9,
00414         const base& a10,
00415         const base& a11,
00416         const base& a12,
00417         const base& a13,
00418         const base& a14,
00419         const base& a15,
00420         const base& a16,
00421         const base& a17,
00422         const base& a18,
00423         const base& a19,
00424         const base& a20,
00425         const base& a21,
00426         const base& a22,
00427         const base& a23,
00428         const base& a24
00429         );
00430   MakeArray(
00431         const base& a0,
00432         const base& a1,
00433         const base& a2,
00434         const base& a3,
00435         const base& a4,
00436         const base& a5,
00437         const base& a6,
00438         const base& a7,
00439         const base& a8,
00440         const base& a9,
00441         const base& a10,
00442         const base& a11,
00443         const base& a12,
00444         const base& a13,
00445         const base& a14,
00446         const base& a15,
00447         const base& a16,
00448         const base& a17,
00449         const base& a18,
00450         const base& a19,
00451         const base& a20,
00452         const base& a21,
00453         const base& a22,
00454         const base& a23,
00455         const base& a24,
00456         const base& a25
00457         );
00458   MakeArray(
00459         const base& a0,
00460         const base& a1,
00461         const base& a2,
00462         const base& a3,
00463         const base& a4,
00464         const base& a5,
00465         const base& a6,
00466         const base& a7,
00467         const base& a8,
00468         const base& a9,
00469         const base& a10,
00470         const base& a11,
00471         const base& a12,
00472         const base& a13,
00473         const base& a14,
00474         const base& a15,
00475         const base& a16,
00476         const base& a17,
00477         const base& a18,
00478         const base& a19,
00479         const base& a20,
00480         const base& a21,
00481         const base& a22,
00482         const base& a23,
00483         const base& a24,
00484         const base& a25,
00485         const base& a26
00486         );
00487   MakeArray(
00488         const base& a0,
00489         const base& a1,
00490         const base& a2,
00491         const base& a3,
00492         const base& a4,
00493         const base& a5,
00494         const base& a6,
00495         const base& a7,
00496         const base& a8,
00497         const base& a9,
00498         const base& a10,
00499         const base& a11,
00500         const base& a12,
00501         const base& a13,
00502         const base& a14,
00503         const base& a15,
00504         const base& a16,
00505         const base& a17,
00506         const base& a18,
00507         const base& a19,
00508         const base& a20,
00509         const base& a21,
00510         const base& a22,
00511         const base& a23,
00512         const base& a24,
00513         const base& a25,
00514         const base& a26,
00515         const base& a27
00516         );
00517   MakeArray(
00518         const base& a0,
00519         const base& a1,
00520         const base& a2,
00521         const base& a3,
00522         const base& a4,
00523         const base& a5,
00524         const base& a6,
00525         const base& a7,
00526         const base& a8,
00527         const base& a9,
00528         const base& a10,
00529         const base& a11,
00530         const base& a12,
00531         const base& a13,
00532         const base& a14,
00533         const base& a15,
00534         const base& a16,
00535         const base& a17,
00536         const base& a18,
00537         const base& a19,
00538         const base& a20,
00539         const base& a21,
00540         const base& a22,
00541         const base& a23,
00542         const base& a24,
00543         const base& a25,
00544         const base& a26,
00545         const base& a27,
00546         const base& a28
00547         );
00548   MakeArray(
00549         const base& a0,
00550         const base& a1,
00551         const base& a2,
00552         const base& a3,
00553         const base& a4,
00554         const base& a5,
00555         const base& a6,
00556         const base& a7,
00557         const base& a8,
00558         const base& a9,
00559         const base& a10,
00560         const base& a11,
00561         const base& a12,
00562         const base& a13,
00563         const base& a14,
00564         const base& a15,
00565         const base& a16,
00566         const base& a17,
00567         const base& a18,
00568         const base& a19,
00569         const base& a20,
00570         const base& a21,
00571         const base& a22,
00572         const base& a23,
00573         const base& a24,
00574         const base& a25,
00575         const base& a26,
00576         const base& a27,
00577         const base& a28,
00578         const base& a29
00579         );
00580   MakeArray(
00581         const base& a0,
00582         const base& a1,
00583         const base& a2,
00584         const base& a3,
00585         const base& a4,
00586         const base& a5,
00587         const base& a6,
00588         const base& a7,
00589         const base& a8,
00590         const base& a9,
00591         const base& a10,
00592         const base& a11,
00593         const base& a12,
00594         const base& a13,
00595         const base& a14,
00596         const base& a15,
00597         const base& a16,
00598         const base& a17,
00599         const base& a18,
00600         const base& a19,
00601         const base& a20,
00602         const base& a21,
00603         const base& a22,
00604         const base& a23,
00605         const base& a24,
00606         const base& a25,
00607         const base& a26,
00608         const base& a27,
00609         const base& a28,
00610         const base& a29,
00611         const base& a30
00612         );
00613   MakeArray(
00614         const base& a0,
00615         const base& a1,
00616         const base& a2,
00617         const base& a3,
00618         const base& a4,
00619         const base& a5,
00620         const base& a6,
00621         const base& a7,
00622         const base& a8,
00623         const base& a9,
00624         const base& a10,
00625         const base& a11,
00626         const base& a12,
00627         const base& a13,
00628         const base& a14,
00629         const base& a15,
00630         const base& a16,
00631         const base& a17,
00632         const base& a18,
00633         const base& a19,
00634         const base& a20,
00635         const base& a21,
00636         const base& a22,
00637         const base& a23,
00638         const base& a24,
00639         const base& a25,
00640         const base& a26,
00641         const base& a27,
00642         const base& a28,
00643         const base& a29,
00644         const base& a30,
00645         const base& a31
00646         );
00647 };
00648 
00649 
00650 
00651 
00652 template<class base>
00653 MakeArray<base>::MakeArray() : Array<base>(0)
00654 {
00655   
00656 }
00657 template<class base>
00658 MakeArray<base>::MakeArray(
00659                      const base& a0
00660                      ) : Array<base>(1)
00661 {
00662   std::vector<base>::operator[](0) = a0;
00663 }
00664 template<class base>
00665 MakeArray<base>::MakeArray(
00666                      const base& a0,
00667                      const base& a1
00668                      ) : Array<base>(2)
00669 {
00670   std::vector<base>::operator[](0) = a0;
00671   std::vector<base>::operator[](1) = a1;
00672 }
00673 template<class base>
00674 MakeArray<base>::MakeArray(
00675                      const base& a0,
00676                      const base& a1,
00677                      const base& a2
00678                      ) : Array<base>(3)
00679 {
00680   std::vector<base>::operator[](0) = a0;
00681   std::vector<base>::operator[](1) = a1;
00682   std::vector<base>::operator[](2) = a2;
00683 }
00684 template<class base>
00685 MakeArray<base>::MakeArray(
00686                      const base& a0,
00687                      const base& a1,
00688                      const base& a2,
00689                      const base& a3
00690                      ) : Array<base>(4)
00691 {
00692   std::vector<base>::operator[](0) = a0;
00693   std::vector<base>::operator[](1) = a1;
00694   std::vector<base>::operator[](2) = a2;
00695   std::vector<base>::operator[](3) = a3;
00696 }
00697 template<class base>
00698 MakeArray<base>::MakeArray(
00699                      const base& a0,
00700                      const base& a1,
00701                      const base& a2,
00702                      const base& a3,
00703                      const base& a4
00704                      ) : Array<base>(5)
00705 {
00706   std::vector<base>::operator[](0) = a0;
00707   std::vector<base>::operator[](1) = a1;
00708   std::vector<base>::operator[](2) = a2;
00709   std::vector<base>::operator[](3) = a3;
00710   std::vector<base>::operator[](4) = a4;
00711 }
00712 template<class base>
00713 MakeArray<base>::MakeArray(
00714                      const base& a0,
00715                      const base& a1,
00716                      const base& a2,
00717                      const base& a3,
00718                      const base& a4,
00719                      const base& a5
00720                      ) : Array<base>(6)
00721 {
00722   std::vector<base>::operator[](0) = a0;
00723   std::vector<base>::operator[](1) = a1;
00724   std::vector<base>::operator[](2) = a2;
00725   std::vector<base>::operator[](3) = a3;
00726   std::vector<base>::operator[](4) = a4;
00727   std::vector<base>::operator[](5) = a5;
00728 }
00729 template<class base>
00730 MakeArray<base>::MakeArray(
00731                      const base& a0,
00732                      const base& a1,
00733                      const base& a2,
00734                      const base& a3,
00735                      const base& a4,
00736                      const base& a5,
00737                      const base& a6
00738                      ) : Array<base>(7)
00739 {
00740   std::vector<base>::operator[](0) = a0;
00741   std::vector<base>::operator[](1) = a1;
00742   std::vector<base>::operator[](2) = a2;
00743   std::vector<base>::operator[](3) = a3;
00744   std::vector<base>::operator[](4) = a4;
00745   std::vector<base>::operator[](5) = a5;
00746   std::vector<base>::operator[](6) = a6;
00747 }
00748 template<class base>
00749 MakeArray<base>::MakeArray(
00750                      const base& a0,
00751                      const base& a1,
00752                      const base& a2,
00753                      const base& a3,
00754                      const base& a4,
00755                      const base& a5,
00756                      const base& a6,
00757                      const base& a7
00758                      ) : Array<base>(8)
00759 {
00760   std::vector<base>::operator[](0) = a0;
00761   std::vector<base>::operator[](1) = a1;
00762   std::vector<base>::operator[](2) = a2;
00763   std::vector<base>::operator[](3) = a3;
00764   std::vector<base>::operator[](4) = a4;
00765   std::vector<base>::operator[](5) = a5;
00766   std::vector<base>::operator[](6) = a6;
00767   std::vector<base>::operator[](7) = a7;
00768 }
00769 template<class base>
00770 MakeArray<base>::MakeArray(
00771                      const base& a0,
00772                      const base& a1,
00773                      const base& a2,
00774                      const base& a3,
00775                      const base& a4,
00776                      const base& a5,
00777                      const base& a6,
00778                      const base& a7,
00779                      const base& a8
00780                      ) : Array<base>(9)
00781 {
00782   std::vector<base>::operator[](0) = a0;
00783   std::vector<base>::operator[](1) = a1;
00784   std::vector<base>::operator[](2) = a2;
00785   std::vector<base>::operator[](3) = a3;
00786   std::vector<base>::operator[](4) = a4;
00787   std::vector<base>::operator[](5) = a5;
00788   std::vector<base>::operator[](6) = a6;
00789   std::vector<base>::operator[](7) = a7;
00790   std::vector<base>::operator[](8) = a8;
00791 }
00792 template<class base>
00793 MakeArray<base>::MakeArray(
00794                      const base& a0,
00795                      const base& a1,
00796                      const base& a2,
00797                      const base& a3,
00798                      const base& a4,
00799                      const base& a5,
00800                      const base& a6,
00801                      const base& a7,
00802                      const base& a8,
00803                      const base& a9
00804                      ) : Array<base>(10)
00805 {
00806   std::vector<base>::operator[](0) = a0;
00807   std::vector<base>::operator[](1) = a1;
00808   std::vector<base>::operator[](2) = a2;
00809   std::vector<base>::operator[](3) = a3;
00810   std::vector<base>::operator[](4) = a4;
00811   std::vector<base>::operator[](5) = a5;
00812   std::vector<base>::operator[](6) = a6;
00813   std::vector<base>::operator[](7) = a7;
00814   std::vector<base>::operator[](8) = a8;
00815   std::vector<base>::operator[](9) = a9;
00816 }
00817 template<class base>
00818 MakeArray<base>::MakeArray(
00819                      const base& a0,
00820                      const base& a1,
00821                      const base& a2,
00822                      const base& a3,
00823                      const base& a4,
00824                      const base& a5,
00825                      const base& a6,
00826                      const base& a7,
00827                      const base& a8,
00828                      const base& a9,
00829                      const base& a10
00830                      ) : Array<base>(11)
00831 {
00832   std::vector<base>::operator[](0) = a0;
00833   std::vector<base>::operator[](1) = a1;
00834   std::vector<base>::operator[](2) = a2;
00835   std::vector<base>::operator[](3) = a3;
00836   std::vector<base>::operator[](4) = a4;
00837   std::vector<base>::operator[](5) = a5;
00838   std::vector<base>::operator[](6) = a6;
00839   std::vector<base>::operator[](7) = a7;
00840   std::vector<base>::operator[](8) = a8;
00841   std::vector<base>::operator[](9) = a9;
00842   std::vector<base>::operator[](10) = a10;
00843 }
00844 template<class base>
00845 MakeArray<base>::MakeArray(
00846                      const base& a0,
00847                      const base& a1,
00848                      const base& a2,
00849                      const base& a3,
00850                      const base& a4,
00851                      const base& a5,
00852                      const base& a6,
00853                      const base& a7,
00854                      const base& a8,
00855                      const base& a9,
00856                      const base& a10,
00857                      const base& a11
00858                      ) : Array<base>(12)
00859 {
00860   std::vector<base>::operator[](0) = a0;
00861   std::vector<base>::operator[](1) = a1;
00862   std::vector<base>::operator[](2) = a2;
00863   std::vector<base>::operator[](3) = a3;
00864   std::vector<base>::operator[](4) = a4;
00865   std::vector<base>::operator[](5) = a5;
00866   std::vector<base>::operator[](6) = a6;
00867   std::vector<base>::operator[](7) = a7;
00868   std::vector<base>::operator[](8) = a8;
00869   std::vector<base>::operator[](9) = a9;
00870   std::vector<base>::operator[](10) = a10;
00871   std::vector<base>::operator[](11) = a11;
00872 }
00873 template<class base>
00874 MakeArray<base>::MakeArray(
00875                      const base& a0,
00876                      const base& a1,
00877                      const base& a2,
00878                      const base& a3,
00879                      const base& a4,
00880                      const base& a5,
00881                      const base& a6,
00882                      const base& a7,
00883                      const base& a8,
00884                      const base& a9,
00885                      const base& a10,
00886                      const base& a11,
00887                      const base& a12
00888                      ) : Array<base>(13)
00889 {
00890   std::vector<base>::operator[](0) = a0;
00891   std::vector<base>::operator[](1) = a1;
00892   std::vector<base>::operator[](2) = a2;
00893   std::vector<base>::operator[](3) = a3;
00894   std::vector<base>::operator[](4) = a4;
00895   std::vector<base>::operator[](5) = a5;
00896   std::vector<base>::operator[](6) = a6;
00897   std::vector<base>::operator[](7) = a7;
00898   std::vector<base>::operator[](8) = a8;
00899   std::vector<base>::operator[](9) = a9;
00900   std::vector<base>::operator[](10) = a10;
00901   std::vector<base>::operator[](11) = a11;
00902   std::vector<base>::operator[](12) = a12;
00903 }
00904 template<class base>
00905 MakeArray<base>::MakeArray(
00906                      const base& a0,
00907                      const base& a1,
00908                      const base& a2,
00909                      const base& a3,
00910                      const base& a4,
00911                      const base& a5,
00912                      const base& a6,
00913                      const base& a7,
00914                      const base& a8,
00915                      const base& a9,
00916                      const base& a10,
00917                      const base& a11,
00918                      const base& a12,
00919                      const base& a13
00920                      ) : Array<base>(14)
00921 {
00922   std::vector<base>::operator[](0) = a0;
00923   std::vector<base>::operator[](1) = a1;
00924   std::vector<base>::operator[](2) = a2;
00925   std::vector<base>::operator[](3) = a3;
00926   std::vector<base>::operator[](4) = a4;
00927   std::vector<base>::operator[](5) = a5;
00928   std::vector<base>::operator[](6) = a6;
00929   std::vector<base>::operator[](7) = a7;
00930   std::vector<base>::operator[](8) = a8;
00931   std::vector<base>::operator[](9) = a9;
00932   std::vector<base>::operator[](10) = a10;
00933   std::vector<base>::operator[](11) = a11;
00934   std::vector<base>::operator[](12) = a12;
00935   std::vector<base>::operator[](13) = a13;
00936 }
00937 template<class base>
00938 MakeArray<base>::MakeArray(
00939                      const base& a0,
00940                      const base& a1,
00941                      const base& a2,
00942                      const base& a3,
00943                      const base& a4,
00944                      const base& a5,
00945                      const base& a6,
00946                      const base& a7,
00947                      const base& a8,
00948                      const base& a9,
00949                      const base& a10,
00950                      const base& a11,
00951                      const base& a12,
00952                      const base& a13,
00953                      const base& a14
00954                      ) : Array<base>(15)
00955 {
00956   std::vector<base>::operator[](0) = a0;
00957   std::vector<base>::operator[](1) = a1;
00958   std::vector<base>::operator[](2) = a2;
00959   std::vector<base>::operator[](3) = a3;
00960   std::vector<base>::operator[](4) = a4;
00961   std::vector<base>::operator[](5) = a5;
00962   std::vector<base>::operator[](6) = a6;
00963   std::vector<base>::operator[](7) = a7;
00964   std::vector<base>::operator[](8) = a8;
00965   std::vector<base>::operator[](9) = a9;
00966   std::vector<base>::operator[](10) = a10;
00967   std::vector<base>::operator[](11) = a11;
00968   std::vector<base>::operator[](12) = a12;
00969   std::vector<base>::operator[](13) = a13;
00970   std::vector<base>::operator[](14) = a14;
00971 }
00972 template<class base>
00973 MakeArray<base>::MakeArray(
00974                      const base& a0,
00975                      const base& a1,
00976                      const base& a2,
00977                      const base& a3,
00978                      const base& a4,
00979                      const base& a5,
00980                      const base& a6,
00981                      const base& a7,
00982                      const base& a8,
00983                      const base& a9,
00984                      const base& a10,
00985                      const base& a11,
00986                      const base& a12,
00987                      const base& a13,
00988                      const base& a14,
00989                      const base& a15
00990                      ) : Array<base>(16)
00991 {
00992   std::vector<base>::operator[](0) = a0;
00993   std::vector<base>::operator[](1) = a1;
00994   std::vector<base>::operator[](2) = a2;
00995   std::vector<base>::operator[](3) = a3;
00996   std::vector<base>::operator[](4) = a4;
00997   std::vector<base>::operator[](5) = a5;
00998   std::vector<base>::operator[](6) = a6;
00999   std::vector<base>::operator[](7) = a7;
01000   std::vector<base>::operator[](8) = a8;
01001   std::vector<base>::operator[](9) = a9;
01002   std::vector<base>::operator[](10) = a10;
01003   std::vector<base>::operator[](11) = a11;
01004   std::vector<base>::operator[](12) = a12;
01005   std::vector<base>::operator[](13) = a13;
01006   std::vector<base>::operator[](14) = a14;
01007   std::vector<base>::operator[](15) = a15;
01008 }
01009 template<class base>
01010 MakeArray<base>::MakeArray(
01011                      const base& a0,
01012                      const base& a1,
01013                      const base& a2,
01014                      const base& a3,
01015                      const base& a4,
01016                      const base& a5,
01017                      const base& a6,
01018                      const base& a7,
01019                      const base& a8,
01020                      const base& a9,
01021                      const base& a10,
01022                      const base& a11,
01023                      const base& a12,
01024                      const base& a13,
01025                      const base& a14,
01026                      const base& a15,
01027                      const base& a16
01028                      ) : Array<base>(17)
01029 {
01030   std::vector<base>::operator[](0) = a0;
01031   std::vector<base>::operator[](1) = a1;
01032   std::vector<base>::operator[](2) = a2;
01033   std::vector<base>::operator[](3) = a3;
01034   std::vector<base>::operator[](4) = a4;
01035   std::vector<base>::operator[](5) = a5;
01036   std::vector<base>::operator[](6) = a6;
01037   std::vector<base>::operator[](7) = a7;
01038   std::vector<base>::operator[](8) = a8;
01039   std::vector<base>::operator[](9) = a9;
01040   std::vector<base>::operator[](10) = a10;
01041   std::vector<base>::operator[](11) = a11;
01042   std::vector<base>::operator[](12) = a12;
01043   std::vector<base>::operator[](13) = a13;
01044   std::vector<base>::operator[](14) = a14;
01045   std::vector<base>::operator[](15) = a15;
01046   std::vector<base>::operator[](16) = a16;
01047 }
01048 template<class base>
01049 MakeArray<base>::MakeArray(
01050                      const base& a0,
01051                      const base& a1,
01052                      const base& a2,
01053                      const base& a3,
01054                      const base& a4,
01055                      const base& a5,
01056                      const base& a6,
01057                      const base& a7,
01058                      const base& a8,
01059                      const base& a9,
01060                      const base& a10,
01061                      const base& a11,
01062                      const base& a12,
01063                      const base& a13,
01064                      const base& a14,
01065                      const base& a15,
01066                      const base& a16,
01067                      const base& a17
01068                      ) : Array<base>(18)
01069 {
01070   std::vector<base>::operator[](0) = a0;
01071   std::vector<base>::operator[](1) = a1;
01072   std::vector<base>::operator[](2) = a2;
01073   std::vector<base>::operator[](3) = a3;
01074   std::vector<base>::operator[](4) = a4;
01075   std::vector<base>::operator[](5) = a5;
01076   std::vector<base>::operator[](6) = a6;
01077   std::vector<base>::operator[](7) = a7;
01078   std::vector<base>::operator[](8) = a8;
01079   std::vector<base>::operator[](9) = a9;
01080   std::vector<base>::operator[](10) = a10;
01081   std::vector<base>::operator[](11) = a11;
01082   std::vector<base>::operator[](12) = a12;
01083   std::vector<base>::operator[](13) = a13;
01084   std::vector<base>::operator[](14) = a14;
01085   std::vector<base>::operator[](15) = a15;
01086   std::vector<base>::operator[](16) = a16;
01087   std::vector<base>::operator[](17) = a17;
01088 }
01089 template<class base>
01090 MakeArray<base>::MakeArray(
01091                      const base& a0,
01092                      const base& a1,
01093                      const base& a2,
01094                      const base& a3,
01095                      const base& a4,
01096                      const base& a5,
01097                      const base& a6,
01098                      const base& a7,
01099                      const base& a8,
01100                      const base& a9,
01101                      const base& a10,
01102                      const base& a11,
01103                      const base& a12,
01104                      const base& a13,
01105                      const base& a14,
01106                      const base& a15,
01107                      const base& a16,
01108                      const base& a17,
01109                      const base& a18
01110                      ) : Array<base>(19)
01111 {
01112   std::vector<base>::operator[](0) = a0;
01113   std::vector<base>::operator[](1) = a1;
01114   std::vector<base>::operator[](2) = a2;
01115   std::vector<base>::operator[](3) = a3;
01116   std::vector<base>::operator[](4) = a4;
01117   std::vector<base>::operator[](5) = a5;
01118   std::vector<base>::operator[](6) = a6;
01119   std::vector<base>::operator[](7) = a7;
01120   std::vector<base>::operator[](8) = a8;
01121   std::vector<base>::operator[](9) = a9;
01122   std::vector<base>::operator[](10) = a10;
01123   std::vector<base>::operator[](11) = a11;
01124   std::vector<base>::operator[](12) = a12;
01125   std::vector<base>::operator[](13) = a13;
01126   std::vector<base>::operator[](14) = a14;
01127   std::vector<base>::operator[](15) = a15;
01128   std::vector<base>::operator[](16) = a16;
01129   std::vector<base>::operator[](17) = a17;
01130   std::vector<base>::operator[](18) = a18;
01131 }
01132 template<class base>
01133 MakeArray<base>::MakeArray(
01134                      const base& a0,
01135                      const base& a1,
01136                      const base& a2,
01137                      const base& a3,
01138                      const base& a4,
01139                      const base& a5,
01140                      const base& a6,
01141                      const base& a7,
01142                      const base& a8,
01143                      const base& a9,
01144                      const base& a10,
01145                      const base& a11,
01146                      const base& a12,
01147                      const base& a13,
01148                      const base& a14,
01149                      const base& a15,
01150                      const base& a16,
01151                      const base& a17,
01152                      const base& a18,
01153                      const base& a19
01154                      ) : Array<base>(20)
01155 {
01156   std::vector<base>::operator[](0) = a0;
01157   std::vector<base>::operator[](1) = a1;
01158   std::vector<base>::operator[](2) = a2;
01159   std::vector<base>::operator[](3) = a3;
01160   std::vector<base>::operator[](4) = a4;
01161   std::vector<base>::operator[](5) = a5;
01162   std::vector<base>::operator[](6) = a6;
01163   std::vector<base>::operator[](7) = a7;
01164   std::vector<base>::operator[](8) = a8;
01165   std::vector<base>::operator[](9) = a9;
01166   std::vector<base>::operator[](10) = a10;
01167   std::vector<base>::operator[](11) = a11;
01168   std::vector<base>::operator[](12) = a12;
01169   std::vector<base>::operator[](13) = a13;
01170   std::vector<base>::operator[](14) = a14;
01171   std::vector<base>::operator[](15) = a15;
01172   std::vector<base>::operator[](16) = a16;
01173   std::vector<base>::operator[](17) = a17;
01174   std::vector<base>::operator[](18) = a18;
01175   std::vector<base>::operator[](19) = a19;
01176 }
01177 template<class base>
01178 MakeArray<base>::MakeArray(
01179                      const base& a0,
01180                      const base& a1,
01181                      const base& a2,
01182                      const base& a3,
01183                      const base& a4,
01184                      const base& a5,
01185                      const base& a6,
01186                      const base& a7,
01187                      const base& a8,
01188                      const base& a9,
01189                      const base& a10,
01190                      const base& a11,
01191                      const base& a12,
01192                      const base& a13,
01193                      const base& a14,
01194                      const base& a15,
01195                      const base& a16,
01196                      const base& a17,
01197                      const base& a18,
01198                      const base& a19,
01199                      const base& a20
01200                      ) : Array<base>(21)
01201 {
01202   std::vector<base>::operator[](0) = a0;
01203   std::vector<base>::operator[](1) = a1;
01204   std::vector<base>::operator[](2) = a2;
01205   std::vector<base>::operator[](3) = a3;
01206   std::vector<base>::operator[](4) = a4;
01207   std::vector<base>::operator[](5) = a5;
01208   std::vector<base>::operator[](6) = a6;
01209   std::vector<base>::operator[](7) = a7;
01210   std::vector<base>::operator[](8) = a8;
01211   std::vector<base>::operator[](9) = a9;
01212   std::vector<base>::operator[](10) = a10;
01213   std::vector<base>::operator[](11) = a11;
01214   std::vector<base>::operator[](12) = a12;
01215   std::vector<base>::operator[](13) = a13;
01216   std::vector<base>::operator[](14) = a14;
01217   std::vector<base>::operator[](15) = a15;
01218   std::vector<base>::operator[](16) = a16;
01219   std::vector<base>::operator[](17) = a17;
01220   std::vector<base>::operator[](18) = a18;
01221   std::vector<base>::operator[](19) = a19;
01222   std::vector<base>::operator[](20) = a20;
01223 }
01224 template<class base>
01225 MakeArray<base>::MakeArray(
01226                      const base& a0,
01227                      const base& a1,
01228                      const base& a2,
01229                      const base& a3,
01230                      const base& a4,
01231                      const base& a5,
01232                      const base& a6,
01233                      const base& a7,
01234                      const base& a8,
01235                      const base& a9,
01236                      const base& a10,
01237                      const base& a11,
01238                      const base& a12,
01239                      const base& a13,
01240                      const base& a14,
01241                      const base& a15,
01242                      const base& a16,
01243                      const base& a17,
01244                      const base& a18,
01245                      const base& a19,
01246                      const base& a20,
01247                      const base& a21
01248                      ) : Array<base>(22)
01249 {
01250   std::vector<base>::operator[](0) = a0;
01251   std::vector<base>::operator[](1) = a1;
01252   std::vector<base>::operator[](2) = a2;
01253   std::vector<base>::operator[](3) = a3;
01254   std::vector<base>::operator[](4) = a4;
01255   std::vector<base>::operator[](5) = a5;
01256   std::vector<base>::operator[](6) = a6;
01257   std::vector<base>::operator[](7) = a7;
01258   std::vector<base>::operator[](8) = a8;
01259   std::vector<base>::operator[](9) = a9;
01260   std::vector<base>::operator[](10) = a10;
01261   std::vector<base>::operator[](11) = a11;
01262   std::vector<base>::operator[](12) = a12;
01263   std::vector<base>::operator[](13) = a13;
01264   std::vector<base>::operator[](14) = a14;
01265   std::vector<base>::operator[](15) = a15;
01266   std::vector<base>::operator[](16) = a16;
01267   std::vector<base>::operator[](17) = a17;
01268   std::vector<base>::operator[](18) = a18;
01269   std::vector<base>::operator[](19) = a19;
01270   std::vector<base>::operator[](20) = a20;
01271   std::vector<base>::operator[](21) = a21;
01272 }
01273 template<class base>
01274 MakeArray<base>::MakeArray(
01275                      const base& a0,
01276                      const base& a1,
01277                      const base& a2,
01278                      const base& a3,
01279                      const base& a4,
01280                      const base& a5,
01281                      const base& a6,
01282                      const base& a7,
01283                      const base& a8,
01284                      const base& a9,
01285                      const base& a10,
01286                      const base& a11,
01287                      const base& a12,
01288                      const base& a13,
01289                      const base& a14,
01290                      const base& a15,
01291                      const base& a16,
01292                      const base& a17,
01293                      const base& a18,
01294                      const base& a19,
01295                      const base& a20,
01296                      const base& a21,
01297                      const base& a22
01298                      ) : Array<base>(23)
01299 {
01300   std::vector<base>::operator[](0) = a0;
01301   std::vector<base>::operator[](1) = a1;
01302   std::vector<base>::operator[](2) = a2;
01303   std::vector<base>::operator[](3) = a3;
01304   std::vector<base>::operator[](4) = a4;
01305   std::vector<base>::operator[](5) = a5;
01306   std::vector<base>::operator[](6) = a6;
01307   std::vector<base>::operator[](7) = a7;
01308   std::vector<base>::operator[](8) = a8;
01309   std::vector<base>::operator[](9) = a9;
01310   std::vector<base>::operator[](10) = a10;
01311   std::vector<base>::operator[](11) = a11;
01312   std::vector<base>::operator[](12) = a12;
01313   std::vector<base>::operator[](13) = a13;
01314   std::vector<base>::operator[](14) = a14;
01315   std::vector<base>::operator[](15) = a15;
01316   std::vector<base>::operator[](16) = a16;
01317   std::vector<base>::operator[](17) = a17;
01318   std::vector<base>::operator[](18) = a18;
01319   std::vector<base>::operator[](19) = a19;
01320   std::vector<base>::operator[](20) = a20;
01321   std::vector<base>::operator[](21) = a21;
01322   std::vector<base>::operator[](22) = a22;
01323 }
01324 template<class base>
01325 MakeArray<base>::MakeArray(
01326                      const base& a0,
01327                      const base& a1,
01328                      const base& a2,
01329                      const base& a3,
01330                      const base& a4,
01331                      const base& a5,
01332                      const base& a6,
01333                      const base& a7,
01334                      const base& a8,
01335                      const base& a9,
01336                      const base& a10,
01337                      const base& a11,
01338                      const base& a12,
01339                      const base& a13,
01340                      const base& a14,
01341                      const base& a15,
01342                      const base& a16,
01343                      const base& a17,
01344                      const base& a18,
01345                      const base& a19,
01346                      const base& a20,
01347                      const base& a21,
01348                      const base& a22,
01349                      const base& a23
01350                      ) : Array<base>(24)
01351 {
01352   std::vector<base>::operator[](0) = a0;
01353   std::vector<base>::operator[](1) = a1;
01354   std::vector<base>::operator[](2) = a2;
01355   std::vector<base>::operator[](3) = a3;
01356   std::vector<base>::operator[](4) = a4;
01357   std::vector<base>::operator[](5) = a5;
01358   std::vector<base>::operator[](6) = a6;
01359   std::vector<base>::operator[](7) = a7;
01360   std::vector<base>::operator[](8) = a8;
01361   std::vector<base>::operator[](9) = a9;
01362   std::vector<base>::operator[](10) = a10;
01363   std::vector<base>::operator[](11) = a11;
01364   std::vector<base>::operator[](12) = a12;
01365   std::vector<base>::operator[](13) = a13;
01366   std::vector<base>::operator[](14) = a14;
01367   std::vector<base>::operator[](15) = a15;
01368   std::vector<base>::operator[](16) = a16;
01369   std::vector<base>::operator[](17) = a17;
01370   std::vector<base>::operator[](18) = a18;
01371   std::vector<base>::operator[](19) = a19;
01372   std::vector<base>::operator[](20) = a20;
01373   std::vector<base>::operator[](21) = a21;
01374   std::vector<base>::operator[](22) = a22;
01375   std::vector<base>::operator[](23) = a23;
01376 }
01377 template<class base>
01378 MakeArray<base>::MakeArray(
01379                      const base& a0,
01380                      const base& a1,
01381                      const base& a2,
01382                      const base& a3,
01383                      const base& a4,
01384                      const base& a5,
01385                      const base& a6,
01386                      const base& a7,
01387                      const base& a8,
01388                      const base& a9,
01389                      const base& a10,
01390                      const base& a11,
01391                      const base& a12,
01392                      const base& a13,
01393                      const base& a14,
01394                      const base& a15,
01395                      const base& a16,
01396                      const base& a17,
01397                      const base& a18,
01398                      const base& a19,
01399                      const base& a20,
01400                      const base& a21,
01401                      const base& a22,
01402                      const base& a23,
01403                      const base& a24
01404                      ) : Array<base>(25)
01405 {
01406   std::vector<base>::operator[](0) = a0;
01407   std::vector<base>::operator[](1) = a1;
01408   std::vector<base>::operator[](2) = a2;
01409   std::vector<base>::operator[](3) = a3;
01410   std::vector<base>::operator[](4) = a4;
01411   std::vector<base>::operator[](5) = a5;
01412   std::vector<base>::operator[](6) = a6;
01413   std::vector<base>::operator[](7) = a7;
01414   std::vector<base>::operator[](8) = a8;
01415   std::vector<base>::operator[](9) = a9;
01416   std::vector<base>::operator[](10) = a10;
01417   std::vector<base>::operator[](11) = a11;
01418   std::vector<base>::operator[](12) = a12;
01419   std::vector<base>::operator[](13) = a13;
01420   std::vector<base>::operator[](14) = a14;
01421   std::vector<base>::operator[](15) = a15;
01422   std::vector<base>::operator[](16) = a16;
01423   std::vector<base>::operator[](17) = a17;
01424   std::vector<base>::operator[](18) = a18;
01425   std::vector<base>::operator[](19) = a19;
01426   std::vector<base>::operator[](20) = a20;
01427   std::vector<base>::operator[](21) = a21;
01428   std::vector<base>::operator[](22) = a22;
01429   std::vector<base>::operator[](23) = a23;
01430   std::vector<base>::operator[](24) = a24;
01431 }
01432 template<class base>
01433 MakeArray<base>::MakeArray(
01434                      const base& a0,
01435                      const base& a1,
01436                      const base& a2,
01437                      const base& a3,
01438                      const base& a4,
01439                      const base& a5,
01440                      const base& a6,
01441                      const base& a7,
01442                      const base& a8,
01443                      const base& a9,
01444                      const base& a10,
01445                      const base& a11,
01446                      const base& a12,
01447                      const base& a13,
01448                      const base& a14,
01449                      const base& a15,
01450                      const base& a16,
01451                      const base& a17,
01452                      const base& a18,
01453                      const base& a19,
01454                      const base& a20,
01455                      const base& a21,
01456                      const base& a22,
01457                      const base& a23,
01458                      const base& a24,
01459                      const base& a25
01460                      ) : Array<base>(26)
01461 {
01462   std::vector<base>::operator[](0) = a0;
01463   std::vector<base>::operator[](1) = a1;
01464   std::vector<base>::operator[](2) = a2;
01465   std::vector<base>::operator[](3) = a3;
01466   std::vector<base>::operator[](4) = a4;
01467   std::vector<base>::operator[](5) = a5;
01468   std::vector<base>::operator[](6) = a6;
01469   std::vector<base>::operator[](7) = a7;
01470   std::vector<base>::operator[](8) = a8;
01471   std::vector<base>::operator[](9) = a9;
01472   std::vector<base>::operator[](10) = a10;
01473   std::vector<base>::operator[](11) = a11;
01474   std::vector<base>::operator[](12) = a12;
01475   std::vector<base>::operator[](13) = a13;
01476   std::vector<base>::operator[](14) = a14;
01477   std::vector<base>::operator[](15) = a15;
01478   std::vector<base>::operator[](16) = a16;
01479   std::vector<base>::operator[](17) = a17;
01480   std::vector<base>::operator[](18) = a18;
01481   std::vector<base>::operator[](19) = a19;
01482   std::vector<base>::operator[](20) = a20;
01483   std::vector<base>::operator[](21) = a21;
01484   std::vector<base>::operator[](22) = a22;
01485   std::vector<base>::operator[](23) = a23;
01486   std::vector<base>::operator[](24) = a24;
01487   std::vector<base>::operator[](25) = a25;
01488 }
01489 template<class base>
01490 MakeArray<base>::MakeArray(
01491                      const base& a0,
01492                      const base& a1,
01493                      const base& a2,
01494                      const base& a3,
01495                      const base& a4,
01496                      const base& a5,
01497                      const base& a6,
01498                      const base& a7,
01499                      const base& a8,
01500                      const base& a9,
01501                      const base& a10,
01502                      const base& a11,
01503                      const base& a12,
01504                      const base& a13,
01505                      const base& a14,
01506                      const base& a15,
01507                      const base& a16,
01508                      const base& a17,
01509                      const base& a18,
01510                      const base& a19,
01511                      const base& a20,
01512                      const base& a21,
01513                      const base& a22,
01514                      const base& a23,
01515                      const base& a24,
01516                      const base& a25,
01517                      const base& a26
01518                      ) : Array<base>(27)
01519 {
01520   std::vector<base>::operator[](0) = a0;
01521   std::vector<base>::operator[](1) = a1;
01522   std::vector<base>::operator[](2) = a2;
01523   std::vector<base>::operator[](3) = a3;
01524   std::vector<base>::operator[](4) = a4;
01525   std::vector<base>::operator[](5) = a5;
01526   std::vector<base>::operator[](6) = a6;
01527   std::vector<base>::operator[](7) = a7;
01528   std::vector<base>::operator[](8) = a8;
01529   std::vector<base>::operator[](9) = a9;
01530   std::vector<base>::operator[](10) = a10;
01531   std::vector<base>::operator[](11) = a11;
01532   std::vector<base>::operator[](12) = a12;
01533   std::vector<base>::operator[](13) = a13;
01534   std::vector<base>::operator[](14) = a14;
01535   std::vector<base>::operator[](15) = a15;
01536   std::vector<base>::operator[](16) = a16;
01537   std::vector<base>::operator[](17) = a17;
01538   std::vector<base>::operator[](18) = a18;
01539   std::vector<base>::operator[](19) = a19;
01540   std::vector<base>::operator[](20) = a20;
01541   std::vector<base>::operator[](21) = a21;
01542   std::vector<base>::operator[](22) = a22;
01543   std::vector<base>::operator[](23) = a23;
01544   std::vector<base>::operator[](24) = a24;
01545   std::vector<base>::operator[](25) = a25;
01546   std::vector<base>::operator[](26) = a26;
01547 }
01548 template<class base>
01549 MakeArray<base>::MakeArray(
01550                      const base& a0,
01551                      const base& a1,
01552                      const base& a2,
01553                      const base& a3,
01554                      const base& a4,
01555                      const base& a5,
01556                      const base& a6,
01557                      const base& a7,
01558                      const base& a8,
01559                      const base& a9,
01560                      const base& a10,
01561                      const base& a11,
01562                      const base& a12,
01563                      const base& a13,
01564                      const base& a14,
01565                      const base& a15,
01566                      const base& a16,
01567                      const base& a17,
01568                      const base& a18,
01569                      const base& a19,
01570                      const base& a20,
01571                      const base& a21,
01572                      const base& a22,
01573                      const base& a23,
01574                      const base& a24,
01575                      const base& a25,
01576                      const base& a26,
01577                      const base& a27
01578                      ) : Array<base>(28)
01579 {
01580   std::vector<base>::operator[](0) = a0;
01581   std::vector<base>::operator[](1) = a1;
01582   std::vector<base>::operator[](2) = a2;
01583   std::vector<base>::operator[](3) = a3;
01584   std::vector<base>::operator[](4) = a4;
01585   std::vector<base>::operator[](5) = a5;
01586   std::vector<base>::operator[](6) = a6;
01587   std::vector<base>::operator[](7) = a7;
01588   std::vector<base>::operator[](8) = a8;
01589   std::vector<base>::operator[](9) = a9;
01590   std::vector<base>::operator[](10) = a10;
01591   std::vector<base>::operator[](11) = a11;
01592   std::vector<base>::operator[](12) = a12;
01593   std::vector<base>::operator[](13) = a13;
01594   std::vector<base>::operator[](14) = a14;
01595   std::vector<base>::operator[](15) = a15;
01596   std::vector<base>::operator[](16) = a16;
01597   std::vector<base>::operator[](17) = a17;
01598   std::vector<base>::operator[](18) = a18;
01599   std::vector<base>::operator[](19) = a19;
01600   std::vector<base>::operator[](20) = a20;
01601   std::vector<base>::operator[](21) = a21;
01602   std::vector<base>::operator[](22) = a22;
01603   std::vector<base>::operator[](23) = a23;
01604   std::vector<base>::operator[](24) = a24;
01605   std::vector<base>::operator[](25) = a25;
01606   std::vector<base>::operator[](26) = a26;
01607   std::vector<base>::operator[](27) = a27;
01608 }
01609 template<class base>
01610 MakeArray<base>::MakeArray(
01611                      const base& a0,
01612                      const base& a1,
01613                      const base& a2,
01614                      const base& a3,
01615                      const base& a4,
01616                      const base& a5,
01617                      const base& a6,
01618                      const base& a7,
01619                      const base& a8,
01620                      const base& a9,
01621                      const base& a10,
01622                      const base& a11,
01623                      const base& a12,
01624                      const base& a13,
01625                      const base& a14,
01626                      const base& a15,
01627                      const base& a16,
01628                      const base& a17,
01629                      const base& a18,
01630                      const base& a19,
01631                      const base& a20,
01632                      const base& a21,
01633                      const base& a22,
01634                      const base& a23,
01635                      const base& a24,
01636                      const base& a25,
01637                      const base& a26,
01638                      const base& a27,
01639                      const base& a28
01640                      ) : Array<base>(29)
01641 {
01642   std::vector<base>::operator[](0) = a0;
01643   std::vector<base>::operator[](1) = a1;
01644   std::vector<base>::operator[](2) = a2;
01645   std::vector<base>::operator[](3) = a3;
01646   std::vector<base>::operator[](4) = a4;
01647   std::vector<base>::operator[](5) = a5;
01648   std::vector<base>::operator[](6) = a6;
01649   std::vector<base>::operator[](7) = a7;
01650   std::vector<base>::operator[](8) = a8;
01651   std::vector<base>::operator[](9) = a9;
01652   std::vector<base>::operator[](10) = a10;
01653   std::vector<base>::operator[](11) = a11;
01654   std::vector<base>::operator[](12) = a12;
01655   std::vector<base>::operator[](13) = a13;
01656   std::vector<base>::operator[](14) = a14;
01657   std::vector<base>::operator[](15) = a15;
01658   std::vector<base>::operator[](16) = a16;
01659   std::vector<base>::operator[](17) = a17;
01660   std::vector<base>::operator[](18) = a18;
01661   std::vector<base>::operator[](19) = a19;
01662   std::vector<base>::operator[](20) = a20;
01663   std::vector<base>::operator[](21) = a21;
01664   std::vector<base>::operator[](22) = a22;
01665   std::vector<base>::operator[](23) = a23;
01666   std::vector<base>::operator[](24) = a24;
01667   std::vector<base>::operator[](25) = a25;
01668   std::vector<base>::operator[](26) = a26;
01669   std::vector<base>::operator[](27) = a27;
01670   std::vector<base>::operator[](28) = a28;
01671 }
01672 template<class base>
01673 MakeArray<base>::MakeArray(
01674                      const base& a0,
01675                      const base& a1,
01676                      const base& a2,
01677                      const base& a3,
01678                      const base& a4,
01679                      const base& a5,
01680                      const base& a6,
01681                      const base& a7,
01682                      const base& a8,
01683                      const base& a9,
01684                      const base& a10,
01685                      const base& a11,
01686                      const base& a12,
01687                      const base& a13,
01688                      const base& a14,
01689                      const base& a15,
01690                      const base& a16,
01691                      const base& a17,
01692                      const base& a18,
01693                      const base& a19,
01694                      const base& a20,
01695                      const base& a21,
01696                      const base& a22,
01697                      const base& a23,
01698                      const base& a24,
01699                      const base& a25,
01700                      const base& a26,
01701                      const base& a27,
01702                      const base& a28,
01703                      const base& a29
01704                      ) : Array<base>(30)
01705 {
01706   std::vector<base>::operator[](0) = a0;
01707   std::vector<base>::operator[](1) = a1;
01708   std::vector<base>::operator[](2) = a2;
01709   std::vector<base>::operator[](3) = a3;
01710   std::vector<base>::operator[](4) = a4;
01711   std::vector<base>::operator[](5) = a5;
01712   std::vector<base>::operator[](6) = a6;
01713   std::vector<base>::operator[](7) = a7;
01714   std::vector<base>::operator[](8) = a8;
01715   std::vector<base>::operator[](9) = a9;
01716   std::vector<base>::operator[](10) = a10;
01717   std::vector<base>::operator[](11) = a11;
01718   std::vector<base>::operator[](12) = a12;
01719   std::vector<base>::operator[](13) = a13;
01720   std::vector<base>::operator[](14) = a14;
01721   std::vector<base>::operator[](15) = a15;
01722   std::vector<base>::operator[](16) = a16;
01723   std::vector<base>::operator[](17) = a17;
01724   std::vector<base>::operator[](18) = a18;
01725   std::vector<base>::operator[](19) = a19;
01726   std::vector<base>::operator[](20) = a20;
01727   std::vector<base>::operator[](21) = a21;
01728   std::vector<base>::operator[](22) = a22;
01729   std::vector<base>::operator[](23) = a23;
01730   std::vector<base>::operator[](24) = a24;
01731   std::vector<base>::operator[](25) = a25;
01732   std::vector<base>::operator[](26) = a26;
01733   std::vector<base>::operator[](27) = a27;
01734   std::vector<base>::operator[](28) = a28;
01735   std::vector<base>::operator[](29) = a29;
01736 }
01737 template<class base>
01738 MakeArray<base>::MakeArray(
01739                      const base& a0,
01740                      const base& a1,
01741                      const base& a2,
01742                      const base& a3,
01743                      const base& a4,
01744                      const base& a5,
01745                      const base& a6,
01746                      const base& a7,
01747                      const base& a8,
01748                      const base& a9,
01749                      const base& a10,
01750                      const base& a11,
01751                      const base& a12,
01752                      const base& a13,
01753                      const base& a14,
01754                      const base& a15,
01755                      const base& a16,
01756                      const base& a17,
01757                      const base& a18,
01758                      const base& a19,
01759                      const base& a20,
01760                      const base& a21,
01761                      const base& a22,
01762                      const base& a23,
01763                      const base& a24,
01764                      const base& a25,
01765                      const base& a26,
01766                      const base& a27,
01767                      const base& a28,
01768                      const base& a29,
01769                      const base& a30
01770                      ) : Array<base>(31)
01771 {
01772   std::vector<base>::operator[](0) = a0;
01773   std::vector<base>::operator[](1) = a1;
01774   std::vector<base>::operator[](2) = a2;
01775   std::vector<base>::operator[](3) = a3;
01776   std::vector<base>::operator[](4) = a4;
01777   std::vector<base>::operator[](5) = a5;
01778   std::vector<base>::operator[](6) = a6;
01779   std::vector<base>::operator[](7) = a7;
01780   std::vector<base>::operator[](8) = a8;
01781   std::vector<base>::operator[](9) = a9;
01782   std::vector<base>::operator[](10) = a10;
01783   std::vector<base>::operator[](11) = a11;
01784   std::vector<base>::operator[](12) = a12;
01785   std::vector<base>::operator[](13) = a13;
01786   std::vector<base>::operator[](14) = a14;
01787   std::vector<base>::operator[](15) = a15;
01788   std::vector<base>::operator[](16) = a16;
01789   std::vector<base>::operator[](17) = a17;
01790   std::vector<base>::operator[](18) = a18;
01791   std::vector<base>::operator[](19) = a19;
01792   std::vector<base>::operator[](20) = a20;
01793   std::vector<base>::operator[](21) = a21;
01794   std::vector<base>::operator[](22) = a22;
01795   std::vector<base>::operator[](23) = a23;
01796   std::vector<base>::operator[](24) = a24;
01797   std::vector<base>::operator[](25) = a25;
01798   std::vector<base>::operator[](26) = a26;
01799   std::vector<base>::operator[](27) = a27;
01800   std::vector<base>::operator[](28) = a28;
01801   std::vector<base>::operator[](29) = a29;
01802   std::vector<base>::operator[](30) = a30;
01803 }
01804 template<class base>
01805 MakeArray<base>::MakeArray(
01806                      const base& a0,
01807                      const base& a1,
01808                      const base& a2,
01809                      const base& a3,
01810                      const base& a4,
01811                      const base& a5,
01812                      const base& a6,
01813                      const base& a7,
01814                      const base& a8,
01815                      const base& a9,
01816                      const base& a10,
01817                      const base& a11,
01818                      const base& a12,
01819                      const base& a13,
01820                      const base& a14,
01821                      const base& a15,
01822                      const base& a16,
01823                      const base& a17,
01824                      const base& a18,
01825                      const base& a19,
01826                      const base& a20,
01827                      const base& a21,
01828                      const base& a22,
01829                      const base& a23,
01830                      const base& a24,
01831                      const base& a25,
01832                      const base& a26,
01833                      const base& a27,
01834                      const base& a28,
01835                      const base& a29,
01836                      const base& a30,
01837                      const base& a31
01838                      ) : Array<base>(32)
01839 {
01840   std::vector<base>::operator[](0) = a0;
01841   std::vector<base>::operator[](1) = a1;
01842   std::vector<base>::operator[](2) = a2;
01843   std::vector<base>::operator[](3) = a3;
01844   std::vector<base>::operator[](4) = a4;
01845   std::vector<base>::operator[](5) = a5;
01846   std::vector<base>::operator[](6) = a6;
01847   std::vector<base>::operator[](7) = a7;
01848   std::vector<base>::operator[](8) = a8;
01849   std::vector<base>::operator[](9) = a9;
01850   std::vector<base>::operator[](10) = a10;
01851   std::vector<base>::operator[](11) = a11;
01852   std::vector<base>::operator[](12) = a12;
01853   std::vector<base>::operator[](13) = a13;
01854   std::vector<base>::operator[](14) = a14;
01855   std::vector<base>::operator[](15) = a15;
01856   std::vector<base>::operator[](16) = a16;
01857   std::vector<base>::operator[](17) = a17;
01858   std::vector<base>::operator[](18) = a18;
01859   std::vector<base>::operator[](19) = a19;
01860   std::vector<base>::operator[](20) = a20;
01861   std::vector<base>::operator[](21) = a21;
01862   std::vector<base>::operator[](22) = a22;
01863   std::vector<base>::operator[](23) = a23;
01864   std::vector<base>::operator[](24) = a24;
01865   std::vector<base>::operator[](25) = a25;
01866   std::vector<base>::operator[](26) = a26;
01867   std::vector<base>::operator[](27) = a27;
01868   std::vector<base>::operator[](28) = a28;
01869   std::vector<base>::operator[](29) = a29;
01870   std::vector<base>::operator[](30) = a30;
01871   std::vector<base>::operator[](31) = a31;
01872 }
01873 
01874 
01875 
01876 #endif  // make_array_h