The revised patch from Leon for new particle effects.
authorTon Roosendaal <ton@blender.org>
Sat, 26 Jun 2004 18:18:11 +0000 (18:18 +0000)
committerTon Roosendaal <ton@blender.org>
Sat, 26 Jun 2004 18:18:11 +0000 (18:18 +0000)
New is that objects can have a force field, and Meshes can even deflect
(collide) particles. This is in a new sub-menu in Object buttons F7

The full instructions where on the web, Leon mailed it me and I will put
it in CMS tomorrow. For those who like to play with it now, here are demo
files:

http://download.blender.org/demo/test/

Quite some changes where in the integration though... so previous created
particle deflectors will not work. Changes to mention now are:
- gravity is renamed to 'force field'
- force field and deflector options are in Object now, not in Mesh
- the options also have its own struct, doesnt add to Object by default
- force fields are possible for all object types, but only work on center.
  So empty objects are typical for it.

Work to do:
- add draw method in 3d win to denote forcefield objects
- check on the UI (panel with different size?)
- add 'recalc' button in deflector panel

24 files changed:
source/blender/blenkernel/BKE_effect.h
source/blender/blenkernel/intern/effect.c
source/blender/blenkernel/intern/ipo.c
source/blender/blenkernel/intern/object.c
source/blender/blenloader/intern/readfile.c
source/blender/blenloader/intern/writefile.c
source/blender/include/BIF_butspace.h
source/blender/include/BIF_resources.h
source/blender/include/BSE_editipo_types.h
source/blender/include/butspace.h
source/blender/include/ipo.h
source/blender/include/mydevice.h
source/blender/makesdna/DNA_ipo_types.h
source/blender/makesdna/DNA_mesh_types.h
source/blender/makesdna/DNA_object_types.h
source/blender/render/intern/source/zbuf.c
source/blender/src/blenderbuttons.c
source/blender/src/butspace.c
source/blender/src/buttons_editing.c
source/blender/src/buttons_object.c
source/blender/src/drawview.c
source/blender/src/editipo.c
source/blender/src/glutil.c
source/blender/src/header_buttonswin.c

index 17cabf0c3905210df4c7b7bdc8f48af0462dd433..e3b005b664ef9782bf4ea955909ae0fe60e81ebb 100644 (file)
@@ -55,7 +55,7 @@ struct Particle *new_particle(struct PartEff *paf);
 struct PartEff *give_parteff(struct Object *ob);
 void where_is_particle(struct PartEff *paf, struct Particle *pa, float ctime, float *vec);
 void particle_tex(struct MTex *mtex, struct PartEff *paf, float *co, float *no);
-void make_particle_keys(int depth, int nr, struct PartEff *paf, struct Particle *part, float *force, int deform, struct MTex *mtex);
+void make_particle_keys(int depth, int nr, struct PartEff *paf, struct Particle *part, float *force, int deform, struct MTex *mtex, unsigned int par_layer);
 void init_mv_jit(float *jit, int num,float seed2);
 void give_mesh_mvert(struct Mesh *me, int nr, float *co, short *no,float seed2);
 void build_particle_system(struct Object *ob);
index 22f7e524a15d37639f8f1792ff311a8b0f5ed519..76f9a7b035b82a9c070575661555b7a109f20c0f 100644 (file)
@@ -1,4 +1,4 @@
-/*  effect.c 
+/*  effect.c
  * 
  * 
  * $Id$
@@ -47,6 +47,7 @@
 #include "DNA_texture_types.h"
 #include "DNA_scene_types.h"
 #include "DNA_lattice_types.h"
+#include "DNA_ipo_types.h"
 
 #include "BLI_blenlib.h"
 #include "BLI_arithb.h"
 #include "BKE_key.h"
 #include "BKE_ipo.h"
 #include "BKE_screen.h"
+#include "BKE_main.h"
 #include "BKE_blender.h"
 #include "BKE_object.h"
 #include "BKE_displist.h"
 #include "BKE_lattice.h"
-
+#include "BKE_mesh.h"
+#include "BKE_action.h"
+#include "BKE_constraint.h"
 
 #ifdef HAVE_CONFIG_H
 #include <config.h>
@@ -303,7 +307,6 @@ void where_is_particle(PartEff *paf, Particle *pa, float ctime, float *vec)
 
 }
 
-
 void particle_tex(MTex *mtex, PartEff *paf, float *co, float *no)
 {                              
        extern float Tin, Tr, Tg, Tb;
@@ -322,6 +325,7 @@ void particle_tex(MTex *mtex, PartEff *paf, float *co, float *no)
                no[0]+= (Tr-0.5f)*paf->texfac;
                no[1]+= (Tg-0.5f)*paf->texfac;
                no[2]+= (Tb-0.5f)*paf->texfac;
+               //printf("Test %f %f %f \n", Tr, Tg, Tb);
        }
        else {  /* PAF_TEXGRAD */
                
@@ -343,51 +347,486 @@ void particle_tex(MTex *mtex, PartEff *paf, float *co, float *no)
        }
 }
 
-void make_particle_keys(int depth, int nr, PartEff *paf, Particle *part, float *force, int deform, MTex *mtex)
+static float linetriangle(float p1[3], float p2[3], float v0[3], float v1[3], float v2[3])
+{
+       float p[3], s[3], d[3], e1[3], e2[3], q[3];
+       float a, f, u, v, t;
+
+       VecSubf(e1, v1, v0);
+       VecSubf(e2, v2, v0);
+       VecSubf(d, p2, p1);
+    Crossf(p, d, e2);
+    a = Inpf(e1, p);
+    if ((a > -0.000001) && (a < 0.000001)) return -1;
+    f = 1/a;
+    VecSubf(s, p1, v0);
+    u = f * Inpf(s, p);
+    if ((u < 0.0)||(u > 1.0)) return -1;
+    Crossf(q, s, e1);
+    t = f * Inpf(e2, q);
+    if ((t < 0.0)||(t > 1.0)) return -1;
+    v = f * Inpf(d, q);
+    if ((v < 0.0)||((u + v) > 1.0)) return -1;
+    return t;
+}
+
+static void get_forcefield(float opco[], float force[], float cur_time, unsigned int par_layer)
+{
+       /* Particle gravity code */
+       /* Modifies the force on a particle according to its  */
+       /* distance from mesh vertices set to attract / repel */
+       Object *ob;
+       Base *base;
+       float vect_to_vert[3];
+       float f_force, distance;
+       float obloc[3];
+       float force_val, ffall_val;
+       short cur_frame;
+
+       /* Cycle through objects, get total of (1/(gravity_strength * dist^gravity_power)) */
+       /* Check for min distance here? */
+       base = G.scene->base.first;
+       while (base) {
+               if(base->lay & par_layer) {
+                       ob= base->object;
+                       if(ob->pd && ob->pd->forcefield) {
+
+                               /* Need to set r.cfra for paths (investigate, ton) */
+                               cur_frame = G.scene->r.cfra;
+                               G.scene->r.cfra = (short)cur_time;
+                               where_is_object_time(ob, cur_time);
+                               G.scene->r.cfra = cur_frame;
+                               
+                               /* only use center of object */
+                               obloc[0] = ob->obmat[3][0];
+                               obloc[1] = ob->obmat[3][1];
+                               obloc[2] = ob->obmat[3][2];
+                               
+                               /* Get IPO force strength and fall off values here */
+                               if (has_ipo_code(ob->ipo, OB_PD_FSTR))
+                                       force_val = IPO_GetFloatValue(ob->ipo, OB_PD_FSTR, cur_time);
+                               else 
+                                       force_val = ob->pd->f_strength;
+
+                               if (has_ipo_code(ob->ipo, OB_PD_FFALL)) 
+                                       ffall_val = IPO_GetFloatValue(ob->ipo, OB_PD_FFALL, cur_time);
+                               else 
+                                       ffall_val = ob->pd->f_power;
+
+                               /* Now calculate the gravitational force */
+                               VecSubf(vect_to_vert, obloc, opco);
+                               distance = Normalise(vect_to_vert);
+
+                               /* Limit minimum distance to vertex so that */
+                               /* the force is not too big */
+                               if (distance < 0.001) distance = 0.001;
+                               f_force = (force_val)*(1/(1000 * pow((double)distance, (double)ffall_val)));
+                               force[0] += (vect_to_vert[0] * f_force );
+                               force[1] += (vect_to_vert[1] * f_force );
+                               force[2] += (vect_to_vert[2] * f_force );
+
+                       }
+               }
+               base = base->next;
+       }
+}
+
+static int get_deflection(float opco[3], float npco[3], float opno[3],
+        float npno[3], float life, float force[3], int def_depth,
+        float cur_time, unsigned int par_layer, int *last_object,
+               int *last_face, int *same_face)
+{
+       /* Particle deflection code */
+       /* The code is in two sections: the first part checks whether a particle has            */
+       /* intersected a face of a deflector mesh, given its old and new co-ords, opco and npco */
+       /* and which face it hit first                                                          */
+       /* The second part calculates the new co-ordinates given that collision and updates     */
+       /* the new co-ordinates accordingly */
+       Base *base;
+       Object *ob, *deflection_object = NULL;
+       Mesh *def_mesh;
+       MFace *mface, *deflection_face = NULL;
+       float *v1, *v2, *v3, *v4;
+       float nv1[3], nv2[3], nv3[3], nv4[3], edge1[3], edge2[3];
+       float dv1[3], dv2[3], dv3[3];
+       float vect_to_int[3], refl_vel[3];
+       float d_intersect_co[3], d_intersect_vect[3], d_nvect[3], d_i_co_above[3];
+       float forcec[3];
+       float k_point3, dist_to_plane;
+       float first_dist, ref_plane_mag;
+       float dk_plane=0, dk_point1=0;
+       float icalctop, icalcbot, n_mag;
+       float mag_iv, x_m,y_m,z_m;
+       float damping, perm_thresh;
+       float perm_val, rdamp_val;
+       int a, deflected=0, deflected_now=0;
+       float t, min_t;
+       float mat[3][3], obloc[3];
+       short cur_frame;
+       float time_before, time_after;
+       float force_mag_norm;
+       int d_object=0, d_face=0, ds_object=0, ds_face=0;
+
+       first_dist = 200000;
+       min_t = 200000;
+
+       /* The first part of the code, finding the first intersected face*/
+       base= G.scene->base.first;
+       while (base) {
+               /*Only proceed for mesh object in same layer */
+               if(base->object->type==OB_MESH && (base->lay & par_layer)) {
+                       ob= base->object;
+                       /* only with deflecting set */
+                       if(ob->pd && ob->pd->deflect) {
+                               def_mesh= ob->data;
+                       
+                               d_object = d_object + 1;
+
+                               d_face = d_face + 1;
+                               mface= def_mesh->mface;
+                               a = def_mesh->totface;
+                               /*Find out where the object is at this time*/
+                               cur_frame = G.scene->r.cfra;
+                               G.scene->r.cfra = (short)cur_time;
+                               where_is_object_time(ob, cur_time);
+                               G.scene->r.cfra = cur_frame;
+                               /*Pass the values from ob->obmat to mat*/
+                               /*and the location values to obloc           */
+                               Mat3CpyMat4(mat,ob->obmat);
+                               obloc[0] = ob->obmat[3][0];
+                               obloc[1] = ob->obmat[3][1];
+                               obloc[2] = ob->obmat[3][2];
+
+                               while (a--) {
+
+                                       /* Calculate the global co-ordinates of the vertices*/
+                                       v1= (def_mesh->mvert+(mface->v1))->co;
+                                       v2= (def_mesh->mvert+(mface->v2))->co;
+                                       v3= (def_mesh->mvert+(mface->v3))->co;
+                                       v4= (def_mesh->mvert+(mface->v4))->co;
+
+                                       VECCOPY(nv1, v1);
+                                       VECCOPY(nv2, v2);
+                                       VECCOPY(nv3, v3);
+                                       VECCOPY(nv4, v4);
+
+                                       /*Apply the objects deformation matrix*/
+                                       Mat3MulVecfl(mat, nv1);
+                                       Mat3MulVecfl(mat, nv2);
+                                       Mat3MulVecfl(mat, nv3);
+                                       Mat3MulVecfl(mat, nv4);
+
+                                       VecAddf(nv1, nv1, obloc);
+                                       VecAddf(nv2, nv2, obloc);
+                                       VecAddf(nv3, nv3, obloc);
+                                       VecAddf(nv4, nv4, obloc);
+
+                                       deflected_now = 0;
+
+                                       t = - 1;
+                                       t = linetriangle(opco, npco, nv1, nv2, nv3);
+                                       if ((t > 0)&&(t < min_t)) {
+                                           deflected = 1;
+                       deflected_now = 1;
+                                       }
+                                       else if (mface->v4) {
+                                               t = linetriangle(opco, npco, nv1, nv3, nv4);
+                                               if ((t > 0)&&(t < min_t)) {
+                                                   deflected = 1;
+                                                       deflected_now = 2;
+                                               }
+                                       }
+                                       if ((deflected_now > 0)&&(t < min_t)) {
+                       min_t = t;
+                       ds_object = d_object;
+                                               ds_face = d_face;
+                                               deflection_object = ob;
+                                               deflection_face = mface;
+                                               if (deflected_now==1) {
+                                                       VECCOPY(dv1, nv1);
+                                                       VECCOPY(dv2, nv2);
+                                                       VECCOPY(dv3, nv3);
+                                               }
+                                               else {
+                                                       VECCOPY(dv1, nv1);
+                                                       VECCOPY(dv2, nv3);
+                                                       VECCOPY(dv3, nv4);
+                                               }
+                                       }
+                                       mface++;
+                               }
+                       }
+               }
+               base = base->next;
+       }
+
+       /* Here's the point to do the permeability calculation */
+       /* Set deflected to 0 if a random number is below the value */
+       /* Get the permeability IPO here*/
+       if (deflected) {
+               
+               if (has_ipo_code(deflection_object->ipo, OB_PD_PERM)) 
+                       perm_val = IPO_GetFloatValue(deflection_object->ipo, OB_PD_PERM, cur_time);
+               else 
+                       perm_val = deflection_object->pd->pdef_perm;
+
+               perm_thresh =  BLI_drand() - perm_val;
+               if (perm_thresh < 0 ) {
+                       deflected = 0;
+               }
+       }
+
+       /* Now for the second part of the deflection code - work out the new speed */
+       /* and position of the particle if a collision occurred */
+       if (deflected) {
+       VecSubf(edge1, dv1, dv2);
+               VecSubf(edge2, dv3, dv2);
+               Crossf(d_nvect, edge2, edge1);
+               n_mag = Normalise(d_nvect);
+               dk_plane = Inpf(d_nvect, nv1);
+               dk_point1 = Inpf(d_nvect,opco);
+
+               VecSubf(d_intersect_vect, npco, opco);
+
+               d_intersect_co[0] = opco[0] + (min_t * (npco[0] - opco[0]));
+               d_intersect_co[1] = opco[1] + (min_t * (npco[1] - opco[1]));
+               d_intersect_co[2] = opco[2] + (min_t * (npco[2] - opco[2]));
+               
+               d_i_co_above[0] = (d_intersect_co[0] + (0.001 * d_nvect[0]));
+               d_i_co_above[1] = (d_intersect_co[1] + (0.001 * d_nvect[1]));
+               d_i_co_above[2] = (d_intersect_co[2] + (0.001 * d_nvect[2]));
+               mag_iv = Normalise(d_intersect_vect);
+               VECCOPY(npco, d_intersect_co);
+               
+               VecSubf(vect_to_int, opco, d_intersect_co);
+               first_dist = Normalise(vect_to_int);
+
+               /* Work out the lengths of time before and after collision*/
+               time_before = (life*(first_dist / (mag_iv)));
+               time_after =  (life*((mag_iv - first_dist) / (mag_iv)));
+
+               /* We have to recalculate what the speed would have been at the */
+               /* point of collision, not the key frame time */
+               npno[0]= opno[0] + time_before*force[0];
+               npno[1]= opno[1] + time_before*force[1];
+               npno[2]= opno[2] + time_before*force[2];
+
+
+               /* Reflect the speed vector in the face */
+               x_m = (2 * npno[0] * d_nvect[0]);
+               y_m = (2 * npno[1] * d_nvect[1]);
+               z_m = (2 * npno[2] * d_nvect[2]);
+               refl_vel[0] = npno[0] - (d_nvect[0] * (x_m + y_m + z_m));
+               refl_vel[1] = npno[1] - (d_nvect[1] * (x_m + y_m + z_m));
+               refl_vel[2] = npno[2] - (d_nvect[2] * (x_m + y_m + z_m));
+
+               /*A random variation in the damping factor........ */
+               /*Get the IPO values for damping here*/
+               
+               if (has_ipo_code(deflection_object->ipo, OB_PD_SDAMP)) 
+                       damping = IPO_GetFloatValue(deflection_object->ipo, OB_PD_SDAMP, cur_time);
+               else 
+                       damping = deflection_object->pd->pdef_damp;
+               
+               if (has_ipo_code(deflection_object->ipo, OB_PD_RDAMP)) 
+                       rdamp_val = IPO_GetFloatValue(deflection_object->ipo, OB_PD_RDAMP, cur_time);
+               else 
+                       rdamp_val = deflection_object->pd->pdef_rdamp;
+
+               damping = damping + ((1 - damping) * (BLI_drand()*rdamp_val));
+               damping = damping * damping;
+        ref_plane_mag = Inpf(refl_vel,d_nvect);
+
+               if (damping > 0.999) damping = 0.999;
+
+               /* Now add in the damping force - only damp in the direction of */
+               /* the faces normal vector */
+               npno[0] = (refl_vel[0] - (d_nvect[0] * ref_plane_mag * damping));
+               npno[1] = (refl_vel[1] - (d_nvect[1] * ref_plane_mag * damping));
+               npno[2] = (refl_vel[2] - (d_nvect[2] * ref_plane_mag * damping));
+
+               /* Now reset opno */
+               VECCOPY(opno,npno);
+               VECCOPY(forcec, force);
+
+               /* If the particle has bounced more than four times on the same */
+               /* face within this cycle (depth > 4, same face > 4 )           */
+               /* Then set the force to be only that component of the force    */
+               /* in the same direction as the face normal                     */
+               /* i.e. subtract the component of the force in the direction    */
+               /* of the face normal from the actual force                     */
+               if ((ds_object == *last_object) && (ds_face == *last_face)) {
+                       /* Increment same_face */
+                       *same_face = *same_face + 1;
+                       if ((*same_face > 3) && (def_depth > 3)) {
+               force_mag_norm = Inpf(forcec, d_nvect);
+               forcec[0] = forcec[0] - (d_nvect[0] * force_mag_norm);
+                forcec[1] = forcec[1] - (d_nvect[1] * force_mag_norm);
+                forcec[2] = forcec[2] - (d_nvect[2] * force_mag_norm);
+                       }
+               }
+               else *same_face = 1;
+
+               *last_object = ds_object;
+               *last_face = ds_face;
+
+               /* We have the particles speed at the point of collision    */
+               /* Now we want the particles speed at the current key frame */
+
+               npno[0]= npno[0] + time_after*forcec[0];
+               npno[1]= npno[1] + time_after*forcec[1];
+               npno[2]= npno[2] + time_after*forcec[2];
+
+               /* Now we have to recalculate pa->co for the remainder*/
+               /* of the time since the intersect*/
+               npco[0]= npco[0] + time_after*npno[0];
+               npco[1]= npco[1] + time_after*npno[1];
+               npco[2]= npco[2] + time_after*npno[2];
+
+               /* And set the old co-ordinates back to the point just above the intersection */
+               VECCOPY(opco, d_i_co_above);
+
+               /* Finally update the time */
+               life = time_after;
+               cur_time += time_before;
+
+               /* The particle may have fallen through the face again by now!!*/
+               /* So check if the particle has changed sides of the plane compared*/
+               /* the co-ordinates at the last keyframe*/
+               /* But only do this as a last resort, if we've got to the end of the */
+               /* number of collisions allowed */
+               if (def_depth==9) {
+                       k_point3 = Inpf(d_nvect,npco);
+                       if (((dk_plane > k_point3) && (dk_plane < dk_point1))||((dk_plane < k_point3) && (dk_plane > dk_point1))) {
+
+                               /* Yup, the pesky particle may have fallen through a hole!!! */
+                /* So we'll cheat a bit and move the particle along the normal vector */
+                /* until it's just the other side of the plane */
+                icalctop = (dk_plane - d_nvect[0]*npco[0] - d_nvect[1]*npco[1] - d_nvect[2]*npco[2]);
+                icalcbot = (d_nvect[0]*d_nvect[0] + d_nvect[1]*d_nvect[1] + d_nvect[2]*d_nvect[2]);
+                dist_to_plane = icalctop / icalcbot;
+
+                /*  Now just increase the distance a little to place */
+                /* the point the other side of the plane */
+                dist_to_plane *= 1.1;
+                npco[0]= npco[0] + (dist_to_plane * d_nvect[0]);
+                npco[1]= npco[1] + (dist_to_plane * d_nvect[1]);
+                npco[2]= npco[2] + (dist_to_plane * d_nvect[2]);
+
+                       }
+               }
+       }
+       return deflected;
+}
+
+void make_particle_keys(int depth, int nr, PartEff *paf, Particle *part, float *force, int deform, MTex *mtex, unsigned int par_layer)
 {
        Particle *pa, *opa = NULL;
-       float damp, deltalife;
-       int b, rt1, rt2;
-       
+       float damp, deltalife, life;
+       float cur_time;
+       float opco[3], opno[3], npco[3], npno[3], new_force[3];
+       int b, rt1, rt2, deflected, deflection, finish_defs, def_count;
+       int last_ob, last_fc, same_fc;
+
        damp= 1.0f-paf->damp;
        pa= part;
-       
+
        /* start speed: random */
        if(paf->randfac!=0.0) {
                pa->no[0]+= (float)(paf->randfac*( BLI_drand() -0.5));
                pa->no[1]+= (float)(paf->randfac*( BLI_drand() -0.5));
                pa->no[2]+= (float)(paf->randfac*( BLI_drand() -0.5));
        }
-       
+
        /* start speed: texture */
        if(mtex && paf->texfac!=0.0) {
-               particle_tex(mtex, paf, pa->co, pa->no);
+       /*      particle_tex(mtex, paf, pa->co, pa->no);  */
        }
-       
+
        if(paf->totkey>1) deltalife= pa->lifetime/(paf->totkey-1);
        else deltalife= pa->lifetime;
 
        opa= pa;
        pa++;
-               
+
        b= paf->totkey-1;
        while(b--) {
                /* new time */
                pa->time= opa->time+deltalife;
 
+               /* set initial variables                                */
+               opco[0] = opa->co[0];
+               opco[1] = opa->co[1];
+               opco[2] = opa->co[2];
+
+               new_force[0] = force[0];
+               new_force[1] = force[1];
+               new_force[2] = force[2];
+
+               /* Check force field */
+               cur_time = pa->time;
+               get_forcefield(opco, new_force, cur_time, par_layer);
+
                /* new location */
                pa->co[0]= opa->co[0] + deltalife*opa->no[0];
                pa->co[1]= opa->co[1] + deltalife*opa->no[1];
                pa->co[2]= opa->co[2] + deltalife*opa->no[2];
 
                /* new speed */
-               pa->no[0]= opa->no[0] + deltalife*force[0];
-               pa->no[1]= opa->no[1] + deltalife*force[1];
-               pa->no[2]= opa->no[2] + deltalife*force[2];
+               pa->no[0]= opa->no[0] + deltalife*new_force[0];
+               pa->no[1]= opa->no[1] + deltalife*new_force[1];
+               pa->no[2]= opa->no[2] + deltalife*new_force[2];
+
+               /* Particle deflection code                             */
+               deflection = 0;
+               finish_defs = 1;
+               def_count = 0;
+
+               VECCOPY(opno, opa->no);
+               VECCOPY(npco, pa->co);
+               VECCOPY(npno, pa->no);
+
+               life = deltalife;
+               cur_time -= deltalife;
+
+               last_ob = -1;
+               last_fc = -1;
+               same_fc = 0;
+
+               /* First call the particle deflection check for the particle moving   */
+               /* between the old co-ordinates and the new co-ordinates              */
+               /* If a deflection occurs, call the code again, this time between the */
+               /* intersection point and the updated new co-ordinates                */
+               /* Bail out if we've done the calculation 10 times - this seems ok     */
+        /* for most scenes I've tested */
+               while (finish_defs) {
+                       deflected =  get_deflection(opco, npco, opno, npno, life, new_force,
+                                                       def_count, cur_time, par_layer,
+                                                       &last_ob, &last_fc, &same_fc);
+                       if (deflected) {
+                               def_count = def_count + 1;
+                               deflection = 1;
+                               if (def_count==10) finish_defs = 0;
+                       }
+                       else {
+                               finish_defs = 0;
+                       }
+               }
+
+               /* Only update the particle positions and speed if we had a deflection */
+               if (deflection) {
+                       pa->co[0] = npco[0];
+                       pa->co[1] = npco[1];
+                       pa->co[2] = npco[2];
+                       pa->no[0] = npno[0];
+                       pa->no[1] = npno[1];
+                       pa->no[2] = npno[2];
+               }
+
 
                /* speed: texture */
                if(mtex && paf->texfac!=0.0) {
-                       particle_tex(mtex, paf, pa->co, pa->no);
+                       particle_tex(mtex, paf, opa->co, opa->no);
                }
                if(damp!=1.0) {
                        pa->no[0]*= damp;
@@ -395,6 +834,8 @@ void make_particle_keys(int depth, int nr, PartEff *paf, Particle *part, float *
                        pa->no[2]*= damp;
                }
        
+
+
                opa= pa;
                pa++;
                /* opa is used later on too! */
@@ -428,8 +869,8 @@ void make_particle_keys(int depth, int nr, PartEff *paf, Particle *part, float *
                                        pa->lifetime*= 1.0f+ (float)(paf->randlife*( BLI_drand() - 0.5));
                                }
                                pa->mat_nr= paf->mat[depth];
-                               
-                               make_particle_keys(depth+1, b, paf, pa, force, deform, mtex);
+
+                               make_particle_keys(depth+1, b, paf, pa, force, deform, mtex, par_layer);
                        }
                }
        }
@@ -495,14 +936,14 @@ void give_mesh_mvert(Mesh *me, int nr, float *co, short *no, float seed2)
                VECCOPY(no, mvert->no);
        }
        else {
-               
+
                nr-= me->totvert;
                
                if(jit==0) {
                        jitlevel= nr/me->totface;
                        if(jitlevel==0) jitlevel= 1;
                        if(jitlevel>100) jitlevel= 100;
-                       
+
                        jit= MEM_callocN(2+ jitlevel*2*sizeof(float), "jit");
                        init_mv_jit(jit, jitlevel,seed2);
                        
@@ -515,7 +956,7 @@ void give_mesh_mvert(Mesh *me, int nr, float *co, short *no, float seed2)
                
                mface= me->mface;
                mface+= curface;
-               
+
                v1= (me->mvert+(mface->v1))->co;
                v2= (me->mvert+(mface->v2))->co;
                n1= (me->mvert+(mface->v1))->no;
@@ -563,31 +1004,32 @@ void build_particle_system(Object *ob)
        MVert *mvert;
        MTex *mtexmove=0;
        Material *ma;
+       int armature_parent;
        float framelenont, ftime, dtime, force[3], imat[3][3], vec[3];
        float fac, prevobmat[4][4], sfraont, co[3];
-       int deform=0, a, cur, cfraont, cfralast, totpart;
+       int deform=0, a, b, c, cur, cfraont, cfralast, totpart;
        short no[3];
-       
+
        if(ob->type!=OB_MESH) return;
        me= ob->data;
        if(me->totvert==0) return;
-       
+
        ma= give_current_material(ob, 1);
        if(ma) {
                mtexmove= ma->mtex[7];
        }
-       
+
        paf= give_parteff(ob);
        if(paf==0) return;
 
        waitcursor(1);
-       
+
        disable_speed_curve(1);
-       
+
        /* generate all particles */
        if(paf->keys) MEM_freeN(paf->keys);
        paf->keys= 0;
-       new_particle(paf);      
+       new_particle(paf);
 
        cfraont= G.scene->r.cfra;
        cfralast= -1000;
@@ -595,7 +1037,7 @@ void build_particle_system(Object *ob)
        G.scene->r.framelen= 1.0;
        sfraont= ob->sf;
        ob->sf= 0.0;
-       
+
        /* mult generations? */
        totpart= paf->totpart;
        for(a=0; a<PAF_MAXMULT; a++) {
@@ -608,7 +1050,7 @@ void build_particle_system(Object *ob)
 
        ftime= paf->sta;
        dtime= (paf->end - paf->sta)/totpart;
-       
+
        /* remember full hierarchy */
        par= ob;
        while(par) {
@@ -619,13 +1061,20 @@ void build_particle_system(Object *ob)
        /* set it all at first frame */
        G.scene->r.cfra= cfralast= (int)floor(ftime);
        par= ob;
+       armature_parent = 0;
        while(par) {
                /* do_ob_ipo(par); */
                do_ob_key(par);
+               /* Just checking whether theres an armature in the */
+               /* parent chain of the emitter, so we know whether */
+               /* to recalculate the armatures */
+               if(par->type==OB_ARMATURE) {
+                       armature_parent = 1;
+               }
                par= par->parent;
        }
        do_mat_ipo(ma);
-       
+
        if((paf->flag & PAF_STATIC)==0) {
                where_is_object(ob);
                Mat4CpyMat4(prevobmat, ob->obmat);
@@ -649,16 +1098,28 @@ void build_particle_system(Object *ob)
        
        /* init */
        give_mesh_mvert(me, totpart, co, no,paf->seed);
-       
+
+       printf("\n");
+       printf("Calculating particles......... \n");
+
        for(a=0; a<totpart; a++, ftime+=dtime) {
                
                pa= new_particle(paf);
                pa->time= ftime;
                
+               c = totpart/100;
+               if (c==0){
+                       c = 1;
+               }
+
+               b=(a%c);
+               if (b==0) {
+                       printf("\r Particle: %d / %d ", a, totpart);
+               }
                /* set ob at correct time */
                
                if((paf->flag & PAF_STATIC)==0) {
-               
+
                        cur= (int)floor(ftime) + 1 ;            /* + 1 has a reason: (obmat/prevobmat) otherwise comet-tails start too late */
                        if(cfralast != cur) {
                                G.scene->r.cfra= cfralast= cur;
@@ -666,6 +1127,12 @@ void build_particle_system(Object *ob)
                                /* added later: blur? */
                                bsystem_time(ob, ob->parent, (float)G.scene->r.cfra, 0.0);
                                
+                               /* Update the armatures */
+                               if (armature_parent) {
+                                       do_all_actions();
+                                       rebuild_all_armature_displists();
+                               }
+
                                par= ob;
                                while(par) {
                                        /* do_ob_ipo(par); */
@@ -726,9 +1193,11 @@ void build_particle_system(Object *ob)
                }
                pa->mat_nr= 1;
                
-               make_particle_keys(0, a, paf, pa, force, deform, mtexmove);
+               make_particle_keys(0, a, paf, pa, force, deform, mtexmove, ob->lay);
        }
        
+       printf("\r Particle: %d / %d \n", totpart, totpart);
+
        if(deform) end_latt_deform();
                
        /* restore */
@@ -736,6 +1205,11 @@ void build_particle_system(Object *ob)
        G.scene->r.framelen= framelenont;
        give_mesh_mvert(0, 0, 0, 0,paf->seed);
 
+       /*Restore armature settings*/
+       if (armature_parent) {
+               do_all_actions();
+               rebuild_all_armature_displists();
+       }
 
        /* put hierarchy back */
        par= ob;
index cf7ad67d179f825360a94c10fd2f540b7f15fe43..6de1ee876de3299297842a74a9839f4e82223913 100644 (file)
@@ -1,4 +1,4 @@
-/* ipo.c 
+/* ipo.c
  * 
  * $Id$
  *
@@ -55,6 +55,7 @@
 #include "DNA_texture_types.h"
 #include "DNA_material_types.h"
 #include "DNA_object_types.h"
+#include "DNA_mesh_types.h"
 #include "DNA_curve_types.h"
 #include "DNA_ipo_types.h"
 #include "DNA_action_types.h"
@@ -72,6 +73,7 @@
 #include "BKE_blender.h"
 #include "BKE_ipo.h"
 #include "BKE_constraint.h"
+#include "BKE_mesh.h"
 
 #define SMALL -1.0e-10
 
@@ -88,7 +90,8 @@ int ob_ar[OB_TOTIPO]= {
        OB_LOC_X, OB_LOC_Y, OB_LOC_Z, OB_DLOC_X, OB_DLOC_Y, OB_DLOC_Z, 
        OB_ROT_X, OB_ROT_Y, OB_ROT_Z, OB_DROT_X, OB_DROT_Y, OB_DROT_Z, 
        OB_SIZE_X, OB_SIZE_Y, OB_SIZE_Z, OB_DSIZE_X, OB_DSIZE_Y, OB_DSIZE_Z, 
-       OB_LAY, OB_TIME, OB_EFF_X, OB_EFF_Y, OB_EFF_Z, OB_COL_A
+       OB_LAY, OB_TIME, OB_EFF_X, OB_EFF_Y, OB_EFF_Z, OB_COL_A,
+       OB_PD_FSTR, OB_PD_FFALL, OB_PD_SDAMP, OB_PD_RDAMP, OB_PD_PERM
 };
 
 int ac_ar[AC_TOTIPO]= {
@@ -100,7 +103,7 @@ int ac_ar[AC_TOTIPO]= {
 int ma_ar[MA_TOTIPO]= {
        MA_COL_R, MA_COL_G, MA_COL_B, 
        MA_SPEC_R, MA_SPEC_G, MA_SPEC_B, 
-       MA_MIR_R, MA_MIR_G, MA_MIR_B, 
+       MA_MIR_R, MA_MIR_G, MA_MIR_B,
        MA_REF, MA_ALPHA, MA_EMIT, MA_AMB, 
        MA_SPEC, MA_HARD, MA_SPTR, MA_ANG, 
        MA_MODE, MA_HASIZE, 
@@ -205,7 +208,7 @@ Ipo *copy_ipo(Ipo *ipo)
        ipon= copy_libblock(ipo);
        
        duplicatelist(&(ipon->curve), &(ipo->curve));
-       
+
        icu= ipon->curve.first;
        while(icu) {
                icu->bezt= MEM_dupallocN(icu->bezt);
@@ -701,7 +704,7 @@ float eval_icu(IpoCurve *icu, float ipotime)
                                prevbezt+= a;
                                dx= ipotime-prevbezt->vec[1][0];
                                fac= prevbezt->vec[2][0]-prevbezt->vec[1][0];
-                               
+
                                if(fac!=0) {
                                        fac= (prevbezt->vec[2][1]-prevbezt->vec[1][1])/fac;
                                        cvalue= prevbezt->vec[1][1]+fac*dx;
@@ -907,11 +910,10 @@ void *give_mtex_poin(MTex *mtex, int adrcode )
 
 void *get_ipo_poin(ID *id, IpoCurve *icu, int *type)
 {
-       void *poin= 0;
+       void *poin= NULL;
        Object *ob;
        Material *ma;
        MTex *mtex;
-       Ika *ika= 0;
        Lamp *la;
        Sequence *seq;
        World *wo;
@@ -921,13 +923,10 @@ void *get_ipo_poin(ID *id, IpoCurve *icu, int *type)
 
        *type= IPO_FLOAT;
 
-
        if( GS(id->name)==ID_OB) {
        
                ob= (Object *)id;
 
-               if(ob->type==OB_IKA) ika= ob->data;
-               
                switch(icu->adrcode) {
                case OB_LOC_X:
                        poin= &(ob->loc[0]); break;
@@ -967,25 +966,37 @@ void *get_ipo_poin(ID *id, IpoCurve *icu, int *type)
                        poin= &(ob->dsize[1]); break;
                case OB_DSIZE_Z:
                        poin= &(ob->dsize[2]); break;
-               
+
                case OB_LAY:
                        poin= &(ob->lay); *type= IPO_INT_BIT; break;
                        
-               case OB_EFF_X:  /* OB_COL_R */
-                       if(ika) poin= &(ika->effg[0]);
-                       else poin= &(ob->col[0]);
+               case OB_COL_R:  
+                       poin= &(ob->col[0]);
                        break;
-               case OB_EFF_Y:  /* OB_COL_G */
-                       if(ika) poin= &(ika->effg[1]);
-                       else poin= &(ob->col[1]);
+               case OB_COL_G:
+                       poin= &(ob->col[1]);
                        break;
-               case OB_EFF_Z:  /* OB_COL_B */
-                       if(ika) poin= &(ika->effg[2]);
-                       else poin= &(ob->col[2]);
+               case OB_COL_B:
+                       poin= &(ob->col[2]);
                        break;
                case OB_COL_A:
                        poin= &(ob->col[3]);
                        break;
+               case OB_PD_FSTR:
+                       if(ob->pd) poin= &(ob->pd->f_strength);
+                       break;
+               case OB_PD_FFALL:
+                       if(ob->pd) poin= &(ob->pd->f_power);
+                       break;
+               case OB_PD_SDAMP:
+                       if(ob->pd) poin= &(ob->pd->pdef_damp);
+                       break;
+               case OB_PD_RDAMP:
+                       if(ob->pd) poin= &(ob->pd->pdef_rdamp);
+                       break;
+               case OB_PD_PERM:
+                       if(ob->pd) poin= &(ob->pd->pdef_perm);
+                       break;
                }
        }
        else if (GS(id->name)==ID_AC){
@@ -1808,6 +1819,11 @@ void make_cfra_list(Ipo *ipo, ListBase *elems)
                                case OB_SIZE_X:
                                case OB_SIZE_Y:
                                case OB_SIZE_Z:
+                               case OB_PD_FSTR:
+                               case OB_PD_FFALL:
+                               case OB_PD_SDAMP:
+                               case OB_PD_RDAMP:
+                               case OB_PD_PERM:
                                        bezt= icu->bezt;
                                        if(bezt) {
                                                a= icu->totvert;
index 9e6691f55256593665527cff2e4d6e07a21baeda..4ce5e061437ff68c457405135095548b42e26e03 100644 (file)
@@ -196,6 +196,8 @@ void free_object(Object *ob)
        freedisplist(&ob->disp);
        
        BPY_free_scriptlink(&ob->scriptlink);
+       
+       if(ob->pd) MEM_freeN(ob->pd);
 }
 
 void unlink_object(Object *ob)
@@ -727,6 +729,8 @@ Object *copy_object(Object *ob)
        if (actcon)
                obn->activecon = actcon;
 
+       if(ob->pd) obn->pd= MEM_dupallocN(ob->pd);
+
        /* increase user numbers */
        id_us_plus((ID *)obn->data);
        id_us_plus((ID *)obn->ipo);
index 11c65f783bc4c4b7df6cdbab37cd71d98af46600..0723b8175fca55b09d5e564f9aa8d7838b024e9c 100644 (file)
@@ -2204,7 +2204,7 @@ static void direct_link_object(FileData *fd, Object *ob)
                paf= paf->next;
        }
 
-       link_list(fd, &ob->network);
+       ob->pd= newdataadr(fd, ob->pd);
 
        link_list(fd, &ob->prop);
        prop= ob->prop.first;
index 5b49f9521404a18510e09f70f1fb6d3d1f8f26aa..32249c1c46ba54eaf907ffc9669eb8a2bb583351 100644 (file)
@@ -649,6 +649,8 @@ static void write_objects(WriteData *wd, ListBase *idbase)
                        write_constraints(wd, &ob->constraints);
                        write_constraint_channels(wd, &ob->constraintChannels);
                        write_nlastrips(wd, &ob->nlastrips);
+                       
+                       writestruct(wd, DATA, "PartDeflect", 1, ob->pd);
                }
                ob= ob->id.next;
        }
index 9023a88310a10289f23fec140e516d002a828276..dcac971a85babbd375afd7a3d64a3adc43e53e4f 100644 (file)
@@ -57,6 +57,7 @@ extern void redraw_test_buttons(struct Base *new);
 #define BUTS_SCRIPT                    11
 #define BUTS_SOUND                     12
 #define BUTS_CONSTRAINT                13
+#define BUTS_EFFECTS           14
 
 /* warning: the values of these defines are used in sbuts->tabs[7] */
 /* buts->mainb new */
@@ -80,6 +81,9 @@ extern void redraw_test_buttons(struct Base *new);
 #define TAB_SHADING_WORLD      3
 #define TAB_SHADING_LAMP       4
 
+#define TAB_OBJECT_OBJECT   0
+#define TAB_OBJECT_EFFECTS  1
+
 /* buts->scaflag */            
 #define BUTS_SENS_SEL          1
 #define BUTS_SENS_ACT          2
index b098ee51134d9a4a0d4233546836c89deff5c2cc..6bce7e4e3f171381f71a70fc1695f6d44bbc4ed4 100644 (file)
@@ -26,7 +26,7 @@
  * The Original Code is: all of this file.
  *
  * Contributor(s): none yet.
- *
+ * 
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
 
@@ -60,7 +60,7 @@ typedef enum {
        ICON_ORTHO,
        ICON_PERSP,
        ICON_CAMERA,
-       ICON_BLANK1,
+       ICON_EFFECTS,
        ICON_BBOX,
        ICON_WIRE,
        ICON_SOLID,
@@ -89,7 +89,7 @@ typedef enum {
        ICON_POSE_HLT,
        ICON_BORDERMOVE,
        ICON_MAYBE_ITS_A_LASSO,
-       ICON_BLANK6,
+       ICON_BLANK1,
        ICON_ROTATE,
        ICON_CURSOR,
        ICON_ROTATECOLLECTION,
@@ -101,6 +101,8 @@ typedef enum {
        ICON_BLANK11,
        ICON_BLANK12,
        
+
+
        ICON_DOTSUP,
        ICON_DOTSDOWN,
        ICON_MENU_PANEL,
index 8ee67638e7c8aa51ac0b3f7e7f57d41b1dfb58d1..c5cb40d9e1c38f1fa7f48505ff07459f2a12de3e 100644 (file)
@@ -66,7 +66,7 @@ typedef struct EditIpo {
 
 /* ******************** */
 
-#define OB_TOTIPO      24
+#define OB_TOTIPO      29
 
 #define OB_LOC_X       1
 #define OB_LOC_Y       2
@@ -102,6 +102,11 @@ typedef struct EditIpo {
 #define OB_COL_B       23
 #define OB_COL_A       24
 
+#define OB_PD_GRAV     25
+#define OB_PD_GFALL    26
+#define OB_PD_SDAMP    27
+#define OB_PD_RDAMP    28
+#define OB_PD_PERM     29
 
 
 /* ******************** */
index b7b04017c2bbc1b04a5fad1538592fba6991f35f..f79310317ab3b31b7d08ff79c84220a4cf932466 100644 (file)
@@ -63,6 +63,9 @@ extern void object_panels(void);
 extern void do_object_panels(unsigned short event);
 extern void do_constraintbuts(unsigned short event);
 
+/* effects */
+extern void effects_panels(void);
+extern void do_effects_panels(unsigned short event);
 
 /* editing */
 extern void editing_panels(void);
@@ -206,15 +209,6 @@ void butspace_context_switch(SpaceButs *buts, struct Base *new);
 
 #define B_RECALCPATH   1401
 
-#define B_AUTOTIMEOFS  1403
-#define B_FRAMEMAP             1404
-#define B_NEWEFFECT            1405
-#define B_PREVEFFECT   1406
-#define B_NEXTEFFECT   1407
-#define B_CHANGEEFFECT 1408
-#define B_CALCEFFECT   1409
-#define B_DELEFFECT            1410
-#define B_RECALCAL             1411
 
 #define B_PRINTSPEED   1413
 #define B_PRINTLEN             1414
@@ -342,13 +336,6 @@ enum {
 #define B_MAKESTICKY   2082
 #define B_MAKEVERTCOL  2083
 #define B_CHROMADEPTH  2084
-#define B_ISDEFLECTOR   2085
-#define B_PDEFDAMPING   2086
-#define B_GRAVITY       2087
-#define B_GRAVSTRENGTH  2088
-#define B_GRAVPOWER     2089
-#define B_PDEFRDAMP     2090
-#define B_PDEFPERM      2091
 
 /* *********************** */
 #define B_CURVEBUTS            2200
@@ -554,6 +541,20 @@ enum {
                B_UVAUTO_ALIGNX,
                B_UVAUTO_ALIGNY         
 };
+
+#define B_EFFECTSBUTS  3500
+
+#define B_AUTOTIMEOFS  3403
+#define B_FRAMEMAP             3404
+#define B_NEWEFFECT            3405
+#define B_PREVEFFECT   3406
+#define B_NEXTEFFECT   3407
+#define B_CHANGEEFFECT 3408
+#define B_CALCEFFECT   3409
+#define B_DELEFFECT            3410
+#define B_RECALCAL             3411
+#define B_RECALC_DEFL  3412
+
 /* *********************** */
 
 /* *********************** */
index 764377170d9b73aeb787275f6f8140f4b7aad4d1..6ae9b68d0a3dec741176e97d748c5a1d9356aa13 100644 (file)
@@ -65,7 +65,7 @@ typedef struct EditIpo {
 
 /* ******************** */
 
-#define OB_TOTIPO      24
+#define OB_TOTIPO      29
 
 #define OB_LOC_X       1
 #define OB_LOC_Y       2
@@ -101,6 +101,11 @@ typedef struct EditIpo {
 #define OB_COL_B       23
 #define OB_COL_A       24
 
+#define OB_PD_GRAV     25
+#define OB_PD_GFALL    26
+#define OB_PD_SDAMP    27
+#define OB_PD_RDAMP    28
+#define OB_PD_PERM     29
 
 
 /* ******************** */
index 6b8c2d305a025c39cda64c4ea93482f03585f7df..a246fe2b8ab010afb39c051f1f59080be4f6f5b1 100644 (file)
 #define REDRAWBUTSLOGIC                0x401B
 #define REDRAWBUTSSHADING      0x401C
 #define REDRAWBUTSGAME         0x401D
+#define REDRAWBUTSEFFECTS      0x401D
 
 #define REDRAWINFO                     0x4021
 #define RENDERPREVIEW          0x4022
index 69dcef38b576be750a97ef7453a7087e20c461fe..0fc5ce64eaa29e14ca9307decbf4a66791b28381 100644 (file)
@@ -65,7 +65,7 @@ typedef short IPO_Channel;
 
 /* ******************** */
 
-#define OB_TOTIPO      24
+#define OB_TOTIPO      29
 
 #define OB_LOC_X       1
 #define OB_LOC_Y       2
@@ -101,6 +101,12 @@ typedef short IPO_Channel;
 #define OB_COL_B       23
 #define OB_COL_A       24
 
+#define OB_PD_FSTR     25
+#define OB_PD_FFALL    26
+#define OB_PD_SDAMP    27
+#define OB_PD_RDAMP    28
+#define OB_PD_PERM     29
+
 
 
 /* ******************** */
index 8198e5329cd2a2cc4eb492e94b8597319b60c8d8..b80bdf62b2c73514e4f0d658e85b24eaf1362e74 100644 (file)
@@ -74,12 +74,12 @@ typedef struct Mesh {
        struct MSticky *msticky;
        struct Mesh *texcomesh;
        float *orco;
-       
+
        struct OcInfo *oc;              /* not written in file */
        void *sumohandle;
-    
+
        int totvert, totface;
-       
+
        int texflag;
        float loc[3];
        float size[3];
index b350416f6cd34f385bdfa281337c555a7e6f44fd..2528149e89a90e6212d3d30fd87d938ff323814e 100644 (file)
@@ -77,6 +77,19 @@ typedef struct LBuf {
        struct Object **ob;
 } LBuf;
 
+typedef struct PartDeflect {
+       short deflect;        /* Deflection flag - does mesh deflect particles*/
+       short forcefield;      /* Force flag, do the vertices attract / repel particles ? */
+
+       float pdef_damp;     /* Damping factor for particle deflection       */
+       float pdef_rdamp;    /* Random element of damping for deflection     */
+       float pdef_perm;     /* Chance of particle passing through mesh      */
+
+       float f_strength;    /* The strength of the force (+ or - )       */
+       float f_power;       /* The power law - real gravitation is 2 (square)  */
+} PartDeflect;
+
+
 typedef struct Object {
        ID id;
 
@@ -179,6 +192,7 @@ typedef struct Object {
        ListBase constraints;
        ListBase nlastrips;
 
+       PartDeflect *pd;        /* particle deflector/attractor/collision data */
        struct Life *life;
 
        LBuf lbuf;
index a6c50ed6d5dc0827d60a1d5333899a623b7d184c..26f9f9316f430ba619efc56f44f9e9a6cec59f77 100644 (file)
@@ -1912,7 +1912,8 @@ void RE_zbufferall_radio(struct RadView *vw, RNode **rg_elem, int rg_totelem)
                        rn= *re;
                        if( (rn->f & RAD_SHOOT)==0 ) {    /* no shootelement */
                                
-                               if( rn->f & RAD_BACKFACE) Zvlnr= 0xFFFFFF;      
+                               if( rn->f & RAD_TWOSIDED) Zvlnr= a;
+                               else if( rn->f & RAD_BACKFACE) Zvlnr= 0xFFFFFF; 
                                else Zvlnr= a;
                                
                                c1= hashlist_projectvert(rn->v1, hoco[0]);
@@ -1942,7 +1943,8 @@ void RE_zbufferall_radio(struct RadView *vw, RNode **rg_elem, int rg_totelem)
                                rf= vlr->radface;
                                if( (rf->flag & RAD_SHOOT)==0 ) {    /* no shootelement */
                                        
-                                       if( rf->flag & RAD_BACKFACE) Zvlnr= 0xFFFFFF;   /* receives no energy, but is zbuffered */
+                                       if( rf->flag & RAD_TWOSIDED) Zvlnr= totface;
+                                       else if( rf->flag & RAD_BACKFACE) Zvlnr= 0xFFFFFF;      /* receives no energy, but is zbuffered */
                                        else Zvlnr= totface;
                                        
                                        c1= hashlist_projectvert(vlr->v1->co, hoco[0]);
index 0488a9010dd1a7033e5d8019d08ee19440c3421c..d410b345637c5acc69427f99f2c2b9cc5bdcf0f1 100644 (file)
  *
  * ***** END GPL/BL DUAL LICENSE BLOCK *****
  */
-/* DataToC output of file <blenderbuttons_png> */
+/* kick DataToC output of file <blenderbuttons_png> */
 
-int datatoc_blenderbuttons_size= 42327;
+int datatoc_blenderbuttons_size= 43593;
 char datatoc_blenderbuttons[]= {
-137, 80, 78, 71, 13, 10, 26, 10,  0,  0,  0, 13, 73, 72, 68, 82,  0,  0,  1,190,  0,  0,  0,
-242,  8,  6,  0,  0,  0, 50, 96,160, 74,  0,  0,  0,  6, 98, 75, 71, 68,  0,153,  0,153,  0,153, 94, 68, 86,129,  0,  0,  0,  9,
-112, 72, 89,115,  0,  0, 11, 19,  0,  0, 11, 19,  1,  0,154,156, 24,  0,  0,  0,  7,116, 73, 77, 69,  7,212,  4,  4, 17, 26, 21,
-255,141, 18,121,  0,  0, 32,  0, 73, 68, 65, 84,120,218,236,157,121,120, 20, 85,214,198,127,213, 75, 58, 43, 89,216,  9,178, 36,
- 18, 80, 89,130, 65,217,101, 11,200,176,168,  8,  1, 21, 71,157, 81, 73, 20, 70, 17, 81,112,148, 81,199, 13,252,  4, 81,113, 76,
-240,115,  6,253,212, 17,  2,174,136, 32, 65, 97,  0,  5,101, 71,144,  4,  8, 16,  8, 91,200,158,222,187,171,190, 63, 58,213,116,
- 58,157,222,210, 64,116,234,125,158,134,174,234,202,233,219, 85,247,222,247,190,231,158,123,174, 48,238,238,121, 18, 10, 20, 40,
- 80,160, 64,193,127,  9, 84,202, 45, 80,160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,
-  5, 10,241, 41, 80,160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5, 10,241, 41, 80,
-160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5,
- 10,241, 41, 80,160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5,  0,104,124, 93,176,250,195, 23,234, 28,143,187,123, 94,
- 72,190, 88,182,219, 88,123,161, 46,159,187,189, 80,254,230,198,252,110, 79,229, 10, 69,249, 66,117,255,188,149, 47,148,118,155,
-122,125, 81,218,135,210, 62,148,246,113,233,219,199, 37, 85,124,158, 30,150,175,  7,232,203,158,252, 10, 69,  3,185, 20,229, 11,
-166,210,134,170,242, 95,110, 52,116,255,154, 74, 57, 47,199,243,109,106,246,148,246,161,180, 15,165,125, 52,  1,197,231,202,210,
- 77,173, 98,122, 26, 65,200, 21, 51,216, 17,163, 39,123, 77,169, 81, 95,138, 17,147,171,205, 96,203,217, 80,185,130,181,231,250,
-119,211,230,204,  7, 96,233,130,185,206,207,130,125,190,178,173,198,218,115,133,123,249,148,246,161,180, 15,165,125, 52,237,246,
-161, 10,164,162, 55,150,  0,199,221, 61,207,249, 10, 69,101,108, 42,178, 57,152, 74,213, 84,202,228,126, 15, 67,121, 95, 67,225,
-174,115,189,103,161,190,127,141,177,231,233,153,202,239,149,246,161,180, 15,165,125,132,190,125, 92,118,197,247,223,  0, 79,149,
- 47, 20, 21, 51,212,141,186,169,250,204, 47,197,189, 83,160,180, 15,165,125, 40,184,172,138,239,183,  6, 87,223,123, 40, 38,100,
-127, 43, 21, 51,148,243, 65, 77,201,149, 45,223,119, 87,247,136,252, 94,233, 44,148,246,161,180, 15,165,125,252,215, 43, 62,215,
- 10, 25,234,135,222, 24,255,246,165,112,225,120,154,111,  8, 69, 25, 67,241,123, 47,213,104, 54, 20,115,  3,227,238,158,199,234,
- 15, 95,104,146,243,112, 74,251, 80,218,135,210, 62, 20,197,119,197, 27,181,187, 31, 63,152,145, 94,168, 27,181,167,185,133, 80,
-206,  5,185,218,111,106, 65, 76,211,230,204, 15,201,125,188, 20,247, 79,105, 31,191,239,246, 33,215, 61,215, 58,168,180, 15, 69,
-241,253,110, 71,178,174,163,160, 75, 49, 26, 11,197,200,177, 41, 63,147, 80,141,138,221, 39,199,151, 46,152,219,168,123,247,223,
-228,  6, 82,218,135,210, 62,148,246,241, 59, 83,124,161,110,212, 77,205,135,255, 91, 43,159,  2,165,125, 40,237, 67,193,111,158,
-248, 60,185,189,154,226,132,246,165, 44, 75, 99, 26,146,187, 11,209,221, 21, 19,170,206,168, 41,216,184,148,240, 52,121, 31,170,
-142,177, 49,245,249,183, 18, 92,160,180,143,208,213, 63,165,125,252,126,218,135,230,114, 85,160,203,221,248,  2,189,185,178,219,
-230, 82,167,100,186, 20,191, 55,216,138,233, 58,249, 31,138,223, 27,202,129,145,107,249,220, 27,116, 40, 83, 80,133,186,243, 81,
-218,199,239,175,125,132,170,254, 41,237,163,233, 64, 24,119,247, 60, 73, 17,190, 10, 20, 40, 80,160,224,191,  5,202,238, 12, 10,
- 20, 40, 80,160, 64, 33, 62,  5, 10, 20, 40, 80,160, 64, 33, 62,  5, 10, 20, 40, 80,160, 64, 33, 62,  5, 10, 20, 40, 80,160, 64,
- 33, 62,  5, 10, 20, 40, 80,160, 64, 33, 62,  5, 10, 20, 40, 80,160, 64, 33, 62,  5, 10, 20, 40, 80,160, 64, 33, 62,  5, 10, 20,
- 40, 80,160,224,210,161, 78,230,150,241,131,219,  7,109,232,171,205,167,234,157,243,100,239,216,129, 31, 65,101,162,109,251, 68,
-170,141,122,202, 75,245,164, 92, 51, 40,104,123, 91,118, 29,  5, 81,199,185,226, 98,162, 34,162,136, 79,136,162,111,159,206, 65,
-219, 11,245,239, 45, 62,157, 75, 88,184, 13, 93,184,  6,181, 70,141, 29,129,102, 97, 19,130,182, 23,151,144, 70,124,124, 60, 17,
- 17, 17, 32,  8, 28,220,255,165,223,229,139, 72, 60, 20,244,239, 53, 22,119,171,119,174, 93,228,185,160,237,157, 54,180,174,111,
-207, 28,124,249, 78,235,234,151, 47,209,146, 31,180,189,226,176,174,191, 57,123,215,121,121,190, 11, 22,228, 50,103, 78, 70,131,
-159, 31,240,240,124, 35,218, 91,130,175, 47,167,194,234,215,231,196,224,235,203, 87,197,245,235,139,201, 28, 21,180,189,112,157,
-190,254,119,220,178, 36,104,123,227,191,156, 81,239,220,227,103,179,131,182,183,176, 77,214, 21,233,175,154,146,189,203, 70,124,
- 13,225,193,141,179, 16,134,221,203, 82,169, 87,192, 95, 80,248,203,183,  8,136, 68,235, 34,248, 87,206,199,188,255,254, 27, 12,
- 76, 31,136, 77,111,224,218,110, 55, 33,138, 48,253, 73, 59,215, 94,219,149, 35, 71, 78, 96, 50,218,136,105, 59,176, 65,123, 91,
-119,159, 71, 66,160,198,108, 36,115,214,139, 60,255,230,205,156, 62,176, 19,  8,103,205,222, 83,168, 84,240,198,115,207, 80, 80,
-144, 79,167, 78, 29,209, 69,104,104, 30,175,107,208,222,175, 95,125,131, 78,167, 35, 50, 50,146,152,152, 24,226,226,226,104,158,
-208,156,132,132,120, 98, 99,227,136,142,138, 66,173,209, 32,138,118,140, 70, 35,213, 85,213,236, 49, 84,250,252,221, 71, 10,150,
-163, 11, 55, 18, 29, 19, 78,120,164, 14, 77,152, 26, 65, 37,160,210,168,145,212,223, 98,181,  9,132,217, 70,250,125, 31,143, 21,
-169,104,209,162,  5,225, 81, 38,204,102, 19, 42,181, 10, 65,128,118, 87, 13,166,162,162, 28, 67,245, 47, 87,108,244,180,116,233,
- 82,166, 77,155,166, 12, 35,155,  0,124, 17, 92, 99,175,  7,104, 19, 17, 73,113,113, 49,218,112, 29, 98,100,100,147,187,  7,134,
-178, 61,252,176,225,147,122,231,211, 51,230,255,110,158,243,255,125,240,  1,186,176, 48, 68, 81, 36, 42, 58,154,241,183,220,162,
- 84,254, 80, 19, 31,128,180,225,125,166,141,  8,140,252, 50,110,185, 26,243,240,  4,172, 53, 21,104,236, 42,110,236,217,158,123,
-239,125,212,249,185, 74,  5,219,126, 92, 70,139, 14,137,136, 53, 85, 12,233,219,131,211,167,203,201,219,109,243,104, 47, 51,243,
-101,  8,139, 69,136,108,134,164,150,216,123,240, 79,252,243,147,117,206,207, 69, 17, 70,247,239, 15, 53,103,129, 24,142,238,255,
- 21,109,139, 56,  6,246,235, 78,116, 92,171,  6,203, 41, 32, 32,  8,  2, 42, 65,133, 90,165, 70,163, 81,163,209,106,209,106,181,
-104,180, 90, 52, 26, 13, 54,155,128, 74,165, 70, 16,  4,159,191,123,239,238,165,196,198,106,136,137,142,166,101,171,230, 68,199,
- 68, 98,151,236,152,204, 70,172,118, 59,145,209,145,180,108,213, 22,187,120,156,147,135, 58,121,181,181,118,125,  1, 49, 49,209,
-196,197,197, 99, 48, 68, 96, 48, 68, 18, 30,174, 67,168,117, 82, 27,141, 70, 12,  6,  3, 23,202,155,113,225,194,  5, 74, 47,156,
- 99, 96,255,171,188,218,204, 93,144,235,247, 51, 76,191, 47,157,248,214,241, 94, 73,239,114,144,223, 95,255,231,127,  0,120,249,
-137, 39, 66, 98,239,169, 87, 95,  5,224,149, 39,159, 12,218,198, 47,197,197, 20, 20, 20,  0,112,251,176, 97, 65,217,200, 89,177,
-194, 81,  7, 93,234,149, 36, 73,  8,130,224,252, 95, 62, 39, 95, 55, 45,163, 97,162,154, 51, 39,195,111, 50, 11,148,244, 58,199,
- 39, 96,180,152,  1,  8,139,  8,199, 98, 52, 33,234, 13, 92, 56,123,134,182, 61,122,248,101,163,109,114, 74, 64,247, 39,182,227,
- 53, 28,250,238,139,128,254,230,135, 13,159, 48, 40,253, 14,194,227, 83,  3,127, 32, 25,101,  1, 93, 62,121,242,100, 86,100,228,
-121,189,102, 88, 94, 73,157,227,107,227, 28,221,238,121,147,136,209,230,120,174,250,218,255,115,250,198,145, 18,163,245,106,239,
-181,215, 94,227,175, 51,103,115,235,237, 19, 48,153,140,188,241,250, 34,150, 44, 89,194,140, 25, 51, 20, 70, 11, 37,241,189, 59,
-116, 17, 19,183,189,132,248,195,215, 76, 27,128,223,228,103,174, 41,163,205,213, 35,120,241,137,219, 89,150,179,209,121,126,211,
- 15,217,232, 13,102,198,164, 63,202,128,129,247,113,199,228,225, 68, 68,232,176,216,109, 84, 27, 44,164,244,187,171,  1,139, 39,
-192,  2,183, 79,125,135,  7,103, 93,116,  5,140, 30, 48,148,240,112, 29,159,127,183,142, 53, 91,127,228,131,127,253,  3,147,209,
- 76,152, 90, 67,116,100, 24,205,194,236, 28, 41, 58,235,153,208, 37,144,144, 92,254,175,125, 47, 58,222,139,146,136,221,110,199,
-110,183, 99,179,217,176,217,108, 94,127,243,246, 31,151,210,170,165,154,152,152, 40,174,186,170,  3, 93,175,233, 66,116,116, 36,
-101, 21,165,156, 62,123,134,146,210, 11,136, 54,137,168,200, 40,186,166, 92, 75,108, 92, 17,191,108,139,246,104,235,203,207,127,
-  2,141, 14,163, 70, 69,152, 46, 12,131, 33, 28,131, 33,194, 65,124,130,  4,  8, 24, 12,  6, 12,134, 26, 12,  6, 61,250,154, 42,
- 74, 75, 78,243,225,178, 93,196, 38,167,121, 45,231,255,124,240, 63, 62,159,223, 19,247,120, 39,153,242,242,242,122,199,  9,  9,
-  9,206, 78, 59, 62, 62,158,163, 71,143,146,155,155,219, 40, 82, 12,107,125,209,205, 85, 14,196,135, 82,173,230,230, 50,125,250,
-116,172,231,207,  7, 76,122,173, 90,181,226,246, 81,163,176,234,116, 44, 92,184,144,137,195,135, 59,  9,202, 95,  8,130,192,107,
-207, 61,119,209, 61,246,236,179, 44,124,254,121,175,199,190,224, 78,126, 11, 22,228,146,150,150, 70, 94, 94, 33,233,233, 73, 65,
-145, 94,183, 54,109,137,107,214,204, 73,194, 81,225, 17,156, 41, 57, 79, 85,121,  5,209,113,241,156,248,121,  7, 29,111,232,227,
-151,173, 91,166,205,230,238,137,227,233,210,233,226,160,239,217,133,111,213,185,230,249,199,255,  2, 64,209, 55, 27,184, 49,229,
-170,192, 93,153,193,144,158,115,100,152, 16,192,197,233,  1,153,142,210,  8,236,125,254,126,132,102, 45,176, 23,238,197, 92,120,
-128,130, 50, 61,125,190,241,175,254,101,231,228, 48, 43,115, 58,247, 60,240,103,114, 63,250,132, 78,157, 58,241,226,130, 87,137,
-121,238, 69, 62,255,252,115,110,187,237,182,223, 53, 97,133, 42,161,190, 71,226,155,118,248, 31, 46,204,  0,  8, 32,137, 53, 96,
- 49, 99,221,248, 49,211,134, 18,128,242, 11,227,218,107,186,162, 82,109,164,160,162, 20,248,149,202,226,195,104,195,117,124,241,
-245,155, 24, 46,216,153,250,167,199, 16, 69,184,101,124,127,236,154,104,159, 22, 11, 10,126, 69, 20, 97, 76, 47,  1,104,  7,116,
-196,100,182, 48,105,244, 40,194,227, 84,124,240,241, 90, 84, 42, 88,249,201, 50,212,182,106,174,233,168,227, 72, 81,  3, 74, 86,
-146, 16, 69, 17, 81,116, 16,156,205,110,195, 98,181, 96, 54,155, 49,154,140, 14, 37,168, 82, 97,179, 89, 29, 36, 99, 52,122, 13,
-  9,138,109, 38,161,213,106, 73, 72,104,206,213,201, 93, 72,185,186, 27, 42,181,128,205, 46,114,190,164, 12,179,201,138, 93,212,
- 83,114,238,  2,237, 19,141,116,235,210,141, 93,187, 63,  7,218,212,179,165, 83, 73, 72,162, 17,171,193,134, 94, 13,225,186, 48,
-194,195,117,104,181, 26, 68,209,134, 32,  8,232, 13,  6,206,159, 59,205,129,125, 59, 40, 61,127, 26, 81,180,163, 18,130,139, 89,
-250,231, 59,255,116,190,255,243, 67,127,246,221, 63,228,230,214, 59,158, 53,107, 22, 69, 69, 69,  8,130, 64, 78, 78, 78, 72, 42,
-251,219,111,191,205,185,115,231, 88,185,114, 37, 99,111,186,137,248, 86,173, 26,109,243,149, 39,159,164,188,246,249, 47, 89,226,
-152,219,201,156, 60,217,239,191, 47, 40, 40,224,246, 81,163, 28, 53, 60, 44,140,148,148, 20, 86,125,247, 93,192,234, 47, 80,162,
-244, 23,115,230,100,144,151, 87,200,206,157, 59,  1,234,252,159,145,145, 17, 16,233,165,180,106, 77, 92,179,102,168, 85, 42, 30,
-190,123, 42, 70,147,153,133,239,189, 71,100, 68,  4, 38,147,  9,147,209,136, 74,163,230,228,238,221, 92,213,187,183, 79,123, 50,
-169, 29, 62,126,188,222,185, 80,160,239,240, 59,200,203,157,203,200, 91,238, 71,210,117,  9,202,134, 48,249,226,160, 78, 90, 17,
-239,243,188, 47, 92, 27,167,225, 68,141,157, 77, 35, 91,162,125, 52,135,170,169,157,209,196,183, 10,136,244, 54,108,216, 64,167,
-182,237,120,224,225, 44,230, 62,246, 36, 75,254,149,205,141,215, 95, 79,246, 91,217,204,124,114, 54, 31,245,239,203,254,253,251,
-233,225,167,250,254,173,147,158,124, 46, 24,242,171, 71,124, 15,254,240, 20,  6,117, 56,162, 93, 68, 20,212,196, 72, 70,176,154,
- 16, 80, 67, 98, 10, 90,139, 30, 41,239,159, 76, 75,255,179,159,228, 39,162, 86,171,107,223, 55,  3,218, 19,155,216,149, 19,249,
- 43,121, 39,231, 95,168,204,145,140, 26, 54,144,181, 27,182, 98, 48, 64,100, 66,108,131,150, 34, 34,187, 98, 52,228, 99,183,219,
- 93,206,158,  5, 78,163, 82, 15,229,158,123,239, 71,212,233, 89,253,245, 63,185,101,252,159,137,140,  2, 67,105,185, 71, 82,113,
-150, 78, 18,177,219, 69,108, 54, 27, 86,171, 21,179,201,140,193, 96, 68,171,213,130,  0, 22,139,  5,149,160,194,102,179, 97, 48,
- 24,168,169,169,129, 88,207,243, 26,155,190,207,161, 77,107,  1, 65,165, 66,163,214, 98, 23, 37,202, 74, 43,177,216, 44,156, 59,
- 91, 74, 69,121, 53,  6,189,  5,140, 54, 68,241, 44,106,205, 47,180,107,223,145,168,136,  8, 47,110, 88,192,102,193, 88, 94,194,
-121, 99, 13,162,213,132, 90, 45, 96,179, 89, 57,127,174,152,131,251,118,114,238,244, 73, 36, 73, 66,165, 82,163, 82,169,192, 15,
-119,108, 40, 32,171,184,165, 75,151, 50,105,210, 36, 82, 83, 83,209,233,116, 44, 90,180, 40,100,223, 33,171,189,126,221,187,211,
-186,117,107,150, 44, 89,194,184, 33, 67,104, 23,  2,242,139,175, 37, 59,109,171, 86, 44, 89,178,  4,109,171, 86,  1, 41, 63,171,
- 78,135,214,108,102,213,170, 85,245,212, 95,176,174,207, 80, 66, 38, 59,215,  1, 72,102,102, 38,185,185,129,169, 61,189,193, 64,
-203,132,  4,254, 52,105, 18, 21,149, 85,148,148,149,162,213,106,208,104, 28, 47,173, 86,139, 46, 34,146,170,210, 11, 84,159, 60,
- 69,204, 85,190,131, 28, 14, 31, 63,206,135,171,190,170, 71,124,178,242,235,123,125, 79,198, 12, 27, 18,224, 47,174,  6, 98,136,
-105,158, 74,250, 45, 81,172,255,242, 61,135, 38,107,  2,115,123,251,222, 95,140,121,237,191,104,245,238, 46,174,141,211,160,110,
-150,128,173,252, 60,125,190, 57, 79,148, 70, 64,111,147, 80,251, 24,175, 30, 59,114,132, 53, 95,126,205,251,239,190,207,155,239,
-253,131,236, 69,139, 73,104,158,192,139, 47,191,200,  7, 31,127,196,224,126,  3,249,231,123,255,228,246,140,219, 25, 60,112,240,
-239,146,244, 92,119,156,151,183, 59, 10,134,252,234,221,234,119,  7,188,194,135,125,159,229,227,  1,207,211,108,224,  4,176,152,
- 17, 18,218,194,147,203,249,249,193, 79,225,150,135, 17,209,194,150,127, 51, 77,181,223,171,241, 47,191, 43,  3,170,184,245,222,
- 71, 17, 69,128, 50, 32,  6,176,210,177,235,245,132,235, 52,216,109,102, 36,139,195,125, 24, 19, 19, 67,105, 89,121,131,246, 22,
-191, 62, 11,128,131,219,222, 67,165,186, 72,172,  0,162,241,  0, 38,179, 21,181, 54, 28, 33,204,225, 35,175,174,170,162,121,243,
-230,222,105, 89, 20, 17, 69, 59, 54,155, 21,179,217,130,209,100,164,166,166,134,202,202, 42, 42,202, 43, 40, 43, 45,163,180,180,
-148,210,178, 82,202, 43,202,169,172,106, 56,176, 69,167,179, 96,183,139, 88, 44, 54,202, 43,170, 56,114,228, 24, 59,118,238,225,
-167,159,118,115,232,208, 81, 78, 23,151, 80, 83, 99,166,166,218, 68,201,249,114, 14, 30, 60,204,246,237, 59, 41, 46,110, 56,218,
-205, 85, 15, 88,140,  6,138,143, 29,102,223, 79, 63,240,217,242,247, 88,251,229, 39,156, 42, 42,196, 46,218, 29,100, 39,184,144,
-165,159,240,229,206,244, 57,114,210, 92, 28, 59,197,199,199, 19, 19, 19,195,156, 57,115, 66, 86,225,223,126,251,109, 38, 77,154,
-  4, 64,231,150, 45,253,154, 99, 13, 20, 50,217,201,202,207, 31, 55, 39,192,194,133, 11, 57,124,230, 12,183,143, 26,197,160, 84,
-135,107,109,223,190,125,  0,124,250,253,247,126,127,255,227,207, 62,203,236,231,158,115,186, 49,229,247,242,177,252,222, 31, 55,
-167,140,188,188,194,122,164,231,122, 44,127,238, 11,113, 26, 13, 38,139, 25,181, 90,205,161,194,163, 20,158, 58,201,246, 61,123,
-177, 88,172,168, 16,208,104, 52,  8,130,128,104,183, 99,212, 27, 88,191, 98,185, 95,118, 93, 73,239,238,137,227,235, 79, 25,236,
-218, 87, 71, 17,250,135, 24,151,198,216,197, 73,120,121,185,115,209,218, 14, 95,217,158,187,236, 12, 97, 29, 82, 56, 63,125,  0,
-251,222, 95,140,166, 69, 91,231, 71,231,167, 15,160, 69,184,138,102, 26,239,117,187,107,151,174, 68, 70, 70,241,230,255,190,205,
-176, 33, 67,232,219,191, 31,199,142, 28,227,208,145,  2, 16, 37,194,117, 58,  6,166, 13,228,235, 47,191,230,179,207, 62,227,247,
- 14, 87, 18, 12,137,171, 19, 96,154,176, 23,105,211,199,  8,106, 13,252,229, 61, 30, 61,222,150, 55, 23,189, 15, 49,209,188, 51,
- 47,159,  7, 95,238,138, 58,111, 41,211,174,186,134,165, 93, 30,118,184,216, 84,234,122,118,174,110,214,158, 95,246,125,234,194,
-179,122,192,234,120, 89,205,104, 68, 53,170, 90,242,250,236,243,111,  1, 24,248,135,134, 93, 78,107,247, 75,140,238,221,221, 77,
- 19,105,  0, 45,104,195,177,  9,118,196,218,174,127,202,212, 71,  0, 56,241,195, 82,175,196,103,179,219, 81, 89,109,168, 84,102,
-135, 98, 66,192,110,183, 97, 54,155,208,104,180,  8,  2,216,237,118, 44, 22, 11,102,147, 25,221, 85,109, 61,218,178,219, 69, 44,
- 86, 17,140, 22, 46, 92, 40,199, 96, 48,163, 86,107,176, 88,172,152, 45, 22,172,118, 43,162, 36, 34,  9,  2,168,172, 84,215, 88,
- 40, 41,169, 70,111,180,  1, 41, 62,104,239,226,123,179,201, 72,101, 69, 89,109,176, 77,109,112, 78, 35, 42, 80,254,137,124,186,
-118,236,234,151,123,179,142, 26, 21,  4,199,178, 10, 23, 18, 44, 44, 44,100,193,130,  5,181,238,182, 57,196,198,198, 82, 89, 89,
- 73, 69, 69, 69,192,110, 61, 89,237,181,105,115, 81,177,207,152, 49,131,183,222,122, 43,100,170,207,213,174, 63,196,231, 58,183,
- 39,196,196,176, 96,193,  2,158,124,242, 73,180, 90, 45,214,242,114, 98, 99, 99,153, 59, 99, 70, 64,202,207,125, 14,207,215,156,
- 95, 67, 88, 16, 64,208,210,206,157, 59,157,138,208,219, 92, 73,121, 89, 25,209, 49, 49, 92, 40, 47,231,251,237,219,209,168,212,
-152,173, 86, 12, 70, 35,162, 40, 58,231,115,109, 86, 11, 22,179,217,239,103,220,144,107,243,249,199,255,226, 84,125, 93, 58,117,
-162,168,240, 72,163,158,107,122,198,124,244, 37,219,249,230,179,247, 66,162,252,  2,113,111,186, 98,207,138,119, 73,189,247, 49,
-116,157,123,  2, 96,187,112,134,130, 50,199,146, 10, 93,255,113, 20,217,109, 68, 46,217,238,213, 70, 85, 85, 21,186,136,112,174,
-238,220,153, 99,167, 78, 82, 90, 82,202,148,187,167,178,102,195,122,222,152,191,144,207,214,124, 73,151,206, 93,184,103,226, 31,
-249,113,215, 86, 62, 91,181,138,  9, 19, 39,162,192, 79,226,155, 38,236, 69,250,110, 25,232,116,144,208,  1,195, 85,125,121,243,
-197,108,176,235,225,108, 21,207,252,123, 19, 89,183,102, 65,222,251, 20,157, 45,129, 46, 32,218,109, 30,137,239, 72, 85, 21, 41,
-113,205,176,153,225,200,198, 15,185,122,232,205,128,227, 58,171,197,138, 22, 21, 53, 38, 71,164,216,232,161,215, 19,209, 60,209,
-107,129, 71,247, 16, 88,179, 87, 66, 27, 14, 97, 29,110,198, 82,180,217,169,250,180, 97, 58,172,152,136,142,  8,119, 40,206, 53,
-255,198, 88,122,146,126,201,113, 94,136, 79,114,204,237,  9, 54, 84, 42,193, 73,134, 22,139,  5,163,209,232, 84, 52,162,232,112,
-135, 90, 44, 22, 90, 54, 96,203,100,178,213,186, 33, 69,204,102, 59,213,213, 70, 36,  9,108, 54, 17,171,213, 14, 42, 80,105,212,
-160, 18,144,  4,  1, 73, 18,176,137,122,140, 38,187,127,141,206,149,255,  4,217,163,233,170,244,228,147,254,209, 96, 99,213, 30,
- 64,164, 75, 56,187, 59,233, 37, 37, 37, 81, 93, 93,141,205,102,115,118,144,193,168,189, 78, 45, 90, 56,207,117,106,209,226,146,
-168, 62,127,225, 58,183, 39, 85, 87, 51,111,222, 60,204,165,165, 88,229,129, 94, 45, 73,107,205,102,198,143, 31, 79,241,249,243,
- 36, 94,166,144,127, 87,247,165,235,252,158, 39,164,165,165, 57,  3, 93,  0, 14, 20,123,190,206,102,182, 80, 97, 41,195,100, 50,
- 17, 23, 27, 75,120,152, 14,171,221,134, 36, 73,206,193,160,213,106, 69,180,217,253,126,190,135,143, 31,175, 19,216,226,238,246,
-116, 15,124,105, 44,162, 90,246,  5, 66,163,128,130,157,227, 27,178,190,132,243,157, 86, 18,214, 33,  5,161,115, 79, 58,254,107,
- 55, 23, 76, 34, 81, 26,  1,203,150,207,201, 47, 60,230,115,134,194,104,179,176,243,199,159, 88,252,218,235, 12, 24, 58,136,103,
-254,254, 28,235,190, 89,199, 71, 31,252, 31,253,111, 26,196, 85,157, 58,160,137,212,178, 97,243,  6, 62,126,255,255,248,244,243,
- 85,124,253,245,215,140, 29, 59, 86, 97, 58, 95,174,206,105,170,253, 72,155, 63,130,136,112,142, 87, 89,192, 88,137, 78, 52,208,
-179,123, 18,148, 26,192, 98, 99,104,175, 20,199,218,  1,171,  9,181, 80,235,106, 20, 27,234,188, 43, 40,168, 40, 66,163,131,209,
-183, 60,198,199,111,206,  7, 44, 96, 48, 99, 55,194,231,223,239, 33,239,231,131,  0,180,239,208,217, 65, 12, 62, 48,166,151,128,
-213,  4, 95,126,189,150, 62,163,254,226, 80,123,104, 81, 71,192,228,113, 25,140,185,233, 86,  0, 78,157, 56,138,100,245, 78, 42,
-146, 36,214,170, 62, 27,102,139,  5,147,217,132,209,104, 64,175,175,161,186,186,154,202,202, 74,170, 42,171,168,170,170,166,166,
-166,  6,131,193,208,240, 92,136, 94,196,104,180, 97, 52,218,208,235, 45, 84, 87,155,168,170, 54, 82, 93, 99,162,166,198, 76, 85,
-165,137,234,106, 51,213, 85,142, 87,101,165,153,202, 10, 35,229,229, 70,111,  5,116, 33, 60,  9,  9,  9, 36,169, 86,227,  9,174,
-242, 43, 96, 55, 39,192, 53,253,175, 97,235,154,173,172,251,110,157,147, 12,243, 79,248,183,176, 90,173,118, 44,253,144,241,106,
-237, 18,129,185,115,231,146,148,148,228, 84,133,142,159, 17,156,218,107,221,186,254,194,229,233,211,167,243,245,127,254,195,233,
-  0, 35, 49,189, 97,201,146, 37,126, 19,170, 85,119,113, 93,232,242,229,203, 57,114,214, 17, 49,188,122,227,198, 58,159,229,231,
-231,211,178,101,203, 43,210,176,101, 82,203,204,204,172,115, 94, 62,118, 37, 61,175,  3,155,102, 49,136,118, 59, 85,101,229,142,
-229, 50, 21,229,232, 13,  6,244,  6,  3,213, 53, 53,232, 43,171,168,174,168,192,100, 52, 96, 49,153, 16,109,190,  7,113,238,164,
-230, 74,122,242,177,123,148,167,191,168, 41,217, 78, 94,238,220, 58,231, 12,101,123,174,120, 71,123,102, 74, 39, 58,254,107, 55,
- 66,231,158,152, 55,173,228,196,159,122, 19,165, 17,216, 60,178, 37,182,202, 18,250,172, 61,143, 15, 79, 39,147, 38, 77,226,193,
- 71, 31,226, 72,126, 62, 63,110,220, 76,108, 76, 44,119, 78,185,147,184,230,  9,236,250,105,  7,209, 97,225, 68, 69, 69,209,182,
- 83, 59,254,253,201,191,153,251,244, 95,169,169,168,248, 93, 16,149,236,145, 88,186, 96,110,157, 87, 72, 20,223,180,130,127, 32,
-149, 28,199,164, 13, 39,239,124, 36,  2,208,169,226, 12,234, 79, 95,228,155,204, 23,248,159,107,175,166,109,124, 56,127,233, 22,
-  1,111,239, 70,178, 90, 56,169,110, 83,223, 43, 87,  7,209, 64, 13,  0,123,247,125, 69,175,212,241,252,237,153, 15,248,226,211,
- 69,124,251,253,175, 12,235,127, 29, 26,141,142,245,155,119, 33,169, 53, 88,236,118,191, 11, 63,186,119, 55,214,238, 60,  4, 11,
-231, 51,105,252, 24,198,141, 27,207,186,239, 62,195,102, 53, 49,246,230, 59, 81,217,173,104,213,222,137, 84, 20, 37,167, 98,148,
- 36,  9, 73,116, 68,121,170,173, 54, 84, 42,149, 67,  5, 10, 66,237,242,  6,  7, 73, 54, 72,124,134, 48,  4,193,136, 86,235, 88,
-172,142, 36, 33,138, 96, 23, 69,108, 54, 17,155, 77, 66, 80,219, 28,246, 16,176,137, 96,177,137, 24, 77,118, 34,227,125,106,189,
-122, 71,130, 32, 19,139, 91,139,241,163,255,126,226,158, 39,184,166,255, 53, 23, 21,194,178, 60,242,150, 57,214, 35,109, 93,179,
- 21,198,248,247, 12, 28,247, 15, 86,174, 92,233,108,156,157, 59,119,118,170,100,171,213,138,205,102, 11,136,248,194, 90,183,118,
-170,189,206,151,129, 56,180,181, 46,211,177, 67,124,  7, 83, 12,232,209,131,133, 11, 23, 50,126,252,120,242,243,243, 41, 40, 40,
-224,182,116, 71, 72,123,215,174, 93,235,124,118,226,196,  9, 90,232,116,180,113, 81,172,158,240,248,179,207,214, 81,196,179,159,
-123,174,206,253, 10,100,110,207, 21, 25, 25, 25,228,230,230,146,153,153, 73, 78, 78,142,147,244,210,210,210,252,182, 81,126,161,
- 18,  1, 27, 22,139, 25,211, 57,  3, 97,225,225,104, 52, 26,167,226, 51,214,212, 96,214,235, 49,155,205,212, 84, 84, 48,122,234,
- 84,159, 54,101, 82,147,221,157,125,175,239,201,246, 93,251,234, 92,227,105,222,207, 23,170, 75,182,179,125,227,103,140, 24,115,
-199, 69, 34,172, 60, 76,254,190,173, 33, 81,121,193,186, 57,  1, 10,202,244, 20, 61,112,  3,210,177,125,180,122,119, 23,122,155,
- 68,213,212,206,196,126,124,140,170, 63, 53, 71, 35,128,202,143,129,215,244, 25, 51,152, 55,255, 69, 90, 53,111,129, 85,180,115,
-248,100, 33, 83,239,188,139, 15, 62,252,144, 47, 62,255,146,187,166,222,133,217,100,102,243,142, 31, 48, 26,107,152,118,223,125,
-108,248,241, 71,188,  5,248,253,150,200,207, 53,178,211,253, 56,104,226, 91,154,242, 48, 67,245, 57, 20,156, 42,231,204,248, 90,
- 54,221, 62, 23,105,245, 59,180, 59,119,140,215,135,220, 14, 21,101,240,242, 50,164,226, 67,216, 35,162,168, 40,115, 56,121,  4,
-149,231,144,164, 77, 27,191, 96,200,208, 17, 14, 98, 16,173, 28,169, 40,  2,236, 92,221,172, 51,195,134,245,164,117,139, 54,148,
- 86, 86, 57,180,161,197,198,153, 10, 61,215,120, 41,112,251, 14,253, 57, 85,244, 99,109,141,212, 48,186,151, 99,142,111,237,126,
- 43,235, 86,175,228,220,133,211, 52,143,115, 68,134,198,133,105,105, 27, 23,237,195,125, 40,213,  6,222,136,181,107,248, 28,196,
-103, 87,217, 17, 84,142,133,237,  2,181,235,253, 36,  7,249, 53,132, 59,239,122,148,255,251,224,121,194,195, 53,168,213,130,147,
- 24, 68,187,132,205, 46, 97,181,138,216, 68,  9,  4,  1, 17,  1,187, 93,194,108, 21,121,244,161,231, 61,166,236,145,220,202,233,
-122,194,149,240,156,239,  2,  8,110,113, 37, 61, 79,199, 91,215,248,238, 44,236,118, 59,102,179,153, 73,147, 38, 57,137,111,229,
-202,149,172, 92,185,146, 73,147, 38,145,156,156,140, 32,  8,188,241,198, 27,204,157, 59,151,178, 50,255, 22,  7,207,158, 61,155,
-217,179,103,179,118,237, 90,244,231,234,  7,254,116,110,217,146, 99,199,142,  1,254, 45,104,111,104,177,186,182, 85, 43,222,126,
-251,109, 36, 73, 98,220,144, 33, 36,250, 49,103,216,166, 69, 11,  6,244,236, 73,233,241,227,180,208,233, 40,224, 98,116,103,151,
-182,109,153, 53,107, 22, 91,183,110, 37, 37, 37,133,238,137,137,190, 59, 85, 15,235,248,130,157,227,115,133,188, 78,111,206,156,
- 12, 10, 11, 47, 42, 61,215,181,125,254, 68,118, 70, 39,182,194,120,230, 44,162,205,142,190,178,146,202, 11, 37,  8,130, 10, 73,
- 18, 49,153, 76,206, 54,115,236,224,175, 88, 45,102,191, 34, 58,235,121,112,134, 13, 97,204,176, 33,117,130, 89,  2,117,117,214,
- 92,248,137,237, 27, 29,238,204,232,168, 40,190,112, 83,125,125,  6, 79,184,162,157,118,159,111,206,179,227, 15,144,154,150,206,
-249,233,  3,104,243,143, 31, 40, 40,211, 19, 31, 38, 80, 90, 86,142, 70, 16,124, 42, 62, 25,247,220,115, 79,157,227,175,190,250,
-138, 49, 99,255,192,234, 47, 87,179, 98,197, 10,158,123,122, 30,223,110,220,128, 90,163, 38,177,125, 34,149,149,149, 16,246,219,
- 39, 62, 87,229,215, 88,212,155,227,219,216, 59, 19, 92,150,226,172, 62, 31,199,184,150,  2,210,142, 53, 72, 63,126,233,240,168,
-133,135, 99,138,140, 97,125,220, 80,206,246, 79,175,117,123,121,206, 54,144, 95, 96, 97,203,182,151, 29, 36,160, 14,151,157,100,
- 28,169, 58,195,223,102,252, 25,131,193, 76,149,209, 49,199,103, 81,233, 24, 62,122,146,215,  2,207,123,250, 62,214,126, 93,187,
- 80,214, 46,231, 18,180, 49,186,135,192, 29, 15, 47, 34, 50, 82, 71,179,218, 57, 62,173,104, 34,177,165,143,206, 76,146,144,  4,
-  7, 65,201,163,110, 81, 16, 17, 68,193,153,209,197,193,124,181,244,227, 67,184, 24, 12, 17, 24,141,213,104,181,106, 84,  2,136,
-146,195,182, 67,241,137, 24,140, 54, 36,  4, 68,  9,172, 54,  9, 73, 37,120, 43,154,131,196, 36, 87,242,147, 26,148,215,114,136,
-203,221,127,154,224, 51,247,221,175, 63,254,218,232,202, 35, 73, 18, 70,163,145, 30, 61,122,144,148,148,196,241,227,199, 89, 81,
-155,137, 68, 38, 66, 25,243,231,207, 15,136,252,  0,178,178,178, 26,252,108,226,189,247, 58, 20,  9,254, 47,104,151,179,164,184,
- 99,252,208,161,  1,  5,202,180,113,137, 20,118, 87,128, 39, 78,156,160, 79,215,174,132,233,245,126,223,195, 80,195,157,212,220,
-215, 91,202,  4,232, 47,249, 69,180,109,131,225,240, 17,236, 54, 27, 85,229, 21,181, 10,222, 49,  0, 44, 63,119,158,170,242,114,
- 36, 73,242, 75,237,185, 67,158,223,115, 95,190,224, 62, 15,232,189,209,237,101,219,247,159, 58, 15,191,200,117, 44, 99,184,126,
-200, 29, 36,180, 74,189,130,221,180, 84,159,252,120,151,212,172,191,113, 86, 20,233,181,236, 39,126, 26,221,154,235, 86,159, 67,
- 35, 64,140, 54,184,245,183,227,199,143,231,187,141,223, 49,124,228,  8,190, 92,245, 57, 47, 44,152,207,156,202, 74, 36, 81,100,
-249,242, 85,180,104,209,130,162, 42, 20,120, 35,190,122,190,233,241,115,121,111,127, 30,221,237,  7,104,163,173,196, 36,105, 56,
- 44,197,161, 46,169,226,108,191,139, 89, 11, 84, 94, 92,138, 45, 19,122, 51,230,190,123,176, 75,209,117, 42, 69,141,190, 10,181,
- 38, 22, 84,145, 60,249,154,255,139,157, 71,143,237,206,231,111,207,  5,149, 65,246, 82, 58, 70,122,209,177,216,173,229, 32,233,
- 57,241,195, 82,250,244,236,224, 95,213,148, 28,171,244, 37, 36,  4,  9,  4,161,118, 14, 77,112,165, 19,207,149,217, 29,153, 89,
- 79,178,228,173,151,169,174,174, 68,163, 81, 57, 85,159,189, 86,241,213,212, 88,176,216, 68, 68, 73, 64,173, 81,241,234, 43,139,
- 27,180,245,135, 91,251,  1,176,238,171,109,216,107,231, 78, 36,185,184,206, 89,190,139,229,188,247,129, 73,126,221,191,  7, 94,
-120,128,227, 71,143,135,164,  2,153,205,102,202,107,163, 25,211,210,210,184,241,198, 27, 41, 41, 41,225,232,209,163,142, 48,119,
- 81,100,213,170, 85,  1,145,223,140,123,239, 37,162, 85, 43,198,121,113, 61,206,168, 37,190,  8, 63,  8,235,137, 90, 85,232,201,
- 94,162,135, 57,196, 64,208,166, 69, 11,  6,214, 42,192, 86, 17, 17,116, 31, 48,224,138, 54,104, 79,100,150,150,150,230, 49,208,
- 37, 16,242,107,222,229,106,170,203,203,209,232,194, 48,155, 77,216,173, 54, 68, 81, 36, 38, 62,158,202,178, 50, 70, 79,157,234,
-183,218,115, 93,192, 46,207,239,109,223,181,143, 49,195,134,212,153,219,243,181,168, 61,165,109, 57, 23, 74, 47,176, 34,247,223,
-117,206, 79,158,122, 63,101,150, 46,141,186,143, 13,185, 53, 61,159,247,127,102,189,207, 55,231,225,155,139,169,197,174,254,226,
- 98, 70,169, 74,171, 61,232,242, 14, 31, 58,156,189,241,123, 25, 53,118, 52, 15,254,241,126,122,246,234,193,151, 95,124,197,143,
-123,118, 50,109,218, 52,138, 46,115, 18,232, 80, 67,118,105,186, 42, 62, 79,231, 66, 70,124,  0, 98,143,116,246,145,206,190, 70,
- 20,188,123,247,129,188,249,230,  7, 60,242,232,157, 36,118,236,  2,152,209,234,194, 57,117,166,138, 33,227,239,  9,216, 94,239,
-222, 73,220,119,223,100,150,253,243, 83, 16, 79,  0, 26,108, 38, 35,137,109, 99,233,208,204, 22,144,106, 17, 16,144,  4,  7,233,
-201,122, 74, 64,  2, 73, 64, 16, 36,  2, 29,147,207,248,203, 95,  1,248,235, 83,143,160, 86,171,144,  0,187, 93,194,102,179, 83,
- 83, 99, 67, 20, 37, 84, 42,129,119,222,241, 47,123,251,205,227, 29,  4,184,230,243,173, 46, 57, 27,113,  6,180,220,159,121,103,
- 64,229,171,172,169,244,154,127, 51, 16,136,162,136,209,104,196,110,183, 83, 85, 85,133, 90,173,198,110,183,211,166, 77, 27,172,
- 86,107,189,117,100,243,231,207,247,153,190, 76, 86, 95,241, 33, 90,174,144, 32,207,157, 52,146,228, 26, 66,107, 31,107, 69,125,
- 33,148,115,124,158, 72,204, 91,116,103, 32, 11,217, 59,221,120,  3,  0,135, 54,109,194,100, 48, 34,218,237, 92,147,150, 70,143,
-  1, 55, 17,157,232,231,179,146,  4, 78, 28, 59, 10, 64, 24,240,231,219, 47, 78, 38,159, 56,118,180,222,177,183, 80,199,130, 51,
-241, 64, 60, 83,166, 62,192,137,147,103,217,246,159,213,  0,172,248,232, 61,250,222, 52,142,152,214,131,  2,126, 22,147, 39, 79,
- 38,208, 52,100,118, 65,231,245,243,162,  9,109,248,230,180,233,146,147, 67,175, 94,189,232,213,171, 23, 59,118,236, 96,195,182,
- 77, 52,111,209,252,119,151, 60, 62,216, 57,189,160,136, 47, 84, 72,238,118,  3, 95,175, 59,194,109, 99, 35,105,149,120, 21,101,
-213, 54,134,140,253, 99,208,246,250,223,208,141,254, 55,252,149,204,204,191,  1,231,136,143,209,208, 33, 65, 12,204,198,212, 41,
-151,236,247,190,252,202,155,  0, 60,242,200, 95,176, 90, 44,136,146, 35,252,255,245,215, 95, 15,202,222,152,219, 28,187, 86,124,
-253,217, 22,  4, 65,197,180,135,239,110, 18,149, 81,146, 36,204,102, 51, 22,139,197,217,129,203, 29,183,178,107,131,119,  4,146,
- 38, 45, 88,  4,186,251,130, 47,116, 27, 50, 36,232,191, 61, 83,152, 79,223, 46,237, 67, 90,158, 82,203,213, 68,183,190,154,244,
-140, 65,141,182,229, 43,225,116, 93,168,176,  9, 58,140, 42,239,  1, 88, 71,171,109,164,196,248,211,213,134,102,153, 78,159, 62,
-125,126,119,237,164,161, 64,150, 96,231,252,132,113,119,207,147, 80,160,160,145,136, 48, 31,194,232, 97, 79, 60,  5, 10, 20, 40,
-104,106, 80,118, 96, 87, 16, 18, 40,164,167, 64,129,  2,133,248, 20, 40, 80,160, 64,129,  2,133,248, 20, 40, 80,160, 64,129,  2,
-133,248, 20, 40, 80,160, 64,129,130,203,134, 58,161, 70,227,  7,  7, 31,109,229,105,193,180, 98, 79,177,167,216,107, 26,246,228,
-180,101,202,253, 83,236,253, 86,236, 93, 54,226,147, 27, 72,160,240,214,160, 66,109, 79, 65,211,131,175, 78, 85, 65,211,125, 22,
-190,174,215,217, 37,204,234,186, 97,246, 69, 69, 69, 20, 23, 23,163,211,233,104,209,162,  5, 29, 58,116,104, 82,247,192,117,151,
-144,223, 91,191,114,254,252,121,138,139,139,253,190, 62, 49, 49,145, 86, 94,214,195,134,218,222,111, 82,241,201,  8, 36,141,146,
- 63, 25,237, 61,217,107,104,155,154, 43,185,229, 76, 83,237,200,252,197,204,153, 51,185,230,154,107, 66,106, 51, 35, 35,131,244,
-244,116,159,182, 46, 53,249,221,124,243,205,  0,172, 91,183,174, 73,216,211,235,245,172, 90,181,138,130,130,  2,  0, 38, 78,156,
- 72,239,222,189,131,126,190,174,245, 94,146, 46,166,207,115,223,221, 66, 16,  4,178,179,179,189, 14, 26,253,125, 22,254, 92,231,
- 74,122,231,207,159,199,108, 54, 35,  8,  2,225,225,225,152, 76, 38,138,138,138,248,249,231,159,233,213,171, 23, 87, 95,125,181,
-207,239, 28, 56,112, 96, 64,247,231,204,153, 51, 20, 22, 22,  6,244, 55, 11, 22, 44,112,110,139, 21, 40,  2, 93,119, 58,121,242,
-100,175,237,195, 83,123,235,216,177, 35,  0,213,213,213,152,205,102,103,125,242,167,189, 21, 23, 23, 51,107,214, 44,191,202, 86,
- 94, 94, 78,223,190,125,189, 62,227,226,226, 98,174,189,246, 90,191,236,157, 59,119,142,121,243,230,253, 46,  6, 16, 26, 20, 52,
-121,229,242, 69,246,104,159,215,220,246,208,218,144,171,106, 95,  4,153,151,151, 87,239,216,181,209, 30, 59,118,140,163, 71,143,
-146,155,155,219,168,251,186,127,255,126, 39, 81,117,115,213, 52,  0,  0, 32,  0, 73, 68, 65, 84,185,127, 71, 99,145,149,149,197,
-244,233,211,233,209,163, 71, 64,127,183,106,213, 42, 90,181,106,197, 61,247,220, 67,121,121, 57, 11, 23, 46,164, 83,167, 78,196,
-199,  7,150, 17, 71, 16,  4,190,249,230, 27,231,241,232,209,163, 89,187,118,173,215, 99,127,158,173,107, 93,206,204,204, 36, 45,
- 45,141,165, 75,151, 58, 59,246, 64,235,122,101,101,165,115,164, 47, 73, 18, 17, 17, 17,156, 63,127,158,138,138, 10, 98, 99, 99,
-249,233,167,159,  0,252, 34,191,238,221,187,147,145,145, 81,135,152,220, 21,218,156, 57,115,  0,216,182,109, 27,119,221,117, 87,
-192,207, 53, 24,210,147,177,120,241,226, 75,214,150,163,162,162, 56,120,240, 32, 90,173, 22,139,197,194,218,181,107, 57,124,248,
- 48, 79, 61,245, 84, 64,118,206,185, 37,111, 31, 60,120, 48,155, 55,111,174,115,238,194,133, 11, 65,217,106,  8,199, 93,146,136,
- 95, 41,184, 47, 98, 15,118,  1,251,239,134,248,118,239,222, 29,212,136,251,183, 66,126,245, 92, 14,125, 94,188, 56,106,219,241,
- 76, 72,108, 46, 93,186, 52,160,145,175,123,242,227,220,220, 92,210,211,211, 89,191,126, 61,130, 32,120, 76,142, 28, 12,222,126,
-251,109,206,157, 59,231,220,245, 33, 20, 88,183,110, 29, 27, 54,108, 64,146, 36,231,206,235,129, 60,247,130,130,  2,103,150,252,
-176,176, 48, 82, 82, 82, 88,184,112, 97,192,234,239, 82, 36,169,150,127,203,210,165, 75,157,233,202,228,255, 51, 51, 51,201,200,
-200,  8,232,183,150,151,151, 19, 31, 31,143, 74,165,226,190,251,238,195,100, 50,145,157,157, 77, 68, 68,  4, 38,147,  9,163,209,
-136, 90,173,102,231,206,157,180,108,217,146,216,216, 88,175,246,100, 82,115, 85,114,242,185, 80, 96,206,156, 57,100,102,102,  6,
-173,250,  0, 30,123,236, 49,231,123,215, 76, 75, 13,157,247,133,142, 29, 59,114,225,194,  5,158,121,230, 25,162,162,162, 88,185,
-114, 37, 67,134, 12,  9,138,244,220, 49,120,240, 96,166, 78,157, 90,143,252,100, 53,233, 79, 91,  8, 37, 82, 83, 83, 73, 76, 76,
-228,224,193,131,206, 93, 84,100,180,111,223,158,148,148, 20,  4, 65, 96,195,134, 13,141, 34, 61,249,220, 37,203,213, 25,202, 14,
-213,159,243,193, 32, 59, 59,155,172,172,172, 70,147,223,212,169, 83,149, 57,171,  0, 85, 99,102,102, 38,147, 38, 77, 98,228,200,
-145, 64,253,157, 25, 26,131,253,251,247,  3,144,158,158, 78,235,214,173, 89,178,100,  9,173, 91,183, 14, 88,161,121,194,136, 17,
- 35, 24, 49, 98,  4,251,247,239,103,201,146, 37,236,223,191, 63, 32,187, 50, 33,132, 74,253,133, 26, 50,217,185,214,229,204,204,
- 76,231,  0,197, 95, 24, 12,  6,154, 55,111,206, 29,119,220, 65,101,101, 37,165,165,165,104,181, 90, 52, 26, 13, 26,141,  6,173,
- 86, 75, 68, 68,  4,101,101,101,252,252,243,207,126,217, 46, 44, 44,172, 51, 48,146,137, 79, 86,126,142, 29,226,131, 83,246, 73,
- 73, 73,204,153, 51,199,105,171, 41,180,229,227,199,143,179,105,211, 38,198,142, 29, 75,199,142, 29,105,209,162,  5,155, 54,109,
-226,169,167,158, 34, 42, 42, 10,189, 94,143, 90,173, 14,216,238,224,193,131,121,250,233,167,157,125,151, 39,229,231, 11, 31,127,
-252,177, 95,170,175,184,184,152, 59,238,184,195,231,117,118,187,157,196,196, 68, 18, 19, 19, 41, 44, 44,116,122,134,122,245,234,
- 69,223,190,125,157,  3,199, 96, 73,111,218,156,249, 14,254,168,221,136, 54, 24,242,187, 44,196,215,144,203, 44,152,192,151, 75,
- 77,126, 99,198,140,105,180,242, 11,228,119,  5,242, 29, 19,103,172, 99,213,146,155, 67,254,108, 66,221, 49,184,118, 58,161, 80,
-123,178,202,235,209,163,  7,130, 32,112,238,220,185,144, 16,159, 12,217,214,146, 37, 75,124,222, 11,121,110, 15, 96,225,194,133,
- 76,156, 56,177,206,254,104,251,246,237,171,243,153, 63,117,113,244,232,209,117,230,188,255,240,135, 63,212, 81,130,254,184, 55,
- 27, 26, 84,186,255, 30,217, 13,234,234,246,244,134, 35, 71,142,160, 82,169, 80,171,213, 28, 57,114,  4, 73,146,200,207,207,119,
-230,101,213,104, 52,  8,130,128,221,110,199, 96, 48,240,217,103,159,249, 69, 88,174,164,151,145,225, 57,177,118, 99,220,149, 73,
- 73, 73,206,223,218, 88,245, 23, 10, 88,173, 86,174,191,254,122, 54,110,220, 72,159, 62,125,208,235,245, 78, 23,246,198,141, 27,
-185,249,230,155,177,217,108,  1,217, 28, 60,120, 48,  0, 47,189,244, 82,189,243,129,146, 95, 40,177,127,255,126,194,194,194, 72,
- 75, 75, 35, 41, 41,137,235,175,191, 30,139,197,226, 36,189,194,194, 66, 54,110,220, 24,148,109,153,244,228,247,193,238,194,126,
- 89,136,239,114,  6,183,132,130,252, 58,117,234,212, 40,229, 39, 55,184,143, 62,250,200,227,231,107,214,172,225,163,143, 62, 10,
-202,246,182, 99,215,210,175,243,193,144,185, 55,229,138,152,148,148, 20,146,132,210,174, 17,117,114,103, 19,104,112,130,187,218,
-107,211,230,226, 38,154, 51,102,204,224,173,183,222, 10,153,234,115,181, 43,187, 60,189,193, 85,221,233,245,122, 22, 44, 88, 64,
-151, 46, 93,208,106,181,232,116, 58, 98, 99, 99,121,241,197, 23,  3, 82,126,238,115,120,190,230,252, 66, 49,224,218,185,115,103,
-157,235, 27, 26, 49,151,149,149, 17, 19, 19, 67, 89, 89, 25, 63,252,240,  3,106,181, 26,139,197,130,209,104, 68, 20, 69,103, 59,
-182, 90,173,152,205,102,191, 93,183, 13,185, 54, 93,  7, 77, 73, 73, 73,156, 63,127,190,209, 94,  9,185, 78,134, 98,128, 23,108,
-130,249,133, 11, 23,242,196, 19, 79, 56,251,165,194,194, 66, 14, 31, 62, 12, 64,239,222,189,201,207,207, 15, 56, 90, 50,212,228,
- 38, 19,105, 40,190,107,231,206,157, 88, 44, 22,250,247,239, 95, 39,105,118,126,126, 62,155, 54,109,186,226, 10,252,119, 25,220,
-210, 84,200,111,234,212,169, 78, 55,132,171,203, 35, 24,210,155, 56, 99, 93,200,239, 83,168, 21,183, 39,210,147, 59,176,198,168,
-189,238,221,187, 59,207,117,239,222,253,146,168, 62,127,225, 58,183, 23, 21, 21,197,188,121,243,208,106, 47,110,194,156,154,234,
-216,248, 52, 62, 62,158,241,227,199,179,101,203, 22,198,143, 31,127, 89,202,230, 90,167, 92,231,247, 60, 33, 45, 45,173,206, 64,
-167,161,117, 84, 22,139,133,178,178, 50, 76, 38, 19,177,177,177,232,116,186,218,141,104, 37,236,118, 59, 22,139,  5,171,213,138,
-221,110,247,155,244,228,129, 86, 67,110, 79,247,192,151,198, 34,148,182,130,157,227,123,241,197, 23, 25, 59,118, 44,157, 58,117,
- 34, 50, 50,146,161, 67,135, 82, 86, 86, 70, 84, 84, 20,229,229,229, 44, 91,182, 12,149,234,202,230, 19,217,188,121,115, 29,215,
-169,220, 87,  5, 75,176,251,247,239,167,168,168,136, 41, 83, 28, 59,224, 44, 95,190,220,177, 27,124, 16,144,119,103, 88,186, 96,
-110, 61, 87,103, 48,115,124,191,203,204, 45,161,152,235,  3,130, 86,101,174, 29,145,171, 27, 34, 88,210,147,113,125,239, 84, 54,
-124,247, 61, 31,127, 23,233, 36,195,109,199,174,109,212,111, 76, 75, 75, 35, 47, 47,207,233,135,207,204,204, 12, 80,161, 93,236,
-236, 94,125,245, 85,  0,230,206,157,219,232,206, 70, 86,123,173, 61,236,161, 55,125,250,116, 86,174, 92,233,188, 38, 20, 88,178,
-100,137,223,222,134,242,242,114,231,251,229,203,151,179,103,207, 30,  0, 62,249,228,147, 58,159,229,231,231,211,178,101,203, 43,
-210,  6, 92,163, 55, 61, 13,118,252, 85,247, 49, 49, 49,216,237,118,202,203,203,185,112,225,  2,229,229,229, 24, 12,  6, 12,  6,
-  3, 53, 53, 53, 84, 85, 85, 81, 89, 89,137,209,104,196,108, 54, 99,183,251,222, 76,213,189,110,120, 10,146, 10,214, 85, 94, 88,
- 88, 88,239, 55,  7,235,113,  8, 37,222,127,255,125,134, 14, 29, 74,100,100, 36,  7, 15, 30,100,227,198,141, 68, 69, 69,241,183,
-191,253,141, 45, 91,182,240,212, 83, 79,  5, 76,124,131,  7, 15,110,240,213, 24,242,123,233,165,151, 26, 77,122,224,152, 66,144,
- 73, 15, 96,202,148, 41, 12,105,196,150, 86,206, 65,221,130,185, 65,187, 56, 47,171,226,187, 28,193, 45,161, 38,189,151, 94,122,
- 41, 36,174, 17,217,237, 57,117,234,212,160, 73,111,226,140,117, 92,223, 59,245,162,187,237,211,207, 88,245,169,227,253,134,239,
-190,135,225,195,128,192,150, 51,200, 33,238,174,157,141,220,  1,  5,182,100,192, 65, 22,114, 64,203,164, 73,147,232,220,185,115,
-163, 73, 79, 86,123,222, 84, 93,168, 84,159, 76,160, 51,102,204,240,253, 44, 38, 78,100,225,194,133,140, 31, 63,158,252,252,124,
- 10, 10, 10,184,251,110,199,190,136, 93,187,118,173,243,217,137, 19, 39,248,227, 31,125,239, 55,121, 41,230,248,100,229,148,155,
-155,235,244, 90,200,132,224,250,220,125,161,121,243,230,148,150,150, 98,177, 88, 40, 41, 41, 65,167,211,161,209,104,156,138, 79,
-175,215, 99, 48, 24, 48,155,205, 84, 86, 86,122,156,175,115,135,171, 87, 64, 46,143,187, 58,245,199, 78, 67, 30,  7, 87, 55,106,
- 67,139,217,131, 81,121,193,186, 57,  1, 14, 31, 62, 76,126,126, 62,  6,131,129,254,253,251, 99, 48, 24,200,205,205,101,202,148,
- 41,124,249,229,151,168,213,234,128,137, 47,212, 10,205,221,110, 99,236,164,165,165, 57,235,217,174, 93,187, 48, 24, 12, 12, 26,
- 52,136,174, 93,187,162,213,106,235, 45,133, 10,104, 80,231,166,248,154, 44,241, 93,174,224,150,166, 70,122,238,228,215, 24,165,
-231,237,120,195,119,223,  7, 85, 49,189, 29,  7, 82, 49, 39, 77,154,228, 36,190,149, 43, 87, 58,151, 29, 36, 39, 39, 35,  8,  2,
-243,231,207,103,238,220,185,126, 19,226,236,217,179,153, 61,123,118,157,185, 45,247,145,164, 28, 38,237, 79, 40,118, 67,139,213,
-101,130,149, 36,137, 25, 51,102,212,113,169, 54,132,222,189,123,211,177, 99, 71,182,110,221, 74, 74, 74, 10,  5,  5,  5,206,232,
- 78,247,207, 92,131, 94, 26, 28, 54,120, 88,199, 23,236, 28,159,123,219,202,201,201, 33, 61, 61,157,188,188, 60,103, 91,115,141,
-196,245,167, 62,182,111,223,158, 35, 71,142, 96,183,219,169,170,170,194,106,181, 58, 73,218,100, 50, 57, 55, 29,150,  3, 94,130,
- 81,250,233,233,233,164,167,167,215, 81,102,129,218,113, 37,184,164,164,164,122,125, 75, 40,151, 75,  4,  3,121,201,194,227,143,
- 63,206,198,141, 27, 25, 54,108, 24,135, 15, 31, 38, 58, 58,154,162,162,162,160,136,207,149,164,228,129,117,168,230,253, 26,171,
-244,228,254,164,176,176,144, 29, 59,118,  0,160,213,106,233,219,183, 47, 73, 73, 73, 12, 29, 58, 52,160,  0, 23, 57,170,211, 83,
-112, 75,200,162, 58, 67,157, 61,197, 83,165,115, 31,153,185,143,  6,175, 20,233, 77,157, 58,245,146,132, 63, 55,198,230,201, 83,
-103,125, 94, 19, 17, 17, 25,144, 77,111,243, 63,193,116, 92, 73, 73, 73, 28, 63,126,156, 21, 43, 86,212, 81,128, 50,  2, 37, 63,
-249,153, 54,  4,121, 49,109, 32,234,180,161,129,214, 95,254,242, 23,191, 72, 79, 70, 66, 66,130,115,222, 78,167,211,213, 83,121,
-207, 60,243,140,223,109,232, 82,172,227,115, 39, 53, 79,235, 41,  3, 25,140, 13, 25, 50,132, 53,107,214, 96,179,217,168,168,168,
-112,206,241,  1,148,148,148, 80, 81, 81,129, 36, 73, 65,205,205,201,243,123,238,203, 23,220,231,  1,253, 37, 61,215,231,220,212,
-150, 36,201,228, 55,119,238, 92, 54,109,218,196,248,241,227,121,229,149, 87,152, 61,123, 54, 26,141,134,240,240,112,191,236,184,
-186,211, 67,161,208,220,237, 53, 22,106,181,154,226,226,226,122,235,248,246,238,221, 75,105,105, 41, 41, 41, 41, 65, 45,221,  8,
- 37, 52,254, 18,149, 47,183,197,149, 70, 40, 72,175, 41, 54,150, 23, 95,124,209,239, 12, 12,129, 12, 68, 66, 57,239, 33,  8,  2,
-201,201,201, 36, 39, 39, 51, 98,196,  8, 10, 11, 11, 57,122,244, 40,130, 32, 32,138,162, 51,252,223, 95,242,123,226,137, 39,156,
-238, 46,247, 57, 62, 89,109, 60,249,228,147,126,147,134, 55,123,141,117,149,  6,163,242, 46,181,119,197,189, 14,123,114, 37,  6,
- 66,126,130, 32, 48,118,236, 88, 62,250,232, 35,194,194,194, 48,155,205,216,108, 54, 68, 81, 36, 46, 46,142,242,242,114,159,169,
-182, 60,245, 47,174, 65, 45, 59,119,238, 36, 61, 61,189, 78,127,226,171, 31,146,235,176,167,172, 47,141,157, 99,110,200,173,217,
- 24,119,167, 76,126,174, 11,214, 31,126,248, 97,231,251,170,170, 42,191,108,156, 62,125,186,222,226,244, 79, 62,249, 36,160,156,
-155,190,236, 53,  6,123,246,236,113,206,123,187,227,212,169, 83,156, 58, 21,124, 66,106, 79,193, 45, 33, 35,190, 80,147, 89, 67,
-246,154, 10,105, 54, 85,210,  3,104,217,178,101,200,  3, 36,146,146,146, 46,233,154, 38, 87,251,238, 42,107,254,252,249, 62,239,
-115, 40, 83,146, 93, 10,123,222, 20, 96, 48,  8,229, 28,159,167,123,235, 77,221,  7, 82,231,167, 78,157,202,209,163, 71,249,254,
-251,239, 49, 26,141,216,237,118, 82, 83, 83,153, 60,121,114, 64,245,105,219,182,109,117,212,164,235,121,247, 99, 95,245,204,117,
- 32, 39,147,232,130,  5, 11,  2, 34, 98, 87, 76,158, 60,185, 73,247, 43,137,137,137, 76,152, 48,193,239,235, 95,120,225,133,203,
-106,239, 82, 65,142,234,244, 68,120, 33,201,220, 18,234,206, 95,201,128,242,223, 13,229,249, 95,249,251, 19,202,239,144,149,125,
-176,216,186,117,107, 80,185, 55,253, 25,104,133, 98,128,115,169,  7, 73,141, 69,171, 86,173, 66,250, 60, 67,109,239,114,145, 95,
- 99, 72, 15, 64, 24,119,247, 60,  9,  5, 10, 66,128,  8,243, 33,140,186,110,202,141, 80,160, 64, 65,147,134,178,  3,187,130,144,
- 65, 33, 61,  5, 10, 20, 40,196,167, 64,129,  2,  5, 10, 20, 40,196,167, 64,129,  2,  5, 10, 20, 40,196,167, 64,129,  2,  5, 10,
- 20, 92, 22,212,137,234, 28, 63,184,125,208,134, 60, 37,185,245,102,207,215,250,161, 64,237,133,186,124,138, 61,197,222,127,187,
-189,175,110, 89, 18,180,189,241, 95,206,184,228,246,190, 24, 31,188,189, 91,191,170,111,111,220,160, 68,192,177,110,209,106,181,
-114,236,216, 49, 44, 22, 11, 26,141,134, 83,167, 78,113,103,108, 39,214,237,216,129,177,231, 85,244,235,215, 15,181, 90,237, 92,
-118,178,122, 75,241, 37,127, 30,114,249, 92, 33, 39, 74, 56,112,224,  0,237,218,181,163,172,172,140,118,237,218, 17, 17, 17,  1,
-224,181,124,222,236,157,252,229, 67, 50,  7, 23,241,241,142, 20, 52,173, 70, 17, 29,211,204,167,189, 80,255,222,203, 70,124,129,
-192,223,236,  8,129,166,234, 10, 38,181, 87,155,109,  7, 57,114,254, 12, 17, 97,225,116,141,140,229,200, 77,221,105, 74,104, 40,
- 95,160, 18,234,127,229,145,159,159,207,235,175,191,206,194,191, 58,142, 63,223,236, 72,255,228, 15,142,159, 58, 73,241,169, 83,
-228, 31, 58, 68,121,121, 57, 29, 59,118, 36, 58, 38,134,209, 35, 71,249,253,253,235,215,175, 15,168,188, 43, 87,174, 12,186,222,
-200,153,112,178,179,179, 27,119,211, 50,202,106,223, 72,128,  0,185,  9,193,219, 74,123, 29,146,238,173,109, 40,203, 96,231,172,
-198, 63,212, 73, 23,234,150,111,101, 11,191,254, 76, 16,  4,244,122, 61,223,126,251, 45,133,133,133,100,104,155,211,230,170,150,
-152,244, 70, 34, 12, 54,  6,206,126,144,155,198, 79, 97,245,123,217,124,181, 97,  3,163, 70,141,106, 18,117,216,110,183, 83, 88,
- 88, 72,175, 94,189, 72, 73, 73, 97,215,174, 93,152, 76, 38,186,116,233,210,224,246,111,222, 96,179,217,216,187, 99, 55,237,239,
-239,205,147, 55, 94,199,182,111, 95, 99,213,254,161,116,233, 62, 60, 40,123, 77, 94,241,  5, 66,120,254, 34,144,212, 72,129,146,
- 94,151, 93, 71,137, 47,173, 65, 64,194, 98, 87, 99, 45,171,225,212,133, 74,142, 47,217, 73,244,176,190,180,184,206,191, 40,195,
-157,223,103,210,205,185, 52, 73,205,103,223,138,108,254, 89, 98,218, 29,208, 45, 25,102,189,212, 56,194,146,211,179,133, 98,209,
-184, 59,137, 94,233, 13, 54,  1, 50, 50, 28, 11,135, 19, 18, 26,206,239, 89, 86,150, 94,251,140,227,155,204, 90,169,139,164, 39,
-213,146,222, 77,108,217,178,197, 47,226,235,217,235, 91, 78,159, 94,197,  7,255,186,120,174,224, 80, 62,  0, 15,252,233, 83, 42,
-107,102, 80, 93,225,223,  0,108,249,242,229,126,151, 57,216, 84, 79, 13,181,219,172,204, 76,178,131, 32, 82, 89, 25, 52,186, 19,
- 76,186,183,110, 18,232, 80, 16,159,203,125,242,103,183,  8, 25, 71,143, 30,101,227,138, 21,252, 61,125, 50,169, 83, 31, 38,172,
-117, 60,104, 84,128, 10, 68,  9, 68, 45,162, 89, 98,204,189,211, 40,122,115, 62, 63,252,240,  3,  3,  6, 12,184,226, 68,160, 82,
-169, 72, 77, 77,101,227,198,141,244,234,213,139, 27,111,188,145,179,103,207,178,119,239, 94,122,246,236, 25,112, 10, 74,181, 90,
-205,136,225, 35,121,101,209,151,204,185,111, 63,253, 70, 63, 68,191,190,121,204,126,235, 20, 41, 55,220,227,213,158, 92,207,252,
- 37, 72, 65, 16, 26, 63, 16,187,148,196, 87,167,225,164,175, 32, 39,195,255,252,110,238,228, 39,239, 12,224,186, 11,116,160,164,
-215,254,232, 57,174,143,136, 39,172,109, 44,118, 36, 34, 42, 34, 57, 91, 82,194,217,234, 74, 58,235,162, 57,180,110, 11, 18,208,
-210, 15,242,235,150, 12,135,142,170,144,164,112,236,130,142,219, 70, 90,153, 48,202,  8,136, 46, 35,199, 70,182,239, 70,146,147,
-107,230,121, 57,233,107,159,185,133, 44,216,  9, 44,152, 28, 16,  1,  6, 50,120,  9, 36,  3,134,188,227,178,103,  4,151, 15,240,
-240,134,102,188,182,226, 78,231,241,227, 25,255, 38, 37,189,170,209,207, 35, 63, 63,159, 69,139, 22,161, 82,169,120,252,229,139,
-187, 86,251,211, 73,244,236,245, 45,253,250,174,162, 95, 95,120,254,249,186,159,221,117, 23,140, 25,  3,176,132,127,175,240,143,
-252,212,106,181, 51,209,183,221,110,103,202,148, 41,206, 92,167,129,116,220,222,148,158,156, 62,206,245,247,101,101,  5, 71,122,
- 33, 67,218, 34,  0, 22, 47, 94,124,145,248,174, 95,  8,187, 30,191, 34,197,249,238,187,239,120,103,194, 52, 58, 15, 31,  9,106,
- 51,130, 86,133,160, 81, 33,168,181, 72,146,128,168,183, 33,217,237, 72, 22, 59, 15,222,251, 48, 15,255,237, 81,142,182,110,221,
-168,  5,253,161,192,142, 29, 59,104,219,182, 45,162, 40,178,105,211, 38, 14, 29, 58,196,200,145, 35,233,223,191, 63,219,183,111,
-231,186,235,174, 11,200,222,150, 13,255,230,246, 84,  3, 59,171,213,220,245,108, 13,131,122,191,193,140,153, 83,120,109, 78,  5,
-115, 94,251,136,164,222,119,249, 69,100,174,125,122, 86, 86,150,199,243,254,246, 69,238, 11,215,221, 17,146, 36,213,190, 72, 15,
- 32, 51, 55, 62, 96,242,115,221, 28, 83,254, 63, 51, 51,147,140,140,140,128, 72,175,211,161,211,116, 13,139, 34, 76,178, 17,241,
-218, 19,216, 12, 22,194, 31,127,137,216,176,112, 76, 90, 35,122,147,145,  8,  4,206,108,218, 70, 88,251,182,196,198,198,122,181,
-119,232, 40, 44,253, 68,  4, 12,181, 47, 24,124,131,138,  9,163,  4, 23,242,131,105,119,192,210, 79,  2,175,152,115,230,204, 33,
- 51, 51, 51,104,117, 38,147,158, 76,120, 50,233,185, 62,147,  5,  1,146,223,209,249, 71,125, 94,147, 60,215,191,  6,157,144,144,
- 87,111, 99,211,250,215,100,214, 94,227,223,118, 51, 23,246,183,229,153, 37,183, 34, 33,209, 63,225, 25,  6,166, 95,199,150,245,
-  7, 88,152,123, 23,228, 74, 60, 59,235, 31,180,235, 26,156,250,169, 57,145, 73, 98, 56, 24, 74, 15, 32, 73, 18, 49,173,122, 58,
- 73,239,157,119,222,241,250,183, 49,113,191,208,175,239, 42,231,241,246,237,208,183,239,197,207, 93, 51, 58,221, 57,121,  9,217,
-255,251, 52, 42,241, 42,191, 92,152,151,  2,153,153,153, 78,210,171, 75,134,153,100,103,123,111,115,170,201,229,117,134,125, 66,
-237, 63, 98,134,135,235,  4,217,179,232,120, 51,214,131,104, 86, 77, 41,119,122, 31,  1, 68,241, 62,102,206,156,233,252,124,230,
-204,153, 44, 94,188, 24, 85,151,251, 47,126,107,237,245,158,236,105,166,120, 46,159,205,230,225, 58, 63,202,103, 50,153,104,211,
-177, 19,136, 22, 84, 58, 16, 52,106,108,213,149,152, 10,143, 81,114,170,152,246,  3,134, 34,132,197, 33, 88, 45,160, 86,177,224,
-161,217,140, 92,250, 28,179,102,205, 10,249, 51,243,167, 35,151, 85,149,209,104, 36, 33, 33,129,252,252,124, 68, 81,228,216,177,
- 99, 44, 91,182,140,107,174,185,134,138,138,138,128, 84,188, 36, 73,116, 84,109,167,109,135,209, 84,108,218, 79,101,185,142,255,
- 91,109, 99,205,182, 15,121, 36, 35,  2,141, 65,  4, 26, 38,190,223,138, 27, 84,227, 47,225, 73,146,132, 48,210, 37,203,123,222,
-100,200,  8,108,180, 40,147,157,193,240, 17, 32, 96, 50,253,147,132,132, 60,114,115,115,  3,114,127,181, 58, 83, 70,171,214,225,
-132, 63,251, 48,246, 11,101,216, 78, 95, 64, 19,166, 37, 82, 80, 19, 37,168,137, 82,107, 72,208,134, 83, 94, 93,193,153,239,126,
- 32,118,194, 31,188,218,243, 68,102,155,127, 22,107,137, 15, 22, 61, 45, 32,  9, 32, 72,193,169,191,164,164, 36,230,204,153,227,
-116, 81,  6,227, 42,117, 37, 61,143,168, 37,191,198,204, 27,198, 79,187,248,188,203,151,230,  4,252, 27, 67,169,122,159, 94,114,
-139,147,240,  6, 92, 55,  9,128,  1,215, 77,226,135,  3, 14,  2,124,126,209,116,114,114,130,115,145,  8,  2,100, 62,246,139,179,
-177, 15, 26, 52,136,205,155, 55,251, 36, 61,128,155,  6,253, 92,231,248,134, 27,224,221,119,225,251,239,161, 75, 23, 72, 74,170,
-171, 24, 83,123,252,202,190,189,222,137,207, 93,213,  5,226,250,244, 71,209,187,147, 30,224,147,244,  0,178,115,114,156, 60,229,
-109, 80, 35,186,116,118, 57, 75,151, 34,  8,240,213,127,234,  7, 43,188,147,157, 35,115, 30,157, 58,117, 66,146, 36,222,120,227,
- 13,231,231,111,188,241,  6,139, 23, 47,102,221,186,117,117,178,250,211,128, 61, 89,173, 74,146,196,131, 15, 62,216, 96,249,108,
- 46,247,119,233,187,239, 34,  8,176,122,115,177,199, 78, 91, 19, 19,  3, 90, 53,118, 67,  5,191,174,217,192, 71, 43, 86,242,143,
-211,142,178,252,244,124, 51,186,220, 52,  6,115,209, 73, 14,236,221,201,254, 99,  5, 84,158, 61,203, 47,191,252,  2,180,  9, 73,
-135,220, 80,114,231,134, 72,234,244,233,211,204,155, 55,143,215, 94,123, 13,139,197,130, 90,173, 38, 38, 38,  6,189, 94,207, 79,
- 63,253,228,119,155,147,237, 85,156,218,202,243,255, 42,226,189,153,237, 40,211,135, 17,166, 81,209, 62, 62,156,179, 23, 44,100,
-190,106,163, 87,159, 52, 58,248,225, 97,144,  9,208,181, 46, 54,244,222, 31, 52, 52, 16,240,165,  4, 27, 28,212,249,106, 60,242,
-126, 91,117,144, 23,120, 34, 87,121,211, 89,131,225, 99, 39,233,193,197,185, 31,127, 55,165,213,108,220, 73,108, 89, 53, 98,152,
-  6,203,206,  3,152,127, 45,196,244,237,102, 48,154,  9,147, 36, 34, 81,163, 65,192, 44,218, 40, 51,155,248,199,250,213, 62,109,
- 46,122,218,161,230, 92,225, 56,150,155,189, 68,254, 17,137, 89, 47,  5, 63,154, 73, 74, 74,170, 35,239,253,221, 29,161,176,176,
-176,222, 94,121,117,212,158, 27,249, 53,133,221,166, 27,139,163,187,107,  0,161, 14,233,  1,220,254,172,150,215, 86,220,201,160,
-145,215,  1, 82,237,117,129,225,227,143, 63,230,241,151,  5,162, 91,246, 64,  2, 70, 79,120,136, 45, 91,182,248,245,183,162,234,
- 36,137,237,234, 39, 78,238,213,203, 65,122,247,220, 83,223, 77,122,213, 85,190, 51,230,171,213,106,212,106, 53, 83,166, 76,113,
-190,119,125,185,158,247, 23, 30,219,109, 48,131,  4,183,206, 81,126, 53,116, 78,240, 50, 54,116,181, 53,106,212, 40,143, 74,105,
-230,204,153,140, 28, 57,210,237,199,120,182,247,121, 78, 14,191,252,242,139,243,187, 93,239,153,251,189,149,207,121, 43, 95,152,
- 36,161,138,212, 97, 61,123,130,156,103,158, 97,153,190,130,242, 33,253,156,159,191,247,225, 50,158,155,253,  0, 41,179,238,228,
-239,251,191, 99, 69,249, 49, 70,222,114, 75, 80, 94,156, 61,123,246,144,153,153,201,238,221,187,221,  6, 36,217, 94,221,237,242,
-189,222,191,127, 63,155, 54,109,226,206, 59,239,100,201,146, 37,212,212,212, 56,183,139, 50,153, 76, 68, 71, 71, 51,121,242,100,
-  6, 14, 28,232,147,240,  4, 65, 96,255,143,171, 40, 88, 55,139, 89, 79, 45,228,171,103,219,241,107,177,134,202, 26, 53,162,  0,
-165, 53, 22,164,230,201, 60,246,215,151, 24,119,219,221,190,  7, 76,217,217,206,190, 46, 39, 39,199,231,251, 96, 33,147, 94, 72,
-146, 84,187, 18, 94, 40, 36,187, 39,200,164,231,174,  6, 93,175,111,232,199,104, 74, 43, 40,147,180,132,149,150, 17,254,249,119,
-  8, 26, 21,152, 44, 72,213,122,  4,155, 13, 45, 96,151, 68, 76,118, 27,213, 54, 11,136,190,231, 72,228,224,149, 69, 79, 55,220,
-252, 29,193, 47,141,191, 39, 57, 57, 57, 78,215,165, 63, 15,222,147,218,219, 49, 63,169, 65, 34,244,215,174,171, 59,211, 31,183,
-231,229,196,171,217,143,211, 47,254,153, 58,164, 39, 67, 62,223, 63,225,  0,175,102, 63, 30,208,111,253,232,163,143,248,207,127,
-254, 67,105,233,  8,154, 55,223, 64,116,139,238, 72,146,132, 74,165,242,107,130,189,168,  8,220,199, 21,146,  4, 55,222,232,120,
-127,248, 48,188,253,246,197,207,202,202, 64,163,241, 61, 29, 16,200, 60, 94,168,246, 49,115,109,107,254,222,195, 71, 31,125,180,
-142, 66,115, 39, 44,127, 33,111, 75, 37,207,237,185, 66, 86,125,157, 59,119,174,171,250, 60,224,254,196, 20, 10, 14, 28,164, 56,
- 62, 30,149, 74,197, 35,143, 60,194,155,111,190, 25,116,249,  6,155,227,144,196, 26, 30,120,249,105,122, 76,154, 68,206,203, 47,
-215,217, 28, 54,231,240, 47, 23, 61, 66,155, 55,179,126,253,122,142, 29, 59, 86,219, 87, 26,  2, 34, 61,217,187,144,147,147, 67,
- 86, 86, 22,169,169,169,236,222,189, 27, 73,146,120,232,161,135, 56, 89,221,240,128,230,212,169, 83,220,122,235,173,116,238,220,
-153, 53,107,214, 80, 89, 89,137,209,104,116,168,219, 90, 63,239,205, 55,223,236, 87,128,137, 36, 73, 20,230,239,225,185, 39,255,
- 76,243, 46,185,236,206,189,151,125, 39,  5,138,206,105, 64, 82, 97,182, 88, 41,147,154, 51,253,254,135, 67, 22,209, 25,138,253,
- 94, 27, 67,122, 94, 21, 95, 40, 32,179,122, 78, 78,142,139,106,241,124,227,210,210,210,234, 92,223, 16, 14,158, 42,226,231, 11,
-167, 57,112,172,144,115,199,142, 83,117,252, 20,213, 39,139,177, 25,140, 88,173, 54,170,237, 22, 12,118, 27,102,201,142, 29,  9,
- 41,128,155,236, 26,189,121,232,168,227,120,214, 75,178,210, 83,177,240,233,208,108, 88, 31,232,  8,177,207,220,194, 58,228, 38,
- 31,187,159,119, 39, 68,191,213,120,249, 82,167,123, 83,126, 93,105, 56, 84, 93,237,179, 56,239,216, 57,253,211,231,173, 60, 57,
-243, 89,  0,  6,166,  7, 54, 97,255,241,199, 31, 51,225,166,255, 80, 86,150, 78,252,182, 13,188,254,180,163,209,223,116,211, 77,
-126,185, 56,  1, 58,181,191,138,228,100,234,188, 14, 29,114,  4,180,  0,116,233, 34,177,120, 49, 36, 36, 56, 94, 87, 95, 13, 35,
-111,246,159,204, 92, 21,158,187, 90,145,207, 93,138,182,233, 15,214,175, 95,239,145,168,156, 94,147, 69,139,252, 94,154,145,158,
-158,238,140,228,244,132,199, 30,123,172,190,234,243,128,255, 28, 44,226,207,247, 79,103,231,199, 31,243,212, 83, 79, 53, 72,202,
-114,249, 54,108,216,224,181,211,189,233,218, 14,252,243,189,183, 73,187,235, 46, 94,121,229, 21,175,101,156, 57,115, 38, 35, 70,
-140,  8,138,  8,222,121,231, 29,  4, 65, 32, 39, 39,  7, 73,146,156,131, 46, 89,237,165,166,166,122,253,123,171,213,202,234,213,
-171, 57,120,240, 32,135, 15, 31, 70,175,215, 99,181, 90,  1,176, 88, 44,220,118,219,109,  1,137, 23,179,217,204,206, 85,119, 97,
- 42,120,139,117,155,142,114,236,140,154, 42,189, 10,187,  4,197,250,  8,166,207,122, 58, 32,123,153,153,153,206,165, 51, 89, 89,
- 89,206, 65, 86,102,102, 38,153,153,153, 72,146,228,124,127,165,160,106,168, 65,184,187, 52,220, 93,106,129, 66,158, 35,136,140,
-172, 59,171, 44,135,192,123,155, 67,112,133, 54, 76,141, 93,130, 83,250, 10,138, 42,203, 40,169, 42,167,210,100,162,220, 98,164,
-196,108,228,140,201, 64,177,169,134, 50,171,153,114,209,138,197,195,252, 70,189,145,222, 13, 30,200,192,101,222,239,129, 41,209,
- 72,132, 33, 17, 22,240,239, 46, 44, 44,172,247,128,131,117, 71, 54,232,226, 12,146,244,252, 13, 94,185, 18,216,154,119,192,249,
-190, 91,171,155,185,253, 89,109,157,215,194, 21,119, 33, 32,248,221, 16,111, 29,180,137,123,103, 57, 72, 79, 16,  4,190,216, 58,
- 20,192,239, 53,123, 50, 82,186,117,117, 35, 84, 88,178,  4,142, 28,113, 40,191,231,159,151,156,110, 70, 73,146,136,143,143,247,
- 91,241,217,237,118,236,118,187,115,142, 79, 62,118, 61,119,165, 32,171, 47, 79,202,233,209, 71, 31, 69, 16,  4,159, 10,205,117,
-196,239,141, 68,189,125,230,138,205,186, 10,  4, 85, 52,255,251,215,151,136, 94,157,199,180,105,211,234,108,121,148,217,165, 59,
-143,166, 13, 32, 50, 50,146,155,110,186,137,121,243,230,145,151,151,215,224,142,227,239, 21, 23,112,230,186,107, 73, 76, 76, 68,
- 20, 69,175, 68,234,237, 51, 95,117,209, 53,242,241,161,135, 30,114, 18,132,235,255,222,238,221, 85, 87, 93, 69, 81, 81, 17,155,
- 55,111,230,234,171,175, 70,163,209, 56,  7, 79,253,250,245, 11, 88,125, 37,119,235,205,210,111,227,216,183,230, 89,  6,247,191,
-134,168,112, 21, 81,145,118, 34,116,102,254,112,107,224,211, 90, 57, 57, 57,117,200, 60,212,174,206,198,170, 61,175,138,207, 19,
-  1, 74,235, 51,  2,118,143,184, 34, 35, 35,163, 14,217,201,255,187,207, 97,121,195, 53,  3,  6, 96,139,142,164, 92,178,115, 80,
- 95,206, 47,149,165, 28,168,186,192,129,170, 50, 14,234,203, 56, 98, 40,167,212,108,162,198,102,227,180, 65,239,252, 78,111,152,
- 48, 74, 96,209,211,106, 22, 61,173, 70, 66,141, 36,168,152,118,135,192,131,119,132,113,255,148,150, 36, 39,183, 70, 68, 11,  4,
- 38,209, 93,151, 32,184,159,243, 23,174,127, 43,147, 91, 67, 36,151,155,155,235,115,215,106, 79, 74, 59, 47, 47,143,185, 59,231,
- 58,201, 80, 86,128, 87, 10,179, 39,255,155, 31,203, 94,226,135,  3, 23, 35, 29, 63,125,222, 74,191,248,103,156,199, 47, 77, 95,
- 77,182, 31,193, 45,153,153,153,188,254, 12,220, 55,107,  4,113,219,242, 24,246,234, 16, 84, 99, 97,227,198,141, 65,213,225,142,
- 29, 59,214, 57, 30, 62, 28,226,226, 32, 41,  9,254,224, 33,134,170,207, 13, 55,248,165,248, 26, 82,122,242,249, 64, 21,159,167,
-249, 56, 87,100,101,  5, 62,218, 94,191,126,189,199, 29,200, 23, 47, 94, 28,240, 66,124,215,193,129,251, 57,209,143,193, 42,128,
- 69, 16, 16, 13,102,180,109, 58,146,249,226,139,220, 23, 21, 71,220,198, 31, 47,186, 66,239,190,143,231, 94,251, 95, 14, 47,250,
- 55,127,235, 49,156,201,241,157, 89,255,229,151, 13, 14, 60,111,203,202,228,186,238,221,157,193, 58,174,  3, 15,215, 65,138,251,
- 57,111, 46,205,172,172, 44,103,192,138, 60,159,231, 74,110,169,169,169,206, 96,144,135, 30,122,200,167,218,147, 36,  9,173, 86,
-203,109,183,221, 70,101,101, 37,229,229,229, 68, 68, 68,208,178,101, 75,226,226,226,  8, 15, 15, 15,248, 57,232,116, 58, 38,102,
-189,201,178,159,251,112,252,100, 21,173, 99,213,244,239, 42,208,179,179, 68, 84,179,102,252, 30,225,211,119, 39,119, 14,117, 26,
- 80, 16,138, 79, 94,187,145,158,158, 78, 94, 94, 30,  9,  9,185,117,236,251,187,142,175,166,215,213, 24, 10, 10, 48,216,204, 84,
-233, 13, 28,181, 90,209,138, 14,  7,106,165,213,132, 40, 73, 72,192,154,115,199,208,219,172,126,186, 21,  5,102,189, 84,183, 34,
- 59,230,251, 68,236,152,249,245, 72, 53,255, 92, 30,216,218, 49, 87,130, 75, 74, 74,170,167,250,252, 37,168,164,164, 36, 88, 48,
-217,235, 61,151,137, 48,144,249,189,228,185,201,117,  6, 28,185,185,185,206, 29,172,243,242,242,224, 10,174, 49,239, 50,162, 10,
- 86, 72, 78,213, 39,207,245, 61, 57,243, 89,126, 56,112, 29,175,173,184,139,191,190, 61,214,239,223,122,239,172,116,151,197,245,
- 27,  1, 71, 80,149, 36,229,214,214,107,137,220, 92,255,150, 89, 76,186,125, 34,235,215,125, 11, 56, 92,156,195,134,  9,200, 77,
- 67,146, 36, 86,175,134,113,227, 28,199,125,251,247,163,231,117,190,215,241,185,119,162,141, 93,187,231,122, 95, 50, 51, 51, 81,
-169, 84,245,200, 36, 59, 59, 39,224,197,235,242,124,150,235, 92,159,172,  0,253, 85,123, 80, 55,144,205, 61, 26,211,223, 32, 55,
-185, 79,178, 85, 87,163,109,145,128, 58, 50,154,235, 38, 78,226,239,163, 70,242, 87,121,249, 65,239,235,177, 27, 77,104,155,183,
-166, 71,191,161,116,106,223,153, 55,127,253,145,238,221,187,115,230,231, 11,245,  7,  3,153,153,206,193,237,195, 89, 89,206, 37,
- 16, 54,183,231,161,209,168, 65,170,187,140, 98,172,  7,245,145,154,154,234,116,101,202,202,199,147, 43, 51, 53, 53,213, 47,210,
-147,127,115, 92, 92, 28,253,250,245,227,208,161, 67,236,218,181, 11,187,221, 78, 84, 84, 20,  6,131, 33,224,186, 34,  8,  2,173,
- 91,183,230,214, 91,111,101,219,150,159, 88,156,187,158,102, 66, 24, 93, 91,155, 57,114, 33,138, 65, 93,173,117, 72,210,215,252,
-156, 32,  8,117,250, 58,127, 34, 60, 47,183,218,243,139,248,220, 27, 83,102,102,102,192, 75, 25,220, 73, 77,238, 96,221,237,251,
- 75,126,237, 90,181,102,191,233, 56,149, 42,145,179,166, 26,176, 90,177, 75, 18,  2,240,107, 77,  5,197,134, 42, 36, 73, 34, 35,
- 35,195, 79,226,147,152,118,135,192,210, 79, 46,142, 62, 15, 29,133,110,201, 54,212,232, 27, 69,122,174, 15, 57, 88,105,239, 88,
- 10, 49, 25,216, 81,135,236,250,204, 45,116,146, 94,159, 62,125,  2, 82,123,238, 42,219,253, 56, 47, 47,207,111, 91,142,200,220,
-114, 70,142, 92,122,145,172, 27,184, 38, 51, 51,207,175,165, 43, 47, 79, 95,205,211,111,143,231,199, 21, 18,253, 19, 14, 56,215,
-241,109, 43,127, 17,  1,129,151,166,127,  5,156,246,171,124,  9,  9,121,  8,130,192,132,  9, 19,120,247,221, 42, 39, 81,  9, 46,
- 33,126,114,246, 25, 25, 95,109,238,223,160,189,233,143,252,133,183,223,124,139,225,195, 29, 74,207, 21, 99,198,192,223,254,  6,
-235,214,247, 99,184,159, 75,116,100, 55,213,164, 73,147, 88,190,124,185,215,  5,237,193,144,160,188,128,221,125,142, 38, 59, 39,
-199,175,245,124,238,245, 98,241,226,197, 78,226,123,253,245,215,  3, 86,123,238, 29,101,176,  8, 15, 15,231,236,137,227,116, 78,
-238,130,104, 51, 35,216,236,104, 98,154, 17,115,125, 31,162,123,223,128,168,183, 97, 55,152,145,108,118,176,139,204,121,231, 53,
-166,220, 53,165, 65, 85,100,251, 36,222,175,239,245,116,221,173, 95,121,190,246,161,135, 30, 34, 59, 59,219,217,  7, 60,252,240,
-195, 30,175,243,151,244,  0,186,118,237,202, 91,111,189, 69, 73, 73,  9, 35, 71,142,100,199,142, 29, 24, 12,  6, 82, 83, 83,105,
-217,178,101,192,247,190, 95,223,190,100,221,159,197,177, 83,199,248,227,253, 89,108, 95,255, 62,103,170,203,232, 51,100, 36,173,
-219,167,120, 84,137,222, 20,164, 43, 87, 52,180,104, 61,208,  5,236,151, 93,241,121, 27, 77,  6, 67,122,114, 39, 43,175,233, 11,
-134,252,204, 67,210, 72, 33,141,226,156,101, 16, 17, 78,185,100,195, 98,179, 33, 74, 34,205, 99, 99, 57,165,175, 12, 40,227,136,
-167,101, 10, 23,231,248,  2, 27,125,123,114,101, 54, 54,173,152,188, 14, 80, 38, 55,217,125,235, 78,122,129,124,135,167,251,223,
- 88,184, 39, 39,168,251,108,  3,147,144,205,123, 22,147,157,147, 77, 65, 94, 51, 22,230,222,201,143, 43, 64, 64, 96,246,228,127,
- 59, 20,161,159,164, 39,215, 37,  7,177, 85,213, 54, 78,240,212,223, 46, 91,184,  1,128,168, 14,217, 64,195, 73,115,123, 94,215,
-157,156,156, 28, 90,180,250, 22,248,180, 78, 71, 82, 93,157, 66,239,180,238,180,110, 63, 18,141,228, 95,167,238, 75,241,185,206,
-239,  5, 19,213,153,157,157, 77, 86, 86, 86,157,  8, 69, 87,229, 23,  8, 92,231,250,228, 14, 48, 16,181, 23, 74, 12, 31, 62,156,
-233, 43,150,242,247,234, 10, 82,135, 12, 66,213, 58,222, 81, 38,171,228, 72, 49,134, 22, 65,173, 65,  8, 83,243,110,246, 34,154,
-141,232, 67,114,114,242,101, 93,100, 45,187, 50,223,121,231, 29,178,178,178,232,213,171, 87,163,236, 29, 61,122,148, 13, 27, 54,
-160, 86,171, 25, 60,120, 48, 42,149,202,227,188,158,221,110, 71, 16,  4,143,207,220, 21,187,118,237,226,131,101,239, 19,166,214,
- 49,233,206, 73,168, 84, 42,  6,141,121,160, 62,217,219,108, 78,123,161,136,202,108,242,174,206,119,103,134,186,  0,  0, 32,  0,
- 73, 68, 65, 84,198,194, 19,137,121,235,116,  3, 33,214, 97,153,247, 81,120,180,144, 93,223,172, 67,111,182, 96,179,219, 73,190,
-241,122, 70,119,184, 51, 32, 18,  8,101,178,104,153,164, 10, 11, 11,157,202,118,193,130,  5,  1, 17,113, 67,118,229,165, 16,125,
-250,244,169, 67,170,129,150, 95, 46, 95,168,144,153, 25,239,243, 62,102,102,230,  5,101, 59, 37,189,138,156,116, 87,187,193,165,
- 43,115,144,154,192,189,179, 46, 38,218,149,219,239,178,133, 27,136,234,144, 77, 84,135,140,128,108,158, 59, 51,138,165, 75, 71,
- 33,170, 78, 18,219,172, 18,192,153,162, 44,144,134, 21,170, 37, 10,254,144, 95, 40,224, 58,215,215, 24,181,231,143,130,240,134,
-228,228,100,218, 60,242,  8,139,191,253,150,194, 23, 62, 39, 67,219,156,184,218,164,210, 70,131,141, 71,103, 63,133, 58, 50,129,
- 53,239,231,176,183,133,192,168, 70,228,213,180,219,109,  4, 58,199, 31,140, 43,211,215,125, 42, 40, 40, 64,146, 36,186,117,235,
- 70,105,105, 41, 26,141,  6,155,205, 70,243,230,205,157,131, 47,189, 94, 79, 88,152, 35, 16,207, 27,241, 73,146,196, 79, 63,253,
-132,104, 19, 24, 48,176, 23,167, 78,157, 34, 44, 44, 12,139,197, 66,251,246,237,157,215, 84, 86, 86, 18, 30, 30,142, 32,  8,232,
-116, 58,191,196,142, 76,142,238,239, 27,227,234, 12,149,155,243,178, 16,223, 37, 39,154,228, 36,146,102, 60,212,164, 70, 19, 73,
- 73, 73, 36, 37, 37, 93,146,100,204,174, 11,225, 27, 91,190, 80,193,159,223,121,165, 19, 83, 59, 84, 28,120,242, 24,  6, 74,120,
-238, 80,137, 87, 81, 93,113, 85, 80,127, 59,114,228, 72,191, 66,247, 67, 69,126,161,192,177, 99,199,  2,154,139,243,134,198,216,
-145, 36,137,200,200, 72, 38, 76,152,224,220, 70,168,200,101, 27,161,173, 27,214, 59,183, 17, 26,209,111,132, 79,123,239,150,191,
-194,131,241, 79,213,255,192,207,221, 29,124,145, 95, 40,112,195, 13, 55, 56,215,234,137,162,136,197, 98,  1,160,164,164,  4,128,
-232,232,104,  0,231,121,173, 86,235,245,254,141, 27, 55,206,121,173, 40,138,152, 76, 38,  0,138,138,138,  0,156, 81,201,242,249,
-176,176, 48,175,138,239,183,178,227,140, 48,238,238,121,191,253, 61, 38, 20, 40, 80,160, 64,129,  2,127,  7,171,202, 45, 80,160,
- 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5,191,125,104,148, 91,160, 32, 24,244, 14,
-114, 59, 16, 87,236, 14, 65,116,150,  2,  5, 10, 20, 52,138,248,198, 15,110, 31,180,161,175, 54,215, 95,247,212,212,237, 93,223,
- 62,159,112,225, 87, 52,170,211,168, 48, 32, 32, 32,161, 70,172,205,201, 41, 72, 18,146, 32, 57,211,149,169,177,240,196, 75,142,
- 60,127,158, 66,106,255,219,238, 95,251, 70, 68,112,157,242, 16,206,252,223,118,255, 20,123,138, 61,197, 94,195,246, 20,197,119,
-137,240,247,249, 43,120,240,142, 48,174, 73,182,114,232,168,228, 92,180,190,232,105, 21,179, 94,170,155,226,105,225, 51, 42,  4,
-169,126,134,151,  6, 33, 73, 88,206, 30,167,210, 34, 58,210,168,  9, 42,226, 90,183, 11, 56,151,158, 59, 98, 98, 98,168,174,174,
-198,116,161,128,240, 22, 41,202,208,173,  9,224,215,252, 93, 88, 76,  6,122,245, 26,212, 40, 59,222,214, 54,  5, 19, 38, 30,106,
-123, 50, 58,119,238,236, 92,130, 33,111,205,211, 24,184, 39,168, 15,213, 82,  9,  5, 10,  2, 34,190,247, 63,120,207,111,  3,247,
-222,115,191,207,107, 66,109, 47,148,120,247, 19, 11,139,158,118,223,133,189, 46,233, 77,187, 67, 64,144, 36, 64,162, 91,178, 35,
-143,231,119, 39,124, 24,182, 89, 24,189,231, 31,252,116,193, 78,177, 81,228,188, 69,224, 68, 88, 28,218,228, 52,174, 29, 48,130,
-240,136,136,128,203,186,122,227, 33,190,252,135,  6,204, 22,192,  6,186,131,252,240,131,145, 29,  7, 98,  8,143,109, 28,  9,154,
-206, 23, 16,222, 74, 33,210, 64,176,111,111, 30,157,218,155,233,145, 44, 33,138,118, 42, 75, 62,161,248,156,138, 26,115, 91,250,
-164, 13, 14,202,102,101,201,255,162, 86, 95, 92,164,127,100,241, 92, 82,255,110,  9,186,140,238,164,180,106,213, 42,102,207,158,
-221,168,223, 61,114,228, 72,102,206,156,137, 32,  8,188,254,250,235, 33, 33, 42,103, 34,124, 73, 89, 93,117,185,225,239,206, 56,
-242,128,126,233,187,239,250, 28,108,185,174,245,147,115,124,186,230,250,148,159,179,235, 78, 21,255,181,138, 79,197,229, 77,133,
-179,240,105, 29,  2,230, 90,114,163,118,179, 89,  0, 53,131,111, 16,217,252,179, 84,123, 94,170,179, 87, 31,192, 56, 31, 27, 17,
-171, 17,233,220, 34,154,106, 67,  9,106,155, 29,193, 38, 97,175, 54,114,118,219, 87,172,219,187,141,193,247, 62, 70, 66,109,182,
-  5,127,240,225,247,167, 17, 58,221,  2,172,  1,149, 10,180,145,160,214, 48, 96,104, 52, 61,174, 61,203,191, 62, 63, 65,120,100,
-199,192,200,174,188,128, 62, 93,171, 25,208, 55,  2,204, 54,224, 32,  3, 22,223, 64,139, 11, 59, 25,119, 83,183,223,101, 35,223,
-179, 59, 15,157,166, 12,141,202,130,201,100,167, 82, 31,193,160,155,  2,219,122,229,224,161, 93,196,132,151, 50,124,160,142, 78,
- 29,147,105,214, 44, 22,171,205, 70, 73,201,  5, 90, 23,157,228,240,209, 66,126,216, 90,198,128,129,183,  6, 92, 62,181,186, 10,
-251,145,151, 66,250,155, 67,153,158, 78,222, 68,214, 53, 87,167, 63,155,198,254,214,145,151,151,199,170, 85,171,234,231, 59,189,
-  2,157,118, 45,157,212, 78,205,132,192, 82,209,167,  8,219, 31,112,229,182,218,172, 70,181, 89,186, 93,240, 64,182,158, 27,167,
-188,229,117,  0,243,205, 55,223, 56,143, 71,143, 30,205,218,181,107,189, 30,  7, 52,248,119,139, 45,  8, 54,139,139, 87,226,219,
-186,101, 59,  3,  7,245,189,108,143, 82, 12,224, 49,  6,179,131,116,189,239, 19, 84, 28, 62,226, 32,188,110,201,112,232,168, 10,
- 73, 10,199, 46,232,184,109,164,149,  9,163,140, 46,234, 47,240, 42,118,252,212,105, 86,159,133, 83,  6,176, 73, 16,173,  2,141,
- 86, 77, 88, 77,  9, 27,151,191,203,109, 89, 79,250,204,165,  7,240,201,103,223, 33,164,102, 58,211, 16, 97,182,128, 40,130,198,
- 14, 42, 21, 49,241,  9, 76, 28,122,158, 85,235,204,132,199,251,167,218, 76,250, 19,252,233,150, 10, 98, 90,183,  1,187,232, 80,
-144, 86, 27, 17,173, 59, 83,153,144,200,135,155, 55,114,247,224,118, 77,182, 35,218,189,123, 55,189,123,247,246,251,250, 95, 14,
-238, 66, 50, 31,167, 99, 91, 19,177,205,116,168, 84,145, 24,141, 54, 74,203,140,108,202, 91, 76,120,179,235,233,123,227, 77,126,
-217, 10, 87,151,144,210, 89,226,186,235,174,225,204,217,114,118,238,222, 69, 77,141,158,216,216, 24,146,146, 58,162, 82,107,177,
-219,139,216,189,103, 11,189, 83,  7,241,123,194,200,145, 35,235,108,208, 58,115,230, 76, 94,127,253,117,222,245,162,  2,  2,234,
-132,155,168,226,147, 51, 15,173, 92,185, 50,100, 59,145,  7, 11, 87, 85,149,147,147, 77, 99,139,162,234, 56,209,105,207,190, 60,
-206, 37,143,173,212,164,158,223,106, 15,  1,117,193,166, 49,243,169,248,182,110,217, 14,208,104,  2,220,242,200, 97,175,159, 15,
-122,179, 75,208, 55, 89,150,207,129, 18,224, 19, 47, 26,  1,135,235,242,208, 81, 88,250,137,  8, 24,106, 95, 48,248,  6, 21, 19,
- 70,  9,184,186, 62, 29, 10, 80,240,233,234,180,170,180,100,183,155,200,233, 56, 17, 84,106, 98, 48,147, 82,248, 29, 69,101,  6,
- 42, 84,106, 42, 79, 31,227,228,201,227,116,236,232, 61,117,216,207, 59,119,114, 33,238,  6, 90,105,181,104,195,180,220,182,244,
- 14,204,159,220,238,252,252,190,135,250, 51,101,124, 75, 18,219,132,147,220,162,156, 98, 63,114,106,155, 74, 11,152, 56,172,146,
-152,248,  4, 48,153, 29, 36,106,179,131,213, 70,152, 46, 12,149,  0,150, 46, 67,248,228,139, 28,238,184,117,120,147, 36, 61,215,
- 13, 46,253,129, 89, 95, 76,231, 68, 35, 45,154, 71,209, 62,177, 13,145, 81,145,156, 56, 81,140,221, 46,146,216, 46,134,  3,191,
-254,200,158,136, 40, 82,123,120,223, 27,114,255,254, 45,244, 76,177,208,161, 67,103, 14,254,122,130,157, 59,127,165,228, 66, 53,
-146,  4,241,241, 17, 24, 12, 53,244,238,125, 29, 21, 21,149, 20,239,220,205,222,253, 17,244,234,145,198,239,  1,178,218,115,221,
- 40,246,141, 55,222, 96,241,226,197,  1,171,190,105,211,166,121,220,230, 70, 16,132, 58,174,183, 80,184, 81, 95,120,225,  5,198,
-143, 31,223,232,180, 97,233,233,233,  8,130,192,138, 21, 43,252, 26,176,102,101,101,121, 84,132,123,246,236,113, 38,173,246, 52,
-120,203,204,204,108,176, 35,119,205,183,234,216,201, 60,171, 81,170,211,221,158,122, 74,  5,226,242,184, 38, 93, 15, 93,239,205,
-234, 32,163,203,253, 94,199,183,117,203,118, 39,  9,  6,  3,111,196, 22, 12,233,201,216,180,105, 19,197,197,197, 20, 23, 23, 55,
-106,139,139,186,115,124, 14,108,254, 89,116,142,122, 22, 61, 45,176,240, 25,129,110,201,  2, 18, 90,223, 55, 86,173,161, 75,223,
- 81, 12, 25, 54,154, 33, 67, 70,210,251,166, 49, 68,223,242, 40, 67,155, 75,128,136, 70,128, 95,246,251,190,159, 71,142, 30, 35,
-166,121,123,180, 97, 26,194,180,142,100,198,186, 59, 62,117,190,126,217, 87,  8, 38, 19,152, 76,164,118,168,244,235,183, 38,199,
-151,147,216, 58, 28,140, 38, 42,206, 87,177,236,163,189,116,189,225,109,222, 93,186, 29,171,190, 18,109,152, 22,173, 86,203,133,
- 22, 55,240,243, 37,216,197, 33, 20,164, 23,  8,126, 57,184,139,112,205, 25, 34, 34,180,132,235,194,232,220,185, 19,125,110,188,
-145,248,248,120, 52, 26, 53, 97, 97,106, 18,226,195, 41, 62,121,220,247, 72, 81, 42, 38, 38, 58,  2,131,209,198, 47,191, 28,230,
-244,217, 74,138, 78, 85, 81, 80,104,225,204,217,106, 74, 74, 42, 56, 92, 80,200,213,201,201, 36,182,107, 70,105, 73,209,239, 74,
-237,121,218,129,253,177,199, 30, 11, 42,223,168,156,233,223,149,252,124,109,160, 27,172,138,124,231,157,255,103,239,205,227,163,
-170,238,255,255,231,157, 45,  9,217, 72, 72,  8, 75,216, 18,  8, 32,178, 47, 42, 59, 37,  8,  2,210,170,  4, 80,168,181,182, 18,
- 92,250, 17,180,136,138,254,218,126, 93, 42, 86,  5,173, 21,193,218,186, 16, 80,130, 90,  1,105, 21,144, 85, 64, 32, 34, 32,  8,
- 24,  2,  4, 18,  8, 89, 38,251,236,115,127,127, 12,119,152, 76, 38, 51,115,103, 38, 36,193,251,122, 48,100,230,206,189,239,185,
-247,220,123,206,235,188,222,239,115,222,103,185,115, 65,216, 64,177,117,235, 86,178,179,179,157,171,163,248,163,110,164,197,103,
-221, 73, 79,234,168,187,159,147,175,115,148,126, 83, 90,185, 61, 84, 10,123,237,130, 72, 31,142, 85,201,245,233, 27,147, 38, 77,
-226,182,219,110,115,186, 49,165,247,210,103,233,189, 28, 55,103, 67,202,110,234,156,103,  3,114,119,202,142,241,133, 74,  1,134,
- 18, 63,253,228, 80,147,  5,  5,  5,116,236,216, 49,  0,215,167,192,107,139,197, 43,170,143, 58,234,206,113,203, 29,190,238,147,
-185,210,247,102,159, 49,190,122,191, 32,168, 16, 99,218,210,179, 77, 56, 66,190, 17, 27, 96, 48, 84,249, 60,238, 66,126, 62,237,
-251,168,208,168, 53,168,213, 90,108, 54, 75,157,239,207,159,174,  2,131, 17, 16,137, 17,253, 27,  4, 49,160,125,  5, 24, 84,128,
-192,233, 83,197,188,252,175,115,140,190,227, 62, 42, 59,244, 70,119,241, 18,218,216,120, 68,187,141,232,196,100,114,191,255,146,
-161,131,175,189, 98,241,228,202,116, 37, 61, 57, 21, 95, 95,118,153,132,104,  1,171,205,142,217, 98,165,184,164, 12,173, 46, 28,
-147,201,130,197,106,195,106,181, 99,181,137,148,235, 75,124,218,210,105,107,  8,143, 72,166,180,180,130,202,170, 90,202,244,  6,
- 98,218,244,103,120,191,126,236,255,230,127,116, 48, 91,169,168,172,160,103,207, 84,194,116, 26,106,170,202,174, 27,181, 39,138,
-162, 51,182,231,138,101,203,150,  5, 20,235,155, 63,127,126, 29,245,232,254,157,191,110, 51,215,181, 20,231,205,139,103,252,248,
-186,  9,169, 11, 10, 10,  0, 88,191,126, 61, 37, 37, 37,  1, 37, 76,223,178,101,139,147,244,164,227, 63,249,228, 19,159,164,226,
-238,153, 88,190,124,185,115, 64,135,180, 94,157,107, 71,238,237,183,223,246, 73,250,210, 74, 15, 15, 62,248,160, 83, 57,122, 43,
- 43, 95,237, 97, 70, 70,  6,211,111,217,194,199,192,204,165, 53,168,102,150,123,181, 55,108,166,247,178,114,143,225,249,138,249,
- 53,  5,174,105,230, 22, 79,202, 46, 24,181, 87, 81, 81, 81,143,  0,151, 45, 91, 38, 75,249, 61, 48, 75, 13, 56,  6,175,172,252,
-200,225,246,148, 94, 87,  7,187, 56,200,177, 87,170,140, 94,168, 40, 18,109, 40, 37,198, 80, 66, 68, 77, 41,145, 53,197,244, 44,
-202,225, 80,169,145,114,187,128, 21,136,109,231,207,188, 23, 17,155,169, 10,181, 90,133, 90, 83,247,118,245,216, 62,151,201,227,
-186, 57, 21, 95, 94, 97,152, 95,167, 22, 35,154,161,214,  8,  6, 35, 23,126, 42, 34,169, 99, 39,122,245,238, 13, 64,107,141, 21,
-141, 70,115,133,104, 85, 92,200,191,246,138,229,208,161, 67,245,122,195,210, 54,201, 61, 35,199,109,101,179, 65, 77,173,133,154,
- 26, 51,149,149, 38,138,138,244, 20, 22,150, 80, 85,101,162,186,218, 66,117,181,153,154, 26, 11, 21,229,190, 21,179,201,100,197,
-104,180, 97,177,152,137,142,214,209,169, 99, 12,173, 34, 29,189,229,148,212,174, 36,119,136, 33, 54, 38, 28, 81,180, 97,177,218,
- 49,153,106,174, 27,181,247,216, 99,143,121, 37, 49, 57,170,207,117,105, 35, 79, 88,186,116,169,172,197,144,235,186,255, 50,235,
-188, 36, 34, 41, 40, 40, 32, 59, 59, 91,182,103,104,235,214,173,172, 91,183,174, 14,233,165,167,167, 51,125,250,116,159,  4, 37,
-  8,130,243, 57,150,212,159,228, 94,148, 58,111,174,223,139,162, 40, 99,249, 40,177,142,106,243, 68,152,254, 40,231,132,132,  4,
-  4, 23, 61, 23,172,189,198,198,198, 85,207, 57, 95,129, 66,182,226,107, 78, 74,239,106,195,102, 11,104, 77,179,  7,102,134,209,
- 59,213,204,137,211, 87,183, 61,246,130,131,244,  0, 23,  5, 40,185, 59,213,188,186, 88,192, 70, 20, 59,125,196,248,236, 86, 11,
-105,123, 86, 16, 38,216, 41, 54,171,192,102,229,252,197,  2,254, 89,160, 66,139, 72,133, 90,224,166,129,190,135,188, 39, 39,119,
-100,231,  7, 11,153,252,228,103,168,194,195,137,137,137,229,131, 62,143,130,104,130,145, 29, 28,195,175, 76, 70,176,195,129,227,
-209,208,221,247,117,231, 93, 10,163,127,130, 17, 16,152, 56, 52,137,132,210,159,200, 49, 22,146, 26, 95,202,238,228, 69,104,213,
- 54,212,106, 21, 54, 99, 21,112,237,131,248,146,210,147,122,179,174, 67,158, 27,138,139,120, 67, 92,124, 34,133,103,126, 32, 76,
-167,198,108,177, 99, 52, 93,224,252,133, 82,202,244,149,148,149,213, 82, 90,102,160,180,204, 64,235,248,174, 62,109, 21,149,136,
- 92, 42, 42,161,119,239, 84,202,245,122,180, 26, 21,149, 85, 23,168, 41,183,115, 67,247, 26,146, 18, 19,105,213,170, 21, 97, 97,
- 17, 92,188, 84,133,160,142,227,122, 65, 67,234, 12,174,198,250,252,133,164, 12, 31,125,244,209,122, 42, 82,114,167,  6, 58, 82,
-116,198,140, 25,117, 20,139,180, 46,166, 32,  8,220,117,215, 93, 76,152, 48,193,239,  9,211,158,148,158,  4,119,101, 89,207,179,
- 50, 96,128, 83,245, 73,202, 79, 16,  4,103,167, 77,250,126,249,242,229,172, 88,177,194,169,246,  6, 12, 24,192,121, 47,231,183,
-124,249,114, 30,122,232, 65,231, 34,194, 14,  2, 21,157,212,245,246,219,111, 59,175,223, 31, 18, 93,190,124, 57,255, 24, 23,199,
-204,101,181, 30,221,158, 51,151,213, 58,237,221, 63, 78,219,164,207,160, 59,217,109, 92,245, 92,227,186, 58, 67, 69,120, 35,223,
-232,225, 28,232, 18,140,218,115,133, 59,233, 77,154, 52,201,175,149,220,123,117,119,196,240,122,165,194,168,161,176,235, 64,221,
-239, 93,221,158,191,159, 25,133,136, 13, 17,  1,149,232, 91, 40,139,118, 27,159, 31,205,167,212, 34, 98,180, 66,141, 13,202,172,
- 42, 68, 68, 74, 12, 34, 61, 39,221, 78, 76, 84,180,111, 18, 24, 52,144, 11, 23, 46, 80,120,108, 27, 93,  7, 77, 66,167, 11,115,
-140,234, 84,169,192,102,118,118,211,214,239, 52, 99,239, 62,213,175,242, 58,112, 74, 71,255,212, 42, 16, 32, 92, 37, 48,226,182,
- 20, 70, 88, 14,131, 16,198,199, 69, 90,204,102, 59, 54, 99, 53,251,254,185,144,209, 55,245,111,146,  7, 92, 90,181,122,197,138,
- 21,206, 65, 16,114,149,158,132,254,125,  7,243,227, 15, 57,136,  5,149,212, 26, 44,232,195,140,136,232, 49, 26,173, 84, 86,154,
-184, 92, 82, 75,225,197,106, 70,141,243, 61, 29,196, 96, 78, 32,239, 76, 49, 41,221, 58,211,173, 91, 50,165,165, 37,196,181,182,
-209,163, 71, 44,109, 19, 83,  8,143,136,160,188,188,154,156,239, 78,112,161,160,146,118,201,125, 90, 44,209,137, 56,250, 85, 18,
-135,184,146,137,183,121,119, 13,118,149,220, 70,199,111,222,188,153,101,203,150,213, 35,190,215, 94,123,141,175,190,250,202,167,
- 61,233,185,144, 22, 66,118,156,147, 88,143,144, 36,226,155, 62,125,186, 95,110,206,186,174,211,173, 65, 45, 34,253,224,131, 15,
- 58,221,154,  0, 15, 61,244,144,199,239, 37,130,242, 69, 84,210,136,210,183,222, 90,238,140,133, 14, 24,208, 31,215,248,219, 85,
-197,230,123, 29, 64,201,158,106,134,222,105, 47,227,150,176, 58,165, 62, 99,105,141,211,158, 63,152, 52,105, 82,157,145,175,183,
-221,118, 91,157,231, 36, 24,247,230,220, 69, 47,213,109,163,151, 60, 25, 16,249,249, 36,190,230,168,240, 36,204,154, 53, 43,168,
-227,  5,151,248,221, 29,183, 10,220,113,171,234,106, 69, 19, 68,230,206, 18, 17,209, 98, 23, 99, 73, 77,141,193, 78, 49,  2, 54,
-236,130,232, 71,163, 33, 80, 97, 87, 83, 98,177, 99,181,139, 84, 90, 68,170, 44,118,204,106, 13, 41,227,198, 51,102,244,109,126,
-157, 99,175,180,158, 92, 28, 82,200,193,131, 89,156,170, 44,161,251, 45,119, 58, 84,157,217, 12,  8,124,159, 87,197,161, 51,145,
- 88,122,220,227,247,117,219,123,141, 97,253,246,143,152,118,139,238,106,203, 34,170,192,238,136, 17, 90, 12, 85, 20, 30,217, 70,
- 74,199, 54, 12, 28, 52,176, 73,238,237,128,  1,  3,234,140,138,203,204,204, 12,106, 84, 94,114,151,158, 28,220,247, 37,109, 19,
- 90,209,170,149,230,138,219,210, 70,101,149,153, 50,189,129, 78,221,250, 48,114,248, 24,159,118, 38, 79,190,139,175,254,251,111,
-246,237, 63,198,168, 17,253,233,210,165, 11, 22,179,145,129,  3,250, 17, 25, 27,203,185,188,124, 10, 10,203,249,102,239,143,232,
-171, 98,185,227,150, 49,180, 84, 60, 56, 47,211, 89, 83, 30,204,204,116, 18,151,221,141,236, 84, 42,  1,196,171, 77,165,  0, 76,
-241,208, 16,205,203,204,116, 21, 38,128,128,221,110,175,163,250, 30,125,244, 81,  4, 65, 96,210,164,137, 46,236, 11, 83,102, 63,
-219,160,219,205, 23, 41,  9,130,224, 55,233,185, 99,250,244,233, 62,149,157, 63,207,177,228,189,232,223,191,127,131,223,251,179,
- 74,187, 43,137,138,162,120, 69,237,  9,245,200,212, 95,184,219, 91,187, 32,170, 94, 87,195,117,219,151,135, 45, 62,203,218, 61,
-166,215, 28, 99,124, 94,137,111,248,136, 97,141,226,211, 13,149,210,115, 45,192, 64,240,227,105,145,222,169, 87, 43,225, 99, 47,
-212,157, 11,224,112,121,218,177, 97,226,199,220, 42,254,245,177, 35,163,198,200,161, 22, 90,247,244, 69,124, 34, 70, 27, 88,237,
- 34,162, 40,162,235,208,131, 14,237,186,112,227,208, 91, 72,238, 32, 47,167,221,184,177,227,136,138,138, 98,251,182,255,241,249,
-215,239,195, 23, 55, 95,237,241, 28, 25,192,128, 65, 67,101, 95,251,165, 46,179,248,247,230,213, 12,236, 84,195,128,174,209, 32,
-138,148, 87, 91,168, 42,206, 39,119,247,167, 24, 79,124,201,144, 33,131,233,149,214,179,201, 26,222,129,  3,  7, 58,123,192,114,
-221,155,245,158,185, 43,164,118,234,196,113, 10,243,206,161, 82,  9,216,108, 34,225, 17,241,164,245,190,145, 59,126,229,255, 42,
-236,109, 59,246, 99,223,254,255, 97, 52, 90,233,123, 99, 10, 29, 59, 36,144,127,190,  8,253,209,211,156, 60,149,207,214,175,143,
-112,174, 64,228,247, 15,252, 33,160,115, 61,179,177, 42,164,229,120,246,236,217,128,142,179,127, 28, 23,240,126,183,175,247,211,
-222,233,127,215, 81,125,203,150, 45,131,188,247,234,237,235,201,158, 55, 21,232,222,184,  7,213, 65, 14,178, 13,148,  6,162, 52,
- 68,106,190,190,247,164, 34, 93,143,245,100, 79,214,125, 62,247,  9,235,150,221,235, 80,187,183,212,119,101,186,110,243, 69,124,
- 45, 37,243,142,166, 49,111,120, 99, 34, 20, 75,220,191,243,145,205,133,224,234,231,225, 60,113, 26,122,165, 90, 81, 83,227, 36,
- 61,128,221,  7,204, 76,245,201,  7,  2, 85,102, 43,102, 43, 20,153, 97,198,221, 15, 16, 19, 19, 27,240,185, 14, 29, 50,148,161,
- 67,134,114,224,224,  1,224,106,128, 49, 16,210,147, 96,233,115, 15, 43,191, 59,128,122,207, 49,202,139,115, 57, 88, 20,203,201,
-252, 95,146,218, 41,137,177,227,198, 50,116,200,208, 38,191,207,193, 18,158, 59,249,141, 28, 62,134,239,143,230, 80,116,169,136,
-200,200, 72,191, 84, 94,189,134,165,223, 96,  6,244, 27, 76,214,170, 21, 28, 63,249, 45,237,147,162,  8, 15,215, 82, 93,109,166,
-224, 98, 37,130,166, 19,191,127,224,222,128,206, 49, 42,254,177,144,150,159, 52,247,174,217,226,187,199, 33,245,183,117,167, 73,
-228,  4, 94,  6,161,104,179,230,205,139,119, 33,208,208, 52,228,190,200, 72, 14, 89,  5, 59, 31,209, 83,153,185,187, 55,155, 43,
- 86, 46,121,178,158,187, 51,100,196, 23,234,124,153,215, 58,255,166, 92,156, 56,173,186,146,189, 69,188, 50,133,225,138,155,209,
-169,  6,237,204,157,169, 97,229,199, 86,255, 11, 86, 23,134, 49, 46,153,154, 42, 35, 68,138,180,106,213, 42, 36,231, 58,116,200,
- 80,122, 63,180,157, 33,201, 21,180,110,211,157,190, 19,130,172,144,131,134,  2, 14,130, 27,  5, 28, 56,120,160, 89, 16, 94, 99,
- 98, 64,223,193,208, 55,120, 59,179,231,100,178,123,207, 14,138, 75,139, 49, 92,170, 37, 60,188, 13,201,221,250,  5, 68,166,161,
-234,204, 53,166,189,186, 61,123, 59,132, 42,197, 96,222,123, 87, 71,120,230,189,223,228,207, 71, 48,174,205,150,136, 91,167,206,
-148,165,212,134,249,248,190, 49, 98,124, 83,231, 60,235, 28,216,178,114,201,147,245,190, 11,169,226,251,185, 64,116, 22,131,181,
- 94, 94, 78,135, 26, 84,211,163,123, 56, 80, 45,171, 23, 53,233,161,198, 89,111,110,193, 31, 23, 54, 90, 89, 92,239,164, 23,106,
-  4, 74,114, 45,  1, 43,245, 47, 49, 55,238,201,250, 95,100,199,135,214, 94,206, 99, 65,169, 60,  5,193, 97,250,195,111,182,136,
-206,150, 43,249,  5, 67,122,  0,194,212, 57,207, 42,233,208, 21,200,134,178, 16,173,  2,  5, 10, 90, 42, 20,197,167, 64, 33, 45,
-  5, 10, 20,252,172,160, 82,138, 64,129,  2,  5, 10, 20, 40,196,167, 64,129,  2,  5, 10, 20, 40,196,167, 64,129,  2,  5, 10, 20,
-180,124,212,137,241,221, 62, 42, 57, 96, 67,158,114,223,133,218,222,152, 97, 29,125, 30, 87, 83,118,201,249, 62, 50,190,157,243,
-253,142,253,  5,245,246, 53, 37, 38,249,180,183,121,233, 35,206,247, 19, 22, 92, 29,253, 20, 86, 92, 20,208,249, 53,132, 64,207,
-175, 33,120, 58,191, 33,  3,125, 47, 44, 91,114,230,152,243,125, 66,183,171,233,182, 14, 30, 42,108,244,242,155,180,217,251,218,
-107,177, 29, 58,240,107,151,101, 94,222, 76,186,250,251,255,155, 48,183,209,159, 63,119,123, 39, 79,158,172,151,104,121,193,130,
-  5,244,236,217,179, 73,234,135, 98,175,229,217, 59,122,244,168,243,125,223,190,125,131,182,215,208,  2,221, 45,177,252,174, 25,
-241,121,130,148,164, 85, 66, 48,121,235, 26,195, 94, 77,217, 37, 34,227,219, 57,  9,175, 93,167,174,  0, 92,242, 99,109,181,134,
- 26,234,  9, 11,222,116, 54,216,255, 88,191, 31,128,135,167, 13,227,122, 68,201,153, 99, 36,116,235,227, 36,188, 62, 67, 70,  0,
-112,236,224, 55, 77, 94,126, 27,170,171,249,178,166,134,137,145,145,124, 89, 83,  3, 69, 69,236, 95,244,  4,  0,195,150,188,220,
-164,229,182,125,251,118, 62,250,232, 35,140, 70, 99,157,237,225,225,225,204,154, 53,139,177, 99,199, 42,221,106,  5, 30,137,174,
-111,223,190, 78,194, 11,182,190, 73, 57,137, 37,194, 11,166,190,185,175, 90, 17,170,169,  9, 13,145,113,179, 81,124,158,144,157,
-157, 77, 84,239,140, 58,159,131, 33,170,236,236,108, 50, 34, 19,131,182, 39, 17, 93, 68,108, 27,106,202, 46, 57,  9,207,155,  2,
-244, 71,153, 12,155,253, 36,155,151, 62,226,124,128, 26,218,207,219,252, 17,247,223,212,233, 28, 57, 49, 69, 81,196,110,119,172,
-230,110,179,217,156,231,175, 82,107,253, 86, 77,  0,237,219, 58,148,142,185,178, 28,147,213, 49,169,190,218,106,115,158,127,108,
- 91,223, 61, 47,137,232, 98, 59,164, 82,114,230,152,179,  2, 54,172,  0,227,174, 89,249,  1, 60, 82,228, 80,132, 18,233, 73,132,
-  7,112,242,171,205,245,246,155,234,231,115, 83, 17, 89, 66,105, 84, 49,229,165,185,180,109,221,155,228,146,238,178,159,189,147,
- 39, 79,242,241,199, 31,215, 35, 61,  0,163,209, 72, 68, 68,  4,237,219,183,247,168,252, 20,252,124,  9, 79,170,111, 71,143, 30,
-109,176,190, 93, 85,128,113,126,145,201,176,217, 79,146,153,153,217, 96,125,147,246,243, 85,223, 50, 51, 51, 89,254,222,154,186,
-219,238,187, 59,104,162,114, 39, 83,127, 22, 15,104,114,226,203,204,204,172, 67,122,  0, 81,189, 51,  2, 62,249,204,204,204, 58,
-164,  7,144, 17,153, 40,219, 94, 77,217, 37, 34, 98,219, 16, 27,227, 88,221, 64,250,235,105,191,118,157,186,250, 84,127,155,151,
- 62,194,176,217, 79,242,155,153,119,  2, 56,255,122,218,239, 31,235,247,203,234, 77,169,213,106,146,147,147, 81,171,213,152,205,
-102,106,106,106,176,217,108,232,245,250,128,110, 88,148, 70,205,191,150,125, 70, 88, 44, 20,157,133,  3,213,  5, 20, 95,202,229,
-195,165, 79,201, 82,121,177, 29, 82, 73,238,224,112,  5, 75,127, 27, 38, 61, 66, 86,126,254, 36,129,122,164,168,136,137,145,145,
- 60,247,200,195,  0, 60,231, 66,120,171, 78,157,170, 75,122, 50,178, 74,157, 21,119,193,176,  2,102,117,158,131,201,222,157, 48,
-187,200,143, 37, 91, 57,180,249, 36,221,237, 15,249, 93,126, 75,151, 46,197, 96, 48,240,222,123,239,113,223,125,247, 57,183, 75,
-159, 13,  6,  3,225,225,225, 65,231,136, 84,112,253,144, 94,108,135, 84, 78, 29,218, 67,159, 33, 35,234,213,183,175,191,248,148,
-164,164,164, 58,110, 79, 95,237,168, 63,245, 45, 51, 51,179,238,242, 26, 50, 72, 15, 96,249,123,107, 66, 66,126,161,128,183,181,
-247,  2,153,196,222,226,  6,183,184,147, 94,189, 30,125,101, 21,151,206,159, 37, 34,182, 77,131, 42,208, 91,163,237,142,247, 63,
-254,148,135,167, 13, 99,216,236, 39, 27,236, 85,121,130, 78,167, 67,173, 86, 19, 19, 19, 67, 94, 94, 30,122,189, 30,187,221, 30,
- 48,233,181,111,155, 68,148, 70,205, 29,127,120,158,219,238, 25,206,198, 31, 10,184,100, 32,104,210,115,199,133,194, 75, 28, 59,
-248, 13,137,113, 49, 87,186, 70,234,144,148,223,164,187,126,227,232,199,106,180,178, 72, 15,224,217, 55,255,193,179,111,254,195,
- 73,122, 95,214,212,176,240,214, 43, 26, 47, 81,231,215,117, 31,138,221,196,173,211, 59,240,219, 46, 15,161, 85, 69, 17, 73, 43,
- 84,168,233,152, 52,130,145,119,141, 39,175,195, 82,191,236,108,223,190,221,113, 93,239,191,239, 36, 59, 79,127, 93,247, 13,  4,
-187,118,237, 82, 24,227, 58, 34,189, 23,158, 94, 64,118,118, 54,255,252,251, 43,245, 72, 47, 59, 59,155, 55,223,124,211,175,250,
-230, 78,122, 13,213,183,219, 70, 92,201,113, 27, 29, 25, 16,233,213, 33, 63,153, 11,247,182,  4,104,124,169,189, 87,159,249, 29,
-115,239,153,232,220,190,114,245,151, 60,254,188,124,201,234,170,246,110,152,116, 51,127, 94,231, 72,183, 62, 35,170,173,108,213,
-231,137,244, 42, 42,171, 48, 84,148, 58,221,135,210, 62, 21,149,190, 51,221,123,122,136,222,255,248, 83,246,103,189,228,116, 39,
- 72,251,188,255,241,167,126,157, 99,106,106, 42,165,165,165,148,150,150,162,211,233, 80,169, 84, 24, 12,  6,244,122, 61,106,181,
- 26,155,205, 38, 43,161,238, 39,255,249,140, 77,223, 25, 88, 54,255, 86,218,183, 77,162, 85,100, 60,231,107, 10,248,112,233, 83,
- 68,105,212, 84, 91,109,168,253,180,231,137,244, 46, 20, 94,162,162,208,177, 34,111,175,228,182,156, 45, 46, 39,172, 85, 24, 38,
-131, 41,232,242,123,234,157,141,172,122,241, 49,110, 76,185,129, 31,207,252,232,211,158, 68,122,238, 10,239,203, 26,199,186, 96,
-121,153,127,225,142, 47,222,165,207,176, 20,142,229,248, 94,172,244,176,110, 35, 35,198, 38,145, 24,217, 27,131, 88,133,218, 92,
-131,206,106,162, 66,101,195, 40,136,216,117, 81,116, 28, 53,132,117, 79,189,200,244,  1, 79,123,181, 37,197,245,194,194, 28,171,
-221, 75,207,172,212, 56, 72,159,141, 70, 35,225,225,225,  1,199,250, 86,173, 90,205,168, 81,163, 80,208,242,145,220,161, 29, 25,
- 25, 25,100,103,103,147,147,147, 67,202, 23,159,146, 54,112, 56,167, 14,237,113,142,119,200,200,200,  8, 89,125,123,249,190,169,
-252,253,127,251,104,151,210,158, 75,231,138,154,244,218, 93,227,143,174,245, 35, 80, 76, 13, 81,226, 12,159, 49, 62,137,244,162,
-111,152, 65,213,241,181,204,189,103, 34,143, 63,255,110, 80, 63, 42,145, 94, 40,224,234,198,244,164,  4, 13, 21,165, 87, 70,119,
- 22,248,101,207,213,141,233,169,103,181, 63,235, 37,199,232,196, 98,239, 15,148,213,106,165, 85,171, 86,168, 84, 42,226,226,226,
-168,173,173,165,230, 74,195,157,152,152, 72,105,105,169,172,196,176, 70, 61, 12,139,136, 96,225,223,119, 49,161, 63,156, 59,  4,
-210,186,185, 11,255,190,139, 55, 22,140,195,102,183,201, 46, 63,215,160,250,248,193,189,208, 68,171,248,114,251,113,  6,246,234,
- 68, 76, 84, 24, 59, 14,230,146,208,173, 15,103, 61,140,234,244, 85,126,235,143,139,112, 17,166,141, 23,120,103, 99, 30,109,226,
-186,113,231,  8,193,175,242,147, 72, 79, 34, 59,  0,241,207, 75,161, 99,  5,194,  3,127, 66,252,203,115,160, 50, 32,236,127,145,
- 55,147,146,240,182, 64,149,177,215, 57,186,180,158, 76,165,173, 26,147, 62,151, 15,243, 87,179,123,154,158, 27,126, 63,142, 91,
-255, 16, 69, 68, 92, 79,194, 53,113,104,166, 85,112,224, 83,255,146,116,171, 84,170, 58,247,207,253,115, 48,216,181,107, 23,130,
- 32,176,123,247,110, 70,142, 28, 25, 18,123,128, 66,164, 77,136, 95, 76,185,147,188,188, 60,114,114,114,200,206,206,102,240,149,
-247,  0,131,  7, 15,102,210,152, 33,206,250,214,183,111, 95,206,250, 57,202,209,181,190, 93,252,207, 75, 68,247,  9, 39,170,199,
-124,214,190,244,123,250,223,216,142,158, 83,159,103,197,138, 21,215,124,212,164, 59,249,181,  8,197,231, 26,219,139,190, 97,134,
-199,  3,229,196,250, 60,197,246,220, 49, 35,170,109,157,133, 71,253,129,164,230, 26,114,125,250,163,246,220,123, 77, 13, 17,158,
- 28,181,  7, 80, 82, 82, 66,219,182,109,157,202,192, 98,177, 56,  7,180,196,198,198,162,213,106, 57,127,254, 60, 90, 63,237,253,
-123,203, 14,126, 63,117, 12,146,126, 56,101,117,184, 57,  1,198,166, 65,204,243,219, 88,240,199,225,178,174,247, 66,161, 99, 16,
- 78,231,182,241,232, 77, 38, 52, 49,106,140,197,181,160, 82,209,190, 75, 50, 95,125,125, 32,160,242,251,205,227, 47,112,230,155,
-173,104, 46, 65,121, 18,180, 82,169,184,185,107, 55,126, 49,198,191,233, 25,238, 74,111,213,204,223,243,137,233, 36,116, 55,194,
-183, 26,136,210,192,237,131, 73,190,253, 55,254,169,239,142,241,152,205,101,104,173, 22, 62,204, 95,205,222,251, 98, 25,125,199,
- 47,233,213,182, 55, 63,124,181,157,129, 25, 53,104,205, 53, 88,123,217, 41, 46,242,111, 48,148, 68,114, 82,140,207,253,115, 48,
- 88,181,106, 53, 43, 86, 44,103,222,188,135,130, 38,190, 93,187,118,145,149,181,198,121,126, 10,249, 53, 29, 38,221, 53,135,148,
-148, 20,167,242,147,148, 94, 82,251,246, 65,213,183,185,183,143,102, 95,225,101,162,251, 71, 83,240,229,105,  8, 15,227,174, 63,
-220, 75,124,242,212, 38,189,222,134, 92,164,193, 16, 97,168,146, 84,251, 29,227,147,148,223,202,213, 95,134,172, 96,254, 60,125,
- 26, 17,209,209, 14,151,159, 32,160, 82,201, 11, 57, 26, 42, 74,189,198,251,174,170, 61,255,176, 63,235, 37,175,254,115,167,218,
-243,  3,149,149,149, 84, 85, 85, 97, 50,153,176,219,237, 20, 23, 23, 59,221,156,181,181,181, 84, 87, 87,203,114,117,126,246,247,
-103,216,254,  3, 84,156,  5,139,  1,222, 88, 52,206,233,230,252,238, 16,124,127,241, 27,212, 50,203,191,162,240, 52,241,177,145,
-180,137,143,164,103, 90,111,242,206, 20,115,170,160,148,206,109, 98, 49, 21, 93,198,106,177,214,153,203,231, 79,249, 13, 31,251,
- 75, 70,142,187,155,207, 54,172,101,219,206,181,172,126,237,113,238,122,252, 69,142, 88,160,184,244,178, 95,229,231, 26,203,251,
-237,240,155,152,125, 67, 23,214,126,246, 53, 71,142,156,229,181,163, 57,124, 52,225, 94,120,119, 15,  5,  5,197,117,230,242, 53,
-232,106, 50,134, 97, 51,151, 96, 54, 87,  0,144,212,177, 19,189,122,247,166, 50,194, 17,107, 53,216,107, 81,153,106,136,168, 81,
- 83,116,209, 59,241, 73,247,204,104, 52,214, 25,213,233,254, 57, 88,181, 39,145,105, 48,177,190, 93,187,118,177,106,213,106,222,
-126,251, 45, 86,172, 88, 78, 86,214, 26, 37,118,216,132,144, 66,  9,238,112,173,111,174,115,249,252,169,111,163,134,246, 36,125,
- 68, 26, 47,252,191, 87,120,117,217, 38,254,191, 85, 95, 51,239, 23, 67,184,244,249, 38, 42,244,149, 62, 73,102,197,138, 21, 60,
-120,223,221, 13,126,255, 96, 16,131, 91,174,133,210,219, 24, 96,178,124,149, 55,181,231, 74,122,175, 62,243,187, 43,241,189,119,
-235,169,190, 64,213,222,153,111, 28,163,  6, 85,106, 53, 26,173,150,153,173,219,243,216, 99,254, 45, 79, 34,169, 57,111,131, 92,
-  2, 82, 43, 94,130,198,114, 16, 23, 23, 71,113,113, 49, 97, 97, 97, 84, 85, 85,145,152,152,232, 28,236, 98, 52, 26, 41, 47, 47,
-151, 69,124,115, 95,248,136, 55, 22,141, 35,182, 43,108,255,  1,254,111,201, 54,162, 52,106,238,124,244,175, 92,176, 95, 34,235,
-181, 39, 80,171,252,183, 39,169,189,193,131,211, 72, 76,233, 74,219,196,  4,116, 42,  1,171, 32, 82, 92, 99, 64, 95,101, 12,168,
-252, 94,125,233, 63,252,170,119, 55, 98, 98,218,208, 42,177,  3,150, 50, 61,135, 54,174,161,188, 44, 63,160,  7,244, 95, 47, 61,
-  2, 11,210,209, 88,205,116,173,129,203,234, 74,222,184,120,  0,116, 49,126,219, 48,158,174,164, 68,101, 32, 95, 87,203,144,238,
-227,184,225,222, 40,242,226,182,147,152,120,136, 78, 55,231, 81,161,170,194, 36, 26,168, 93,101, 39, 60, 42,218, 47,165,215, 88,
- 88,181,106, 53,179,103, 59, 26,162, 57,115,238, 97,213,170,213,  1,219,202,202, 90,195,156, 57,247, 56, 63,207,158,125, 55, 89,
- 89,107, 20,  6,106,  2, 92, 40,188,196,222,189,123,157, 49,189,193,131,  7,  3,142,233, 92, 31,175,223, 20,112,125,251,252,179,
- 63, 51,113,209, 31,152, 60,121, 60,  9, 97,106,170,  4,145, 47, 79,157,103,239, 15,  5,126,219,106,136,252,164,109,205,105,112,
-203,212, 57,207, 58, 95,193,144,159, 95, 18,235,213,103, 28, 11,201,  6, 27,219,171,215, 32,213,212, 96, 54, 26, 81,105,212,168,
-181, 26,180,186, 48,194,195,195,101,169, 61, 79,132,119,233,252,217,128,213,158,167,  7,236,225,105,195,100,169, 61,112,204,211,
-107,215,174, 29, 38,147,137,162,162, 34, 10, 11, 11,137,139,139,163,188,188,220,169, 28,228, 16, 95,241,165, 92,158,121,126, 27,
- 21,103,225,111,143,143,226, 79,143, 14,103,238, 11, 31,145,245,234, 19,168, 53, 58, 52,130,128, 70,134,189,138,194,211,180, 79,
-104,141, 22, 45,  2,  2, 23,207, 28,227,220,229, 10, 58,196, 70, 99,168, 53,242,221,233,  2,217,106,239,174,251, 31, 67, 27, 15,
- 42, 53,188,183,233, 12,159,188,181,144,137,191,155,207, 15, 63, 30,230,225,241, 93,100,149,223,151, 53, 53,188, 58,109,  6,148,
-135,131,160,133, 87, 95, 97,250,129, 93,188, 52,236, 87,236,217,119, 20, 97,233, 19,126,169, 61,128,195,151, 18, 16, 12, 21, 84,
- 83, 67,109,120, 56,169,119,197,144,124,167,150,138,137, 81,152,146,211,176,218,106,177,148, 20,240,205,223, 43,232,222, 61,181,
-201, 42,245,238, 60,175, 64,116,  0,  0, 32,  0, 73, 68, 65, 84,221,187, 17,  4,193,233,142,148,254,  6,162,210,118,237,218,133,
- 40,138,117, 92,155,210,251,221,187,119, 43, 76,116,141,113,234,208,158, 58, 49,189,135,238,159, 65, 70,134, 67, 96,228,228,228,
-240,223, 61,223,201, 86,123, 51,211,111, 34,214, 30,135, 10, 45,159, 44,253,  3,111,109,252,158, 25, 67,251,112, 38, 55,159,233,
- 47,126, 40, 75,113, 73,228,231,250,114, 61,190,169,201,207,157,236,130,113,115,214, 35, 62, 79,106, 15, 28,113, 62, 95,177, 62,
- 57,106,111, 70, 84, 91,102,198,180, 67,165, 82,161, 13,211,161,209, 58, 94,186,136,112, 50,218, 36,243,226,139, 47,202, 86,123,
-238,132, 39,135,244, 60,169, 61,119,194,147,211,104,  3,232,245,122,170,171,171,209,106,181, 78,181,103,183,219,157,127,229, 18,
-223,135, 75,159,226,187,130, 29, 68,181,115, 12,102,137,214,168, 41,190,148, 75, 76,152,150,242,178, 11,168, 85,  2, 26, 63, 93,
-197,146,218,235, 20, 31,205,241,188, 51, 88,205,102,194, 52, 58,170,171,141, 28, 62, 83, 72, 66,183, 62,178, 72, 79, 42,191, 95,
- 62,242, 28, 89,111,188, 78,173, 29, 58,165, 38,243,195,177,125, 60,118,123,255,128,202, 15,224,177,212, 33,108,248,233,107,168,
-176, 66,120,  2,155,247, 31, 71,248,235, 31,120, 51, 41,201,111,210,  3,232,111,158,202, 55,155,247,131,185,138,106,161, 10,189,
-170,154, 10,141,  5,139,173,146, 48, 99, 45,225,133,103,248,232,233,159,232, 58, 32,205,239,133,120, 35, 34, 34,156,239,195,195,
-195,235,116,216, 92,191,147, 67, 84, 31,126,152,197,219,111,191, 85,103,251,175,127, 61,155, 85,171, 86,203, 34, 63, 41,174,231,
-170,246, 92, 85,223,135, 31,102, 41, 46,207,107,172,246, 92, 71,111, 62,243,236,  2,194, 52, 58,146,146,146,156,228,231,154,205,
-202,223,250,246,251,177,253,152,255,202,235, 84, 21, 93, 38, 49,166, 45,199,142,231,115,223,107,171, 89,177, 98, 69, 64,110, 70,
-233, 56,215,227,155, 19,249,133, 18,126,173,199, 87,117,124,173,147,  0, 67,129,181,213,151, 29,149, 48,161,147,227, 36,180, 26,
- 52, 58, 29,134,234,106,226,146,146,104,165,110,229,183,218,115,159,198,160, 21, 45, 96,173,189,170,188, 52,173,100,169, 61,247,
-105, 12,  0, 21,151,175,142,136,242, 39, 43,138, 43,249,  1,180,107,231, 32,225,178,178, 50, 98, 98, 98,156,110, 78, 57,196, 39,
-145, 31,252,149,  7, 51,198,192, 27,187,120,107,241, 20,166, 63,254, 58,171, 95,122, 24,141, 32,160, 11,243, 79, 45, 75,106,239,
-120,254,101,186,119, 74, 96,235,150,125,142,107,235,224, 80, 59, 22,211, 85,183,139,214, 15,155,146,218,123,254,254,241,252,223,
-159,222,163, 83,138, 16, 84,249, 73,106,239,214,207,254,197, 87,179,239, 70, 72,190, 25,112,100,113,  1, 71, 42, 51,  9,183, 71,
- 69,249,117,205,253, 76, 79,112,248,191, 27, 49,246,220, 67,215, 30, 55, 82, 25,  1,103, 56, 71,213,217, 98,138, 95,180, 81,173,
- 79,102,193,189,143,251,125, 47,150, 47, 95, 78, 68, 68,  4,  6,131,161,206,128,172,136,136,  8,150, 47, 95, 46,155,244,178,178,
-214,176, 98, 69,253,227, 70,142, 28,137, 40,138,100,101,173, 65, 16,  4,159,131, 93,230,205,123,  8, 81, 20,153, 51,231, 30,143,
-  3, 89,164,109, 89, 89,107,200,202, 90, 83,143,104, 21,132, 30, 21,133,167,121,225,207,207,240,233,134,255, 50,113,228,160, 58,
-245, 45,182, 67, 42,131,243,242,152,116,215, 28,242, 75,107,233,220,198,191,246,106,102,250, 77,204, 95,185,129,167,127,119, 43,
- 29,218,141,117,146, 42, 56,210, 66, 74,  8, 38,203,150, 43, 33, 74,164,215, 84,153, 87, 36,119,230, 53,155,206, 16, 42,194, 11,
-143,138, 68,163,117, 76, 54,190,191, 83, 79,180,225, 97, 68,197, 57,210,242, 24,170,170,176,152,205,  0,232, 34,194,137,208, 88,
-252,178, 41, 77,101,136,140,111,135,221,102,113,144,222, 21, 88,  4,173,207, 84, 96,238,144,134,  6, 79, 88,240,102,157,198, 58,
- 16,210,115, 37, 63,215,  9,235,101,101,101,242,111,128, 27,249,125,232, 50,215,250,157, 23, 93, 50,142, 88,170,233,230,167,157,
- 78,241,209,236, 47, 41,231,251,159, 28, 46, 77, 87,178,147, 67,122, 18,126,249,200,115,124, 50, 40,146, 71,238,232, 21,146,242,
-123, 44,117,  8,143,175, 95,139,240,194,159,248,111,210, 77, 44,171,254,161,206,247,  3, 53, 90,146,195,195,100,149, 93,127,243,
- 84,254,187,222,200,  5,253,105,138, 75, 47, 82,116, 42, 10,181, 45,134, 17,253, 70, 49,238,222,113, 77,210, 40,186, 18, 85, 67,
-144,200,234,195, 15,179,248,240,195, 44,143,  4, 41,193, 31, 34, 27, 53,106,148, 50,186,243, 26,163, 83,124, 52,183,220,114,139,
-199,250, 54,233,174, 57,  0,126,145,158,132,223,143,237,199,132, 45,223, 50,251, 79, 31, 48,122,244,104,146, 60,120, 64, 66, 65,
-122,238,228, 39,119,238,118, 67,219, 67, 65,158,129, 14,108,169,215,238, 74,147, 44,229, 34, 35, 35,  3, 67,  3,219,157,246,106,
-138,175,254,168, 70,131, 86,171, 37, 44, 44,140,176,176, 48, 34, 34, 34,156,127, 79,138,  6, 38, 79,158,204,247,103,241,169,250,
- 34,227,219,161,182,214,130,181,214, 57,162, 81, 34, 60,185, 41,105, 36,151,102,197,229, 11,245, 26,109,185,132, 23,155,216,  1,
-179,217, 20,178,135,110,246,115, 31,242,211,137, 99, 33,173,136,251, 79,157,119, 86, 64,119,210,147, 67,120, 18,238, 29, 20, 25,
-178,242,  3, 16,150, 62,225, 36, 60, 87,210, 11,132,240, 92,113, 91,183,233, 56,123,  7, 19,228, 31,255,246,219,111, 59,179,179,
- 44, 95,190,188, 78,166,150,247,222,123,207,169,246,222,123,239, 61,191,166,230,248,171,184, 20,178,106,217,240, 86,223,228, 16,
-158,132,  9,207,188,115, 77,  8,207,157,252, 26,115,255, 64,201, 46, 16, 21,168,113, 47,176, 64, 11,205,211,  4,201, 96,236,125,
-127,214,243,132, 75, 41,118, 39, 17, 30, 65, 18,158, 20,123, 10, 85,131, 13, 96,181,217,101,171, 77,111,184, 92, 86, 17,240,185,
-184, 67,138,221,133,138,240, 66, 93,126, 82,236,110, 67,117,117, 72,  9, 79,129,130,166,128, 52, 96, 37,191,180, 54, 36,132, 39,
-145,137,171, 59,179,177,  9,175, 57, 96,234,156,103, 67, 70,122,  0,194,212, 57,207,138,202,227,169, 64,129,  2,  5, 10,126, 46,
- 80, 86, 96, 87,160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5, 10,241, 41, 80,160, 64,129,  2,  5, 10,241, 41, 80,160,
- 64,129,  2,  5, 45, 11,117, 70,117,222, 62, 42,240,145,131,158, 70,117, 42,246,154,151, 61,227,165,243,  1,219, 11,111,215,233,
-154, 93,175, 90, 20,209,216,193,164,246, 62,193, 95,107,  3,171, 10, 68, 65,185,191,138, 61,197,222,245,102, 79, 81,124, 50, 16,
-108, 90,157,188,188, 60,182,108,217,226,124,229,229,229, 41,221,163,107,136, 48,155,136, 77, 16,234,144, 94,126,126, 62,123,247,
-238,229,187,239,190, 35, 63,255,106,178,107,139,218, 65,122,129,162,177, 19, 78, 43, 80, 32,  7, 39, 79,158, 12,234,216,121,243,
-230,133,244, 92, 66,105,175, 89, 43,190,150,142, 96, 73, 42, 47, 47,143,151, 94,122,137, 25, 51,102,212,179,153,146,146, 18,176,
-205,188,188, 60,178,179,179,201,200,200, 32, 37, 37, 69,150,173,185,115,231,202,250,189, 25, 51,102,120,157,207,179,121,243,191,
-101,219,211,235, 35,175,217, 61,116, 37,188,203,151, 47, 99, 50,153, 16,  4,129,240,240,112,140, 70, 35,249,249,249, 28, 56,112,
-128,254,253,251,211,189,123,247,160,126, 75,110,202, 56, 71,199,234, 65,217,199,120,203,180, 18,122,123,153, 62,142, 93, 81,111,
- 31,127, 39, 26,231,229,229,241, 98,194, 93,136, 95,156, 70,179,189,126, 54,127,219,203,251, 17, 55,157,230,238,196, 79, 33,172,
-151,172,107,154, 56,209,177,236,217,151, 95,134,102,217,179,140,140,236, 43,229, 17, 23,242,249,109, 39, 79,158,100,233,210,165,
-178,214, 14,125,224,129,185,136, 34, 52,244,200,253,241,143,143,203,182,233,250, 28, 47, 91,182,140, 49, 99,198, 48,111,222, 60,
- 86,175, 94, 77,101,101,165,172,115,171, 71, 12, 26, 53,179,134,235,200,156,151,201,203,255,251, 27,127,156,240, 71,231,119,239,
-188,179,242,250, 38,190, 45, 91,182,120,124,104, 26,218,222,210,137,207,149,244,210,211,211,157,147, 68,243,242,242,  2, 34, 62,
-137, 72,165,  6, 86,202, 98,179,104,209, 34,121,246,178,227,101,252,170,239,251, 82,115,251, 67,254,155,147,153,111, 57, 84,139,
- 79, 86, 84, 84,208,182,109, 91,167, 50,139,136,136,224,242,229,203,148,151,151, 19, 27, 27,203,254,253,251,  1,100,147,223,150,
- 45, 91,156,247, 65, 16,  4,238,186,235, 46,210,211,211,101,145,224,250,245,255,113,190,159, 54,237, 87, 62, 63,251,130, 97,207,
- 35, 87,139,123,248,155,117, 62,187,111,139, 24,238, 59,217,247,255,254, 87,127, 61,250,157, 59,119, 58,147,191,187,222,139, 85,
-171, 86,249,253, 44, 47, 89,178,132, 23,198, 14,  0, 65, 32, 35, 35,163, 94, 27, 32,174, 57,221,112,203, 46,227,254, 52,231,137,
-216, 18,233,173, 88,177,226, 74, 14,213, 44,118,239,222,205,228,123, 22,251, 60,118,207,126,207,219, 63,203,118,144,158,221,110,
-103,229,202,149,100,101,101, 17,211,121,140, 87,162,115,245, 86,156, 56,113,  2, 65, 16,184,251,110, 71,103,228,158,123,238,145,
- 77,160,175,108,126,197,249,254,210,151, 23, 17,  4,129,213,143,182,  2,  4, 22, 77,122,  2,174, 60, 82,107,222, 95,205,188, 49,
-205, 71,  9,  6,154,195, 83,229,173,  1,203,206,206,102,229,202,149, 30, 27,142, 64, 92,138,161,118, 27,186,219,147, 84, 85,160,
- 88,185,114,101,157,108, 51,233,233,233,  1, 43, 61,137, 72,133, 43,141,196,138, 21, 43,156,231, 22, 72, 57,  8, 51,244,206,151,
- 63,219,125, 33,106,227,114,231,203,159,237,114, 72, 79, 20, 69,103,197, 12,196,157,168,215,235,137,141,141, 69,165, 82,113,255,
-253,247, 51,123,246,108,116, 58, 29, 17, 17, 17,132,135,135, 35,  8,  2,106,181,154,156,156, 28, 42, 42, 42,252,178,121,252,248,
-113, 50, 51, 51, 89,183,110,157,243,158,136,162,200, 39,159,124,194,188,121,243, 56,126,252,120,179,108,104, 61, 17, 97, 83,116,
- 40,151, 44, 89,194,138, 21, 43,184,167,237,103,220,157,240,137,199,123,191,248,166,239,209,108,155, 37,219,254,188,121,243, 88,
-184,112, 33,221,186,117, 11,201,249,206,155, 55,143,204,204, 56,218,180,217,218,104, 74,207,149,244,130,129, 43,233, 61,254,248,
-227,126,217,116,175, 83,203,150, 45, 99,244,232,209,  0,220,125,247,221,140, 25, 51, 70, 86,251,236,201,222,204, 91, 28,154,104,
-245,163, 17,204, 26,174,227,137,137, 11,155, 93,221,  8, 38, 87,167,170, 97, 87,193,213,181,162, 36,229,227,218, 91,150, 75, 48,
- 82,229,  9,117,101, 12,149, 75,210, 27,121,  5, 11, 87, 34, 93,180,104, 81, 64,249, 80,155, 59, 92, 73,207, 83,197,146, 83, 17,
-107,107,107, 81,169, 84,204,154, 53,139,138,138, 10, 10, 11, 11,209,106,181,104, 52, 26,103,158, 87,105,101,132,  3,  7, 14,248,
- 85,177, 95,127,253,117,  4, 65, 96,250,244,233,188,253,246,219,164,167,167,179, 98,197, 10,166, 79,159, 14,192, 27,111,188,129,
-  2,239,164,  7,208,173, 91,183,122,169,  8, 51, 51, 51,235,120, 49,  2, 81,108,233,233,233,188,253,246,219,100,103,103,135, 44,
-246,250,212, 83, 79,145,157,157,237, 49,189, 87, 32,164,247,218,107,175, 33,  8,  2,243,230,205, 35, 43,235,234,210, 78,114, 87,
-227,112, 37, 61,201,166, 74,165,226,224,193,131,178,151,139, 58,121,242, 36,130, 32, 48,107,214,213, 14,199,221,119,223,205,216,
-177, 99,153, 55,111, 30,159,127,254,185,239, 78,181,139, 74,191,244,229, 69, 16, 32,235,255,174,166, 83, 91,253,104, 43,238, 30,
- 17,230, 80,126,215,  1,233,129, 23, 87,103,122,122, 58,121,121,121,228,228,228,144,157,157,237,124, 15,142,133, 20,229, 60,220,
-141, 77,122,141, 73,124,161,198, 75, 47,189, 20,210,178,104, 78,  8, 69,131,149,155,155,139, 74,165, 66,173, 86,147,155,155,139,
- 40,138,156, 60,121, 18,179,217,140, 32,  8,104, 52, 26,  4, 65,192,102,179, 81, 91, 91,203,103,159,125,230,243, 89,220,186,213,
-209,243,159, 62,125,122,189,125,165,207, 82,  3,233,207,115,237,238,190,244,245,217, 31, 85, 39,161, 33,183,167, 63, 46, 78,119,
-236,220,185,211,169,  4,  2,197,139,  9,119,241,194,216,  1,104, 50, 61,197,244,190, 69,220,148, 71,158, 92,215,189,155, 58,147,
- 58, 31, 82, 35,188,117,235,214,128,221,157,146,189, 30, 61,122,212,107,212,  3,197,131, 15, 58,226,176, 18,249, 63,248,224,131,
-236,218,181, 11, 65, 16,  2, 38,189, 49, 35, 28,105,245,237,118, 59,127,252,227, 31, 89,182,108,153,211,230,237,211, 30,192,230,
-167, 29, 87,181,231, 10,201,237,185,105,211, 38,122,245,234,  5, 68,250,109,111,230, 45,245,243, 12, 59,220,158,176,102,245, 33,
- 78,182, 59,233,183,189,198, 36,189,185,139, 94, 98,229,146, 39, 67, 75,124,224, 24, 88, 33,169, 60,137,244, 60,249,246,229,144,
-148,183,158,191, 63,113, 32, 95,246,220,191,111,138,181,163, 36,117,236,186,134,149,251,249,134, 42,150, 33,174,141, 11,233,121,
- 87, 79,149, 55,216,194,245,218, 60, 53, 50,174,219,164,125,189,221,147,178,178, 50,162,163,163, 41, 43, 43, 99,207,158, 61,168,
-213,106,204,102, 51,  6,131,193,185,128,175, 40,138, 88, 44, 22, 76, 38,147, 95,100, 43, 41,236,134,202, 59, 61, 61,157,117,235,
-214,145,157,157,237,215, 61,105,172, 24, 95,196,240, 55,235, 17,156,244, 57, 16,  2, 28, 61,122,116,208,228, 39,126,113, 26,184,
- 26,211,115,141,119,139, 31,157,  1,132,128, 99,224,238,157, 15,112,172,126,145,153,153, 25,178, 56,223, 83, 79, 61,229,140,109,
-  6,106, 83, 20,197, 58, 49,179,145, 35, 71,178,107,215,174,160,148,158, 40,138, 88,173,214,122, 54,119,124, 99,227,149, 37,254,
-197,208, 36,181, 39,145, 92, 67, 88,186,116, 41, 83,102, 63,227,211, 94,221,216,158,  7,101, 40,211, 94, 99,147, 94,163, 40, 62,
- 79,202,175, 57, 42, 61, 87,100,100,100, 52,155,233,  7,238,238, 76,247,209,116,254, 54,178, 62,221, 20, 46,177,189, 80,144,160,
-107,108,207, 95, 18, 92,191,126,189,199,237, 31,126,248, 33,191,254,245,175,221,212,208, 52, 50, 51, 51, 27, 12, 70,155,205,102,
-202,202,202, 48, 26,141,196,198,198, 18, 22, 22,134,213,106, 69, 20, 69,108, 54, 27,102,179, 25,139,197,130,205,102,147,165, 48,
-125,185,230,167, 79,159,222, 44, 92,208,190,  6,186,200,133, 68,126,  1, 55, 16,219,239,110,176,236,238, 78,248, 36,168,184,186,
-187,218,115,237, 44,  5,210, 49,116, 87,123,222, 58,100,254, 98,245,234,213, 78,219,111,191,253,118, 72,226,122,146,136,208,104,
- 52, 44, 88,176,128,131,  7, 15,186,216,244,255,153,126,253,245,215, 61, 46, 85,245,209, 71, 31,177, 99,199, 14, 68, 81,116,118,
- 50,253,153, 39,183,236,245,101,204,186,185,190,218,155,253, 70, 45, 31,237,177, 32,138, 34,  3,239, 25,200,188, 49,243,174,249,
-188,187, 80,195,231, 60,190, 45, 91,182, 56,111,148,107,188,207, 31,164,164,164,176,104,209,162,144,157,172, 47,123, 41, 41, 41,
-  1, 55, 94,174,115,247, 92, 95,210, 40,207, 96,227,  4,114,167, 37,180, 52, 76,155, 54,141,105,211,166,213,217, 38,145,158,235,
-119, 13,145,164,132,232,232,104,108, 54, 27,122,189,158,146,146, 18,244,122, 61,181,181,181,212,214,214, 82, 93, 93, 77,101,101,
- 37, 21, 21, 21, 24, 12,  6, 76, 38, 19, 54,155,111,167,144, 32,  8,172, 91,183, 78, 86, 71,165, 37, 99,231,206,157,117, 94,174,
- 40, 41, 41,169,243,217,159,152, 82, 67,203,139,185,198,174, 67,161,246, 92, 85,223,186,117,235, 66, 26,235, 91,183,110,157,236,
- 58,156,149,149,197,142, 29, 59,156,131, 89,230,205,155,231, 44,207, 64,166, 29,  0, 44, 94, 52,134, 29, 59,118, 96,255,184, 53,
-162, 40,178,116,233, 82,167,205,157,123,236, 46,186,202,183,218,115,117,105,  2,172, 89,147,197,131, 15, 62,200,142, 29, 59,152,
- 63,127,190,172,115,188,244,229, 69,  4,  4,178, 92,212,222, 61,175,215,162,158, 85,193,154, 61,102,230,207,159,207,146,255,189,
-220,164,207,117,168,212,158, 79,197,183,114,229,202, 58,113, 61,215,120,159,191, 13,185, 68, 86,146, 82, 11,214,245,232,201,158,
-164,  4, 83, 82, 82, 66,230,218,116,157,206,208,220, 32,169,188, 80,185, 57, 37,149, 39,215,205,233, 74,122,174,239, 93,201,205,
-219,119,158,208,166, 77, 27, 74, 75, 75, 49,155,205, 20, 23, 23, 19, 22, 22,134, 70,163,113, 42,190,154,154, 26,106,107,107, 49,
-153, 76, 84, 84, 84,248,165, 54, 36, 53,231,109,122,142,180,159,127,215,219,120, 49,190, 64,190,119,135,228,218,243,216,240, 46,
- 94,204, 11, 47,188, 64, 66, 66, 66,147, 62,195, 13,169, 61, 87,200,137,245, 53,164,246,130, 81,122,179,103,207,102,206,156, 57,
-136,162,200,139, 47,190,200,211, 79, 63,205,232,209,163,153, 61,123,118, 64, 54,159,121,114, 12,219,183,111, 71, 88,215,  6,128,
-175,158,137,230,214,231,171, 24, 61,122, 52, 47, 44,113, 40, 52,127,213,169, 52,111,207,161,240, 86,179, 99,199, 46, 68, 65,100,
-193,252,  5,244,236,217, 83,246,185, 45, 91,182,140, 89,195,181,117, 21, 30, 14,123, 73,183,182, 11, 73,172,180,185,144,158, 87,
-226,115, 85,122,131,  7, 15,174, 23,239,147,227,138,112, 39,171, 80, 41, 63,201, 94, 99,184, 55,165,235, 13, 25, 89, 53,241,131,
-211, 88,144, 92,184, 18,  1,101,103,103,215, 83,126,222,190,115, 71,114,114, 50,185,185,185,216,108, 54, 42, 43, 43,177, 88, 44,
-206,184,158,209,104,116, 78,149,144,  6,188,248, 19, 91, 74, 79, 79, 39, 59, 59,219,169,250, 92,159,219, 45, 91,182,120,220,238,
- 13,215, 58,198,231,238,254,244,117, 63,188, 33, 51, 51,147,197,139, 23, 51,115,230, 76, 62,254,248,227,128,238,185,123,125,147,
- 62,191,152,112, 23,191, 27,187,134,187,183,120,159,192, 62,113,226, 68,206,156, 57,227,113,190,161,132, 51,103,206,  0,254, 77,
-104,207,200,200, 38, 35, 99, 60, 19, 38,228, 53, 24,111, 44, 45, 29, 15,232,201,204,244,221,110,101,102,102, 58,203, 81, 82,157,
- 95,125,245,149,131, 20,  2, 36, 61,149, 74,112,116, 84, 37,210, 59, 98,229,223,219,204,  0,188,176,100,135,236, 54, 66,170, 19,
- 15, 62,248, 32,162, 40,178,224,177,  5,244, 76,235, 25,208,185, 45,124,226,143, 87,236,129,122, 86,133,211, 94,187, 91,219, 59,
- 60,175,205,168,233,106,104, 48,203,198, 85,207,201,154,203,167,241,229,250,113, 29,204,226, 58,  2, 78,110,140,170, 49,221,158,
-193,206,223, 83, 16, 60, 92, 93,133,174,141,175, 52, 31,212,253, 59,111, 49,130, 49, 99,198,176,105,211, 38,172, 86, 43,229,229,
-229,206, 24, 31, 64,113,113, 49,229,229,229,136,162,232,204,132,227, 15, 30,125,244, 81, 94,127,253,117, 39,  1,186,199,244, 30,
-125,244,209, 38,239,156, 24,246, 60, 34,155,232,188, 53,218, 13, 17,227,188,121,243,  2, 34,189,134, 72,229,234, 96, 23,121, 29,
- 80,111, 41,177,206,158, 61,235,236,152,248,219,206,184,134,100,234, 95,119,186,236,242, 43, 45, 45,229,171,175,190,170, 23, 47,
-147,139,204,204, 76,236, 31,199,241,213, 17,199, 96,150,247,182,153,249,104,143, 25, 81, 20,217,181, 55,112,119,238,206,157, 59,
-153, 63,127,126, 64, 10,207, 21, 82,221,250,120,175,133,249,243,231,211,110, 98,123, 23,134,189, 62,219, 43,141,183, 10, 34, 77,
-232,118,239, 61,203,113,117,122,170, 32,161, 36,191,198,178,237,154,182, 44, 16,100,100,100,120,141, 27,201, 37,234,134,220,154,
-129,186, 59, 27,114,107,  6,226,238,116, 29,184,227,222, 56,120,251,206, 91,111,118,202,148, 41,100,101,101,161,211,233, 48,153,
- 76, 88,173, 86,236,118, 59,173, 91,183, 70,175,215,203, 30, 93,124,195, 13, 55,176, 98,197, 10, 54,111,222,236, 28,193, 41,205,
-235,107,206,153, 66, 66,141,175,191,254,154, 41, 83,166,176,113,227,198,144,144,158,107,227,158,183,104,145, 95,222,151,133, 11,
- 23,214,235, 84,187,227,137, 39,158,240, 59,198,151,153, 25,231,211, 94,102,166, 60,239, 77,160,105,221,188, 97,226,243, 85,117,
- 62,  7, 67,122,111,189,245, 86,200,158,137, 87,254,246,170, 67,221, 53, 99, 52,164,230,  2,205,220,226,115, 58,131,156,237, 77,
-137,230, 54,127,175,161,  1,  1,129, 17,112,232, 26,230, 25, 51,102,200, 78, 67,230, 13,146, 59, 88, 34,114, 79,238, 97,247,239,
-252, 45,151,217,179,103,115,250,244,105,182,109,219,134,193, 96,192,102,179, 49, 96,192,  0,102,204,152, 17,240,253,158, 48, 97,
-  2, 19, 38, 76,112,246,116,  3, 81,121,141, 29,227,243,245,217,159, 70,219,211,104, 63,185,147,163,225, 74,254,205, 53,167,185,
- 59,177, 62,241,253,190,114, 32,191, 27,247, 17,154,204, 89,206,  9,236,210, 62,222, 20,189, 63,247,127,252,248,241,178,234, 90,
- 40,246,113, 45, 63, 65, 16,184,227,142, 59,156, 57, 68,131,133,106,166, 30, 65, 16,152,246,203,185,206,206,157, 52,109,193, 61,
-  5,217,181,198,224, 57,131,126,118, 30,170,235, 34, 73,117, 40,122, 99,205,181,215, 31,234,243, 10,117,194,233,198, 46,183,212,
-212, 84, 82, 83, 83, 61,126,103, 54,155, 81,171,213,168,213,234,107,248,172, 45,111,230,246, 26,174, 11,115,230,204,145,109, 79,
-220,228,200,191, 41,133, 55, 92,241,187,113, 31,129,136, 44,151,243,207,161, 45,241,108, 83, 94,176,236, 90, 78, 23,104, 78,185,
- 55,175, 21,132,169,115,158, 85,214,102, 81,160, 64,129,  2,  5, 63, 27, 40, 43,176, 43, 80,160, 64,129,  2,133,248, 20, 40, 80,
-160, 64,129,130,235, 21, 26,165,  8, 20, 40, 80,160,224,218, 64,104,232,131, 88,231,143,  2,133,248, 20, 40, 80,160,224, 58, 33,
- 61,  1,  4,199,127, 13, 64,148,254, 41,184, 86,196,119,251,168,228,128, 13,121, 26,133,164,216, 83,236, 41,246,174,157,189,123,
-167,245,173,243, 89,165, 82, 57,167,107,184, 14,153,151,178,223,184, 14,161,255, 96,253,209,122,246,202,207,110, 35, 60, 60,220,
-121,188,180, 92,148,187, 61, 41, 97,184,221,110,  7,192, 98,177, 16,221,105,180,114,127,101,217, 19, 80,107,194, 16,237, 86,236,
-118, 43, 27,119, 95,192,125,134,131, 47,123,162, 40, 82, 84, 84, 68,187,118,237, 66,114,126,161,182, 39,183,252, 20,197,215,136,
- 88,188,120,127,157,207, 47,188, 48,172,121,217,219,191,216, 97,103,216, 11,117,222,  7, 11, 95, 25, 62,124,125, 31,172,125,  5,
-245,161, 50,215,160, 41, 61, 67, 15,227, 17, 58, 90,207,115, 74,236,198,133,232, 27,168,141,233,130, 46, 50,218,231,241,187,119,
-239,102,228,200,145, 78,194,147,136, 74, 16,132,122, 68,101,183,219,157,175,115,231,206,121,180,247,221,119,223, 49,120,240, 96,
- 34, 34, 34,208,104, 52,168,213,234, 58, 54, 37,178,179,217,108,206,151,201,100, 34, 39, 39,135,177,157, 70, 95,183,247, 73, 20,
- 69, 74, 75, 75,217,187,119, 47,173, 91,183,246, 56,103, 82,150, 18, 20, 84,132,133,199,211, 58,174, 39, 53,213,  5, 84, 87,157,
-191,162, 10,253, 87,127,118,187,157,117,235,214,113,234,212, 41,  0, 34, 34, 34,120,252,241,199,  3, 62, 39,201, 94,222,233, 92,
-212,106, 53,186,176, 48,230,207, 95,208,164,243, 13, 21,226,  3,159,217,246,193,191,164,195, 18, 49,185, 19, 86,160,  8,181, 61,
-  5,245,  9,213, 21,215,  5,185,138, 34, 85,231,126,164, 98,231, 90,106,107, 77,116,189, 73, 69, 68,178, 64,143,252, 35, 12,229,
- 48,122, 83, 20,223,183,186,151, 18,161,163, 87, 51,199,143, 31, 71,173, 86, 51,106,212, 40,231,106,245, 26,141,198, 73,132,146,
-202,179, 90,173,216,108, 54, 44, 22, 11,231,206,157,227,235,175,191, 70,221,102, 72, 61,123,181,181,181, 28, 58,116,136,155,111,
-190, 25,157, 78,135, 86,171,173, 99,211,110,183, 99,181, 90,177, 90,173, 88, 44, 22, 12,  6,  3,135, 14, 29,162,186,186,250,186,
-123,238,158,126,250,233,122,109, 75, 85, 85, 21,  3,  6, 12,  8,137,189, 15, 87,231, 16, 17,209, 22,181, 90,231, 32, 62,  1,135,
-226, 19,240,139,249, 10, 11, 11,169,174,174,230,158,123,238, 33, 37, 37,197,153,110, 45, 62, 62,158, 33, 67,134,120, 61,246,190,
-137,245,147,  5, 28, 61,113,130,237,209,173,120,108,233,255, 99,224,160, 27,185,120,225, 50, 95,109,218, 78,215, 27,  7, 82, 89,
- 89,113,125, 18,159,123,138, 41, 95,159,155,130,244, 30,122,232, 33,175,251,232,245,122,214,172, 89,227, 23,249, 73, 36, 21,172,
- 58,107, 12,123,174, 74, 47, 20,106,207,211,162,184,190,246,109,138,251, 44, 41, 70,215,191, 18,202,202, 28,147,230,227,227,183,
-112, 61,192,124,254, 56, 97,123, 62,196, 84,107,231,206,238,106,122, 38, 90,177,199,139,104,227,213, 84,149,234,136,168, 50,208,
-251,240,155,228,164,205,163,182, 85, 23, 47,202, 65,224,199, 31,127, 68,167,211,241,139, 95,252,194, 73, 86, 90,173, 22,149, 74,
-229, 92,192,215,106,181, 98, 50,153, 56,127,254, 60,219,182,109,195,102,179,225, 41,  5,128, 74,165,194, 98,177,112,248,240, 97,
- 70,141, 26, 69, 68, 68,  4, 97, 97, 97, 78,123, 18,241,153, 76, 38,170,171,171, 57,122,244, 40, 70,163, 81, 86, 66,129,179,103,
-207,114,254,252,121,170,170,170,208,233,116, 36, 37, 37,209,163, 71, 15,167,139, 85, 46, 66,109,207,110,183,243,204, 51,207,212,
- 89,241,226,233,167,159,230,248,241,227,180,109,219,150, 54,109,218,  4, 68,122,255,186,255,126, 38, 15, 28,  8, 64,187, 63,252,
-129,136, 86, 73, 84, 87,230, 83, 89,113, 26, 81,180, 57,146, 90,219,241, 91, 97,197,199,199,147,144,144,192,  7, 31,124,192,111,
-126,243, 27,214,175, 95, 79,124,124, 60, 59,119,238,196,108, 54,  3,157,189, 30, 95,250,215,199,234,124,142, 50, 91,232, 96, 53,
- 50,127,225,159, 88,250,202, 95,248,219, 43,111,209, 81,101,227,173, 87, 94,227, 23,179,238,241,105,175,177, 32,165, 40,115,133,
-220,116,101, 62, 21,159,123,126, 62, 95,159,175, 37,154,235,146, 65,141,  5, 87,242, 11,  6,174,157,151,127,223,241, 65,131,251,
-253,246,179,123,155, 84, 77, 73,191,237,254,215, 23, 89,183, 52, 24,203, 75, 72, 59,243,  5,151,213, 54,186,199, 66,151,206, 34,
-234,126, 58, 52, 41, 41,232, 76, 70, 76,223,156,199, 84,161, 65,109,215, 98,220,242, 33,170,201,143, 98,215,120,118,123, 74,110,
-200,220,220, 92,226,226,226, 24, 55,110, 28,225,225,225,232,116, 58, 52, 26,141, 83,229, 25,141, 70, 10, 11, 11,217,177, 99,  7,
- 42,149, 10,149, 74,229,213,158,205,102,227,216,177, 99,140, 28, 57,146,152,152, 24,194,195,195, 81,171,213, 88,173, 86,204,102,
- 51,149,149,149, 28, 56,112,  0,147,201,132, 70,163,113,198,250,124,225,200,145, 35,236,217,179,135, 51,103,206, 80, 89, 89,137,
- 78,167,163, 93,187,118, 12, 25, 50,132,225,195,135, 19, 25, 41, 47,203, 80, 40,237,217,237,118,231,162,200,238,144,150, 40,154,
- 62,125,186,108, 66, 85,169,117,245,182, 93,250,251,223,105,247,171,100,254,246,183,215,177, 88,106,174,148,189,128, 93, 20, 65,
-116, 72, 62, 95,244,183,123,247,110,190,253,246, 91,158,124,242, 73,212,106, 53,119,222,121, 39,157, 58,117, 98,219,182,109,108,
-218,180,137,155, 38,202,200,206, 34,  8,172,202,189,200, 39, 63, 21,176,254,243,247, 81,171,  5, 30,251,195,175,233,223, 46,129,
-149,243,255,196, 59,114,237, 53, 34,233, 73,219, 67,154,171,211,123,217, 52,109,218,238,126,253,250,249,220, 71,242,119,183, 84,
-181,215,144,234,107, 41,174,200, 96, 20,163,183, 24,225,245,162,244,  0,202,142,125, 71, 97, 65, 37, 29, 90,107,208,218, 45,104,
- 18,236,104,110,153, 68,120,187,103,177, 91,243,225,135,223, 32,158,174,164,180, 86, 71,103,117, 45,135,143,236, 33,118,208,196,
-  6,137, 74,163,209,160,213,106,249,233,167,159, 72, 72, 72, 96,252,248,241, 68, 70, 70, 58,  9,201, 96, 48,112,242,228, 73,118,
-238,220,137, 90,173,118, 18,162, 39, 72,223,235,116, 58,108, 54, 27,167, 78,157, 98,236,216,177,196,199,199,163,213,106,177, 88,
- 44, 84, 84, 84,112,240,224, 65, 44, 22, 11, 90,173,214,233,250,244, 71,153,109,222,188,153, 75,151, 46,145,154,154, 74,187,118,
-237,168,169,169,225,196,137, 19,124,253,245,215, 68, 70, 70, 50,104,208, 32,191,137,229,236,217,179,108,222,178,149,162, 10, 51,
- 49,221,111,166, 93, 98, 39, 44, 53, 21,148,252,116,144,205, 91,182,202,178,103,183,219,169,172,172,228,212,169, 83,156, 61,123,
-150,126,253,250,241,244,211, 79, 59, 85,159,228,166,148, 67,122, 42,181,142,136,136,  4, 34, 90,181, 35,235,163, 35,204,158,213,
-143,127,221,127, 63,  0,247,255,235, 95,  0, 78,210,  3, 80,  9,160, 18,  4,108,130,239, 32,223,166, 77,155,216,180,105, 19,139,
- 23, 47, 38, 58,218,209, 41, 90,185,114, 37, 67,134, 12,161,164,164,132,180,180, 52, 89,207,228,235,135,126,226,245,239, 78,241,
-249,191, 95, 70,163, 54, 32,216,108,188,188,236, 95, 76,155, 60,158, 66,149, 38,232,213, 32,130, 33, 61,119,130,107,136, 12,  3,
- 38, 62, 95,196,118,189,  4, 57, 91, 26,  1,182,136,198,188, 44, 61,104,146,106,136,244, 92,149,223,245, 16,223,139, 49,150,178,
- 41,223, 72, 71,189,154,129, 49,  2,137,197,208, 93, 19,139, 74,104,131,104, 44,162,166, 72,224, 88,190,157, 75, 53, 70, 52, 42,
- 21,216, 79,129, 31,196, 23, 22, 22,198,233,211,167,233,216,177, 35, 19, 38, 76, 64,173, 86, 99,183,219, 41, 45, 45,101,247,238,
-221,104,181, 90,116, 58,157, 51,223,169,189,  1,123,146, 77,157, 78,135, 40,138,228,229,229,209,189,123,119, 98, 99, 99,169,174,
-174,230,208,161, 67,216,108, 54,194,194,194, 48,153, 76,152, 76, 38,191, 58,197,  7, 14, 28,224,194,133, 11,244,239,223,159,177,
- 99,199,146,156,156, 76, 77, 77, 13,137,137,137,108,217,178,133,189,123,247,202,114, 81, 30, 56,112,128,162,178, 10,226,211,110,
- 38,101,212, 76, 90, 39,167, 97,170, 41, 39,255,219, 47,248,105,235,251,178,236, 73,177,205,194,194, 66,146,146,146, 72, 75, 75,
-227,200,145, 35, 78,194,115, 37, 64,111,139,254, 58, 59, 16,154,112, 90,199,245,164,117,124, 79, 84, 42, 45, 22, 75, 13,239,254,
-123, 27,247,255,118,156,211,222,  3, 15, 60, 64, 98, 98,162,211,158,163, 12,175,180,177, 94,226,124,187,119,239,102,195,134, 13,
- 60,244,208, 67,180,111,239, 88, 97, 97,235,214,173,156, 61,123,150,136,136,  8, 34, 34, 34,152, 50,101, 10,123,142, 27,252, 42,
-199,213, 39,207,243,234,129, 19,252,243,165, 69, 36,247,236, 66, 77,181,158,207,255,123,128, 35, 71, 79,210, 90,180,163,187, 84,
-196,148, 71,102,243,205, 49, 67,139,174,119,154,134, 26, 23,215,229, 69,124,125,110,201,  8, 37, 49, 53,134,189, 80,186, 57, 27,
- 91,225,249,187,143, 63,132,245,115, 25, 21, 90, 92,114,158, 61, 23, 13, 76,105,213,138, 93,231,237,116, 24, 20, 70, 55, 83, 14,
-250,227, 15,241,217,203, 71,176,159,173,160,218, 44, 82, 80,101, 35, 66,163,194, 90,113,137, 88, 47,157, 85, 87,242, 11, 15, 15,
-231,220,185,115,156, 56,113,130, 62,125,250,160,215,235,217,183,111,159, 51, 86,231, 43, 30, 39,  8,130, 83,245, 73,246, 68, 81,
-228,252,249,243,244,237,219,151, 45, 91,182, 96,183,219,  9, 15, 15, 71,171,213, 58, 71,125, 54,228, 58,117, 69,126,126, 62, 70,
-163,145,193,131,  7,147,156,156,140, 90,173, 38, 38, 38,134,155,110,186,137,125,251,246,145,159,159,143,201,100,242,187, 28,243,
-243,243,177,171,116,116, 28,144, 78,235,228, 52, 84,106, 45, 17, 49,137,116,190,105, 10,231,246,173,247,219,158, 40,138,148,151,
-151, 83, 80, 80, 64,231,206,157, 25, 49, 98,  4,106,181,218,233,222,252,205,111,126,227,220, 55, 54, 54,214,175,115, 11, 15,111,
- 67,155,196,254,152, 77, 21,148,148, 30,194,100,210, 99,177, 56,  6,  0, 73,246,138, 46, 93,170, 99, 79, 16, 28, 47,111,184,120,
-241, 34, 89, 89, 89,204,158, 61,155,190,125, 29, 83, 89,190,250,234, 43, 54,109,218,196, 83, 79, 61, 69, 82, 82,146,203,222,190,
-167, 11,156,170,172,101,209,142,239,121,233,143,153,140,154,154, 78, 77,117,  9,107, 63,221,193,138,119, 63,225,191,143,221, 71,
-202,229, 11, 44,169,188, 68,124,124, 27,191,236,133, 18,158, 92,153,129, 46, 73,228, 85,241,185,199,238,124,125,190, 30,209, 88,
- 83,  9,228,226,249,161,207, 55,219, 21,220,221,201,201, 19, 17, 54, 94,198,251,150,143,195,101,  6, 42,204,118, 14, 23, 91, 41,
- 44,183,146,180, 79, 67,191,181,185,156, 59,123,140,147,223,154,177,106,212,152,237, 96, 52,139,232, 69, 59,137,113,162, 87,162,
-114,157,198, 32,141,192, 44, 42, 42,162, 75,151, 46,156, 61,123,214, 57, 45, 65,163,209, 56,247,151,251,108,185,206,  1,148,254,
- 54,215,231, 83, 46,236,118, 59, 53, 53, 14,151, 99,183,110,221,234,117, 12, 14, 30, 60,  8, 64,207,158, 61, 89,180,104, 17, 75,
-150, 44,241,185,192,182, 32, 56, 58,  2,134,218, 34,170,171,206, 99,179, 25,235,217, 91, 15,228,230,230,210,189,123,119,135, 61,
- 17,188, 57,213,244,122, 61,127,255,251,223,153, 50,101, 10, 35, 71,142,  4,224,155,111,190,225, 63,255,249, 15, 15, 63,252,176,
- 27,233,249,198,197, 90, 19,191,222,180,143,249, 51,166, 48,253,215,119, 81,107,172,228,179,245,219, 89,246,214,106, 62,184,117,
- 40, 41,151, 47, 52,155,123,228,234,222, 12,132,244,188, 18, 95, 99,168,130,230, 58, 74,180,185,163,165, 53, 42,193,198,224,164,
-231,193,219,115,113,189, 40, 66,131, 45,  6,139,112,137,131, 37, 38, 52,  2,108,205, 51,210, 46,219, 78, 77,251,182,228,234,170,
-209,232,245,152, 80,209, 74, 13,136, 34, 97,109,218,249, 36, 36,105,126,158,205,102,195,106,181,210,166, 77, 27,162,162,162,232,
-210,165, 11, 63,252,240,131,115,187,167,137,236,238,246,164,249,121, 86,171, 21,131,193,128, 40,138,116,234,212,137,130,130,  2,
-218,183,111,207,177, 99,199, 48,153, 76,152,205,102,231,239,250, 19,  6,233,220,185, 51, 23, 46, 92, 32, 39, 39,135,232,232,104,
-167,171,243,219,111,191,165,186,186,154,206,157, 59, 19, 22, 22,230,119, 57,118,238,220,153,162,195,199, 40, 56,180,133,176,232,
- 54,117, 92,157,230, 26,189,223,246, 92,207,189,182,182, 22,187,221,238, 84,176,146,234,147,208,179,103, 79, 42, 42,124, 15,237,
-183, 90, 13, 88, 45,213, 68, 68,182, 35, 60, 34,158,154,234,139,128, 88,207,222, 59,239,188,227,180,103, 23,197,122,196, 87, 90,
- 90,202, 23, 95,124,129,193, 96,224,196,137, 19,204,156, 57,147,155,111,190,217,169,254, 54,108,216,192,194,133, 11,233,214,173,
-155, 95,101, 86, 90, 90,202,166, 77,155,248,223,231,159,241,245,182, 29,252,191,223,207,224, 87,247,205,164,214, 92,205,153, 51,
-231, 89,177, 98, 45,255,185,125, 56,131,218,198, 53,219,250, 19,200,192,150,107, 70,124, 18,154,235, 40,209,197,139,247,123,116,
- 81,  6, 58,149,160, 33,123,251, 23, 59,108, 13,123,225,  5,143,159,189, 41, 79, 79,191, 29,168,189,107,161,  0,131, 37, 38, 95,
- 83, 22,174,151, 78, 82,247, 30,221,185,124,238, 52, 23,106,236, 84,138, 34, 63,234,205,100,229,138, 24,206, 20, 82, 86,109,165,
- 75,132,  0,130,141,139, 34,180,210,192,248,212,238, 13,142,117,144, 72, 79, 26,109,105, 48, 24,104,223,190, 61, 55,222,120,227,
-149,178,140,103,216,176, 97,172, 91,183, 14,179,217,236, 36,171,134,136, 74, 34, 50,139,197,130,217,108, 70, 16,  4, 82, 83, 83,
- 41, 47, 47,167,166,166,  6,171,213, 74,215,174, 93, 57,119,238, 28,102,179, 25,147,201,228, 60,198, 23,134, 14, 29, 74,126,126,
- 62,199,142, 29,195,104, 52,214, 25,220,162, 86,171,185,229,150, 91,156,  3, 53,252,193,208,161, 67,201, 63,127,129, 75,121,223,
- 99, 49,213, 18,213,182, 51,150,154, 74, 74,126, 58, 72,152,202,238,183, 61,141, 70, 67, 82, 82, 18, 49, 49, 49, 28, 62,124,152,
-136,136,  8, 18, 18, 18,  8, 15, 15,175,227,194, 61,120,240, 32,  7, 15, 30,164, 79,159, 62, 62,109,154, 77, 21, 84,148,231, 18,
-159,208,151,214,241,189,  0, 21,102,147, 30,171,245,106,156,172,240,219,127, 80,248, 45, 76,232,117,165,236,197, 43, 99, 57, 69,
-156,241,189, 47,190,248,130,136,136,  8, 82, 82, 82, 48, 26,141, 78,210,147,212,223,156, 57,115,252, 38, 61,128, 77,155,190, 32,
- 38, 38,154,209, 99,110,162,172,162,140, 59, 30,186,159, 26, 67,  5,197, 69,101,204,251,195,115, 44, 25,210,189, 89,146,158, 68,
-116,146,242,187,166,163, 58,127, 78,170, 38, 84, 49,182, 97, 47,188,192,254,197,139,157,  4, 21, 44, 73,  5, 98,207,213, 21,249,
-219,207,238,149,165,212,155, 10,174,231,225, 62,191,175,165,163,232,230, 43,225,  0,  0, 32,  0, 73, 68, 65, 84, 99,218, 13,244,
- 61,150, 67, 23,125,  5, 37, 54, 59,149, 70, 43, 97,162,136,104,178,210, 57, 74,131,222,106,165,160,198, 49, 74,114, 74,143, 36,
- 34,187,222, 64,181, 23, 55,157,235,148,133,190,125,251,210,191,127,127,244,122,189,115, 84,103,116,116, 52, 55,223,124, 51,159,
-125,246,153,115, 78,159,221,110,247,152, 58, 82, 34, 81,139,197,130, 32,  8,164,165,165, 97, 48, 24, 40, 46, 46,118,142,  6, 53,
- 26,141,164,165,165,113,249,242,101,167,189,134, 70,137,186,162,107,215,174, 76,152, 48,193, 57,253,224,240,225,195,117,166, 31,
-244,239,223, 95,214,168,201,174, 93,187, 50, 33,125,188,195,222,233,111, 41, 60,180,249,170,189, 17,191,144,101, 47, 38, 38,134,
- 65,131,  6,241,205, 55,223,176,103,207, 30, 58,118,236, 72,215,174, 93,137,140,140,228,233,167,159,230,141, 55,222,160, 75,151,
- 46, 12, 25, 50,132,215, 94,123,141,217,179,103,251,112,159, 90,168,208,231,130,  8,177,241,105,180,235,112, 11,  6, 67,  9,213,
-149,231,248,219, 43,111,240,151, 63, 63, 77,135,100, 88,243,104, 43,132, 25,122,198,221, 11,118,187, 67,241,185, 78,100, 56,117,
-234, 20,227,199,143,103,228,200,145,116,233,210,133,218,218, 90, 68, 81,228,205, 55,223,100,230,204,153,206, 14,142,191, 56,121,
-242, 20,211,239,250, 37,179,102, 77,227,198,190, 61, 41,173,170,160,186,162,132,185,255,247, 28,207,221, 49,158,241,246,218,102,
- 93,119,166,206,121, 54,244,163, 58,175, 53,177,201, 25, 37, 58,125,250,244,144,101,110,241,133, 80, 79, 37,144,200, 42, 84,202,
- 76,174, 61,127, 21, 89, 83, 19,139,171,210,115, 61, 15,247,121,125, 45, 29, 29,186,165, 98, 28, 54, 10,235,254, 77,156,173,128,
- 40, 65, 75,151, 40, 21,  5, 54,  1,117,152,134,157,151,109, 24,237,144, 24,166, 38,117,200,104,170,227,186,122,105, 96, 29,234,
- 76,173, 86,211,173, 91, 55,  6, 13, 26, 68,101,101, 37, 70,163,209, 73,124,102,179,153,248,248,120, 70,142, 28,201,134, 13, 27,
-176, 88, 44,216,108, 54,143, 13,129,205,102,115,102,125,233,221,187, 55, 54,155,205,105, 79,170,207,146,114,236,221,187, 55,101,
-101,101, 84, 87, 87,251, 93,151,251,245,235, 71, 76, 76, 76,200, 38,156,135,202,158, 74,165,162, 67,135, 14, 76,156, 56,145, 51,
-103,206,112,226,196,  9,242,243,243,137,142,142,166,117,235,214, 76,152, 48,129,127,254,243,159, 62, 51,162,212,117,119,214, 82,
-174, 63,137,209, 88, 70,235,184, 52,162,162, 59, 17, 29,211,153,154,170,  2, 94, 90,242, 46,119,207, 74,103,205,163,173, 92,238,
-229, 21, 23,180,203,108,134,201,147, 39,179,105,211, 38, 46, 92,184, 64, 89, 89, 25,211,166, 77,227,253,247,223,103,216,176, 97,
-244,234,213, 75,118,121, 77,153, 50,153,207, 62,219, 64,101,121, 41, 23, 10, 47,242,232,195,247,178,240,201, 23,185,227, 23,195,
- 25,105,170,  4,109,243, 73,236, 21,204, 64,150, 38, 35,190,198, 24, 37, 26, 10, 82,147, 80, 82,242, 46,139,247,127,238,213,165,
- 41,103, 80, 75, 73,201,187,236, 95,252,185, 71, 21,230,170,206,246, 47, 94,236, 23, 89,149,188, 91,194,254,207, 23,135,204, 94,
-115,199,207, 45,214,219,117,248, 56,142,152,172, 20,127,189, 21,173,213,192,145, 42,145, 45, 85, 86,116,130, 64, 27, 81,100, 92,
-251,214,140,185,117, 60,241,131,199,250, 80, 22, 14,197,215,181,107, 87,134, 13, 27,134,193, 96,192, 98,177,160,211,233,156, 68,
- 37,169,178,196,196, 68, 70,140, 24,193,151, 95,126,217,160,107,210,110,183,163,209,104,232,223,191, 63,130, 32, 80, 91, 91,235,
- 84,147, 82,103, 85,202,  6, 99,183,219,233,219,183, 47,251,246,237,187,146, 41,196,127,165,214,181,107,215,208,149,101,136,236,
-169, 84, 42, 90,183,110, 77,223,190,125,233,216,177, 35,122,189,158,226,226, 98,  0, 10, 10, 10,184,237,182,219,120,237,181,215,
-100,217,180,217, 76,212, 84, 23, 96, 54, 87, 16, 81,121,150,152,214,169,180,138,234, 64,171,168, 14,124,181,181,  8, 97,124,146,
-139, 16,184,242,215,229,248,225,195,135,163,211,233, 40, 43, 43, 99,242,228,201,180,105,211,134,123,239,189,151,237,219,183,  7,
-116,141,183,220, 50,156,176,176, 48, 98,142,231,240,240,195,191, 35, 57,173,  7, 47,207,255, 29,239,189,245, 62,111,170,141,205,
-190,222,  4,170,246,174,169,226,107,206,163, 68,189, 53,180,129,168,189,134,236,121,138,201,249, 67, 86,161,182,231, 15,185,  4,
- 75, 62,202, 64, 37,121,141,236,128,241, 19,105,211, 33,153,226, 31,127, 64,125, 46,143,238,150,139, 68,183, 73, 98,120,223, 94,
-244, 25,124, 35,134,118,190, 39, 13,139,162, 72,183,110,221, 24, 57,114,164, 51,222,166, 86,171, 49,153, 76,206, 20, 99,174,238,
-208, 78,157, 58, 49, 98,196,136,  6, 27,206,136,136,  8,  6, 12, 24,128, 70,163,193,108, 54, 59,143,115, 29,233,232,154,160, 90,
-165, 82, 49,112,224, 64,114,114,114,174,155,123,163,209,104,104,219,182, 45,109,219,182,165,103,207,158,216,237,118,106,107,107,
- 49,153, 76,140, 28, 57,146,197,139,229,182, 15, 34, 22,115, 21, 22,115, 53,  6, 67, 49, 97, 97,113,104,117,209,168, 84, 26, 86,
-101,125,193,156,217, 83,174,118, 42, 60, 28, 45,169,204, 87, 95,125, 21,131,193, 17, 35, 76, 75, 75,147,149, 38,206, 21,131,  6,
- 13, 70, 61,116, 40,247,255, 89,178, 39,146,150,214,147,180, 95,253, 10,141,166,249, 40, 62,201,173,121, 77, 82,150, 41,  8,237,
-244,  5,119, 66, 10, 86,157,133,218,158,130,166, 69,167,222,125,232,212,219, 49, 88,194,117,109,  3,127,167, 10,103,100,100, 16,
- 23, 23,231, 28,177, 41,141, 72,116,157,178, 32, 13,102,145, 86,104, 72, 77, 77, 69, 16,  4,118,255, 80, 83,207,222,178,101,203,
-200,206,206,118,238,107,179,217,124, 46, 75,164,211,233,100,185,  0, 91, 98, 39, 37, 42, 42,138,168,168,168, 32, 59,120, 18,  1,
- 86,161, 82,105,  0, 21, 96,119,218,243,229, 44,150, 86, 94,112, 29,117, 26, 40,108, 54, 59, 11, 22, 44,  8,153,189,198, 38,191,
- 96, 73, 15, 64,152, 58,231, 89,101,205, 67,  5, 10, 20, 40,184, 70, 16,156,255,213,227, 66,101,  1,218,107,165,228,149, 34, 80,
-160, 64,129,130,107,  7,209, 31, 73,167,160,113,149,187, 82,  4, 10, 20, 40, 80,160, 64, 33, 62,  5, 10, 20, 40, 80,160, 64, 33,
- 62,  5, 10, 20, 40, 80,160,160,229,163, 78,140,239,246, 81,201,  1, 27,218,176,171,126, 18, 83,197,158, 98, 79,177,167,216, 83,
-236, 41,246,  2,177,119,205,136, 15,188, 47, 51, 19,232,130,162, 45,213, 94, 32, 54,155,251,245,182, 84,248,147, 62,205,223,172,
-237,215,106,  5,137,230, 86,126,202,220, 74,  5, 10, 26, 32, 62,  0,113,109,253,196,164,194, 12,125,192, 63,210, 80,118,253,230,
- 98,207,211,245,  6,115,205,205,253,122, 37,148, 21,231, 82, 92,124,145,162,146,106, 42, 42, 44,196,198,106, 73, 74,136, 34, 49,
-177, 61,241,137,221,101,219,251,110,239, 91,228,157, 62,197,233,179, 70,206, 95, 20,233,212, 94, 32,181,107, 56, 41,169,105, 12,
-186,229,161, 70,127,152, 93,201,110,227,170,231,184,125,212, 10,191,  8, 52, 51, 51,179, 89, 16, 67, 94, 94, 30, 75,150, 44,169,
-179,109,209,162, 69,205,106,  9,176, 80,150, 83, 75,184, 94,  5, 63, 35,226,251, 57,194,149,228,  4,  1,236, 31,199, 93,183,215,
-106, 49,215,112, 62,255, 40,102,179,133,238,221, 90, 51,118,100,103, 90,199,134,161, 47, 55, 82,112,177,154,159,242, 46, 82, 94,
- 81, 66,167,206,125,209,234, 34,125,218,211,151,156, 98,207,142,119, 80, 83,201,204, 41, 48, 98, 48,164,118,129,220,179, 34,187,
- 15, 26,216,180,237, 48, 95,124,178,144,225, 99, 30, 32, 46, 33, 45,100,228,239, 47,  9,250, 82,141, 82,210,235,166, 36,191,134,
- 58, 50, 18, 49, 52,  7,181,230,186, 92, 84,176,231,211, 18,174, 87, 65,243, 67,168, 38,176, 43,131, 91, 60,168,190,235,153,244,
-  0, 46,228, 31, 37, 41, 33,156, 59,167,164,209,191, 79, 91,218,196, 69, 32, 32, 16, 19, 21, 70, 90,106, 60, 19,198,116, 37, 49,
- 62,140, 11,249, 71,253,178,183,103,199, 59,140, 26, 92,201,218, 55,225,254, 12,232,149,234,216, 30,217, 10,122,119,135,255,183,
-  0,110,238, 95,201,158, 29,239,  4,213, 80,134, 66,229, 54,212,160, 54,101, 67,235,122, 93, 43, 86,172,168,243, 10,133,194,119,
- 95,223, 48, 20, 68, 21, 42, 91,193, 92,111,160,105,186, 20,180, 76,194,243,148,174, 44,208,124,157, 10,241,185, 43,191,235,252,
-250,202,138,115,177, 88, 44, 12, 27,212,190,238,131,160, 18,208,233,212, 68,132,107,208,106, 85,164,118,139,195,108,182, 80, 86,
-156,235,213,222,119,123,223, 66, 77, 37, 11,238,  7,163,  9,206,156,  7,125,  5,148, 87,194,234,245,240,135, 63,195,211,175,192,
-240, 65,160, 18, 43,249,110,239, 91,202, 67,230,  2,247,100,237,222,  8, 89,110, 34,119,119, 21,235,170,108,131,237, 48,  4, 74,
-202,158,174,119,243,230,205,108,217,178, 69,246,245, 54,167, 92,146, 10,174, 13,166,206,121,182,206, 43, 80,242,107,145, 79, 78,
- 40,122,254, 13, 42,191, 70, 60,191, 80,185,210,124,245,224,189,253, 70,113,201, 69,122,166,198, 59,201,206, 19,194,195, 52,148,
- 87,152, 72, 75,141,231, 84,222, 69,175,241,190,188,211,167,152,233,200,171,203,255,118,194, 63, 62,132, 91, 71,193,228,177,112,
- 34, 23, 14, 29, 19,137,  8, 23, 24,216,  7, 38,142,129, 79,191, 60,197,160, 91, 66,167,212,  2, 41,187,198,138,153,  6,  2,127,
- 92,123, 18, 97, 45, 89,178, 68,118, 57, 52,228,214, 13, 84, 45,187,151,159, 92,247,167,251,245,110,222,188,185,206, 18, 99,233,
-233,233,126, 95,175, 70,163,193,100, 50, 41,108,240, 51, 33,188, 80,194, 35,241, 53, 52,168, 35,144,134,214, 23, 17,200,181,119,
-173, 93, 82,129,140,  0,244, 54, 88, 38, 16,123,158,142,  9,116, 64, 78, 81,113, 53,227, 70,116, 70, 20, 97,215,222,243,212, 26,
- 44,  0, 12,234,223,142,196, 54, 17,156, 47,168, 34,247,140, 30,141, 70, 69,143,148, 56,190,249,182,134,158,189, 27,182,119,250,
-172,145, 17,131,193,100,129,255,238,128,109,123, 69, 58, 36,  9,164,116,134,241, 35,161, 87,170,128, 70,237, 88,218,235,230,  1,
-240,183, 21, 70,191,174,213,181,129,246,231,189, 63, 21,195, 93,241,184,174, 77,216, 20,207, 86, 99, 63,183,222,220,186,129,118,
-194,188, 41,189, 64,108,186,146, 94,118,118, 54,233,233,233,126, 31,171,184, 58, 21,132,148,248, 26, 26,213, 25,232,104,207,134,
-122,216,129,244,188,189,145,101,160,196,236,237,186,221,143,245,183,183,220,208, 96,153, 64,236,121, 59, 70,250, 29,  1,176,175,
-245, 29,155,116,140,222, 12,  3,224,124, 97, 37,  6,131, 99,117,239,238, 41,113, 36,182,137,224,240,177,203,156,252,169,140,240,
-112, 53,169,221, 90,163,175,240,190,182,218,249,139, 34,169, 93, 28,191, 63,105, 52, 12,184, 65, 32, 76,  7, 86,171, 67,249,181,
-142,134,188,124,152, 56, 26,186, 36, 59,246,111, 74,184,146,157,123,172,233,122, 33, 60,111,196,212, 80, 39, 35, 24,  5, 24, 76,
- 25,102,100,100,144,157,157, 13,200, 95, 99,179,185,174, 34,160,160,241,225,239,212, 37, 89,196,215,220,225,141,  8,  2, 33,150,
- 96,166,106,120,181,219,200,163, 67,133, 25,122,217,191, 17, 27,171, 69, 95,110, 36, 33,190, 21, 25,211,122, 97,181,217,  9, 11,
- 83,163, 86,169, 16, 69,145,169,183,166, 50,101, 66, 42,130,  0,165,122,  3,177,177, 90,175,246, 58,181, 23, 56,125, 78,164, 87,
- 42,252,226, 22,135,171,248, 68, 46,244,235,  5,113, 49,112,219, 88,176,219, 65,163,134, 83,103, 28,251,251,123,111,229,188, 15,
-118,  2,108,115,152,206,224,233, 28,228,158,151, 43,177,187,171, 51,111,159,  3, 61,207, 96,212,163,235,113,162, 40, 50, 97,194,
-  4,101,190,161,130, 70, 39, 61, 80,  6,183, 56, 43,175,167,209,101,193, 86, 64, 81,  4,213, 76,125,163,157,183,184, 54,206,241,
- 27, 50,136, 59, 41, 33,138,243,  5, 85,  0,188,182,252,  0,223,255,112, 25,139,197,142,221, 46, 94, 33,107,  1,149,202,177,126,
-219,249,130, 42,146, 18,162,188,218, 75,237, 26,206, 55, 87,214, 29, 77, 24, 12,135,142,193,220,187,161,123, 23,135,123,243,249,
- 55, 65,167,  5,149, 10,190,201,113,236, 31,104, 99, 27,170, 56,156,171,210,113,189,223, 77, 17,231, 91,180,104, 81,157,223,118,
- 29,208, 33,189,151,190,147,246, 13, 68,141,133,138,228, 61,197,151,229,216,242,116,189,233,233,233, 76,152, 48, 65,246,245, 54,
-180,114,188,  2,133,244, 20,226,107, 98, 52,246,212,  8,113,109, 28, 34,254, 19,108, 98, 98,123,114,207,232,177,219, 69,158,124,
-244,102, 78,229,150,241,227,169, 82,  4,  1,231, 98,165,142, 70, 69, 36,247,140,158,196,196,246, 94,237,165,164,166,241,197,215,
- 96,179,129,152,  7,219,246,194,134,173,112,219,111, 97,220, 61,176,125,159, 99, 63,155, 13,190,248,218,177,127, 83, 42, 42,111,
-115,249,154,  2,238,147,181, 61, 17, 95, 67,251,202, 33, 42, 57, 30,144,198,180, 21,202,235,181,217,108, 74,  3,163,144,158, 66,
-124, 63, 55,  8, 51,244,178,221,157,241,137,221,  9, 11,211,241,109, 78, 33,118,187,200,109,233, 41, 28, 57,118,153, 23, 94,219,
-203,243,175,238,113,146,222,183, 57,133,132,133,233,124,102,112, 25,116,203, 67,216,136, 97,233,191, 28,228,246,246,243,240,193,
-167, 48,238,102, 24,120,  3,108, 95,227,216,190,244, 95, 96, 35, 38,224, 12, 46,238,243,188,130, 85,121,190, 26,245,107,  5,247,
-198, 94,138,119,185,191,247,180,175,191,101,230, 62,242, 50,152,152, 94,176,157,133, 80, 94,175,213,106, 85, 26,  1,133,244, 20,
-226,107, 78, 16,215,198, 53, 56,242, 50,212,191, 33, 87, 85,118,234,220,151,226, 50, 19,159,108, 60, 73,225,165,106,166,220,154,
-202, 83, 11,110,102,222,111,  7,112,232,104, 17,159,108, 60, 73,113,153,137, 78,157,251,250,101,111,248,152,  7,216,149, 19, 67,
-198,195,144,243,  3,188,243, 87,120,250, 97,200,188,  7,222, 93, 11, 25, 15,195,174,156, 24,134,143,121, 32, 36,106, 45, 24,210,
- 11,228,251,198,132,123,202,174, 80,237,235,137,160, 66,113,125,193,218, 10,229,245, 42,196,247,243, 67,168,166, 53,200,154,206,
- 16,232, 32, 16,185,211, 25,  2,181, 23,168,205, 80,159,159,183,114, 10,213,249,  5, 51, 32, 71,171,139, 36,165,251,205,148, 21,
-231,146,119,246, 34,123, 15, 94,168,147,171, 51,169,109,  7, 89,185, 58,227, 18,210,152,114,215,223,248,110,239, 91,124,252,197,
- 41, 94,252, 71,211,228,234,148,163, 86,154,  3,233,249,250,221,230, 58,200, 35,152,243, 10,229,245, 42,174,206,159,183,242, 11,
-134, 16, 53,141, 93,217,174,165,189, 96,231, 37,181,180,235, 13, 22,241,137,221,137, 79,236, 78,207, 16,217, 27,116,203, 67,  1,
- 77, 78,111, 73,141,109, 75,197,245,124,157,142,  1, 89, 42,231, 75,138, 85,139,162,136,221,110,119,190, 68, 81, 68,129,  2,  0,
- 97,234,156,103,149,167, 65,129,  2,  5, 10, 20,252,108,160,196,248, 20, 40, 80,160, 64,129, 66,124, 10, 20, 40, 80,160, 64,129,
- 66,124, 10, 20, 40, 80,160, 64,129, 66,124, 10, 20, 40, 80,160, 64, 65,203, 66,157, 81,157,183,143, 74, 14,216,144,167, 92,137,
-138,189,198,177,231, 79,186,168,166,180,151,151,151, 71, 94, 94, 30,217,217,217, 33,177,119,230,204, 25, 78,159, 62, 77,118,118,
- 54, 43, 87,174,  4,168, 55, 66, 79,121, 94, 20,123,138,189,235,203,222, 53, 35, 62, 95,141, 98, 67,144, 51, 84, 58,212,246,154,
- 51,242,242,242,252,154,176,235,239,245,186,218,243,182,168,104, 32,246,126,120, 45,134, 27, 31,171, 12,202,158,  3, 34,253, 12,
-111, 34,154, 29,115,172, 86,174, 92,201,220,185,115,131, 40, 69,145,161,234,143,176, 88, 42,137,136,136, 96,237,218,181,220,119,
-223,125,216,108, 54,204,102,243, 53,207,215, 24,138, 69, 92, 91,146,189,150,  2,215, 41, 13,210,116,  6,179,217,140, 90,173, 86,
-166, 50, 40,144, 71,124,153,153,153, 94, 31, 24,215,220,142,254, 54, 24,161,178, 39, 87,177, 52, 21,233, 45, 90,180,168,193,156,
-131,114, 87,174,150, 22,230,204,204,204,244,184, 98,117, 32,246,196,239,159, 69, 24,240, 28, 31,236,112, 44, 63, 36,126,127,117,
- 34,168, 48, 64,222,202,198,209,199, 31, 67, 20, 97,205, 55, 14, 91,183, 13,212,210,167,227, 49,167, 74,147, 75,128,157,227,191,
-229,204,209, 34,118, 95,236, 66, 77, 84, 36,147,198,150,211, 49, 81, 96,199,246,205, 84, 86, 25,153, 60,121, 50, 38,147,233,154,
- 55,106, 77,217,209,243,199,158,156,242,  8,180,206,133,162,126,188,252,242,203, 44, 92,184,144,212,212,212,160,108,169,213,106,
- 52, 26, 13, 26,141,  6,181, 90,141, 74,165, 98,201,146, 37, 44, 92,184, 16,155,205,134,213,106,197,106,181, 54,217,132,247, 47,
-190,248,194,239,178,159, 60,121,178, 44,219,155, 54,109, 10,234,120,133,248,  2, 32,189,193,131,  7,147,147,147, 35,171,162,122,
-171,104,254,216,243,100,127,209,162, 69, 78,215, 90,115, 88,214,196,149,164, 26,202, 55, 40,157,183, 63,138,208,213, 30, 56,214,
- 48, 75, 79, 79,175,179,104,103, 32,246, 36,146,147,254, 46,249, 11,117, 72,239,137, 95,134,243,242,231, 70,191,174, 57,246,228,
-227,244,233,172,166,198, 40,242,216,212,112,246,253,100,197, 96, 18, 49, 88, 96, 92,199, 99,252,144,111,147,165,254,206, 31, 89,
- 74, 78,113, 36, 49,145,  2, 73,109,147,104,219,177, 59,231, 46,152,232,153,102, 37, 76,125,153, 13, 27, 75, 88,179,102, 13,119,
-222,121,167, 82,139, 91, 32,150, 44, 89,194,237,183,223,206,203, 47,191,236,177,190, 14, 26, 52,136,191,252,229, 47,220,126,251,
-237,222, 27, 48,141,  6,157, 78,231,124,157, 63,127,158, 30, 61,122,160, 86,171,137,142,142, 38, 55, 55,151,168,168, 40, 14, 28,
- 56,192,222,189,123,121,248,225,135,125,158,155,244,140,186,182,127,174,237,150,180, 93, 16,  4,103,167,206, 27,214,175, 95,223,
-160, 13,215,237,162, 40,202, 38,174,207, 63,255, 60,168,227, 91, 42,164, 12, 46,129,166, 48,211,  4, 67,122,254,194,159,229, 84,
-  2,201, 67, 40, 53,246, 47,189,244, 18, 79, 62,249,100,157,237, 77, 69,126,238, 36,229,237,188,253,205,182, 47,149,141,107, 39,
-194, 61,161,111, 32,246,188, 41,186, 39,126,233,223,242, 65,162, 40,146,240,211,227,244,232,160, 38, 66, 39,208, 53, 81, 69,113,
-165,136,213,166,166,164, 74,164,162, 86,228,116,145, 29, 65,128,  4,251, 17,242,242,242,188,158,167, 40,138, 80,188,142,238,157,
- 83, 40, 46, 46,162,107,114, 34,125,251,164,160,137,138, 35, 37,185, 28,131,173,130,139, 23,109, 20,232,141, 68,152,242, 56,125,
-186,127, 64,171, 22,132, 18,193, 46,128,220, 88,246, 26,234,100, 54,181,219, 47, 47, 47, 15, 65, 16,184,225,134, 27,216,176, 97,
- 67,189,103, 98,240,224,193,126,145, 30,128, 86,171, 37, 60, 60,156,146,146, 18,210,210,210, 24, 56,112, 32, 26,141,134, 55,222,
-120,  3,155,205, 70,223,190,125,249,244,211, 79, 57,112,224,  0, 71,142, 28, 65,173, 86,251, 84,126,191,252,229, 47,157,229,231,
-171, 29,244,135,104, 62,255,252,115,103,185,123,235,248,139,162, 72, 81, 81,145,108,226, 11,230,248,150, 72,118,141,162,248,164,
- 74,231, 75,153, 53, 23,228,229,229,241,228,147, 79,  6,156,192,183, 49,122,178,190, 92, 82,114, 72,202, 83,163,183,101,203,150,
-122,106, 79,174,189,172,255,139,194,177,108,108,125,204,126,163,198,111, 59,162, 40, 18,174, 19, 80,171,160, 85, 24,148,215,138,
-152,109, 34,145,225,  2,  6, 11, 24,204, 34, 29,227, 84,216,237,112,234,162,141, 45, 91,182,120, 85,125, 85,151,190, 37, 86, 27,
-137, 86, 43,242, 64,198, 48,108, 86,145, 75,122, 51,249,103, 42, 80,113,158,214,173, 77, 92, 46, 58,139, 78, 93,193,241,179,229,
- 20, 24,183,  4, 25, 67, 12, 13, 60, 45, 32, 27,204,138, 15,238,  9,206,133, 25,250,128,236,149,149,165,215,249, 28, 31,191,197,
-103,131,126, 45,234,200,212,169, 83,157,207,236,177, 99,199,156,239, 37,165, 55,117,234, 84,191,108,133,133,133, 81, 83, 83, 67,
-239,222,189, 25, 55,110, 28,143, 63,254, 56,191,251,221,239,  0,176, 88, 44,188,247,222,123,228,228,228,240,221,119,223,241,241,
-199, 31, 99, 48, 24,124,198,133,167, 76,153, 18,210,235,125,247,221,119,253,238,168,200, 85,108,174,182,  3, 57,254,231, 10,141,
- 92,133,214, 92,  8,166, 33,229,211, 28,224,218,  8,186,247,102,  3, 33, 41,185, 74, 33, 51, 51,211, 15, 23,128,239,134, 79,114,
-115, 54,100, 79, 20, 69,138,183, 63, 70,187,206,106,170, 13, 34,162,232, 88,117,190,214, 44, 98, 48,131,197,234,248, 13,171, 93,
-196,126,165,161, 61,122, 56,231,138,251, 87,231,241, 55,203,139,142,161, 75,140, 35,177,117,107,202,245,  6,202, 43,244,236, 59,
- 86, 68,129, 94,164, 85,171, 90, 82,187, 84, 99,168, 46,161, 95, 15, 11, 55,116, 53,177,114, 77, 14,185,185,185, 64,184, 82,155,
- 91,  0, 36,181, 39,  8,  2, 27, 54,108, 96,234,212,169,108,220,184,145, 62,125,250,144,145,145, 33,139,244, 36,226, 43, 46, 46,
-166, 85,171, 86,140, 30, 61,154, 87, 94,121,  5,173, 86, 75,102,102, 38,239,191,255, 62, 57, 57, 57,236,219,183,143,173, 91,183,
-114,244,232, 81, 18, 18, 18,252, 90,213, 97,238,220,185, 62, 93,157,239,188,243,142, 95,231,216,152,174,206,245,235,215,255,108,
- 92,157,174,109, 80,176,234, 79,211,146, 11,162,161, 85,166,175,151, 81,161,174,215, 38, 13,102,113, 85,122,238,144, 98,127,161,
- 92,109, 34,235,255, 34, 27, 84,128,209,199, 31,231,140, 73,228, 82,185, 29, 65, 80, 17,105,116,184,114,172, 54, 17,163,  5,140,
-102, 48, 89, 28, 47,163, 25, 44, 86,151, 30,191,  7, 34,141, 58,246, 24,  5,133,157,233,218, 57, 10, 85,184,154, 82,131,129,173,
-  7, 46,112,234,124,  1,165,101,213, 12,233,103,195, 84,107,197,104,182, 97, 48,218, 57,119, 30,106, 13,240,183,191,253, 45,100,
-203,149, 40,184, 54,106,239,134, 27,110, 32, 37, 37,133,188,188, 60, 54,110,220,232, 84,125,114, 72, 15, 28,174,206,  1,  3,  6,
- 16, 30, 30,206,251,239,191,207,253,247,223,207, 95,255,250, 87, 68, 81,228,219,111,191,101,199,142, 29, 28, 57,114,132,138,138,
- 10,122,244,232, 65,101,101, 37, 42,149,239,233,203,191,250,213,175, 26, 84,197,146, 98,246, 87, 25, 42,174,206, 22,162,248,154,
- 59, 25,184,186, 10,221,201,207, 93,109,249,138,183,181, 20,114, 79, 79, 79,119,146,159, 55,245,235, 75,  1,123, 35, 50, 79,240,
-182,239,189,111,214,208, 33, 94,197, 61, 35,117,152, 44, 16,211, 74, 64, 45, 56, 26, 11,179, 77,196,100,129, 26,147, 72,141, 81,
-164,214, 44, 98,179, 59, 20,161, 55,123,  3,122,230,209,163,123, 25,255,219,113,153,178, 10, 35, 55,247,171,100, 88,108, 53, 90,
-157,137, 90,163,157, 11, 23, 69,106,140,  2, 54,155, 64, 66,188,  0,130, 93,169,197, 45, 16, 82,253,117,247,126,108,220,184,177,
- 30,225,120,139,245,169, 84, 42,158,120,226,  9, 52, 26, 13, 31,124,240,  1,255,254,247,191,249,237,111,127,203,255,223,222,249,
- 71, 71, 85,158,121,252,115,147, 12,130,  2,203, 15,233,178,162,116, 25, 89, 82,148, 74,  5,246,116,247,  0,106,101,128,130,225,
-135,224,164,167,171,167,135,186,234,  4, 87, 60,104, 40,161, 30,217, 82,245,172,  9, 53,  1, 55,221, 37, 51,213, 16,221, 70, 93,
-178, 84, 41, 28,168, 46,158, 90, 16,219,221,229, 71, 65, 20,195,143, 44,130,200, 15,155, 77, 66, 32, 19, 38,147,123,247,143,225,
- 29,110,110,238,157,185,247,206,157,204,  4,238,247, 28, 78,102,222, 76, 30,238,220,247,189,239,247,253, 62,239,243, 60,111,105,
-105, 41,146, 36,113,252,248,113,194,225, 48, 37, 37, 37, 68,163, 81,138,138,138, 76, 69,178, 58,169,156, 92, 87,167, 75,124,142,
- 64,187, 79,100, 68,108,201,136,162, 55,169, 62,237,190,158,246,187,109,223,190, 29,191,223, 31, 79, 26, 55, 74,  8,181, 66,122,
- 34,170,211,200, 94,167, 12,109,151, 20, 46,117, 40, 52, 95, 84,104,239, 80,240, 92, 30, 81,209,206,152,202,107,139, 40, 52,182,
- 42,124,117, 94, 97,223,241, 40,138, 18, 83,166, 97,157,255,175, 83,134,147,167, 35, 28, 61,218,196, 71,123,155, 80, 20,137,207,
-142,202,124,127,110,148, 60, 69,225,204, 57,120,111, 39,180,182, 41,200, 50,220,251, 55, 18,253,174,131,217,247,205,163, 51, 75,
-250,201, 41,164,114,222,162, 26, 67,134,100,215, 51,160,247,172,  6,131, 65, 38, 76,152,192,222,189,123,217,188,121,115,183,223,
- 39, 11,114, 41, 47, 47,103,208,160, 65,113,213, 83, 93, 93,205,195, 15, 63,204,250,245,235,227, 36, 90, 94, 94, 78,115,115, 51,
-231,207,159,167,173,173,205,212,181, 62,250,232,163,113, 66, 81, 43, 54, 69, 81, 76,187, 57,193,117,117,186,196,231, 16,246,236,
-217,147, 52, 58,176,161,161,193,114,106, 68,186,160, 77,105, 48, 74,113, 48,154, 36,132,226,211, 35, 64,161,244, 68, 91, 34,197,
-167,182,231,212, 36,118,228,200, 17, 78,236,250,103, 20, 69, 70,106,131, 62,121,151,147,135,163, 10,157, 74,140,164, 46,117,196,
-136, 48,218,  9,115,231, 63,128,207,231,211, 37, 82, 97,239,248,174,151,185,253, 47,101,118,236,235, 36, 39,  7,206,124, 37,209,
-175, 47,188,187, 19,218,218, 36, 20, 25, 38,220,230,225,196,151, 50,119,223,123, 31, 51,103,206,100,235, 71,167, 51,174,202,179,
-205, 94, 50,215, 90,182, 64, 68,113, 22, 20, 20,196,199,168,240,214, 44, 95,190, 60,225,223,202,178,204,190,125,251,152, 58,117,
-106,151,246,234,234,234, 56,185,116,116,116,208,217,217,201,145, 35, 71, 24, 54,108,152,233,162,  7,243,231,207,119, 68,153,185,
-174,206,171,140,248,246,236,217,211,227,110, 68,161,106,202,202,202,226,123, 90,122, 74, 79, 16,128,223,239,207, 40,225,233,145,
-179,104, 19,110, 91, 43, 74, 87, 77,128,128,110, 46,159, 83, 88,189,169, 61,169,189,209,163, 71, 83, 93,213,193,180,113, 30,100,
-160, 35, 42,211,215, 35,161, 40,208,218,174,112, 41, 26,115,113,238, 57,214, 73, 84, 86,146, 38, 43,143, 30, 61,154,215,127, 17,
-229,238,111,229,242,119,  5,177,160,153,150, 86,104,189, 40, 49,250,235, 10,209,168,132, 68, 95, 26,155,101, 78,157,137, 48,207,
-127, 27,185,185,185, 89,169,100, 82, 89,100, 56,101, 47,219, 43,150, 76,156, 56,145, 85,171, 86,117, 83,117,171, 87,175,102,206,
-156, 57, 73,199, 75, 36, 18, 33, 63, 63,159,246,246,118,114,115,115,185,254,250,235,  1,216,184,113, 35, 11, 23, 46, 36, 28, 14,
-211,222,222,206,165, 75,151,232,223,191, 63,157,157,157,166,239,137, 83,209,157,174,171,243, 42, 34,190,116,144,158, 25,155, 62,
-159, 47, 78,106, 98, 79, 75,157, 94,161, 85,121,137,130, 65, 50, 65,122, 90,146, 50, 27,225,169, 37, 61,237,158,159, 85,123,102,
- 73, 47,153, 61, 73,146,120,177,188,138,167,150, 20,209,239, 58,144,101, 24, 55, 50, 23, 73,  2, 69,185, 66,120,157, 74, 46, 11,
- 22, 44, 48,101,239,249,213, 85, 20, 47, 45,162, 83,190,172, 28, 59, 65,  2,102,127,  7, 90, 90, 37,254,248, 73,152,246,142, 28,
-230,206, 93,144,241, 28, 62, 23,246, 97,148,164, 30,  8,  4, 40, 40, 40, 48, 21,232, 18,137, 68,  8,135,195, 52, 52, 52, 48,126,
-252,120,162,209, 40, 30,143,135, 77,155, 54, 49,125,250,116,218,219,219,105,107,107,227,200,145, 35, 12, 30, 60,216, 84, 58,131,
- 26,234, 45, 21,171, 46, 78,  1,215,213,121,149, 16, 95, 38,148, 94, 34, 87,144,145, 75, 51,147, 73,236, 78,146,158,154,228,213,
-239,213, 63,173,218, 75,182,215,103,213,222,154,202, 42,  2,129,  0,146,  4, 31,126, 22,141,167, 54,196, 30, 72,240,251, 23, 88,
- 90,132,148,254,172,146, 39,159,124, 34,110, 71, 81, 96,199,255,192,197, 54, 25, 89,134,185,115,239, 99,198,140, 25,238, 19,220,
-139,161, 71,122, 69, 69, 69,113,194,219,188,121, 51,146, 36, 37, 36,192, 72, 36, 66, 78, 78, 14, 55,221,116, 19,173,173,173,236,
-222,189,155, 59,239,188,147,104, 52, 74, 75, 75, 11,251,247,239,103,212,168, 81, 12, 29, 58,148,112, 56, 76, 52, 26,181,164,130,
- 69, 50,123, 42, 42,208,117,117,246, 18,226, 75,150,171,103,149, 80,204,230,254, 89,177, 43,202,129,233,217,118, 82,249,216, 65,
-178,239,107,245,250,180,245, 56,213,123,117,118,200, 93,107,175,246,201, 27,226,100,152,202, 98, 65,219, 39, 34,144,197,235,245,
- 90,238, 15,143,199, 67,101,229,191,112,240,224, 65,214,173, 91,  7, 64,235,133,216,196,115,235,173,183,146,159,159,159,177,253,
- 43,167,  3, 89, 28, 15,140,233,  5,251,122,208, 61,104,165,161,161,  1, 69, 81,216,178,101,139,225,103,244,136, 79, 81, 20,100,
- 89, 38, 18,137, 48,114,228, 72,154,155,155, 89,185,114, 37, 45, 45, 45,140, 24, 49,130, 11, 23, 46, 16,137, 68,226,123,125, 86,
-224,132,187,243,204,153, 51,105,187,135,233,180,125, 77, 17,159,211, 42, 41,157,170,203,235,245,102, 93,170, 66, 79, 92,143,211,
- 19,165,149, 72, 79, 51,125,162, 70, 42,174,230,188,188, 60,198,143, 31,223,165,173,160,160, 32,158,  0,125, 53,244,111,111,122,
-222,156, 36,102,113,146,130,250, 52,133,177, 99,199, 82, 93, 93,141, 44,203,166, 79, 84, 16, 10, 78,150,101, 58, 58, 58,226, 69,
-170, 33, 22,248,146, 13, 69,170, 93,100,225, 24, 44,120,104,165,123, 94,135, 11, 23, 46, 92,184,184,102,224,158,192,238,194,133,
- 11, 23, 46, 92,226,115,225,194,133, 11, 23, 46, 92,226,115,225,194,133, 11, 23, 46, 92,226,115,225,194,133, 11, 23, 46,122, 23,
-186, 68,117,206,153,122,115,252,181,222,113, 58,137,142,219,209, 43, 65,165,182,103, 21, 87,163, 61,109,250,133,250,126,186,247,
-207,237,143,107,217, 94,178,212,156, 76,219,115,251, 55,177,189, 84,108, 25, 93, 95,143, 17, 95, 58, 96,191,140, 86, 31, 67,123,
-106,232,157,206,160,247,153, 76, 64, 76,172, 37, 37, 37,170,220,182, 88, 16,109,182,228, 90, 29, 62,124,152,242,242,242,248,251,
-167,159,126,154,252,252,252,171,114,149,167,215, 31,135, 14, 29,  2, 98,161,244,153, 68, 32, 16, 96,222,252,  0,155,222,  9,234,
-142,217,173,219,246,178,233,157, 96,210,177, 28,  8,  4, 56,120,240, 32,119,124,115, 28,178, 66,252, 53,192,129,143,187,183,203,
-138,245,231, 67, 60, 95, 78, 61, 87,162,  2,145, 94, 29, 90,187,247,210, 12,249,185,200, 28,234,235,235, 51, 58,207,244, 72,145,
-106, 59,201,228,159,156, 50, 94,  1,232,145,135,182, 42,130, 89,130,177,147, 19,103,230, 97, 18,118,197, 36,107,148,147, 36, 62,
-151,232, 60, 57,237, 53,142, 24,117, 11,  0,103,219,219,137,134, 47,197, 26,155,207,  3, 24,214, 47, 53,130,154,244,  0, 42, 42,
- 42, 44, 77, 22,129, 64,128, 28,  9,100,133,248, 79, 72,252,122, 93, 85,207, 79, 70,218,254, 16,132,103,183, 63,156,156, 80,  5,
-233,205,158, 53,  1,136,145, 95, 42,255,135, 32, 58,128,113,227,198,117,105, 23,253,164,110,207,244, 98, 68, 93,133,200, 78,177,
-  3,189,254, 19,243, 65, 42,247,209,232,111,237,218,116,194,158,211,139,142, 76, 44, 16,234,235,235, 89,179,102, 13, 85, 85, 85,
- 87, 55,241, 57,185,154,235, 70,130, 78,216,176, 80,194,200,140, 82, 19, 42,183,180,180, 20, 32,254, 83,239,115,150, 43,232, 15,
- 26,200,129,134,183,232,199,205,116,178,139,115,175,236,101,255,177, 70, 22,148,174,207,216, 32,210, 83, 18,128,174,242,144, 77,
-222,106,117,141,196, 68,  8,133, 66,166,251, 99,209,162, 69,  0,241,159,186,147,138,168,143,150,192,214,180,105,219,  8,  4,102,
- 57, 58, 89,204,158, 53,225,242,119, 14,177,233,157,238,191, 23, 74,208, 12,158,125,246, 39,156, 58,253, 39,194,109,205, 76,154,
- 52,137,  3,  7, 14,242,250,107,175,234,182,215,212,188, 74, 38,161,173,114,148,202,249,153,106,210,115,130,252,140,254,198,238,
-245, 57, 97, 79, 20,233, 55,243,157,172,204,185,137,236, 57, 57,119, 11,210,147,101,153, 80, 40, 68,109,109, 45, 15, 62,248,160,
-233,191,215,158,188,110,247,  0,234, 28,237,234, 75,252,179,243,222,204,170,206,138,235, 35, 17,249,  8,178,144, 12,  8,201,106,
-117,143, 80, 40,148,244, 95, 97, 97,161,169,  1,228,247,251, 13,201,110,197,138, 21, 72,146, 68, 73, 73,137, 37,194, 29, 49,234,
- 22, 24, 52,144, 95, 21, 45,100,168, 52,153,211,175, 84,210,191,177, 57,227,164,167,167, 48,100, 37,166,240,180, 10, 67, 78, 67,
-169,132,100,138, 93,244,135, 17,217,213,212,212, 48,118,236, 88,102, 77,190, 51,214, 48,224,134,140,220,195,173,219,246, 18, 10,
-133,216,186,109,111,202,182, 78,126,113,154,207,143, 31,227,208,103,135,168,168, 40,231, 27,223, 24,141,172,232,183,103, 26,193,
-224, 21,247,173,250,117,170,164,167, 93,212,218,241,236, 24,253,141,221,202, 73, 78,216,243,249,124,241, 19,103,  2,129,  0,219,
-183,111,215,157, 47,213, 39,212,152, 33, 83,163,235, 16,118,156,168, 22,165, 38,189,226,226, 98,106,107,107,249,240,195, 15,109,
-147,158, 81,155,101,197,167,118, 49,232, 21, 90, 78,244,251, 68,174, 73, 65,140, 70,197,153,181,182,234,234,234, 12,153,220,232,
- 32, 75, 39, 86,100, 78, 97,195,134, 13,186,132, 39, 86,183,106, 53,184, 98,197, 10, 83, 54,191,104, 56,193,197,183,255,145,254,
- 15,191,204,136, 81,183,240,231, 67,251,209,240,118, 67,140,244,  6, 13,140,185, 58, 61,214,143,231, 41, 46, 46,238,226,238, 44,
- 46, 46,182,108, 67, 86, 96,228, 13,240,243,135,224,145, 26, 24,118, 61, 28,106,214,111,255,196,226,249,170, 70,139, 23, 43,139,
-134,231,158,123, 78,151,240, 68,127,172, 94, 84, 64,229,111,254,192,112,239, 95,112,230,243,179, 73,213, 30, 96, 74,245, 89, 81,
- 26, 49, 69, 23,208, 85,118,130, 12,205,218,234,215,207,131,207, 55, 13,  5, 15,175,213,172,143, 23,113, 55,106,119,106,194,206,
-212,115,167,117,111,106,199,136, 21,229, 39, 62,163,222, 39, 76,246, 57, 51, 99,192, 41,123,130,252, 98,247,187,  9,104, 34, 16,
- 24,108,155,244,212,246,  4,193,169,143,114, 19,118, 82,237,219,250,250,122, 42, 42, 42,226,101,234,166, 78,157,202,206,157, 59,
-109,197, 58, 60, 86, 18,155, 59, 67,101, 43,108, 95, 79,143,184, 58,235,234,234,226,123, 43,122,132,170,110, 51,123, 72,107,178,
- 32, 23, 43,157,101, 70,201,217,133,186, 99,213,132,167,117,237, 36,139,106, 10,115,130, 11,247,127, 27,101,192, 50,240,173,228,
-  2,111,194, 43,177,  9, 81,169, 91,134,231,  7,149, 68,163,178,229,235, 27, 51,102, 76,202,131,250, 92, 53,252,180, 10,110,185,
- 25,206,110,233,195,107,175, 70, 88,244,150,113,187, 21, 56,125,158,156, 58,136,229,244, 59,165, 12,184,189, 47,253,255,106, 41,
- 27, 74, 31, 97,252,184,225,228, 23,188, 96,170, 63,204,140, 79,179, 46, 81, 49,118,213,164, 23, 12,  6,227,  1, 45, 86,241,248,
-227,139,117, 93,207, 70,237, 61, 13, 17,100,148,140, 48,204, 20,115,215, 83,122,122,219,  7,102,201, 79,173, 62,205,236,201,153,
-233, 91,181, 61,101,195,224,238,115, 68, 97,147,105,123,102,188,100,118,200, 74, 75,166,  0, 67,134,108,119,132,244, 22, 47, 94,
- 28, 91, 32,203, 50,203,150, 45, 99,237,218,181,113,210, 19,  5,232,205,170, 61, 65,122,226,117,168,108,  5, 91,126,249,188,101,
-151,103,143,237,241,121,189,222,184,127, 90,237, 47, 86,175, 78,172,250,145,141,130, 92, 18, 41,  5, 35, 98, 78,  7,132,154,211,
- 35, 60, 43,106, 15,224, 55, 63, 94,197,156, 23, 43,136,250, 38,147,  7,244,255,253, 81,254,243, 88, 35,  0, 81,223, 18, 58, 62,
-190, 17,105,216,227,142,184, 94,172, 14,244,198,249,111,178,228,135, 39, 57, 92,180,156,139,239, 71, 24,126, 99,226,118, 39, 20,
-159, 29, 82,172,169,169,137, 61, 48,115,238,226, 15, 95,158, 99,192,248,  1,156,122,247, 24,244,189,142,133, 75,126,192,144,155,
- 11,200, 20,140,162, 56,173,246, 73, 48, 24,100,215,174, 93,241,  0, 34, 51,175,173, 94, 91, 42,  1, 22, 86,212, 72,162,195,166,
- 19,141, 95, 51,  1,109,118,247,134,178,  9, 90,165, 23, 35, 45,168,171,115, 78,125, 59,161,244, 20, 69, 33, 26,141,198,219,166,
- 76,153,194,206,157, 59, 77,147, 94, 58,144,103,102, 32,153,249,189,153,129, 36, 86,111, 98,179, 84,236,253,  9, 53,232,245,122,
- 77, 43,190,116, 77, 56, 78, 66,132,206, 27,237,247, 89,217,200, 95, 80,181, 17,101,238, 40,206,254,237,  4,134, 50,153,126, 11,
- 43,137,158,254, 10,  6, 13, 36,175,241, 77,182,172,221,  3, 22, 79, 34,215, 83,201,118,176,255,233,239, 51,233, 91,224, 93,114,
-144,219,251,255,144,250,175,251,225,231,203, 13,219, 51,165,248,202,202,202,152,250,215,249,248, 38,143, 97,206,157, 82,133,175,
-  0,  0,  4,168, 73, 68, 65, 84, 55,151, 83,190,118, 29,159,238, 57, 69,209,189,147, 56,179,105, 43, 45, 77,231, 29, 25, 15,122,
- 46,209,100,207, 71, 34,117,103, 53,202, 54,221,233, 12,169,186, 36,205,190, 23,139,210,100, 91, 31,234,191, 75, 54, 94,156, 26,
-243,153,134,246, 32,106, 53,212,174,202, 84,224,132, 29,225, 78,207,203,203,227,169,167,158, 98,247,238,221,150,246,245,122,132,
-248, 18, 37,168,219, 73, 96,215,222, 64,173,234, 19, 36,231,245,122,187,228, 86,249,253,126,194, 54,213,128, 85,159,113,186,210,
- 25,132,154, 75, 20,228, 98,  5,199,126,246, 24,158,133,149,132,191, 60, 76,222,239, 43,233,216,184,  4,105,246, 75,252,250,241,
-  7,248,252,215,255,203,156,213,175, 67, 94, 94, 70,  6,209,242, 58,120,119,245,219,220,254,249, 76,248,211, 69,126, 52,125,121,
-194,118, 39, 20,159, 93,181,183,233,237, 85,228,142,184,141,254,140,225,196,239, 66,180, 74, 10,255,125,248, 36,190,131,167, 76,
-246,251,137,248,251,194,194, 96, 23,146,  3,120,255,253, 89,186,159, 75,244,124, 36,115,105, 90,141, 74,204,214,116,134, 96, 48,
-216, 69,241, 25,157, 51,169,126, 46,133,226,211,187,127,169, 68, 87,246,116,194,116,250,238,105, 83, 92,253,105, 21,160, 93, 21,
- 89, 87, 87,231,  8,233,213,214,214,178, 99,199, 14,148, 13,131,145, 10,155, 88,179,102, 13,138,162,144,147,147,147,209, 84,134,
-110,196,151, 46,168,  9,210,231,243, 81, 87, 87, 23,127,  0,140, 72, 49,217,192, 52, 19,228,146, 14, 85, 97,150, 88,133,218,211,
- 35, 60, 65,240, 86,174,119,255,177, 70, 58, 62,254, 41,103,217,197,240,217, 47, 65,203,121,142,133,150,113,235,226, 53,156, 89,
-191, 12, 60,121,144,147,153, 10,116, 39, 46,194,216,175,221,111,186, 61, 19,138,175,172,172,140,239,249,190,205,159,201,131,105,
-195,195,198, 53, 75,248,215, 45,127,228, 71,223,157,194,162,138, 55,120,224,159,254, 45, 35,193, 25, 98,130,191,146,199,151,218,
-162, 12,178, 59,157,193,231,243,225,245,122, 77, 29, 78,109,247, 64,105,189,253,189,107,  1,169,166, 28,168,131, 92, 82,181,247,
-198, 27,181,124,240,193,  7, 72,255, 49, 20,128,247,158, 29,192,140, 23, 90,185,235,174,187, 44,165, 47, 92, 53,196, 39, 86,113,
-226,230,170,127,103,103,144,235, 77, 14,118, 38, 48, 51,249, 96,201,210, 44, 18,169, 61,187,132, 39,176,160,116, 61,191,  2,190,
-251,226,125, 40,117,203,144, 10,203,217,127,172, 17,105,200, 96,142,126,113, 62,166,246,114,115, 51, 50,136,140,242,245, 82,201,
-227, 51,179,208, 48, 59,161,  9,181,247,200, 61,119,176,244,165,151,249,241, 51, 37, 12, 27,248, 53, 62,249,244,  4,139, 62,125,
- 35, 43,170,123,104, 73, 79,235,150,179,162,250, 78,126,113,154,147, 39, 79,208,248,127,231,216,177,227,119, 60,241,196, 63,196,
-211, 25,180,237,118, 21, 83,170,243,129,217,160, 16,251,179,248,229,200,234,237,133,150,231,147,116, 70,117, 74,133, 77, 41,217,
- 51, 82,104, 19, 39, 78,204, 26,  2,142,  7,241,  8,210, 59, 16,101,253,111, 35,  0, 89, 65,122,221,136, 79,187,191,102,237,125,
- 31,203, 68,168,237, 96,161,250, 82, 81,  5,217, 80, 10, 76,173,246,180,105, 12, 13, 13, 13, 93,  8,212,202,170, 74,144,223,253,
- 47, 86,163,108,132, 27, 23,  5,249, 96,233,  3, 76, 41,171,  5,143,135, 27,250,246,201,200,247, 85,187,205,244, 94,167,226, 90,
-115, 98,181, 46,212,222,210,208,102,158,249,251, 25,220, 52,252,158,248,  2, 76,187,160,177,186,202,141, 77, 86,179,152, 54,109,
-155,202,205,105,159, 68,180,121,124,234, 50,102,102,225,116, 58, 67, 79, 40, 94,245,235, 76, 46, 68,210, 29,213,153,170, 61, 35,
-133,150, 74,181, 27,167,251, 83,254,247,193,188,119, 32, 22,204, 82,243,219,  8,111,125, 20, 65, 81,148,172, 42, 31,215, 35,121,
-124,122,196,103, 68,112,153,232,192,116,165, 51,  8, 18, 14,  6,131,221, 18,253,237,150,102, 90, 80,186, 30, 84,  9,235,119, 63,
-115,197, 87,126, 49,131, 19, 69,186,238,157, 83,120,228,158, 59,152,190,253,191,120,240, 39,175,199,247,154,180,227, 46, 27, 38,
- 15,173,242,179,147,208,158,142,116,134,100,110, 87,187,227, 64,189,183, 47,222,103, 11,178,177,114, 75,111,193,204, 23, 90, 29,
-253,142,  5, 15,173,100,203, 47,159, 39, 84,182,162, 91, 30,159,157,  8,221, 30,113,117, 26, 61, 52,137,194,154,173,124,153, 84,
- 39,201,116,164, 51,136,136, 77,109,101,  5, 59, 19,172, 80,138, 61,213, 47,217, 80,220,215,233,255,127,250,179,191,112,172, 63,
-140, 84,159,221,107, 78, 70,110,243,230,  7,186,124, 78,207, 45,170,190, 22,167,211, 25,210,  9,245,222,190,223,239,183,221, 23,
-221,230,  0,149,139,211,238,252,144,141,181, 58,123,195,179,151,243,189, 38, 36, 73, 98,238,188,199,116,199,120,162,241,107,  6,
-169, 36,174,247, 24,241,217,189,137,102,163,174, 82,237, 36,167,  7,156,176,231,228,  4,155, 46, 53,146,221, 43, 77,133, 43,  5,
-233,178,171, 63,156,190,151,169, 78,  4,189, 89,217,195,149,128, 55,187,193, 20,233,186,182,222,162,248,178,143, 52,157,121,118,
-141, 84,159, 93,129,212,101,161, 84,240,208,202,107, 35,228,201,133, 11, 23, 46, 92,184,192, 61,129,221,133, 11, 23, 46, 92,184,
-196,231,194,133, 11, 23, 46, 92, 92,189,248,127,173,198, 35,132, 38, 20,138,232,  0,  0,  0,  0, 73, 69, 78, 68,174, 66, 96,130,
+137, 80, 78, 71, 13, 10, 26, 10,  0,
+  0,  0, 13, 73, 72, 68, 82,  0,  0,  1,190,  0,  0,  0,242,  8,  6,  0,  0,  0, 50, 96,160, 74,  0,  0, 32,  0, 73, 68, 65, 84,
+120,156,236,157,121,120, 20, 85,214,135,223,234, 37,157,149, 44,236,130,  2, 65,  2, 42,  8, 24,148, 77,  4, 37, 32, 35,160,162,
+  4, 84, 28,117, 70, 37, 81, 24, 69, 68,193, 81, 70,157,113,  1, 63, 65, 84, 28, 19,252,156, 65, 63, 69, 33,160, 14, 34,130,  4,
+133,  1, 20,148, 85,  4, 73,128,  0,145,176,133,236, 73,239, 93,245,253,209,169,166,187,211, 75,117,167,129, 32,245, 62, 79,160,
+171,186,250,244,237,170,186,245,187,231,222,115,207, 21, 70,221, 59, 83, 66, 69, 69, 69, 69, 69,229, 34, 65,115,190, 11,160,162,
+162,162,162,162,114, 46, 81,133, 79, 69, 69, 69, 69,229,162, 66, 21, 62, 21, 21, 21, 21,149,139, 10, 85,248, 84, 84, 84, 84, 84,
+ 46, 42, 84,225, 83, 81, 81, 81, 81,185,168, 80,133, 79, 69, 69, 69, 69,229,162, 66, 21, 62, 21, 21, 21, 21,149,139, 10, 85,248,
+ 84, 84, 84, 84, 84, 46, 42, 84,225, 83, 81, 81, 81, 81,185,168, 80,133, 79, 69, 69, 69, 69,229,162, 66, 21, 62, 21, 21, 21, 21,
+149,139, 10, 85,248, 84, 84, 84, 84, 84, 46, 42,116,193, 14, 88,241,209, 63, 60,182, 71,221, 59, 51, 34, 95, 44,219,109,172,189,
+ 72,151,207,219, 94, 36,108,250,178, 31,170, 77, 95,229,146,105, 76,249, 34,117,254,  2,149, 47,146,118,155,250,253,162,214,143,
+198,161,214,143,198,217,109,234,247, 75, 36,239,149,198, 16,208,227,243,117,177,130, 93,192, 96,246,228,191,198,226,207, 78, 99,
+203, 23,202,254, 72,217, 63, 95,248, 59,127, 77,165,156,231,226,250, 54, 53,123,106,253,104, 58,168,245,163,105,217,139, 36, 65,
+ 61, 62, 56,163,210, 77,165,208,238,120,183, 32,228, 27, 51,220, 22,163, 47,123,145, 32, 82,118,206, 70,139,201,221,102,184,229,
+244, 87,174,112,237,185,127,110,226,244, 89,  0, 44,152, 61,195,245, 94,184,215, 87,182,213, 88,123,238,120,151,175, 41,161,214,
+143,200,218, 84,235, 71,232, 52,197,250,225,215,227,243,117,163, 55, 86,  0, 71,221, 59,211,245,215, 88, 34,101,231, 92,224,235,
+166, 58,223,248,123,144, 69,242,188, 70,162,187,206,253,156, 69,250,252, 53,198,158,175,107, 42,191, 86,235, 71,104,168,245, 67,
+173, 31,231, 26, 69, 30,223,197,128,175,155, 47, 18, 55,102,164, 43,117, 83,237, 51,247, 38, 82, 99, 84, 42, 77,  3,181,126, 68,
+ 22,181,126,156, 95,126, 55, 81,157,238,125,239,145, 24,144,189, 80,110,204, 72,142,  7, 53,133,150,152,140,124,222,221,187, 71,
+228,215, 77,253,154, 52, 69,212,250,209, 56, 27,106,253,248,125,241,187,240,248,220,111,200, 72, 95,244,198,244,111,159,141, 46,
+ 28, 95,227, 13,145, 40,163,251,118,164, 34,185, 34,117, 45, 34, 49, 54, 48,234,222,153,172,248,232, 31, 77,106,156,225, 92,161,
+214, 15,181,126,  4,227, 98,171, 31, 23,188,199,119, 54, 42,181,119, 63,126, 56, 45,189, 72, 87,106, 95, 99, 11,145, 28, 11,114,
+183,223,148, 90,182,224, 60,135,145, 56,143,103,227,252, 53,117,212,250,209, 56,228,123,207,253, 30, 84,235,199,133,207,  5,237,
+241,157,205,150,172,108,179,177, 55,185,191, 22, 84, 36, 90,142, 77,145, 72,118,167, 65,195,193,241,  5,179,103, 52,234,220,253,
+ 30,207,185, 63,212,250,209,244, 80,235, 71,211,224,130,245,248, 34, 93,169,155, 90, 31,190, 55, 77,189,124, 42, 77, 11,181,126,
+168,168,248,199,175,240,249,234,246,106,138,  3,218,103,179, 44,141,169, 72,222, 93,136,222, 93, 49,145,122, 24, 53,  5, 27,103,
+ 19, 95,131,247,225,224,235,193,216,152,251,249, 66,  9, 46, 80,235, 71,227,104,234, 99, 94,106,253,  8, 15, 69, 93,157, 77,249,
+225,232,175,108,161,158, 92,185,219,198,151,189,166,112,161,100, 34, 85, 62,247,110,170, 72,133,128, 71,178, 97,228, 94, 62,239,
+ 10, 29,137,240,249, 72,210,148, 31,142,106,253,104,124,253,136,212,253,167,214,143,166,131, 48,234,222,153,210,249, 46,132,138,
+138,138,138,138,202,185,226,130, 29,227, 83, 81, 81, 81, 81, 81,  9,  7, 85,248, 84, 84, 84, 84, 84, 46, 42, 84,225, 83, 81, 81,
+ 81, 81,185,168, 80,133, 79, 69, 69, 69, 69,229,162, 66, 21, 62, 21, 21, 21, 21,149,139, 10, 85,248, 84, 84, 84, 84, 84, 46, 42,
+ 84,225, 83, 81, 81, 81, 81,185,168, 80,133, 79, 69, 69, 69, 69,229,162,194, 35,115,203,232, 65,237,195, 54,244,229,134,163, 13,
+246,249,178,119,104,207, 15,160, 49,211,182,125, 59,106, 76,117, 84,148,213,145,118,197,245, 97,219,219,184,253, 32,136,  6, 78,
+150,148, 16, 23, 19, 71,114, 74, 28,125,251,116, 10,219,158, 82,148,218, 43, 57,150, 71, 84,180, 29, 67,180, 14,173, 78,139,  3,
+129,102, 81, 99,194,182,151,148,146, 78,114,114, 50, 49, 49, 49, 32,  8,236,221,189, 92,113,249, 98,218,237,243,121,172, 18, 76,
+ 37,221, 26,236,187, 36,246,100,216,246,142, 25, 91, 55,180,103,  9,191,124,199, 12, 13,203,215,206, 90, 16,182,189,146,168,174,
+ 23,156,189,171,  2, 92,223,217,179,243,152, 62, 61,211,239,251,123,124, 92,223,152,246,214,240, 10,  7,152,142, 70, 53,216, 55,
+186, 93,248,247,203,151, 37, 13,239, 23,179, 37, 46,108,123,209,134,186,134,223,113,235,252,176,237,141, 94, 62,185,193,190, 39,
+ 79,228,132,109,111, 78,155,236,134,223,113, 14,158, 87, 77,201,222,217, 68, 81,202,178,135,215, 77, 69,184,241,126, 22, 72, 61,
+ 67,254,130,162, 95,190, 65, 64, 36,222, 16,195,191,115, 23,241,193,  7,111, 50, 48, 99, 32,246, 58, 35, 87,118,187,  1, 81,132,
+ 73, 79, 59,184,242,202,174, 28, 56,112,  4,179,201, 78, 66,219,129,126,237,109,218,113, 10,  9,129, 90,139,137,172,169, 47,241,
+226, 91, 55,115,108,207, 54, 32,154,149,187,142,162,209,192,155, 47, 60, 71, 97, 97,  1, 29, 59,118,192, 16,163,163,121,178,193,
+175,189, 95,191,252, 26,131,193, 64,108,108, 44,  9,  9,  9, 36, 37, 37,209, 60,165, 57, 41, 41,201, 36, 38, 38, 17, 31, 23,135,
+ 86,167, 67, 20, 29,152, 76, 38,106,170,107,216,105,172, 10,250,187, 15, 20, 46,198, 16,109, 34, 62, 33,154,232, 88,  3,186, 40,
+ 45,130, 70, 64,163,211, 34,105,191,193,102, 23,136,178, 15, 83,124, 30, 15, 21,107,104,209,162,  5,209,113,102, 44, 22, 51, 26,
+173,  6, 65,128, 75, 46, 29, 68,101,101,  5,198,154, 95, 20,219,138, 52, 11, 22, 44, 96,226,196,137,231,237,251, 85,206, 16, 76,
+224, 26,123, 60, 64,155,152, 88, 74, 74, 74,208, 71, 27, 16, 99, 99, 67, 45,226, 89,199, 88,190,147,239,215,126,218, 96,127, 70,
+102,228,214,253, 59,223,252,223,135, 31, 98,136,138, 66, 20, 69,226,226,227, 25,125,235,173,231,187, 72, 23, 20,138,151, 37,146,
+214,126,192,196,161,161,137, 95,230,173,151, 99,185, 41,  5, 91,109, 37, 58,135,134,235,174,110,207,253,247, 63,238,122, 95,163,
+129,205, 63, 44,164,197,101,237, 16,107,171, 25,220,183,  7,199,142, 85,144,191,195,238,211, 94, 86,214, 43, 16,149,136, 16,219,
+ 12, 73, 43,177,107,239,159,248,215,167,171, 93,239,139, 34,140,232,223, 31,106, 79,  0,  9, 28,220,253, 43,250, 22, 73, 12,236,
+215,157,248,164, 86,126,203, 41, 32, 32,  8,  2, 26, 65,131, 86,163, 69,167,211,162,211,235,209,235,245,232,244,122,116, 58, 29,
+118,187,128, 70,163, 69, 16,132,160,191,123,215,142,  5, 36, 38,234, 72,136,143,167,101,171,230,196, 39,196,226,144, 28,152, 45,
+ 38,108, 14,  7,177,241,177,180,108,213, 22,135,120,152,223,246,117, 12,104,107,213,154, 66, 18, 18,226, 73, 74, 74,198,104,140,
+193,104,140, 37, 58,218,128, 80,223, 73,109, 50,153, 48, 26,141,156,174,104,198,233,211,167, 41, 59,125,146,129,253, 47, 13,104,
+ 51,111,118, 94,208,223, 32,147,241, 64,  6,201,173,147,253,190,191, 96,193,  2,215,255,103, 83,252,254,250, 63,255,  3,192, 43,
+ 79, 61, 21, 17,123,207,188,246, 26,  0,175, 62,253,116,216, 54,126, 41, 41,161,176,176, 16,128, 59,110,188, 49, 44, 27,185, 75,
+150,  0,120,220, 87,146, 36, 33,  8,130,235,127,121,159,124,220,196, 76,255, 66, 53,125,122,166, 98, 49, 11, 85,244, 58, 37,167,
+ 96,178, 90,  0,136,138,137,198,106, 50, 35,214, 25, 57,125,226, 56,109,123,244, 80,100,163,109,231, 52,197,223,  7,144,216,225,
+ 10,246,125,251,159,144, 62,243,253,218, 79,185, 62,227, 46,162,147,123,133,244, 57,  0, 50,203, 67, 58,124,220,184,113, 44,201,
+204, 15,120,204,141,249,165, 30,219, 87, 38, 57, 31,187,167,204, 34, 38,187,243,186,214,213,255,159,219, 55,137,180,  4,125, 64,
+123,175,191,254, 58,127,157, 50,141,219,238, 24,131,217,108,226,205, 55,230, 50,127,254,124, 38, 79,110,232,117,170,248, 70,145,
+240,189, 55,100, 46,119,110,126, 25,241,251,175,152, 56,  0,197,226,103,169, 45,167,205,229, 67,121,233,169, 59, 88,152,187,206,
+181,127,253,247, 57,212, 25, 45,220,146,241, 56,  3,  6, 62,192, 93,227,110, 34, 38,198,128,213, 97,167,198,104, 37,173,223, 61,
+126, 44, 30,  1, 43,220, 49,225, 93, 30,158,122,166, 43, 96,196,128, 33, 68, 71, 27,248,226,219,213,172,220,244,  3, 31,254,251,
+159,152, 77, 22,162,180, 58,226, 99,163,104, 22,229,224, 64,241,  9,159, 22, 37,  9, 36, 36,183,255,235, 95,139,206,215,162, 36,
+226,112, 56,112, 56, 28,216,237,118,236,118,223,162, 44,179,229,135,  5,180,106,169, 37, 33, 33,142, 75, 47,189,140,174, 87,116,
+ 33, 62, 62,150,242,202, 50,142,157, 56, 78,105,217,105, 68,187, 68, 92,108, 28, 93,211,174, 36, 49,169,152, 95, 54,199,251,180,
+181,252,139, 31, 65,103,192,164,211, 16,101,136,194,104,140,198,104,140,113, 10,159, 32,  1,  2, 70,163, 17,163,177, 22,163,177,
+142,186,218,106,202, 74,143,241,209,194,237, 36,118, 78, 15, 88,206,255,249,240,127,  2,190, 15,240,212,125,129, 69,166,162,162,
+162,193,118, 74, 74,138,235,161,157,156,156,204,193,131,  7,201,203,203,107,148, 40, 70,181, 62,211,205, 85,  1,248,151,225,208,
+ 89,144,151,199,164, 73,147,176,157, 58, 21,210,231,126, 41, 41,161, 85,171, 86,220, 49,124, 56, 54,131,129, 57,115,230,112,231,
+ 77, 55,185,  4, 74, 41,130, 32,240,250, 11, 47,184,182,159,124,254,121,230,188,248, 98,192,237, 96,120,139,223,236,217,121,164,
+167,167,147,159, 95, 68, 70, 70,170,107, 95, 40,162,215,173, 77, 91,146,154, 53,  3,156, 34, 28, 23, 29,195,241,210, 83, 84, 87,
+ 84, 18,159,148,204,145,159,182,210,225,218, 62,138,108,221, 58,113, 26,247,222, 57,154, 46, 29, 59,186,246, 61, 63,231,109,143,
+ 99, 94,124,242, 47,  0, 20,127,189,150,235,210,  2, 55,228,124, 17,150,232,201,228,165,132,112,112, 70, 72,166,227,116,  2,187,
+ 94,124, 16,161, 89, 11, 28, 69,187,176, 20,237,161,176,188,142, 62, 95, 43,187,255,114,114,115,153,154, 53,137,251, 30,250, 51,
+121, 31,127, 74,199,142, 29,121,105,246,107, 36,188,240, 18, 95,124,241,  5,183,223,126,123, 72,229,185,208,136, 84, 66,125,159,
+194, 55,113,255, 63,207,108, 56,159,175, 72, 98, 45, 88, 45,216,214, 45, 98,226, 16,229,226,  7, 81, 92,121, 69, 87, 52,154,117,
+ 20, 86,150,  1,191, 82, 85,178, 31,125,180,129,255,124,245, 22,198,211, 14, 38,252,233,  9, 68, 17,110, 29,221, 31,135,206,183,
+  8,184, 83, 88,248, 43,162,  8,183,244, 20,128, 75,128, 14,152, 45, 86,198,142, 24, 78,116,146,134, 15, 23,173, 66,163,129,165,
+159, 46, 68,107,175,225,138, 14,  6, 14, 20,251,182, 37, 73, 18,162, 40, 34,138, 78,129,179, 59,236, 88,109, 86, 44, 22, 11, 38,
+179,201,233,  9,106, 52,216,237, 54,167,200,152, 76,  1, 67,130, 18,155, 73,232,245,122, 82, 82,154,115,121,231, 46,164, 93,222,
+ 13,141, 86,192,238, 16, 57, 85, 90,142,197,108,195, 33,214, 81,122,242, 52,237,219,153,232,214,165, 27,219,119,124,  1,180,105,
+ 96,203,160,145,144, 68, 19, 54,163,157, 58, 45, 68, 27,162,136,142, 54,160,215,235, 16, 69, 59,130, 32, 80,103, 52,114,234,228,
+ 49,246,252,188,149,178, 83,199, 16, 69,  7, 26, 33,188,152,165,127,189,251, 47,215,235, 63, 63,242,231,160,199,231,229,229, 53,
+216,158, 58,117, 42,197,197,197,  8,130, 64,110,110,110, 88,229,240,230,157,119,222,225,228,201,147, 44, 93,186,148,145, 55,220,
+ 64,114, 43,255,222,187, 82, 94,125,250,105, 42,112, 94,255,249,243,157, 99, 59, 89,227,198, 41,254,124, 97, 97, 33,119, 12, 31,
+ 14, 64, 84, 84, 20,105,105,105, 44,251,246, 91, 32, 52,239, 47, 84,161, 84,202,244,233,153,228,231, 23,177,109,219, 54,  0,143,
+255, 51, 51, 51, 67, 18,189,180, 86,173, 73,106,214, 12,173, 70,195,163,247, 78,192,100,182, 48,231,253,247,137,141,137,193,108,
+ 54, 99, 54,153,208,232,180,252,182, 99,  7,151,246,238, 29,212,158, 44,106,251, 15, 31,110,176, 47, 18,244,189,233, 46,242,243,
+102, 48,236,214,  7,145, 12, 93,194,178, 33,140, 59,211,168,147,150, 36,  7,221, 31,140, 43,147,116, 28,169,117,176,126, 88, 75,
+244,143,231, 82, 61,161, 19,186,228, 86, 33,137,222,218,181,107,233,216,246, 18, 30,122, 52,155, 25, 79, 60,205,252,127,231,112,
+221, 53,215,144,243,118, 14, 83,158,158,198,199,253,251,178,123,247,110,122, 40,244,190, 47, 52,124,173, 28, 17,238,162,187, 13,
+132,239,225,239,159,193,168,141, 70,116,136,136,130,150,  4,201,  4, 54, 51,  2, 90,104,151,134,222, 90,135,148,255, 47, 38,102,
+252, 89,161,248,137,104,181,218,250,215,205,128,246, 36,182,235,202,145,130,165,188,155,251,111, 52,150, 88,134,223, 56,144, 85,
+107, 55, 97, 52, 66,108, 74,162, 95, 75, 49,177, 93, 49, 25, 11,112, 56, 28,110,123, 79,  0,199,208,104,135,112,223,253, 15, 34,
+ 26,234, 88,241,213,191,184,117,244,159,137,141,  3, 99, 89,  5,190, 68,197, 85, 58, 73,196,225, 16,177,219,237,216,108, 54, 44,
+102, 11, 70,163,  9,189, 94, 15,  2, 88,173, 86, 52,130,  6,187,221,142,209,104,164,182,182, 22, 18,125,143,107,172,255, 46,151,
+ 54,173,  5,  4,141,  6,157, 86,143, 67,148, 40, 47,171,194,106,183,114,242, 68, 25,149, 21, 53, 24,235,172, 96,178, 35,138, 39,
+208,234,126,225,146,246, 29,136,139,137,241, 91, 62,  1,192,110,197, 84, 81,202, 41, 83, 45,162,205,140, 86, 43, 96,183,219, 56,
+117,178,132,189, 63,111,227,228,177,223,144, 36,  9,141, 70,139, 70,163,  1,  5,221,177,145, 64,246,226, 22, 44, 88,192,216,177,
+ 99,233,213,171, 23,  6,131,129,185,115,231, 70,236, 59,100,111,175, 95,247,238,180,110,221,154,249,243,231, 51,106,240, 96, 46,
+137,128,248, 37,227, 20, 59,125,171, 86,204,159, 63, 31,125,171, 86, 33,121,126, 54,131,  1,189,197,194,178,101,203, 26,120,127,
+225,118,125, 70, 18, 89,236,220, 27, 32, 89, 89, 89,228,229,133,230,237,213, 25,141,180, 76, 73,225, 79, 99,199, 82, 89, 85, 77,
+105,121, 25,122,189, 14,157,206,249,167,215,235, 49,196,196, 82, 93,118,154,154,223,142,146,112,105,240, 32,135,253,135, 15,243,
+209,178, 47, 93,219,178,240,201,158, 95,223,107,174,230,150, 27,  7, 43, 46,163,147, 26, 32,129,132,230,189,200,184, 53,142, 53,
+203,223,  7,154,198,216,222,207, 31,204,195,178,234,223,180,122,111, 59, 87, 38,233,208, 54, 75,193, 94,113,138, 62, 95,159, 34,
+ 78, 39, 80,103,151,208,  6,105,175, 30, 58,112,128,149,203,191,226,131,247, 62,224,173,247,255, 73,206,220,121,164, 52, 79,225,
+165, 87, 94,226,195, 69, 31, 51,168,223, 64,254,245,254,191,184, 35,243, 14,  6, 13, 28,116,110,126,216, 57,194,215,138,243,242,
+114, 71,225,136, 95,131, 83,253,222,128, 87,249,168,239,243, 44, 26,240, 34,205,  6,142,  1,171,  5, 33,165, 45, 60,189,152,159,
+ 30,254, 12,110,125, 20, 17, 61,108,252,132,137,154,221,  1,141, 47,255,182, 28,168,230,182,251, 31, 71, 20,  1,202,129,  4,192,
+ 70,135,174,215, 16,109,208,225,176, 91,144,172,206,238,195,132,132,  4,202,202, 43,252,218,155,247,198, 84,  0,246,110,126, 31,
+141,171,228,162,243, 95,211, 30,204, 22, 27, 90,125, 52, 66,148,179,143,188,166,186,154,230,205,155,  7, 44,163,211,219,115, 96,
+183,219,176, 88,172,152,204, 38,106,107,107,169,170,170,166,178,162,146,242,178,114,202,202,202, 40, 43, 47,163,162,178,130,170,
+106,255,129, 45,  6,131, 21,135, 67,196,106,181, 83, 81, 89,205,129,  3,135,216,186,109, 39, 63,254,184,131,125,251, 14,114,172,
+164,148,218, 90, 11,181, 53,102, 74, 79, 85,176,119,239,126,182,108,217, 70, 73,137,255,104, 55,119,127,192,106, 50, 82,114,104,
+ 63, 63,255,248, 61,159, 47,126,159, 85,203, 63,229,104,113, 17, 14,209,225, 20,187,122,189, 11, 69,246,130,117,103,  6, 67,167,
+ 59,211,118, 74, 78, 78, 38, 33, 33,129,233,211,167, 55,202,166, 59,239,188,243, 14, 99,199,142,  5,160, 83,203,150,138,198, 88,
+ 67, 69, 22, 59,217,243, 11,198, 47, 37, 37,  0,204,153, 51,135,253,199,143,115,199,240,225, 92,223,203,217,181,246,243,207, 63,
+  3,240,217,119,223, 41,254,254, 39,159,127,158,105, 47,188,224,234,198,148, 95,203,219,242,107, 37,221,156, 50,249,249, 69,  0,
+ 13,188,110,121, 91,126, 63, 24, 73, 58, 29,102,171,  5,173, 86,203,190,162,131, 20, 29,253,141, 45, 59,119, 97,181,218,208, 32,
+160,211,233, 16,  4,  1,209,225,192, 84,103,100,205,146,197,138,236,186,139,222,189,119,142,110,240,254,150,237, 63,123,120,132,
+202, 72, 56,243,210,208,197, 37,120,249,121, 51,208,219,247,135,104, 43,194,148, 31, 39,234,178, 52, 78, 77, 26,192,207, 31,204,
+ 67,215,162,173,235,173, 83,147,  6,208, 34, 90, 67, 51, 93,224,123,187,107,151,174,196,198,198,241,214,255,190,195,141,131,  7,
+211,183,127, 63, 14, 29, 56,196,190,  3,133, 32, 74, 68, 27, 12, 12, 76, 31,200, 87,203,191,226,243,207, 63, 63,219,191,232,188,
+227, 46,130,161,226,119,140,111,162,176, 11,105,253, 34,  4,173, 14,254,242, 62,143, 31,110,203, 91,115, 63,128,132,120,222,157,
+ 89,192,195,175,116, 69,155,191,128,137,151, 94,193,130, 46,143, 58,187,216, 52,218,  6,118, 46,111,214,158, 95,126,254,172,126,
+ 75,  3,212,  1, 54,231,159,205,130, 78,212,162,169, 23,175,207,191,248,  6,128,129,127,240,223,229,180,106,183,196,136,222,221,
+221,246,  8,245, 63, 67, 15,250,104,236,130,  3,177,254,209, 63,126,194, 99,  0, 28,249,126,129, 95,123,162, 40, 98,119, 56,208,
+216,236,104, 52, 22,167,199,132,128,195, 97,199, 98, 49,163,211,233, 17,  4,112, 56, 28, 88,173, 86, 44,102, 11,134, 75,219,250,
+180,229,112,136, 88,109, 34,152,172,156, 62, 93,129,209,104, 65,171,213, 97,181,218,176, 88,173,216, 28, 54, 68, 73, 68, 18,  4,
+208,216,168,169,181, 82, 90, 90, 67,157,201, 14,248, 26,244,151,124,190,182,152, 77, 84, 85,150,215,  7,219,212,  7,231,248,253,
+133,193, 41, 56, 82, 64,215, 14, 93, 21,117,111,186, 35,  8,130,115, 90, 69, 61, 58,157,142,162,162, 34,102,207,158, 13,192,244,
+233,211, 73, 76, 76,164,170,170,138,202,202,202,144,187,245,100,111,175, 77,155, 51, 30,251,228,201,147,121,251,237,183, 35,230,
+245,185,219, 85, 34,124,238, 99,123, 66, 66,  2,179,103,207,230,233,167,159, 70,175,215, 99,171,168, 32, 49, 49,145, 25,147, 39,
+135,228,249,121,143,225,  5, 27,243,243,199,236, 16,130,150,182,109,219,230,242,  8,193,255, 88, 73, 69,121, 57,241,  9,  9,156,
+174,168,224,187, 45, 91,208,105,180, 88,108, 54,140, 38, 19,162, 40,186,198,115,237, 54, 43, 86,139, 69,241, 53,246,215,181,249,
+226,147,127,113,121,125, 93, 58,118,164,184,232,128,226,223,228,139,140,204, 89,212,149,110,225,235,207,223,143,136,231, 23, 74,
+247,166, 59, 59,151,188, 71,175,251,159,192,208,233,106,  0,236,167,143, 83, 88,238,156, 82, 97,232, 63,138, 98,135,157,216,249,
+ 91,  2,218,168,174,174,198, 16, 19,205,229,157, 58,113,232,232,111,148,149,150, 49,254,222,  9,172, 92,187,134, 55,103,205,225,
+243,149,203,233,210,169, 11,247,221,249, 71,126,216,190,137,207,151, 45, 99,204,157,119,134, 85,222,223, 59,190,199,248,132, 93,
+ 72,223, 46,  4,131,  1, 82, 46,195,120,105, 95,222,122, 41,  7, 28,117,112,162,154,231, 62, 89, 79,246,109,217,144,255,  1,197,
+ 39, 74,161, 11,136, 14,187, 79,225, 59, 80, 93, 77, 90, 82, 51,236, 22, 56,176,238, 35, 46, 31,114, 51,224, 60,206,102,181,161,
+ 71, 67,173,217, 25, 41, 54, 98,200, 53,196, 52,111, 23,176,192, 35,122,  8,172,220, 37,161,143,134,168,203,110,198, 90,188,  1,
+217,235,211, 71, 25,176, 97, 38, 62, 38, 26,128,229, 43, 63,193, 84,246, 27,253, 58, 39,249,181, 39,138,146,115,108, 79,176,163,
+209,  8,245,251, 68,172, 86, 43, 38,147,201,229,209,136,162,179, 59,212,106,181,210,210,143, 45,179,217, 94,223, 13, 41, 98,177,
+ 56,168,169, 49, 33, 73, 96,183,139,216,108, 14,208,128, 70,167,  5,141,128, 36,  8, 72,146,128, 93,172,195,100,118,248,177,232,
+137,228,250,  7, 16,228, 30, 77,119, 79, 79,222,169, 76,  6, 27,235,237,  1,196,186,133,179,123,139, 94,106,106, 42, 53, 53, 53,
+216,237,118,215,  3, 50, 20,100,111,175, 99,139, 22,174,125, 29, 91,180, 56, 43, 94,159, 82,220,199,246,164,154, 26,102,206,156,
+137,165,172, 12, 91,253,251,151,215,139,180,222, 98, 97,244,232,209,148,156, 58, 69,187,115, 20,242,239,222,125,233, 62,190,231,
+139,244,244,116, 87,160, 11,192,158, 18,223,199,217, 45, 86, 42,173,229,152,205,102,146, 18, 19,137,142, 50, 96,115,216,145, 36,
+201,213, 24,180,217,108,136,118,135,226,235,187,255,240, 97,143,192, 22,239,110, 79,239,192,151,198, 18,215,178, 47, 16, 25, 15,
+ 40,220, 49,190,193,107, 74, 57,213,113, 41, 81,151,165, 33,116,186,154, 14,255,222,193,105,179, 72,156, 78,192,186,241, 11, 10,
+138, 14,  5, 29,161, 48,217,173,108,251,225, 71,230,189,254,  6,  3,134, 92,207,115,127,127,129,213, 95,175,230,227, 15,255,143,
+254, 55, 92,207,165, 29, 47, 67, 23,171,103,237,134,181, 44,250,224,255,248,236,139,101,124,245,213, 87,140, 28, 57, 50,220,159,
+251,187,165, 65, 87,231, 68,205,110,164, 13, 31, 67, 76, 52,135,171,173, 96,170,194, 32, 26,185,186,123, 42,148, 25,193,106,103,
+ 72,207, 52,231,220,  1,155, 25,173, 80,223,213, 40,250,123,120, 87, 82, 88, 89,140,206,  0, 35,110,125,130, 69,111,205,  2,172,
+ 96,180,224, 48,193, 23,223,237, 36,255,167,189,  0,180,191,172,147, 83, 24,130,112, 75, 79,  1,155, 25,150,127,181,138, 62,195,
+255,  2,232,  1, 61,218, 24, 24, 55, 42,147, 91,110,184, 13,128,163, 71, 14, 34,217,  2,139,138, 36,137,245, 94,159, 29,139,213,
+138,217, 98,198,100, 50, 82, 87, 87, 75, 77, 77, 13, 85, 85, 85, 84, 87, 85, 83, 93, 93, 67,109,109, 45, 70,163,209,175,173,186,
+ 58, 17,147,201,142,201,100,167,174,206, 74, 77,141,153,234, 26, 19, 53,181,102,106,107, 45, 84, 87,153,169,169,177, 80, 83,237,
+252,171,170,178, 80, 85,105,162,162,194, 20,168,128,110,130, 39, 33, 33,129, 36,213,251,120,110, 53,165,190,214,132, 42,  9, 87,
+244,191,130, 77, 43, 55,177,250, 91,231,180,144,167,238,123,138,130, 35,202, 38, 86,107,181,206,169, 31, 50,175,213, 79, 17,152,
+ 49, 99,  6,169,169,169,245,197,242, 12,199, 87,138,236,237,181,110,221,112,226,242,164, 73,147,248,234,191,255,229, 88,136,145,
+152,129,152, 63,127,190, 98, 65,181, 25,206,204, 11, 93,188,120, 49,  7, 78, 56, 35,134, 87,172, 91,231,241, 94, 65, 65,  1, 45,
+ 91,250,107, 38,157, 93,100, 81,203,202,202,242,216, 47,111,187,139, 94, 32, 98,155, 37, 32, 58, 28, 84,151, 87, 56,167,203, 84,
+ 86, 80,103, 52, 82,103, 52, 82, 83, 91, 75, 93, 85, 53, 53,149,149,152, 77, 70,172,102, 51,162, 61,120, 35,206, 91,212,220, 69,
+ 79,222,246,142,242, 84, 74,109,233, 22,242,243,102,120,236, 51,150,239, 12,203, 86, 36, 57, 62,190, 35, 29,254,189,  3,161,211,
+213, 88,214, 47,229,200,159,122, 19,167, 19,216, 48,172, 37,246,170, 82,250,172, 58, 69,144,158, 78,198,142, 29,203,195,143, 63,
+194,129,130,  2,126, 88,183,129,196,132, 68,238, 30,127, 55, 73,205, 83,216,254,227, 86,226,163,162,137,139,139,163,109,199, 75,
+248,228,211, 79,152,241,236, 95,169,173,172, 60, 55, 63,240, 44, 35,247, 72, 44,152, 61,195,227, 47, 92, 60, 60,190,137,133,255,
+ 68, 42, 61,140, 89, 31, 77,254,169, 88,  4,160, 99,229,113,180,159,189,196,215, 89,255,224,127,174,188,156,182,201,209,252,165,
+ 91, 12,188,179,  3,201,102,229, 55,109,125, 55,148,223,231, 90, 60, 80, 11,192,174,159,191,164,103,175,209,252,237,185, 15,249,
+207,103,115,249,230,187, 95,185,177,255, 85,232,116,  6,214,108,216,142,164,213, 97,117, 40,243,126,  0, 70,244,238,198,170,109,
+251, 96,206, 44,198,142,190,133, 81,163, 70,179,250,219,207,177,219,204,140,188,249,110, 52, 14, 27,122,109, 96, 33, 21, 69,  9,
+217, 99,148, 36,  9, 73,116, 70,121,106,109,118, 52, 26,141,211, 11, 20,132,250,233, 13, 78,145,244, 71,157, 49, 10, 65, 48,161,
+215, 59, 39,171, 35, 73,136, 34, 56, 68, 17,187, 93,196,110,151, 16,180,118,167, 61,  4,236, 34, 88,237, 34, 38,179,131,216,128,
+141, 71,201,231,150, 32,200,194,226, 85, 99, 20, 60,191,159,186,239, 41,174,232,127,133,107, 59,127, 97, 62,249, 11,157,243,145,
+ 54,173,220,  4,183,  4,183,  1,242,249,131,165, 75,151,  2,206,202,217,169, 83,167,250,247, 68,108, 54, 27,118,187, 61, 36,225,
+139,106,221,218,229,237,117, 58,  7,194,161,175,239, 50, 29, 57, 56,120, 48,197,128, 30, 61,152, 51,103, 14,163, 71,143,166,160,
+160,128,194,194, 66,110,207,112,134,180,119,237,218,213,227,189, 35, 71,142,208,194, 96,160,141,155,199,234,139, 39,159,127,222,
+195, 35,158,246,194, 11, 30,231, 43,148,177, 61,119, 50, 51, 51,201,203,203, 35, 43, 43,139,220,220, 92,151,232,165,167,  7,158,
+234,226, 78,197,233, 42,  4,236, 88,173, 22,204, 39,141, 68, 69, 71,163,211,233, 92, 30,159,169,182, 22, 75, 93, 29, 22,139,133,
+218,202, 74, 70, 76,152, 16,212,166, 44,106,114,119,103,223,107,174,102,203,246,159, 61,142,241, 53,238, 23,140,154,210, 45,108,
+ 89,247, 57, 67,111,185,203,181,175,182,106, 63,  5, 63,111, 10,217,150, 59,178,151, 23,110, 55, 39, 64, 97,121, 29,197, 15, 93,
+139,116,232,103, 90,189,183,157, 58,187, 68,245,132, 78, 36, 46, 58, 68,245,159,154,163, 19, 64,163,160,225, 53,105,242,100,102,
+206,122,137, 86,205, 91, 96, 19, 29,236,255,173,136,  9,119,223,195,135, 31,125,196,127,190, 88,206, 61, 19,238,193, 98,182,176,
+ 97,235,247,152, 76,181, 76,124,224,  1,214,254,240,  3,129,  2,252, 46, 20, 70,221, 59,211, 35,178,211,123, 59, 20, 60,132,111,
+ 65,218,163, 12,169,203,165,240,104,  5,199, 71,215,171,233,150, 25, 72, 43,222,229,146,147,135,120, 99,240, 29, 80, 89, 14,175,
+ 44, 68, 42,217,135, 35, 38,142,202,114,103, 39,143,160,241, 29,146,180,126,221,127, 24, 60,100, 40,  0,117,162,141,  3,149,197,
+128,131,203,155,117,226,198, 27,175,166,117,139, 54,148, 85, 85,  3, 80,105,181,115,188,178,142, 43,124, 90,114,210,254,178,254,
+ 28, 45,254,193,185, 33,232, 24,209,211, 57,198,183,106,183,141,213, 43,150,114,242,244, 49,154, 39, 57, 35, 67,147,162,244,180,
+ 77, 10, 60, 61, 66, 66,170, 15,188, 17,235,231,240, 57,133,207,161,113, 32,104,156, 19,219,  5,234,231,251, 73, 78,241,243,199,
+221,247, 60,206,255,125,248, 34,209,209, 58,180, 90,185,219, 84, 66,116, 72,216, 29, 18, 54,155,136, 93,148, 64, 16, 16, 17,112,
+ 56, 36, 44, 54,145,199, 31,121,209,103,202, 30,207, 17, 62,201, 99,135,187,224,185, 94,133, 16,220,226, 46,122,190,182, 55,173,
+ 12,254,176,112, 56, 28, 88, 44, 22,198,142, 29,235, 18,190,165, 75,151,178,116,233, 82,198,142, 29, 75,231,206,157, 17,  4,129,
+ 55,223,124,147, 25, 51,102, 80, 94,174,108,114,240,180,105,211,152, 54,109, 26,171, 86,173,162,238,100,195,192,159, 78, 45, 91,
+114,232,208, 33, 64,217,132,118,127,147,213,245,173, 90,241,206, 59,239, 32, 73, 18,163,  6, 15,166,157,130, 49,195, 54, 45, 90,
+ 48,224,234,171, 41, 59,124,152, 22,  6,  3,133,156,137,238,236,210,182, 45, 83,167, 78,101,211,166, 77,164,165,165,209,189, 93,
+224,110,123,240, 61,143, 47,220, 49, 62,119,228,121,122,211,167,103, 82, 84,116,198,211,115,159,219,167, 36,178, 51,190, 93, 43,
+ 76,199, 79, 32,218, 29,212, 85, 85, 81,117,186, 20, 65,208, 32, 73, 34,102,179,217, 85,103, 14,237,253, 21,155,213,162, 40,162,
+211,155, 91,110, 28,204, 45, 55, 14,246,  8,102,  9,181,171,179,246,244,143,108, 89,231,236,206,140,143,139,227, 63, 94, 94, 95,
+159, 65, 13,211,  4,158, 75,250,124,125,138,173,127,128, 94,233, 25,156,154, 52,128, 54,255,252,158,194,242, 58,146,163,  4,202,
+202, 43,208,  9, 66, 80,143, 79,230,190,251,238,243,216,254,242,203, 47,185,101,228, 31, 88,177,124,  5, 75,150, 44,225,133,103,
+103,242,205,186,181,104,117, 90,218,181,111, 71, 85, 85, 21, 68, 93,248,194,  7,225,207,219,243,166,193, 24,223,186,222, 89,224,
+ 54, 21,103,197,169, 36, 70,181, 20,144,182,174, 68,250, 97,185,179, 71, 45, 58, 26,115,108,  2,107,146,134,112,162,191,179,181,
+171,213,250,206, 54, 80, 80,104,101,227,230, 87,  0, 16,181,209,245,123,181, 28,168, 62,206,223, 38,255, 25,163,209, 66,181,201,
+ 57,198,103,213, 24,184,105,196,216,128,  5,158,249,236,  3,172,250,170,126,162,172, 67,206, 37,104,103, 68, 15,129,187, 30,157,
+ 75,108,172,129,102,245, 99,124,122,209, 76,187,150, 65, 30,102,146,132, 36, 56,  5, 74,110,117,139,130,136, 32, 10,174,140, 46,
+ 78,229,  3,234, 39,186,  7,194,104,140,193,100,170, 65,175,215,162, 17, 64,148,156,182,157, 30,159,136,209,100, 71, 66, 64,148,
+192,102,151,144, 52,254,239,118, 73,170, 23,177,250,239,148,187, 57,253,185,215,114,136,203,189,127, 26, 19, 52,247,221,175, 63,
+252, 26,248,135, 40, 64,146, 36, 76, 38, 19, 61,122,244, 32, 53, 53,149,195,135, 15,179,164, 62, 19,137, 44,132, 50,179,102,205,
+ 10, 73,252,  0,178,179, 27,230, 43,148,185,243,254,251,129,208, 38,180,203, 89, 82,188, 25, 61,100, 72, 72,129, 50,109,220, 34,
+133,189, 61,192, 35, 71,142,208,167,107, 87,162,234, 26,230,130,244,197,217,152,199,231, 45,106,222,243, 45, 33,180, 12, 47, 49,
+109,219, 96,220,127,  0,135,221, 78,117, 69,101,189,  7,239,108,  0, 86,156, 60, 69,117, 69,  5,146, 36, 41,242,246,188,145,199,
+247,188,167, 47,120,143,  3,  6,196,184,139,205,223,125,230,218,252, 79,158,115, 26,195, 53,131,239, 34,165, 85, 35, 38,178, 55,
+ 26,207,107,219,231,235, 83,108,229, 61,122,101,255,141, 19,162, 72,207,133, 63,242,227,136,214, 92,181,226, 36, 58,  1, 18,244,
+225,205,191, 29, 61,122, 52,223,174,251,150,155,134, 13,101,249,178, 47,248,199,236, 89, 76,175,170, 66, 18, 69, 22, 47, 94, 70,
+139, 22, 45, 40,174,142,196,239,249,253, 16, 52,115,203,241,209, 51,120,127,119, 62,221, 29,123,104,163,175,194, 44,233,216, 47,
+ 37,161, 45,173,230, 68,191, 51, 89, 11, 52,  1,186, 20, 91,166,244,230,150,  7,238,195, 33,185,123, 95, 18,181,117,213,104,117,
+137,160,137,229,233,215,149, 79,118, 30, 49,178, 59, 95,188, 51,  3, 52, 70,185,151, 18,128,248,248, 68, 28,182, 10,144,234, 56,
+242,253,  2,250, 92,125, 89, 80, 91, 78, 61,115,206,210,151,144, 16, 36, 16,132,250, 49,180,122, 55, 74,104,248,  9,191,100,101,
+ 63,205,252,183, 95,161,166,166, 10,157,206,121, 35, 59,  3,104,156, 30, 95,109,173, 21,171, 93, 68,148,  4,180, 58, 13,175,189,
+ 58,207,175,173, 63,220,214, 15,128,213, 95,110,198, 81, 63,118, 34,201,197,117,141,242,157, 41,231,253, 15,  5,110, 52,200, 60,
+244,143,135, 56,124,240,176,162, 99,131, 97,177, 88,168,168,143,102, 76, 79, 79,231,186,235,174,163,180,180,148,131,  7, 15, 58,
+195,220, 69,145,101,203,150,  1,202,197,111,242,253,247, 19,211,170, 21,163,  2,116, 61, 78,174, 23,190, 24,  5,130,245, 84,189,
+ 87,232,203, 94, 59, 31, 99,136,161,208,166, 69, 11,  6,214,123,128,173, 98, 98,232, 62, 96, 64,163,236, 53, 22, 95, 98,150,158,
+158,238, 51,208, 37, 20,241,107,222,229,114,106, 42, 42,208, 25,162,176, 88,204, 56,108,118, 68, 81, 36, 33, 57,153,170,242,114,
+ 70, 76,152,160,216,219,115,159,192, 46,143,239,109,217,254, 51,183,220, 56,216, 99,108, 47,216,164,246,180,182, 21,156, 46, 59,
+205,146,188, 79, 60,246,143,155,240, 32,229,214,240, 38,174,203,248,235,214,244,189, 95,249,200,122,159,175, 79,193,215,103, 82,
+139, 93,254,159, 51, 25,165,170,130,196, 35,  4,226,166, 33, 55,177, 43,121, 23,195, 71,142,224,225, 63, 62,200,213, 61,123,176,
+252, 63, 95,242,195,206,109, 76,156, 56,145,226,115,156,  4, 58,210,200, 93,154,238, 30,159,175,125, 74, 81,148,178, 76,236,145,
+193,207,100,240,115,240, 67,253,210,189,251, 64,222,122,235, 67, 30,123,252,110,218,117,232,  2, 88,208, 27,162, 57,122,188,154,
+193,163,239, 11,250,121,111,122,247, 78,229,129,  7,198,177,240, 95,159,129,120,  4,208, 97, 55,155,104,215, 54,145,203,154,  5,
+ 78, 43,230,142, 84, 31, 40, 34,  9, 78,209,147,253, 41,  1,  9, 36,  1, 65,144,130, 72, 93, 67, 38,255,229,175,  0,252,245,153,
+199,208,106, 53, 72,128,195, 33, 97,183, 59,168,173,181, 35,138, 18, 26,141,192,187,239, 42,203,222,126,243,104,167,  0,174,252,
+ 98,147, 91,206, 70,249, 31,120, 48,235,238,144,202, 87, 85, 91, 21, 48,255,102, 40,136,162,136,201,100,194,225,112, 80, 93, 93,
+141, 86,171,197,225,112,208,166, 77, 27,108, 54, 91,131,121,100,179,102,205, 10,154,190, 76,246,190, 34,145,161,  5, 32, 69, 30,
+ 59,105,164,200,249,163,117,144,185,162,193,136,228, 24,159, 47, 17, 11, 20,221, 25,202, 68,246,142,215, 93, 11,192,190,245,235,
+ 49, 27, 77,136, 14,  7, 87,164,167,211, 99,192, 13,196,183, 83,120,173, 36,129, 35,135, 14,  2, 16,  5,252,249,142, 51,131,201,
+ 71, 14, 29,108,176, 29, 40,212,177,240,120, 50,144,204,248,  9, 15,113,228,183, 19,108,254,239, 10,  0,150,124,252, 62,125,111,
+ 24, 69, 66,235,134,171,190,  4, 99,220,184,113,132,154,134,204, 33,248, 79,130, 15, 80, 60,166, 13, 95, 31, 51,135, 92,150, 80,
+233,217,179, 39, 61,123,246,100,235,214,173,172,221,188,158,230, 45,154,255,238,146,199,135, 59,166,231,141,226, 36,213,145,160,
+115,183,107,249,106,245,  1,110, 31, 25, 75,171,118,151, 82, 94, 99,103,240,200, 63,134,109,175,255,181,221,232,127,237, 95,201,
+202,250, 27,112,146,228,  4, 29,151,165,248, 31,131,243,105, 99,194,248,176,191, 63, 24,175,188,250, 22,  0,143, 61,246, 23,108,
+ 86, 43,162,228, 12,255,127,227,141, 55,194,178,119,203,237,206, 85, 43,190,250,124, 35,130,160, 97,226,163,247, 70,172,172,141,
+ 65,146, 36, 44, 22, 11, 86,171,213,245,  0,151, 31,220,191,183,138, 23,105, 66, 73,147, 22, 46,161,174,190, 16,140,110, 10,130,
+128,252,113,188,168,128,190, 93,194, 95,190,198, 23,101,214,203,137,111,125, 57, 25,153,161, 11,157, 55,193, 18, 78,123,162,193,
+ 46, 24, 48,105,  2,  7, 96, 29,172,177,147,150,160,228, 81, 27,153,105, 58,125,250, 40,203,153,122, 33,225, 47,144, 37,220, 49,
+ 63, 97,212,189, 51,207, 78,178, 64,149,139,138, 24,203, 62, 76, 62,214,196, 83, 81, 81, 81,105,106,168, 43,176,171, 68,  4, 85,
+244, 84, 84, 84, 46, 20, 84,225, 83, 81, 81, 81, 81,185,168, 80,133, 79, 69, 69, 69, 69,229,162, 66, 21, 62, 21, 21, 21, 21,149,
+139, 10,143, 80,163,209,131,194,143,182,242, 53, 97, 90,181,167,218, 83,237, 53, 13,123,114,218,178, 72,217, 11,134,106, 79,181,
+215, 88,123,103,147,  6, 49,182,222, 73,109,149, 16,168, 66, 69,218,158, 74,211, 35,216, 67, 85,229,220, 17,234,181,  8,118,188,
+193, 33, 97,209,122,134,217, 23, 23, 23, 83, 82, 82,130,193, 96,160, 69,139, 22, 92,118, 89,240, 68, 17,231, 18,247, 85, 66,220,
+249, 61,220,163,167, 78,157,162,164,196,207, 82, 26, 62,104,215,174, 29,173,  2,204,135,141,180,189, 11,  5,159,147, 75, 66, 73,
+163,164, 36,163,189, 47,123,254,150,169, 57,159, 75,206, 52, 69, 66,105, 56, 76,153, 50,133, 43,174,  8,148,233, 52,116,155,153,
+153,153,100,100,248,159,208, 43,219, 58,219,226,119,243,205, 55,  3,176,122,245,234, 38, 97,175,174,174,142,101,203,150, 81, 88,
+ 43,112,103,231,  0,  0, 32,  0, 73, 68, 65, 84, 88,  8,192,157,119,222, 73,239,222,189,131,124,170, 33,242,249,115,191,239, 37,
+233, 76,250, 60,239,213, 45,  4, 65, 32, 39,199,127,226,  3, 57, 25,181,146,107,161,228, 56,119,209, 59,117,234, 20, 22,139,  5,
+ 65, 16,136,142,142,198,108, 54, 83, 92, 92,204, 79, 63,253, 68,207,158, 61,185,252,242,203,131,126,231,192,129,  3,131, 30,227,
+206,241,227,199, 41, 42, 82,182,104,174,204,236,217,179, 93,203, 98,133, 74,168,243, 78,199,141, 27, 23,176,126, 64,195,250,214,
+161, 67,  7,  0,106,106,106,176, 88,156,233, 26,235,234, 83,220,  5,171,111, 37, 37, 37, 76,157, 58, 85, 81,217, 42, 42, 42,232,
+219,183,111,192,107, 92, 82, 82,194,149, 87, 94,169,200,222,201,147, 39,153, 57,115,230,239,162,  1,113, 78, 39,176, 55,117,154,
+170,231,242,159,156, 17, 65,143,185,253,145, 85, 33,217, 84,250, 96, 12, 68,126,126,126,131,109,247, 74,123,232,208, 33, 14, 30,
+ 60, 72, 94, 94, 94,163,206,235,238,221,187, 93, 66,229,253, 29,141, 37, 59, 59,155, 73,147, 38,209,163, 71,143,144, 62,183,108,
+217, 50, 90,181,106,197,125,247,221, 71, 69, 69,  5,115,230,204,161, 99,199,142, 36, 39,135,150, 17, 71, 16,  4,190,254,250,107,
+215,246,136, 17, 35, 88,181,106, 85,192,237, 96,120,139, 95, 86, 86, 22,233,233,233, 44, 88,176,192,245, 96, 15,245, 94,175,170,
+170,114,181,244, 37, 73, 34, 38, 38,134, 83,167, 78, 81, 89, 89, 73, 98, 98, 34, 63,254,248, 35,128, 34,241,235,222,189, 59,153,
+153,153, 30,194,228,237,161, 77,159, 62, 29,128,205,155, 55,115,207, 61,247, 40, 46,167, 76, 56,162, 39, 51,111,158,255, 52,130,
+141, 37, 46, 46,142,189,123,247,162,215,235,177, 90,173,172, 90,181,138,253,251,247,243,204, 51,207,132,100,231,164, 87,242,246,
+ 65,131,  6,177, 97,195,  6,143,125,167, 79,159, 14,203,150, 63, 14,187, 37, 17, 63, 95,120, 79, 98, 15,119,  2,251,239, 70,248,
+118,236,216, 17, 86,139,219,155,166, 42,126,222,180,235,243,146,235,117,201,214,231, 34, 98,115,193,130, 51, 43,213, 43,105,249,
+122, 39, 63,206,203,203, 35, 35, 35,131, 53,107,214, 32,  8,130,207,228,200,225,240,206, 59,239,112,242,228, 73,215,170, 15,145,
+ 96,245,234,213,172, 93,187, 22, 73,146, 92, 43,175,135,114,221, 11, 11, 11, 93, 89,242,163,162,162, 72, 75, 75, 99,206,156, 57,
+ 64,104,222,223,217, 72, 82, 13,206,223,178, 96,193,  2, 87,186, 50,249,255,172,172, 44, 50, 51, 51, 67,250,173, 21, 21, 21, 36,
+ 39, 39,163,209,104,120,224,129,  7, 48,155,205,228,228,228, 16, 19, 19,131,217,108,198,100, 50,161,213,106,217,182,109, 27, 45,
+ 91,182, 36, 49, 49, 49,160, 61, 89,212,220, 61, 57,121, 95, 36,152, 62,125, 58, 89, 89, 89, 97,123,125,  0, 79, 60,241,132,235,
+181,123,166, 37,127,251,131,209,161, 67,  7, 78,159, 62,205,115,207, 61, 71, 92, 92, 28, 75,151, 46,101,240,224,193, 97,137,158,
+ 55,131,  6, 13, 98,194,132,  9, 13,196, 79,246, 38,131, 17,169, 94, 20,153, 94,189,122,209,174, 93, 59,246,238,221,235, 90, 69,
+ 69,166,125,251,246,164,165,165, 33,  8,  2,107,215,174, 13,201,174,175,204, 45, 43, 62,250,199,217,203,213,217, 88,220, 31,168,
+ 74,246,135, 67, 78, 78, 14,217,217,217,141, 22,191,  9, 19, 38, 92, 48,226,119,190,113,247, 40,198,142, 29,203,176, 97,195,128,
+134, 43, 51, 52,134,221,187,119,  3,144,145,145, 65,235,214,173,153, 63,127, 62,173, 91,183, 14,217, 67,243,197,208,161, 67, 25,
+ 58,116, 40,187,119,239,102,254,252,249,236,222,189, 59, 36,187,178, 32, 68,202,251,139, 52,178,216,185,223,203, 89, 89, 89,174,
+  6,138, 82,140, 70, 35,205,155, 55,231,174,187,238,162,170,170,138,178,178, 50,244,122, 61, 58,157, 14,157, 78,135, 94,175, 39,
+ 38, 38,134,242,242,114,126,250,233, 39, 69,182,139,138,138, 60, 26, 70,178,240,201,158,159,115,133,248,240, 60,251,212,212, 84,
+166, 79,159,238,178,213, 20,234,242,225,195,135, 89,191,126, 61, 35, 71,142,164, 67,135, 14,180,104,209,130,245,235,215,243,204,
+ 51,207, 16, 23, 23, 71, 93, 93, 29,218, 32,107,135,250, 98,208,160, 65, 60,251,236,179,  0, 62,197, 79,  9,139, 22, 45, 82,228,
+245,149,148,148,112,215, 93,119,  5, 61,206,225,112,208,174, 93, 59,218,181,107, 71, 81, 81,145,171,103,168,103,207,158,244,237,
+219, 23,192, 53, 68,160, 20,119,209,155, 56,125, 22,128,107, 33,218,112,196,239,156,  8,159,191, 46,179,112,  2, 95,  2, 17,  9,
+241,187,229, 22,103,146,220,198,136, 95, 40,191, 43,148,239,184,115,242,106,150,205,191, 57,156, 34,249,229,108,136,188,251, 67,
+167,177,200, 11,210,  2,244,232,209,  3, 65, 16, 56,121,242,100, 68,132, 79, 70,182, 53,127,254,252,160,231, 66, 30,219,  3,152,
+ 51,103, 14,119,222,121,167,199,250,104, 63,255,252,179,199,123, 74,238,197, 17, 35, 70,120,140,121,255,225, 15,127,240,240,  4,
+149,116,111,122, 35, 55, 42,189,127,143,220, 13,234,222,237, 25,136,  3,  7, 14,160,209,104,208,106,181, 28, 56,112,  0, 73,146,
+ 40, 40, 40,112,229,101,213,233,116,  8,130,128,195,225,192,104, 52,242,249,231,159, 43, 18, 44,119,209,203,204,244,157, 88,187,
+ 49,221,149,169,169,169,174,223,218, 88,239, 47, 18,216,108, 54,174,185,230, 26,214,173, 91, 71,159, 62,125,168,171,171,115,117,
+ 97,175, 91,183,142,155,111,190, 25,187, 93,121,114,125,112,138, 30,192,203, 47,191,220, 96,127,168,226, 23, 73,118,239,222, 77,
+ 84, 84, 20,233,233,233,164,166,166,114,205, 53,215, 96,181, 90, 93,162, 87, 84, 84,196,186,117,235,194,178, 45,139,158,252, 58,
+220, 85,216,207,137,240,157,203,224,150, 72,136, 95,199,142, 29, 27,229,249,201, 21,238,227,143, 63,246,249,254,202,149, 43,249,
+248,227,143,195,178,189,249,208,149,244,235,180, 55, 98,221,155,224,188, 17, 83, 83, 83, 35,146, 80,218, 61,162, 78,126,216,132,
+ 26,156, 32, 35,123,123,109,218,156, 89, 68,115,242,228,201,188,253,246,219, 17,243,250,220,237,202, 93,158,129,112,247,238,234,
+234,234,152, 61,123, 54, 93,186,116, 65,175,215, 99, 48, 24, 72, 76, 76,228,165,151, 94, 10,201,243,243, 30,195, 11, 54,230,231,
+143, 80, 26, 92,219,182,109,243, 56,222, 95,139,185,188,188,156,132,132,  4,202,203,203,249,254,251,239,209,106,181, 88,173, 86,
+ 76, 38, 19,162, 40,186,234,177,205,102,195, 98,177, 40,238,186,245,215,181,233,222,104, 74, 77, 77,229,212,169, 83,138,127,147,
+ 47,114,115,115, 93,247,100, 36, 26,120,225, 38,152,159, 51,103, 14, 79, 61,245,148,235,185, 84, 84, 84,196,254,253,251,  1,232,
+221,187, 55,  5,  5,  5, 33, 71, 75, 70, 90,220,100, 33,141,196,119,109,219,182, 13,171,213, 74,255,254,253, 61,146,102, 23, 20,
+ 20,176,126,253,250,176,203, 24, 41,126, 55, 99,124,238, 52, 21,241,155, 48, 97,130,171, 27, 66,230,240,225,195, 97,137,222,157,
+147, 35,219, 15, 15,145,247,184,125,137, 30,132, 31,104, 32,123,123,221,187,119,119,237,235,222,189,251, 89,241,250,148,226, 62,
+182, 23, 23, 23,199,204,153, 51,209,235,207, 44,194,220,171,151,115,225,211,228,228,100, 70,143, 30,205,198,141, 27, 25, 61,122,
+244, 57, 41,155,251, 61,229, 62,190,231,139,244,244,116,143,134,142,191,121, 84, 86,171,149,242,242,114,204,102, 51,137,137,137,
+ 24, 12,134,250,133,104, 37, 28, 14,  7, 86,171, 21,155,205,134,195,225, 80, 44,122,114, 67,203,125,219,219,  3,140,164,119, 22,
+ 73, 91,225,142,241,189,244,210, 75,140, 28, 57,146,142, 29, 59, 18, 27, 27,203,144, 33, 67, 40, 47, 47, 39, 46, 46,142,138,138,
+ 10, 22, 46, 92,136, 70,115,126,243,137,108,216,176,193,163,235, 84,126, 86,133, 43,176,187,119,239,166,184,184,152,241,227,157,
+ 43,224, 44, 94,188,216,185, 26,124, 24,200,171, 51, 44,152, 61,163, 65, 87,103, 56, 99,124,191,203,204, 45,145, 24,235,  3,194,
+246,202,100,114,115,115, 61,186, 33,194, 21, 61,153,107,122,247, 98,237,183,223,177,232,219, 88,192, 41,134,155, 15, 41, 11, 69,
+246, 71,122,122, 58,249,249,249,174,126,248,172,172,172, 16, 61,180, 51, 15,187,215, 94,123, 13,128, 25, 51,102, 52,250, 97, 35,
+123,123,173,125,172,161, 55,105,210, 36,150, 46, 93,234, 58, 38, 18,204,159, 63, 95,113,111, 67, 69, 69,133,235,245,226,197,139,
+217,185,115, 39,  0,159,126,250,169,199,123,  5,  5,  5,180,108, 25,120,201,154,179,133,123,244,166, 59,242,182, 82,239, 62, 33,
+ 33,  1,135,195, 65, 69, 69,  5,167, 79,159,166,162,162,  2,163,209,136,209,104,164,182,182,150,234,234,106,170,170,170, 48,153,
+ 76, 88, 44, 22, 28,142,224,139,169,122,223, 27,190,130,164,194,237, 42, 47, 42, 42,106,240,155,195,237,113,136, 36, 31,124,240,
+  1, 67,134, 12, 33, 54, 54,150,189,123,247,178,110,221, 58,226,226,226,248,219,223,254,198,198,141, 27,121,230,153,103, 66, 22,
+190, 65,131,  6,249,253, 11,151, 13, 27, 54,240,242,203, 47, 55, 90,244,192, 57,132, 32,139, 30,192,248,241,227, 25,220,136, 37,
+173,100, 22,204,158, 17,118, 23,167,204,239, 38,184, 69, 38, 82,162,247,242,203, 47, 71,164,107, 68,238,246,156, 48, 97, 66,216,
+162,119,231,228,213, 92,211,187,151,107,123,217,103,159,179,236, 51,231,235,181,223,126,  7, 55,221,  8,132, 54,157, 65, 14,113,
+151,201,203,203,115, 61,128, 66,155, 50,224, 20, 11, 57,160,101,236,216,177,116,234,212, 41,164,178,120,179,123,247,110,151,183,
+ 23,200,171,139,148,215, 39, 11,232,228,201,147,131, 28,233,140,216,156, 51,103, 14,163, 71,143,166,160,160,128,194,194, 66,238,
+189,215,185, 46, 98,215,174, 93, 61,222, 59,114,228,  8,127,252, 99,240,245, 38,207,198, 24, 31, 56, 61,167,188,188, 60, 87,175,
+133, 44,  8,238,215, 61, 24,205,155, 55,167,172,172, 12,171,213, 74,105,105, 41,  6,131,  1,157, 78,231,242,248,234,234,234, 48,
+ 26,141, 88, 44, 22,170,170,170,124,142,215,121,227,222, 43, 32,151,199,219, 59, 85, 98,199, 27,185,199,193,189, 27,213,223,100,
+246, 80,144,189,188,112,187, 57,  1,246,239,223, 79, 65, 65,  1, 70,163,145,254,253,251, 99, 52, 26,201,203,203, 99,252,248,241,
+ 44, 95,190, 28,173, 86, 27,178,240, 69,218, 67,243,182,219, 24, 59,233,233,233,174,251,108,251,246,237, 24,141, 70,174,191,254,
+122,186,118,237,138, 94,175,111, 48, 21, 42, 20,188, 61,190,112,248, 93,  5,183, 52, 53,209,147,  9,101, 82,177, 47,220, 69,207,
+215,246,218,111,191, 11,217,166,247,195,207,123, 59,148, 27,115,236,216,177, 46,225, 91,186,116,169,107,218, 65,231,206,157, 17,
+  4,129, 89,179,102, 49, 99,198, 12,197,130, 56,109,218, 52,166, 77,155,230, 49,182,229, 78,143, 30, 61, 92, 97,210, 74, 66,177,
+253, 77, 86,151,  5, 86,146, 36, 38, 79,158,236,209,165,234,143,222,189,123,211,161, 67,  7, 54,109,218, 68, 90, 90, 26,133,133,
+133,174,232, 78,239,247,220,131, 94,252,225,107, 30, 95,184, 99,124,238,200,247, 91, 70, 70,  6,249,249,249,174,186,230, 30,137,
+171,228,126,108,223,190, 61,  7, 14, 28,192,225,112, 80, 93, 93,141,205,102,115,137,180,217,108,118, 45, 58, 44,  7,188,132,227,
+233,103,100,100,144,145,145,225,225,153,133,106,199, 93,224, 82, 83, 83, 27, 60, 91, 34, 57, 93, 34, 28,228, 41, 11, 79, 62,249,
+ 36,235,214,173,227,198, 27,111,100,255,254,253,196,199,199, 83, 92, 92, 28,150,240,193, 25,145,146, 27,214,145, 26,247,107,172,
+167, 39, 63, 79,138,138,138,216,186,117, 43,  0,122,189,158,190,125,251,146,154,154,202,144, 33, 67, 66, 10,112,145,163, 58,125,
+  5,183, 68, 44,170, 51,210,217, 83,124,221,116,222, 45, 51,247,253,225, 16, 41,209,155, 48, 97,194, 89,  9,127,110,140,205,223,
+142,158,  8,122, 76, 76, 76,108, 72, 54,  3,141,255,132, 74, 70, 70,  6,169,169,169, 28, 62,124,152, 37, 75,150,  0, 13,167, 52,
+132, 42,126,224,188,166,254,144, 39,211,134,226,157,250,107,104,253,229, 47,127, 81, 36,122, 50, 41, 41, 41,174,113, 59,131,193,
+208,192,203,123,238,185,231, 20,215,161,179, 49,143,207, 91,212,124,205,167, 12,165, 49, 54,120,240, 96, 86,174, 92,137,221,110,
+167,178,178,210, 53,198,  7, 80, 90, 90, 74,101,101, 37,146, 36,133, 53, 54, 39,143,239,121, 79, 95,240, 30,  7, 12,102,195,253,
+185,225, 45,242, 77,  5, 89,252,102,204,152,193,250,245,235, 25, 61,122, 52,175,190,250, 42,211,166, 77, 67,167,211, 17, 29, 29,
+173,200,142,123,119, 58, 52,222, 67,243,182,215, 88,180, 90, 45, 37, 37, 37, 13,230,241,237,218,181,139,178,178, 50,210,210,210,
+194,154,186, 17, 73,124, 10, 95, 40,173,163, 72,133,173, 55,150, 72,136, 30, 52,189,202,242,210, 75, 47, 41,206,192,160,148,233,
+211,167, 71,116,220, 67, 16,  4, 58,119,238, 76,231,206,157, 25, 58,116, 40, 69, 69, 69, 28, 60,120, 16, 65, 16, 16, 69,209, 21,
+254,175, 84,252,158,122,234, 41,192,217,221,229, 61,198, 39,123, 27, 79, 63,253,180, 98,209,  8,100,175,177, 93,165,225,120,121,
+103, 19, 95, 98,230,171, 43, 17,148,139,159, 32,  8,140, 28, 57,146,143, 63,254,152,168,168, 40, 44, 22, 11,118,187, 29, 81, 20,
+ 73, 74, 74,162,162,162, 34,104,170, 45,119,220, 39,176,203,162,188,109,219, 54, 50, 50, 50, 60,158, 39,193,158, 67,242, 61,236,
+ 43,235, 75, 99,199,152,253,117,107, 54,166,187, 19,156,226,231, 62, 97,253,209, 71, 31,117,189,174,174,174, 86,100,227,216,177,
+ 99, 13, 38,167,127,250,233,167, 33,229,220, 12,102,175, 49,236,220,185,211, 53,238,237,205,209,163, 71, 57,122, 52,252,132,212,
+190,130, 91,194,193,167,240, 69, 90,204,252,217,107, 42,162, 41,211,212, 68, 15,160,101,203,150, 17, 15,144, 72, 77, 77, 61,171,
+115,154,220,237,123,123, 89,179,102,205, 10,122,158, 35,153,146,236,108,216,243,198,221,  3, 12,135, 72,142,241,249, 58,183,129,
+188,251, 80,238,249,  9, 19, 38,112,240,224, 65,190,251,238, 59, 76, 38, 19, 14,135,131, 94,189,122, 49,110,220,184,144,238,167,
+205,155, 55,187, 94,187,  7, 59,108,222,188,185,193,118, 32,228,239,148, 27,114,178,136,206,158, 61, 59, 36, 33,118,103,220,184,
+113, 33,127, 38, 24,145,124,174,180,107,215,142, 49, 99,198, 40, 62,254, 31,255,104,152,237,228,108,218, 59, 91,200, 81,157,208,
+ 80,240, 34,146,185, 37,210, 15,255,166, 40, 38, 42,231, 14,245,250,  7,230, 92,156,159, 72,126,135,236,217,135,203,166, 77,155,
+194,202,189, 25,  8,185,161, 21,137,  6,206,217,110, 36, 53,150, 86,173, 90, 69,244,122, 70,218,222,217,196, 93,252,220,247,133,
+131, 48,234,222,153,103, 39, 89,160,202, 69, 71,140,101, 31, 38, 67,183,243, 93, 12, 21, 21, 21,149,128,252, 46,231,241,169,156,
+ 31, 84,209, 83, 81, 81,185, 16, 80,133, 79, 69, 69, 69, 69,229,162, 66, 21, 62, 21, 21, 21, 21,149,139, 10, 85,248, 84, 84, 84,
+ 84, 84, 46, 42, 60,162, 58, 71, 15,106, 31,182, 33, 95, 73,110,  3,217, 11, 54,127, 40, 84,123,193, 80,237,169,246, 84,123,161,
+217,251,242,214,224,171, 85,248, 99,244,242,134,233,223, 34,109,239, 63,163,195,183,119,219,151, 13,237,141,186,190, 29,224,156,
+183,104,179,217, 56,116,232, 16, 86,171, 21,157, 78,199,209,163, 71,185, 59,177, 35,171,183,110,197,116,245,165,244,235,215, 15,
+173, 86,235,154,118,178, 98, 99,195, 57,116,145,190, 30,114,249,220,145, 19, 37,236,217,179,135, 75, 46,185,132,242,242,114, 46,
+185,228, 18, 98, 98, 98,  0,  2,150, 47,144,189,223,126,249,136,172, 65,197, 44,218,154,134,174,213,112,226, 19,154,  5,181, 23,
+233,223,123, 54,  9, 59,101,153,210,236,  8,161,166,234, 10, 39,181, 87,155,205,123, 57,112,234, 56, 49, 81,209,116,141, 77,228,
+192, 13,202,179,112,156, 11,252,229, 11,188, 80,194,136,127,207, 20, 20, 20,240,198, 27,111, 48,231,175,206,237, 47, 54, 56,211,
+ 63, 41,225,240,209,223, 40, 57,122,148,130,125,251,168,168,168,160, 67,135, 14,196, 39, 36, 48, 98,216,112,197,223,191,102,205,
+154,144,202,187,116,233,210,176,239, 27, 57, 19, 78, 78, 78, 78, 88,159,119,145, 89, 94,255, 66,  2,  4,200, 75,  9,223, 86,250,
+ 27,144,122,191,243,117,209, 66,216, 54,181,113,101,  3, 24, 43, 39,124,168, 47,223,210, 22,138, 62, 38,  8,  2,117,117,117,124,
+243,205, 55, 20, 21, 21,145,169,111, 78,155, 75, 91, 98,174, 51, 17, 99,180, 51,112,218,195,220, 48,122, 60, 43,222,207,225,203,
+181,107, 25, 62, 92,249,117, 62,155, 56, 28, 14,138,138,138,232,217,179, 39,105,105,105,108,223,190, 29,179,217, 76,151, 46, 93,
+252, 46,255, 22,  8,187,221,206,174,173, 59,104,255, 96,111,158,190,238, 42, 54,127,243, 58,203,118, 15,161, 75,247,155,194,178,
+215, 20,  9, 89,248, 66,205,175, 25, 74,106,164, 80, 69,175,203,246,131, 36,151,213, 34, 32, 97,117,104,177,149,215,114,244,116,
+ 21,135,231,111, 35,254,198,190,180,184, 74, 89,148,225,182,239,178,232,230,154,154,164,229,243,111, 68, 54,252, 36, 49,241, 46,
+232,214, 25,166,122,174,243, 24,242,131, 71, 78,207, 22,137, 73,227,222, 34,122,190, 23,216,  4,200,204,116, 78, 28, 78, 73,241,
+159,223,179,188,220, 57, 63, 42, 43, 43,185,201,204,149, 58, 35,122,206,138,252,197,134, 27,216,184,113,163, 34,225,187,186,231,
+ 55, 28, 59,182,140, 15,255,125,102, 95,225,190,  2,  0, 30,250,211,103, 84,213, 78,166,166, 82, 89,  3,108,241,226,197,138,203,
+ 28,110,170, 39,127,245, 54, 59, 43,139,156, 48,132, 84,246, 12, 26,253, 16, 76,189,223, 51,  9,116, 36,132,143, 51,231, 73,201,
+106, 17, 50,  7, 15, 30,100,221,146, 37,252, 61, 99, 28,189, 38, 60, 74, 84,235,100,208,105,  0, 13,136, 18,136,122, 68,139,196,
+ 45,247, 79,164,248,173, 89,124,255,253,247, 12, 24, 48,224,188, 11,129, 70,163,161, 87,175, 94,172, 91,183,142,158, 61,123,114,
+221,117,215,113,226,196,  9,118,237,218,197,213, 87, 95, 29,114, 10, 74,173, 86,203,208,155,134,241,234,220,229, 76,127, 96, 55,
+253, 70, 60, 66,191,190,249, 76,123,251, 40,105,215,222, 23,208,158,124,159, 41, 21, 72, 65, 16, 26,223, 16, 11,  3,197,194,231,
+ 81,113, 50,150,144,155,169, 60,191,155,183,248,201, 43,  3,184,175,  2, 29,170,232,181, 63,120,146,107, 98,146,137,106,155,136,
+  3,137,152,202, 88, 78,148,150,114,162,166,138, 78,134,120,246,173,222,136,  4,180, 84, 32,126,221, 58,195,190,131, 26, 36, 41,
+ 26,135, 96,224,246, 97, 54,198, 12, 55,  1, 98,253, 17,141,191,177, 27, 43, 78,238,153,231,229,164,175,125,102, 20, 49,123, 27,
+ 48,123, 92, 72,  2, 24, 74,227, 37,148, 12, 24,242,138,203,190,  9, 47, 31,224,254,181,205,120,125,201,221,174,237, 39, 51, 63,
+ 33, 45, 67, 89,106,167, 64, 20, 20, 20, 48,119,238, 92, 52, 26, 13, 79,190,114,102,213,106, 37, 15,137,171,123,126, 67,191,190,
+203,232,215, 23, 94,124,209,243,189,123,238,129, 91,110,  1,152,207, 39, 75,148,137,159, 86,171,117, 37,250,118, 56, 28,140, 31,
+ 63,222,149,235, 52,148,  7,183, 63,178,179,179, 93,233,227,220,127, 95,118,118,120,162, 23, 49,210,231,  2, 48,111,222, 60,160,
+ 94,248,174,153,  3,219,159, 60, 47,197,249,246,219,111,121,119,204, 68, 58,221, 52, 12,180, 22,  4,189,  6, 65,167, 65,208,234,
+145, 36,  1,177,206,142,228,112, 32, 89, 29, 60,124,255,163, 60,250,183,199, 57,216,186,117,163, 38,244, 71,130,173, 91,183,210,
+182,109, 91, 68, 81,100,253,250,245,236,219,183,143, 97,195,134,209,191,127,127,182,108,217,194, 85, 87, 93, 21,146,189,141,107,
+ 63,225,142, 94, 70,182,213,104,185,231,249, 90,174,239,253, 38,147,167,140,231,245,233,149, 76,127,253, 99, 82,123,251, 79, 64,
+224, 46,100,238,207,244,236,236,108,159,251,149, 62,139,188, 39,174,123, 19,145, 36,213,222,120,139, 30, 64, 86, 94,114,200,226,
+231,190, 56,166,252,127, 86, 86, 22,153,153,153, 33,137, 94,199,125,199,232, 26, 21, 71,148,100, 39,230,245,167,176, 27,173, 68,
+ 63,249, 50,137, 81,209,152,245, 38,234,204, 38, 98, 16, 56,190,126, 51, 81,237,219,146,152,152, 24,208,222,190,131,176,224, 83,
+ 17, 48,214,255,193,160,107, 53,140, 25, 46,112, 70,252, 96,226, 93,176,224, 83,197,197,116, 49,125,250,116,178,178,178,194,246,
+206,100,209,147,  5, 15,156,162,231, 34, 99,  9,179, 67, 20,191,131,179, 14,  6, 61,166,243, 12,101, 21, 58, 37, 37,191,193,194,
+166, 13,143,201,170, 63, 70,217,114, 51,167,119,183,229,185,249,183, 33, 33,209, 63,229, 57,  6,102, 92,197,198, 53,123,152,147,
+119, 15,228, 73, 60, 63,245,159, 92,210, 53, 60,239,167,246, 72, 22,237,162,193, 88,182,  7, 73,146, 72,104,117,181, 75,244,222,
+125,247,221,128,159, 77, 72,250,133,126,125,151,185,182,183,108,129,190,125,207,188,239,158,209,233,238,113,243,201,249,223,103,
+209,136,151,  6, 45,147,119, 82,239, 72,145,149,149,229, 18, 61,119,178,179,179,200,201,  9, 92,231, 52,227,156,245, 91,110,246,
+  9,245,255,136,153, 62,142, 19,234, 15, 20,156, 47, 70,250,112,154, 53,227, 43, 92,189,143,  0,162,248,  0, 83,166, 76,113,189,
+ 63,101,202, 20,230,205,155,135,166,203,131,103,190,181,254,120, 95,246,116,227,125,151,207,110,247,113,156,130,242,153,205,102,
+218,116,232,  8,162, 21,141,  1,  4,157, 22,123, 77, 21,230,162, 67,148, 30, 45,161,253,128, 33,  8, 81, 73,  8, 54, 43,104, 53,
+204,126,100, 26,195, 22,188,192,212,169,145,241, 82,101,178,178,178, 20, 61,200,101,175,202,100, 50,145,146,146, 66, 65, 65,  1,
+162, 40,114,232,208, 33, 22, 46, 92,200, 21, 87, 92, 65,101,101,165,226,239,149,237,117,208,108,161,237,101, 35,168, 92,191,155,
+170, 10,  3,255,183,194,206,202,205, 31,241, 88,102, 12, 58,163,  8,248, 23,190,243,237,253, 42, 37,160,240,185, 11,158, 36, 73,
+  8,195,220,178,188,231,143,131,204,208, 90,139,178,216, 25,141, 31,  3,  2,102,243,191, 72, 73,201, 39, 47, 47, 47,164,238,175,
+ 86,199,203,105,213, 58,154,232,231, 31,197,113,186, 28,251,177,211,232,162,244,196, 10, 90,226,  4, 45,113, 90, 29, 41,250,104,
+ 42,106, 42, 57,254,237,247, 36,142,249, 67, 64,123,190,196,108,195, 79, 98,189,240,193,220,103,  5, 36,  1,  4,  9,194,241,254,
+ 82, 83, 83,153, 62,125,186,171,139, 50,156,174, 82,119,209,243, 73,189,248, 53,102,220, 48,121,226,153,235, 93,177, 32, 52, 59,
+ 74,  4, 55, 20,209,127,118,254,173, 46,193, 27,112,213, 88,  0,  6, 92, 53,150,239,247, 56,  5,240,197,185,147,200,205, 13,175,
+139, 68, 16, 32,235,137, 95,234, 95, 11, 92,127,253,245,108,216,176, 33,168,232,  1,220,112,253, 79, 30,219,215, 94, 11,239,189,
+  7,223,125,  7, 93,186, 64,106,170,167,199,216,171,199,175,252,188, 43,176,240,121,123,117,161,116,125,250,194,187, 21,237, 45,
+122, 64, 80,209,  3,200,201,205,117,233, 84,160, 70,141,232,246,176,203, 93,176,  0, 65,128, 47,255,219, 48, 88,225,221,156, 92,
+ 89,243,232,216,177, 35,146, 36,241,230,155,111,186,222,127,243,205, 55,153, 55,111, 30,171, 87,175,246,200,234,143, 31,123,178,
+183, 42, 73, 18, 15, 63,252,176,223,242,217,221,206,239,130,247,222, 67, 16, 96,197,134,134,193, 25,146, 36,161, 75, 72,  0,189,
+ 22,135,177,146, 95, 87,174,229,227, 37, 75,249,231, 49,103, 89,126,124,177, 25, 93,110,184,  5, 75,241,111,236,217,181,141,221,
+135, 10,169, 58,113,130, 95,126,249,  5,104,227,247,251, 67,193, 95,114,103,111,100,145, 58,118,236, 24, 51,103,206,228,245,215,
+ 95,199,106,181,162,213,106, 73, 72, 72,160,174,174,142, 31,127,252, 81,113,157,147,237, 85, 30,221,196,139,255, 46,230,253, 41,
+151, 80, 94, 23, 69,148, 78, 67,251,228,104, 78,156,182,146,245,154,157,158,125,210,185, 44,136,173,236,236,108,151,  0,186,223,
+139,254, 94, 43,193, 95, 67, 32,152, 39,232, 15,191,211, 25,228,130,201,235,109,121,144, 31,122, 34, 87,121,209, 89,163,113, 17,
+178,232,193,153,177, 31,165,139,210,234,214,109, 35,177,188,  6, 49, 74,135,117,219, 30, 44,191, 22, 97,254,102,  3,152, 44, 68,
+ 73, 18,177,104,209, 33, 96, 17,237,148, 91,204,252,115,205,138,160, 54,231, 62,235,244,230,220,113,110,203,213, 94,162,224,128,
+196,212,151,195,111,205,164,166,166,122,184,247, 74, 87, 71, 40, 42, 42,106,176, 86,158,135,183,231, 78,198,146, 38,177,218,116,
+ 99, 57,184,163, 22, 16, 60, 68, 15,224,142,231,245,188,190,228,110,174, 31,118, 21, 32,213, 31, 23, 26,139, 22, 45,226,201, 87,
+  4,226, 91,246, 64,  2, 70,140,121,132,141, 27, 55, 42,250,172,168,249,141,118,151, 52, 76,156,220,179,167, 83,244,238,187,175,
+ 97, 55,233,165,151,  6,207,152,175,213,106,209,106,181,140, 31, 63,222,245,218,253,207,125,191, 82,124,214,219, 48,112,255, 69,
+130, 32,184,254,252,237, 19,192,111,219,208,221,214,240,225,195,125,122, 74, 83,166, 76, 97,216,176, 97,158, 59,253,216,251, 34,
+ 55,151, 95,126,249,197,245,221,238,231, 76,198,123, 95,160,242, 69, 73, 18,154, 88,  3,182, 19, 71,200,125,238, 57, 22,214, 85,
+ 82, 49,184,159,235,253,247, 63, 90,200, 11,211, 30, 34,109,234,221,252,125,247,183, 44,169, 56,196,176, 91,111, 13,171, 23,103,
+231,206,157,100,101,101,177, 99,199, 14,143,253, 57, 57, 57,  1,187,219,229,115,189,123,247,110,214,175, 95,207,221,119,223,205,
+252,249,243,169,173,173,117, 45, 23,101, 54,155,137,143,143,103,220,184,113, 12, 28, 56, 48, 96, 57, 92,246,126, 88, 70,225,234,
+169, 76,125,102, 14, 95, 62,127,  9,191,150,232,168,170,213, 34, 10, 80, 86,107, 69,106,222,153, 39,254,250, 50,163,110,191, 55,
+232,111,203,201,201,113, 61,235,114,115,115,131,190, 14, 23, 89,244, 34,146,164,218, 93,240, 26,139, 63, 85,151, 69,207,157,109,
+219,182,121, 28,239,239,199,232,202, 42, 41,151,244, 68,149,149, 19,253,197,183,  8, 58, 13,152,173, 72, 53,117,  8,118, 59,122,
+192, 33,137,152, 29,118,106,236, 86, 16,131,143,145,200,193, 43,115,159,245,119,132, 80, 31,252,210,248,115,146,155,155,235,234,
+186, 84,114,225,125,121,123, 91,103,121, 86, 52,119, 33, 84,106, 87,166,243,140,206,138,186, 61,207, 37,175,229, 60, 73,191,228,
+231, 60, 68, 79, 70,222,223, 63,101, 15,175,229, 60, 25,210,111,253,248,227,143,249,239,127,255, 75, 89,217, 80,154, 55, 95, 75,
+124,139,238, 72,146,132, 70,163, 81, 52,192, 94, 92, 12,222,237, 10, 73,130,235,174,115,190,222,191, 31,222,121,231,204,123,229,
+229,160,211,  5, 31, 14,  8,101, 28, 47, 82,235,152,185,215, 53,165,231,240,241,199, 31,247,240,208,220,113,239,178, 12,134,188,
+ 44,149, 60,182,231,142,236,245,117,234,212,201,211,235,243,193,131,237,210, 40,220,179,151,146,228,100, 52, 26, 13,143, 61,246,
+ 24,111,189,245, 86,216,229, 27,100, 73, 66, 18,107,121,232,149,103,233, 49,118, 44,185,175,188,226,177, 56,108,238,254, 95, 92,
+175, 55,108,216,192,154, 53,107, 56,116,232, 80,253,179,210, 24,212,190,204,206,157, 59, 93,189, 11,185,185,185,100,103,103,211,
+171, 87, 47,118,236,216,129, 36, 73, 60,242,200, 35,252, 86,227,251,179,146, 36,113,244,232, 81,110,187,237, 54, 58,117,234,196,
+202,149, 43,169,170,170,194,100, 50,  1,206,136, 76,112, 46,190,172, 36,192, 68,146, 36,138, 10,118,242,194,211,127,166,121,151,
+ 60,118,228,221,207,207,191,  9, 20,159,212,129,164,193, 98,181, 81, 46, 53,103,210,131,143, 70, 44,162, 51, 18,235,189, 54, 70,
+244,224, 44, 79, 96,151, 85, 61, 55, 55,215,205,107,241,125,226,210,211,211, 61,142,247,199,222,163,197,252,116,250, 24,123, 14,
+ 21,113,242,208, 97,170, 15, 31,165,230,183, 18,236, 70, 19, 54,155,157, 26,135, 21,163,195,142, 69,114,224, 64, 66, 10,225, 36,
+187, 71,111,238, 59,232,220,158,250,178,236,233,105,152,243,108,100, 22,172, 15,181,133,216,103, 70,145,135,184,201,219,222,251,
+189,  5, 81, 41, 11, 42,156,222,118,197,130, 92,215,223,249,198,233,213, 57,217,119,202,185,114,250,103, 47,218,120,122,202,243,
+  0, 12,204,  8,109,192,126,209,162, 69,140,185,225,191,148,151,103,144,188,121, 45,111, 60,235,172,244, 55,220,112,131,162, 46,
+ 78,128,142,237, 47,165,115,103, 60,254,246,237,115,  6,180,  0,116,233, 34, 49,111, 30,164,164, 56,255, 46,191, 28,134,221, 28,
+220,174, 44,102,238, 30,158,251,182,251,190, 72,161,164,174,185,179,102,205, 26,159, 66, 37, 51,119,238, 92,197, 83, 51, 50, 50,
+ 50, 92,145,156,190,120,226,137, 39, 26,122,125, 62,248,239,222, 98,254,252,224, 36,182, 45, 90,196, 51,207, 60,227, 87,148,229,
+242,173, 93,187, 54,224, 67,247,134, 43, 47,227, 95,239,191, 67,250, 61,247,240,234,171,175,  6, 44,227,148, 41, 83, 24, 58,116,
+104, 88, 66,240,238,187,239, 34,  8,  2,185,185,185, 72,146,228,106,116,201,222, 94,175, 94,189,  2,126,222,102,179,177, 98,197,
+ 10,246,238,221,203,254,253,251,169,171,171,195,102,179,  1, 96,181, 90,185,253,246,219,  1,229,206,139,197, 98, 97,219,178,123,
+ 48, 23,190,205,234,245,  7, 57,116, 92, 75,117,157,  6,135,  4, 37,117, 49, 76,154,250,108, 72,246,178,178,178, 92, 83,103,178,
+179,179, 93,141,172,172,172, 44,178,178,178,144, 36,201,245,250,124,209, 64,248,228,202,224,221,165,225, 65,125,128, 75, 40,200,
+ 99,  4,177,177,158,163,202,114,  8,124,160, 49,  4,119,244, 81, 90, 28, 18, 28,173,171,164,184,170,156,210,234, 10,170,204,102,
+ 42,172, 38, 74, 45, 38,142,155,141,148,152,107, 41,183, 89,168, 16,109, 88,125,140,111,120, 51,232,218,134,251,220,199,253, 30,
+ 26, 31,143, 68, 20, 18, 81,138,202,232, 78, 81, 81, 81,131, 11, 28,110,119,164,223, 46, 78,194, 19, 61,165,193, 43,231,131, 77,
+249,123, 92,175,187,181,186,153, 59,158,215,123,252,205, 89,114, 15,  2,202, 26, 53, 89, 89, 89,220,118,253,122,238,159,234, 20,
+ 61, 65, 16,248,207,166, 33,  0,138,231,236,201,164,117,235,234,177,189,104, 17,204,159, 15,  7, 14, 56, 61,191, 23, 95,148, 92,
+221,140,146, 36,145,156,156, 28,212,166,236,241, 57, 28, 14, 28, 14,135,107,140, 79,222,118,223,119,190,144,189, 47, 95,158,211,
+227,143, 63,142, 32,  8, 65, 61, 52, 25, 65, 16,  2,138,104,160,247,220,217, 96,168, 68,208,196,243,191,127,125,153,248, 21,249,
+ 76,156, 56,209, 99,201,163,172, 46,221,121, 60,125,  0,177,177,177,220,112,195, 13,204,156, 57,147,252,252,124,191, 43,142,191,
+ 95, 82,200,241,171,174,164, 93,187,118,136,162, 24, 80, 72,  3,189, 23,  8, 57,216, 72, 22,187, 71, 30,121,  4,192, 67, 40,  2,
+ 33,  8,  2,151, 94,122, 41,197,197,197,108,216,176,129,203, 47,191, 28,157, 78,231,106, 60,245,235,215, 47,224,231,125,217,235,
+220,173, 55, 11,190, 73,226,231,149,207, 51,168,255, 21,196, 69,107,136,139,117, 16, 99,176,240,135,219, 66, 31,214,202,205,205,
+245, 16,243, 72,119,117, 54,214,219,131,  0, 30,159, 47,  1,148,214,100,122,188, 31, 42,153,153,206,207,203, 98, 39,255,239, 61,
+134, 21,136, 43,  6, 12,192, 30, 31, 75,133,228, 96,111, 93,  5,191, 84,149,177,167,250, 52,123,170,203,217, 91, 87,206,  1, 99,
+  5,101, 22, 51,181,118, 59,199,140,117,174,239, 12,196,152,225,  2,115,159,213, 50,247, 89, 45, 18, 90, 36, 65,195,196,187,  4,
+ 30,190, 43,138,  7,199,183,164,115,231,214,136,232, 65,225,131, 86,198,125, 10,130,247, 62,165,184,127, 86, 22, 55,127, 34,151,
+151,151, 23,116,213,106,111,210,211,211,201,207,207,103,198, 54,231,226,142,157,103,116,118,121,128,231,139,105,227, 62,225,135,
+242,151,249,126,207,153, 72,199,207, 94,180,209, 47,249, 57,215,246,203,147, 86,144,163, 32,184, 37, 43, 43,139, 55,158,131,  7,
+166, 14, 37,105,115, 62, 55,190, 54, 24,205, 72, 88,183,110, 93, 88,247,112,135, 14, 29, 60,182,111,186,  9,146,146, 32, 53, 21,
+254,224, 35,134,170,207,181, 62, 90, 85, 94,  4,242,244,228,253,161,122,124,190,198,227,220,201,206, 14,189,181,189,102,205, 26,
+159, 43,144,207,155, 55, 47,228,137,248,238,141,  3,239,125,190,130,113,124, 97, 21,  4, 68,163,  5,125,155, 14,100,189,244, 18,
+ 15,196, 37,145,180,238,  7,215,251, 15,222,251,  0, 47,188,254,191,236,159,251,  9,127,235,113, 19,227,146, 59,177,102,249,114,
+191, 13,207,219,179,179,184,170,123,119, 87,176,142,123,195, 67,198,215, 62,127,236,220,185,147,236,236,108, 87,192,138, 60,158,
+231, 46,110,189,122,245,114,  5,131, 60,242,200, 35, 65,189, 61, 73,146,208,235,245,220,126,251,237, 84, 85, 85, 81, 81, 81, 65,
+ 76, 76, 12, 45, 91,182, 36, 41, 41,137,232,232,232,160,229,242,182,103, 48, 24,184, 51,251, 45, 22,254,212,135,195,191, 85,211,
+ 58, 81, 75,255,174,  2, 87,119,146,136,107,214, 44, 36,123, 23, 10, 65,251,238,228,135,131, 71,  5, 10,195,227,147,231,110,100,
+100,100,144,159,159, 79, 74, 74,158,135,125,165,243,248,106,123, 94,142,177,176, 16,163,221, 66,117,157,145,131, 54, 27,122,209,
+217,129, 90,101, 51, 35, 74, 18, 18,176,242,228, 33,234,236, 54,133,221,138,  2, 83, 95,246,188,145,157,227,125, 34, 14, 44,252,
+122,160,134,127, 45, 14,109,238,152,187,192,165,166,166, 54,240,250,148, 10, 84,106,106, 42,204, 30, 23,240,156,203, 66, 24,202,
+248, 94,231, 25,157, 61, 26, 28,121,121,121,174, 21,172,243,243,243,225, 60,206, 49,239, 50,180, 26,150, 72, 46,175, 79, 30,235,
+123,122,202,243,124,191,231, 42, 94, 95,114, 15,127,125,103,164,226,223,122,255,212, 12,183,201,245,235,  0,103, 80,149, 36,229,
+213,223,215, 18,121,121,202,166, 89,140,189,227, 78,214,172,254,  6,112,118,113,222,120,163,128, 92, 53, 36, 73, 98,197, 10, 24,
+ 53,202,185,221,183,127, 63,174,190, 42,248, 60, 62,239,135,104, 99,231,238,185,159,151,172,172, 44, 52, 26, 77,  3, 49,201,201,
+201, 13,121,242,186, 60,158,229, 62,214, 39,123,128, 74,189, 61,240, 12,100,243,142,198, 84, 26,228,  6,206,103,146,189,166,  6,
+125,139, 20,180,177,241, 92,117,231, 88,254, 62,124, 24,127,149,167, 31,244,190,  6,135,201,140,190,121,107,122,244, 27, 66,199,
+246,157,120,235,215, 31,232,222,189, 59,199,127, 58,221,192, 94,118, 86, 22,114,227,246,209,236,108,215, 20,  8,187,215,245,208,
+233,180, 32,121, 78,163, 24,233,195,251,232,213,171,151,171, 43, 83,246,124,124,117,101,246,234,213, 75,145,232,201,191, 57, 41,
+ 41,137,126,253,250,177,111,223, 62,182,111,223,142,195,225, 32, 46, 46, 14,163, 81,249, 56,163,187,189,214,173, 91,115,219,109,
+183,177,121,227,143,204,203, 91, 67, 51, 33,138,174,173, 45, 28, 56, 29,199,245, 93,109,174, 99, 37, 73, 10, 58, 62, 39,  8,130,
+199,179, 78, 73,132,103, 40, 68,194,219,131, 16, 38,176,123, 76, 56, 12,113, 42,131,183,168,201, 15, 88,111,251, 74,197,239,146,
+ 86,173,217,109, 62, 76,149, 70,228,132,185, 22,108, 54, 28,146,132,  0,252, 90, 91, 73,137,177, 26, 73,146,200,204,204, 84, 40,
+124, 18, 19,239, 18, 88,240,233,153,214,231,190,131,208,173,179, 29, 45,117,141, 18, 61, 80,158,222,205, 31,206,169, 16,227,128,
+ 51, 65, 46, 91,103,165,210,103, 70,145, 75,244,250,244,233, 19,146,183,231,237,101,123,111,231,231,251,207,194,226,141, 51, 50,
+183,130, 97,195,156, 15, 45, 95,231, 92, 62, 38, 43, 43, 95,209,212,149, 87, 38,173,224,217,119, 70,243,195, 18,137,254, 41,123,
+ 92,243,248, 54, 87,188,132,128,192,203,147,190,  4,142, 41, 42, 95, 74, 74, 62,130, 32, 48,102,204, 24,222,123,175,218, 37, 84,
+130, 91,136,159,156,125, 70,230,203, 13,253,253,218,155,244,216, 95,120,231,173,183,185,233, 38,167,167,231,206, 45,183,192,223,
+254,  6,171,215,244,227, 38,133, 83,116,228,110,170,177, 99,199,178,120,241,226,128, 19,218, 67, 69, 14,158,240, 21,152,144,147,
+155,171,104, 62,159, 59,249,249,249,204,155, 55,207, 37,124,111,188,241, 70,200,222,158, 59,141,  9,116,136,142,142,230,196,145,
+195,116,234,220,  5,209,110, 65,176, 59,208, 37, 52, 35,225,154, 62,196,247,190, 22,177,206,142,195,104, 65,178, 59,192, 33, 50,
+253,221,215, 25,127,207,120,191, 94,145,253,211,224,221,210,254,142,187,237, 75,223,199, 62,242,200, 35,228,228,228,184,158,  1,
+143, 62,250,168,207,227,148,138, 30, 64,215,174,204, 53,175, 22,  0,  0, 32,  0, 73, 68, 65, 84, 93,121,251,237,183, 41, 45, 45,
+101,216,176, 97,108,221,186, 21,163,209, 72,175, 94,189,104,217,178,165,162,223,224,110,175, 95,223,190,100, 63,152,205,161,163,
+135,248,227,131,217,108, 89,243,  1,199,107,202,233, 51,120, 24,173,219,167, 53,248, 92,160,177, 62, 73,146, 60,180,194,223,164,
+245, 80, 39,176, 71,154,144,163, 53, 66,125,120,251, 18,179,244,244,116,215,156, 62,111,219, 74,196,207, 50, 56,157, 52,210, 41,
+201, 93,  8, 49,209, 84, 72,118,172,118, 59,162, 36,210, 60, 49,145,163,117, 85, 33,101, 28,241, 53, 77,225,204, 24, 95,104,173,
+111, 95, 93,153,141, 77, 43, 38,207,  3,148,197, 77,238,190,245, 22,189, 80,190,195,215,249,111, 44,222,201,  9,220,201,205, 13,
+205,133,108,126,117,  9, 57,185, 57, 20,230, 55, 99, 78,222,221,252,176,  4,  4,  4,166,141,251,196,233, 17, 42, 20, 61,249, 94,
+114, 10,155,179,  1, 35, 73,224,235,121,187,112,206, 90,  0,226, 46,203,  1,252, 39,205,189,250,170,238,228,230,230,210,162,213,
+ 55,192,103,174,253,130, 32, 80, 83,147, 70,239,244,238,180,110, 63, 12,157,164,236,161, 30,204,227,115, 31,223, 11, 39,170, 51,
+ 39, 39,135,236,236,108,143,  8,197, 51,239,133, 86,159,221,199,250,228,  7, 96, 40,222, 94, 36,185,233,166,155,152,180,100,  1,
+127,175,169,164,215,224,235,209,180, 78,118,150,201, 38, 57, 83,140,161, 71,208,234, 16,162,180,188,151, 51,151,102, 67,251,208,
+185,115,231,115, 58,201, 90,238,202,124,247,221,119,201,206,206,166,103,207,158,141,178,119,240,224, 65,214,174, 93,139, 86,171,
+101,208,160, 65,104, 52, 26,159,227,122, 14,135,  3, 65, 16,124, 94,115,119,182,111,223,206,135, 11, 63, 32, 74,107, 96,236,221,
+ 99,209,104, 52, 92,127,203, 67, 13,142,179,219,237, 46,123,145,136,202, 60,223, 68, 38, 76, 49,  0,190, 68, 44,208, 67, 55, 20,
+ 97,189, 49,235,  1,138, 14, 22,177,253,235,213,212, 89,172,216, 29, 14, 58, 95,119, 13, 35, 46,187, 59, 36, 17,136,100,178,104,
+ 89,164,138,138,138, 92,158,237,236,217,179, 67, 18, 98,127,118,229,169, 16,125,250,244,113,237,159, 62,125,122,200,229,151,203,
+ 23, 41,178,178,156, 45,224, 64,229,200,202, 82,238, 65,186,147,150, 81, 77,110,134,187,221,240,210,149, 57, 69, 77,224,254,169,
+103, 18,237,202,245,119,225,156,181,196, 93,150, 67,220,101,202,186, 59,101, 78, 30, 31,206,130,  5,195, 17, 53,191,145,216,172,
+ 10,192,149,162, 44,148,138, 21,169, 41, 10,129,144,197, 47, 18,184,143,245, 53,198,219,147,  9, 87,136, 58,119,238, 76,155,199,
+ 30, 99,222, 55,223, 80,244,143, 47,200,212, 55, 39,169, 62,169,180,201,104,231,241,105,207,160,141, 77, 97,229,  7,185,236,106,
+ 33, 48,188, 17,121, 53, 29, 14, 59,161,142,241,203,132,210,149, 25,  8, 73,146, 40, 44, 44, 68,146, 36,186,117,235, 70, 89, 89,
+ 25, 58,157, 14,187,221, 78,243,230,205,129, 51,137,182,163,162,156,129,120,129,132, 79,146, 36,126,252,241, 71, 68,187,192,128,
+129, 61, 57,122,244, 40, 81, 81, 81, 88,173, 86,218,183,111,239, 58,166,170,170,138,232,232,104,  4, 65,192, 96, 48,  4, 45,167,
+ 28,192,227,235,181,251, 49,161, 18,169,110, 78, 56,  7,194,231,139,136, 10, 77,231, 84, 82, 39, 63, 18, 49,123,145, 32, 53, 53,
+149,212,212,212,179,146,140,217,125, 34,124, 99,108, 68, 50,177,181,146,223,121,190, 19, 83, 59,189, 56,240,213, 99, 24,170,224,
+121,163, 17, 47,165,166, 50,120, 90, 50, 95, 12, 27, 54, 76, 81,232,126, 36,136, 84, 50,224, 67,135, 14,133, 52, 22, 23,136,198,
+216,145, 36,137,216,216, 88,198,140, 25,227, 90, 70,168,216,109, 25,161, 77,107,215,184,150, 17, 26,218,111,104, 80,123,239, 85,
+188,202,195,201,207, 52,124, 67,225,234, 14,129,104,172,232,201, 92,123,237,181,174,185,122,162, 40, 98,181, 90,  1, 40, 45, 45,
+  5, 32, 62, 62, 30,192,181, 95,175,215,251,181, 37, 73, 18,163, 70,141,114, 29, 43,138, 34,102,179, 25,128,226,226, 98,  0, 87,
+ 84,178,188, 63, 42, 42, 42,160,199,119,161,172, 56, 35,140,186,119,230,133,145, 92, 77, 69, 69, 69, 69, 69, 37,  2,168, 43,176,
+171,168,168,168,168, 92, 84,168,194,167,162,162,162,162,114, 81,161, 10,159,138,138,138,138,202, 69,197,121,  9,110, 81,185,240,
+233, 29,230,114, 32,238,236,136, 64,116,150,138,138,138, 74,168,120,  8,223,232, 65,237,195, 54,244,229,134,134,243,158,154,186,
+189,107,218, 23, 16, 45,252,138, 78,115, 12, 13, 70,  4,  4, 36,180,136,245, 57, 57,  5, 73, 66, 18, 36, 87,186, 50, 45, 86,158,
+122,217,153,231,207, 87, 72,109, 83,255,189,145,182,215,190, 17, 17, 92, 71,125,132, 51, 55,245,223,171,218, 83,237,169,246,206,
+157,189,179,201, 69,237,241,253,125,214, 18, 30,190, 43,138, 43, 58,219,216,119, 80,114, 77, 90,159,251,172,134,169, 47,123,166,
+120,154,243,156,  6, 65,106,152,225,197, 47,146,132,245,196, 97,170,172,162, 51,141,154,160, 33,169,245, 37, 33,231,210,243, 38,
+ 33, 33,129,154,154, 26,204,167, 11,137,110,209, 48,171,130,202,185,231,215,130,237, 88,205, 70,122,246,188,190, 81,118,  2,205,
+109, 10, 39, 76, 60,210,246,100, 58,117,234,228,154,130, 33, 47,205,211, 24,188, 19,212, 71,106,170,132,138,138, 63,124, 10,223,
+  7, 31,190,175,216,192,253,247, 61, 24,244,152, 72,219,139, 36,239,125,106,101,238,179,222,171,176,123,138,222,196,187,  4,  4,
+ 73,  2, 36,186,117,118,230,241,252,246, 72, 16,195,118, 43, 35,118,254,147, 31, 79, 59, 40, 49,137,156,178, 10, 28,137, 74, 66,
+223, 57,157, 43,  7, 12, 37, 58, 38, 38,228,178,174, 88,183,143,229,255,212,129,197, 10,216,193,176,151,239,191, 55,177,117, 79,
+  2,209,137,141, 19, 65,243,169, 66,162, 91,169, 66, 26, 10, 63,239,202,167, 99,123, 11, 61, 58, 75,136,162,131,170,210, 79, 41,
+ 57,169,161,214,210,150, 62,233,131,194,178, 89, 85,250,191,104,181,103, 38,233, 31,152, 55,131, 94,127,183,134, 93, 70,111, 81,
+ 90,182,108, 25,211,166, 77, 11,219, 30, 56,231, 30, 78,153, 50,  5, 65, 16,120,227,141, 55, 34, 34, 84,174, 68,248,231, 48,171,
+138,138, 19,165, 43,227,  0, 32, 73, 44,120,239, 61,191,111,203,141, 45,247,185,126,114,142, 79,247, 92,159,242,117,118, 95,169,
+226, 92,210,164, 60, 62, 77,152,153, 17,194,101,206,179,  6,  4, 44,128,115,197,245,110,174, 85,122,180, 12,186, 86,100,195, 79,
+ 82,253,126,201, 99,173, 62,128, 81, 65, 22, 34,214, 34,210,169, 69, 60, 53,198, 82,180,118,  7,130, 93,194, 81, 99,226,196,230,
+ 47, 89,189,107, 51,131,238,127,130,148,250,108, 11, 74,248,232,187, 99,  8, 29,111,  5, 86,130, 70,  3,250, 88,208,234, 24, 48,
+ 36,158, 30, 87,158,224,223, 95, 28, 33, 58,182, 67, 48, 51, 30,152, 43, 10,233,211,181,134,  1,125, 99,192, 98,  7,246, 50, 96,
+222,181,180, 56,189,141, 81, 55,116, 11,201,214,133,194,206, 29,249, 24,116,229,232, 52, 86,204,102,  7, 85,117, 49, 92,127, 67,
+104, 75,175,236,221,183,157,132,232, 50,110, 26,104,160, 99,135,206, 52,107,150,136,205,110,167,180,244, 52,173,139,127, 99,255,
+193, 34,190,223, 84,206,128,129,183,133, 92, 62,173,182, 26,199,129,151,131, 31, 24,  2,145, 76, 79, 39, 47, 34,235,158,171, 83,
+201,162,177, 23, 58,249,249,249, 44, 91,182,172, 97,190,211,243,240,208,118, 34,213, 15,205, 68,192, 82,241,103,  8, 91,206,164,
+ 41, 59,147,210,175, 62, 75,183, 27, 15,229,212,113,221,248,183,253,218, 18,  4,129,175,191,254,218,181, 61, 98,196,  8, 86,173,
+ 90, 21,112, 59, 20, 86,120,197, 22,132,155,197, 37,160,240,109,218,184,133,129,215,247, 13,203,112, 56,136, 33, 92,198,112, 86,
+144,110,240,125,130,134,253,  7,156,130,215,173, 51,236, 59,168, 65,146,162,113,  8,  6,110, 31,102, 99,204,112, 19,103,188,191,
+208,111,177,195, 71,143,177,226,  4, 28, 53,130, 93,130,120, 13,232,244, 90,162,106, 75, 89,183,248, 61,110,207,126, 58,104, 46,
+ 61,128, 79, 63,255, 22,161, 87,150, 43, 13, 17, 22, 43,136, 34,232, 28,160,209,144,144,156,194,157, 67, 78,177,108,181,133,232,
+100,101, 94,155,185,238,  8,127,186,181,146,132,214,109,192, 33,  2,118,176,217,137,105,221,137,170,148,118,124,180, 97, 29,247,
+ 14,186, 36,228,223,124,174,216,177, 99,  7,189,123,247, 86,124,252, 47,123,183, 35, 89, 14,211,161,173,153,196,102,  6, 52,154,
+ 88, 76, 38, 59,101,229, 38,214,231,207, 35,186,217, 53,244,189,238,  6, 69,182,162,181,165,164,117,146,184,234,170, 43, 56,126,
+162,130,109, 59,182, 83, 91, 91, 71, 98, 98,  2,169,169, 29,208,104,245, 56, 28,197,236,216,185,145,222,189, 26,215,253,217,212,
+ 24, 54,108,152,199,  2,173, 83,166, 76,225,141, 55,222,224,189,  0, 94, 64, 40, 52, 85,143, 79,206, 60,180,116,233,210,136,173,
+ 68, 30, 46,238, 94, 85,110,110, 14,141, 45,138,166,195,157, 46,123,142,197, 73,110,121,108, 67, 55,124, 54,207,139,183,232,185,
+239, 11, 85,  0,131,122,124,155, 54,110,  1,104,180,  0,110,124,108,127,192,247,175,127,171, 75,200, 54,221,221,101,  8, 93,  0,
+159,122,201,  4, 56,187, 46,247, 29,132,  5,159,138,128,177,254, 15,  6, 93,171, 97,204,112,  1,247,174, 79,167,  7, 40,  4,237,
+234,180,105,244,228, 92,114, 39,199,146, 68,208,104, 73,192, 66, 90,209,183, 20,151, 27,169,212,104,169, 58,118,136,223,126, 59,
+ 76,135, 14,129, 83,135,253,180,109, 27,167,147,254,159,189, 55,143,143,170,190,254,255,159,119,102, 50,201,144,141,132,132,176,
+132, 45, 65, 22,145,125, 81,217, 41, 65, 16,148, 86, 37,128, 66,173,181,149,128,218,175,160, 69, 20,244,215,126, 62, 46, 31,176,
+ 42,104,173, 16,108,173, 86,  2, 74, 80, 43, 42,173,  2,178, 10, 10, 68,100, 21, 16,  2,  4, 18,150, 44,147,125,246,185,191, 63,
+134,123,153,153,204, 62,147, 16,244, 62, 31, 12,153,187,157,185,247,206,220,251,186,231,188,207,251,188,  7,211, 58, 42,138, 40,
+109, 20,191, 90, 57, 29,211,251,119,203,203, 31,152,115, 43,211,238, 76,165,125,155, 24, 50, 83,244, 20,  7, 80, 83,219, 88,126,
+130,123,198, 84, 17,159,148, 12, 70,147, 67, 68,173, 54,176, 88,209, 70,107, 81,  9, 96,190, 97, 20,239,127,146,203,244, 95,254,
+194,191,193, 38,102,255,254,253, 46,  3, 92,  6,130,169,174,152, 46,237, 13,164,180,138, 37,189,125, 27, 90,196,182,224,236,217,
+ 98,108, 54, 59,237,219,197,115,228,135,221,124,175,139,165, 95,111,223, 99, 67, 30, 58,180,147, 62,221,204,116,236,216,133,163,
+ 63,156,165,160,224,  7, 74,203,106, 16, 69, 72, 74,210, 81, 95, 95, 75,255,254,189,168,172,172,162,184, 96, 63,  7, 14,233,232,
+235,199,230,245,130,228,237, 57, 15, 20,251,218,107,175,177,108,217,178,160,189,190, 89,179,102,121, 28,230, 70, 16,  4,151,208,
+ 91, 36,194,168,207, 61,247, 28,119,222,121,103,216,101,195,178,178,178, 16,  4,129,181,107,215,  6,244,192, 58,123,246,108,143,
+ 30,225,247,223,127, 47, 23,173,246,244,240,150,147,147,227,245, 70,238, 92,111,213, 49,146,185,231,207,  8, 20,119,123,234,105,
+149,216, 63,104, 25,178,189,166,192,249,220,120, 18,195, 64,  8,184, 31,223,215, 59,191,149, 69, 48, 20,124,  9, 91, 40,162, 39,
+177,109,219, 54,138,139,139, 41, 46, 46, 14,107,136, 11,215, 54, 62,  7, 59,246,218,145,158,122, 94, 93, 36,240,202, 51,  2, 61,
+ 50,  5, 68,188,215,191,147, 80,169, 53,220,112,243,109,140, 26, 51,129, 81,163,198,209,127,228, 68,226, 38, 63,198,232, 86, 34,
+ 96, 71, 35,192,225, 67,254,207,231,201, 83,167,137,111,149, 78,148, 86,131, 54,202, 81,204, 56,122,250, 71,242,235,240,193, 66,
+ 48, 26,193,104,164, 95,199,170,128,142, 53, 51, 73, 79,251,180, 24, 48, 24,169,188, 92,205, 59,121,  7,232, 62,248,111,188,181,
+242, 91, 44,117, 85, 68,105,163,136,138,138,162, 44,101, 48,123, 27, 97, 20,135,112,144, 68, 47, 24, 14, 31,253,142, 24,205,  5,
+116,186, 40, 98,162,181,116,233,210,153, 65, 67,134,144,148,148,132, 70,163, 70,171, 85,147,156, 20, 67,241,185, 51,126,109,105,
+196, 98,226,227,116,212, 27,172, 28, 62,252, 35, 37, 23,171, 40, 58, 95,205,137, 66, 51, 23, 46,214, 80, 90, 90,201,143, 39, 10,
+233,154,153, 73,251,118,  9,148,151, 22,133,116,156,205, 17,169,109,207,157,121,243,230,133, 84,111, 84,170,244,239, 44,126,254,
+  6,208, 13,  5, 81, 20, 89,190,124,185, 60, 32,108,168,108,222,188,153,252,252,124,121,116,148, 64,188, 27,105,240, 89,  9, 73,
+244,192,241,160,238,190, 79,254,246, 81,250, 76,105,228,246,112,145,236,173,157, 23,235,123, 61, 32,208, 34,221, 19, 38, 76,224,
+246,219,111,151,195,152,210,123,105, 90,122, 31, 76,152,211,155,103,119,199,204,103, 67, 10,119,  6,221,198, 23, 41, 15, 48,146,
+252,248,163,195,155, 44, 46, 46,166,125,251,246, 33,132, 62,  5, 94, 93, 36, 94,241,250,174,206,157, 53, 29, 28, 95,185, 35,214,
+125,252,164,180,220,236,183,141,175,193, 39,  8, 42,196,132,214,116,111, 21,131, 80,100,196,  6, 24, 12, 53,126,183, 59, 95, 84,
+ 68,219, 94, 42, 52,106, 13,106,117, 20, 54,155,197,101,249,185, 83, 53, 96, 48,  2, 34,  9, 98, 96, 73, 16,253,218, 86,129, 65,
+  5,  8,156, 58, 81,202, 75,111,159,101,228, 93, 15, 80,221,174, 39,218, 11, 23,137, 74, 76, 70,180,219,136, 79, 77,231,228,247,
+ 95, 48,120, 96,211,123, 44,158, 66,153,206,162, 23,204,133,175,175,184, 76, 74,188,128,213,102,199,108,177, 82, 90, 86, 65,148,
+ 54,  6,147,201,130,197,106,195,106,181, 99,181,137, 84,234, 27, 14, 78,234,142, 54,170,142, 24, 93, 58,229,229, 85, 84,215,212,
+ 83,161, 55,144,208,170, 47, 67,251,244, 97,207,215,255,165,157,217, 74, 85,117, 21,221,187,103, 18,173,213, 80, 87, 83, 17,220,
+129, 55, 83,186,116,233,130, 40,138,114,219,158, 51,203,150, 45, 11,169,173,111,238,220,185, 46,222,163,251,178, 64,195,102,206,
+ 99, 41,206,158,157,204,216,177,174,  5,169,139,139,139,  1, 88,191,126, 61,101,101,101, 33, 21, 76,223,180,105,147, 44,122,210,
+246, 31,126,248,161,207,109,164, 65,104,157,239, 71,203,151, 47,151, 19, 58,164,241,234,156, 31,228, 86,172, 88,225, 87,244,165,
+145, 30,230,204,153, 35,123,142,190,206,149,191,251, 97,118,118, 54, 83,110,221,196,  7,192,180,165,117,168,166, 85,250,180, 55,
+100,154, 79,115, 13,218,240,252,181,249, 93, 11,154,180,114,139, 39,207, 46, 28,111,175,170,202,213,195,249,241,199, 31, 89,182,
+108, 89, 80,158,223, 67,211,213,128, 35,121,101,229,251,142,176,167,244,186,154,236,  2,224,240,246,  2, 70, 20,137, 55,148,147,
+ 96, 40, 67, 87, 87, 78,108, 93, 41,221, 47, 21,176,191,220, 72,165, 93,192, 10, 36,182,  9,164,223,139,136,205, 84,131, 90,173,
+ 66,173,113,253,186,110,216, 58,139,137, 99,186,200, 30, 95, 97,137,255, 33, 67,  0,135, 64,214, 27,193, 96,228,252,143,151, 72,
+107,223,129, 30, 61,123,  2,208, 82, 99, 69,163,209, 92, 17, 90, 21,231,139,154,222, 99,217,191,127,127,131,167, 97,105, 30, 56,
+194, 51,193,132,173,108, 54,168,171,183, 80, 87,103,166,186,218,196,165, 75,122, 74, 74,202,168,169, 49, 81, 91,107,161,182,214,
+ 76, 93,157,133,170, 74,255, 30,179,201,100,197,104,180, 97,177,152,137,143,215,210,161,125,  2, 45, 98, 29, 79,203, 25,153,157,
+ 73,111,151, 64, 98, 66, 12,162,104,195, 98,181, 99, 50,213,  5,121,244,205,147,113,227,198,241,248,227,143,123, 93, 62,119,238,
+220,160,188, 62,231,161,141, 60,177,116,233,210,160,  6, 67,150,112,132,255,114, 92, 94,146,144, 20, 23, 23,147,159,159, 31,116,
+100,104,243,230,205,172, 91,183,206, 69,244,178,178,178,152, 50,101,138,207,237,230,204,153,131, 32,  8,242,239, 88,242,254,164,
+240,162,244,240,230,188, 92, 20,197, 32,134,143,114,136,147,123,147,143, 51,129,120,206, 41, 41, 41,  8, 92,245,231,194,181,215,
+216,124,182,234, 57,249, 21, 42, 65,123,124,205,201,211,147,176,217,108, 33,141,105,246,208,180,104,122,102,154, 57,118,234,234,
+188,199, 95,112,136, 30,224,228,  1, 74,225, 78, 53,175, 44, 18,176, 17,199,118, 63,109,124,118,171,133,110,187,114,137, 22,236,
+148,154, 85, 96,179,114,238, 66, 49,127, 47, 86, 17,133, 72,149, 90,224,230,254,254, 83,222,211,211,219,179,253, 95,243,153,248,
+212,199,168, 98, 98, 72, 72, 72,228, 95,189, 30,  3,209,  4,195,219, 57,210,175, 76, 70,176,195,222,163,241,208,213,255,113, 23,
+ 94,140,166,111,138, 17, 16, 24, 63, 56,141,148,242, 31, 41, 48,150,144,153, 92,206,206,244,  5, 68,169,109,168,213, 42,108,198,
+ 26, 66,105,224, 14, 23,201,211,147,158,102,157, 83,158,189,181,139,248, 34, 41, 57,149,146,211,135,137,214,170, 49, 91,236, 24,
+ 77,231, 57,119,190,156, 10,125, 53, 21, 21,245,148, 87, 24, 40,175, 48,208, 50,185,179, 95, 91,151,202, 68, 46, 94, 42,163,103,
+207, 76, 42,245,122,162, 52, 42,170,107,206, 83, 87,105,231,198,174,117,164,165,166,210,162, 69, 11,162,163,117, 92,184, 88,131,
+160, 14,108, 84,239,235,  1,111,222, 25, 92,109,235, 11, 20,201, 51,124,236,177,199, 26,120,145, 82, 56, 53,212, 76,209,169, 83,
+167,186,120, 44,210,184,152,130, 32,112,207, 61,247, 48,110,220,184,128, 59, 76,123,242,244, 36,220, 61, 75,119,250,245,235, 39,
+123,125,146,231, 39,  8,130,252,208, 38, 45, 95,190,124, 57,185,185,185,178,183,215,175, 95, 63,206,249,216,191,229,203,151,243,
+240,195,115,228, 65,132, 29,  2, 42, 69,166, 28, 94,163,116,252,129,136,232,242,229,203,249,219,152, 36,166, 45,115,228, 54,184,
+135, 61,167, 45,171,151,237, 61, 56,198,127, 51, 79, 99,226, 46,118,159,173,122,174,113, 67,157,145, 18,188,225,175,223, 32, 39,
+186,132,227,237, 57,227, 46,122, 19, 38, 76,  8,104, 36,247, 30, 93, 29,109,120, 61, 50, 97,196, 96,216,177,215,117,185,115,216,
+243,247,211,226, 16,177, 33, 34,160, 18,253, 59,202,162,221,198, 39,135,138, 40,183,136, 24,173, 80,103,131, 10,171, 10, 17,145,
+ 50,131, 72,247,  9,119,146, 16, 23,239,215, 78,255,  1,253, 57,127,254, 60, 37, 71,182,208,121,192,  4,180,218,104, 71, 86,167,
+ 74,  5, 54,179,252,152,182,126,187, 25,123,215, 59,252,218,  3,216,123, 66, 75,223,204, 26, 16, 32, 70, 37, 48,236,246, 12,134,
+ 89, 14,128, 16,205,  7,151,162, 48,155,237,216,140,181,124,243,247,249,140,188, 57,188, 17,163, 67, 69, 26,181, 58, 55, 55, 87,
+ 78,130,  8,214,211,147,232,219,123, 32, 63, 28, 46, 64, 44,174,166,222, 96, 65, 31,109, 68, 68,143,209,104,165,186,218,196,229,
+178,122, 74, 46,212, 50, 98,140,255,238, 32,  6,115, 10,133,167, 75,201,232,210,145, 46, 93,210, 41, 47, 47, 35,169,165,141, 27,
+110, 72,164,117,106,  6, 49, 58, 29,149,149,181, 20,124,119,140,243,197,213,180, 73,239, 21,202,225, 55, 11, 68, 28,207, 85,146,
+134, 56,139,137,175,126,119, 94, 31,149,220,178,227, 55,110,220,200,178,101,203, 26,  8,223,171,175,190,202,151, 95,126,233,215,
+158,244,187,144,  6, 66,118,236,147,216, 64,144, 36,225,155, 50,101, 74, 64, 97, 78,215,208,233,230,176,  6,145,158, 51,103,142,
+ 28,214,  4,120,248,225,135, 61, 46,151,  4,202,159, 80, 73, 25,165,111,190,185, 92,110, 11,237,215,175, 47,206,237,111, 87, 61,
+ 54,255,227,  0, 74,246, 84, 83,245,178,189,236, 91,163,113, 62,235, 83,151,214,201,246,  2, 97,194,132,  9, 46,153,175,183,223,
+126,187,203,239, 36,156,240,230,172,  5,139, 93,166, 87, 46,121, 42, 36,241,243, 43,124,205,209,195,147,152, 62,125,122, 88,219,
+ 11, 78,237,119,119,221, 38,112,215,109, 14, 65, 19,  1,  4,145, 89,211, 69, 68,162,176,139,137,100,102, 38, 96,167, 20,  1, 27,
+118,193,191, 23, 36, 34, 80,101, 87, 83,102,177, 99,181,139, 84, 91, 68,106, 44,118,204,106, 13, 25, 99,198, 50,106,228,237,  1,
+237, 99,143,110,221,185, 48,168,132,125,251,242, 56, 81, 93, 70,215, 91,239,118,120,117,102, 51, 32,240,125, 97, 13,251, 79,199,
+ 98,185,225,190,128,143,219,222, 99, 20,235,183,190,207,228, 91,181,210,206,130,168,  2,187,163,141,208, 98,168,161,228,224, 22,
+ 50,218,183,162,255,128,224,188,171, 72,209,175, 95, 63,151,172,184,156,156,156,176,178,242,210, 59,117,103,223, 55, 95,208, 58,
+165,  5, 45, 90, 56,126,246, 38,147,141,234, 26, 51, 21,122,  3, 29,186,244, 98,248,208, 81,126,237, 76,156,120, 15, 95,254,231,
+159,124,179,231,  8, 35,134,245,165, 83,167, 78, 88,204, 70,250,247,235, 67,108, 98, 34,103, 11,139, 40, 46,169,228,235,221, 63,
+160,175, 73,228,174, 91,253,219,108,174,204,153, 45,133,  4,  5,230,228,228,200,194,101,119, 19, 59,149, 74,  0,241,234,173, 82,
+  0, 38,121,184, 17,205,206,201,113,118, 76,  0,  1,187,221,238,226,245, 61,246,216, 99,  8,130,192,132,  9,227, 29,171, 92, 89,
+127,210,140,134,246, 36,241,245, 39, 74,130, 32,  4, 44,122,238, 76,153, 50,197,175,103,231, 11,233,119, 44, 69, 47,250,246,237,
+235,117,121, 32,163,180, 59,139,168, 40,138, 87,188, 61, 87, 69, 10,166,253,219,221,222,218,121,113,184, 63,106, 56,207,251,226,
+128,  5, 95,120,234,199,215, 28,219,248,124, 10,223,208, 97, 67, 26, 37,166, 27, 41, 79,207,249,  4,134,194, 15,167, 68,122,202,
+237,120,  2,143,191,224,218, 23,192, 17,242,180, 99,195,196, 15, 39,107,120,251,  3, 71, 69,141,225,131, 45,180,236,238,219,182,
+136,136,209,  6, 86,187,136, 40,138,104,219,221, 64,187, 54,157,184,105,240,173,164,183, 11,174,166,221,152,209, 99,136,139,139,
+ 99,235,150,255,242,201, 87,239,194,231,183,200,203, 86, 30,236, 71,191,  1,131,131,178,  7,112,177,211,116,254,185,113, 53,253,
+ 59,212,209,175,115, 60,136, 34,149,181, 22,106, 74,139, 56,185,243, 35,140,199,190, 96,208,160,129,244,232,230,231, 64, 27,145,
+254,253,251,203, 79,192,193,134, 55,221,145, 68,237,196,177,163,148, 20,158, 69,165, 18,176,217, 68, 98,116,201,116,235,121, 19,
+119,253, 42,240, 81,216, 91,183,239,195, 55,123,254,139,209,104,165,247, 77, 25,180,111,151, 66,209,185, 75,232, 15,157,226,248,
+137, 34, 54,127,117,144,179,197, 34,191,127,232, 15, 33,237,235,233,207,252, 39, 61,  5,195,153, 51,103, 66,218,206,254, 65, 96,
+ 97, 90, 79,235,221,185, 62, 64,123,167,254,233,226,245, 45, 91,182, 12, 10,223,105,176,174, 39,123,158,240,212, 69, 34,220, 78,
+230,225,222,  3,165, 68, 20,111,162,230,111,185, 59,206,194,230,105,155, 96, 31, 16,237,103, 63,100,221,178,251,  1,200,190,181,
+ 97, 40,211,121,158, 63,225,107,174,253, 48,221,241, 41,124,205,161, 33,211, 27,145, 24,226,254,173,247, 29, 66,231, 16,184,134,
+117, 56,143,157,130, 30,153, 86,212,212,201,162,  7,176,115,175,153, 59,252,234,129, 64,141,217,138,217, 10,151,204, 48,245,222,
+135, 72, 72, 72, 12,121, 95,  7, 15, 26,204,224, 65,131,217,187,111, 47,112,181,129, 49, 20,209,147,176,244,186,143,149,223,237,
+ 69,189,235,  8,149,165, 39,217,119, 41,145,227, 69,191, 36,179, 67, 26,163,199,140,102,240,160,208,109, 71,138,112,  5,207,153,
+225, 67, 71, 49,124,232, 40,190, 63, 84,192,165,139,151,136,141,141, 13,200,203,115,167, 95,159,129,244,235, 51,144,188, 85,185,
+ 28, 61,254, 45,109,211,226,136,137,137,162,182,214, 76,241,133,106,  4, 77,  7,126,255,208,253, 33,237, 99, 92,178,247,  4,146,
+ 80,144,250,222, 53, 91,190,123,  2, 50,127,235,218, 77,162, 32,244,115, 16,137,123,214,236,217,201, 78,  2, 26,153, 27,185, 63,
+ 49, 10, 70,172,194,237,143,232,142,167,240,102,115,101,229,146,167, 26,132, 59, 67,193,163,240, 69,186, 94,102, 83,215,223, 12,
+150, 99,167, 84, 87,170,183,136, 87,186, 48, 56,184,154,213,105,103,214, 52, 13, 43, 63,176,  6,108, 83,163,141,198,152,148, 78,
+ 93,141, 17, 98, 69, 90,180,104, 17,145,125, 29, 60,104, 48, 61, 31,222,202,160,244, 42, 90,182,234, 74,239,224,187, 79,185,224,
+ 16, 78,135,192,141,  0,246,238,219,219, 44,  4,175, 49,233,215,123, 32,244, 14,223,206,140,153, 57,236,220,181,141,210,242, 82,
+ 12, 23,235,137,137,105, 69,122,151, 62, 33,137, 41, 68,230, 97,174, 49,237, 57, 35,138,118,  2,237,215,229,151,194,119,174,102,
+120, 22,190, 27, 25,155, 97, 16, 78,104,243,122,228,182, 59,166,  5,229,169, 13,241,179,188, 49,218,248,238,152,249,172,156,216,
+178,114,201, 83, 13,150,  5, 75,179,170,213,121,173, 16,229,211, 96,109, 80,151,211,225, 13,170,185,161,107, 12, 80, 27,176, 77,
+ 65, 16,152,240,112,227,140, 55, 55,239,143,243, 27,197, 46,240,147, 23,189, 72, 19,170,200, 93, 15,172,212, 47,102, 86,210, 83,
+ 13, 23,228, 39, 71,214, 94,193,227, 97,121,121, 10,225, 49,229,145, 55, 34,102,171, 49, 31,182,156,197,207,121, 94, 40,  8,119,
+204,124,182,249,251,183, 10,205, 14,101, 32, 90,  5,  5,133,235, 21,197,227, 83,  8,  9, 69,180, 20, 20, 20,174, 87,154,180,114,
+139,130,130,130,130,130,194,181, 70, 17, 62,  5,  5,  5,  5,133,159, 21,138,240, 41, 40, 40, 40, 40,252,172,112,105,227,187,115,
+ 68,112, 29,171,157,241, 84,251, 46,210,246, 70, 13,105,239,119,187,186,138,139,242,251,216,228, 54,242,251,109,123,138, 27,172,
+107, 74, 77,243,107,111,227,210, 71,229,247,227,230, 93,205,126,138, 46,189, 20,210,254,121, 35,212,253,243,134,167,253, 27,212,
+223,255,192,178,101,167,143,200,239, 83,186, 92, 45,183,181,111,127, 73,131,117, 35,125,254, 38,108,244, 61,246, 90, 98,187,118,
+252,218,105,152,151, 55,210,174,126,254,127,199,205,106,176,126, 99,255,158,143, 31, 63,222,160,208,242,188,121,243,232,222,189,
+ 97, 39,207,166,184, 62, 20,123,215,159,189, 67,135, 14,201,239,123,247,190,218,199, 38, 84,123,222,  6,232,110, 46,199, 27,140,
+189,198,196,111,114,139, 84,164, 85, 34,156,186,117,141, 97,175,174,226, 34,177,201,109,100,193,107,211,161, 51,  0, 23,  3, 24,
+ 91,205, 19, 27,151, 62,202,184,121,111,200, 55,236,191,173,223,  3,192, 35,147,253,245, 94,185, 62, 41, 59,125,132,148, 46,189,
+100,193,235, 53,104, 24,  0, 71,246,125, 29,146,189, 72,158,191, 79,107,107,249,162,174,142,241,177,177,124, 81, 87,  7,151, 46,
+177,103,193,147,  0, 12, 89,242, 82, 72,251, 23, 41,182,110,221,202,251,239,191,143,209,104,116,153, 31, 19, 19,195,244,233,211,
+ 25, 61,122,244,181,217, 49,133,102,205,161, 67,135,232,221,187,183, 44,120,225, 94,111, 82, 77, 98, 73,240,194,185,222,220, 71,
+173,136, 84,215,  4,111, 98,124, 45,241, 43,124,249,249,249,196,245,204,118,153, 14, 71,168,242,243,243,201,142, 77, 13,219,158,
+ 36,116,186,196, 86,212, 85, 92,148,  5,207,219,122,254,144,110,212, 67,102, 60,197,198,165,143,202, 63, 32,111,235,249,234, 63,
+226,254,153, 90,173,163, 38,166, 40,138,216,237,142,209,220,109, 54,155,188,255, 42,181,239,138,231,206, 94, 19, 64,219,214, 14,
+ 79,199, 92, 93,137,201,234,232, 84, 95,107,181,201,251,159,216,218,255,147,151, 36,116,137,237, 50, 41, 59,125, 68,190,  0,189,
+173,  7,190,203, 87, 69,242,252,  1, 60,122,201,225, 17, 74,162, 39,  9, 30,192,241, 47, 55, 54, 88, 47,176,242,220, 80, 21, 91,
+ 70,121, 92, 41,149,229, 39,105,221,178, 39,233,101,  1, 12,103,225,198,241,227,199,249,224,131, 15, 26,136, 30,128,209,104, 68,
+167,211,209,182,109, 91,143,158,159,194,207, 19, 73,232, 18,219,101,114,232,208, 33,175,215,219, 85, 15,208,247,245, 38,137,201,
+144, 25, 79,145,147,147,227,245,122,147,214,243,119,189,229,228,228,176,252,157, 53,174,243, 30,184, 55,108,161,114, 23,211, 64,
+  6, 15,104, 10,124, 10, 95, 78, 78,142,139,232,  1,196,245,204, 14,121,231,115,114,114, 92, 68, 15, 32, 59, 54, 53,104,123,117,
+ 21, 23,209, 37,182, 34, 49,193, 49,186,129,244,215,211,122,109, 58,116,246,235,253,109, 92,250, 40, 67,102, 60,197,111,166,221,
+ 13, 32,255,245,180,222,223,214,239,  9,234,105, 74,173, 86,147,158,158,142, 90,173,198,108, 54, 83, 87, 87,135,205,102, 67,175,
+215,  7,108,195,153, 56,141,154,183,151,125, 76,116, 34, 92, 58,  3,123,107,139, 41,189,120,146,247,150, 62, 29,176,141,178,211,
+ 71, 72,108,151, 73,122, 59, 71, 40, 88,250,235,105,189, 64,  8,230,252,  5, 82,  4,234,209, 75,151, 24, 31, 27,203,115,143, 62,
+  2,128,212, 99,240,248,151, 27, 89,117,226,132,203,122,  1, 25,188,194, 25,113,  7, 12, 41,102,122,199,153,152,236, 93,137,182,
+139,252, 80,182,153,253, 27,143,211,213,254,176,127,  3, 87, 88,186,116, 41,  6,131,129,119,222,121,135,  7, 30,120, 64,158, 47,
+ 77, 27, 12,  6, 98, 98, 98,194,174, 17,169,240,211,224,208,161, 67, 36,182,203,228,196,254, 93,244, 26, 52,172,193,245,246,213,
+231, 31,145,150,150,230, 18,246,244, 69, 78, 78, 78, 64,215, 91, 78, 78,142,235,240, 26, 62,236,185,139, 30,192,242,119,214, 68,
+ 68,252, 34,129,175,177,247, 66,233,196,126,221, 37,183,184,139,158, 59, 85,213, 53, 92, 60,119,  6, 93, 98, 43,175, 94,160, 51,
+238, 55,109,119,222,253,224, 35, 30,153, 60,132, 33, 51,158,242,250, 84,229,  9,173, 86,139, 90,173, 38, 33, 33,129,194,194, 66,
+244,122, 61,118,187, 61,100,209,107,219, 58,141, 56,141,154,187,254,240, 60,183,223, 55,148,207, 14, 23,115,209, 64,216,162,231,
+206,249,146,139, 28,217,247, 53,169, 73,  9,142, 25, 26,223,227, 28,  6,122,254, 38,220,243, 27,  0,146, 52,190,189, 91,119,209,
+  3,120,246,141,191,241,236, 27,127,147, 69,239,139,186, 58,230,223,118,197,199, 75,213,250,180, 39,177, 63,113,  3,183, 77,105,
+199,111, 59, 61, 76,148, 42,142, 88, 90,160, 66, 77,251,180, 97, 12,191,103, 44,133,237,188, 15,138,234,204,214,173, 91, 29,199,
+245,174,163,180,214, 59,239,188,227,241,175,243,186,161,176, 99,199,142,144,183, 85,104, 62, 72,162,247,194,194,121,228,231,231,
+243,247,191,190,236,178,252,171,207, 63, 34, 63, 63,159, 55,222,184,210,254,237,231,122,115, 23, 61,119,164,235,237,246, 97, 87,
+106,220,198,199,122, 92,207,217,158, 39,209,147, 88,254,206,154,160,  7,238,189, 30,240,234,241, 73,222,222, 43,207,252,142, 89,
+247,141,151,231,175, 92,253,  5, 79, 60, 31,188,203,234,236,237,221, 56,225, 22,254,188,206, 81,110,125,106, 92,235,160,189, 62,
+ 79,162, 87, 85, 93,131,161,170, 28,192, 69, 24,171,170,253, 87,186,247,244, 35,122,247,131,143,216,147,231, 40,134,234,252, 67,
+123,247,131,143,  2,218,199,204,204, 76,202,203,203, 41, 47, 47, 71,171,213,162, 82,169, 48, 24, 12,232,245,122,212,106, 53, 54,
+155, 45,168,130,186, 31,254,251, 99, 54,124,103, 96,217,220,219,104,219, 58,141, 22,177,201,156,171, 43,230,189,165, 79, 19,167,
+ 81, 83,107,181,161, 14,208,158, 39,209, 59, 95,114,145,170, 18,199,136,188, 61,210, 91,115,166,180,146,232, 22,209,152, 12, 38,
+191,246,252,157,191,167,223,250,140, 85, 47, 62,206, 77, 25, 55,242,195,233, 31,252,218,147, 68,207,221,195,251,162,206, 49, 46,
+ 88, 97,206,255,112,215,231,255,160,215,144, 12,142, 20,248, 31,172,244,128,246, 51,134,141, 78, 35, 53,182, 39,  6,177,  6,181,
+185, 14,173,213, 68,149,202,134, 81, 16,177,107,227,104, 63, 98, 16,235,158,126,145, 41,253, 22,250,180, 37,181,235, 69, 71, 59,
+ 70,187,151,126,179,210,205, 65,154, 54, 26,141,196,196,196,132,220,214,183,106,213,106, 70,140,240, 63, 80,177, 66,243, 39,189,
+ 93, 27,178,179,179,201,207,207,167,160,160,128,140,207, 63,162, 91,255,161,156,216,191, 75,206,119,200,206,206,142,216,245,246,
+210,  3,119,240,215,255,126, 67,155,140,182, 92, 60,219, 48,137,172, 41,113,110,127,148,166,195, 33,212, 18,101,238,248,109,227,
+147, 68, 47,254,198,169,212, 28, 93,203,172,251,198,243,196,243,255,  8,235, 67, 37,209,139,  4,206, 97, 76, 79,158,160,161,170,
+252, 74,118,103,195,172, 73, 79, 56,135, 49, 61, 61, 89,237,201, 91,236,200, 78,244,144,149,232,140,213,106,165, 69,139, 22,168,
+ 84, 42,146,146,146,168,175,175,167,238,202,141, 59, 53, 53,149,242,242,242,160, 10,195, 26,245, 48, 68,167, 99,254, 95,119, 48,
+174, 47,156,221, 15,210,184,185,243,255,186,131,215,231,141,193,102,183,249,180,225,  9,231, 70,245,177,  3,123,160,137, 87,241,
+197,214,163,244,239,209,129,132,184,104,182,237, 59, 73, 74,151, 94,156,241,144,213,233,  9,231,243,183,254,168,  8, 23, 96,242,
+ 88,129,183, 62, 43,164, 85, 82, 23,238, 30, 38,  4,116,254, 36,209,147,196, 14, 64,252,243, 82,104, 95,133,240,208,159, 16,255,
+231, 57, 80, 25, 16,246,188,200, 27,105,105,248, 26,160,202,216,227, 44,157, 90, 78,164,218, 86,139, 73,127,146,247,138, 86,179,
+115,178,158, 27,127, 63,134,219,254, 16,135, 46,169, 59, 49,154, 36, 52,147,171,216,251, 81, 96, 69,186, 85, 42,149,203,247,231,
+ 62, 29, 14, 59,118,236, 64, 16,  4,118,238,220,201,240,225,195, 35, 98, 15, 80,132,244, 26,242,139, 73,119, 83, 88, 88, 72, 65,
+ 65,  1,249,249,249, 12,188,242, 30, 96,224,192,129, 76, 24, 53, 72,190,222,122,247,238,205,153,  0,179, 28,157,175,183, 11,255,
+ 94, 76,124,175, 24,226,110,152,203,218,197,191,167,239, 77,109,232,126,199,243,228,230,230, 54,121,214,164, 51,205, 33, 84,234,
+142, 71,225,115,110,219,139,191,113,170,199, 13,131,105,235,243,212,182,231,206,212,184,214, 46,  3,143,  6,130,228,205,121, 11,
+125,  6,226,237, 57, 35,121,115,222, 66,  9,129,122,123,  0,101,101,101,180,110,221, 90,246, 12, 44, 22,139,156,208,146,152,152,
+ 72, 84, 84, 20,231,206,157,195,119,224,239, 42,255,220,180,141,223,223, 49,138,209, 87,166, 79, 88, 29, 97, 78,128,209,221, 32,
+225,249, 45,204,251,227,208,128,247, 15, 28, 94, 30, 64,199,214,201,232, 77, 38, 52,  9,106,140,165,245,160, 82,209,182, 83, 58,
+ 95,126,181,215,143,  5, 87,164,243,243,155, 39, 94,224,244,215,155,209, 92,132,202, 52,104,161, 82,113, 75,231, 46,252, 98, 84,
+ 96,221, 51,220, 61,189, 85,211,126,207,135,166,227,208,213,  8,223,106, 32, 78,  3,119, 14, 36,253,206,223,  4,100, 47,179,125,
+ 50,102,115,  5, 81, 86, 11,239, 21,173,102,247,  3,137,140,188,235,151,244,104,221,147,195, 95,110,165,127,118, 29, 81,230, 58,
+172, 61,236,148, 94, 10, 44, 25, 74, 18, 57,169,141,207,125, 58, 28, 86,173, 90, 77,110,238,114,102,207,126, 56,108,225,219,177,
+ 99,  7,121,121,107,228,253, 83,196,239,218, 49,225,158,153,100,100,100,200,158, 31, 56, 60,189,180,182,109,195,186,222,102,221,
+ 57,146,111, 74, 46, 19,223, 55,158,226, 47, 78, 65, 76, 52,247,252,225,126,146,211,  3, 77,249,106, 28,188,133, 72,195, 17,194,
+ 72, 21,169, 14,184,141, 79,242,252, 86,174,254, 34,164, 15,242,196,159,167, 76, 70, 23, 31,239,  8,249,  9,  2, 42, 85,112, 77,
+142,134,170,114,159,237,125, 87,189,189,192,216,147,183,216,103,252, 92,246,246,  2,160,186,186,154,154,154, 26, 76, 38, 19,118,
+187,157,210,210, 82, 57,204, 89, 95, 95, 79,109,109,109, 80,161,206,143,255,250, 12, 91, 15, 67,213, 25,176, 24,224,245,  5, 99,
+228, 48,231,119,251,225,251, 11, 95,227,187,117,160, 33, 85, 37,167, 72, 78,140,165, 85,114, 44,221,187,245,164,240,116, 41, 39,
+138,203,233,216, 42, 17,211,165,203, 88, 45, 86,151,190,124,254,216,147,183,152,161,163,127,201,240, 49,247,242,241,167,107,217,
+178,125, 45,171, 95,125,130,123,158,120,145,131, 22, 40, 45,191, 28,208,249,115,110,203,251,237,208,155,153,113, 99, 39,214,126,
+252, 21,  7, 15,158,225,213, 67,  5,188, 63,238,126,248,199, 46,138,139, 75, 93,250,242,121, 35,221, 24,141,205, 92,134,217, 92,
+  5, 64, 90,251, 14,244,232,217,147,106,157,163,173,213, 96,175, 71,101,170, 67, 87,167,230,210,  5,223,194, 39,125,103, 70,163,
+209, 37,171,211,125, 58, 84, 36,111, 15, 28, 98, 26, 78, 91,223,142, 29, 59, 88,181,106, 53, 43, 86,188, 73,110,238,114,242,242,
+214, 40,109,135,215, 16,169, 41,193, 29,231,235,205,185, 47,159, 63,246,228, 45,102,196,224,238,100, 13,235,198, 11,255,251, 50,
+175, 44,219,192,255,183,234, 43,102,255, 98, 16, 23, 63,217, 64,149,190,218,175,200,228,230,230,226, 97,  6,244,  0,  0, 32,  0,
+ 73, 68, 65, 84, 50,231,129,123,189, 46,159, 19, 70,114, 75, 83,120,122,190,146, 94,124,209, 64,105, 60,101,114,206,186,111, 60,
+175, 60,243,187, 43,237,123, 87,195,156,146,215,231, 11, 95,222,222,233,175, 29, 89,131, 42,181, 26, 77, 84, 20,211, 90,182,229,
+241,199,  3, 27,158, 68,242,230,124, 37,185,  4,131,236,173,248,104, 52, 14,134,164,164, 36, 74, 75, 75,137,142,142,166,166,166,
+134,212,212, 84, 57,217,197,104, 52, 82, 89, 89, 25,148,240,205,122,225,125, 94, 95, 48,134,196,206,176,245, 48,252,191, 37, 91,
+136,211,168,185,251,177,255,227,188,253, 34,121,175, 62,137, 90, 21,184, 61,201,219, 27, 56,176, 27,169, 25,157,105,157,154,130,
+ 86, 37, 96, 21, 68, 74,235, 12,232,107,130,187,137, 75,231,231,149,197,255,230, 87, 61,187,144,144,208,138, 22,169,237,176, 84,
+232,217,255,217, 26, 42, 43,138,130,178, 39,241,246,226, 71, 97, 94, 22, 26,171,153,206,117,112, 89, 93,205,235, 23,246,130, 54,
+ 33, 96, 27,198, 83,213,148,169, 12, 20,105,235, 25,212,117, 12, 55,222, 31, 71, 97,210, 86, 82, 83,247,211,225,150, 66,170, 84,
+ 53,152, 68,  3,245,171,236,196,196,121,254, 61, 73, 52,246,  8,211,171, 86,173,102,198, 12,199,141,104,230,204,251, 88,181,106,
+117,200,182,242,242,214, 48,115,230,125,242,244,140, 25,247,146,151,231, 61,145, 65,161,241, 56, 95,114,145,221,187,119,203,109,
+122,  3,  7, 14,  4, 28,221,185, 62, 88,191, 33,228,235,237,147,143,255,204,248,  5,127, 96,226,196,177,164, 68,171,169, 17, 68,
+190, 56,113,142,221,135,  3,107,218,  1,239,226, 39,205,107, 78,201, 45,119,204,124, 86,126, 73,132, 34,126,  1,185, 88,175, 60,
+227, 24, 72, 54,220,182, 61,119,140,117,117,152,141, 70, 84, 26, 53,234, 40, 13, 81,218,104, 98, 98, 98,  2,218, 86,242,246,220,
+145,178, 58, 67,245,246,220,145,178,164,130,241,246,192,209, 79,175, 77,155, 54,152, 76, 38, 46, 93,186, 68, 73, 73,  9, 73, 73,
+ 73, 84, 86, 86,  2, 14,207, 33, 24,225, 43,189,120,146,103,158,223, 66,213, 25,248,203, 19, 35,248,211, 99, 67,153,245,194,251,
+228,189,242, 36,106,141, 22,141, 32,160,  9,194, 94, 85,201, 41,218,166,180, 36,138, 40,  4,  4, 46,156, 62,194,217,203, 85,180,
+ 75,140,199, 80,111,228,187, 83,197, 65,123,123,247, 60,248, 56, 81,201,160, 82,195, 59, 27, 78,243,225,155,243, 25,255,187,185,
+ 28,254,225,  0,143,140,237, 20,212,249,251,162,174,142, 87, 38, 79,133,202, 24, 16,162,224,149,151,153,178,119,  7,139,135,252,
+138, 93,223, 28, 66, 88,250,100, 64,222, 30,192,129,139, 41,  8,134, 42,106,169,163, 62, 38,134,204,123, 18, 72,191, 59,138,170,
+241,113,152,210,187, 97,181,213, 99, 41, 43,230,235,191, 86,209,181,107,166,127,131,141,196,206,157, 59, 17,  4, 65, 14, 71, 74,
+127, 67,241,210,118,236,216,129, 40,138, 46,161, 77,233,253,206,157, 59, 35,176,183, 10,193,112, 98,255, 46,151, 54,189,135, 31,
+156, 74,118,182,195,193, 40, 40, 40,224, 63,187,190, 11,218,219,155,150,117, 51,137,246, 36, 84, 68,241,225,210, 63,240,230,103,
+223, 51,117,112, 47, 78,159, 44, 98,202,139,239,  5,229,113, 73,226,231,252,114,222,254, 90,139,159,187,216, 73,243, 66,197, 69,
+248, 60,121,123,224,104,231,243,215,214,231,  9,111,222,222,212,184,214, 76, 75,104,131, 74,165, 34, 42, 90,139, 38,202,241,210,
+234, 98,200,110,149,206,139, 47,190,232,115,167, 61,121,123,238,130, 23,140,232,121,242,246,220,  5, 47,152,155, 54,128, 94,175,
+167,182,182,150,168,168, 40,217,219,179,219,237,242,223, 96,133,239,189,165, 79,243, 93,241, 54,226,218, 56,146, 89,226, 53,106,
+ 74, 47,158, 36, 33, 58,138,202,138,243,168, 85,  2,154,  0, 67,197,146,183,215, 33, 57,158,163,133,167,177,154,205, 68,107,180,
+212,214, 26, 57,112,186,132,148, 46,189,130, 18, 61,233,252,253,242,209,231,200,123,253, 53,234,237,208, 33, 51,157,195, 71,190,
+225,241, 59,251,134,116,254,  0, 30,207, 28,196,167, 63,126,  5, 85, 86,136, 73, 97,227,158,163,  8,255,247,  7,222, 72, 75, 11,
+ 88,244,  0,250,154,239,224,235,141,123,192, 92, 67,173, 80,131, 94, 85, 75,149,198,130,197, 86, 77,180,177,158,152,146,211,188,
+191,240, 71, 58,247,235, 22,240, 64,188, 58,157, 78,126, 31, 19, 19,227,242,192,230,188, 44, 80,118,236,216,193,123,239,229,177,
+ 98,197,155, 46,243,127,253,235, 25,172, 90,181, 58, 40,241,147,218,245,156,189, 61,137, 25, 51,238,229,189,247,242,148,144,103,
+ 19,114,190,228,162, 75,246,230, 51,207,206, 35, 90,163, 37, 45, 45, 77, 22, 63,231,106, 86,254,144,174,183,223,143,238,195,220,
+151, 95,163,230,210,101, 82, 19, 90,115,228,104, 17, 15,188,186,154,220,220,220,144,194,140,210,118,206,219, 55, 39,241,139, 36,
+  1,141,199, 87,115,116, 45,224, 61,209, 37, 88,214,214, 94,  6, 96, 70, 74,  7,199, 78, 68,105,208,104,181, 24,106,107, 73, 74,
+ 75,163,133,186,133,207,237,157,189, 61,247,110, 12, 81,162,  5,172,245,242,186, 54,141,111, 91,224,234,237,185,119, 99,  0,168,
+186,124, 53, 35, 42,144,170, 40, 18, 82,127,189, 54,109, 28, 34, 92, 81, 81, 65, 66, 66,130, 28,230, 12, 70,248,128, 43,253,245,
+254,143, 57,217,163,224,245, 29,188,185,104, 18, 83,158,120,141,213,139, 31, 65, 35,  8,104,163,  3,243,150, 37,111,239,104,209,
+101,186,118, 72, 97,243,166,111, 28,199,214,206,225,237, 88, 76, 87,195, 46, 81,  1,216,148,188,189,231, 31, 28,203,255,251,211,
+ 59,116,200,112, 28, 87,168,231, 79,242,246,110,251,248,109,190,156,113, 47, 66,250, 45,128,163,138, 11, 56, 74,153, 73,220, 25,
+ 23,231,215, 30, 64, 31,211,147, 28,248,207,103, 24,187,239,162,243, 13, 55, 81,173,131,211,156,165,230, 76, 41,165, 47,218,168,
+213,167, 51,239,254, 39,  2,178,  5,176,124,249,114,116, 58, 29,  6,131,193, 37, 33, 75,167,211,177,124,249,242,128,237,192, 85,
+161,202,205,109,184,221,240,225,195, 17, 69,145,188,188, 53,  8,130,224, 55,217,101,246,236,135, 17, 69,145,153, 51,239,243,152,
+200, 34,205,203,203, 91, 67, 94,222,154,  6, 66,171, 16,121,170, 74, 78,241,194,159,159,225,163, 79,255,195,248,225,  3, 92,174,
+183,196,118,153, 12, 44, 44,100,194, 61, 51, 41, 42,175,167, 99,171,192,238, 87,211,178,110,102,238,202, 79, 89,248,187,219,104,
+215,102, 52,128, 44,162,155, 54,109,146,215, 13,167,202,150,132,115,151,132,107, 85,121, 69, 10,103, 54, 89,119,  6,136,140,224,
+197,196,197,162,137,114,116, 54,126,176, 67,119,162, 98,162,137, 75,114,148,229, 49,212,212, 96, 49,155,  1,208,234, 98,208,105,
+ 44,  1,217,148,186, 50,196, 38,183,193,110,179, 56, 68,239, 10, 22, 33,202,111, 41, 48,119,164,212,224,113,243,222,112,185, 89,
+ 75,  4, 35,122, 18,122,189,222,165,195,122, 69, 69,133,203,242, 96, 71,  2,126,111,233,211,188,231,212,215,250,173, 23,157, 42,
+142, 88,106,233, 18,160,157, 14,201,241,236, 41,171,228,251, 31, 29, 33, 77,103,177,147,  8, 68,244, 36,126,249,232,115,124, 56,
+ 32,150, 71,239,234, 17,145,243,247,120,230, 32,158, 88,191, 22,225,133, 63,241,159,180,155, 89, 86,123,216,101,121,127, 77, 20,
+233, 49,209,  1,219,  3,135,231,247,159,245, 70,206,235, 79, 81, 90,126,129, 75, 39,226, 80,219, 18, 24,214,103,  4, 99,238, 31,
+ 19,148,173, 72,225, 44, 84,222,144,196,234,189,247,242,120,239,189, 60,143,  2, 41, 17,136,144,141, 24, 49, 66,201,238,108, 98,
+ 58, 36,199,115,235,173,183,122,188,222, 38,220, 51, 19, 32, 32,209,147,248,253,232, 62,140,219,244, 45, 51,254,244, 47, 70,142,
+ 28, 73,154,135,  8, 72, 36, 68, 79, 66, 18,191, 96,251,110,123,155, 31,  9,241, 12, 53,177,  5,220,238,187, 82, 39,203, 96,201,
+206,206,198,224,101,190,108,175,174,244,234,135,106, 52, 68, 69, 69, 17, 29, 29, 77,116,116, 52, 58,157, 78,254,123, 92, 52, 48,
+113,226, 68,190, 63,227,251, 51,165,144,166,218, 90, 15,214,122, 57,163, 81, 18,188, 96, 75,210, 72, 33,205,170,203,231, 27,220,
+180,131, 21,188,196,212,118,152,205,254, 59,162,  6,202,140,231,222,227,199, 99,129,149, 15, 11,148, 61, 39,206,201, 23,160,187,
+232,  5, 35,120, 18,247, 15,136,141,216,249,  3, 16,150, 62, 41, 11,158,179,232,133, 34,120,206,220,222,101, 10,242,211,193,184,
+224,183, 95,177, 98,133, 92,157,101,249,242,229, 46,149, 90,222,121,231, 29,217,219,123,231,157,119,  2,234,154, 19,168,199,165,
+136,213,245,141,175,235, 45, 24,193,147, 24,247,204, 91, 77, 34,120,206,  4, 43, 86,141,225, 25,122, 18,187, 80,188, 64, 23,225,
+203,202,202, 10,249,164,121,234, 32, 25,142,189,239,207,120,238,112, 41,181,221, 73,130, 39, 17,170,224, 73,109, 79,145,186, 97,
+  3, 88,109,246,160,189, 77, 95, 92,174,168, 10,121, 95,220,145,218,238, 34, 37,120,145, 62,127, 82,219,221,167,181,181, 17, 21,
+ 60,  5,133,107,129,148,176, 82, 84, 94, 31, 17,193,147,196,196, 57,156, 41,209, 88,130,215, 28,184, 99,230,179, 17, 19, 61,  0,
+225,142,153,207, 54,110,126,182,130,130,130,130,130, 66, 51,226,186, 43, 82,173,160,160,160,160,160, 16, 14,138,240, 41, 40, 40,
+ 40, 40,252,172, 80,132, 79, 65, 65, 65, 65,225,103,133, 34,124, 10, 10, 10, 10, 10, 63, 43, 92,178, 58,239, 28, 17,122,230,160,
+167,172, 78,197, 94,243,178,103,188,120, 46,100,123, 49,109, 58, 52,152,215, 88,199,171, 22, 69, 52,118, 48,169,125,119,240,143,
+178,129, 85,  5,162,112,125,126, 31,138, 61,197,158, 98,207,187,189,198,228, 39,231,241,133, 91, 86,167,176,176,144, 77,155, 54,
+201,175,194,194,194,  8,237,153, 66, 32, 68,219, 68,108,130,224, 34,122, 69, 69, 69,236,222,189,155,239,190,251,142,162,162,171,
+197,174, 45,106,135,232,133, 74, 99, 23,156, 86, 80,  8,134,227,199,143,135,181,237,236,217,179, 35,186, 47,145,180,215,220,  8,
+182,112, 72,179, 38, 92,145, 42, 44, 44,100,241,226,197, 76,157, 58,213,101, 30, 64, 70, 70, 70,200, 54, 11, 11, 11,201,207,207,
+ 39, 59, 59,155,140,140,140,160,108,205,154, 53, 43,168,207,155, 58,117,170,207,254, 60, 27, 55,254, 51,104,123,122,125,108, 80,
+219,132,131,179,224, 93,190,124, 25,147,201,132, 32,  8,196,196,196, 96, 52, 26, 41, 42, 42, 98,239,222,189,244,237,219,151,174,
+ 93,187,134,245, 89,193,150,140,  3,200,201,153, 19,244, 54,190, 42,173, 68,222,158,239,  7, 63,247, 17,177,165,121,129, 80, 88,
+ 88,200,139, 41,247, 32,126,126, 10,205,214,134,213,252,109, 47,237, 65,220,112,138,123, 83, 63,130,232, 30,  1,217,148, 24, 63,
+222, 49,236,217, 23, 95, 68,102,216,179,236,108, 71,225,140,156,156,164,136,247,111, 59,126,252, 56, 75,151, 46, 13,106,236,208,
+135, 30,154,133, 40,130,183,159,220, 31,255,248, 68,208, 54, 37,  4, 65, 96,217,178,101,140, 26, 53,138,217,179,103,179,122,245,
+106,170,171,171,131,218, 55,119, 52, 26, 53,211,135,106,201,153,157,195, 75,255,253, 11,127, 28,247, 71,121,217, 91,111,173, 12,
+122, 31,155, 27, 62,133,111,211,166, 77, 30,127, 52,222,230, 95,107,194, 21, 62,103,209,203,202,202,146, 59,137, 22, 22, 22,134,
+ 36,124,146,144, 74, 55, 88,169,138,205,130,  5, 11,130,179,151,159, 28,196,167,250,255, 94,234,238,124,216,239, 58, 50, 65,214,
+ 91,142,212,224,147, 85, 85, 85,180,110,221, 26,112,120,102, 58,157,142,203,151, 47, 83, 89, 89, 73, 98, 98, 34,123,246,236,  1,
+  8, 90,252, 54,109,218, 36,127, 15,130, 32,112,207, 61,247,144,149,149, 21,148,  8,174, 95,255,111,249,253,228,201,191,242, 59,
+237, 15,195,174, 71,229,247,186,161,111,184, 76,187,207,211, 13,245, 95,236,251,191,255,109, 56, 30,253,246,237,219,229,226,239,
+206,223,197,170, 85,171,252,218,  3,199,111,121,201,146, 37,188, 48,186, 31,  8,  2,217,217,217, 13,238,  1,226,154, 83,222,239,
+236,  1,210, 92,239, 45, 18,146,232,229,230,230, 94,169,161,154,199,206,157, 59,153,120,223, 34,191,219,238,218,227,121,254,199,
+249, 14,209,179,219,237,172, 92,185,146,188,188, 60, 18, 58,142,242,106, 71, 16,  4,151,104,197,177, 99,199, 16,  4,129,123,239,
+117, 60,140,220,119,223,125, 65, 11,232,203, 27, 95,150,223, 95,252,226,  2,130, 32,176,250,177, 22,128,192,130,  9, 79,194,149,
+159,212,154,119, 87, 51,123, 84,243,241,  4, 67,173,225,233, 53,212,153,147,147, 67,126,126, 62, 43, 87,186,170,187,116,227,  8,
+ 37,164, 24,233,176,161,187, 61,201,171, 10,149,149, 43, 87,186, 84,155,201,202,202, 10,217,211,  3,100,209,203,206,206, 38, 55,
+ 55, 87,222,183, 80,206,131, 48, 85, 47,191,  2,153,239,143,184,207,150,203,175, 64,230,  7,130,244,155, 16, 69, 81,190, 48, 67,
+  9, 39,234,245,122, 18, 19, 19, 81,169, 84, 60,248,224,131,204,152, 49,  3,173, 86,139, 78,167, 35, 38, 38,  6, 65, 16, 80,171,
+213, 20, 20, 20, 80, 85, 85, 21,144,205,163, 71,143,146,147,147,195,186,117,235,228,239, 68, 20, 69, 62,252,240, 67,102,207,158,
+205,209,163, 71,131,222,207,166,192,147, 16, 54, 53,146,232,229,230,230,114, 95,235,143,185, 55,229,195,  6,235,228,228,228,176,
+232,230,239,209,108,153, 30,180,253,217,179,103, 51,127,254,124,186,116,  9,180,210,172,127,123, 57, 57, 73,180,106,181, 57, 34,
+246, 36,156, 61, 61,103,209, 11,  7,103,209,123,226,137, 39,  2,178,233,126, 77, 45, 91,182,140,145, 35, 71,  2,112,239,189,247,
+ 50,106,212,168,160,238,207,158,236, 77,187,213,225, 19,173,126, 76,199,244,161, 90,158, 28, 63, 63, 96,123, 77, 69, 56,181, 58,
+189, 10,159,243, 88, 81,146,231,227,252,180, 28,172,192, 72, 23, 79,164,112,183, 23,110, 72,210, 27,139, 23, 47, 14,219,134,179,
+144, 46, 88,176, 32,164,122,168,205, 29,103,209,115, 71, 20,197,160, 46,196,250,250,122, 84, 42, 21,211,167, 79,167,170,170,138,
+146,146, 18,162,162,162,208,104, 52,114,157, 87,105,100,132,189,123,247,250,181, 39,138, 34,175,189,246, 26,130, 32, 48,101,202,
+ 20, 86,172, 88, 65, 86, 86, 22,185,185,185, 76,153, 50,  5,128,215, 95,127, 61,224,253,251, 57,225, 44,122,  0, 93,186,116,105,
+ 80,138, 48, 39, 39,199, 37,138, 17,138,199,150,149,149,197,138, 21, 43,200,207,207,143, 88,219,235,211, 79, 63, 77,126,126,190,
+199,242, 94,193,114,252,248,113, 94,125,245, 85,  4, 65, 96,246,236,217,228,229, 93, 29,218, 41,216,209, 56, 36, 62,206,127, 66,
+182,169, 82,169,216,183,111, 95,208,195, 69, 29, 63,126, 28, 65, 16,152, 62,253,234,  3,199,189,247,222,203,232,209,163,153, 61,
+123, 54,159,124,242,137, 95, 27,206,209,142,139, 95, 92,  0,  1,242,254,223,213,114,106,171, 31,107,193,189,195,162, 29,158, 95,
+ 51, 33, 28,209,  3, 31,161,206,172,172, 44, 10, 11, 11, 41, 40, 40, 32, 63, 63, 95,126, 15,142,129, 20,131,249,113, 55,182,232,
+ 73,243, 32,242,194, 23,105, 22, 47, 94, 28,209,115,209,156,136,196, 13,235,228,201,147,168, 84, 42,212,106, 53, 39, 79,158, 68,
+ 20, 69,142, 31, 63,142,217,108, 70, 16,  4, 52, 26, 13,130, 32, 96,179,217,168,175,175,231,227,143, 63,246,251, 91,220,188,217,
+241,228, 63,101,202,148,  6,235, 74,211,210, 13, 50,144,223,181,123,248,210,223,180, 63,156,195,151,222,194,158,129,132, 56,221,
+217,190,125,187,236,  9,132,202,139, 41,247,240,194,232,126,104,114, 60,181,233,125,139,184,161,144,194, 96, 67,247, 78,204,158,
+ 61, 91,126,248,  0,199, 77,120,243,230,205, 33,135, 59, 37,123, 55,220,112,131,108, 47, 92,230,204,113,180,195, 74,226, 63,103,
+206, 28,118,236,216,129, 32,  8, 33,139,222,168, 97,142,178,250,118,187,157, 63,254,241,143, 44, 91,182, 76,182,121,231,228,135,
+176,  5,104,199,217,219,115, 70, 10,123,110,216,176,129, 30, 61,122,  0,129,181,211, 59,188,189,134,117,134, 29, 97, 79, 88,179,
+122, 63,199,219, 28, 15,216, 94, 99, 32,137,222,172,  5,139, 89,185,164,225,224,225,129,224,179,141,111,214,172, 89,178,151, 39,
+137,158,167,216,190, 47,220, 69,202,215,147,127, 32,237, 64,254,236,185, 47,191, 22, 99, 71,129,195, 59,118, 30,195, 74, 66,122,
+ 31,169,182, 12,113,109, 82,216, 54,156,169,189, 35,184,100, 11,231, 99,243,116,147,113,158, 39,173,235,235, 59,169,168,168, 32,
+ 62, 62,158,138,138, 10,118,237,218,133, 90,173,198,108, 54, 99, 48, 24,228,  1,124, 69, 81,196, 98,177, 96, 50,153,  2, 18, 91,
+201,195,246,118,190,179,178,178, 88,183,110, 29,249,249,249,  1,125, 39,141,213,198,167, 27,250, 70,  3,129,147,166, 67, 17,192,
+145, 35, 71,134, 45,126,226,231,167,128,171,109,122,206,237,221,226,251,167,  1, 33,228, 54,112,  9,231,115,190, 98,197, 10,114,
+114,114, 34,214,206,247,244,211, 79,203,109,155,161,218, 20, 69,209,165,205,108,248,240,225,236,216,177, 35, 44, 79, 79, 20, 69,
+172, 86,107,  3,155,219,190,182,241,242,146,192,218,208, 36,111, 79, 18, 57,111, 44, 93,186,148, 73, 51,158,241,107,207,181,109,
+175, 33,210,149, 28,168,189,198,192, 89,244,194,193,111, 86,167,179,231,215, 28, 61, 61,103,178,179,179,155, 77,247,  3,247,112,
+166,123, 54, 93,160, 55, 89,127, 56,183,237, 69, 66,  4,157,219,246,  2, 21,193,245,235,215,123,156,255,222,123,239,241,235, 95,
+255,218,101,222,228,201,147,201,201,201,241,218, 24,109, 54,155,169,168,168,192,104, 52,146,152,152, 72,116,116, 52, 86,171, 21,
+ 81, 20,177,217,108,152,205,102, 44, 22, 11, 54,155, 45, 40, 15,211, 95,104,126,202,148, 41,205, 34,  4,237, 47,209, 37, 88, 36,
+241, 11, 21,205,214,123,189,158,187,123, 83, 62, 12,171, 93,221,221,219,147, 16,  4, 33,164,  7, 67,119,111,207,217, 94,168,172,
+ 94,189, 90,182,189, 98,197,138,136,180,235, 73, 78,132, 70,163, 97,222,188,121,236,219,183,207,201,102,224,191,233,215, 94,123,
+205,227, 80, 85,239,191,255, 62,219,182,109, 67, 20, 69,249, 33, 51,144,126,114,203, 94, 91,198,244, 91, 26,122,123, 51, 94,175,
+231,253, 93, 22, 68, 81,164,255,125,253,153, 61,106,118,147,247,187,139, 52,126,251,241,109,218,180, 73,254,162,156,219,251,  2,
+ 33, 35, 35,131,  5, 11, 22,132,190,119, 65,218,203,200,200,  8,249,230,229,220,119,207,249, 37,101,121,134,219, 78, 16,108,183,
+132,235,141,201,147, 39, 51,121,242,100,151,121,146,232, 57, 47,243, 38,146, 18,241,241,241,216,108, 54,244,122, 61,101,101,101,
+232,245,122,234,235,235,169,175,175,167,182,182,150,234,234,106,170,170,170, 48, 24, 12,152, 76, 38,108, 54,255, 65, 33, 65, 16,
+ 88,183,110,157,207,117,154,131,232, 69,138,237,219,183,187,188,156, 41, 43, 43,115,153, 14,164, 77,201,219,240, 98,206,109,215,
+161,226,105,219, 21, 43, 86,176,110,221,186,136,182,245,173, 91,183, 46,232,107, 56, 47, 47,143,109,219,182,201,201, 44,179,103,
+207,150,207,103, 40,221, 14,  0, 22, 45, 24,197,182,109,219,176,127,208, 18, 81, 20, 89,186,116,169,108,115,251, 46, 59, 87,253,
+ 42,223, 72,125,254,156,189,189, 53,107,242,152, 51,103, 14,219,182,109, 99,238,220,185, 65,237,227,197, 47, 46, 32, 32,144,231,
+228,237,221,247, 90, 61,234,233, 85,172,217,101,102,238,220,185, 44,249,239, 75,  1,219,107, 12, 34,229,237,129, 31,143,111,229,
+202,149, 46,237,122,206,237,125,129,222,200, 37,177,146, 60,181,112, 67,143,158,236, 73,158, 96, 70, 70, 70,196, 66,155,206,221,
+ 25,154, 27,146,151, 23,169, 48,167,228,229,  5, 27,230,148,112, 22,188,201,147, 39,187,136,155,175,101,158,104,213,170, 21,229,
+229,229,152,205,102, 74, 75, 75,137,142,142, 70,163,209,200, 30, 95, 93, 93, 29,245,245,245,152, 76, 38,170,170,170,  2,242, 54,
+ 36,111,206, 87,247, 28,105,189, 64,104,204, 54,190, 80,150,187, 35,133,246, 60,177,104,209, 34, 94,120,225,  5, 82, 82, 82,130,
+178, 25,105,188,121,123,206,  4,211,214,231,205,219, 11,149,213,171, 87, 51, 99,198, 12,102,206,156,137, 40,138,188,248,226,139,
+ 44, 92,184,144,145, 35, 71, 50, 99,198,140,144,108, 62,243,212, 40,182,110,221,138,176,174, 21,  0, 95, 62, 19,207,109,207,215,
+ 48,114,228, 72, 94, 88,226,240,208,  2,245, 78,165,126,123,  0,239,191,191,154,109,219,118, 32, 10, 34,243,230,206,163,123,247,
+238, 65,239,219,178,101,203,152, 62,212,225,237,201, 30, 30, 14,123,105,183,181,137, 72, 91,105, 56, 68, 82,244,192,135,240, 57,
+123,122,  3,  7, 14,108,208,222, 23, 76, 40,194, 93,172,194,197,221, 94, 99,132, 55,165,227,141, 20,215,250,135,211, 88, 72, 33,
+ 92, 73,128,242,243,243, 27,120,126,190,150,185,147,158,158,206,201,147, 39,177,217,108, 84, 87, 87, 99,177, 88,228,118, 61,163,
+209, 40,119,149,144, 18, 94,  2,105, 91,202,202,202, 34, 63, 63, 95,246,250,156,127,183,155, 54,109,242, 56,223, 23, 77,221,198,
+231, 30,254,244,133,191,  7,191,156,156, 28, 22, 45, 90,196,180,105,211,248,224,131, 15,252,238,155, 39,220,175, 55,105,250,197,
+148,123,248,221,232, 53,220,187,201,119,  7,246,241,227,199,115,250,244,105,143,253, 13, 37, 78,159, 62, 13,  4,214,161, 61, 59,
+ 59,159,236,236,177,140, 27, 87,232,181,189,177,188,124, 44,160, 39, 39,199,255,125, 43, 39, 39, 71, 62,143,146,215,249,229,151,
+ 95,  2,132, 44,122, 42,149,224,120, 80,149, 68,239,160,149,127,110, 49,  3,240,194,146,109, 64,112,247,  8,233,154,152, 51,103,
+ 14,162, 40, 50,239,241,121,116,239, 22,188,224,  1,204,127,242,143, 87,236,129,122,122,149,108,175,205,109,109, 29,145,215,102,
+116,235,242,150,204,242,217,170,231,130,234,203,231, 85,248,156,187, 45,184,135, 52,242,243,243,131,110,163,106,204,176,103,184,
+253,247, 20,194,199, 57, 84,232,124,243,149,250,131,186, 47,243,213, 70, 48,106,212, 40, 54,108,216,128,213,106,165,178,178, 82,
+110,227,  3, 40, 45, 45,165,178,178, 18, 81, 20,229, 74, 56,129,240,216, 99,143,241,218,107,175,201,  2,232,222,166,247,216, 99,
+143, 93,243,135, 19,195,174, 71,131, 22, 58,119,156,111,218,158,200,205,205,101,246,236,217, 33,137,158, 55, 81,185,154,236, 18,
+220,  3,168,175,146, 88,103,206,156,  1,130, 75,  2,115,110,146,113, 39, 55, 55, 48, 27,206,231,175,188,188,156, 47,191,252,178,
+ 65,123, 89,176,228,228,228, 96,255, 32,137, 47, 15, 58,146, 89,222,217, 98,230,253, 93,102, 68, 81,100,199,238,208,195,185,219,
+183,111,103,238,220,185, 33,121,120,206, 72,215,214,  7,187, 45,204,157, 59,151, 54,227,219, 94, 93,216,140, 68, 47,146,120, 21,
+190,220,220, 92,185, 67,183, 51, 82,178, 75, 40,109, 86,145,238,106,224,108, 47,210,182,157,203,150,133, 66,118,118,182,207,118,
+163, 96,133,218, 91, 88, 51,212,112,167,183,176,102, 40,225, 78,231,196, 29,247,155,131,175,101,222, 16,  4,129, 73,147, 38,145,
+151,151,135, 86,171,197,100, 50, 97,181, 90,177,219,237,180,108,217, 18,189, 94, 31,116,118,241,141, 55,222, 72,110,110, 46, 27,
+ 55,110,148, 51, 56,165,126,125,205,185, 82, 72,164,249,234,171,175,152, 52,105, 18,159,125,246, 89, 80,219,249,203,220,204,201,
+201,161,112,193,130,128,162, 47,243,231, 59, 58, 67,251,250, 14,159,124,242,201,128,219,248,114,114,146,252,218,203,201,  9, 46,
+122, 19,106, 89, 55, 95,140,127,190,198,101, 58, 28,209,123,243,205, 55,195,221, 29,153,151,255,242,138,195,187,107,198,120,243,
+230, 66,173,220,226,183, 59, 67, 48,243,175, 37,205,173,255,158,183,132,128, 96,113,  8,112,228,110,204, 83,167, 78, 13,186, 12,
+153, 47,164,112,176, 36,228,158,194,195,238,203,  2, 61, 47, 51,102,204,224,212,169, 83,108,217,178,  5,131,193,128,205,102,163,
+ 95,191,126, 76,157, 58, 53,228,239,123,220,184,113,140, 27, 55, 14, 32,168, 54, 21,103, 26,187,141,207,223,180, 63,114,114,114,
+ 60,102,251,  5,219, 57, 26,174,212,223, 92,115,138,123, 83, 27, 10,223,239,171,251,243,187, 49,239,163,201,153, 46,119, 96,151,
+214,241,229,209,  7,242,253,143, 29, 59, 54,224,125, 12,196, 94, 48,215, 98, 78, 78, 14,130, 32,112,215, 93,119,201, 53, 68,195,
+ 69, 53, 77,143, 32,  8, 76,254,165,227,222, 41,  8,130,220,109,193,189,  4, 89, 83, 51,112,230,128,107,246,217,215,138,159, 68,
+145,234, 72, 60,141, 53,215,167,254, 72,239, 87,164, 11, 78, 55,246,121,203,204,204, 36, 51, 51,211,227, 50,179,217,140, 90,173,
+ 70,173, 86, 55,234, 62, 56,227,171, 64,116,243,176,231,253, 90,152, 57,115,102,208,246,196, 13,142,250,155, 82,243,134, 51,191,
+ 27,243, 62,136,  4, 21,114,110,238, 52, 70,191, 95,135,205,224, 26,203,154,178,187, 64,115,170,189,217, 84,  8,119,204,124, 86,
+ 25,155, 69, 65, 65, 65, 65,225,103,195, 79,110, 60, 62,  5,  5,  5,  5,  5,  5, 95, 40,194,167,160,160,160,160,240,179,226, 39,
+209,198,167,160,160,160,112, 61, 32,120,155, 16, 93,254, 40, 52, 50,138,240, 41, 40, 40, 40, 52,  1,194,149,255,  4,199,127, 94,
+ 16,165,127, 10,141,136,139,240,221, 57, 34, 61,100, 67,158,178,144, 20,123,138, 61,197, 94,211,217,187,127,114,111,151,105,149,
+ 74, 37,119,215,112, 78,153,151,170,223, 56,167,208,255,107,253,161,  6,246, 42,207,108, 33, 38, 38, 70,222, 94, 26, 46,202,221,
+158, 84, 48,220,110,183,  3, 96,177, 88,136,239,208,112, 68,136,230,126,254,174,173, 61,  1,181, 38, 26,209,110,197,110,183,242,
+217,206,243,184,247,112,240,103, 79, 20, 69, 46, 93,186, 68,155, 54,109, 34,178,127,145,182,231,139,166, 46,122,253,179,247,248,
+ 22, 45,218,227, 50,253,194, 11, 67,154,151,189, 61,139, 28,118,134,188,224,242, 62, 92,252, 85,248,240,183, 60, 92,251, 10, 13,
+ 81,153,235,208,148,159,230,  6,227, 65,218, 91,207,113, 66,236,194,249,248, 27,169, 79,232,132, 54, 54,222,239,246, 59,119,238,
+100,248,240,225,178,224, 73, 66, 37,  8, 66,  3,161,178,219,237,242,235,236,217,179, 30,237,125,247,221,119, 12, 28, 56, 16,157,
+ 78,135, 70,163, 65,173, 86,187,216,148,196,206,102,179,201, 47,147,201, 68, 65, 65,  1,163, 61,  8,223, 79,  5, 81, 20, 41, 47,
+ 47,103,247,238,221,180,108,217,210, 99,159,201, 96, 16,  4, 21,209, 49,201,180, 76,234, 78, 93,109, 49,181, 53,231,174,120,133,
+129,123,127,118,187,157,117,235,214,113,226,196,  9,  0,116, 58, 29, 79, 60,241, 68,200,251, 36,217, 43, 60,117, 18,181, 90,141,
+ 54, 58,154,185,115,231, 93,211,254,134,145,228,186, 21, 62,127,213,246, 33,176,162,195,146, 48,185, 11, 86,168, 68,218,158,130,
+ 43,141, 81, 81,227,154, 35,138,212,156,253,129,170,237,107,169,175, 55,209,249,102, 21,186,116,129, 27,138, 14, 50,152,  3,232,
+ 77,113,124,223,226,126,202,132,246, 62,205, 28, 61,122, 20,181, 90,205,136, 17, 35,228,209,234, 53, 26,141, 44,132,146,151,103,
+181, 90,177,217,108, 88, 44, 22,206,158, 61,203, 87, 95,125,133,186,213,160,  6,246,234,235,235,217,191,127, 63,183,220,114, 11,
+ 90,173,150,168,168, 40, 23,155,118,187, 29,171,213,138,213,106,197, 98,177, 96, 48, 24,216,191,127, 63,181,181,181,141,117,166,
+174, 25, 11, 23, 46,116,153,158, 50,101, 10, 53, 53, 53,244,235,215, 47, 34,246,222, 91, 93,128, 78,215, 26,181, 90,235, 16, 62,
+  1,135,199, 39, 16,144,242,149,148,148, 80, 91, 91,203,125,247,221, 71, 70, 70,134, 92,110, 45, 57, 57,153, 65,131, 26,126,183,
+206, 60, 48,190, 97,177,128, 67,199,142,177, 53,190,  5,143, 47,253, 95,250, 15,184,137, 11,231, 47,243,229,134,173,116,190,169,
+ 63,213,213, 85, 65, 28,105,243,196,163,240,185,151,152,242, 55,221,212,172, 91,183,142,135, 31,126,216,231, 58,122,189,158, 53,
+107,214,  4, 36,126,146, 72,133,235,157, 53,134, 61,103, 79, 79,154, 14,  7, 79,131,226,250, 91,247, 90,124,207,146,199,232,252,
+ 87,162,162,194,209,105, 62, 57,185,121,142,158, 17, 44,230,115, 71,137,222,245, 30,166,122, 59,119,119, 85,211, 61,213,138, 61,
+ 89, 36, 42, 89, 77, 77,185, 22, 93,141,129,158,  7,222,160,160,219,108,234, 91,116,242,106, 71, 16,  4,126,248,225,  7,180, 90,
+ 45,191,248,197, 47,100,177,138,138,138, 66,165, 82,201,  3,248, 90,173, 86, 76, 38, 19,231,206,157, 99,203,150, 45,216,108, 54,
+ 60,149,  0, 80,169, 84, 88, 44, 22, 14, 28, 56,192,136, 17, 35,208,233,116, 68, 71, 71,203,246, 36,225, 51,153, 76,212,214,214,
+114,232,208, 33,140, 70, 99, 80,  5,  5,206,156, 57,195,185,115,231,168,169,169, 65,171,213,146,150,150,198, 13, 55,220, 32,135,
+ 88,131, 37,210,246,236,118, 59,207, 60,243,140,203,136, 23, 11, 23, 46,228,232,209,163,180,110,221,154, 86,173, 90,  5,109,115,
+225,194,133,188,253,224,131, 76,236,223, 31,128, 54,127,248,  3,186, 22,105,212, 86, 23, 81, 93,117, 10, 81,180, 57,138, 90,219,
+  9,216,195, 74, 78, 78, 38, 37, 37,133,127,253,235, 95,252,230, 55,191, 97,253,250,245, 36, 39, 39,179,125,251,118,204,102, 51,
+208,209,231,246,229,255,247,184,203,116,156,217, 66, 59,171,145,185,243,255,196,210,151,255,135,191,188,252, 38,237, 85, 54,222,
+124,249, 85,126, 49,253, 62,191,246, 26, 11,169, 68,153, 51,193,150, 43,  3, 63, 30,159,123,125, 62,127,211, 77, 73,115, 29, 50,
+168,177,112, 22,191,112,112,126,120,249,231, 93,255,242,186,222,111, 63,190,255,154,122, 83,210,103,187,255,245, 39,214,215, 27,
+198,202, 50,186,157,254,156,203,106, 27, 93, 19,161, 83, 71, 17,117, 31, 45,154,140, 12,180, 38, 35,166,175,207, 97,170,210,160,
+182, 71, 97,220,244, 30,170,137,143, 97,215,120, 14,123, 74, 97,200,147, 39, 79,146,148,148,196,152, 49, 99,136,137,137, 65,171,
+213,162,209,104,100, 47,207,104, 52, 82, 82, 82,194,182,109,219, 80,169, 84,168, 84,158,123, 53, 73,246,108, 54, 27, 71,142, 28,
+ 97,248,240,225, 36, 36, 36, 16, 19, 19,131, 90,173,198,106,181, 98, 54,155,169,174,174,102,239,222,189,152, 76, 38, 52, 26,141,
+220,214,231,143,131,  7, 15,178,107,215, 46, 78,159, 62, 77,117,117, 53, 90,173,150, 54,109,218, 48,104,208, 32,134, 14, 29, 74,
+108,108,112, 85,134, 34,105,207,110,183,203,131, 34,187, 35, 13, 81, 52,101,202,148,160,  5, 85,165,214, 54,152,119,241,175,127,
+165,205,175,210,249,203, 95, 94,195, 98,169,115,172,167, 18,176,139, 34,136, 14,151,207,159,252,237,220,185,147,111,191,253,150,
+167,158,122, 10,181, 90,205,221,119,223, 77,135, 14, 29,216,178,101, 11, 27, 54,108,224,230,241, 65, 84,103, 17,  4, 86,157,188,
+192,135, 63, 22,179,254,147,119, 81,171,  5, 30,255,195,175,233,219, 38,133,149,115,255,196, 91,193,218,139, 16,158, 68, 79,154,
+ 31,209, 90,157,190,184,214,149,236,251,244,233,227,119, 29, 41,222,237,139,230,236,237, 73,184,123,125,205, 25, 79, 30,101, 40,
+  2,234,171,141,240,167,226,233,  1, 84, 28,249,142,146,226,106,218,181,212, 16,101,183,160, 73,177,163,185,117,  2, 49,109,158,
+197,110, 45,130,195,191, 65, 60, 85, 77,121,189,150,142,234,122, 14, 28,220, 69,226,  0,207,245, 35, 85, 42, 21, 26,141,134,168,
+168, 40,126,252,241, 71, 82, 82, 82, 24, 59,118, 44,177,177,177,178, 32, 25, 12,  6,142, 31, 63,206,246,237,219, 81,171,213,178,
+ 32,122, 66, 90,174,213,106,177,217,108,156, 56,113,130,209,163, 71,147,156,156, 76, 84, 84, 20, 22,139,133,170,170, 42,246,237,
+219,135,197, 98, 33, 42, 42, 74, 14,125,250,227,204,153, 51,108,220,184,145,139, 23, 47,146,153,153, 73,155, 54,109,168,171,171,
+227,216,177, 99,124,245,213, 87,196,198,198, 50, 96,192,128,128,133,229,204,153, 51,108,220,180,153, 75, 85,102, 18,186,222, 66,
+155,212, 14, 88,234,170, 40,251,113, 31, 27, 55,109, 14,202,158,221,110,167,186,186,154, 19, 39, 78,112,230,204, 25,250,244,233,
+195,194,133, 11,101,175, 79, 10, 83,  6, 35,122, 42,181, 22,157, 46,  5, 93,139, 54,228,189,127,144, 25,211,251,240,246,131, 15,
+  2,240,224,219,111,  3,200,162,  7,160, 18, 64, 37,  8,216,  4,255,141,124, 27, 54,108, 96,195,134, 13, 44, 90,180,136,248,120,
+199, 67,209,202,149, 43, 25, 52,104, 16,101,101,101,116,235,214, 45,224,253,  4,120,109,255,143,188,246,221,  9, 62,249,231, 75,
+104,212,  6,  4,155,141,151,150,189,205,228,137, 99, 41, 81,105,194, 30, 13, 34, 20,188, 21,163,246, 38,134,254,240, 42,124,254,
+132,237,167,210,200, 41,113,189,  8,224,245,128, 20,138,132,208, 69,202,155,232, 57,123,126, 63,133,246,189,  4, 99, 57, 27,138,
+140,180,215,171,233,159, 32,144, 90, 10, 93, 53,137,168,132, 86,136,198, 75,212, 93, 18, 56, 82,100,231, 98,157, 17,141, 74,  5,
+246, 19, 16,128,240, 69, 71, 71,115,234,212, 41,218,183,111,207,184,113,227, 80,171,213,216,237,118,202,203,203,217,185,115, 39,
+ 81, 81, 81,104,181, 90,185,222,169, 39, 31, 77,242,  6, 37,241, 19, 69,145,194,194, 66,186,118,237, 74, 98, 98, 34,181,181,181,
+236,223,191, 31,155,205, 70,116,116, 52, 38,147,  9,147,201, 20,208, 67,241,222,189,123, 57,127,254, 60,125,251,246,101,244,232,
+209,164,167,167, 83, 87, 87, 71,106,106, 42,155, 54,109, 98,247,238,221, 65,133, 40,247,238,221,203,165,138, 42,146,187,221, 66,
+198,136,105,180, 76,239,134,169,174,146,162,111, 63,231,199,205,239,  6,101, 79,106,219, 44, 41, 41, 33, 45, 45,141,110,221,186,
+113,240,224, 65, 89,240,156,  5,208,215,160,191, 18,106, 77, 12, 45,147,186,211, 50,185, 59, 42, 85, 20, 22, 75, 29,255,248,231,
+ 22, 30,252,237, 24,217,222, 67, 15, 61, 68,106,106,170,108,207,113, 14,175,220, 99,125,180,243,237,220,185,147, 79, 63,253,148,
+135, 31,126,152,182,109, 29, 35, 44,108,222,188,153, 51,103,206,160,211,233,208,233,116, 76,154, 52,137, 93, 71, 13,126,247, 19,
+ 96,245,241,115,188,178,247, 24,127, 95,188,128,244,238,157,168,171,213,243,201,127,246,114,240,208,113, 90,138,118,180, 23, 47,
+ 49,233,209, 25,124,125, 36, 48,123,205, 21,143,194, 39,141,106, 30,232,244,245, 76, 36,133,169, 49,236, 65,228,194,156,141, 65,
+ 32,161,199, 80, 18, 82,126, 42,194,230,143,210,178,115,236,186, 96, 96, 82,139, 22,236, 56,103,167,221,128,104,186,152, 10,208,
+ 31,125,152,143, 95, 58,136,253, 76, 21,181,102,145,226, 26, 27, 58,141, 10,107,213, 69, 18,189,216,146, 50, 57, 37,241,139,137,
+137,225,236,217,179, 28, 59,118,140, 94,189,122,161,215,235,249,230,155,111,228,182, 58,127,237,113,130, 32,200, 94,159,100, 79,
+ 20, 69,206,157, 59, 71,239,222,189,217,180,105, 19,118,187,157,152,152, 24,162,162,162,228,172, 79,111,161, 83,103,138,138,138,
+ 48, 26,141, 12, 28, 56,144,244,244,116,212,106, 53,  9,  9,  9,220,124,243,205,124,243,205, 55, 20, 21, 21, 97, 50,153,  2, 62,
+143, 69, 69, 69,216, 85, 90,218,247,203,162,101,122, 55, 84,234, 40,116,  9,169,116,188,121, 18,103,191, 89, 31,176, 61, 81, 20,
+169,172,172,164,184,184,152,142, 29, 59, 50,108,216, 48,212,106,181, 28,222,252,205,111,126, 35,175,155,152,232,237,155,112, 37,
+ 38,166, 21,173, 82,251, 98, 54, 85, 81, 86,190, 31,147, 73,143,197,226, 72,  0,146,236, 93,186,120,209,197,158, 32, 56, 94,190,
+184,112,225,  2,121,121,121,204,152, 49,131,222,189, 29, 93, 89,190,252,242, 75, 54,108,216,192,211, 79, 63, 77, 90, 90,154,211,
+218,254,187, 11,156,168,174,103,193,182,239, 89,252,199, 28, 70,220,145, 69, 93,109, 25,107, 63,218, 70,238, 63, 62,228, 63,143,
+ 63, 64,198,229,243, 44,169,190, 72,114,114,171,128,236, 69, 18, 79,161,204, 80,135, 36,  2, 31, 30,159,123,219,157,191,233,159,
+ 34,141,213,149, 32, 88,158, 31,252,252, 53, 15, 45,123,195, 93,156, 60,  9, 97,227, 85,188,191,254, 57, 80, 97,160,202,108,231,
+ 64,169,149,146, 74, 43,105,223,104,232,179,246, 36,103,207, 28,225,248,183,102,172, 26, 53,102, 59, 24,205, 34,122,209, 78,106,
+146,247, 72,139,212,109, 65,106,155,147, 50, 48, 47, 93,186, 68,167, 78,157, 56,115,230,140,220, 45, 65,163,209,200,235,  7,251,
+219,114,238,  3, 40,253,109,174,191,207, 96,177,219,237,212,213, 57, 66,142, 93,186,116,105,240, 96,176,111,223, 62,  0,186,119,
+239,206,130,  5, 11, 88,178,100,137,223,  1,182,  5,193,241, 32, 96,168,191, 68,109,205, 57,108, 54, 99,  3,123,235,129,147, 39,
+ 79,210,181,107,148,232, 84,201,  0,  0, 32,  0, 73, 68, 65, 84, 87,135, 61,145,  6,253,248,156,209,235,245,252,245,175,127,101,
+210,164, 73, 12, 31, 62, 28,128,175,191,254,154,127,255,251,223, 60,242,200, 35,110,162,231,159, 11,245, 38,126,189,225, 27,230,
+ 78,157,196,148, 95,223, 67,189,177,154,143,215,111,101,217,155,171,249,215,109,131,201,184,220,180, 66,231, 11,231,240,102, 40,
+162,  7, 77,212,157,161,185,103,137, 54,119,174,183,155, 74,184,109,112,210,239,193,215,239,226,167,226, 17, 26,108,  9, 88,132,
+139,236, 43, 51,161, 17, 96,115,161,145, 54,249,118,234,218,182,230,164,182, 22,141, 94,143,  9, 21, 45,212,128, 40, 18,221,170,
+ 97,103, 98,  9, 73,144,164,254,121, 54,155, 13,171,213, 74,171, 86,173,136,139,139,163, 83,167, 78, 28, 62,124, 88,158,239,169,
+ 35,187,187, 61,169,127,158,213,106,197, 96, 48, 32,138, 34, 29, 58,116,160,184,184,152,182,109,219,114,228,200, 17, 76, 38, 19,
+102,179, 89,254,220, 64,154, 65, 58,118,236,200,249,243,231, 41, 40, 40, 32, 62, 62, 94, 14,117,126,251,237,183,212,214,214,210,
+177, 99, 71,162,163,163,  3, 62,143, 29, 59,118,228,210,129, 35, 20,239,223, 68,116,124, 43,151, 80,167,185, 78, 31,176, 61,231,
+125,175,175,175,199,110,183,203, 30,172,228,245, 73,116,239,222,157,170, 42,255,169,253, 86,171,  1,171,165, 22, 93,108, 27, 98,
+116,201,212,213, 94,  0,196,  6,246,222,122,235, 45,217,158, 93, 20, 27,  8, 95,121,121, 57,159,127,254, 57,  6,131,129, 99,199,
+142, 49,109,218, 52,110,185,229, 22,192,225,253,125,250,233,167,204,159, 63,159, 46, 93,186,248,221, 39,201,222,134, 13, 27,248,
+239, 39, 31,243,213,150,109,252,239,239,167,242,171,  7,166, 81,111,174,229,244,233,115,228,230,174,229,223,119, 14,101, 64,235,
+208,  6,187,110, 10, 66, 73,108,129, 38,238,199,215, 92,179, 68, 23, 45,218,227, 49, 68, 25,106, 87,  2,111,246,246, 44,114,216,
+ 26,242,194, 11, 30,167,189,218,219,179,200,227,103,135,106,175, 49,137, 84, 27,156,191, 46, 11, 63,  5,209,  3,232,122, 67, 87,
+ 46,159, 61,197,249, 58, 59,213,162,200, 15,122, 51,121, 39, 69, 12,167, 75,168,168,181,210, 73, 39,128, 96,227,130,  8, 45, 52,
+ 48, 54,179,171,215, 92,  7, 73,244,164,108, 75,131,193, 64,219,182,109,185,233,166,155,  0, 71,202,251,144, 33, 67, 88,183,110,
+ 29,102,179, 89, 22, 43,111, 66, 37,  9,153,197, 98,193,108, 54, 35,  8,  2,153,153,153, 84, 86, 86, 82, 87, 87,135,213,106,165,
+115,231,206,156, 61,123, 22,179,217,140,201,100,146,183,241,199,224,193,131, 41, 42, 42,226,200,145, 35, 24,141, 70,151,228, 22,
+181, 90,205,173,183,222, 42, 39,106,  4,194,224,193,131, 41, 58,119,158,139,133,223, 99, 49,213, 19,215,186, 35,150,186,106,202,
+126,220, 71,180,202, 30,176, 61,141, 70, 67, 90, 90, 26,  9,  9,  9, 28, 56,112,  0,157, 78, 71, 74, 74, 10, 49, 49, 49, 46, 33,
+220,125,251,246,177,111,223, 62,122,245,234,229,215,166,217, 84, 69, 85,229, 73,146, 83,122,211, 50,185,  7,160,194,108,210, 99,
+181, 94,109, 39, 43,249,246,111,148,124, 11,227,122, 56,166,237,226,149, 92, 78, 17,185,125,239,243,207, 63, 71,167,211,145,145,
+145,129,209,104,148, 69, 79,242,254,102,206,156, 25,176,232,  1,108,216,240, 57,  9,  9,241,140, 28,117, 51, 21, 85, 21,220,245,
+240,131,212, 25,170, 40,189, 84,193,236, 63, 60,199,146, 65, 93,155,165,232, 73, 66, 39,121,126, 77,154,213, 25,105,154,179, 87,
+ 19,169, 54,182, 33, 47,188,192,158, 69,139,100,129,146,230, 53,165, 61,231, 80,228,111, 63,190, 63,160,117,175,181,200, 56,239,
+135,123,255,190,235,157,246,221,110,164,247,145,  2, 58,233,171, 40,179,217,169, 54, 90,137, 22, 69, 68,147,149,142,113, 26,244,
+ 86, 43,197,117,142, 44,201, 73, 55,164, 17,219,249, 70,188,117, 15,151,188, 60,169,203, 66,239,222,189,233,219,183, 47,122,189,
+ 94,206,234,140,143,143,231,150, 91,110,225,227,143, 63,150,251,244,217,237,118,143,165, 35, 37, 17,181, 88, 44,  8,130, 64,183,
+110,221, 48, 24, 12,148,150,150,202,217,160, 70,163,145,110,221,186,113,249,242,101,217,158,183, 44, 81,103, 58,119,238,204,184,
+113,227,228,238,  7,  7, 14, 28,112,233,126,208,183,111,223,160,178, 38, 59,119,238,204,184,172,177, 14,123,167,190,165,100,255,
+198,171,246,134,253, 34, 40,123,  9,  9,  9, 12, 24, 48,128,175,191,254,154, 93,187,118,209,190,125,123, 58,119,238, 76,108,108,
+ 44, 11, 23, 46,228,245,215, 95,167, 83,167, 78, 12, 26, 52,136, 87, 95,125,149, 25, 51,102,248,180,103,183, 91,168,210,159,  4,
+ 17, 18,147,187,209,166,221,173, 24, 12,101,212, 86,159,229, 47, 47,191,206,255,252,121, 33,237,210, 97,205, 99, 45, 16,166,234,
+ 25,115, 63,216,237, 14,143,207,185, 35,195,137, 19, 39, 24, 59,118, 44,195,135, 15,167, 83,167, 78,212,215,215, 35,138, 34,111,
+188,241,  6,211,166, 77,147, 31,112,  2,229,248,241, 19, 76,185,231,151, 76,159, 62,153,155,122,119,167,188,166,138,218,170, 50,
+102,253,191,231,120,238,174,177,140,181,215,  7,101,175,169,185, 99,230,179,145,207,234,140, 52,145,204, 18,157, 50,101, 74,196,
+ 42,183,248, 35,210, 93,  9, 36,177,146,222, 55,181,189, 64, 61,178,107, 45, 44,206,158,158,243,126,184,247,235,187,222,105,215,
+ 37, 19,227,144, 17, 88,247,108,224, 76, 21,196,  9, 81,116,138, 83, 81,108, 19, 80, 71,107,216,126,217,134,209, 14,169,209,106,
+ 50,  7,141,164, 54,169,179, 87, 91,146,119,166, 86,171,233,210,165, 11,  3,  6, 12,160,186,186, 26,163,209, 40, 11,159,217,108,
+ 38, 57, 57,153,225,195,135,243,233,167,159, 98,177, 88,176,217,108, 30,111,  4, 54,155, 77,174,250,210,179,103, 79,108, 54,155,
+108, 79,186,158, 37,207,177,103,207,158, 84, 84, 84, 80, 91, 91, 27,240,181,220,167, 79, 31, 18, 18, 18, 34,214,225, 60, 82,246,
+ 84, 42, 21,237,218,181, 99,252,248,241,156, 62,125,154, 99,199,142, 81, 84, 84, 68,124,124, 60, 45, 91,182,100,220,184,113,252,
+253,239,127,247, 91, 17,197, 25,171,181,158, 74,253,113,140,198, 10, 90, 38,117, 35, 46,190,  3,241,  9, 29,169,171, 41,102,241,
+146,127,112,239,244, 44,214, 60,214, 66, 94,223, 33,124,174, 37,203, 38, 78,156,200,134, 13, 27, 56,127,254, 60, 21, 21, 21, 76,
+158, 60,153,119,223,125,151, 33, 67,134,208,163, 71,143,128,247, 69, 98,210,164,137,124,252,241,167, 84, 87,150,115,190,228,  2,
+143, 61,114, 63,243,159,122,145,187,126, 49,148,225,166,106,136,106, 54,126, 81, 88,137, 44,158,104,146, 35,107,140, 44,209, 72,
+136,154, 68, 89,217, 63, 88,180,231, 19,121,218, 83, 88, 49,152,164,150,178,178,127,176,103,209, 85,123,206,130,228,236,157,237,
+ 89,180, 40, 32,177, 42,251, 71, 25,123, 62,241,236,213,133, 98,175,185,243, 83, 17,181, 64,233, 60,116, 12,  7, 77, 86, 74,191,
+218, 76,148,213,192,193, 26,145, 77, 53, 86,180,130, 64, 43, 81,100, 76,219,150,140,186,109, 44,201,  3, 71,251,180, 35,121,124,
+157, 59,119,102,200,144, 33, 24, 12,  6, 44, 22, 11, 90,173, 86, 22, 42,201, 43, 75, 77, 77,101,216,176, 97,124,241,197, 23, 94,
+ 67,147,118,187, 29,141, 70, 67,223,190,125, 17,  4,129,250,250,122,217,155,132,171,109,138, 22,139,  5,187,221, 78,239,222,189,
+249,230,155,111,174, 84, 10,  9,240,216, 59,119,166,115,231,206,  1,175,223, 84,246, 84, 42, 21, 45, 91,182,164,119,239,222,180,
+111,223, 30,189, 94, 79,105,105, 41,  0,197,197,197,220,126,251,237,188,250,234,171, 65,217,180,217, 76,212,213, 22, 99, 54, 87,
+161,171, 62, 67, 66,203, 76, 90,196,181,163, 69, 92, 59,190,220,124,  9, 97,236,213,132, 20,233,217,193,249, 17, 98,232,208,161,
+104,181, 90, 42, 42, 42,152, 56,113, 34,173, 90,181,226,254,251,239,103,235,214,173, 33, 29,227,173,183, 14, 37, 58, 58,154,132,
+163,  5, 60,242,200,239, 72,239,118,  3, 47,205,253, 29,239,188,249, 46,111,168,141,254, 13, 92, 99, 66,245,246,160,  9, 61,190,
+230,156, 37,234,235, 70, 27,138,183,231,205,158,167, 54,185, 64,196, 42,210,246,124,217, 12,116,121,184,246, 21,174,162, 82,169,
+232, 55,118, 60,173,218,165, 83,250,195, 97,212,103, 11,233,106,185, 64,124,171, 52,134,246,238, 65,175,129, 55, 97,104,227,191,
+211,176, 40,138,116,233,210,133,225,195,135,203,237,109,106,181, 26,147,201, 36,151, 24,115, 14,135,118,232,208,129, 97,195,134,
+121,189,113,234,116, 58,250,245,235,135, 70,163,193,108, 54,203,219, 57,103, 58, 58, 23,168, 86,169, 84,244,239,223,159,130,130,
+130, 72,157,154,107,142, 70,163,161,117,235,214,180,110,221,154,238,221,187, 99,183,219,169,175,175,199,100, 50, 49,124,248,112,
+ 22, 45, 10,246,254, 32, 98, 49,215, 96, 49,215, 98, 48,148, 18, 29,157, 68,148, 54, 30,149, 74,195,170,188,207,153, 57, 99,146,
+ 99, 45,209,115,181, 22,201,203,124,229,149, 87, 48, 24, 28,109,132,221,186,117, 11,170, 76,156, 51,  3,  6, 12, 68, 61,120, 48,
+ 15,254, 89,178, 39,210,173, 91,119,186,253,234, 87,104, 52,205,199,227,147,194,154, 77, 82,178, 76, 33,178,221, 23,220,  5, 41,
+ 92,239, 44,210,246, 20,174, 45, 29,122,246,162, 67, 79, 71,178,132,243,216,  6,129,118, 21,206,206,206, 38, 41, 41, 73,206,216,
+148, 50, 18,157,187, 44, 72,201, 44,210,  8, 13,153,153,153,  8,130,192,206,195,117, 13,236, 45, 91,182,140,252,252,124,121, 93,
+155,205,230,119, 88, 34,173, 86, 27, 84,  8,240,122, 67,165, 82, 17, 23, 23, 71, 92, 92, 28, 16,206,  3,158, 36,128, 53,168, 84,
+ 26, 64,  5,216,101,123,254,130,197,210,200, 11,206, 89,167,161, 98,179,217,153, 55,111, 94,196,236, 53, 22,158,218,244, 66, 13,
+125, 10,119,204,124,246,167, 85,130, 69, 65, 65, 65,161, 25, 35,200,255,185,161, 12, 64,219,100, 40, 30,159,130,130,130, 66, 19,
+ 34,202,255, 41, 92, 43,154,167, 79,171,160,160,160,160,160,208, 72, 40,194,167,160,160,160,160,240,179, 66, 17, 62,  5,  5,  5,
+  5,133,159, 21, 46,109,124,119,142, 72, 15,217,208,167, 59, 26, 22, 49, 85,236, 41,246, 20,123,138, 61,197,158, 98, 47, 20,123,
+141, 73,131,228, 22, 95,195,204,132, 58,160,232,245,106, 47, 20,155,205,253,120,175, 87,  2, 41,159, 22,104,213,246,166, 26, 65,
+162, 57,113,173, 43,241, 40, 40, 52, 39, 60,102,117,138,107, 27, 22, 38, 21,166,234, 67,254, 16,111,213,245,155,139, 61, 79,199,
+ 11,161, 31,115,115, 63, 94,137,138,210,147,148,150, 94,224, 82, 89, 45, 85, 85, 22, 18, 19,163, 72, 75,137, 35, 53,181, 45,201,
+169, 93,131,182,247,221,238, 55, 41, 60,117,130, 83,103,140,156,187, 32,210,161,173, 64,102,231, 24, 50, 50,187, 49,224,214,135,
+195,222, 95,127, 56,139,221,103,171,158,227,206, 17,222,207,155,243, 57,205,201,201,105, 22,194, 80, 88, 88,200,146, 37, 75, 92,
+230, 45, 88,176,160, 89, 13,  1, 22,201,243,116, 61, 28,175,194, 79, 19,165, 59,195, 21,156, 69, 78, 16,192,254, 65,243,171, 74,
+ 30, 41, 44,230, 58,206, 21, 29,194,108,182,208,181, 75, 75, 70, 15,239, 72,203,196,104,244,149, 70,138, 47,212,242, 99,225,  5,
+ 42,171,202,232,208,177, 55, 81,218, 88,191,246,244,101, 39,216,181,237, 45,212, 84, 51,109, 18, 12, 27,  8,153,157,224,228, 25,
+145,157,251, 12,108,216,114,128,207, 63,156,207,208, 81, 15,145,148,210, 45,164,125, 14,246,102,235,201,227,243,230, 53, 74, 69,
+175,175,165,248,121,123,144,145,132,225, 90,139, 50,184, 14, 23, 21,238,254, 92, 15,199,171,208,252,136, 84,  7,118, 37,185,229,
+ 10,206, 94,223, 79, 89,244,  0,206, 23, 29, 34, 45, 37,134,187, 39,117,163,111,175,214,180, 74,210, 33, 32,144, 16, 23, 77,183,
+204,100,198,141,234, 76,106,114, 52,231,139, 14,  5,100,111,215,182,183, 24, 49,176,154,181,111,192,131,217,208, 35,211, 49, 63,
+182,  5,244,236, 10,255, 59, 15,110,233, 91,205,174,109,111,133,188,207,146, 48,133,139,183, 27,234,181,188,209, 58, 31, 87,110,
+110,174,203,203,211, 58,161,218,143,132,141, 72,238, 15,132,119,188,161,150,233, 82,184,254,240, 86,174, 44,212,122,157,138,240,
+185,209,124,  7, 71,138, 12, 21,165, 39,177, 88, 44, 12, 25,208,214,101,190, 74, 37,160,213,170,209,197,104,136,138, 82,145,217,
+ 37,  9,179,217, 66, 69,233, 73,159,246,190,219,253, 38,106,170,153,247, 32, 24, 77,112,250, 28,232,171,160,178, 26, 86,175,135,
+ 63,252, 25, 22,190, 12, 67,  7,128, 74,172,230,187,221,111, 54,226,209, 93,127,184, 23,107,119,199,121, 94,176,133,220,221,189,
+ 88,103,207, 54, 88, 60,121,201,206,159, 19, 40,158,142,119,227,198,141,108,218,180,169,129, 93,127,199,219,156,106, 73, 42, 52,
+ 13,119,204,124,214,229,  5,161,137,223,117,249,203,137,196,147,191, 55, 34, 81, 80,193,219,254, 69, 42,148,230,239,  9,222,215,
+103,148,150, 93,160,123,102, 50,224, 16, 59, 79,196, 68,107,168,172, 50,209, 45, 51,153, 19,133, 23,124,182,247, 21,158, 58,193,
+ 52, 71, 93, 93,254,187, 29,254,246, 30,220, 54,  2, 38,142,134, 99, 39, 97,255, 17, 17, 93,140, 64,255, 94, 48,126, 20,124,244,
+197,  9,  6,220, 26,192, 65,  6,113, 76,193,224,237, 59,104,204,223,148, 47,  2,  9,237, 73,130,181,100,201,146,160,207,131,183,
+176,110, 40,120, 26,  7, 49,216,240,167,251,241,110,220,184,209,101,136,177,172,172,172,128,143, 87,163,209, 96, 50,153, 66, 58,
+ 22,133,235,139, 72, 13, 71, 36,225, 81,248,188, 37,117,132,114,163,245,181, 93, 40,246,154, 58, 36, 21, 74,  6,160,175,100,153,
+ 80,236,121,218, 38,212,132,156, 75,165,181,140, 25,214, 17, 81,132, 29,187,207, 81,111,176,  0, 48,160,111, 27, 82, 91,233, 56,
+ 87, 92,195,201,211,122, 52, 26, 21, 55,100, 36,241,245,183,117,116,239,233,221,222,169, 51, 70,134, 13,  4,147,  5,254,179, 13,
+182,236, 22,105,151, 38,144,209, 17,198, 14,135, 30,153,  2, 26,181, 99,104,175, 91,250,193, 95,114,125, 15,119,226, 62,232,108,
+160,239,  3,185, 48,220, 61, 30,231,177,  9,157,167,127, 10,248, 18,162,112,  6,242,245,229,233,133, 98,211, 89,244,242,243,243,
+201,202,202, 10,120, 91, 37,212,169, 16, 42, 65,101,117,134,154,237,233,237,  9, 59,148, 39,111, 95, 98, 25,170, 48, 75,120, 58,
+ 62,247,109,  3,125, 90,246,150, 44, 19,138, 61, 95,219, 72,159, 35,  0,118, 47, 98,232,140, 35,123, 51, 26,128,115, 37,213, 24,
+ 12,142,209,189,187,102, 36,145,218, 74,199,129, 35,151, 57,254, 99,  5, 49, 49,106, 50,187,180, 68, 95,229,123,108,181,115, 23,
+ 68, 50, 59, 57, 62,127,194, 72,232,119,163, 64,180, 22,172, 86,135,231,215, 50, 30, 10,139, 96,252, 72,232,148,238, 88,255, 90,
+226, 44,118,238,109, 77, 63,  5,156,143,201, 95,187, 92,184,130,239,126,205,133, 98, 39, 59, 59,155,252,252,124, 32,248, 49, 54,
+155,235, 40,  2, 10,141, 79,160, 93,151,188,113, 93,134, 58,125,  9, 65, 40,194, 18, 78, 87, 13,159,118, 27, 57, 59, 84,152,170,
+ 15,250, 51, 18, 19,163,208, 87, 26, 73, 73,110, 65,246,228, 30, 88,109,118,162,163,213,168, 85, 42, 68, 81,228,142,219, 50,153,
+ 52, 46, 19, 65,128,114,189,129,196,196, 40,159,246, 58,180, 21, 56,117, 86,164, 71, 38,252,226, 86, 71,168,248,216, 73,232,211,
+  3,146, 18,224,246,209, 96,183,131, 70, 13, 39, 78, 59,214,247,133,167,209,214,  3,121, 31,110,  7,216,230,208,157,193,211, 62,
+  4,187, 95,206,194,238,238,157,249,154, 14,117, 63,195,241, 30,157,183, 19, 69,145,113,227,198, 53,139,239, 65,161,121, 19,174,
+232,129,146,220,  2, 52,204, 44,115,190,168,195, 65, 20, 65, 53,173,113, 68, 21, 28, 30,170, 40,130, 42,  8,225, 78, 75,137,227,
+ 92,113, 13,  0,175, 46,223,203,247,135, 47, 99,177,216,177,219, 29,158,152, 32,  8,168, 84,142,241,219,206, 21,215,144,150, 18,
+231,211, 94,102,231, 24,190,190, 50,238,104,202, 64,216,127,  4,102,221, 11, 93, 59, 57,194,155,207,191,  1,218, 40, 80,169,224,
+235,  2,199,250,161, 16,169,172, 78,201, 22,208,224,251,190, 22,237,124, 11, 22, 44,112,249,108,231,132, 14,233,189,180, 76, 90,
+ 55, 16,124, 69, 64,194, 21, 61,231,191,210,103,  5,138,167,227,205,202,202, 98,220,184,113, 65, 31,175,183,145,227, 21,126,186,
+ 68, 66,244, 64, 17,190, 70,167,177,187, 70,136,107,147, 16,  9, 92, 96, 83, 83,219,114,242,180, 30,187, 93,228,169,199,110,225,
+196,201, 10,126, 56, 81,142, 32, 32, 15, 86, 10, 96,183,139,156, 60,173, 39, 53,181,173, 15,107,144,145,217,141,207,191,  2,155,
+ 13,196, 66,216,178, 27, 62,221, 12,183,255, 22,198,220,  7, 91,191,113,172,103,179,193,231, 95, 57,214,191, 86,120,106,223,147,
+184, 86, 94,134,123,103,109, 79,194,231,109,221, 64,104,172,110,  8,161,218,138,228,241,218,108,182,160, 63, 95,225,250, 37, 82,
+162,  7,138,240, 93,215,  8, 83,245, 65,135, 59,147, 83,187, 18, 29,173,229,219,130, 18,236,118,145,219,179, 50, 56,120,228, 50,
+ 47,188,186,155,231, 95,217,  5, 56, 68,239,219,130, 18,162,163,181,126, 43,184, 12,184,245, 97,108, 36,176,244,109,135,184,173,
+120, 30,254,245, 17,140,185,  5,250,223,  8, 91,215, 56,230, 47,125, 27,108, 36,132, 92,193,197,189,159, 87,176,184,123,121,222,
+150, 55, 53,238, 55,123,169,189,203,253,189,167,117,253, 33, 29,171,123,230,101, 56,109,122,190,166,  3, 33,146,199,107,181, 90,
+131,254,124,133,235,147, 72,138, 30, 40,194,215,104,136,107,147,188,102, 94, 70,250, 51,130,245, 42, 59,116,236, 77,105,133,137,
+ 15, 63, 59, 78,201,197, 90, 38,221,150,201,211,243,110, 97,246,111,251,177,255,208, 37, 62,252,236, 56,165, 21, 38, 58,116,236,
+ 29,144,189,161,163, 30, 98, 71, 65,  2,217,143, 64,193, 97,120,235,255, 96,225, 35,144,115, 31,252, 99, 45,100, 63,  2, 59, 10,
+ 18, 24, 58,234,161, 80, 14, 19,  8, 47,212,233, 47,137,227, 90,102,117,186,151,236,138,212,186,206, 68, 42,116, 31,  9, 91,145,
+ 60, 94, 69,248,126,126, 68,170, 91, 67, 80,221, 25, 66, 77,  2,  9,182, 59, 67,168,246, 66,181, 25,233,253,243,117,158, 34,181,
+127,225, 36,228, 68,105, 99,201,232,122, 11, 21,165, 39, 41, 60,115,129,221,251,206,187,212,234, 76,107,221, 46,168, 90,157, 73,
+ 41,221,152,116,207, 95,248,110,247,155,124,240,249,  9, 94,252,219,181,169,213,233,139,230, 40,122,254, 62,183,185, 38,121,132,
+179, 95,145, 60, 94, 37,212,249,243,195, 91,103,245, 96,  5,177,129,240, 69,250, 98,107, 74,123,225,246, 75,138,  4,205,221,158,
+ 51,201,169, 93, 73, 78,237, 74,247,  8,217, 27,112,235,195, 33,117, 78, 15,132,230,114,179,189, 94,249, 41, 31,167, 35, 33, 75,
+ 37,191,164,182,106, 81, 20,177,219,237,242, 75, 20,175,109, 87, 26,133,230,131,112,199,204,103,149, 95,131,130,130,130,130,194,
+207,  6,165,141, 79, 65, 65, 65, 65,225,103,133, 34,124, 10, 10, 10, 10, 10, 63, 43, 20,225, 83, 80, 80, 80, 80,248, 89,161,  8,
+159,130,130,130,130,194,207, 10,151,172,206, 59, 71,164,135,108,200, 83,173, 68,197, 94,227,216, 11,164, 92,212,181,180, 87, 88,
+ 88, 72, 97, 97, 33,249,249,249, 17,177,119,250,244,105, 78,157, 58, 69,126,126, 62, 43, 87,174,  4,104,144,161,247, 83,250,126,
+ 21,123,138, 61,197, 94,227,226,183, 72,117, 40,163,  7, 52,165,189,166,100, 86,118, 21,104,181,172,204,211,  5,180,126, 97, 97,
+ 97, 64, 29,118,  3, 61, 94,103,123,190,  6, 21, 13,197,222,225, 87, 19,184,233,241,234,176,236, 57, 16,233, 99,120,  3,209,236,
+232, 99,181,114,229, 74,102,205,154, 21,196,246, 13,237, 13, 86,191,143,197, 82,141, 78,167, 99,237,218,181, 60,240,192,  3,216,
+108, 54,204,102,115,147,215,107,140,196, 32,174,215,147,189,235,  5,231, 46, 13, 82,119,  6,179,217,140, 90,173, 86,186, 50, 40,
+ 52,192,167,240,229,228,228,248,252,193, 56,215,118,244,135,116, 65, 70,202,158, 39,219,208, 52, 23,241,198,141, 27, 33,198,199,
+ 32,117, 92, 21,149,  5, 11, 22,120,173, 57, 24,236,200,213,210,192,156, 57, 57, 57, 30, 71,172, 14,197,158,248,253,179,  8,253,
+158,227, 95,219, 28,195, 15,137,223, 95,237,  8, 42,244, 11,110,100,227,248,163,143, 35,138,176,230,107,135,173,219,251, 71,209,
+171,253, 17,217, 75, 11, 86,  0, 59, 38,127,203,233, 67,151,216,121,161, 19,117,113,177, 76, 24, 93, 73,251, 84,129,109, 91, 55,
+ 82, 93, 99,100,226,196,137,152, 76,166, 38,191,169, 93,203,  7,189, 64,236,  5,115, 62, 66,189,230,194,165,176,176,144,151, 94,
+122,137,249,243,231,147,153,153, 25,150, 45,181, 90,141, 70,163, 65,163,209,160, 86,171, 81,169, 84, 44, 89,178,132,249,243,231,
+ 99,179,217,176, 90,173, 88,173,214,107,214,225,253,243,207, 63,247, 56,223,211,185,159, 56,113, 98, 80,182, 55,108,216, 16,214,
+246, 63, 87,188, 10, 95, 32,162, 55,112,224, 64, 10, 10, 10,124,126,128,251,133,234,235, 66, 11,196,158, 39,251, 11, 22, 44,144,
+ 67,107,145, 28,214,100,214,157, 43, 65,215,141,149,107, 71,  3,176, 50, 63,209, 33,122,126,112, 22, 41,111,245,  6,165,253, 14,
+196, 35,116,182,  7,142, 49,204,178,178,178, 92,  6,237, 12,197,158, 36,114,210,223, 37,255,115,117, 29,161,223,115, 60,249,203,
+ 24, 94,250,196,247,192,177, 18,137,199,159,160, 87, 71, 53,117, 70,145,199,239,136,225,155, 31,173, 24, 76, 34,  6, 11,140,105,
+127,132,195, 69,182,160,188,191,115,  7,151, 82, 80, 26, 75, 66,172, 64, 90,235, 52, 90,183,239,250,255,183,119,238,209, 81, 85,
+247, 30,255,156, 36, 19,  2,  4, 75,120,244, 90, 81, 10,145, 71,121, 40,  2,222,182,119, 41, 84,235,160, 85, 18,160, 96,232,106,
+117,117, 33,218, 12,106,113,169,161,144,118,201,189,218,246, 94, 18, 20,176,210,123, 37, 99,133, 64, 27,169,164,168, 33, 89,218,
+ 74, 88, 85,144,170,197, 96,121,105,121,141,200, 67,222,146, 16,146, 73, 38, 51,115,238, 31,195, 30, 78, 78,206,204,121,204,153,
+100, 40,231,179, 86, 86,102,246,156,249,205,153, 57,231,236,239,249,253,246,239,183, 55,159, 31,109,101,248,176, 32,221,210, 79,
+ 81, 93,115,134,181,107,215, 50,125,250,116, 67,246, 28, 82,139,210,210, 82,242,243,243, 89,188,120,177,230,245, 58,110,220, 56,
+158,121,230, 25,242,243,243,227,218,201,200,200, 32, 51, 51, 51,250,119,228,200, 17,134, 14, 29, 74,122,122, 58,189,122,245,226,
+192,129,  3,100,103,103,179,109,219, 54,222,127,255,125, 30,125,244, 81,221,125, 19,231,168,178,255, 83,246, 91,162, 93,146,164,
+232, 77, 93, 60, 54,108,216, 16,211,134,178, 93,150,101,211,194, 85, 85, 85,149,208,251, 47, 87,196, 12, 46, 86,167, 48,211, 20,
+ 62,163,162,103, 20, 35,203,169, 88,153,135, 80,116,246, 37, 37, 37, 20, 23, 23,183,107,183, 42,126,133,227,189,208,119, 24,222,
+183,111,139,182,109,220,184,145, 73,147, 38,  1, 68,255,199,138, 73,171, 69, 42,222,126, 27,157,109, 95,252, 54,202,155,  8,245,
+132,190, 86,236,197,243,232,230, 79, 53,182,124,144, 44,203,244,219, 95,196,208,107,210,233,158, 41, 49,168,127, 26,167,207,203,
+  4, 67,233,156,105,148,105,104,150, 57,120, 50,140, 36, 65,191,240, 78,124, 62, 95,220,253,148,101, 25, 78,255,137, 33,  3,115,
+ 57,125,250, 36,131,174,237,207, 13,163,114,201,200,206, 33,247,218,122,252,161,  6,142, 31, 15,113,236, 92, 11,221, 91,125, 28,
+ 60, 56,198,210,170,  5,118,146,232,  2,200,201,178, 23,235, 38,179,171,195,126, 62,159, 15, 73,146, 24, 57,114, 36,213,213,213,
+ 29,206,137,241,227,199, 27, 18, 61,  0,151,203, 69, 86, 86, 22,103,206,156, 97,216,176, 97,140, 29, 59,150,140,140, 12, 94,120,
+225,  5, 66,161, 16, 55,220,112,  3,175,189,246, 26,219,182,109, 99,231,206,157,164,167,167,235,122,126, 83,167, 78,  5, 34,191,
+159, 94, 63,104, 68,104,170,170,170,128,200,239, 30,239,198, 95,150,101, 78,158, 60,169,107, 79,203,182,213,247, 95, 78,196,154,
+174,204, 10, 29,132, 79, 92,116,122,158, 89,170,224,243,249, 40, 46, 46,182, 60,129,111, 44, 34,158, 93, 33, 27, 55,110,164,210,
+251, 77,200,244, 27, 26,219,211, 18, 41, 53,102, 68, 74,160,236,244,106,107,107, 59,120,123,102,237, 85, 60,150, 77,100,217,216,
+142,220,247, 66,147, 97, 59,178, 44,147,149, 41,145,158,  6, 61,186, 65,125,179, 76, 32, 36,211, 51, 75,194,223,  6,254,128,204,
+128,156, 52,194, 97,216,119, 60, 68,109,109,109, 92,175,175,241,196,135,124,197,213, 19,151, 75,230, 39,  5,223, 36, 20,148, 57,
+113, 46,192,225,207, 26, 72,227,  8,189,123,183,114,234,228, 33, 50,211, 27,248,228, 80, 61,199, 90,226,219,235, 44,180, 22,144,
+ 77,100,197,  7,245,  4,231,210,204,115,150,236,125,249,165,187,221,243, 62,125,106,117, 59,244,100, 83, 90, 90, 74, 94, 94, 94,
+244,156,221,179,103, 79,244,177,240,244,242,242,242, 12,217,234,214,173, 27, 77, 77, 77,140, 24, 49,130,219,111,191,157,162,162,
+ 34, 30,124,240, 65,  0,218,218,218, 40, 47, 47,167,174,174,142,237,219,183,243,234,171,175,226,247,251,117,199,133, 39, 79,158,
+156,192,183,235,200,203, 47,191,108,104, 59,163, 66, 26,203,182,149,247, 95,169,104,122,124,241, 60, 52,187,  5, 38, 81,212,158,
+143, 89, 10,189, 30,248, 26,120,243, 35, 29,151,183,174,176, 93, 56, 51,226,225, 53,  0,237, 61,191,120, 40, 59, 65,245,221,172,
+ 21,145, 50,138,114,249, 25,253, 16,128,126,199, 39,194,156,177,236,201,178,204,233,119,158,228,234,129,233, 92,240,203,200,114,
+100,213,249,230,128,140, 63,  0,109,193,200,103,  4,195, 50,225,139, 29,237,174, 29,117, 23,195,191,153,154,159, 89,127,114, 15,
+153,253,115,232,223,187, 55,245,231,252,212, 55,156,227,131, 61, 39, 57,118, 78,166, 71,143,102,174,255,250,  5,252, 23,206,112,
+227,208, 54, 70, 14,106,197,187,182,142,  3,  7, 14,  0,214, 22,184,117,232, 92,132,183, 39, 73, 18,213,213,213,228,229,229, 81,
+ 83, 83,195,168, 81,163, 40, 40, 40, 48, 37,122, 16, 17,190,211,167, 79,211,163, 71, 15, 38, 78,156,200,115,207, 61,135,203,229,
+194,227,241,176,122,245,106,234,234,234,248,224,131, 15,216,180,105, 19,187,118,237,162, 95,191,126,134, 86,117, 40, 44, 44,212,
+ 13,117,190,244,210, 75,134,246, 49,153,161,206, 13, 27, 54, 92, 49,161, 78,101, 31,148,168,247,167,155,213,153,202,196, 90,101,
+218, 74,136,105,227,198,141, 84, 22,127,  6,233,153, 20,222, 57,  8,122, 15,194,187, 46,242,154,209,177, 61,187, 81,126, 55,145,
+204,162,244,244,212,136,177, 63, 59, 87,155,168,120,172,103, 76, 15,176,215, 39, 69,124,214, 42,115,162, 62,140, 36,165,209,179,
+ 37, 18,202,  9,134,100, 90,218,160, 37,  0,173,109,145,191,150,  0,180, 93,236,111, 74, 75, 75, 53,133, 52,123,207,147, 28,251,
+ 98, 32,131,  6,102,147,150,149,206, 89,191,159, 77,219,142,178,239,200, 49,206,126,121,129,155,111, 12,209,218, 28,164, 37, 16,
+194,223, 18,230,243, 35,208,236,135,103,159,125,214,182,229, 74, 28,146,139,240,246, 70,142, 28, 73,110,110, 46, 62,159,143,154,
+154,154,168,215,103, 70,244, 32, 18,234,188,233,166,155,200,202,202, 98,245,234,213,204,158, 61,155, 69,139, 22, 33,203, 50, 31,
+126,248, 33,239,190,251, 46, 59,119,238,164,161,161,129,161, 67,135,114,254,252,121,210,210,244,203,151,167, 77,155, 22,211, 43,
+ 22, 30,179, 81,207,208,  9,117,166, 30,151,157,240,169,199,199,212,226,167,246,182,244,198,219,226, 33,196,110,210,164, 73, 23,
+195,157,153,120, 43, 18,216,121, 11,136,239,231,118,187,163,226, 23,139,202,202, 74, 93, 15, 56,158,144,105, 17,111,219, 31,255,
+182,137,107,250,164,241,163, 91, 51,105,109,131,171,122, 72,164, 75,145,206, 34, 16,146,105,109,131,166, 86,153,166, 22,153,230,
+128, 76, 40, 28,241,  8,227,217,187,105,184,143,161, 67,190,228,207,239,158,226,203,134, 22,190,125,227,121,190,249,149, 11,184,
+ 50, 91,105,110,  9,115,244,184, 76, 83,139, 68, 40, 36,209,175,143,  4, 82,231,150, 51, 56,216,131,184,126,213,209,143,154,154,
+154, 14,130, 19,111,172, 47, 45, 45,141,249,243,231,147,145,145,193,154, 53,107, 88,181,106, 21, 15, 60,240,  0, 37, 37, 37, 72,
+146,196,161, 67,135,240,251,253, 44, 88,176,128, 96, 48,200,156, 57,115, 12,101,178,218,233, 57, 57,161,206,212,227,178, 19, 62,
+160,195, 56, 81, 44, 97,211, 19, 10, 53,222,186,136,205,136,224,237,167,242,133,207, 46,102,117, 94,218,198,104,184,211, 46,132,
+168,171,199,245,212,223,173,182,182,150,130,130,130,104,209,120,172,228, 27, 51,162, 39,178, 58, 99,217, 11,133,161,185, 85,166,
+181, 77,166,190, 73,166,165, 77,198,117,241,140, 10,134, 34, 94, 94,115, 64,230,108,163,204,233,243, 50, 31, 31, 10, 34,203, 17,
+207,212,175,241,121,161, 48, 28, 57, 30,224,192,129,115,252,109,251, 57,100, 89,226,159,  7,194,252,112, 74,144, 12, 89,230,196,
+ 41,120,123, 11, 52, 54,203,132,195,240,221,111, 75,116,239,  6,247, 76,158, 74, 87,175,204,102,247, 10,238,137,172,183,168,164,
+ 79, 31,115,215, 64,178,209,186, 86,203,202,202, 24, 55,110, 28,219,183,111,167,186,186,186,195,235,122, 73, 46, 75,150, 44,161,
+119,239,222, 64,196,235, 89,185,114, 37,179,103,207,102,213,170, 85, 81, 17, 93,178,100,  9,245,245,245,156, 63,127,158,230,230,
+102, 67,251,250,147,159, 68, 22, 78, 86,134, 18,133,183,103, 52,204,  9, 78,168, 51, 21,185, 44,133,175,174,174, 78, 55, 59,208,
+231,243, 25, 47,141,232,214,147,202, 65,155, 33, 88,  7,131,123, 82,248,223,131,241,190,147,  7, 68, 82,149, 35, 66, 56,201,114,
+184, 83, 93,210, 16,171,196, 65,141,232, 36,132,199,  7, 29,  5, 16, 34,158,158,104,139,231,241, 41,237,217, 65, 89, 89, 25,251,
+247,239,231,240,214, 23,144,229, 48, 82, 51,100,102, 92, 44, 30, 14,202,132,228,136, 72,181,182, 69,132, 48, 24,130, 41,211,238,
+197,237,118,107, 10,169,176,119,104,235,111, 24, 53, 40,204,230,143, 67,164,165,193,137,211, 18,221,179,224, 47, 91,160,185, 89,
+ 66, 14,195,184,145, 46, 14,127, 17,230, 59,223,157,204, 93,119,221,197,155,127, 59,110,203,119,178, 66,172,144,123, 87,219,211,
+ 11,173,165, 10, 34,139, 51, 47, 47, 47,122,142,138,104,205,252,249,243,227,190, 55, 28, 14,243,241,199, 31, 51, 97,194,132,118,
+237, 43, 87,174,140,138, 75, 91, 91, 27,161, 80,136,253,251,247,211,191,127,127,195,147, 30, 76,155, 54, 77,179,221,172,103,229,
+132, 58, 83,143,132,132,175,174,174,174,211,103,125, 16, 94, 77,105,105,105,116, 76, 75, 77,109,109,109, 84,  0, 10, 10, 10, 44,
+125,142, 50,171, 83, 96,214,211,139, 37,206,162, 77,132,109,141,162, 20, 61,173, 49, 63,179,246,244, 88, 92,213,162,107,111,200,
+144, 33,172, 92,209,198, 29,163, 93,132,129,182, 96,152, 44,151,132, 44, 67, 99,139, 76,107, 48, 18,226,172, 59, 24, 34, 24,150,
+117,139,149,135, 12, 25,194,154,151,130,124,231,166,116,126,148, 23, 73,154,105,104,132,198, 38,137, 33, 95,151,  9,  6, 37, 36,
+178, 56, 91, 31,230,216,137,  0, 83, 11, 70,146,158,158,110,219,119,182,138,222, 10,239, 93,101,175,171, 75, 23,244, 24, 63,126,
+ 60, 79, 63,253,116,  7,175,110,241,226,197,228,231,231,235,158, 47,129, 64,128,225,195,135,211,210,210, 66,122,122, 58, 61,122,
+244,  0, 96,253,250,245,204,152, 49,  3,191,223, 79, 75, 75, 11,173,173,173,100,103,103, 19, 10,133, 12,255, 38,118,101,119, 58,
+161,206,212,195,178,240, 37, 67,244,140,216,116,187,221, 81, 81, 19, 99, 90,202,242, 10,181,151, 23, 47, 25, 36, 74,186,  4,153,
+105,208, 61, 29,178, 51,160,181,145,202, 69, 46,232,254,119, 10,239, 29, 12,221,251,224,253,189,185,239,162,231,145,154,173,229,
+ 83,139,158,122,204,207,172, 61, 61,132,232,233,217,147, 36,137, 69, 75, 86,240,196,220, 57,116,239,  6,225, 48,140, 30,152,142,
+ 36,129, 44, 95, 18,188,144,156,206,244,233,211, 13,217,251,213,226, 21, 20, 61, 62,135, 80,248,162,231, 24,  2,  9,184,231,118,
+104,104,148,248,199, 30, 63, 45,109,105, 76,153,162,111,207, 33,117,137, 85,164,238,241,120,200,203,203, 51,148,232, 18,  8,  4,
+240,251,253,248,124, 62,198,140, 25, 67, 48, 24,196,229,114, 81, 85, 85,197,164, 73,147,104,105,105,161,185,185,153,253,251,247,
+147,147,147, 99,168,156, 65,137,114, 72,197,108,136, 83,224,132, 58, 83, 15, 75,194,215, 21,158,158, 18,117, 40, 40, 86, 72,211,
+206,125, 52, 51,182,103,183,232, 65,199,196, 21,165,248,131,249,218, 64,189,177, 62,179,246,150, 45, 95,129,199,227, 65,146,224,
+189,127,  6,163,165, 13,192,197,113,189,233,198,110, 66, 46, 82,242,236,114, 30,123,236,167, 81, 59,178, 12,155,183, 65, 83,115,
+152,112, 24,166, 76,153,204,157,119,222,105,216,158, 67,234,161, 37,122,115,230,204,137, 10, 94,117,117, 53,146, 36,197, 21,192,
+ 64, 32, 64, 90, 90, 26,215, 92,115, 13,141,141,141,124,244,209, 71,140, 29, 59,150, 96, 48, 72, 67, 67,  3, 59,118,236, 96,240,
+224,193,244,237,219, 23,191,223, 79, 48, 24, 52,229,  5,139, 98,118,129, 21, 47,208,  9,117,166, 30,154,194,167, 87,171,103, 86,
+ 80,140,214,254,153,177, 43,166,  3,211,178,109,166,211,246, 22,150, 69,194,153,251,136,252,181,163,225,226,223,103,134,247, 11,
+244,191,175, 89, 81, 81,207,199,169, 28,171,179, 34,238,106,123, 21,143,245,  4, 34, 98,152,200,205,130,250,152,136, 68,150,220,
+220, 92,211,158,153,203,229, 98,249,242,255,101,247,238,221,188,248,226,139,  0, 52, 94,136,116, 60,215, 95,127, 61,195,135, 15,
+239,178,241, 43,187, 19, 89,108, 79,140,185, 12,198,245,160, 99,210,138,207,231, 67,150,101,106,106,106, 98,110,163, 38, 16,  8,
+ 32,203, 50,225,112,152, 64, 32,192,192,129,  3,169,175,175,103,225,194,133, 52, 52, 52, 48, 96,192,  0, 46, 92,184, 64, 32, 16,
+136,142,245,153,193,142,112,231,137, 19, 39, 18,182,209, 21,182,255,149,233, 32,124,118,123,114,201,244, 12,115,115,115,109,177,
+111,103,150,102,103,120,194,118,119,148,102, 50, 61,245, 80, 11,156, 25, 47, 79, 77, 70, 70,  6, 99,198,140,105,215,150,151,151,
+ 23, 45,128,238, 10, 82,253,250,184, 28, 86, 90, 80,174,164,160, 92, 77, 97,196,136, 17,172, 92,185,146,112, 56,108,120, 69,  5,
+225,193,133,195, 97,218,218,218,162,147, 84, 67, 36,241, 37, 21, 38,169,118, 72, 61,164,188,251, 23,166,246,232,183,131,131,131,
+131,131,131,141, 56, 43,176, 59, 56, 56, 56, 56, 92, 81, 56,194,231,224,224,224,224,112, 69,225,  8,159,131,131,131,131,195, 21,
+133, 35,124, 14, 14, 14, 14, 14, 87, 20,237,178, 58,243, 39, 92, 27,125,172,181,156, 78,188,229,118,180,166,160, 82,218, 51,203,
+191,162, 61,117,249,133,242,247, 76,133,253,187,210,236, 57,199, 35,117,236,233,149,230,116,181, 61, 61,174,116,123,137,216,210,
+178,151,108,146, 62, 87,167,245,105,180,180,215,107, 83,167,242,107,173,206,160,181, 77, 87, 32, 58,214,  5, 11, 22, 40,106,219,
+ 34, 73,180,169, 82,107,181,111,223, 62,150, 44, 89, 18,125,254,228,147, 79, 50,124,248,240, 46,220,163,228,161,117, 60, 62,253,
+244, 83, 32,146, 74,223,149,120, 60, 30,166, 78,243, 80,245, 70,228, 92, 85,159,179,111,190,181,157,170, 55,202,116,207,101,143,
+199,195,238,221,187,185,241,134,209,132,101,162,143,  1,118,238,234,216, 30,150,205, 95, 31,226,250,178,235,186, 18, 51, 16,105,
+205, 67,107,  5,229,186,148,151, 67,121,199,149,200,222,189,123,187,180,159,233,148, 73,170,173, 76, 43,181,231, 88,236, 59,  0,
+ 45,241, 80,207,138, 96, 84, 96,172,212,196, 25,185,152,132, 93,209,201,198,170, 73, 18,219,197, 91, 79, 78,189,143,  3,  6, 95,
+  7,192,201,150, 22,130,254,214, 72, 99,253,121,128,152,243,151,198, 66, 41,122,  0, 75,151, 46, 53,213, 89,120, 60, 30,210, 36,
+  8,203, 68,255, 67,252,199, 47,174,232,252,206, 72,125, 60,132,224,197,218, 78,239,120,216,217,161, 10,209,187,231,238,113, 64,
+ 68,252, 18,249, 12, 33,116,  0,163, 71,143,110,215, 46,142,147,178,189, 43,241,249,124,237,102, 33,178, 50,217,129, 18,113,252,
+ 68,127,144,200,239, 24,235,189, 86,109,218, 97,207,238,155, 14,179,159,111,  7,123,247,238,101,217,178,101,172, 88,177,162,211,
+ 62, 83, 77,167,173,206, 96,215,221,156, 26, 59,138, 16,205, 76,126,163,146, 18,  0,  0,  9,212, 73, 68, 65, 84, 97,100,196, 83,
+ 19, 94,110, 73, 73,  9, 64,244,191,214,118,166,103,208,239,125, 21, 59,125,127,164, 59,215, 18, 98, 43,167,126,183,157, 29,  7,
+207, 50,189,100,149,113, 27, 54,163,229, 73,  0,154,158, 71,216,224, 79,173,156, 35, 49, 30, 94,175, 87,119, 27,113, 60,102,205,
+154,  5, 16,253,175,181, 93,116,126,180, 56,182,238,184,227, 45, 60,158,187,109,237, 44,238,185,123,220,197,239,236,165,234,141,
+142,175, 11, 79,208,  8, 79, 61,245, 95, 28, 59,126,  6,127,115, 61, 55,223,124, 51, 59,119,238,102,205,234,151, 53,219,203,203,
+141, 77,160,156, 44,212,179, 28, 37,178,126,166, 82,244,196,255, 68,196, 47,214,123,172,238,159, 29,246,196, 36,253, 70,190,147,
+153, 62, 55,158, 61, 59,251,110, 33,122,225,112, 24,175,215, 75, 69, 69,  5,247,221,119,159,225,247,171, 87, 94,183,186,  0,117,
+187,228, 22,159,207, 23,253,179,242, 60, 22,202,187, 58, 35,232,173,163,167,156,185, 67, 82,180,197,218,198,  8, 94,175, 87,247,
+111,230,204,153,186,118, 60, 30, 15,  5,  5,  5, 49,197,174,184,184, 24, 73,146, 88,176, 96,129, 41,193, 29, 48,248, 58,232,125,
+ 21,175,205,153, 65, 95,233, 22,142,255,110, 57,217,103,235,187, 92,244,160,163,135, 17,150, 35, 30,158,218,195, 48, 42,122,102,
+208,243,216,197,241,136, 37,118,229,229,229,140, 24, 49,130,187,111, 25, 27,105,232,213,211,230, 61, 52,198,155,111,109,199,235,
+245,242,230, 91,219, 19,182,117,228,232,113, 62, 63,116,144, 79,255,249, 41, 75,151, 46,225, 27,223, 24, 66, 88,214,110,239,106,
+202,202, 46,133,111,149,143,205,162, 22, 61,129,120,110, 37,178, 19,235, 61, 86,103, 78,178,195,158,219,237,142,174, 56,227,241,
+120,168,173,173,213,236, 47,149, 43,212,232,161,180, 23,203,142, 29,179, 69, 41, 69,175,168,168,136,138,138, 10,222,123,239, 61,
+195,239, 87,139, 94,172, 54, 35,180,243,248,148, 33,  6,173,137,150,227,189, 30, 47, 52, 41,132, 49,214,228,204,106, 91,149,149,
+149, 49,149, 60,214, 66,150,122,219,116, 38,235,214,173,235,208, 86, 92, 92, 28,189,187, 85,122,131,197,197,197,134,108, 30,245,
+ 29,166,233,245,255, 36,123,246,111, 24, 48,248, 58,254,173,111,119,124,175,251, 34,162,215,251,170, 72,168,211,101,126,121,158,
+162,162,162,118,225,206,162,162, 34,211, 54,194, 50, 12,236,  9,191,189, 31, 30, 42,135,254, 61,224,211,122,237,246, 61, 38,215,
+ 87,141,117,243, 98,230,166,225,151,191,252,101,135,182,242,242,242,232,241, 88, 60, 43,143,229,127,254,128,171,115,191,198,137,
+207, 99, 79,242, 43,188, 61,192,144,215,103,198,211,136,120,116, 30, 77,207, 78,136,161, 81, 91,221,187,187,112,187,239, 64,198,
+197,234,242, 85,209, 73,220, 99,181,235, 97,180,195,238,170,235, 78, 29,222, 20, 88,241,252,196, 54,202,113, 66,189,237,140,156,
+  3,118,217,131, 75,211,  0,150,149,157,  3,206,225,241,228,180,123,221,140,232, 41,237,  9,129, 83, 46,229, 38,236, 36,122,108,
+247,238,221,203,210,165, 75,163,211,212, 77,152, 48,129, 45, 91,182, 88,202,117, 40, 92, 16,233, 59,189,165,198,250, 78, 45, 58,
+ 37,212, 89, 89, 89, 25, 29, 91,209, 18, 84,101,155,209, 69, 90,245,146, 92, 68,155, 17,140,120,114, 86, 81, 30, 88,165,224,  9,
+ 68,104, 71, 47,171,201,207, 97, 46,124,255, 91,200,189,230,129,123, 33, 23, 88, 11,191,139,116,136,114,229, 60, 92, 63, 94, 78,
+ 48,104,124,185, 21,193,176, 97,195, 18, 62,169, 79,173,132,103, 86,192,117,215,194,201,154, 76, 86,191, 28, 96,214, 31, 99,183,
+155,193,238,245,228,148, 73, 44,199,223, 40,161,215,168, 44,178,135, 62,206,186,146,135, 24, 51,250,106,134,231,253,218,208,241,
+208,195, 76, 72, 84,156,187, 74,209, 43, 43, 43,139, 38,180,152,229,145, 71, 30,214, 12, 61,199,106,239,108, 68,146,145,158, 96,
+ 24,153,204, 93,203,211,211, 26, 62, 48, 42,126, 74,239,211,200,152,156,145, 99,171,180, 39,175,203,233,176,141, 52,243,156, 97,
+123,177, 80,122,125, 86,196, 74, 45,166,  0,125,250,212, 38,180, 79,130,135, 31,126, 24,136,204,157, 58,111,222, 60,158,127,254,
+249,168,232,137,  9,232,245, 16,158,157, 16, 61,241,216, 91, 90, 76,205, 31,126,101, 58,228,217,105, 99,124,185,185,185,209,248,
+180, 50, 94,172,188, 59, 49, 27, 71,142,149,228,162,110,211,195,204,221,145, 25,132, 55,167, 37,120,202,215,141,240,231,159, 63,
+ 77,254,162,165,  4,221,183,144,  1,100,191,127,128,141,  7,207,  2, 16,116,207,165,109, 87, 63,164,254,143,152,218,191, 88,119,
+159,102, 79,244,179,211,214, 50,247,129, 35,236,155, 51,159,166, 77,  1,174,238, 23,191,221, 12,122,203,184,152,161,188,188, 28,
+128,194,252,137,124,240,197, 41,122,141,233,197,177,191, 28,132,172,110,204,152,251, 99,250, 92,171,191,254, 91,178,136,149,197,
+ 25,235,245,120,118,182,110,221, 26, 77, 32, 50,242,216,236,190, 37,146, 96, 97,198, 27,137,183,216,180,114, 63,212, 24, 73,104,
+179, 58, 54,148, 74,168, 61,189,136,104, 65,101,165,125,222,183, 29,158,158, 44,203,  4,131,193,104,219,173,183,222,202,150, 45,
+ 91, 12,139, 94, 50,104, 39,124, 70,198, 75, 98, 97,228, 68, 18,119,111, 98,176, 84,140,253,  9,111, 48, 55, 55,215,176,199,103,
+ 23,201, 12,207,136,212,249, 88,227,125,102,  6,242,167,175, 88,143, 60,101, 48, 39,255, 99, 28,125,185,133,238, 51,150, 19, 60,
+126, 26,122, 95, 69,198,217,181,212, 60, 95,  7, 38, 87, 34,215,242,146,173,176,227,201, 31,114,243, 77,144, 59,119, 55,163,178,
+ 31, 96,239,215, 11,224,183,243, 99,182,155,193, 78,143,175,180,180,148,  9,255, 62, 28,247, 45,195,200,191, 97, 62, 75,158,127,
+145, 79,234,142, 49,231,187, 55,115,162,234, 77, 26,206,157,183,229,124,208, 10,137,234, 93, 31,241,188, 59,179, 89,182,201, 46,
+103,176,138,250, 92,211,123, 14,151,214,161,140, 55,244,161,124,159,222,249, 98,215, 57,223,213,168, 23,162, 86,162, 12, 85, 38,
+130, 29,118, 68, 56, 61, 35, 35,131, 39,158,120,130,143, 62,250,200,212,184, 94,178,104, 39,124,241, 10,212,173, 20,176, 11,196,
+ 15,168,246,250,132,200,229,230,230,182,171,173, 42, 40, 40,192,111, 96,231,181,238,236,204,198,140,147, 85,206, 32,188,185,120,
+ 73, 46,102, 56,248,108, 33,174, 25,203,241,127,177,143,140,247,151,211,182,126, 46,210, 61,207,177,225,145,123,249,124,195,103,
+228, 47, 94,  3, 25,157,230,192,183, 99,126, 37,252,101,241,235,140,250,252, 46, 56,211,196,207, 38,205,143,219,110,  6, 59,198,
+248,224,146,183, 87,245,250,211,164, 15, 24, 73, 54,195, 56,252,174,151, 70, 73,230,239,251,142,224,222,125, 76,215, 70,228,184,
+ 31,142, 62,159, 57,179,172,157,200,  1,108,218,116,183,230,118,241,174, 15,189,144,166,217,172,196, 84, 45,103, 40, 43, 43,107,
+231,241,197, 90,103, 82, 60,135, 75,229, 57, 90,191, 95, 34,217,149,157, 93, 48,157, 44,132,151,231,241,228,116,240,  0,173,224,
+241,228, 80, 89, 89,105,139,232, 85, 84, 84,176,121,243,102,228,117, 57, 72, 51,207,177,108,217, 50,100, 89, 38, 45, 45,173, 75,
+ 75, 25,160, 11,234,248,220,110, 55,149,149,149,209, 11, 32,150, 40,234,157,152, 70,146, 92,140, 98,119, 57,  3, 92,242,246,212,
+ 40,147, 92,204,236,239,142,131,103,105,219,245, 12, 39,217,202,213,247, 60,  7, 13,231, 57,232,157,199,245, 15, 47,227,196,170,
+121,224,202,128,180,174,153,129,238,112, 19,140,248,234,247, 13,183,155,193, 46,143,175,180,180,148, 31,184,191,197, 87,194, 57,
+ 52,227, 98,253,178,185,252, 95,205, 63,248,217,247,110,101,214,210, 87,184,247,127,126,223, 37,201, 25,162,131,191, 84,199,215,
+241, 53,179,164,114, 57,131,219,237, 38, 55, 55,215,208,226,212,102, 23,108, 22,104,141,239, 93,  9, 36, 90,114,160, 76,114, 73,
+212,222, 43,175, 84,240,206, 59,239, 32,253,169, 47,  0,111, 63,213,139, 59,127,221,200,196,137, 19, 77,149, 47, 36,139, 46, 41,
+ 96, 23,  2,167,126,205,202, 73,174,213, 57, 88,233,192,140,212,131,233,149, 89,  8,180,188, 61,171,130, 39,152, 94,178,138,215,
+128,239, 45,154,140, 92, 57, 15,105,230, 18,118, 28, 60,139,212, 39,135,  3, 71,207, 71,188, 61,147,161, 78,187,136, 85,175,151,
+ 72, 29,159,192,142, 49, 62,225,237, 61,116,219,141, 60,254,220,111,248,249, 47, 22,208,255,170,175,178,231,147,195,204,250,228,
+149, 46,207,  2,  6, 58,136, 30,180, 15,203,153,241,250,142, 28, 61,206,145, 35,135, 57,251,229, 41, 54,111,126,151,159,254,244,
+209,104, 57,131,186,221, 10,137,254, 94, 70, 22,144, 78,248,152,184, 47,102, 86,215,154, 75, 92, 75,118, 86,167, 52, 83, 59,173,
+217, 76, 86,103,251,247, 69, 60,180,241,227,199, 27,126, 79,178,137, 38,241,  8,209,219, 25,100,213, 95,  3,  0, 41, 33,122,160,
+ 18, 62,245,248,154,185,231,218, 83,140,105, 33,  4, 78,125,128,133,215,103, 22,101,  7,152, 10, 83,129, 41,189, 61,117, 25,131,
+207,231,107, 39,160,102,238,170,132,248,125,127,209, 74,228,245,208,111, 86, 25,239, 60,126, 47,183,150, 86,128,203, 69,207, 44,
+227,199,192, 78,148, 97, 51,173,199,137,132,214,236,184, 91, 23,222,222,227,222,106,126,241,224,157, 92,115,245,109,192,165, 16,
+188,213,227,  1, 66,156,238,230,142, 59,222, 82,132, 57,205,189, 95,137,186,142, 79, 57,141,153, 81,236, 46,103, 72, 38, 74, 97,
+ 73,198,172, 36,102, 73,118, 86,103,162,246,148, 40, 61,180, 68,102,187,177, 19,143,199, 67,248,213, 28,222,222, 25, 73,102, 41,
+255,107,128, 63,254, 45,128, 44,203, 41,113,131, 41,232,148, 58, 62, 53,241,  4,174, 43, 14, 96,178,202, 25,132,  8,151,149,149,
+117, 40,244,183, 58, 53,211,244,146, 85,160, 40, 88,255,206, 47, 46,197,202,155, 18,216, 87,171, 36,235,100,182,251,  6,230,161,
+219,110,100, 82,237,135,220,247, 95,107,162, 99, 77, 74, 18,157, 42,203, 46,212,158,159,149,130,246,100,148, 51,232,133, 93,173,
+158,  7,202,177,125,241, 60, 85, 72,197,153, 91, 46, 23,238,250,117, 99,187,231,137,126,199,188,251, 23, 82,243,135, 95,225, 45,
+ 45,238, 80,199,103, 37, 67,183, 83, 66,157,177, 46,154,120,105,205,102,190, 76,162,157,100, 50,202, 25, 68,198,166,122,102,  5,
+ 43, 29,172,240, 20,237, 70, 47,140,211,149,216,253,249,147,158,122,201,182,227,161, 70,120,125, 86,247, 89, 79,220,166, 78,243,
+180,219, 78, 43, 44,170,220, 23,187,203, 25,146,137,114,108,191,160,160,192,242,177,232,208,  7, 40, 66,156, 86,251,135, 84,156,
+171,179, 51, 72,116, 95,210,126,112, 14, 73,146,152, 50,245,210,180,131,202,115, 60,222,249,107,132, 68, 10,215,  5, 73, 23, 62,
+171, 63,162,209,172,171, 68, 15,146,221, 39,156,176,103,103,  7,155, 44,111, 36,149, 46,182,142,200, 92,154,144,206, 58,201, 56,
+ 30,241, 62,199, 10,137,118,  4,157, 65, 50,207, 21,145,240,102, 53,153, 34, 89,251,118,185,120,124,169,116, 29, 71,246,197,158,
+107, 87,141,240,250,212,109, 86,144,242,238, 95,120,101,164, 60, 57, 56, 56, 56, 56, 56,224,172,192,238,224,224,224,224,112,133,
+225,  8,159,131,131,131,131,195, 21,197,255,  3, 49,132,139,134, 14,210, 46,193,  0,  0,  0,  0, 73, 69, 78, 68,174, 66, 96,130,
 };
-
index b23eabd118ebfb083efc68f29952d923d0e2ff8b..89fda6654d4f38eb281be814c9ffa6c933c8c215 100644 (file)
@@ -245,7 +245,7 @@ void do_butspace(unsigned short event)
        if(buts->mainb==CONTEXT_EDITING) allqueue(REDRAWBUTSEDIT, curarea->win);
        if(buts->mainb==CONTEXT_SCRIPT) allqueue(REDRAWBUTSSCRIPT, curarea->win);
        if(buts->mainb==CONTEXT_LOGIC) allqueue(REDRAWBUTSLOGIC, curarea->win);
-       
+
        if (event <=50){
                do_global_buttons2(event);
        }
@@ -318,6 +318,10 @@ void do_butspace(unsigned short event)
        else if(event<=B_UVAUTOCALCBUTS) {
                do_uvautocalculationbuts(event);
        }
+       else if(event<=B_EFFECTSBUTS) {
+               /*here we put the effects buttons do commands*/
+               do_effects_panels(event);
+       }
        else if(event==REDRAWVIEW3D) allqueue(event, 1);        // 1=do header too
        else if(event>REDRAWVIEW3D) allqueue(event, 0);
 }
@@ -413,10 +417,14 @@ void drawbutspace(ScrArea *sa, void *spacedata)
 
                break;
        case CONTEXT_OBJECT:
-               /* no tabs */
-               object_panels();
-               break;
-               
+               tab= sbuts->tab[CONTEXT_OBJECT];
+               if(tab== TAB_OBJECT_OBJECT) {
+                       object_panels();
+               }
+               else if(tab == TAB_OBJECT_EFFECTS)  {
+                       effects_panels();
+               }
+
                break;
        case CONTEXT_SHADING:
                tab= sbuts->tab[CONTEXT_SHADING];
index 94102fe154b36937a54eb2bc8517bedd0d68ff86..fe96d19955845c035a009aea7c62df5af8628369 100644 (file)
@@ -2499,9 +2499,9 @@ void editing_panels()
                                editing_panel_mesh_texface();
                                editing_panel_mesh_uvautocalculation();
                        }
-
-                       if(G.f & (G_VERTEXPAINT | G_TEXTUREPAINT | G_WEIGHTPAINT) )
+                       if(G.f & (G_VERTEXPAINT | G_TEXTUREPAINT | G_WEIGHTPAINT) ) {
                                editing_panel_mesh_paint();
+                       }
                }
                break;
 
index 6702b745c1e9fb858c8fafd8446c7725d474b538..9b5242075c00d7825ddf704aa6e01af73e499c87 100644 (file)
@@ -971,9 +971,7 @@ void object_panel_draw(Object *ob)
 void do_object_panels(unsigned short event)
 {
        Object *ob;
-       Base *base;
-       Effect *eff, *effn;
-       int type;
+       Effect *eff;
        
        ob= OBACT;
 
@@ -983,7 +981,139 @@ void do_object_panels(unsigned short event)
                calc_curvepath(OBACT);
                allqueue(REDRAWVIEW3D, 0);
                break;
-       case B_AUTOTIMEOFS:
+       case B_PRINTSPEED:
+               ob= OBACT;
+               if(ob) {
+                       float vec[3];
+                       CFRA++;
+                       do_ob_ipo(ob);
+                       where_is_object(ob);
+                       VECCOPY(vec, ob->obmat[3]);
+                       CFRA--;
+                       do_ob_ipo(ob);
+                       where_is_object(ob);
+                       VecSubf(vec, vec, ob->obmat[3]);
+                       prspeed= Normalise(vec);
+                       scrarea_queue_winredraw(curarea);
+               }
+               break;
+       case B_PRINTLEN:
+               ob= OBACT;
+               if(ob && ob->type==OB_CURVE) {
+                       Curve *cu=ob->data;
+                       
+                       if(cu->path) prlen= cu->path->totdist; else prlen= -1.0;
+                       scrarea_queue_winredraw(curarea);
+               } 
+               break;
+       case B_RELKEY:
+               allspace(REMAKEIPO, 0);
+               allqueue(REDRAWBUTSOBJECT, 0);
+               allqueue(REDRAWIPO, 0);
+               break;
+               
+       default:
+               if(event>=B_SELEFFECT && event<B_SELEFFECT+MAX_EFFECT) {
+                       ob= OBACT;
+                       if(ob) {
+                               int a=B_SELEFFECT;
+                               
+                               eff= ob->effect.first;
+                               while(eff) {
+                                       if(event==a) eff->flag |= SELECT;
+                                       else eff->flag &= ~SELECT;
+                                       
+                                       a++;
+                                       eff= eff->next;
+                               }
+                               allqueue(REDRAWBUTSOBJECT, 0);
+                       }
+               }
+       }
+
+}
+
+
+static void object_panel_anim(Object *ob)
+{
+       uiBlock *block;
+       char str[32];
+       
+       block= uiNewBlock(&curarea->uiblocks, "object_panel_anim", UI_EMBOSS, UI_HELV, curarea->win);
+       if(uiNewPanel(curarea, block, "Anim settings", "Object", 0, 0, 318, 204)==0) return;
+       
+       uiBlockBeginAlign(block);
+       uiDefButC(block, ROW,REDRAWVIEW3D,"TrackX",     27,190,58,19, &ob->trackflag, 12.0, 0.0, 0, 0, "Specify the axis that points to another object");
+       uiDefButC(block, ROW,REDRAWVIEW3D,"Y",          85,190,19,19, &ob->trackflag, 12.0, 1.0, 0, 0, "Specify the axis that points to another object");
+       uiDefButC(block, ROW,REDRAWVIEW3D,"Z",          104,190,19,19, &ob->trackflag, 12.0, 2.0, 0, 0, "Specify the axis that points to another object");
+       uiDefButC(block, ROW,REDRAWVIEW3D,"-X",         124,190,24,19, &ob->trackflag, 12.0, 3.0, 0, 0, "Specify the axis that points to another object");
+       uiDefButC(block, ROW,REDRAWVIEW3D,"-Y",         150,190,24,19, &ob->trackflag, 12.0, 4.0, 0, 0, "Specify the axis that points to another object");
+       uiDefButC(block, ROW,REDRAWVIEW3D,"-Z",         177,190,24,19, &ob->trackflag, 12.0, 5.0, 0, 0, "Specify the axis that points to another object");
+       uiBlockBeginAlign(block);
+       uiDefButC(block, ROW,REDRAWVIEW3D,"UpX",        226,190,45,19, &ob->upflag, 13.0, 0.0, 0, 0, "Specify the axis that points up");
+       uiDefButC(block, ROW,REDRAWVIEW3D,"Y",          274,190,20,19, &ob->upflag, 13.0, 1.0, 0, 0, "Specify the axis that points up");
+       uiDefButC(block, ROW,REDRAWVIEW3D,"Z",          297,190,19,19, &ob->upflag, 13.0, 2.0, 0, 0, "Specify the axis that points up");
+       uiBlockBeginAlign(block);
+       uiDefButC(block, TOG|BIT|0, REDRAWVIEW3D, "Draw Key",           25,160,70,19, &ob->ipoflag, 0, 0, 0, 0, "Draw object as key position");
+       uiDefButC(block, TOG|BIT|1, REDRAWVIEW3D, "Draw Key Sel",       97,160,81,19, &ob->ipoflag, 0, 0, 0, 0, "Limit the drawing of object keys");
+       uiDefButC(block, TOG|BIT|7, REDRAWVIEW3D, "Powertrack",         180,160,78,19, &ob->transflag, 0, 0, 0, 0, "Switch objects rotation off");
+       uiDefButS(block, TOG|BIT|4, 0, "SlowPar",                                       261,160,56,19, &ob->partype, 0, 0, 0, 0, "Create a delay in the parent relationship");
+       uiBlockBeginAlign(block);
+       uiDefButC(block, TOG|BIT|3, REDRAWVIEW3D, "DupliFrames",        24,128,88,19, &ob->transflag, 0, 0, 0, 0, "Make copy of object for every frame");
+       uiDefButC(block, TOG|BIT|4, REDRAWVIEW3D, "DupliVerts",         114,128,82,19, &ob->transflag, 0, 0, 0, 0, "Duplicate child objects on all vertices");
+       uiDefButC(block, TOG|BIT|5, REDRAWVIEW3D, "Rot",                200,128,31,19, &ob->transflag, 0, 0, 0, 0, "Rotate dupli according to facenormal");
+       uiDefButC(block, TOG|BIT|6, REDRAWVIEW3D, "No Speed",   234,128,82,19, &ob->transflag, 0, 0, 0, 0, "Set dupliframes to still, regardless of frame");
+       uiBlockBeginAlign(block);
+       uiDefButS(block, NUM, REDRAWVIEW3D, "DupSta:",          24,105,141,19, &ob->dupsta, 1.0, 17999.0, 0, 0, "Specify startframe for Dupliframes");
+       uiDefButS(block, NUM, REDRAWVIEW3D, "DupOn:",           169,105,146,19, &ob->dupon, 1.0, 1500.0, 0, 0, "");
+       uiDefButS(block, NUM, REDRAWVIEW3D, "DupEnd",           24,82,140,19, &ob->dupend, 1.0, 18000.0, 0, 0, "Specify endframe for Dupliframes");
+       uiDefButS(block, NUM, REDRAWVIEW3D, "DupOff",           169,82,145,19, &ob->dupoff, 0.0, 1500.0, 0, 0, "");
+       uiBlockBeginAlign(block);
+       uiDefButC(block, TOG|BIT|2, REDRAWALL, "Offs Ob",                       23,51,56,20, &ob->ipoflag, 0, 0, 0, 0, "Let the timeoffset work on its own objectipo");
+       uiDefButC(block, TOG|BIT|6, REDRAWALL, "Offs Par",                      82,51,56,20 , &ob->ipoflag, 0, 0, 0, 0, "Let the timeoffset work on the parent");
+       uiDefButC(block, TOG|BIT|7, REDRAWALL, "Offs Particle",         141,51,103,20, &ob->ipoflag, 0, 0, 0, 0, "Let the timeoffset work on the particle effect");
+       
+       uiBlockBeginAlign(block);
+       uiDefButF(block, NUM, REDRAWALL, "TimeOffset:",                 23,17,114,30, &ob->sf, -9000.0, 9000.0, 100, 0, "Specify an offset in frames");
+       uiDefBut(block, BUT, B_AUTOTIMEOFS, "Automatic Time",   139,17,104,31, 0, 0, 0, 0, 0, "Generate automatic timeoffset values for all selected frames");
+       uiDefBut(block, BUT, B_PRINTSPEED,      "PrSpeed",                      246,17,67,31, 0, 0, 0, 0, 0, "Print objectspeed");
+       uiBlockEndAlign(block);
+       
+       sprintf(str, "%.4f", prspeed);
+       uiDefBut(block, LABEL, 0, str,                                                  247,40,63,31, 0, 1.0, 0, 0, 0, "");
+       
+}
+
+void object_panels()
+{
+       Object *ob;
+
+       /* check context here */
+       ob= OBACT;
+       if(ob) {
+               if(ob->id.lib) uiSetButLock(1, "Can't edit library data");
+
+               object_panel_anim(ob);
+               object_panel_draw(ob);
+               object_panel_constraint();
+       /*      if(ob->type==OB_MESH) object_panel_effects(ob); */
+
+               uiClearButLock();
+       }
+}
+
+void do_effects_panels(unsigned short event)
+{
+       Object *ob;
+       Base *base;
+       Effect *eff, *effn;
+       int type;
+       
+       ob= OBACT;
+
+       switch(event) {
+
+    case B_AUTOTIMEOFS:
                auto_timeoffs();
                break;
        case B_FRAMEMAP:
@@ -1011,8 +1141,8 @@ void do_object_panels(unsigned short event)
                        }
                        eff= effn;
                }
-               allqueue(REDRAWBUTSOBJECT, 0);
                allqueue(REDRAWVIEW3D, 0);
+               allqueue(REDRAWBUTSOBJECT, 0);
                break;
        case B_NEXTEFFECT:
                if(ob==0 || ob->type!=OB_MESH) break;
@@ -1060,8 +1190,8 @@ void do_object_panels(unsigned short event)
                        }
                        eff= eff->next;
                }
-               allqueue(REDRAWBUTSOBJECT, 0);
                allqueue(REDRAWVIEW3D, 0);
+               allqueue(REDRAWBUTSOBJECT, 0);
                break;
        case B_CALCEFFECT:
                if(ob==0 || ob->type!=OB_MESH) break;
@@ -1093,37 +1223,7 @@ void do_object_panels(unsigned short event)
                }
                allqueue(REDRAWVIEW3D, 0);
                break;
-       case B_PRINTSPEED:
-               ob= OBACT;
-               if(ob) {
-                       float vec[3];
-                       CFRA++;
-                       do_ob_ipo(ob);
-                       where_is_object(ob);
-                       VECCOPY(vec, ob->obmat[3]);
-                       CFRA--;
-                       do_ob_ipo(ob);
-                       where_is_object(ob);
-                       VecSubf(vec, vec, ob->obmat[3]);
-                       prspeed= Normalise(vec);
-                       scrarea_queue_winredraw(curarea);
-               }
-               break;
-       case B_PRINTLEN:
-               ob= OBACT;
-               if(ob && ob->type==OB_CURVE) {
-                       Curve *cu=ob->data;
-                       
-                       if(cu->path) prlen= cu->path->totdist; else prlen= -1.0;
-                       scrarea_queue_winredraw(curarea);
-               } 
-               break;
-       case B_RELKEY:
-               allspace(REMAKEIPO, 0);
-               allqueue(REDRAWBUTSOBJECT, 0);
-               allqueue(REDRAWIPO, 0);
-               break;
-               
+
        default:
                if(event>=B_SELEFFECT && event<B_SELEFFECT+MAX_EFFECT) {
                        ob= OBACT;
@@ -1145,16 +1245,45 @@ void do_object_panels(unsigned short event)
 
 }
 
-void object_panel_effects(Object *ob)
+/* Panel for particle interaction settings */
+static void editing_panel_deflectors(Object *ob)
+{
+       uiBlock *block;
+
+       block= uiNewBlock(&curarea->uiblocks, "editing_panel_deflectors", UI_EMBOSS, UI_HELV, curarea->win);
+       if(uiNewPanel(curarea, block, "Particle Interaction", "Effects", 0, 0, 190, 204)==0) return;
+
+       /* should become button, option? */
+       if(ob->pd==NULL) {
+               ob->pd= MEM_callocN(sizeof(PartDeflect), "PartDeflect");
+               /* and if needed, init here */
+       }
+       
+       if(ob->pd) {
+               uiBlockBeginAlign(block);
+               uiDefButS(block, TOG|BIT|0, B_DIFF, "Force field",      10,160,150,20, &ob->pd->forcefield, 0, 0, 0, 0, "Object center attracts or repels particles");
+               uiDefButF(block, NUM, B_DIFF, "Strength",       10,140,150,20, &ob->pd->f_strength, -100, 100, 0, 0, "Strength of force field");
+               uiDefButF(block, NUM, B_DIFF, "Fall-off",       10,120,150,20, &ob->pd->f_power, 0, 10, 0, 0, "Falloff power (real gravitational fallof = 2)");
+               /* only meshes collide now */
+               if(ob->type==OB_MESH) {
+                       uiBlockBeginAlign(block);
+                       uiDefButS(block, TOG|BIT|0, B_DIFF, "Deflection",10,80,150,20, &ob->pd->deflect, 0, 0, 0, 0, "Deflects particles based on collision");
+                       uiDefButF(block, NUM, B_DIFF, "Surface damping",        10,60,150,20, &ob->pd->pdef_damp, 0, 1, 0, 0, "Amount of damping during particle collision");
+                       uiDefButF(block, NUM, B_DIFF, "Random damping", 10,40,150,20, &ob->pd->pdef_rdamp, 0, 1, 0, 0, "Random variation of damping");
+                       uiDefButF(block, NUM, B_DIFF, "Permeability",           10,30,150,20, &ob->pd->pdef_perm, 0, 1, 0, 0, "Chance that the particle will pass through the mesh");
+               }
+       }
+}
+
+void effects_panel_effects(Object *ob)
 {
        Effect *eff;
        uiBlock *block;
        int a;
        short x, y;
        
-       block= uiNewBlock(&curarea->uiblocks, "object_panel_effects", UI_EMBOSS, UI_HELV, curarea->win);
-       uiNewPanelTabbed("Constraints", "Object");
-       if(uiNewPanel(curarea, block, "Effects", "Object", 640, 0, 418, 204)==0) return;
+       block= uiNewBlock(&curarea->uiblocks, "effect_panel_effects", UI_EMBOSS, UI_HELV, curarea->win);
+       if(uiNewPanel(curarea, block, "Effects", "Effects", 190, 0, 418, 204)==0) return;
 
        /* EFFECTS */
        
@@ -1237,7 +1366,7 @@ void object_panel_effects(Object *ob)
                                uiDefButF(block, NUM, B_CALCEFFECT, "End:",             731,146,97,20, &paf->end, 1.0, 9000.0, 100, 0, "Specify the endframe");
                        }
                        uiDefButF(block, NUM, B_CALCEFFECT, "Life:",            831,146,88,20, &paf->lifetime, 1.0, 9000.0, 100, 0, "Specify the life span of the particles");
-                       uiDefButI(block, NUM, B_CALCEFFECT, "Keys:",            922,146,80,20, &paf->totkey, 1.0, 32.0, 0, 0, "Specify the number of key positions");
+                       uiDefButI(block, NUM, B_CALCEFFECT, "Keys:",            922,146,80,20, &paf->totkey, 1.0, 100.0, 0, 0, "Specify the number of key positions");
                        
                        uiDefButS(block, NUM, B_REDR,           "CurMul:",              550,124,91,20, &paf->curmult, 0.0, 3.0, 0, 0, "Multiply the particles");
                        uiDefButS(block, NUM, B_CALCEFFECT, "Mat:",                     644,124,84,20, paf->mat+paf->curmult, 1.0, 8.0, 0, 0, "Specify the material used for the particles");
@@ -1287,57 +1416,8 @@ void object_panel_effects(Object *ob)
        }
 }
 
-static void object_panel_anim(Object *ob)
-{
-       uiBlock *block;
-       char str[32];
-       
-       block= uiNewBlock(&curarea->uiblocks, "object_panel_anim", UI_EMBOSS, UI_HELV, curarea->win);
-       if(uiNewPanel(curarea, block, "Anim settings", "Object", 0, 0, 318, 204)==0) return;
-       
-       uiBlockBeginAlign(block);
-       uiDefButC(block, ROW,REDRAWVIEW3D,"TrackX",     27,190,58,19, &ob->trackflag, 12.0, 0.0, 0, 0, "Specify the axis that points to another object");
-       uiDefButC(block, ROW,REDRAWVIEW3D,"Y",          85,190,19,19, &ob->trackflag, 12.0, 1.0, 0, 0, "Specify the axis that points to another object");
-       uiDefButC(block, ROW,REDRAWVIEW3D,"Z",          104,190,19,19, &ob->trackflag, 12.0, 2.0, 0, 0, "Specify the axis that points to another object");
-       uiDefButC(block, ROW,REDRAWVIEW3D,"-X",         124,190,24,19, &ob->trackflag, 12.0, 3.0, 0, 0, "Specify the axis that points to another object");
-       uiDefButC(block, ROW,REDRAWVIEW3D,"-Y",         150,190,24,19, &ob->trackflag, 12.0, 4.0, 0, 0, "Specify the axis that points to another object");
-       uiDefButC(block, ROW,REDRAWVIEW3D,"-Z",         177,190,24,19, &ob->trackflag, 12.0, 5.0, 0, 0, "Specify the axis that points to another object");
-       uiBlockBeginAlign(block);
-       uiDefButC(block, ROW,REDRAWVIEW3D,"UpX",        226,190,45,19, &ob->upflag, 13.0, 0.0, 0, 0, "Specify the axis that points up");
-       uiDefButC(block, ROW,REDRAWVIEW3D,"Y",          274,190,20,19, &ob->upflag, 13.0, 1.0, 0, 0, "Specify the axis that points up");
-       uiDefButC(block, ROW,REDRAWVIEW3D,"Z",          297,190,19,19, &ob->upflag, 13.0, 2.0, 0, 0, "Specify the axis that points up");
-       uiBlockBeginAlign(block);
-       uiDefButC(block, TOG|BIT|0, REDRAWVIEW3D, "Draw Key",           25,160,70,19, &ob->ipoflag, 0, 0, 0, 0, "Draw object as key position");
-       uiDefButC(block, TOG|BIT|1, REDRAWVIEW3D, "Draw Key Sel",       97,160,81,19, &ob->ipoflag, 0, 0, 0, 0, "Limit the drawing of object keys");
-       uiDefButC(block, TOG|BIT|7, REDRAWVIEW3D, "Powertrack",         180,160,78,19, &ob->transflag, 0, 0, 0, 0, "Switch objects rotation off");
-       uiDefButS(block, TOG|BIT|4, 0, "SlowPar",                                       261,160,56,19, &ob->partype, 0, 0, 0, 0, "Create a delay in the parent relationship");
-       uiBlockBeginAlign(block);
-       uiDefButC(block, TOG|BIT|3, REDRAWVIEW3D, "DupliFrames",        24,128,88,19, &ob->transflag, 0, 0, 0, 0, "Make copy of object for every frame");
-       uiDefButC(block, TOG|BIT|4, REDRAWVIEW3D, "DupliVerts",         114,128,82,19, &ob->transflag, 0, 0, 0, 0, "Duplicate child objects on all vertices");
-       uiDefButC(block, TOG|BIT|5, REDRAWVIEW3D, "Rot",                200,128,31,19, &ob->transflag, 0, 0, 0, 0, "Rotate dupli according to facenormal");
-       uiDefButC(block, TOG|BIT|6, REDRAWVIEW3D, "No Speed",   234,128,82,19, &ob->transflag, 0, 0, 0, 0, "Set dupliframes to still, regardless of frame");
-       uiBlockBeginAlign(block);
-       uiDefButS(block, NUM, REDRAWVIEW3D, "DupSta:",          24,105,141,19, &ob->dupsta, 1.0, 17999.0, 0, 0, "Specify startframe for Dupliframes");
-       uiDefButS(block, NUM, REDRAWVIEW3D, "DupOn:",           169,105,146,19, &ob->dupon, 1.0, 1500.0, 0, 0, "");
-       uiDefButS(block, NUM, REDRAWVIEW3D, "DupEnd",           24,82,140,19, &ob->dupend, 1.0, 18000.0, 0, 0, "Specify endframe for Dupliframes");
-       uiDefButS(block, NUM, REDRAWVIEW3D, "DupOff",           169,82,145,19, &ob->dupoff, 0.0, 1500.0, 0, 0, "");
-       uiBlockBeginAlign(block);
-       uiDefButC(block, TOG|BIT|2, REDRAWALL, "Offs Ob",                       23,51,56,20, &ob->ipoflag, 0, 0, 0, 0, "Let the timeoffset work on its own objectipo");
-       uiDefButC(block, TOG|BIT|6, REDRAWALL, "Offs Par",                      82,51,56,20 , &ob->ipoflag, 0, 0, 0, 0, "Let the timeoffset work on the parent");
-       uiDefButC(block, TOG|BIT|7, REDRAWALL, "Offs Particle",         141,51,103,20, &ob->ipoflag, 0, 0, 0, 0, "Let the timeoffset work on the particle effect");
-       
-       uiBlockBeginAlign(block);
-       uiDefButF(block, NUM, REDRAWALL, "TimeOffset:",                 23,17,114,30, &ob->sf, -9000.0, 9000.0, 100, 0, "Specify an offset in frames");
-       uiDefBut(block, BUT, B_AUTOTIMEOFS, "Automatic Time",   139,17,104,31, 0, 0, 0, 0, 0, "Generate automatic timeoffset values for all selected frames");
-       uiDefBut(block, BUT, B_PRINTSPEED,      "PrSpeed",                      246,17,67,31, 0, 0, 0, 0, 0, "Print objectspeed");
-       uiBlockEndAlign(block);
-       
-       sprintf(str, "%.4f", prspeed);
-       uiDefBut(block, LABEL, 0, str,                                                  247,40,63,31, 0, 1.0, 0, 0, 0, "");
-       
-}
 
-void object_panels()
+void effects_panels()
 {
        Object *ob;
 
@@ -1346,12 +1426,11 @@ void object_panels()
        if(ob) {
                if(ob->id.lib) uiSetButLock(1, "Can't edit library data");
 
-               object_panel_anim(ob);
-               object_panel_draw(ob);
-               object_panel_constraint();
-               if(ob->type==OB_MESH) object_panel_effects(ob);
+               editing_panel_deflectors(ob);
+               if(ob->type==OB_MESH) {
+                       effects_panel_effects(ob);
+               }
                
                uiClearButLock();
        }
 }
-
index 3927f4c3b9b7164a450e543043ec868c5fdd1197..2d92883de803041f40cab1b238de229ba1bdc824 100644 (file)
@@ -2463,7 +2463,7 @@ int play_anim(int mode)
        /* patch for very very old scenes */
        if(SFRA==0) SFRA= 1;
        if(EFRA==0) EFRA= 250;
-       
+
        if(SFRA>EFRA) return 0;
        
        update_time();
index ae62978c63c55d8328c89df8a610f88199135a82..1a2af081914589307944cbe7dac24e6d3f15ab1c 100644 (file)
@@ -236,6 +236,21 @@ void getname_ob_ei(int nr, char *str, int colipo)
        case OB_COL_A:
                strcpy(str, "ColA");
                break;
+       case OB_PD_FSTR:
+               strcpy(str, "FStreng");
+               break;
+       case OB_PD_FFALL:
+               strcpy(str, "FFall");
+               break;
+       case OB_PD_SDAMP:
+               strcpy(str, "Damping");
+               break;
+       case OB_PD_RDAMP:
+               strcpy(str, "RDamp");
+               break;
+       case OB_PD_PERM:
+               strcpy(str, "Perm");
+               break;
        default:
                str[0]= 0;
        }       
@@ -3789,13 +3804,40 @@ void common_insertkey()
                                                insertkey(id, map+MAP_SIZE_Y);
                                                insertkey(id, map+MAP_SIZE_Z);
                                        }
-                                       
+
                                }
                        }
                }
-               else if(G.buts->mainb==CONTEXT_EDITING) {
-                       ob= OBACT;
-                       if(ob && ob->type==OB_CAMERA) {
+               else if(G.buts->mainb==CONTEXT_OBJECT) {
+                   int tab= G.buts->tab[CONTEXT_OBJECT];
+                       if(tab==TAB_OBJECT_EFFECTS) {
+                               ob= OBACT;
+                               if(ob && ob->type==OB_MESH) {
+                                       id= (ID *) (ob);
+                                       if(id) {
+                                               event= pupmenu("Insert Key %t|Surface Damping%x0|Random Damping%x1|Permeability%x2|Force Strength%x3|Force Falloff%x4");
+                                               if(event== -1) return;
+
+                                               if(event==0) {
+                                                       insertkey(id, OB_PD_SDAMP);
+                                               }
+                                               if(event==1) {
+                                                       insertkey(id, OB_PD_RDAMP);
+                                               }
+                                               if(event==2) {
+                                                       insertkey(id, OB_PD_PERM);
+                                               }
+                                               if(event==3) {
+                                                       insertkey(id, OB_PD_FSTR);
+                                               }
+                                               if(event==4) {
+                                                       insertkey(id, OB_PD_FFALL);
+                                               }
+
+                                       }
+                               }
+                       }
+                       else if(ob && ob->type==OB_CAMERA) {
                                id= G.buts->lockpoin;
                                if(id) {
                                        event= pupmenu("Insert Key %t|Lens%x0|Clipping%x1");
index 0464942cdd677759e2aa5eb2dfa604a227a80dd9..522031e3c763b528f3a9890c430391ca12ce5e22 100644 (file)
@@ -87,10 +87,13 @@ void sdrawXORline(int x0, int y0, int x1, int y1)
 
 void glutil_draw_front_xor_line(int x0, int y0, int x1, int y1)
 {
+       glReadBuffer(GL_FRONT);
        glDrawBuffer(GL_FRONT);
        sdrawXORline(x0, y0, x1, y1);
        glFlush();
+       glReadBuffer(GL_BACK);
        glDrawBuffer(GL_BACK);
+       
 }
 
 void sdrawXORline4(int nr, int x0, int y0, int x1, int y1)
index db4b6572ec6a0150792e766091443da3d55777f9..f31ee2cc874f601d74d11fa12c8bb4c4ecfe2e4a 100644 (file)
@@ -249,7 +249,7 @@ void buttons_active_id(ID **id, ID **idfrom)
                                else if(G.buts->tabo==TAB_SHADING_WORLD) G.buts->texfrom= 1;
                                else if(G.buts->tabo==TAB_SHADING_MAT) G.buts->texfrom= 0;
                        }
-       
+
                        if(G.buts->texfrom==0) {
                                if(ob && ob->type<OB_LAMP && ob->type) {
                                        ma= give_current_material(ob, ob->actcol);
@@ -510,7 +510,7 @@ void buts_buttons(void)
 //     uiDefIconBut(block, BUT, B_BUTSHOME, ICON_HOME, xco+=XIC,0,XIC,YIC, 0, 0, 0, 0, 0, "Zooms window to home view showing all items (HOMEKEY)");
 //     xco+=XIC;
        
-       /* mainb menu */
+       /* mainb menu*/
        /* (this could be done later with a dynamic tree and branches, also for python) */
        //{
        //      char mainbname[8][12]= {" Scene", " Object", " Types", " Shading", " Editing", " Script", " Logic"};
@@ -542,7 +542,10 @@ void buts_buttons(void)
                
                break;
        case CONTEXT_OBJECT:
-               
+               uiBlockBeginAlign(block);
+               uiDefIconButC(block, ROW, B_REDR,               ICON_OBJECT,    xco+=XIC, t_base, XIC, YIC, &(G.buts->tab[CONTEXT_OBJECT]), 1.0, (float)TAB_OBJECT_OBJECT, 0, 0, "Object ");
+               uiDefIconButC(block, ROW, B_REDR,               ICON_EFFECTS,   xco+=XIC, t_base, XIC, YIC, &(G.buts->tab[CONTEXT_OBJECT]), 1.0, (float)TAB_OBJECT_EFFECTS, 0, 0, "Effects");
+
                break;
        case CONTEXT_SHADING:
                uiBlockBeginAlign(block);
@@ -557,7 +560,7 @@ void buts_buttons(void)
                
                break;
        case CONTEXT_SCRIPT:
-               
+
                break;
        case CONTEXT_LOGIC: