From 67e3ac0edfd8d3ac0d2e3e87d473a5bd268b0ce3 Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Mon, 20 Oct 2008 04:53:49 +0000 Subject: [PATCH 01/38] - Bugfix: 'Hide' button for PoseMode bones (in Editing Buttons) was setting the 'Mult' flag instead - Tidied up comments in Action Editor code a bit --- source/blender/src/buttons_editing.c | 2 +- source/blender/src/editaction.c | 11 ++++++----- source/blender/src/editaction_gpencil.c | 12 +++++++++--- 3 files changed, 16 insertions(+), 9 deletions(-) diff --git a/source/blender/src/buttons_editing.c b/source/blender/src/buttons_editing.c index 4b3e8b1a056..dbf7e76d5f6 100644 --- a/source/blender/src/buttons_editing.c +++ b/source/blender/src/buttons_editing.c @@ -4635,7 +4635,7 @@ static void editing_panel_pose_bones(Object *ob, bArmature *arm) uiDefButBitI(block, TOG, BONE_NO_SCALE, B_ARM_RECALCDATA, "S", 70,by-38,20,19, &curBone->flag, 1.0, 32.0, 0.0, 0.0, "Don't inherit scale from parent Bone"); uiDefButBitI(block, TOGN, BONE_NO_DEFORM, B_ARM_RECALCDATA, "Deform", 90, by-38, 80, 19, &curBone->flag, 0.0, 0.0, 0.0, 0.0, "Indicate if Bone deforms geometry"); uiDefButBitI(block, TOG, BONE_MULT_VG_ENV, B_ARM_RECALCDATA, "Mult", 170,by-38,80,19, &curBone->flag, 1.0, 32.0, 0.0, 0.0, "Multiply Bone Envelope with VertexGroup"); - uiDefButBitI(block, TOG, BONE_MULT_VG_ENV, B_ARM_RECALCDATA, "Hide", 250,by-38,80,19, &curBone->flag, 1.0, 32.0, 0.0, 0.0, "Toggles display of this bone in Edit Mode"); + uiDefButBitI(block, TOG, BONE_HIDDEN_P, B_ARM_RECALCDATA, "Hide", 250,by-38,80,19, &curBone->flag, 1.0, 32.0, 0.0, 0.0, "Toggles display of this bone in Edit Mode"); /* layers */ uiBlockBeginAlign(block); diff --git a/source/blender/src/editaction.c b/source/blender/src/editaction.c index 0f0e38084b6..f976244bf91 100644 --- a/source/blender/src/editaction.c +++ b/source/blender/src/editaction.c @@ -2095,9 +2095,9 @@ void paste_actdata () short datatype; Object *ob= OBACT; - short no_name= 0; - float offset = CFRA - actcopy_firstframe; + const float offset = (float)(CFRA - actcopy_firstframe); char *actname = NULL, *conname = NULL; + short no_name= 0; /* check if buffer is empty */ if (ELEM(NULL, actcopybuf.first, actcopybuf.last)) { @@ -2118,13 +2118,13 @@ void paste_actdata () /* from selected channels */ for (ale= act_data.first; ale; ale= ale->next) { - Ipo *ipo_src=NULL; + Ipo *ipo_src = NULL; bActionChannel *achan; IpoCurve *ico, *icu; BezTriple *bezt; int i; - /* find matching ipo-block */ + /* find suitable IPO-block from buffer to paste from */ for (achan= actcopybuf.first; achan; achan= achan->next) { /* try to match data */ if (ale->ownertype == ACTTYPE_ACHAN) { @@ -2170,7 +2170,8 @@ void paste_actdata () /* loop over curves, pasting keyframes */ for (ico= ipo_src->curve.first; ico; ico= ico->next) { - icu= verify_ipocurve((ID*)ob, ico->blocktype, actname, conname, NULL, ico->adrcode, 1); + /* get IPO-curve to paste to (IPO-curve might not exist for destination, so gets created) */ + icu= verify_ipocurve((ID *)ob, ico->blocktype, actname, conname, NULL, ico->adrcode, 1); if (icu) { /* just start pasting, with the the first keyframe on the current frame, and so on */ diff --git a/source/blender/src/editaction_gpencil.c b/source/blender/src/editaction_gpencil.c index 5ea12faffd4..5d1e73a7b28 100644 --- a/source/blender/src/editaction_gpencil.c +++ b/source/blender/src/editaction_gpencil.c @@ -83,7 +83,7 @@ #include "blendef.h" #include "butspace.h" -#include "PIL_time.h" /* sleep */ +#include "PIL_time.h" #include "mydevice.h" /* ***************************************** */ @@ -220,17 +220,22 @@ void set_gplayer_frame_selection (bGPDlayer *gpl, short mode) select_gpencil_frames (gpl, mode); } +/* select the frame in this layer that occurs on this frame (there should only be one at most) */ void select_gpencil_frame (bGPDlayer *gpl, int selx, short select_mode) { bGPDframe *gpf; /* search through frames for a match */ for (gpf= gpl->frames.first; gpf; gpf= gpf->next) { - if (gpf->framenum == selx) + /* there should only be one frame with this frame-number */ + if (gpf->framenum == selx) { gpframe_select(gpf, select_mode); + break; + } } } +/* select the frames in this layer that occur within the bounds specified */ void borderselect_gplayer_frames (bGPDlayer *gpl, float min, float max, short select_mode) { bGPDframe *gpf; @@ -290,6 +295,7 @@ void deselect_gpencil_layers (void *data, short mode) /* ***************************************** */ /* Frame Editing Tools */ +/* Delete selected grease-pencil layers */ void delete_gpencil_layers (void) { ListBase act_data = {NULL, NULL}; @@ -396,7 +402,7 @@ void free_gpcopybuf () } /* This function adds data to the copy/paste buffer, freeing existing data first - * Only the selected action channels gets their selected keyframes copied. + * Only the selected GP-layers get their selected keyframes copied. */ void copy_gpdata () { From 63f6932fa5652fe850d0692e0a8fcafb48f20fb9 Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Mon, 20 Oct 2008 06:39:08 +0000 Subject: [PATCH 02/38] Reduced number of MSVC compiler warnings (mostly just casting issues). --- source/blender/blenkernel/intern/constraint.c | 22 +- source/blender/blenkernel/intern/ipo.c | 196 +++++++++-------- source/blender/src/drawaction.c | 20 +- source/blender/src/drawgpencil.c | 40 ++-- source/blender/src/editaction.c | 24 +-- source/blender/src/editaction_gpencil.c | 32 +-- source/blender/src/editipo.c | 14 +- source/blender/src/editnla.c | 65 +++--- source/blender/src/gpencil.c | 64 +++--- source/blender/src/header_time.c | 10 +- source/blender/src/keyframing.c | 2 +- source/blender/src/outliner.c | 124 +++++------ source/blender/src/poselib.c | 4 +- source/blender/src/space.c | 198 +++++++++--------- source/blender/src/transform_conversions.c | 46 ++-- source/blender/src/view.c | 80 +++---- 16 files changed, 476 insertions(+), 465 deletions(-) diff --git a/source/blender/blenkernel/intern/constraint.c b/source/blender/blenkernel/intern/constraint.c index 99cf58e8e5a..4914732b801 100644 --- a/source/blender/blenkernel/intern/constraint.c +++ b/source/blender/blenkernel/intern/constraint.c @@ -842,7 +842,7 @@ static void default_get_tarmat (bConstraint *con, bConstraintOb *cob, bConstrain if (nocopy == 0) { \ datatar= ct->tar; \ strcpy(datasubtarget, ct->subtarget); \ - con->tarspace= ct->space; \ + con->tarspace= (char)ct->space; \ } \ \ BLI_freelinkN(list, ct); \ @@ -862,7 +862,7 @@ static void default_get_tarmat (bConstraint *con, bConstraintOb *cob, bConstrain bConstraintTarget *ctn = ct->next; \ if (nocopy == 0) { \ datatar= ct->tar; \ - con->tarspace= ct->space; \ + con->tarspace= (char)ct->space; \ } \ \ BLI_freelinkN(list, ct); \ @@ -1434,9 +1434,9 @@ static void rotlimit_evaluate (bConstraint *con, bConstraintOb *cob, ListBase *t Mat4ToEul(cob->matrix, eul); /* eulers: radians to degrees! */ - eul[0] = (eul[0] / M_PI * 180); - eul[1] = (eul[1] / M_PI * 180); - eul[2] = (eul[2] / M_PI * 180); + eul[0] = (float)(eul[0] / M_PI * 180); + eul[1] = (float)(eul[1] / M_PI * 180); + eul[2] = (float)(eul[2] / M_PI * 180); /* limiting of euler values... */ if (data->flag & LIMIT_XROT) { @@ -1462,9 +1462,9 @@ static void rotlimit_evaluate (bConstraint *con, bConstraintOb *cob, ListBase *t } /* eulers: degrees to radians ! */ - eul[0] = (eul[0] / 180 * M_PI); - eul[1] = (eul[1] / 180 * M_PI); - eul[2] = (eul[2] / 180 * M_PI); + eul[0] = (float)(eul[0] / 180 * M_PI); + eul[1] = (float)(eul[1] / 180 * M_PI); + eul[2] = (float)(eul[2] / 180 * M_PI); LocEulSizeToMat4(cob->matrix, loc, eul, size); } @@ -2508,7 +2508,7 @@ static void distlimit_evaluate (bConstraint *con, bConstraintOb *cob, ListBase * else if (data->flag & LIMITDIST_USESOFT) { // FIXME: there's a problem with "jumping" when this kicks in if (dist >= (data->dist - data->soft)) { - sfac = data->soft*(1.0 - exp(-(dist - data->dist)/data->soft)) + data->dist; + sfac = (float)( data->soft*(1.0 - exp(-(dist - data->dist)/data->soft)) + data->dist ); sfac /= dist; clamp_surf= 1; @@ -3139,7 +3139,7 @@ static void transform_evaluate (bConstraint *con, bConstraintOb *cob, ListBase * case 1: /* rotation (convert to degrees first) */ Mat4ToEul(ct->matrix, dvec); for (i=0; i<3; i++) - dvec[i] = dvec[i] / M_PI * 180; + dvec[i] = (float)(dvec[i] / M_PI * 180); break; default: /* location */ VecCopyf(dvec, ct->matrix[3]); @@ -3189,7 +3189,7 @@ static void transform_evaluate (bConstraint *con, bConstraintOb *cob, ListBase * eul[i]= tmin + (sval[data->map[i]] * (tmax - tmin)); /* now convert final value back to radians */ - eul[i] = eul[i] / 180 * M_PI; + eul[i] = (float)(eul[i] / 180 * M_PI); } break; default: /* location */ diff --git a/source/blender/blenkernel/intern/ipo.c b/source/blender/blenkernel/intern/ipo.c index a115ac39e1a..9f0ea0f1388 100644 --- a/source/blender/blenkernel/intern/ipo.c +++ b/source/blender/blenkernel/intern/ipo.c @@ -234,46 +234,46 @@ void ipo_default_v2d_cur (int blocktype, rctf *cur) { switch (blocktype) { case ID_CA: - cur->xmin= G.scene->r.sfra; - cur->xmax= G.scene->r.efra; - cur->ymin= 0.0; - cur->ymax= 100.0; + cur->xmin= (float)G.scene->r.sfra; + cur->xmax= (float)G.scene->r.efra; + cur->ymin= 0.0f; + cur->ymax= 100.0f; break; case ID_MA: case ID_WO: case ID_LA: case ID_CU: case ID_CO: - cur->xmin= (float)G.scene->r.sfra-0.1; - cur->xmax= G.scene->r.efra; - cur->ymin= (float)-0.1; - cur->ymax= (float)+1.1; + cur->xmin= (float)(G.scene->r.sfra - 0.1f); + cur->xmax= (float)G.scene->r.efra; + cur->ymin= (float)-0.1f; + cur->ymax= (float)+1.1f; break; case ID_TE: - cur->xmin= (float)G.scene->r.sfra-0.1; - cur->xmax= G.scene->r.efra; - cur->ymin= (float)-0.1; - cur->ymax= (float)+1.1; + cur->xmin= (float)(G.scene->r.sfra - 0.1f); + cur->xmax= (float)G.scene->r.efra; + cur->ymin= (float)-0.1f; + cur->ymax= (float)+1.1f; break; case ID_SEQ: - cur->xmin= -5.0; - cur->xmax= 105.0; - cur->ymin= (float)-0.1; - cur->ymax= (float)+1.1; + cur->xmin= -5.0f; + cur->xmax= 105.0f; + cur->ymin= (float)-0.1f; + cur->ymax= (float)+1.1f; break; case ID_KE: - cur->xmin= (float)G.scene->r.sfra-0.1; - cur->xmax= G.scene->r.efra; - cur->ymin= (float)-0.1; - cur->ymax= (float)+2.1; + cur->xmin= (float)(G.scene->r.sfra - 0.1f); + cur->xmax= (float)G.scene->r.efra; + cur->ymin= (float)-0.1f; + cur->ymax= (float)+2.1f; break; default: /* ID_OB and everything else */ - cur->xmin= G.scene->r.sfra; - cur->xmax= G.scene->r.efra; - cur->ymin= -5.0; - cur->ymax= +5.0; + cur->xmin= (float)G.scene->r.sfra; + cur->xmax= (float)G.scene->r.efra; + cur->ymin= -5.0f; + cur->ymax= +5.0f; break; } } @@ -1053,11 +1053,11 @@ static float eval_driver (IpoDriver *driver, float ipotime) case OB_LOC_Z: return ob->loc[2]; case OB_ROT_X: /* hack: euler rotations are divided by 10 deg to fit on same axes as other channels */ - return ob->rot[0]/(M_PI_2/9.0); + return (float)( ob->rot[0]/(M_PI_2/9.0) ); case OB_ROT_Y: /* hack: euler rotations are divided by 10 deg to fit on same axes as other channels */ - return ob->rot[1]/(M_PI_2/9.0); + return (float)( ob->rot[1]/(M_PI_2/9.0) ); case OB_ROT_Z: /* hack: euler rotations are divided by 10 deg to fit on same axes as other channels */ - return ob->rot[2]/(M_PI_2/9.0); + return (float)( ob->rot[2]/(M_PI_2/9.0) ); case OB_SIZE_X: return ob->size[0]; case OB_SIZE_Y: @@ -1090,7 +1090,7 @@ static float eval_driver (IpoDriver *driver, float ipotime) angle = 2.0f * (saacos(quat[0])); angle= ABS(angle); - return (angle > M_PI) ? ((2.0f * M_PI) - angle) : (angle); + return (angle > M_PI) ? (float)((2.0f * M_PI) - angle) : (float)(angle); } } @@ -1112,11 +1112,11 @@ static float eval_driver (IpoDriver *driver, float ipotime) case OB_LOC_Z: return loc[2]; case OB_ROT_X: /* hack: euler rotations are divided by 10 deg to fit on same axes as other channels */ - return eul[0]/(M_PI_2/9.0); + return (float)( eul[0]/(M_PI_2/9.0) ); case OB_ROT_Y: /* hack: euler rotations are divided by 10 deg to fit on same axes as other channels */ - return eul[1]/(M_PI_2/9.0); + return (float)( eul[1]/(M_PI_2/9.0) ); case OB_ROT_Z: /* hack: euler rotations are divided by 10 deg to fit on same axes as other channels */ - return eul[2]/(M_PI_2/9.0); + return (float)( eul[2]/(M_PI_2/9.0) ); case OB_SIZE_X: return size[0]; case OB_SIZE_Y: @@ -2487,79 +2487,92 @@ void set_icu_vars (IpoCurve *icu) { switch (icu->adrcode & (MA_MAP1-1)) { case TE_NSIZE: - icu->ymin= 0.0001; - icu->ymax= 2.0; break; + icu->ymin= 0.0001f; + icu->ymax= 2.0f; + break; case TE_NDEPTH: icu->vartype= IPO_SHORT; icu->ipo= IPO_CONST; - icu->ymax= 6.0; break; + icu->ymax= 6.0f; + break; case TE_NTYPE: icu->vartype= IPO_SHORT; icu->ipo= IPO_CONST; - icu->ymax= 1.0; break; + icu->ymax= 1.0f; + break; case TE_TURB: - icu->ymax= 200.0; break; + icu->ymax= 200.0f; + break; case TE_VNW1: case TE_VNW2: case TE_VNW3: case TE_VNW4: - icu->ymax= 2.0; - icu->ymin= -2.0; break; + icu->ymax= 2.0f; + icu->ymin= -2.0f; + break; case TE_VNMEXP: - icu->ymax= 10.0; - icu->ymin= 0.01; break; + icu->ymax= 10.0f; + icu->ymin= 0.01f; + break; case TE_VN_DISTM: icu->vartype= IPO_SHORT; icu->ipo= IPO_CONST; - icu->ymax= 6.0; break; + icu->ymax= 6.0f; + break; case TE_VN_COLT: icu->vartype= IPO_SHORT; icu->ipo= IPO_CONST; - icu->ymax= 3.0; break; + icu->ymax= 3.0f; + break; case TE_ISCA: - icu->ymax= 10.0; - icu->ymin= 0.01; break; + icu->ymax= 10.0f; + icu->ymin= 0.01f; + break; case TE_DISTA: - icu->ymax= 10.0; break; + icu->ymax= 10.0f; + break; case TE_MG_TYP: icu->vartype= IPO_SHORT; icu->ipo= IPO_CONST; - icu->ymax= 6.0; break; + icu->ymax= 6.0f; + break; case TE_MGH: - icu->ymin= 0.0001; - icu->ymax= 2.0; break; + icu->ymin= 0.0001f; + icu->ymax= 2.0f; + break; case TE_MG_LAC: case TE_MG_OFF: case TE_MG_GAIN: - icu->ymax= 6.0; break; + icu->ymax= 6.0f; break; case TE_MG_OCT: - icu->ymax= 8.0; break; + icu->ymax= 8.0f; break; case TE_N_BAS1: case TE_N_BAS2: icu->vartype= IPO_SHORT; icu->ipo= IPO_CONST; - icu->ymax= 8.0; break; + icu->ymax= 8.0f; + break; case TE_COL_R: - icu->ymax= 0.0; break; + icu->ymax= 0.0f; break; case TE_COL_G: - icu->ymax= 2.0; break; + icu->ymax= 2.0f; break; case TE_COL_B: - icu->ymax= 2.0; break; + icu->ymax= 2.0f; break; case TE_BRIGHT: - icu->ymax= 2.0; break; + icu->ymax= 2.0f; break; case TE_CONTRA: - icu->ymax= 5.0; break; + icu->ymax= 5.0f; break; } } break; case ID_SEQ: /* sequence channels ----------------------------- */ { - icu->ymax= 1.0; + icu->ymax= 1.0f; } break; case ID_CU: /* curve channels ----------------------------- */ { - icu->ymax= 1.0; + icu->ymax= 1.0f; } break; case ID_WO: /* world channels ----------------------------- */ @@ -2567,7 +2580,8 @@ void set_icu_vars (IpoCurve *icu) if (icu->adrcode < MA_MAP1) { switch (icu->adrcode) { case WO_EXPOS: - icu->ymax= 5.0; break; + icu->ymax= 5.0f; break; + case WO_MISTDI: case WO_MISTSTA: case WO_MISTHI: @@ -2576,7 +2590,7 @@ void set_icu_vars (IpoCurve *icu) break; default: - icu->ymax= 1.0; + icu->ymax= 1.0f; break; } } @@ -2588,8 +2602,8 @@ void set_icu_vars (IpoCurve *icu) case MAP_SIZE_X: case MAP_SIZE_Y: case MAP_SIZE_Z: - icu->ymax= 100.0; - icu->ymin= -100.0; + icu->ymax= 100.0f; + icu->ymin= -100.0f; break; case MAP_R: case MAP_G: @@ -2599,7 +2613,7 @@ void set_icu_vars (IpoCurve *icu) case MAP_NORF: case MAP_VARF: case MAP_DISP: - icu->ymax= 1.0; + icu->ymax= 1.0f; } } } @@ -2618,13 +2632,13 @@ void set_icu_vars (IpoCurve *icu) case LA_SPOTBL: case LA_QUAD1: case LA_QUAD2: - icu->ymax= 1.0; break; + icu->ymax= 1.0f; break; case LA_SPOTSI: - icu->ymax= 180.0; break; + icu->ymax= 180.0f; break; case LA_HALOINT: - icu->ymax= 5.0; break; + icu->ymax= 5.0f; break; } } else { @@ -2635,8 +2649,8 @@ void set_icu_vars (IpoCurve *icu) case MAP_SIZE_X: case MAP_SIZE_Y: case MAP_SIZE_Z: - icu->ymax= 100.0; - icu->ymin= -100.0; + icu->ymax= 100.0f; + icu->ymin= -100.0f; break; case MAP_R: case MAP_G: @@ -2646,7 +2660,7 @@ void set_icu_vars (IpoCurve *icu) case MAP_NORF: case MAP_VARF: case MAP_DISP: - icu->ymax= 1.0; + icu->ymax= 1.0f; } } } @@ -2655,8 +2669,8 @@ void set_icu_vars (IpoCurve *icu) { switch (icu->adrcode) { case CAM_LENS: - icu->ymin= 1.0; - icu->ymax= 1000.0; + icu->ymin= 1.0f; + icu->ymax= 1000.0f; break; case CAM_STA: icu->ymin= 0.001f; @@ -2666,12 +2680,12 @@ void set_icu_vars (IpoCurve *icu) break; case CAM_YF_APERT: - icu->ymin = 0.0; - icu->ymax = 2.0; + icu->ymin = 0.0f; + icu->ymax = 2.0f; break; case CAM_YF_FDIST: - icu->ymin = 0.0; - icu->ymax = 5000.0; + icu->ymin = 0.0f; + icu->ymax = 5000.0f; break; case CAM_SHIFT_X: @@ -2686,20 +2700,20 @@ void set_icu_vars (IpoCurve *icu) { switch (icu->adrcode) { case SND_VOLUME: - icu->ymin= 0.0; - icu->ymax= 1.0; + icu->ymin= 0.0f; + icu->ymax= 1.0f; break; case SND_PITCH: - icu->ymin= -12.0; - icu->ymin= 12.0; + icu->ymin= -12.0f; + icu->ymin= 12.0f; break; case SND_PANNING: - icu->ymin= 0.0; - icu->ymax= 1.0; + icu->ymin= 0.0f; + icu->ymax= 1.0f; break; case SND_ATTEN: - icu->ymin= 0.0; - icu->ymin= 1.0; + icu->ymin= 0.0f; + icu->ymin= 1.0f; break; } } @@ -2713,28 +2727,28 @@ void set_icu_vars (IpoCurve *icu) case PART_EMIT_VEL: case PART_EMIT_AVE: case PART_EMIT_SIZE: - icu->ymin= 0.0; + icu->ymin= 0.0f; break; case PART_CLUMP: - icu->ymin= -1.0; - icu->ymax= 1.0; + icu->ymin= -1.0f; + icu->ymax= 1.0f; break; case PART_DRAG: case PART_DAMP: case PART_LENGTH: - icu->ymin= 0.0; - icu->ymax= 1.0; + icu->ymin= 0.0f; + icu->ymax= 1.0f; break; case PART_KINK_SHAPE: - icu->ymin= -0.999; - icu->ymax= 0.999; + icu->ymin= -0.999f; + icu->ymax= 0.999f; break; } } break; case ID_CO: /* constraint channels ----------------------------- */ { - icu->ymin= 0.0; + icu->ymin= 0.0f; icu->ymax= 1.0f; } break; diff --git a/source/blender/src/drawaction.c b/source/blender/src/drawaction.c index c3a8b7c3690..47766cc6377 100644 --- a/source/blender/src/drawaction.c +++ b/source/blender/src/drawaction.c @@ -122,7 +122,7 @@ static void meshactionbuts(SpaceAction *saction, Object *ob, Key *key) * correctly *grumble* */ mywinset(curarea->win); - myortho2(-0.375, curarea->winx-0.375, G.v2d->cur.ymin, G.v2d->cur.ymax); + myortho2(-0.375f, curarea->winx-0.375, G.v2d->cur.ymin, G.v2d->cur.ymax); sprintf(str, "actionbuttonswin %d", curarea->win); block= uiNewBlock (&curarea->uiblocks, str, UI_EMBOSS, UI_HELV, curarea->win); @@ -161,12 +161,12 @@ static void meshactionbuts(SpaceAction *saction, Object *ob, Key *key) "Hide action window sliders"); /* no hilite, the winmatrix is not correct later on... */ uiButSetFlag(but, UI_NO_HILITE); - + ACTWIDTH = NAMEWIDTH + SLIDERWIDTH; - + /* sliders are open so draw them */ BIF_ThemeColor(TH_FACE); - + glRects(NAMEWIDTH, 0, NAMEWIDTH+SLIDERWIDTH, curarea->winy); uiBlockSetEmboss(block, UI_EMBOSS); for (i=1; i < key->totkey; i++) { @@ -176,7 +176,7 @@ static void meshactionbuts(SpaceAction *saction, Object *ob, Key *key) y-=CHANNELHEIGHT+CHANNELSKIP; /* see sliderval array in editkey.c */ - if(i >= 255) break; + if (i >= 255) break; } } uiDrawBlock(block); @@ -1335,7 +1335,7 @@ void drawactionspace(ScrArea *sa, void *spacedata) /* Draw scroll */ mywinset(curarea->win); // reset scissor too if (curarea->winx>SCROLLB+10 && curarea->winy>SCROLLH+10) { - myortho2(-0.375, curarea->winx-0.375, -0.375, curarea->winy-0.375); + myortho2(-0.375f, curarea->winx-0.375, -0.375f, curarea->winy-0.375); if (G.v2d->scroll) drawscroll(0); } @@ -1361,7 +1361,7 @@ void drawactionspace(ScrArea *sa, void *spacedata) } mywinset(curarea->win); // reset scissor too - myortho2(-0.375, curarea->winx-0.375, -0.375, curarea->winy-0.375); + myortho2(-0.375f, curarea->winx-0.375, -0.375f, curarea->winy-0.375); draw_area_emboss(sa); /* it is important to end a view in a transform compatible with buttons */ @@ -1598,8 +1598,8 @@ static void draw_keylist(gla2DDrawInfo *di, ListBase *keys, ListBase *blocks, fl gla2DDrawTranslatePt(di, ak->cfra, ypos, &sc_x, &sc_y); /* draw using icons - old way which is slower but more proven */ - if (ak->sel & SELECT) BIF_icon_draw_aspect(sc_x-7, sc_y-6, ICON_SPACE2, 1.0f); - else BIF_icon_draw_aspect(sc_x-7, sc_y-6, ICON_SPACE3, 1.0f); + if (ak->sel & SELECT) BIF_icon_draw_aspect((float)sc_x-7, (float)sc_y-6, ICON_SPACE2, 1.0f); + else BIF_icon_draw_aspect((float)sc_x-7, (float)sc_y-6, ICON_SPACE3, 1.0f); /* draw using OpenGL - slightly uglier but faster */ // NOTE: disabled for now, as some intel cards seem to have problems with this @@ -1868,7 +1868,7 @@ void gpl_to_keylist(bGPDlayer *gpl, ListBase *keys, ListBase *blocks, ActKeysInc ak= MEM_callocN(sizeof(ActKeyColumn), "ActKeyColumn"); BLI_addtail(keys, ak); - ak->cfra= gpf->framenum; + ak->cfra= (float)gpf->framenum; ak->modified = 1; ak->handle_type= 0; diff --git a/source/blender/src/drawgpencil.c b/source/blender/src/drawgpencil.c index 9c12871aa54..28f7c7476aa 100644 --- a/source/blender/src/drawgpencil.c +++ b/source/blender/src/drawgpencil.c @@ -187,7 +187,7 @@ static void gp_drawui_layer (uiBlock *block, bGPdata *gpd, bGPDlayer *gpl, short /* rounded header */ if (active) uiBlockSetCol(block, TH_BUT_ACTION); rb_col= (active)?-20:20; - uiDefBut(block, ROUNDBOX, B_REDR, "", *xco-8, *yco-2, width, 24, NULL, 5.0, 0.0, 15 , rb_col-20, ""); + uiDefBut(block, ROUNDBOX, B_REDR, "", *xco-8, *yco-2, width, 24, NULL, 5.0, 0.0, 15, rb_col-20, ""); if (active) uiBlockSetCol(block, TH_AUTO); /* lock toggle */ @@ -251,7 +251,7 @@ static void gp_drawui_layer (uiBlock *block, bGPdata *gpd, bGPDlayer *gpl, short /* color */ uiBlockBeginAlign(block); uiDefButF(block, COL, B_REDR, "", *xco, *yco-26, 150, 19, gpl->color, 0, 0, 0, 0, "Color to use for all strokes on this Grease Pencil Layer"); - uiDefButF(block, NUMSLI, B_REDR, "Opacity: ", *xco,*yco-45,150,19, &gpl->color[3], 0.3, 1.0, 0, 0, "Visibility of stroke (0.3 to 1.0)"); + uiDefButF(block, NUMSLI, B_REDR, "Opacity: ", *xco,*yco-45,150,19, &gpl->color[3], 0.3f, 1.0f, 0, 0, "Visibility of stroke (0.3 to 1.0)"); uiBlockEndAlign(block); /* stroke thickness */ @@ -581,10 +581,10 @@ static void gp_draw_stroke (bGPDspoint *points, int totpoints, short thickness, /* draw start cap first * - make points slightly closer to center (about halfway across) */ - mt[0]= m2[0] * pthick * 0.5; - mt[1]= m2[1] * pthick * 0.5; - sc[0]= s0[0] - (m1[0] * pthick * 0.75); - sc[1]= s0[1] - (m1[1] * pthick * 0.75); + mt[0]= m2[0] * pthick * 0.5f; + mt[1]= m2[1] * pthick * 0.5f; + sc[0]= s0[0] - (m1[0] * pthick * 0.75f); + sc[1]= s0[1] - (m1[1] * pthick * 0.75f); t0[0]= sc[0] - mt[0]; t0[1]= sc[1] - mt[1]; @@ -670,10 +670,10 @@ static void gp_draw_stroke (bGPDspoint *points, int totpoints, short thickness, /* draw end cap as last step * - make points slightly closer to center (about halfway across) */ - mt[0]= m2[0] * pthick * 0.5; - mt[1]= m2[1] * pthick * 0.5; - sc[0]= s1[0] + (m1[0] * pthick * 0.75); - sc[1]= s1[1] + (m1[1] * pthick * 0.75); + mt[0]= m2[0] * pthick * 0.5f; + mt[1]= m2[1] * pthick * 0.5f; + sc[0]= s1[0] + (m1[0] * pthick * 0.75f); + sc[1]= s1[1] + (m1[1] * pthick * 0.75f); t0[0]= sc[0] - mt[0]; t0[1]= sc[1] - mt[1]; @@ -702,14 +702,14 @@ static void gp_draw_stroke (bGPDspoint *points, int totpoints, short thickness, glVertex2f(pt->x, pt->y); } else if (sflag & GP_STROKE_2DIMAGE) { - const float x= (pt->x * winx) + offsx; - const float y= (pt->y * winy) + offsy; + const float x= (float)((pt->x * winx) + offsx); + const float y= (float)((pt->y * winy) + offsy); glVertex2f(x, y); } else { - const float x= (pt->x / 1000 * winx); - const float y= (pt->y / 1000 * winy); + const float x= (float)(pt->x / 1000 * winx); + const float y= (float)(pt->y / 1000 * winy); glVertex2f(x, y); } @@ -952,7 +952,7 @@ void draw_gpencil_2dimage (ScrArea *sa, ImBuf *ibuf) float zoom, zoomx, zoomy; /* calculate accessory values */ - zoom= SEQ_ZOOM_FAC(sseq->zoom); + zoom= (float)SEQ_ZOOM_FAC(sseq->zoom); if (sseq->mainb == SEQ_DRAW_IMG_IMBUF) { zoomx = zoom * ((float)G.scene->r.xasp / (float)G.scene->r.yasp); zoomy = zoom; @@ -961,10 +961,10 @@ void draw_gpencil_2dimage (ScrArea *sa, ImBuf *ibuf) zoomx = zoomy = zoom; /* calculate transforms (Note: we use ibuf here, as we have it) */ - sizex= zoomx * ibuf->x; - sizey= zoomy * ibuf->y; - offsx= (sa->winx-sizex)/2 + sseq->xof; - offsy= (sa->winy-sizey)/2 + sseq->yof; + sizex= (int)(zoomx * ibuf->x); + sizey= (int)(zoomy * ibuf->y); + offsx= (int)( (sa->winx-sizex)/2 + sseq->xof ); + offsy= (int)( (sa->winy-sizey)/2 + sseq->yof ); dflag |= GP_DRAWDATA_ONLYI2D; } @@ -1035,7 +1035,7 @@ void draw_gpencil_oglrender (View3D *v3d, int winx, int winy) /* pass 2: draw 2d-strokes ------------ > */ /* adjust view matrices */ - myortho2(-0.375, (float)(winx)-0.375, -0.375, (float)(winy)-0.375); + myortho2(-0.375f, (float)(winx)-0.375f, -0.375f, (float)(winy)-0.375f); glLoadIdentity(); /* draw it! */ diff --git a/source/blender/src/editaction.c b/source/blender/src/editaction.c index f976244bf91..e230c97f010 100644 --- a/source/blender/src/editaction.c +++ b/source/blender/src/editaction.c @@ -935,8 +935,8 @@ void action_previewrange_set (bAction *act) } /* set preview range */ - G.scene->r.psfra= start; - G.scene->r.pefra= end; + G.scene->r.psfra= (int)start; + G.scene->r.pefra= (int)end; BIF_undo_push("Set anim-preview range"); allqueue(REDRAWTIME, 0); @@ -1830,7 +1830,7 @@ void clean_action (void) /* don't proceed any further if nothing to work on or user refuses */ data= get_action_context(&datatype); ok= fbutton(&G.scene->toolsettings->clean_thresh, - 0.0000001f, 1.0, 0.001, 0.1, + 0.0000001f, 1.0f, 0.001f, 0.1f, "Clean Threshold"); if (!ok) return; if (datatype == ACTCONT_GPENCIL) return; @@ -3204,8 +3204,8 @@ void selectall_action_keys (short mval[], short mode, short select_mode) rectf.xmax= rectf.xmin; rectf.ymax= rectf.ymin; - rectf.xmin = rectf.xmin - 0.5; - rectf.xmax = rectf.xmax + 0.5; + rectf.xmin = rectf.xmin - 0.5f; + rectf.xmax = rectf.xmax + 0.5f; /* filter data */ if (datatype == ACTCONT_GPENCIL) @@ -3388,11 +3388,11 @@ void nextprev_action_keyframe (short dir) short changed= 0; if ((dir > 0) && (nearest->next)) { - CFRA= nearest->next->cfra; + CFRA= (int)nearest->next->cfra; changed= 1; } else if ((dir < 0) && (nearest->prev)) { - CFRA= nearest->prev->cfra; + CFRA= (int)nearest->prev->cfra; changed= 1; } @@ -3482,9 +3482,9 @@ void column_select_action_keys (int mode) /* apply scaled action correction if needed */ if (NLA_ACTION_SCALED && datatype==ACTCONT_ACTION) - ce->cfra= get_action_frame(OBACT, CFRA); + ce->cfra= (float)get_action_frame(OBACT, (float)CFRA); else - ce->cfra= CFRA; + ce->cfra= (float)CFRA; } /* loop through all of the keys and select additional keyframes @@ -3961,7 +3961,7 @@ static void mouse_action (int selectmode) } } else if (gpl) - select_gpencil_frame(gpl, selx, selectmode); + select_gpencil_frame(gpl, (int)selx, selectmode); std_rmouse_transform(transform_action_keys); @@ -5211,7 +5211,7 @@ void winqreadactionspace(ScrArea *sa, void *spacedata, BWinEvent *evt) openclose_level_action(1); } else { - view2d_zoom(G.v2d, 0.1154, sa->winx, sa->winy); + view2d_zoom(G.v2d, 0.1154f, sa->winx, sa->winy); test_view2d(G.v2d, sa->winx, sa->winy); view2d_do_locks(curarea, V2D_LOCK_COPY); @@ -5224,7 +5224,7 @@ void winqreadactionspace(ScrArea *sa, void *spacedata, BWinEvent *evt) openclose_level_action(-1); } else { - view2d_zoom(G.v2d, -0.15, sa->winx, sa->winy); + view2d_zoom(G.v2d, -0.15f, sa->winx, sa->winy); test_view2d(G.v2d, sa->winx, sa->winy); view2d_do_locks(curarea, V2D_LOCK_COPY); diff --git a/source/blender/src/editaction_gpencil.c b/source/blender/src/editaction_gpencil.c index 5d1e73a7b28..fb070624e8f 100644 --- a/source/blender/src/editaction_gpencil.c +++ b/source/blender/src/editaction_gpencil.c @@ -133,7 +133,7 @@ void gplayer_make_cfra_list (bGPDlayer *gpl, ListBase *elems, short onlysel) if ((onlysel == 0) || (gpf->flag & GP_FRAME_SELECT)) { ce= MEM_callocN(sizeof(CfraElem), "CfraElem"); - ce->cfra= gpf->framenum; + ce->cfra= (float)gpf->framenum; ce->sel= (gpf->flag & GP_FRAME_SELECT) ? 1 : 0; BLI_addtail(elems, ce); @@ -390,7 +390,7 @@ void duplicate_gplayer_frames (bGPDlayer *gpl) /* globals for copy/paste data (like for other copy/paste buffers) */ ListBase gpcopybuf = {NULL, NULL}; -static float gpcopy_firstframe= 999999999.0f; +static int gpcopy_firstframe= 999999999; /* This function frees any MEM_calloc'ed copy/paste buffer data */ void free_gpcopybuf () @@ -398,7 +398,7 @@ void free_gpcopybuf () free_gpencil_layers(&gpcopybuf); gpcopybuf.first= gpcopybuf.last= NULL; - gpcopy_firstframe= 999999999.0f; + gpcopy_firstframe= 999999999; } /* This function adds data to the copy/paste buffer, freeing existing data first @@ -469,8 +469,8 @@ void paste_gpdata () void *data; short datatype; + const int offset = (CFRA - gpcopy_firstframe); short no_name= 0; - float offset = CFRA - gpcopy_firstframe; /* check if buffer is empty */ if (ELEM(NULL, gpcopybuf.first, gpcopybuf.last)) { @@ -600,7 +600,7 @@ static short snap_gpf_nearest (bGPDframe *gpf) static short snap_gpf_nearestsec (bGPDframe *gpf) { - float secf = FPS; + float secf = (float)FPS; if (gpf->flag & GP_FRAME_SELECT) gpf->framenum= (int)(floor(gpf->framenum/secf + 0.5f) * secf); return 0; @@ -616,7 +616,7 @@ static short snap_gpf_cframe (bGPDframe *gpf) static short snap_gpf_nearmarker (bGPDframe *gpf) { if (gpf->flag & GP_FRAME_SELECT) - gpf->framenum= (int)find_nearest_marker_time(gpf->framenum); + gpf->framenum= (int)find_nearest_marker_time((float)gpf->framenum); return 0; } @@ -648,11 +648,11 @@ void snap_gplayer_frames (bGPDlayer *gpl, short mode) static short mirror_gpf_cframe (bGPDframe *gpf) { - float diff; + int diff; if (gpf->flag & GP_FRAME_SELECT) { - diff= ((float)CFRA - gpf->framenum); - gpf->framenum= ((float)CFRA + diff); + diff= CFRA - gpf->framenum; + gpf->framenum= CFRA; } return 0; @@ -660,11 +660,11 @@ static short mirror_gpf_cframe (bGPDframe *gpf) static short mirror_gpf_yaxis (bGPDframe *gpf) { - float diff; + int diff; if (gpf->flag & GP_FRAME_SELECT) { - diff= (0.0f - gpf->framenum); - gpf->framenum= (0.0f + diff); + diff= -gpf->framenum; + gpf->framenum= diff; } return 0; @@ -672,11 +672,11 @@ static short mirror_gpf_yaxis (bGPDframe *gpf) static short mirror_gpf_xaxis (bGPDframe *gpf) { - float diff; + int diff; if (gpf->flag & GP_FRAME_SELECT) { - diff= (0.0f - gpf->framenum); - gpf->framenum= (0.0f + diff); + diff= -gpf->framenum; + gpf->framenum= diff; } return 0; @@ -686,7 +686,7 @@ static short mirror_gpf_marker (bGPDframe *gpf) { static TimeMarker *marker; static short initialised = 0; - float diff; + int diff; /* In order for this mirror function to work without * any extra arguments being added, we use the case diff --git a/source/blender/src/editipo.c b/source/blender/src/editipo.c index 617683a6ab4..6293e669aa1 100644 --- a/source/blender/src/editipo.c +++ b/source/blender/src/editipo.c @@ -285,14 +285,14 @@ void editipo_changed(SpaceIpo *si, int doredraw) /* is there no curve? */ if(first) { - v2d->tot.xmin= 0.0; - v2d->tot.xmax= EFRA; + v2d->tot.xmin= (float)0.0; + v2d->tot.xmax= (float)EFRA; v2d->tot.ymin= (float)-0.1; v2d->tot.ymax= (float)1.1; if(si->blocktype==ID_SEQ) { - v2d->tot.xmin= -5.0; - v2d->tot.xmax= 105.0; + v2d->tot.xmin= (float)-5.0; + v2d->tot.xmax= (float)105.0; v2d->tot.ymin= (float)-0.1; v2d->tot.ymax= (float)1.1; } @@ -2408,7 +2408,7 @@ void clean_ipo(void) int b; ok= fbutton(&G.scene->toolsettings->clean_thresh, - 0.0000001f, 1.0, 0.001, 0.1, + 0.0000001f, 1.0f, 0.001f, 0.1f, "Threshold"); if (!ok) return; @@ -3767,7 +3767,7 @@ void movekey_obipo(int dir) /* only call external from view3d queue */ ListBase elems; IpoKey *ik; int a; - float toframe= CFRA; + float toframe= (float)CFRA; if (!G.vd) return; @@ -3793,7 +3793,7 @@ void movekey_obipo(int dir) /* only call external from view3d queue */ } if (ik) toframe= ik->val; } - + free_ipokey(&elems); } } diff --git a/source/blender/src/editnla.c b/source/blender/src/editnla.c index 2c17b20735b..179ea41d5ad 100644 --- a/source/blender/src/editnla.c +++ b/source/blender/src/editnla.c @@ -442,8 +442,8 @@ void snap_action_strips(int snap_mode) if (strip->flag & ACTSTRIP_SELECT) { if (snap_mode==1) { /* nearest frame */ - strip->start= floor(strip->start+0.5); - strip->end= floor(strip->end+0.5); + strip->start= (float)floor(strip->start+0.5); + strip->end= (float)floor(strip->end+0.5); } else if (snap_mode==2) { /* current frame */ @@ -461,7 +461,7 @@ void snap_action_strips(int snap_mode) } else if (snap_mode==3) { /* nearest second */ - float secf = FPS; + float secf = (float)FPS; strip->start= (float)(floor(strip->start/secf + 0.5f) * secf); strip->end= (float)(floor(strip->end/secf + 0.5f) * secf); } @@ -602,8 +602,8 @@ static void add_nla_block(short event) strip->act = act; id_us_plus(&act->id); calc_action_range(strip->act, &strip->actstart, &strip->actend, 1); - strip->start = G.scene->r.cfra; /* could be mval[0] another time... */ - strip->end = strip->start + (strip->actend-strip->actstart); + strip->start = (float)G.scene->r.cfra; /* could be mval[0] another time... */ + strip->end = (float)strip->start + (strip->actend-strip->actstart); /* simple prevention of zero strips */ if(strip->start>strip->end-2) strip->end= strip->start+100; @@ -653,8 +653,8 @@ static void add_nla_block_by_name(char name[32], Object *ob, short hold, short a /* Link the action to the strip */ strip->act = act; calc_action_range(strip->act, &strip->actstart, &strip->actend, 1); - strip->start = G.scene->r.cfra; /* could be mval[0] another time... */ - strip->end = strip->start + (strip->actend-strip->actstart); + strip->start = (float)G.scene->r.cfra; /* could be mval[0] another time... */ + strip->end = (float)strip->start + (strip->actend-strip->actstart); /* simple prevention of zero strips */ if(strip->start>strip->end-2) strip->end= strip->start+100; @@ -751,20 +751,20 @@ void add_empty_nlablock(void) if ((EFRA-CFRA) < 100) { strip->flag |= ACTSTRIP_AUTO_BLENDS; strip->flag &= ~ACTSTRIP_LOCK_ACTION; - strip->actstart = CFRA; - strip->actend = CFRA + 100; + strip->actstart = (float)CFRA; + strip->actend = (float)(CFRA + 100); - strip->start = CFRA; - strip->end = CFRA + 100; + strip->start = (float)CFRA; + strip->end = (float)(CFRA + 100); } else { strip->flag |= ACTSTRIP_AUTO_BLENDS; strip->flag &= ~ACTSTRIP_LOCK_ACTION; - strip->actstart = CFRA; - strip->actend = EFRA; + strip->actstart = (float)CFRA; + strip->actend = (float)EFRA; - strip->start = CFRA; - strip->end = EFRA; + strip->start = (float)CFRA; + strip->end = (float)EFRA; } BIF_undo_push("Add NLA strip"); @@ -1196,9 +1196,9 @@ void borderselect_nla(void) mval[1]= rect.ymax-2; areamouseco_to_ipoco(G.v2d, mval, &rectf.xmax, &rectf.ymax); - ymax = count_nla_levels(); - ymax*= (NLACHANNELHEIGHT+NLACHANNELSKIP); - ymax+= (NLACHANNELHEIGHT+NLACHANNELSKIP)/2; + ymax = (float)count_nla_levels(); + ymax *= (float)(NLACHANNELHEIGHT+NLACHANNELSKIP); + ymax += (float)(NLACHANNELHEIGHT+NLACHANNELSKIP)/2; for (base=G.scene->base.first; base; base=base->next){ if (nla_filter(base)) { @@ -1392,9 +1392,9 @@ static Base *get_nearest_nlastrip (bActionStrip **rstrip, short *sel) mval[0]+=14; areamouseco_to_ipoco(G.v2d, mval, &rectf.xmax, &rectf.ymax); - ymax = count_nla_levels(); - ymax*=(NLACHANNELHEIGHT + NLACHANNELSKIP); - ymax+= NLACHANNELHEIGHT/2; + ymax = (float)count_nla_levels(); + ymax *= (float)(NLACHANNELHEIGHT + NLACHANNELSKIP); + ymax += (float)(NLACHANNELHEIGHT / 2); for (base = G.scene->base.first; base; base=base->next){ if (nla_filter(base)) { @@ -1467,17 +1467,15 @@ static Base *get_nearest_nlachannel_ob_key (float *index, short *sel) mval[0]+=14; areamouseco_to_ipoco(G.v2d, mval, &rectf.xmax, &rectf.ymax); - ymax = count_nla_levels(); - - ymax*= (NLACHANNELHEIGHT + NLACHANNELSKIP); - ymax+= NLACHANNELHEIGHT/2; + ymax = (float)count_nla_levels(); + ymax *= (float)(NLACHANNELHEIGHT + NLACHANNELSKIP); + ymax += (float)(NLACHANNELHEIGHT / 2); *sel=0; - for (base=G.scene->base.first; base; base=base->next){ + for (base=G.scene->base.first; base; base=base->next) { if (nla_filter(base)) { - - ymin=ymax-(NLACHANNELHEIGHT+NLACHANNELSKIP); + ymin= ymax - (NLACHANNELHEIGHT + NLACHANNELSKIP); /* Handle object ipo selection */ if (base->object->ipo){ @@ -1579,10 +1577,9 @@ static bAction *get_nearest_nlachannel_ac_key (float *index, short *sel) mval[0]+=14; areamouseco_to_ipoco(G.v2d, mval, &rectf.xmax, &rectf.ymax); - ymax = count_nla_levels(); - - ymax*= (NLACHANNELHEIGHT + NLACHANNELSKIP); - ymax+= NLACHANNELHEIGHT/2; + ymax = (float)count_nla_levels(); + ymax *= (float)(NLACHANNELHEIGHT + NLACHANNELSKIP); + ymax += (float)(NLACHANNELHEIGHT / 2); *sel=0; @@ -1995,13 +1992,13 @@ void winqreadnlaspace(ScrArea *sa, void *spacedata, BWinEvent *evt) break; case PADPLUSKEY: - view2d_zoom(G.v2d, 0.1154, sa->winx, sa->winy); + view2d_zoom(G.v2d, 0.1154f, sa->winx, sa->winy); test_view2d(G.v2d, sa->winx, sa->winy); view2d_do_locks(curarea, V2D_LOCK_COPY); doredraw= 1; break; case PADMINUS: - view2d_zoom(G.v2d, -0.15, sa->winx, sa->winy); + view2d_zoom(G.v2d, -0.15f, sa->winx, sa->winy); test_view2d(G.v2d, sa->winx, sa->winy); view2d_do_locks(curarea, V2D_LOCK_COPY); doredraw= 1; diff --git a/source/blender/src/gpencil.c b/source/blender/src/gpencil.c index 3d54fdc4439..3c611d00140 100644 --- a/source/blender/src/gpencil.c +++ b/source/blender/src/gpencil.c @@ -769,8 +769,8 @@ static void gp_strokepoint_convertcoords (bGPDstroke *gps, bGPDspoint *pt, float ipoco_to_areaco_noclip(v2d, &pt->x, mval); } else { - mval[0]= (pt->x / 1000 * curarea->winx); - mval[1]= (pt->y / 1000 * curarea->winy); + mval[0]= (short)(pt->x / 1000 * curarea->winx); + mval[1]= (short)(pt->y / 1000 * curarea->winy); } mx= mval[0]; my= mval[1]; @@ -854,7 +854,7 @@ static void gp_stroke_to_bezier (bGPDlayer *gpl, bGPDstroke *gps, Curve *cu) /* set settings */ bezt->h1= bezt->h2= HD_FREE; bezt->f1= bezt->f2= bezt->f3= SELECT; - bezt->radius = bezt->weight = pt->pressure * gpl->thickness * 0.1; + bezt->radius = bezt->weight = pt->pressure * gpl->thickness * 0.1f; } /* must calculate handles or else we crash */ @@ -941,14 +941,14 @@ static void gp_stroke_to_bonechain (bGPDlayer *gpl, bGPDstroke *gps, bArmature * { ebo->flag |= BONE_CONNECTED; } - ebo->weight= 1.0F; - ebo->dist= 0.25F; - ebo->xwidth= 0.1; - ebo->zwidth= 0.1; - ebo->ease1= 1.0; - ebo->ease2= 1.0; - ebo->rad_head= pt->pressure * gpl->thickness * 0.1; - ebo->rad_tail= ptn->pressure * gpl->thickness * 0.1; + ebo->weight= 1.0f; + ebo->dist= 0.25f; + ebo->xwidth= 0.1f; + ebo->zwidth= 0.1f; + ebo->ease1= 1.0f; + ebo->ease2= 1.0f; + ebo->rad_head= pt->pressure * gpl->thickness * 0.1f; + ebo->rad_tail= ptn->pressure * gpl->thickness * 0.1f; ebo->segments= 1; ebo->layer= arm->layer; } @@ -1347,10 +1347,10 @@ static void gp_stroke_simplify (tGPsdata *p) pressure = 0; /* using macro, calculate new point */ - GP_SIMPLIFY_AVPOINT(j, -0.25); - GP_SIMPLIFY_AVPOINT(j+1, 0.75); - GP_SIMPLIFY_AVPOINT(j+2, 0.75); - GP_SIMPLIFY_AVPOINT(j+3, -0.25); + GP_SIMPLIFY_AVPOINT(j, -0.25f); + GP_SIMPLIFY_AVPOINT(j+1, 0.75f); + GP_SIMPLIFY_AVPOINT(j+2, 0.75f); + GP_SIMPLIFY_AVPOINT(j+3, -0.25f); /* set values for adding */ mco[0]= (short)co[0]; @@ -1557,7 +1557,7 @@ static void gp_stroke_eraser_dostroke (tGPsdata *p, short mval[], short mvalo[], } else if (gps->flag & GP_STROKE_2DIMAGE) { int offsx, offsy, sizex, sizey; - + /* get stored settings */ sizex= p->im2d_settings.sizex; sizey= p->im2d_settings.sizey; @@ -1565,12 +1565,12 @@ static void gp_stroke_eraser_dostroke (tGPsdata *p, short mval[], short mvalo[], offsy= p->im2d_settings.offsy; /* calculate new points */ - x0= (gps->points->x * sizex) + offsx; - y0= (gps->points->y * sizey) + offsy; + x0= (short)((gps->points->x * sizex) + offsx); + y0= (short)((gps->points->y * sizey) + offsy); } else { - x0= (gps->points->x / 1000 * p->sa->winx); - y0= (gps->points->y / 1000 * p->sa->winy); + x0= (short)(gps->points->x / 1000 * p->sa->winx); + y0= (short)(gps->points->y / 1000 * p->sa->winy); } /* do boundbox check first */ @@ -1621,17 +1621,17 @@ static void gp_stroke_eraser_dostroke (tGPsdata *p, short mval[], short mvalo[], offsy= p->im2d_settings.offsy; /* calculate new points */ - x0= (pt1->x * sizex) + offsx; - y0= (pt1->y * sizey) + offsy; + x0= (short)((pt1->x * sizex) + offsx); + y0= (short)((pt1->y * sizey) + offsy); - x1= (pt2->x * sizex) + offsx; - y1= (pt2->y * sizey) + offsy; + x1= (short)((pt2->x * sizex) + offsx); + y1= (short)((pt2->y * sizey) + offsy); } else { - x0= (pt1->x / 1000 * p->sa->winx); - y0= (pt1->y / 1000 * p->sa->winy); - x1= (pt2->x / 1000 * p->sa->winx); - y1= (pt2->y / 1000 * p->sa->winy); + x0= (short)(pt1->x / 1000 * p->sa->winx); + y0= (short)(pt1->y / 1000 * p->sa->winy); + x1= (short)(pt2->x / 1000 * p->sa->winx); + y1= (short)(pt2->y / 1000 * p->sa->winy); } /* check that point segment of the boundbox of the eraser stroke */ @@ -1896,10 +1896,10 @@ static void gp_paint_initstroke (tGPsdata *p, short paintmode) recty= (G.scene->r.size * G.scene->r.ysch) / 100; /* set offset and scale values for opertations to use */ - p->im2d_settings.sizex= zoomx * rectx; - p->im2d_settings.sizey= zoomy * recty; - p->im2d_settings.offsx= (p->sa->winx-p->im2d_settings.sizex)/2 + sseq->xof; - p->im2d_settings.offsy= (p->sa->winy-p->im2d_settings.sizey)/2 + sseq->yof; + p->im2d_settings.sizex= (int)(zoomx * rectx); + p->im2d_settings.sizey= (int)(zoomy * recty); + p->im2d_settings.offsx= (int)((p->sa->winx-p->im2d_settings.sizex)/2 + sseq->xof); + p->im2d_settings.offsy= (int)((p->sa->winy-p->im2d_settings.sizey)/2 + sseq->yof); } break; case SPACE_IMAGE: diff --git a/source/blender/src/header_time.c b/source/blender/src/header_time.c index 51f71e5bdab..574e0b3a9f1 100644 --- a/source/blender/src/header_time.c +++ b/source/blender/src/header_time.c @@ -500,7 +500,7 @@ void time_buttons(ScrArea *sa) &G.scene->r.psfra,MINFRAMEF, MAXFRAMEF, 0, 0, "The start frame of the animation preview (inclusive)"); - xco += 4.5*XIC; + xco += (short)(4.5*XIC); uiDefButI(block, NUM, REDRAWALL,"End:", xco,0,4.5*XIC,YIC, @@ -513,23 +513,23 @@ void time_buttons(ScrArea *sa) &G.scene->r.sfra,MINFRAMEF, MAXFRAMEF, 0, 0, "The start frame of the animation (inclusive)"); - xco += 4.5*XIC; + xco += (short)(4.5*XIC); uiDefButI(block, NUM, REDRAWALL,"End:", xco,0,4.5*XIC,YIC, - &G.scene->r.efra,SFRA,MAXFRAMEF, 0, 0, + &G.scene->r.efra,(float)SFRA,MAXFRAMEF, 0, 0, "The end frame of the animation (inclusive)"); } uiBlockEndAlign(block); - xco += 4.5*XIC+16; + xco += (short)(4.5 * XIC + 16); uiDefButI(block, NUM, B_NEWFRAME, "", xco,0,3.5*XIC,YIC, &(G.scene->r.cfra), MINFRAMEF, MAXFRAMEF, 0, 0, "Displays Current Frame of animation"); - xco += 3.5*XIC+16; + xco += (short)(3.5 * XIC + 16); uiDefIconBut(block, BUT, B_TL_REW, ICON_REW, xco, 0, XIC, YIC, 0, 0, 0, 0, 0, "Skip to Start frame (Shift DownArrow)"); diff --git a/source/blender/src/keyframing.c b/source/blender/src/keyframing.c index e61d8140183..79f62e38709 100644 --- a/source/blender/src/keyframing.c +++ b/source/blender/src/keyframing.c @@ -664,7 +664,7 @@ static float visualkey_get_value (ID *id, int blocktype, char *actname, char *co index= adrcode - OB_ROT_X; Mat4ToEul(ob->obmat, eul); - return eul[index]*(5.72958); + return eul[index]*(5.72958f); } } } diff --git a/source/blender/src/outliner.c b/source/blender/src/outliner.c index 04506d7d3c3..8e3e44c06de 100644 --- a/source/blender/src/outliner.c +++ b/source/blender/src/outliner.c @@ -1688,7 +1688,7 @@ static int tree_element_active_texture(SpaceOops *soops, TreeElement *te, int se sbuts->texfrom= 0; } extern_set_butspace(F6KEY, 0); // force shading buttons texture - ma->texact= te->index; + ma->texact= (char)te->index; /* also set active material */ ob->actcol= tep->index+1; @@ -2329,8 +2329,8 @@ static void outliner_set_coordinates_element(SpaceOops *soops, TreeElement *te, TreeStoreElem *tselem= TREESTORE(te); /* store coord and continue, we need coordinates for elements outside view too */ - te->xs= startx; - te->ys= *starty; + te->xs= (float)startx; + te->ys= (float)(*starty); *starty-= OL_H; if((tselem->flag & TSE_CLOSED)==0) { @@ -2346,7 +2346,7 @@ static void outliner_set_coordinates_element(SpaceOops *soops, TreeElement *te, static void outliner_set_coordinates(SpaceOops *soops) { TreeElement *te; - int starty= soops->v2d.tot.ymax-OL_H; + int starty= (int)(soops->v2d.tot.ymax)-OL_H; int startx= 0; for(te= soops->tree.first; te; te= te->next) { @@ -2384,13 +2384,13 @@ void outliner_show_active(struct ScrArea *sa) te= outliner_find_id(so, &so->tree, (ID *)OBACT); if(te) { /* make te->ys center of view */ - ytop= te->ys + (so->v2d.mask.ymax-so->v2d.mask.ymin)/2; + ytop= (int)(te->ys + (so->v2d.mask.ymax-so->v2d.mask.ymin)/2); if(ytop>0) ytop= 0; - so->v2d.cur.ymax= ytop; - so->v2d.cur.ymin= ytop-(so->v2d.mask.ymax-so->v2d.mask.ymin); + so->v2d.cur.ymax= (float)ytop; + so->v2d.cur.ymin= (float)(ytop-(so->v2d.mask.ymax-so->v2d.mask.ymin)); /* make te->xs ==> te->xend center of view */ - xdelta = te->xs - so->v2d.cur.xmin; + xdelta = (int)(te->xs - so->v2d.cur.xmin); so->v2d.cur.xmin += xdelta; so->v2d.cur.xmax += xdelta; @@ -2408,13 +2408,13 @@ void outliner_show_selected(struct ScrArea *sa) te= outliner_find_id(so, &so->tree, (ID *)OBACT); if(te) { /* make te->ys center of view */ - ytop= te->ys + (so->v2d.mask.ymax-so->v2d.mask.ymin)/2; + ytop= (int)(te->ys + (so->v2d.mask.ymax-so->v2d.mask.ymin)/2); if(ytop>0) ytop= 0; - so->v2d.cur.ymax= ytop; - so->v2d.cur.ymin= ytop-(so->v2d.mask.ymax-so->v2d.mask.ymin); + so->v2d.cur.ymax= (float)ytop; + so->v2d.cur.ymin= (float)(ytop-(so->v2d.mask.ymax-so->v2d.mask.ymin)); /* make te->xs ==> te->xend center of view */ - xdelta = te->xs - so->v2d.cur.xmin; + xdelta = (int)(te->xs - so->v2d.cur.xmin); so->v2d.cur.xmin += xdelta; so->v2d.cur.xmax += xdelta; @@ -2538,13 +2538,13 @@ void outliner_find_panel(struct ScrArea *sa, int again, int flags) tselem->flag |= TSE_SELECTED; /* make te->ys center of view */ - ytop= te->ys + (soops->v2d.mask.ymax-soops->v2d.mask.ymin)/2; + ytop= (int)(te->ys + (soops->v2d.mask.ymax-soops->v2d.mask.ymin)/2); if(ytop>0) ytop= 0; - soops->v2d.cur.ymax= ytop; - soops->v2d.cur.ymin= ytop-(soops->v2d.mask.ymax-soops->v2d.mask.ymin); + soops->v2d.cur.ymax= (float)ytop; + soops->v2d.cur.ymin= (float)(ytop-(soops->v2d.mask.ymax-soops->v2d.mask.ymin)); /* make te->xs ==> te->xend center of view */ - xdelta = te->xs - soops->v2d.cur.xmin; + xdelta = (int)(te->xs - soops->v2d.cur.xmin); soops->v2d.cur.xmin += xdelta; soops->v2d.cur.xmax += xdelta; @@ -3357,14 +3357,14 @@ static void outliner_draw_iconrow(SpaceOops *soops, ListBase *lb, int level, int if(active) { uiSetRoundBox(15); glColor4ub(255, 255, 255, 100); - uiRoundBox( (float)*offsx-0.5, (float)ys-1.0, (float)*offsx+OL_H-3.0, (float)ys+OL_H-3.0, OL_H/2.0-2.0); + uiRoundBox( (float)*offsx-0.5f, (float)ys-1.0f, (float)*offsx+OL_H-3.0f, (float)ys+OL_H-3.0f, OL_H/2.0f-2.0f); glEnable(GL_BLEND); } - tselem_draw_icon(*offsx, ys, tselem, te); - te->xs= *offsx; - te->ys= ys; - te->xend= *offsx+OL_X; + tselem_draw_icon((float)*offsx, (float)ys, tselem, te); + te->xs= (float)*offsx; + te->ys= (float)ys; + te->xend= (short)*offsx+OL_X; te->flag |= TE_ICONROW; // for click (*offsx) += OL_X; @@ -3478,7 +3478,7 @@ static void outliner_draw_tree_element(SpaceOops *soops, TreeElement *te, int st /* active circle */ if(active) { uiSetRoundBox(15); - uiRoundBox( (float)startx+OL_H-1.5, (float)*starty+2.0, (float)startx+2*OL_H-4.0, (float)*starty+OL_H-1.0, OL_H/2.0-2.0); + uiRoundBox( (float)startx+OL_H-1.5f, (float)*starty+2.0f, (float)startx+2.0f*OL_H-4.0f, (float)*starty+OL_H-1.0f, OL_H/2.0f-2.0f); glEnable(GL_BLEND); /* roundbox disables it */ te->flag |= TE_ACTIVE; // for lookup in display hierarchies @@ -3494,25 +3494,25 @@ static void outliner_draw_tree_element(SpaceOops *soops, TreeElement *te, int st // icons a bit higher if(tselem->flag & TSE_CLOSED) - BIF_icon_draw(icon_x, *starty+2, ICON_TRIA_RIGHT); + BIF_icon_draw((float)icon_x, (float)*starty+2, ICON_TRIA_RIGHT); else - BIF_icon_draw(icon_x, *starty+2, ICON_TRIA_DOWN); + BIF_icon_draw((float)icon_x, (float)*starty+2, ICON_TRIA_DOWN); } offsx+= OL_X; /* datatype icon */ // icons a bit higher - tselem_draw_icon(startx+offsx, *starty+2, tselem, te); + tselem_draw_icon((float)startx+offsx, (float)*starty+2, tselem, te); offsx+= OL_X; if(tselem->type==0 && tselem->id->lib) { - glPixelTransferf(GL_ALPHA_SCALE, 0.5); + glPixelTransferf(GL_ALPHA_SCALE, 0.5f); if(tselem->id->flag & LIB_INDIRECT) - BIF_icon_draw(startx+offsx, *starty+2, ICON_DATALIB); + BIF_icon_draw((float)startx+offsx, (float)*starty+2, ICON_DATALIB); else - BIF_icon_draw(startx+offsx, *starty+2, ICON_PARLIB); - glPixelTransferf(GL_ALPHA_SCALE, 1.0); + BIF_icon_draw((float)startx+offsx, (float)*starty+2, ICON_PARLIB); + glPixelTransferf(GL_ALPHA_SCALE, 1.0f); offsx+= OL_X; } glDisable(GL_BLEND); @@ -3521,12 +3521,12 @@ static void outliner_draw_tree_element(SpaceOops *soops, TreeElement *te, int st if(active==1) BIF_ThemeColor(TH_TEXT_HI); else BIF_ThemeColor(TH_TEXT); glRasterPos2i(startx+offsx, *starty+5); - BIF_RasterPos(startx+offsx, *starty+5); + BIF_RasterPos((float)startx+offsx, (float)*starty+5); #ifdef WITH_VERSE if(te->name) { #endif BIF_DrawString(G.font, te->name, 0); - offsx+= OL_X + BIF_GetStringWidth(G.font, te->name, 0); + offsx+= (int)(OL_X + BIF_GetStringWidth(G.font, te->name, 0)); #ifdef WITH_VERSE } #endif @@ -3569,8 +3569,8 @@ static void outliner_draw_tree_element(SpaceOops *soops, TreeElement *te, int st } } /* store coord and continue, we need coordinates for elements outside view too */ - te->xs= startx; - te->ys= *starty; + te->xs= (float)startx; + te->ys= (float)*starty; te->xend= startx+offsx; *starty-= OL_H; @@ -3650,17 +3650,17 @@ static void outliner_draw_tree(SpaceOops *soops) // selection first BIF_GetThemeColor3fv(TH_BACK, col); glColor3f(col[0]+0.06f, col[1]+0.08f, col[2]+0.10f); - starty= soops->v2d.tot.ymax-OL_H; + starty= (int)soops->v2d.tot.ymax-OL_H; outliner_draw_selection(soops, &soops->tree, &starty); // grey hierarchy lines - BIF_ThemeColorBlend(TH_BACK, TH_TEXT, 0.2); - starty= soops->v2d.tot.ymax-OL_H/2; + BIF_ThemeColorBlend(TH_BACK, TH_TEXT, 0.2f); + starty= (int)soops->v2d.tot.ymax-OL_H/2; startx= 6; outliner_draw_hierarchy(soops, &soops->tree, startx, &starty); // items themselves - starty= soops->v2d.tot.ymax-OL_H; + starty= (int)soops->v2d.tot.ymax-OL_H; startx= 0; for(te= soops->tree.first; te; te= te->next) { outliner_draw_tree_element(soops, te, startx, &starty); @@ -3673,7 +3673,7 @@ static void outliner_back(SpaceOops *soops) int ystart; BIF_ThemeColorShade(TH_BACK, 6); - ystart= soops->v2d.tot.ymax; + ystart= (int)soops->v2d.tot.ymax; ystart= OL_H*(ystart/(OL_H)); while(ystart > soops->v2d.cur.ymin) { @@ -3688,10 +3688,10 @@ static void outliner_draw_restrictcols(SpaceOops *soops) /* background underneath */ BIF_ThemeColor(TH_BACK); - glRecti((int)soops->v2d.cur.xmax-OL_TOGW, soops->v2d.cur.ymin, (int)soops->v2d.cur.xmax, soops->v2d.cur.ymax); + glRecti((int)soops->v2d.cur.xmax-OL_TOGW, (int)soops->v2d.cur.ymin, (int)soops->v2d.cur.xmax, (int)soops->v2d.cur.ymax); BIF_ThemeColorShade(TH_BACK, 6); - ystart= soops->v2d.tot.ymax; + ystart= (int)soops->v2d.tot.ymax; ystart= OL_H*(ystart/(OL_H)); while(ystart > soops->v2d.cur.ymin) { @@ -3917,17 +3917,17 @@ static void outliner_draw_restrictbuts(uiBlock *block, SpaceOops *soops, ListBas uiBlockSetEmboss(block, UI_EMBOSSN); bt= uiDefIconButBitS(block, ICONTOG, OB_RESTRICT_VIEW, REDRAWALL, ICON_RESTRICT_VIEW_OFF, - (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, te->ys, 17, OL_H-1, &(ob->restrictflag), 0, 0, 0, 0, "Restrict/Allow visibility in the 3D View"); + (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, (short)te->ys, 17, OL_H-1, &(ob->restrictflag), 0, 0, 0, 0, "Restrict/Allow visibility in the 3D View"); uiButSetFunc(bt, restrictbutton_view_cb, ob, NULL); uiButSetFlag(bt, UI_NO_HILITE); bt= uiDefIconButBitS(block, ICONTOG, OB_RESTRICT_SELECT, REDRAWALL, ICON_RESTRICT_SELECT_OFF, - (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_SELECTX, te->ys, 17, OL_H-1, &(ob->restrictflag), 0, 0, 0, 0, "Restrict/Allow selection in the 3D View"); + (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_SELECTX, (short)te->ys, 17, OL_H-1, &(ob->restrictflag), 0, 0, 0, 0, "Restrict/Allow selection in the 3D View"); uiButSetFunc(bt, restrictbutton_sel_cb, ob, NULL); uiButSetFlag(bt, UI_NO_HILITE); bt= uiDefIconButBitS(block, ICONTOG, OB_RESTRICT_RENDER, REDRAWALL, ICON_RESTRICT_RENDER_OFF, - (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_RENDERX, te->ys, 17, OL_H-1, &(ob->restrictflag), 0, 0, 0, 0, "Restrict/Allow renderability"); + (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_RENDERX, (short)te->ys, 17, OL_H-1, &(ob->restrictflag), 0, 0, 0, 0, "Restrict/Allow renderability"); uiButSetFunc(bt, restrictbutton_rend_cb, NULL, NULL); uiButSetFlag(bt, UI_NO_HILITE); @@ -3938,7 +3938,7 @@ static void outliner_draw_restrictbuts(uiBlock *block, SpaceOops *soops, ListBas uiBlockSetEmboss(block, UI_EMBOSSN); bt= uiDefIconButBitI(block, ICONTOGN, SCE_LAY_DISABLE, REDRAWBUTSSCENE, ICON_CHECKBOX_HLT-1, - (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, te->ys, 17, OL_H-1, te->directdata, 0, 0, 0, 0, "Render this RenderLayer"); + (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, (short)te->ys, 17, OL_H-1, te->directdata, 0, 0, 0, 0, "Render this RenderLayer"); uiButSetFunc(bt, restrictbutton_r_lay_cb, NULL, NULL); uiBlockSetEmboss(block, UI_EMBOSS); @@ -3949,13 +3949,13 @@ static void outliner_draw_restrictbuts(uiBlock *block, SpaceOops *soops, ListBas /* NOTE: tselem->nr is short! */ bt= uiDefIconButBitI(block, ICONTOG, tselem->nr, REDRAWBUTSSCENE, ICON_CHECKBOX_HLT-1, - (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, te->ys, 17, OL_H-1, layflag, 0, 0, 0, 0, "Render this Pass"); + (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, (short)te->ys, 17, OL_H-1, layflag, 0, 0, 0, 0, "Render this Pass"); uiButSetFunc(bt, restrictbutton_r_lay_cb, NULL, NULL); layflag++; /* is lay_xor */ if(ELEM6(tselem->nr, SCE_PASS_SPEC, SCE_PASS_SHADOW, SCE_PASS_AO, SCE_PASS_REFLECT, SCE_PASS_REFRACT, SCE_PASS_RADIO)) bt= uiDefIconButBitI(block, TOG, tselem->nr, REDRAWBUTSSCENE, (*layflag & tselem->nr)?ICON_DOT:ICON_BLANK1, - (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_SELECTX, te->ys, 17, OL_H-1, layflag, 0, 0, 0, 0, "Exclude this Pass from Combined"); + (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_SELECTX, (short)te->ys, 17, OL_H-1, layflag, 0, 0, 0, 0, "Exclude this Pass from Combined"); uiButSetFunc(bt, restrictbutton_r_lay_cb, NULL, NULL); uiBlockSetEmboss(block, UI_EMBOSS); @@ -3966,12 +3966,12 @@ static void outliner_draw_restrictbuts(uiBlock *block, SpaceOops *soops, ListBas uiBlockSetEmboss(block, UI_EMBOSSN); bt= uiDefIconButBitI(block, ICONTOGN, eModifierMode_Realtime, REDRAWALL, ICON_RESTRICT_VIEW_OFF, - (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, te->ys, 17, OL_H-1, &(md->mode), 0, 0, 0, 0, "Restrict/Allow visibility in the 3D View"); + (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, (short)te->ys, 17, OL_H-1, &(md->mode), 0, 0, 0, 0, "Restrict/Allow visibility in the 3D View"); uiButSetFunc(bt, restrictbutton_modifier_cb, ob, NULL); uiButSetFlag(bt, UI_NO_HILITE); bt= uiDefIconButBitI(block, ICONTOGN, eModifierMode_Render, REDRAWALL, ICON_RESTRICT_RENDER_OFF, - (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_RENDERX, te->ys, 17, OL_H-1, &(md->mode), 0, 0, 0, 0, "Restrict/Allow renderability"); + (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_RENDERX, (short)te->ys, 17, OL_H-1, &(md->mode), 0, 0, 0, 0, "Restrict/Allow renderability"); uiButSetFunc(bt, restrictbutton_modifier_cb, ob, NULL); uiButSetFlag(bt, UI_NO_HILITE); } @@ -3981,7 +3981,7 @@ static void outliner_draw_restrictbuts(uiBlock *block, SpaceOops *soops, ListBas uiBlockSetEmboss(block, UI_EMBOSSN); bt= uiDefIconButBitI(block, ICONTOG, BONE_HIDDEN_P, REDRAWALL, ICON_RESTRICT_VIEW_OFF, - (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, te->ys, 17, OL_H-1, &(bone->flag), 0, 0, 0, 0, "Restrict/Allow visibility in the 3D View"); + (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, (short)te->ys, 17, OL_H-1, &(bone->flag), 0, 0, 0, 0, "Restrict/Allow visibility in the 3D View"); uiButSetFunc(bt, restrictbutton_bone_cb, NULL, NULL); uiButSetFlag(bt, UI_NO_HILITE); } @@ -3990,7 +3990,7 @@ static void outliner_draw_restrictbuts(uiBlock *block, SpaceOops *soops, ListBas uiBlockSetEmboss(block, UI_EMBOSSN); bt= uiDefIconButBitI(block, ICONTOG, BONE_HIDDEN_A, REDRAWALL, ICON_RESTRICT_VIEW_OFF, - (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, te->ys, 17, OL_H-1, &(ebone->flag), 0, 0, 0, 0, "Restrict/Allow visibility in the 3D View"); + (int)soops->v2d.cur.xmax-OL_TOG_RESTRICT_VIEWX, (short)te->ys, 17, OL_H-1, &(ebone->flag), 0, 0, 0, 0, "Restrict/Allow visibility in the 3D View"); uiButSetFunc(bt, restrictbutton_bone_cb, NULL, NULL); uiButSetFlag(bt, UI_NO_HILITE); } @@ -4022,10 +4022,10 @@ static void outliner_buttons(uiBlock *block, SpaceOops *soops, ListBase *lb) else if(tselem->id && GS(tselem->id->name)==ID_LI) len = sizeof(((Library*) 0)->name); else len= sizeof(((ID*) 0)->name)-2; - dx= BIF_GetStringWidth(G.font, te->name, 0); + dx= (int)BIF_GetStringWidth(G.font, te->name, 0); if(dx<50) dx= 50; - bt= uiDefBut(block, TEX, OL_NAMEBUTTON, "", te->xs+2*OL_X-4, te->ys, dx+10, OL_H-1, te->name, 1.0, (float)len-1, 0, 0, ""); + bt= uiDefBut(block, TEX, OL_NAMEBUTTON, "", (short)te->xs+2*OL_X-4, (short)te->ys, dx+10, OL_H-1, te->name, 1.0, (float)len-1, 0, 0, ""); uiButSetFunc(bt, namebutton_cb, te, NULL); // signal for button to open @@ -4070,27 +4070,27 @@ void draw_outliner(ScrArea *sa, SpaceOops *soops) outliner_width(soops, &soops->tree, &sizex); /* we init all tot rect vars, only really needed on window size change though */ - G.v2d->tot.xmin= 0.0; - G.v2d->tot.xmax= (G.v2d->mask.xmax-G.v2d->mask.xmin); + G.v2d->tot.xmin= 0.0f; + G.v2d->tot.xmax= (float)(G.v2d->mask.xmax-G.v2d->mask.xmin); if(soops->flag & SO_HIDE_RESTRICTCOLS) { if(G.v2d->tot.xmax <= sizex) - G.v2d->tot.xmax= 2*sizex; + G.v2d->tot.xmax= (float)2*sizex; } else { if(G.v2d->tot.xmax-OL_TOGW <= sizex) - G.v2d->tot.xmax= 2*sizex; + G.v2d->tot.xmax= (float)2*sizex; } - G.v2d->tot.ymax= 0.0; - G.v2d->tot.ymin= -sizey*OL_H; + G.v2d->tot.ymax= 0.0f; + G.v2d->tot.ymin= (float)-sizey*OL_H; test_view2d(G.v2d, sa->winx, sa->winy); // align on top window if cur bigger than tot if(G.v2d->cur.ymax-G.v2d->cur.ymin > sizey*OL_H) { - G.v2d->cur.ymax= 0.0; - G.v2d->cur.ymin= -(G.v2d->mask.ymax-G.v2d->mask.ymin); + G.v2d->cur.ymax= 0.0f; + G.v2d->cur.ymin= (float)-(G.v2d->mask.ymax-G.v2d->mask.ymin); } - myortho2(G.v2d->cur.xmin-0.375, G.v2d->cur.xmax-0.375, G.v2d->cur.ymin-0.375, G.v2d->cur.ymax-0.375); + myortho2(G.v2d->cur.xmin-0.375f, G.v2d->cur.xmax-0.375f, G.v2d->cur.ymin-0.375f, G.v2d->cur.ymax-0.375f); /* draw outliner stuff (background and hierachy lines) */ outliner_back(soops); @@ -4100,7 +4100,7 @@ void draw_outliner(ScrArea *sa, SpaceOops *soops) mywinset(sa->win); /* ortho corrected - 'pixel space' */ - myortho2(G.v2d->cur.xmin-SCROLLB-0.375, G.v2d->cur.xmax-0.375, G.v2d->cur.ymin-SCROLLH-0.375, G.v2d->cur.ymax-0.375); + myortho2(G.v2d->cur.xmin-SCROLLB-0.375f, G.v2d->cur.xmax-0.375f, G.v2d->cur.ymin-SCROLLH-0.375f, G.v2d->cur.ymax-0.375f); /* draw icons and names */ block= uiNewBlock(&sa->uiblocks, "outliner buttons", UI_EMBOSS, UI_HELV, sa->win); diff --git a/source/blender/src/poselib.c b/source/blender/src/poselib.c index ff54ad31e22..b819dd2a865 100644 --- a/source/blender/src/poselib.c +++ b/source/blender/src/poselib.c @@ -388,7 +388,7 @@ void poselib_add_current_pose (Object *ob, int val) /* add missing ipo-curves and insert keys */ #define INSERT_KEY_ICU(adrcode, data) {\ icu= poselib_verify_icu(achan->ipo, adrcode); \ - insert_vert_icu(icu, frame, data, 1); \ + insert_vert_icu(icu, (float)frame, data, 1); \ } INSERT_KEY_ICU(AC_LOC_X, pchan->loc[0]) @@ -685,7 +685,7 @@ static void poselib_apply_pose (tPoseLib_PreviewData *pld) if (ok) { /* Evaluates and sets the internal ipo values */ - calc_ipo(achan->ipo, frame); + calc_ipo(achan->ipo, (float)frame); /* This call also sets the pchan flags */ execute_action_ipo(achan, pchan); } diff --git a/source/blender/src/space.c b/source/blender/src/space.c index 6cd573c580d..c26620ccbf2 100644 --- a/source/blender/src/space.c +++ b/source/blender/src/space.c @@ -893,7 +893,7 @@ static short select_same_color(Object *ob) Base *base = FIRSTBASE; while(base) { - if (BASE_SELECTABLE(base) && !(base->flag & SELECT) && (FloatCompare(base->object->col, ob->col, 0.005))) { + if (BASE_SELECTABLE(base) && !(base->flag & SELECT) && (FloatCompare(base->object->col, ob->col, 0.005f))) { base->flag |= SELECT; base->object->flag |= SELECT; changed = 1; @@ -3303,10 +3303,10 @@ void initipo(ScrArea *sa) sipo->blockscale= 0.7f; /* sipo space loopt van (0,-?) tot (??,?) */ - sipo->v2d.tot.xmin= 0.0; - sipo->v2d.tot.ymin= -10.0; - sipo->v2d.tot.xmax= G.scene->r.efra; - sipo->v2d.tot.ymax= 10.0; + sipo->v2d.tot.xmin= 0.0f; + sipo->v2d.tot.ymin= -10.0f; + sipo->v2d.tot.xmax= (float)G.scene->r.efra; + sipo->v2d.tot.ymax= 10.0f; sipo->v2d.cur= sipo->v2d.tot; @@ -5020,12 +5020,12 @@ static void winqreadseqspace(ScrArea *sa, void *spacedata, BWinEvent *evt) case WHEELUPMOUSE: if(sseq->mainb) { if (G.qual == LR_SHIFTKEY) { - sseq->zoom += 0.10; + sseq->zoom += 0.10f; } else { sseq->zoom++; } if(sseq->zoom >= -1 && sseq->zoom < 1) { - sseq->zoom += 2; + sseq->zoom += 2.0f; } if(sseq->zoom>8) sseq->zoom= 8; } else { @@ -5048,12 +5048,12 @@ static void winqreadseqspace(ScrArea *sa, void *spacedata, BWinEvent *evt) case WHEELDOWNMOUSE: if(sseq->mainb) { if (G.qual == LR_SHIFTKEY) { - sseq->zoom -= 0.10; + sseq->zoom -= 0.10f; } else { sseq->zoom--; } if(sseq->zoom >= -1 && sseq->zoom < 1) { - sseq->zoom -= 2; + sseq->zoom -= 2.0f; } if(sseq->zoom<-8) sseq->zoom= -8; } else { @@ -5264,26 +5264,26 @@ static void init_seqspace(ScrArea *sa) sseq->spacetype= SPACE_SEQ; sseq->zoom= 4; - sseq->blockscale= 0.7; + sseq->blockscale= 0.7f; sseq->chanshown = 0; /* seq space goes from (0,8) to (250, 0) */ - sseq->v2d.tot.xmin= 0.0; - sseq->v2d.tot.ymin= 0.0; - sseq->v2d.tot.xmax= 250.0; - sseq->v2d.tot.ymax= 8.0; + sseq->v2d.tot.xmin= 0.0f; + sseq->v2d.tot.ymin= 0.0f; + sseq->v2d.tot.xmax= 250.0f; + sseq->v2d.tot.ymax= 8.0f; sseq->v2d.cur= sseq->v2d.tot; - sseq->v2d.min[0]= 10.0; - sseq->v2d.min[1]= 4.0; + sseq->v2d.min[0]= 10.0f; + sseq->v2d.min[1]= 4.0f; sseq->v2d.max[0]= MAXFRAMEF; sseq->v2d.max[1]= MAXSEQ; sseq->v2d.minzoom= 0.01f; - sseq->v2d.maxzoom= 100.0; + sseq->v2d.maxzoom= 100.0f; sseq->v2d.scroll= L_SCROLL+B_SCROLL; sseq->v2d.keepaspect= 0; @@ -5315,25 +5315,25 @@ static void init_actionspace(ScrArea *sa) BLI_addhead(&sa->spacedata, saction); saction->spacetype= SPACE_ACTION; - saction->blockscale= 0.7; + saction->blockscale= 0.7f; - saction->v2d.tot.xmin= 1.0; - saction->v2d.tot.ymin= -1000.0; - saction->v2d.tot.xmax= 1000.0; - saction->v2d.tot.ymax= 0.0; + saction->v2d.tot.xmin= 1.0f; + saction->v2d.tot.ymin= -1000.0f; + saction->v2d.tot.xmax= 1000.0f; + saction->v2d.tot.ymax= 0.0f; - saction->v2d.cur.xmin= -5.0; - saction->v2d.cur.ymin= -75.0; - saction->v2d.cur.xmax= 65.0; - saction->v2d.cur.ymax= 5.0; + saction->v2d.cur.xmin= -5.0f; + saction->v2d.cur.ymin= -75.0f; + saction->v2d.cur.xmax= 65.0f; + saction->v2d.cur.ymax= 5.0f; - saction->v2d.min[0]= 0.0; - saction->v2d.min[1]= 0.0; + saction->v2d.min[0]= 0.0f; + saction->v2d.min[1]= 0.0f; saction->v2d.max[0]= MAXFRAMEF; - saction->v2d.max[1]= 1000.0; + saction->v2d.max[1]= 1000.0f; - saction->v2d.minzoom= 0.01; + saction->v2d.minzoom= 0.01f; saction->v2d.maxzoom= 50; saction->v2d.scroll= R_SCROLL+B_SCROLL; @@ -5368,7 +5368,7 @@ static void init_filespace(ScrArea *sa) sfile->dir[0]= '/'; sfile->type= FILE_UNIX; - sfile->blockscale= 0.7; + sfile->blockscale= 0.7f; sfile->spacetype= SPACE_FILE; } @@ -5386,27 +5386,27 @@ static void init_soundspace(ScrArea *sa) BLI_addhead(&sa->spacedata, ssound); ssound->spacetype= SPACE_SOUND; - ssound->blockscale= 0.7; + ssound->blockscale= 0.7f; /* sound space goes from (0,8) to (250, 0) */ - ssound->v2d.tot.xmin= -4.0; - ssound->v2d.tot.ymin= -4.0; - ssound->v2d.tot.xmax= 250.0; - ssound->v2d.tot.ymax= 255.0; + ssound->v2d.tot.xmin= -4.0f; + ssound->v2d.tot.ymin= -4.0f; + ssound->v2d.tot.xmax= 250.0f; + ssound->v2d.tot.ymax= 255.0f; - ssound->v2d.cur.xmin= -4.0; - ssound->v2d.cur.ymin= -4.0; - ssound->v2d.cur.xmax= 50.0; - ssound->v2d.cur.ymax= 255.0; + ssound->v2d.cur.xmin= -4.0f; + ssound->v2d.cur.ymin= -4.0f; + ssound->v2d.cur.xmax= 50.0f; + ssound->v2d.cur.ymax= 255.0f; - ssound->v2d.min[0]= 1.0; - ssound->v2d.min[1]= 259.0; + ssound->v2d.min[0]= 1.0f; + ssound->v2d.min[1]= 259.0f; ssound->v2d.max[0]= MAXFRAMEF; - ssound->v2d.max[1]= 259; + ssound->v2d.max[1]= 259.0f; ssound->v2d.minzoom= 0.1f; - ssound->v2d.maxzoom= 10.0; + ssound->v2d.maxzoom= 10.0f; ssound->v2d.scroll= B_SCROLL; ssound->v2d.keepaspect= 0; @@ -5745,7 +5745,7 @@ static void init_imagespace(ScrArea *sa) sima->spacetype= SPACE_IMAGE; sima->zoom= 1; - sima->blockscale= 0.7; + sima->blockscale= 0.7f; sima->iuser.ok= 1; sima->iuser.fie_ima= 2; @@ -5777,18 +5777,18 @@ static void init_imaselspace(ScrArea *sa) simasel->blockscale= 0.7; /* view 2D */ - simasel->v2d.tot.xmin= -10.0; - simasel->v2d.tot.ymin= -10.0; + simasel->v2d.tot.xmin= -10.0f; + simasel->v2d.tot.ymin= -10.0f; simasel->v2d.tot.xmax= (float)sa->winx + 10.0f; simasel->v2d.tot.ymax= (float)sa->winy + 10.0f; - simasel->v2d.cur.xmin= 0.0; - simasel->v2d.cur.ymin= 0.0; + simasel->v2d.cur.xmin= 0.0f; + simasel->v2d.cur.ymin= 0.0f; simasel->v2d.cur.xmax= (float)sa->winx; simasel->v2d.cur.ymax= (float)sa->winy; - simasel->v2d.min[0]= 1.0; - simasel->v2d.min[1]= 1.0; + simasel->v2d.min[0]= 1.0f; + simasel->v2d.min[1]= 1.0f; simasel->v2d.max[0]= 32000.0f; simasel->v2d.max[1]= 32000.0f; @@ -5932,8 +5932,8 @@ static void winqreadoopsspace(ScrArea *sa, void *spacedata, BWinEvent *evt) break; case PADPLUSKEY: - dx= 0.1154*(v2d->cur.xmax-v2d->cur.xmin); - dy= 0.1154*(v2d->cur.ymax-v2d->cur.ymin); + dx= 0.1154f*(v2d->cur.xmax-v2d->cur.xmin); + dy= 0.1154f*(v2d->cur.ymax-v2d->cur.ymin); v2d->cur.xmin+= dx; v2d->cur.xmax-= dx; v2d->cur.ymin+= dy; @@ -5944,8 +5944,8 @@ static void winqreadoopsspace(ScrArea *sa, void *spacedata, BWinEvent *evt) case PADMINUS: - dx= 0.15*(v2d->cur.xmax-v2d->cur.xmin); - dy= 0.15*(v2d->cur.ymax-v2d->cur.ymin); + dx= 0.15f*(v2d->cur.xmax-v2d->cur.xmin); + dy= 0.15f*(v2d->cur.ymax-v2d->cur.ymin); v2d->cur.xmin-= dx; v2d->cur.xmax+= dx; v2d->cur.ymin-= dy; @@ -6045,10 +6045,10 @@ void init_v2d_oops(ScrArea *sa, SpaceOops *soops) /* outliner space is window size */ calc_scrollrcts(sa, v2d, sa->winx, sa->winy); - v2d->tot.xmax= (v2d->mask.xmax-v2d->mask.xmin); - v2d->tot.ymax= (v2d->mask.ymax-v2d->mask.ymin); - v2d->tot.xmin= 0.0; - v2d->tot.ymin= 0.0; + v2d->tot.xmax= (float)(v2d->mask.xmax-v2d->mask.xmin); + v2d->tot.ymax= (float)(v2d->mask.ymax-v2d->mask.ymin); + v2d->tot.xmin= 0.0f; + v2d->tot.ymin= 0.0f; v2d->cur= v2d->tot; @@ -6058,8 +6058,8 @@ void init_v2d_oops(ScrArea *sa, SpaceOops *soops) v2d->max[0]= v2d->tot.xmax; v2d->max[1]= v2d->tot.ymax; - v2d->minzoom= 1.0; - v2d->maxzoom= 1.0; + v2d->minzoom= 1.0f; + v2d->maxzoom= 1.0f; /* B_SCROLLO used here instead of B_SCROLL, to stop old blender's hanging on * loading a file from a version with horizontal scrolling due to an old bug @@ -6075,21 +6075,21 @@ void init_v2d_oops(ScrArea *sa, SpaceOops *soops) v2d->keeptot= 2; } else { - v2d->tot.xmin= -28.0; - v2d->tot.xmax= 28.0; - v2d->tot.ymin= -28.0; - v2d->tot.ymax= 28.0; + v2d->tot.xmin= -28.0f; + v2d->tot.xmax= 28.0f; + v2d->tot.ymin= -28.0f; + v2d->tot.ymax= 28.0f; v2d->cur= v2d->tot; - v2d->min[0]= 10.0; - v2d->min[1]= 4.0; + v2d->min[0]= 10.0f; + v2d->min[1]= 4.0f; - v2d->max[0]= 320.0; - v2d->max[1]= 320.0; + v2d->max[0]= 320.0f; + v2d->max[1]= 320.0f; v2d->minzoom= 0.01f; - v2d->maxzoom= 2.0; + v2d->maxzoom= 2.0f; /* v2d->scroll= L_SCROLL+B_SCROLL; */ v2d->scroll= 0; @@ -6111,7 +6111,7 @@ static void init_oopsspace(ScrArea *sa) soops->type= SO_OUTLINER; soops->spacetype= SPACE_OOPS; - soops->blockscale= 0.7; + soops->blockscale= 0.7f; init_v2d_oops(sa, soops); } @@ -6125,26 +6125,26 @@ static void init_nlaspace(ScrArea *sa) BLI_addhead(&sa->spacedata, snla); snla->spacetype= SPACE_NLA; - snla->blockscale= 0.7; + snla->blockscale= 0.7f; - snla->v2d.tot.xmin= 1.0; - snla->v2d.tot.ymin= 0.0; - snla->v2d.tot.xmax= 1000.0; - snla->v2d.tot.ymax= 1000.0; + snla->v2d.tot.xmin= 1.0f; + snla->v2d.tot.ymin= 0.0f; + snla->v2d.tot.xmax= 1000.0f; + snla->v2d.tot.ymax= 1000.0f; - snla->v2d.cur.xmin= -5.0; - snla->v2d.cur.ymin= 0.0; - snla->v2d.cur.xmax= 65.0; - snla->v2d.cur.ymax= 1000.0; + snla->v2d.cur.xmin= -5.0f; + snla->v2d.cur.ymin= 0.0f; + snla->v2d.cur.xmax= 65.0f; + snla->v2d.cur.ymax= 1000.0f; - snla->v2d.min[0]= 0.0; - snla->v2d.min[1]= 0.0; + snla->v2d.min[0]= 0.0f; + snla->v2d.min[1]= 0.0f; snla->v2d.max[0]= MAXFRAMEF; - snla->v2d.max[1]= 1000.0; + snla->v2d.max[1]= 1000.0f; - snla->v2d.minzoom= 0.1F; - snla->v2d.maxzoom= 50; + snla->v2d.minzoom= 0.1f; + snla->v2d.maxzoom= 50.0f; snla->v2d.scroll= R_SCROLL+B_SCROLL; snla->v2d.keepaspect= 0; @@ -6169,7 +6169,7 @@ static void init_textspace(ScrArea *sa) BLI_addhead(&sa->spacedata, st); st->spacetype= SPACE_TEXT; - st->blockscale= 0.7; + st->blockscale= 0.7f; st->text= NULL; st->flags= 0; @@ -6200,7 +6200,7 @@ static void init_scriptspace(ScrArea *sa) BLI_addhead(&sa->spacedata, sc); sc->spacetype = SPACE_SCRIPT; - sc->blockscale= 0.7; + sc->blockscale= 0.7f; sc->script = NULL; sc->flags = 0; } @@ -6219,24 +6219,24 @@ static void init_timespace(ScrArea *sa) BLI_addhead(&sa->spacedata, stime); stime->spacetype= SPACE_TIME; - stime->blockscale= 0.7; + stime->blockscale= 0.7f; stime->redraws= TIME_ALL_3D_WIN|TIME_ALL_ANIM_WIN; - stime->v2d.tot.xmin= -4.0; - stime->v2d.tot.ymin= 0.0; + stime->v2d.tot.xmin= -4.0f; + stime->v2d.tot.ymin= 0.0f; stime->v2d.tot.xmax= (float)EFRA + 4.0; stime->v2d.tot.ymax= (float)sa->winy; stime->v2d.cur= stime->v2d.tot; - stime->v2d.min[0]= 1.0; + stime->v2d.min[0]= 1.0f; stime->v2d.min[1]= (float)sa->winy; stime->v2d.max[0]= MAXFRAMEF; stime->v2d.max[1]= (float)sa->winy; stime->v2d.minzoom= 0.1f; - stime->v2d.maxzoom= 10.0; + stime->v2d.maxzoom= 10.0f; stime->v2d.scroll= 0; stime->v2d.keepaspect= 0; @@ -6260,20 +6260,20 @@ static void init_nodespace(ScrArea *sa) BLI_addhead(&sa->spacedata, snode); snode->spacetype= SPACE_NODE; - snode->blockscale= 0.7; + snode->blockscale= 0.7f; - snode->v2d.tot.xmin= -10.0; - snode->v2d.tot.ymin= -10.0; + snode->v2d.tot.xmin= -10.0f; + snode->v2d.tot.ymin= -10.0f; snode->v2d.tot.xmax= (float)sa->winx + 10.0f; snode->v2d.tot.ymax= (float)sa->winy + 10.0f; - snode->v2d.cur.xmin= 0.0; - snode->v2d.cur.ymin= 0.0; + snode->v2d.cur.xmin= 0.0f; + snode->v2d.cur.ymin= 0.0f; snode->v2d.cur.xmax= (float)sa->winx; snode->v2d.cur.ymax= (float)sa->winy; - snode->v2d.min[0]= 1.0; - snode->v2d.min[1]= 1.0; + snode->v2d.min[0]= 1.0f; + snode->v2d.min[1]= 1.0f; snode->v2d.max[0]= 32000.0f; snode->v2d.max[1]= 32000.0f; diff --git a/source/blender/src/transform_conversions.c b/source/blender/src/transform_conversions.c index ed12c89f63b..3465983d110 100644 --- a/source/blender/src/transform_conversions.c +++ b/source/blender/src/transform_conversions.c @@ -2408,8 +2408,8 @@ void flushTransUVs(TransInfo *t) td->loc2d[1]= td->loc[1]*invy; if((G.sima->flag & SI_PIXELSNAP) && (t->state != TRANS_CANCEL)) { - td->loc2d[0]= floor(width*td->loc2d[0] + 0.5f)/width; - td->loc2d[1]= floor(height*td->loc2d[1] + 0.5f)/height; + td->loc2d[0]= (float)floor(width*td->loc2d[0] + 0.5f)/width; + td->loc2d[1]= (float)floor(height*td->loc2d[1] + 0.5f)/height; } } @@ -2719,12 +2719,12 @@ static void posttrans_nla_clean (TransInfo *t) ob= base->object; /* Check object ipos */ - i= count_ipo_keys(ob->ipo, side, CFRA); + i= count_ipo_keys(ob->ipo, side, (float)CFRA); if (i) posttrans_ipo_clean(ob->ipo); /* Check object constraint ipos */ for (conchan=ob->constraintChannels.first; conchan; conchan=conchan->next) { - i= count_ipo_keys(conchan->ipo, side, CFRA); + i= count_ipo_keys(conchan->ipo, side, (float)CFRA); if (i) posttrans_ipo_clean(conchan->ipo); } @@ -2742,7 +2742,7 @@ static void posttrans_nla_clean (TransInfo *t) } } if (strip==NULL) { - cfra = get_action_frame(ob, CFRA); + cfra = get_action_frame(ob, (float)CFRA); for (achan=ob->action->chanbase.first; achan; achan=achan->next) { if (EDITABLE_ACHAN(achan)) { @@ -2828,7 +2828,7 @@ static int count_gplayer_frames(bGPDlayer *gpl, char side, float cfra) /* only include points that occur on the right side of cfra */ for (gpf= gpl->frames.first; gpf; gpf= gpf->next) { if (gpf->flag & GP_FRAME_SELECT) { - if (FrameOnMouseSide(side, gpf->framenum, cfra)) + if (FrameOnMouseSide(side, (float)gpf->framenum, cfra)) count++; } } @@ -2920,7 +2920,7 @@ void flushTransGPactionData (TransInfo *t) * The 'side' argument is needed for the extend mode. 'B' = both sides, 'R'/'L' mean only data * on the named side are used. */ -static int GPLayerToTransData (TransData *td, tGPFtransdata *tfd, bGPDlayer *gpl, short side, float cfra) +static int GPLayerToTransData (TransData *td, tGPFtransdata *tfd, bGPDlayer *gpl, char side, float cfra) { bGPDframe *gpf; int count= 0; @@ -2928,12 +2928,12 @@ static int GPLayerToTransData (TransData *td, tGPFtransdata *tfd, bGPDlayer *gpl /* check for select frames on right side of current frame */ for (gpf= gpl->frames.first; gpf; gpf= gpf->next) { if (gpf->flag & GP_FRAME_SELECT) { - if (FrameOnMouseSide(side, gpf->framenum, cfra)) { + if (FrameOnMouseSide(side, (float)gpf->framenum, cfra)) { /* memory is calloc'ed, so that should zero everything nicely for us */ td->val= &tfd->val; - td->ival= gpf->framenum; + td->ival= (float)gpf->framenum; - tfd->val= gpf->framenum; + tfd->val= (float)gpf->framenum; tfd->sdata= &gpf->framenum; /* advance td now */ @@ -2995,9 +2995,9 @@ static void createTransActionData(TransInfo *t) * higher scaling ratios, but is faster than converting all points) */ if (ob) - cfra = get_action_frame(ob, CFRA); + cfra = get_action_frame(ob, (float)CFRA); else - cfra = CFRA; + cfra = (float)CFRA; /* loop 1: fully select ipo-keys and count how many BezTriples are selected */ for (ale= act_data.first; ale; ale= ale->next) { @@ -3052,7 +3052,7 @@ static void createTransActionData(TransInfo *t) /* check if we're supposed to be setting minx/maxx for TimeSlide */ if (t->mode == TFM_TIME_SLIDE) { - float min=999999999.0f, max=-999999999.0; + float min=999999999.0f, max=-999999999.0f; int i; td= (t->data + 1); @@ -3101,13 +3101,13 @@ static void createTransNlaData(TransInfo *t) /* Ensure that partial selections result in beztriple selections */ for (base=G.scene->base.first; base; base=base->next) { /* Check object ipos */ - i= count_ipo_keys(base->object->ipo, side, CFRA); + i= count_ipo_keys(base->object->ipo, side, (float)CFRA); if (i) base->flag |= BA_HAS_RECALC_OB; count += i; /* Check object constraint ipos */ for (conchan=base->object->constraintChannels.first; conchan; conchan=conchan->next) - count += count_ipo_keys(conchan->ipo, side, CFRA); + count += count_ipo_keys(conchan->ipo, side, (float)CFRA); /* skip actions and nlastrips if object is collapsed */ if (base->object->nlaflag & OB_NLA_COLLAPSED) @@ -3123,7 +3123,7 @@ static void createTransNlaData(TransInfo *t) } } if (strip==NULL) { - cfra = get_action_frame(base->object, CFRA); + cfra = get_action_frame(base->object, (float)CFRA); for (achan=base->object->action->chanbase.first; achan; achan=achan->next) { if (EDITABLE_ACHAN(achan)) { @@ -3148,8 +3148,8 @@ static void createTransNlaData(TransInfo *t) if (strip->flag & ACTSTRIP_SELECT) { base->flag |= BA_HAS_RECALC_OB|BA_HAS_RECALC_DATA; - if (FrameOnMouseSide(side, strip->start, CFRA)) count++; - if (FrameOnMouseSide(side, strip->end, CFRA)) count++; + if (FrameOnMouseSide(side, strip->start, (float)CFRA)) count++; + if (FrameOnMouseSide(side, strip->end, (float)CFRA)) count++; } } } @@ -3167,12 +3167,12 @@ static void createTransNlaData(TransInfo *t) for (base=G.scene->base.first; base; base=base->next) { /* Manipulate object ipos */ /* - no scaling of keyframe times is allowed here */ - td= IpoToTransData(td, base->object->ipo, NULL, side, CFRA); + td= IpoToTransData(td, base->object->ipo, NULL, side, (float)CFRA); /* Manipulate object constraint ipos */ /* - no scaling of keyframe times is allowed here */ for (conchan=base->object->constraintChannels.first; conchan; conchan=conchan->next) - td= IpoToTransData(td, conchan->ipo, NULL, side, CFRA); + td= IpoToTransData(td, conchan->ipo, NULL, side, (float)CFRA); /* skip actions and nlastrips if object collapsed */ if (base->object->nlaflag & OB_NLA_COLLAPSED) @@ -3190,7 +3190,7 @@ static void createTransNlaData(TransInfo *t) /* can include if no strip found */ if (strip==NULL) { - cfra = get_action_frame(base->object, CFRA); + cfra = get_action_frame(base->object, (float)CFRA); for (achan=base->object->action->chanbase.first; achan; achan=achan->next) { if (EDITABLE_ACHAN(achan)) { @@ -3212,12 +3212,12 @@ static void createTransNlaData(TransInfo *t) for (strip=base->object->nlastrips.first; strip; strip=strip->next) { if (strip->flag & ACTSTRIP_SELECT) { /* first TransData is the start, second is the end */ - if (FrameOnMouseSide(side, strip->start, CFRA)) { + if (FrameOnMouseSide(side, strip->start, (float)CFRA)) { td->val = &strip->start; td->ival = strip->start; td++; } - if (FrameOnMouseSide(side, strip->end, CFRA)) { + if (FrameOnMouseSide(side, strip->end, (float)CFRA)) { td->val = &strip->end; td->ival = strip->end; td++; diff --git a/source/blender/src/view.c b/source/blender/src/view.c index 66af3539e88..e7b46d83b50 100644 --- a/source/blender/src/view.c +++ b/source/blender/src/view.c @@ -111,7 +111,7 @@ void persp_general(int a) glPushMatrix(); glMatrixMode(GL_MODELVIEW); - myortho2(-0.375, ((float)(curarea->winx))-0.375, -0.375, ((float)(curarea->winy))-0.375); + myortho2(-0.375f, ((float)(curarea->winx))-0.375f, -0.375f, ((float)(curarea->winy))-0.375f); glLoadIdentity(); } else if(a== 1) { @@ -134,7 +134,7 @@ void persp(int a) mygetmatrix(G.vd->viewmat1); } else if(a== PERSP_WIN) { // only set - myortho2(-0.375, (float)(curarea->winx)-0.375, -0.375, (float)(curarea->winy)-0.375); + myortho2(-0.375f, (float)(curarea->winx)-0.375f, -0.375f, (float)(curarea->winy)-0.375f); glLoadIdentity(); } else if(a== PERSP_VIEW) { @@ -242,8 +242,8 @@ void project_short(float *vec, short *adr) /* clips */ fy= (curarea->winy/2)*(1 + vec4[1]/vec4[3]); if(fy>0.0 && fy< (float)curarea->winy) { - adr[0]= floor(fx); - adr[1]= floor(fy); + adr[0]= (short)floor(fx); + adr[1]= (short)floor(fy); } } } @@ -253,7 +253,7 @@ void project_int(float *vec, int *adr) { float fx, fy, vec4[4]; - adr[0]= 2140000000.0f; + adr[0]= (int)2140000000.0f; VECCOPY(vec4, vec); vec4[3]= 1.0; @@ -266,8 +266,8 @@ void project_int(float *vec, int *adr) fy= (curarea->winy/2)*(1 + vec4[1]/vec4[3]); if(fy>-2140000000.0f && fy<2140000000.0f) { - adr[0]= floor(fx); - adr[1]= floor(fy); + adr[0]= (int)floor(fx); + adr[1]= (int)floor(fy); } } } @@ -286,8 +286,8 @@ void project_int_noclip(float *vec, int *adr) fx = (curarea->winx/2)*(1 + vec4[0]/vec4[3]); fy = (curarea->winy/2)*(1 + vec4[1]/vec4[3]); - adr[0] = floor(fx); - adr[1] = floor(fy); + adr[0] = (int)floor(fx); + adr[1] = (int)floor(fy); } else { @@ -314,8 +314,8 @@ void project_short_noclip(float *vec, short *adr) fy= (curarea->winy/2)*(1 + vec4[1]/vec4[3]); if(fy>-32700.0 && fy<32700.0) { - adr[0]= floor(fx); - adr[1]= floor(fy); + adr[0]= (short)floor(fx); + adr[1]= (short)floor(fy); } } } @@ -332,8 +332,8 @@ void project_float(float *vec, float *adr) Mat4MulVec4fl(G.vd->persmat, vec4); if( vec4[3]>BL_NEAR_CLIP ) { - adr[0] = (curarea->winx/2.0)+(curarea->winx/2.0)*vec4[0]/vec4[3]; - adr[1] = (curarea->winy/2.0)+(curarea->winy/2.0)*vec4[1]/vec4[3]; + adr[0] = (float)(curarea->winx/2.0)+(curarea->winx/2.0)*vec4[0]/vec4[3]; + adr[1] = (float)(curarea->winy/2.0)+(curarea->winy/2.0)*vec4[1]/vec4[3]; } } @@ -347,8 +347,8 @@ void project_float_noclip(float *vec, float *adr) Mat4MulVec4fl(G.vd->persmat, vec4); if( fabs(vec4[3]) > BL_NEAR_CLIP ) { - adr[0] = (curarea->winx/2.0)+(curarea->winx/2.0)*vec4[0]/vec4[3]; - adr[1] = (curarea->winy/2.0)+(curarea->winy/2.0)*vec4[1]/vec4[3]; + adr[0] = (float)(curarea->winx/2.0)+(curarea->winx/2.0)*vec4[0]/vec4[3]; + adr[1] = (float)(curarea->winy/2.0)+(curarea->winy/2.0)*vec4[1]/vec4[3]; } else { @@ -401,8 +401,8 @@ void view3d_project_short_clip(ScrArea *area, float *vec, short *adr, float proj fy= (area->winy/2)*(1 + vec4[1]/vec4[3]); if(fy>0.0 && fy< (float)area->winy) { - adr[0]= floor(fx); - adr[1]= floor(fy); + adr[0]= (short)floor(fx); + adr[1]= (short)floor(fy); } } } @@ -427,8 +427,8 @@ void view3d_project_short_noclip(ScrArea *area, float *vec, short *adr, float ma fy= (area->winy/2)*(1 + vec4[1]/vec4[3]); if(fy>-32700.0 && fy<32700.0) { - adr[0]= floor(fx); - adr[1]= floor(fy); + adr[0]= (short)floor(fx); + adr[1]= (short)floor(fy); } } } @@ -445,10 +445,10 @@ void view3d_project_float(ScrArea *area, float *vec, float *adr, float mat[4][4] Mat4MulVec4fl(mat, vec4); if( vec4[3]>FLT_EPSILON ) { - adr[0] = (area->winx/2.0)+(area->winx/2.0)*vec4[0]/vec4[3]; - adr[1] = (area->winy/2.0)+(area->winy/2.0)*vec4[1]/vec4[3]; + adr[0] = (float)(area->winx/2.0f)+(area->winx/2.0f)*vec4[0]/vec4[3]; + adr[1] = (float)(area->winy/2.0f)+(area->winy/2.0f)*vec4[1]/vec4[3]; } else { - adr[0] = adr[1] = 0.0; + adr[0] = adr[1] = 0.0f; } } @@ -1119,7 +1119,7 @@ void viewmove(int mode) int i; float viewmat[3][3]; - static const float thres = 0.93; //cos(20 deg); + static const float thres = 0.93f; //cos(20 deg); static float snapquats[39][6] = { /*{q0, q1, q3, q4, view, oposite_direction}*/ @@ -2164,20 +2164,20 @@ void centerview() /* like a localview without local! */ afm[0]= (max[0]-min[0]); afm[1]= (max[1]-min[1]); afm[2]= (max[2]-min[2]); - size= 0.7*MAX3(afm[0], afm[1], afm[2]); + size= 0.7f*MAX3(afm[0], afm[1], afm[2]); - if(size <= G.vd->near*1.5) size= G.vd->near*1.5; + if(size <= G.vd->near*1.5f) size= G.vd->near*1.5f; - new_ofs[0]= -(min[0]+max[0])/2.0; - new_ofs[1]= -(min[1]+max[1])/2.0; - new_ofs[2]= -(min[2]+max[2])/2.0; + new_ofs[0]= -(min[0]+max[0])/2.0f; + new_ofs[1]= -(min[1]+max[1])/2.0f; + new_ofs[2]= -(min[2]+max[2])/2.0f; new_dist = size; /* correction for window aspect ratio */ if(curarea->winy>2 && curarea->winx>2) { size= (float)curarea->winx/(float)curarea->winy; - if(size<1.0) size= 1.0/size; + if(size<1.0f) size= 1.0f/size; new_dist*= size; } @@ -2189,7 +2189,7 @@ void centerview() /* like a localview without local! */ float orig_lens= G.vd->lens; G.vd->persp=V3D_PERSP; - G.vd->dist= 0.0; + G.vd->dist= 0.0f; view_settings_from_ob(G.vd->camera, G.vd->ofs, NULL, NULL, &G.vd->lens); smooth_view(G.vd, new_ofs, NULL, &new_dist, &orig_lens); } else { @@ -2272,8 +2272,8 @@ void view3d_home(int center) int ok= 1, onedone=0; if(center) { - min[0]= min[1]= min[2]= 0.0; - max[0]= max[1]= max[2]= 0.0; + min[0]= min[1]= min[2]= 0.0f; + max[0]= max[1]= max[2]= 0.0f; } else { INIT_MINMAX(min, max); @@ -2290,7 +2290,7 @@ void view3d_home(int center) afm[0]= (max[0]-min[0]); afm[1]= (max[1]-min[1]); afm[2]= (max[2]-min[2]); - size= 0.7*MAX3(afm[0], afm[1], afm[2]); + size= 0.7f*MAX3(afm[0], afm[1], afm[2]); if(size==0.0) ok= 0; if(ok) { @@ -2298,14 +2298,14 @@ void view3d_home(int center) float new_ofs[3]; new_dist = size; - new_ofs[0]= -(min[0]+max[0])/2.0; - new_ofs[1]= -(min[1]+max[1])/2.0; - new_ofs[2]= -(min[2]+max[2])/2.0; + new_ofs[0]= -(min[0]+max[0])/2.0f; + new_ofs[1]= -(min[1]+max[1])/2.0f; + new_ofs[2]= -(min[2]+max[2])/2.0f; // correction for window aspect ratio if(curarea->winy>2 && curarea->winx>2) { size= (float)curarea->winx/(float)curarea->winy; - if(size<1.0) size= 1.0/size; + if(size<1.0) size= 1.0f/size; new_dist*= size; } @@ -2340,7 +2340,7 @@ void view3d_align_axis_to_vector(View3D *v3d, int axisidx, float vec[3]) VECCOPY(norm, vec); Normalize(norm); - angle= acos(Inpf(alignaxis, norm)); + angle= (float)acos(Inpf(alignaxis, norm)); Crossf(axis, alignaxis, norm); VecRotToQuat(axis, -angle, new_quat); @@ -2439,8 +2439,8 @@ void smooth_view(View3D *v3d, float *ofs, float *quat, float *dist, float *lens) step = (float)((time_current-time_start) / time_allowed); /* ease in/out */ - if (step < 0.5) step = pow(step*2, 2)/2; - else step = 1-(pow(2*(1-step) ,2)/2); + if (step < 0.5) step = (float)pow(step*2, 2)/2; + else step = (float)1-(pow(2*(1-step),2)/2); step_inv = 1-step; From 81c21128bb598f3b037264b5df1966d22ab24ad3 Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Mon, 20 Oct 2008 09:24:25 +0000 Subject: [PATCH 03/38] A few warnings missed in previous sweep --- source/blender/src/drawaction.c | 48 ++++++++++++++++---------------- source/blender/src/drawgpencil.c | 8 +++--- source/blender/src/gpencil.c | 2 +- 3 files changed, 29 insertions(+), 29 deletions(-) diff --git a/source/blender/src/drawaction.c b/source/blender/src/drawaction.c index 47766cc6377..0d7a720dd1e 100644 --- a/source/blender/src/drawaction.c +++ b/source/blender/src/drawaction.c @@ -122,7 +122,7 @@ static void meshactionbuts(SpaceAction *saction, Object *ob, Key *key) * correctly *grumble* */ mywinset(curarea->win); - myortho2(-0.375f, curarea->winx-0.375, G.v2d->cur.ymin, G.v2d->cur.ymax); + myortho2(-0.375f, curarea->winx-0.375f, G.v2d->cur.ymin, G.v2d->cur.ymax); sprintf(str, "actionbuttonswin %d", curarea->win); block= uiNewBlock (&curarea->uiblocks, str, UI_EMBOSS, UI_HELV, curarea->win); @@ -133,7 +133,7 @@ static void meshactionbuts(SpaceAction *saction, Object *ob, Key *key) /* make the little 'open the sliders' widget */ // should eventually be removed BIF_ThemeColor(TH_FACE); // this slot was open... (???... Aligorith) - glRects(2, y + 2*CHANNELHEIGHT - 2, ACTWIDTH - 2, y + CHANNELHEIGHT + 2); + glRects(2, (short)y + 2*CHANNELHEIGHT - 2, ACTWIDTH - 2, (short)y + CHANNELHEIGHT + 2); glColor3ub(0, 0, 0); glRasterPos2f(4, y + CHANNELHEIGHT + 6); BMF_DrawString(G.font, "Sliders"); @@ -144,7 +144,7 @@ static void meshactionbuts(SpaceAction *saction, Object *ob, Key *key) ACTWIDTH = NAMEWIDTH; but=uiDefIconButBitS(block, TOG, SACTION_SLIDERS, B_REDR, ICON_DISCLOSURE_TRI_RIGHT, - NAMEWIDTH - XIC - 5, y + CHANNELHEIGHT, + NAMEWIDTH - XIC - 5, (short)y + CHANNELHEIGHT, XIC,YIC-2, &(G.saction->flag), 0, 0, 0, 0, "Show action window sliders"); @@ -155,7 +155,7 @@ static void meshactionbuts(SpaceAction *saction, Object *ob, Key *key) else { but= uiDefIconButBitS(block, TOG, SACTION_SLIDERS, B_REDR, ICON_DISCLOSURE_TRI_DOWN, - NAMEWIDTH - XIC - 5, y + CHANNELHEIGHT, + NAMEWIDTH - XIC - 5, (short)y + CHANNELHEIGHT, XIC,YIC-2, &(G.saction->flag), 0, 0, 0, 0, "Hide action window sliders"); @@ -171,7 +171,7 @@ static void meshactionbuts(SpaceAction *saction, Object *ob, Key *key) uiBlockSetEmboss(block, UI_EMBOSS); for (i=1; i < key->totkey; i++) { make_rvk_slider(block, ob, i, - x, y, SLIDERWIDTH-2, CHANNELHEIGHT-1, "Slider to control Shape Keys"); + (int)x, (int)y, SLIDERWIDTH-2, CHANNELHEIGHT-1, "Slider to control Shape Keys"); y-=CHANNELHEIGHT+CHANNELSKIP; @@ -294,7 +294,7 @@ static void action_icu_buts(SpaceAction *saction) * correctly *grumble* */ mywinset(curarea->win); - myortho2(-0.375, curarea->winx-0.375, G.v2d->cur.ymin, G.v2d->cur.ymax); + myortho2(-0.375f, curarea->winx-0.375f, G.v2d->cur.ymin, G.v2d->cur.ymax); sprintf(str, "actionbuttonswin %d", curarea->win); block= uiNewBlock (&curarea->uiblocks, str, @@ -318,7 +318,7 @@ static void action_icu_buts(SpaceAction *saction) /* draw backdrop first */ BIF_ThemeColor(TH_FACE); // change this color... it's ugly - glRects(NAMEWIDTH, G.v2d->cur.ymin, NAMEWIDTH+SLIDERWIDTH, G.v2d->cur.ymax); + glRects(NAMEWIDTH, (short)G.v2d->cur.ymin, NAMEWIDTH+SLIDERWIDTH, (short)G.v2d->cur.ymax); uiBlockSetEmboss(block, UI_EMBOSS); for (ale= act_data.first; ale; ale= ale->next) { @@ -339,7 +339,7 @@ static void action_icu_buts(SpaceAction *saction) /* only show if action channel is selected */ if (SEL_ACHAN(achan)) { make_icu_slider(block, icu, - x, y, SLIDERWIDTH-2, CHANNELHEIGHT-2, + (int)x, (int)y, SLIDERWIDTH-2, CHANNELHEIGHT-2, "Slider to control current value of Constraint Influence"); } } @@ -352,7 +352,7 @@ static void action_icu_buts(SpaceAction *saction) /* only show if action channel is selected */ if (SEL_ACHAN(achan)) { make_icu_slider(block, icu, - x, y, SLIDERWIDTH-2, CHANNELHEIGHT-2, + (int)x, (int)y, SLIDERWIDTH-2, CHANNELHEIGHT-2, "Slider to control current value of IPO-Curve"); } } @@ -383,7 +383,7 @@ void draw_cfra_action (void) float vec[2]; /* Draw a light green line to indicate current frame */ - vec[0]= (G.scene->r.cfra); + vec[0]= (float)(G.scene->r.cfra); vec[0]*= G.scene->r.framelen; vec[1]= G.v2d->cur.ymin; @@ -820,13 +820,13 @@ static void draw_channel_names(void) /* draw protect 'lock' */ if (protect > -1) { offset = 16; - BIF_icon_draw(NAMEWIDTH-offset, yminc, protect); + BIF_icon_draw((float)NAMEWIDTH-offset, yminc, protect); } /* draw mute 'eye' */ if (mute > -1) { offset += 16; - BIF_icon_draw(NAMEWIDTH-offset, yminc, mute); + BIF_icon_draw((float)(NAMEWIDTH-offset), yminc, mute); } } @@ -838,7 +838,7 @@ static void draw_channel_names(void) BLI_freelistN(&act_data); /* re-adjust view matrices for correct scaling */ - myortho2(0, NAMEWIDTH, 0, (ofsy+G.v2d->mask.ymax) - (ofsy+G.v2d->mask.ymin)); // Scaling + myortho2(0, NAMEWIDTH, 0, (float)(ofsy+G.v2d->mask.ymax) - (ofsy+G.v2d->mask.ymin)); // Scaling } /* sets or clears hidden flags */ @@ -969,7 +969,7 @@ static void draw_channel_strips(void) if (sel) glColor4ub(col1[0], col1[1], col1[2], 0x22); else glColor4ub(col2[0], col2[1], col2[2], 0x22); } - glRectf(frame1_x, channel_y-CHANNELHEIGHT/2, G.v2d->hor.xmax, channel_y+CHANNELHEIGHT/2); + glRectf((float)frame1_x, (float)channel_y-CHANNELHEIGHT/2, (float)G.v2d->hor.xmax, (float)channel_y+CHANNELHEIGHT/2); if (ale->datatype == ALE_GROUP) { if (sel) glColor4ub(col1a[0], col1a[1], col1a[2], 0x22); @@ -979,7 +979,7 @@ static void draw_channel_strips(void) if (sel) glColor4ub(col1[0], col1[1], col1[2], 0x22); else glColor4ub(col2[0], col2[1], col2[2], 0x22); } - glRectf(act_start, channel_y-CHANNELHEIGHT/2, act_end, channel_y+CHANNELHEIGHT/2); + glRectf((float)act_start, (float)channel_y-CHANNELHEIGHT/2, (float)act_end, (float)channel_y+CHANNELHEIGHT/2); } else if (datatype == ACTCONT_SHAPEKEY) { gla2DDrawTranslatePt(di, 1, y, &frame1_x, &channel_y); @@ -988,11 +988,11 @@ static void draw_channel_strips(void) * get a desaturated orange background */ glColor4ub(col2[0], col2[1], col2[2], 0x22); - glRectf(0, channel_y-CHANNELHEIGHT/2, frame1_x, channel_y+CHANNELHEIGHT/2); + glRectf(0.0f, (float)channel_y-CHANNELHEIGHT/2, (float)frame1_x, (float)channel_y+CHANNELHEIGHT/2); /* frames one and higher get a saturated orange background */ glColor4ub(col2[0], col2[1], col2[2], 0x44); - glRectf(frame1_x, channel_y-CHANNELHEIGHT/2, G.v2d->hor.xmax, channel_y+CHANNELHEIGHT/2); + glRectf((float)frame1_x, (float)channel_y-CHANNELHEIGHT/2, (float)G.v2d->hor.xmax, (float)channel_y+CHANNELHEIGHT/2.0f); } else if (datatype == ACTCONT_GPENCIL) { gla2DDrawTranslatePt(di, G.v2d->cur.xmin, y, &frame1_x, &channel_y); @@ -1000,12 +1000,12 @@ static void draw_channel_strips(void) /* frames less than one get less saturated background */ if (sel) glColor4ub(col1[0], col1[1], col1[2], 0x22); else glColor4ub(col2[0], col2[1], col2[2], 0x22); - glRectf(0, channel_y-CHANNELHEIGHT/2, frame1_x, channel_y+CHANNELHEIGHT/2); + glRectf(0.0f, (float)channel_y-CHANNELHEIGHT/2, (float)frame1_x, (float)channel_y+CHANNELHEIGHT/2); /* frames one and higher get a saturated background */ if (sel) glColor4ub(col1[0], col1[1], col1[2], 0x44); else glColor4ub(col2[0], col2[1], col2[2], 0x44); - glRectf(frame1_x, channel_y-CHANNELHEIGHT/2, G.v2d->hor.xmax, channel_y+CHANNELHEIGHT/2); + glRectf((float)frame1_x, (float)channel_y-CHANNELHEIGHT/2, (float)G.v2d->hor.xmax, (float)channel_y+CHANNELHEIGHT/2); } } @@ -1061,8 +1061,8 @@ static void draw_channel_strips(void) cpack(0x0); glBegin(GL_LINES); - glVertex2f(frame1_x, G.v2d->mask.ymin - 100); - glVertex2f(frame1_x, G.v2d->mask.ymax); + glVertex2f((float)frame1_x, (float)G.v2d->mask.ymin - 100); + glVertex2f((float)frame1_x, (float)G.v2d->mask.ymax); glEnd(); } @@ -1335,7 +1335,7 @@ void drawactionspace(ScrArea *sa, void *spacedata) /* Draw scroll */ mywinset(curarea->win); // reset scissor too if (curarea->winx>SCROLLB+10 && curarea->winy>SCROLLH+10) { - myortho2(-0.375f, curarea->winx-0.375, -0.375f, curarea->winy-0.375); + myortho2(-0.375f, curarea->winx-0.375f, -0.375f, curarea->winy-0.375f); if (G.v2d->scroll) drawscroll(0); } @@ -1361,7 +1361,7 @@ void drawactionspace(ScrArea *sa, void *spacedata) } mywinset(curarea->win); // reset scissor too - myortho2(-0.375f, curarea->winx-0.375, -0.375f, curarea->winy-0.375); + myortho2(-0.375f, curarea->winx-0.375f, -0.375f, curarea->winy-0.375f); draw_area_emboss(sa); /* it is important to end a view in a transform compatible with buttons */ @@ -1584,7 +1584,7 @@ static void draw_keylist(gla2DDrawInfo *di, ListBase *keys, ListBase *blocks, fl BIF_ThemeColor4(TH_STRIP_SELECT); else BIF_ThemeColor4(TH_STRIP); - glRectf(sc_xa, sc_ya-3, sc_xb, sc_yb+5); + glRectf((float)sc_xa, (float)sc_ya-3, (float)sc_xb, (float)sc_yb+5); } } } diff --git a/source/blender/src/drawgpencil.c b/source/blender/src/drawgpencil.c index 28f7c7476aa..1b3d869b2f8 100644 --- a/source/blender/src/drawgpencil.c +++ b/source/blender/src/drawgpencil.c @@ -187,7 +187,7 @@ static void gp_drawui_layer (uiBlock *block, bGPdata *gpd, bGPDlayer *gpl, short /* rounded header */ if (active) uiBlockSetCol(block, TH_BUT_ACTION); rb_col= (active)?-20:20; - uiDefBut(block, ROUNDBOX, B_REDR, "", *xco-8, *yco-2, width, 24, NULL, 5.0, 0.0, 15, rb_col-20, ""); + uiDefBut(block, ROUNDBOX, B_REDR, "", *xco-8, *yco-2, width, 24, NULL, 5.0, 0.0, 15.0, (float)(rb_col-20), ""); if (active) uiBlockSetCol(block, TH_AUTO); /* lock toggle */ @@ -243,7 +243,7 @@ static void gp_drawui_layer (uiBlock *block, bGPdata *gpd, bGPDlayer *gpl, short /* draw backdrop */ if (active) uiBlockSetCol(block, TH_BUT_ACTION); - uiDefBut(block, ROUNDBOX, B_DIFF, "", *xco-8, *yco-height, width, height-1, NULL, 5.0, 0.0, 12, rb_col, ""); + uiDefBut(block, ROUNDBOX, B_DIFF, "", *xco-8, *yco-height, width, height-1, NULL, 5.0, 0.0, 12.0, (float)rb_col, ""); if (active) uiBlockSetCol(block, TH_AUTO); /* draw settings */ @@ -794,7 +794,7 @@ static void gp_draw_data (bGPdata *gpd, int offsx, int offsy, int winx, int winy QUATCOPY(color, gpl->color); // just for copying 4 array elements QUATCOPY(tcolor, gpl->color); // additional copy of color (for ghosting) glColor4f(color[0], color[1], color[2], color[3]); - glPointSize(gpl->thickness + 2); + glPointSize((float)(gpl->thickness + 2)); /* draw 'onionskins' (frame left + right) */ if (gpl->flag & GP_LAYER_ONIONSKIN) { @@ -952,7 +952,7 @@ void draw_gpencil_2dimage (ScrArea *sa, ImBuf *ibuf) float zoom, zoomx, zoomy; /* calculate accessory values */ - zoom= (float)SEQ_ZOOM_FAC(sseq->zoom); + zoom= (float)(SEQ_ZOOM_FAC(sseq->zoom)); if (sseq->mainb == SEQ_DRAW_IMG_IMBUF) { zoomx = zoom * ((float)G.scene->r.xasp / (float)G.scene->r.yasp); zoomy = zoom; diff --git a/source/blender/src/gpencil.c b/source/blender/src/gpencil.c index 3c611d00140..497443edffd 100644 --- a/source/blender/src/gpencil.c +++ b/source/blender/src/gpencil.c @@ -1879,7 +1879,7 @@ static void gp_paint_initstroke (tGPsdata *p, short paintmode) p->gpd->sbuffer_sflag |= GP_STROKE_2DIMAGE; /* calculate zoom factor */ - zoom= SEQ_ZOOM_FAC(sseq->zoom); + zoom= (float)(SEQ_ZOOM_FAC(sseq->zoom)); if (sseq->mainb == SEQ_DRAW_IMG_IMBUF) { zoomx = zoom * ((float)G.scene->r.xasp / (float)G.scene->r.yasp); zoomy = zoom; From 25859cf1f76d5c2363672bf17f5e328455d1f6af Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Mon, 20 Oct 2008 09:35:07 +0000 Subject: [PATCH 04/38] Another constraint panel (in Armature Editing Panels) bugfix. This time, when adding a new constraint using vertical layout. --- source/blender/src/buttons_editing.c | 2 +- source/blender/src/buttons_object.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/source/blender/src/buttons_editing.c b/source/blender/src/buttons_editing.c index dbf7e76d5f6..b586302053b 100644 --- a/source/blender/src/buttons_editing.c +++ b/source/blender/src/buttons_editing.c @@ -6645,7 +6645,7 @@ void editing_panels() editing_panel_links(ob); editing_panel_curve_type(ob, cu); editing_panel_modifiers(ob); -// editing_panel_shapes(ob); +// editing_panel_shapes(ob); /* there are some backend things that are not ready for this yet */ if(G.obedit) { editing_panel_curve_tools(ob, cu); editing_panel_curve_tools1(ob, cu); diff --git a/source/blender/src/buttons_object.c b/source/blender/src/buttons_object.c index c86d5193a5a..841a55d7ae1 100644 --- a/source/blender/src/buttons_object.c +++ b/source/blender/src/buttons_object.c @@ -1847,6 +1847,7 @@ void do_constraintbuts(unsigned short event) case B_CONSTRAINT_TEST: allqueue(REDRAWVIEW3D, 0); allqueue(REDRAWBUTSOBJECT, 0); + allqueue(REDRAWBUTSEDIT, 0); break; // no handling case B_CONSTRAINT_INF: /* influence; do not execute actions for 1 dag_flush */ From 47345cfd780a469bca4507d9b8d8f16dc56a2022 Mon Sep 17 00:00:00 2001 From: Nathan Letwory Date: Mon, 20 Oct 2008 12:33:31 +0000 Subject: [PATCH 05/38] === Blender Python API === After some discussion with Campbell, changed the way cstruct sizeof is fetched. Moved DataSize() to Blender.Types.CSizeof(Blendertype). Supported types return sizeof(data struct), otherwise -1. To quickly check what types are supported: import Blender.Types as bt x = dir(bt) for t in x: if t[0] != '_': s = 'bt.CSizeof(bt.' + t + ')' print t,"=", eval(s) --- source/blender/python/api2_2x/Armature.c | 24 ----- source/blender/python/api2_2x/Material.c | 9 -- source/blender/python/api2_2x/Mesh.c | 31 ------ source/blender/python/api2_2x/Object.c | 12 --- source/blender/python/api2_2x/Types.c | 129 ++++++++++++++++++++++- 5 files changed, 126 insertions(+), 79 deletions(-) diff --git a/source/blender/python/api2_2x/Armature.c b/source/blender/python/api2_2x/Armature.c index dab2d49df0c..aa3ef82a3e8 100644 --- a/source/blender/python/api2_2x/Armature.c +++ b/source/blender/python/api2_2x/Armature.c @@ -1295,27 +1295,6 @@ static PyObject *M_Armature_New(PyObject * self, PyObject * args) return (PyObject *)obj; } -static PyObject *M_Armature_DataSize(PyObject * self, PyObject *args) -{ - int t = 0; - int ret = 0; - if( !PyArg_ParseTuple(args, "|i", &t)) - return EXPP_ReturnPyObjError( PyExc_TypeError, - "expected nothing or an int as argument" ); - - switch(t) { - case 0: - ret = sizeof(struct bArmature); - break; - default: - ret = sizeof(struct Bone); - break; - } - - return PyInt_FromLong(ret); -} - - //-------------------MODULE METHODS DEFINITION----------------------------- static char M_Armature_Get_doc[] = "(name) - return the armature with the name 'name', \ @@ -1324,12 +1303,9 @@ static char M_Armature_Get_doc[] = "(name) - return the armature with the name ' static char M_Armature_New_doc[] = "(name) - return a new armature object."; -static char M_Armature_DataSize_doc[] = "(type) - return sizeof of either Armature (0) or Bone (1)."; - struct PyMethodDef M_Armature_methods[] = { {"Get", M_Armature_Get, METH_VARARGS, M_Armature_Get_doc}, {"New", M_Armature_New, METH_VARARGS, M_Armature_New_doc}, - {"DataSize", M_Armature_DataSize, METH_VARARGS, M_Armature_DataSize_doc}, {NULL, NULL, 0, NULL} }; //------------------VISIBLE PROTOTYPE IMPLEMENTATION----------------------- diff --git a/source/blender/python/api2_2x/Material.c b/source/blender/python/api2_2x/Material.c index 02fdc32c5c9..2e6bd326fb6 100644 --- a/source/blender/python/api2_2x/Material.c +++ b/source/blender/python/api2_2x/Material.c @@ -207,7 +207,6 @@ static PyObject *M_Material_New( PyObject * self, PyObject * args, PyObject * keywords ); static PyObject *M_Material_Get( PyObject * self, PyObject * args ); -static PyObject *M_Material_DataSize(PyObject *unused); /*****************************************************************************/ /* The following string definitions are used for documentation strings. In */ @@ -232,8 +231,6 @@ struct PyMethodDef M_Material_methods[] = { M_Material_New_doc}, {"Get", M_Material_Get, METH_VARARGS, M_Material_Get_doc}, {"get", M_Material_Get, METH_VARARGS, M_Material_Get_doc}, - {"DataSize", ( PyCFunction ) M_Material_DataSize, METH_NOARGS, - "Get sizeof() of Material"}, {NULL, NULL, 0, NULL} }; @@ -338,12 +335,6 @@ static PyObject *M_Material_Get( PyObject * self, PyObject * args ) } } -static PyObject *M_Material_DataSize(PyObject *unused) -{ - return PyInt_FromLong(sizeof(Material)); -} - - static PyObject *Material_ModesDict( void ) { PyObject *Modes = PyConstant_New( ); diff --git a/source/blender/python/api2_2x/Mesh.c b/source/blender/python/api2_2x/Mesh.c index fdecd66f5e2..d513a8be4db 100644 --- a/source/blender/python/api2_2x/Mesh.c +++ b/source/blender/python/api2_2x/Mesh.c @@ -8637,35 +8637,6 @@ static PyObject *M_Mesh_MVert( PyObject * self_unused, PyObject * args ) return PVert_CreatePyObject( &vert ); } -static PyObject *M_Mesh_DataSize(PyObject * self, PyObject *args) -{ - int t = 0; - int ret = 0; - if( !PyArg_ParseTuple(args, "|i", &t)) - return EXPP_ReturnPyObjError( PyExc_TypeError, - "expected nothing or an int as argument" ); - - switch(t) { - case 0: - ret = sizeof(Mesh); - break; - case 1: - ret = sizeof(MVert); - break; - case 2: - ret = sizeof(MEdge); - break; - case 3: - ret = sizeof(MFace); - break; - default: - ret = sizeof(Mesh); - break; - } - - return PyInt_FromLong(ret); -} - static PyObject *M_Mesh_Modes( PyObject * self_unused, PyObject * args ) { int modes = 0; @@ -8697,8 +8668,6 @@ static struct PyMethodDef M_Mesh_methods[] = { "Create a new MVert"}, {"Mode", (PyCFunction)M_Mesh_Modes, METH_VARARGS, "Get/set edit selection mode(s)"}, - {"DataSize", (PyCFunction)M_Mesh_DataSize, METH_VARARGS, - "Get sizeof() of Mesh (0), MVert (1), MEdge (2) or MFace (3)"}, {NULL, NULL, 0, NULL}, }; diff --git a/source/blender/python/api2_2x/Object.c b/source/blender/python/api2_2x/Object.c index f14ac81fe24..1282b9bd82c 100644 --- a/source/blender/python/api2_2x/Object.c +++ b/source/blender/python/api2_2x/Object.c @@ -290,7 +290,6 @@ static PyObject *M_Object_New( PyObject * self, PyObject * args ); PyObject *M_Object_Get( PyObject * self, PyObject * args ); static PyObject *M_Object_GetSelected( PyObject * self ); static PyObject *M_Object_Duplicate( PyObject * self, PyObject * args, PyObject *kwd); -static PyObject *M_Object_DataSize( PyObject * self ); /* HELPER FUNCTION FOR PARENTING */ static PyObject *internal_makeParent(Object *parent, PyObject *py_child, int partype, int noninverse, int fast, int v1, int v2, int v3, char *bonename); @@ -319,9 +318,6 @@ The active object is the first in the list, if visible"; static char M_Object_Duplicate_doc[] = "(linked) - Duplicate all selected, visible objects in the current scene"; -static char M_Object_DataSize_doc[] = - "() - return the sizeof(Object)"; - /*****************************************************************************/ /* Python method structure definition for Blender.Object module: */ /*****************************************************************************/ @@ -334,8 +330,6 @@ struct PyMethodDef M_Object_methods[] = { M_Object_GetSelected_doc}, {"Duplicate", ( PyCFunction ) M_Object_Duplicate, METH_VARARGS | METH_KEYWORDS, M_Object_Duplicate_doc}, - {"DataSize", ( PyCFunction ) M_Object_DataSize, METH_NOARGS, - M_Object_DataSize_doc}, {NULL, NULL, 0, NULL} }; @@ -1042,12 +1036,6 @@ static PyObject *M_Object_Duplicate( PyObject * self_unused, Py_RETURN_NONE; } -static PyObject *M_Object_DataSize(PyObject * self) -{ - return PyInt_FromLong(sizeof(Object)); -} - - /*****************************************************************************/ /* Python BPy_Object methods: */ /*****************************************************************************/ diff --git a/source/blender/python/api2_2x/Types.c b/source/blender/python/api2_2x/Types.c index 1ce19071885..10db016ab68 100644 --- a/source/blender/python/api2_2x/Types.c +++ b/source/blender/python/api2_2x/Types.c @@ -26,8 +26,10 @@ * ***** END GPL LICENSE BLOCK ***** */ -#include "Types.h" +#include "Types.h" #include "IDProp.h" +#include "gen_utils.h" +#include "BLI_blenlib.h" /* stuff pasted from the old Types.h is only need here now @@ -65,10 +67,130 @@ extern PyTypeObject ThemeSpace_Type; extern PyTypeObject ThemeUI_Type; extern PyTypeObject TimeLine_Type; +/* includes to get structs for CSizeof */ +#include "Armature.h" +#include "Bone.h" +#include "BezTriple.h" +#include "Camera.h" +#include "Constraint.h" +#include "Curve.h" +#include "CurNurb.h" +#include "Draw.h" +#include "Effect.h" +#include "Ipo.h" +#include "Ipocurve.h" +#include "Key.h" +#include "Lamp.h" +#include "Lattice.h" +#include "Library.h" +#include "Mathutils.h" +#include "Geometry.h" +#include "Mesh.h" +#include "Metaball.h" +#include "Modifier.h" +#include "NMesh.h" +#include "Node.h" +#include "Object.h" +#include "Group.h" +#include "Registry.h" +#include "Scene.h" +#include "Sound.h" +#include "SurfNurb.h" +#include "Sys.h" +#include "Text.h" +#include "Texture.h" +#include "Window.h" +#include "World.h" +#include "Particle.h" + char M_Types_doc[] = "The Blender Types module\n\n\ This module is a dictionary of all Blender Python types"; -struct PyMethodDef Null_methods[] = { {NULL, NULL, 0, NULL} }; +static PyObject *Types_CSizeof(PyObject * self, PyObject *o) +{ + int ret = 0; + char type[32]; + + if(o) { + sprintf(type, "%s", PyString_AsString(PyObject_Str(o))); + + if(BLI_streq(type, "")==1) { + ret = sizeof(struct bAction); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct bArmature); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct BezTriple); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Bone); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Camera); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Nurb); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Curve); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Group); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct IDProperty); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Image); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Ipo); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct IpoCurve); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Lamp); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Lattice); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct MCol); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct MEdge); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct MFace); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct MTex); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct MVert); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Material); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Mesh); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct MetaBall); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct ModifierData); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct ModifierData); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Object); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct bPose); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct RenderData); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Scene); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Nurb); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Curve); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Text); + } else if (BLI_streq(type, "")==1) { + ret = sizeof(struct Tex); + } else { + ret = -1; + } + } + + return PyInt_FromLong(ret); +} + +struct PyMethodDef M_Types_methods[] = { + {"CSizeof", Types_CSizeof, METH_O, + "(type) - Returns sizeof of the underlying C structure of the given type"}, + {NULL, NULL, 0, NULL} +}; @@ -145,7 +267,7 @@ PyObject *Types_Init( void ) PyObject *submodule, *dict; submodule = - Py_InitModule3( "Blender.Types", Null_methods, M_Types_doc ); + Py_InitModule3( "Blender.Types", M_Types_methods, M_Types_doc ); dict = PyModule_GetDict( submodule ); @@ -194,6 +316,7 @@ PyObject *Types_Init( void ) PyDict_SetItemString( dict, "CurveType", ( PyObject * ) &Curve_Type ); PyDict_SetItemString( dict, "IpoType", ( PyObject * ) &Ipo_Type ); + PyDict_SetItemString( dict, "IpoCurveType", ( PyObject * ) &IpoCurve_Type ); PyDict_SetItemString( dict, "MetaballType", ( PyObject * ) &Metaball_Type ); From fd1dcada60d614506641ef266b51f3a811a5c52b Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Mon, 20 Oct 2008 13:36:18 +0000 Subject: [PATCH 06/38] fix for [#17871] PLY file import: blender seems to loose vertex color information use Mesh rather then NMesh --- release/scripts/ply_export.py | 8 +- release/scripts/ply_import.py | 194 +++++++++++++++++++--------------- 2 files changed, 110 insertions(+), 92 deletions(-) diff --git a/release/scripts/ply_export.py b/release/scripts/ply_export.py index 19a4a60674e..46d08050302 100644 --- a/release/scripts/ply_export.py +++ b/release/scripts/ply_export.py @@ -143,10 +143,10 @@ def file_callback(filename): normal_key = rvec3d(normal) if faceUV: - uvcoord= tuple(uv[j]) + uvcoord= uv[j][0], 1.0-uv[j][1] uvcoord_key = rvec2d(uvcoord) elif vertexUV: - uvcoord= tuple(v.uvco) + uvcoord= v.uvco[0], 1.0-v.uvco[1] uvcoord_key = rvec2d(uvcoord) if vertexColors: color= col[j].r, col[j].g, col[j].b @@ -209,8 +209,8 @@ def file_callback(filename): for j, v in enumerate(f): if f.smooth: normal= rvec3d(v.no) else: normal= no - if faceUV: uvcoord= rvec2d(uv[j]) - elif vertexUV: uvcoord= rvec2d(v.uvco) + if faceUV: uvcoord= rvec2d((uv[j][0], 1.0-uv[j][1])) + elif vertexUV: uvcoord= rvec2d((v.uvco[0], 1.0-v.uvco[1])) if vertexColors: color= col[j].r, col[j].g, col[j].b file.write('%d ' % vdict[v.index][normal, uvcoord, color]) diff --git a/release/scripts/ply_import.py b/release/scripts/ply_import.py index 6b96777102a..302e21a0a43 100644 --- a/release/scripts/ply_import.py +++ b/release/scripts/ply_import.py @@ -2,13 +2,13 @@ """ Name: 'Stanford PLY (*.ply)...' -Blender: 241 +Blender: 248 Group: 'Import' Tip: 'Import a Stanford PLY file' """ __author__ = 'Bruce Merry' -__version__ = '0.92' +__version__ = '0.93' __bpydoc__ = """\ This script imports Stanford PLY files into Blender. It supports per-vertex normals, and per-face colours and texture coordinates. @@ -35,20 +35,20 @@ Run this script from "File->Import" and select the desired PLY file. # Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# Updated by Campbell Barton AKA Ideasman, 10% faster code. +# 20th Oct 2008, 0.93 - Updated by Campbell Barton AKA ideasman42, use Mesh rather then NMesh, dont import normals, vcolors work again. +# Updated by Campbell Barton AKA Ideasman42, 10% faster code. # Portions of this code are taken from mod_meshtools.py in Blender # 2.32. import Blender try: - import re, struct, StringIO + import re, struct except: struct= None -class element_spec: - name = '' - count = 0 +class element_spec(object): + __slots__ = 'name', 'count', 'properties' def __init__(self, name, count): self.name = name self.count = count @@ -64,10 +64,8 @@ class element_spec: if p.name == name: return i return -1 -class property_spec: - name = '' - list_type = '' - numeric_type = '' +class property_spec(object): + __slots__ = 'name', 'list_type', 'numeric_type' def __init__(self, name, list_type, numeric_type): self.name = name self.list_type = list_type @@ -117,14 +115,17 @@ class property_spec: else: return self.read_format(format, 1, self.numeric_type, stream)[0] -class object_spec: +class object_spec(object): + __slots__ = 'specs' 'A list of element_specs' - specs = [] - + def __init__(self): + self.specs = [] + def load(self, format, stream): return dict([(i.name,[i.load(format, stream) for j in xrange(i.count) ]) for i in self.specs]) ''' + # Longhand for above LC answer = {} for i in self.specs: answer[i.name] = [] @@ -176,7 +177,7 @@ def read(filename): if (len(tokens) < 3): print 'Invalid format line' return None - if (tokens[1] not in format_specs.keys()): + if (tokens[1] not in format_specs): # .keys()): # keys is implicit print 'Unknown format', tokens[1] return None if (tokens[2] != version): @@ -209,115 +210,132 @@ def read(filename): return (obj_spec, obj); - -def add_face(vertices, varr, indices, uvindices, colindices): - face = Blender.NMesh.Face([varr[i] for i in indices]) - for index in indices: - vertex = vertices[index]; - - if uvindices: - face.uv.append((vertex[uvindices[0]], 1.0 - vertex[uvindices[1]])) - face.mode &= ~Blender.NMesh.FaceModes.TEX - if colindices: - if not uvindices: face.uv.append((0, 0)) # Force faceUV - face.col.append(Blender.NMesh.Col(vertex[colindices[0]], vertex[colindices[1]], vertex[colindices[2]], 255)) - face.mode &= ~Blender.NMesh.FaceModes.TEX - return face - -def filesel_callback(filename): +def load_ply(filename): t = Blender.sys.time() - (obj_spec, obj) = read(filename) + obj_spec, obj = read(filename) if obj == None: print 'Invalid file' return - vmap = {} - varr = [] - uvindices = None - noindices = None - colindices = None + + uvindices = colindices = None + # noindices = None # Ignore normals + for el in obj_spec.specs: if el.name == 'vertex': vindices = vindices_x, vindices_y, vindices_z = (el.index('x'), el.index('y'), el.index('z')) - if el.index('nx') >= 0 and el.index('ny') >= 0 and el.index('nz') >= 0: - noindices = (el.index('nx'), el.index('ny'), el.index('nz')) - if el.index('s') >= 0 and el.index('t') >= 0: - uvindices = (el.index('s'), el.index('t')) - if el.index('red') >= 0 and el.index('green') and el.index('blue') >= 0: - colindices = (el.index('red'), el.index('green'), el.index('blue')) + # noindices = (el.index('nx'), el.index('ny'), el.index('nz')) + # if -1 in noindices: noindices = None + uvindices = (el.index('s'), el.index('t')) + if -1 in uvindices: uvindices = None + colindices = (el.index('red'), el.index('green'), el.index('blue')) + if -1 in colindices: colindices = None elif el.name == 'face': findex = el.index('vertex_indices') + + mesh_faces = [] + mesh_uvs = [] + mesh_colors = [] + + def add_face(vertices, indices, uvindices, colindices): + mesh_faces.append(indices) + if uvindices: mesh_uvs.append([ (vertices[index][uvindices[0]], 1.0 - vertices[index][uvindices[1]]) for index in indices]) + if colindices: mesh_colors.append([ (vertices[index][colindices[0]], vertices[index][colindices[1]], vertices[index][colindices[2]]) for index in indices]) + + + if uvindices or colindices: + # If we have Cols or UVs then we need to check the face order. + add_face_simple = add_face - - mesh = Blender.NMesh.GetRaw() - NMVert = Blender.NMesh.Vert - for v in obj['vertex']: - - if noindices > 0: - x,y,z,nx,ny,nz = vkey =\ - (v[vindices_x], v[vindices_y], v[vindices_z],\ - v[noindices[0]], v[noindices[1]], v[noindices[2]]) - else: - x,y,z = vkey = (v[vindices_x], v[vindices_y], v[vindices_z]) - #if not vmap.has_key(vkey): - try: # try uses 1 less dict lookup - varr.append(vmap[vkey]) - except: - nmv = NMVert(vkey[0], vkey[1], vkey[2]) - mesh.verts.append(nmv) - if noindices > 0: - nmv.no[0] = vkey[3] - nmv.no[1] = vkey[4] - nmv.no[2] = vkey[5] - vmap[vkey] = nmv - varr.append(vmap[vkey]) + # EVIL EEKADOODLE - face order annoyance. + def add_face(vertices, indices, uvindices, colindices): + if len(indices)==4: + if indices[2]==0 or indices[3]==0: + indices= indices[2], indices[3], indices[0], indices[1] + elif len(indices)==3: + if indices[2]==0: + indices= indices[1], indices[2], indices[0] + + add_face_simple(vertices, indices, uvindices, colindices) verts = obj['vertex'] if 'face' in obj: for f in obj['face']: ind = f[findex] - nind = len(ind) - if nind <= 4: - mesh.faces.append(add_face(verts, varr, ind, uvindices, colindices)) + len_ind = len(ind) + if len_ind <= 4: + add_face(verts, ind, uvindices, colindices) else: - for j in xrange(nind - 2): - mesh.faces.append(add_face(verts, varr, (ind[0], ind[j + 1], ind[j + 2]), uvindices, colindices)) - + # Fan fill the face + for j in xrange(len_ind - 2): + add_face(verts, (ind[0], ind[j + 1], ind[j + 2]), uvindices, colindices) - del obj # Reclaim memory + mesh = Blender.Mesh.New() + + mesh.verts.extend([(v[vindices_x], v[vindices_y], v[vindices_z]) for v in obj['vertex']]) + + if mesh_faces: + mesh.faces.extend(mesh_faces, smooth=True, ignoreDups=True) + + if uvindices or colindices: + if uvindices: mesh.faceUV = True + if colindices: mesh.vertexColors = True + + for i, f in enumerate(mesh.faces): + if uvindices: + ply_uv = mesh_uvs[i] + for j, uv in enumerate(f.uv): + uv[:] = ply_uv[j] + + if colindices: + ply_col = mesh_colors[i] + for j, col in enumerate(f.col): + col.r, col.g, col.b = ply_col[j] + + mesh.calcNormals() - ''' - if noindices: - normals = 1 - else: - normals = 0 - ''' objname = Blender.sys.splitext(Blender.sys.basename(filename))[0] scn= Blender.Scene.GetCurrent() scn.objects.selected = [] mesh.name= objname - scn.objects.new(mesh) + scn.objects.active = scn.objects.new(mesh) Blender.Redraw() Blender.Window.DrawProgressBar(1.0, '') - print '\nSuccessfully imported ' + Blender.sys.basename(filename) + ' ' + str(Blender.sys.time()-t) - - - + print '\nSuccessfully imported "%s" in %.3f sec' % (filename, Blender.sys.time()-t) def main(): if not struct: - Blender.Draw.PupMenu('This importer requires a full python install') + msg = 'This importer requires a full python install' + if Blender.mode == 'background': print msg + else: Blender.Draw.PupMenu(msg) return - Blender.Window.FileSelector(filesel_callback, 'Import PLY', '*.ply') + Blender.Window.FileSelector(load_ply, 'Import PLY', '*.ply') if __name__=='__main__': main() +''' +import bpy +import os +files = os.popen('find /fe/ply -iname "*.ply"').readlines() - - +files.sort() +tot = len(files) +for i, f in enumerate(files): + if i < 26 or i > 1000000: + continue + #if i != 12686: + # continue + + f = f.strip() + print f, i, tot + sce = bpy.data.scenes.new(f.split('/')[-1]) + bpy.data.scenes.active = sce + # Window. + load_ply(f) +''' \ No newline at end of file From bc55102eac2ac0dfba8f32530ac674213aedc477 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Mon, 20 Oct 2008 23:21:01 +0000 Subject: [PATCH 07/38] renamed WITH_BF_BPYDOC to WITH_BF_DOCS, added SConscript for building BGE docs too. --- SConstruct | 5 +++-- source/gameengine/PyDoc/SConscript | 28 ++++++++++++++++++++++++++++ tools/btools.py | 4 ++-- 3 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 source/gameengine/PyDoc/SConscript diff --git a/SConstruct b/SConstruct index f15aa8bfa22..48115a39b1d 100644 --- a/SConstruct +++ b/SConstruct @@ -577,6 +577,7 @@ if not env['WITHOUT_BF_INSTALL']: # TODO: build stubs and link into blenderplayer #------------ EPYDOC -if env['WITH_BF_BPYDOC']: - SConscript(['source/blender/python/api2_2x/doc/SConscript']) +if env['WITH_BF_DOCS']: + SConscript('source/blender/python/api2_2x/doc/SConscript') + SConscript('source/gameengine/PyDoc/SConscript') diff --git a/source/gameengine/PyDoc/SConscript b/source/gameengine/PyDoc/SConscript new file mode 100644 index 00000000000..3d1aa66bc69 --- /dev/null +++ b/source/gameengine/PyDoc/SConscript @@ -0,0 +1,28 @@ +#!/usr/bin/python +Import ('env') + + +from optparse import OptionParser +try: + import epydoc +except ImportError: + print "No epydoc install detected, Python API Docs will not be generated " +if epydoc: + from epydoc.docbuilder import build_doc_index + from epydoc import cli + names = env.Glob("source/gameengine/PyDoc/*.py") + docindex = build_doc_index(names) + optvalues = cli.OPTION_DEFAULTS + optvalues["verbose"] = 1 + optvalues["target"] = env["BF_DOCDIR"]+"/BGE_API/" + optvalues["url"] = "http://www.blender.org" + optvalues["top"] = "Game Engine API" + optvalues["name"] = "Blender" + optvalues["noprivate"] = 1 + optvalues["noframes"] = 1 + optvalues["names"] = names + optparser = OptionParser() + optparser.set_defaults(**optvalues) + (options, args) = optparser.parse_args() + cli.write_html(docindex, options) + diff --git a/tools/btools.py b/tools/btools.py index 9db7d48cc98..3112e61918a 100755 --- a/tools/btools.py +++ b/tools/btools.py @@ -68,7 +68,7 @@ def validate_arguments(args, bc): 'BF_FANCY', 'BF_QUIET', 'BF_X264_CONFIG', 'BF_XVIDCORE_CONFIG', - 'WITH_BF_BPYDOC', + 'WITH_BF_DOCS', ] arg_list = ['BF_DEBUG', 'BF_QUIET', 'BF_CROSS', 'BF_UPDATE', @@ -353,7 +353,7 @@ def read_opts(cfg, args): ('BF_X264_CONFIG', 'configuration flags for x264', ''), ('BF_XVIDCORE_CONFIG', 'configuration flags for xvidcore', ''), - (BoolOption('WITH_BF_BPYDOC', 'Generate BPY API documentation', 'false')), + (BoolOption('WITH_BF_DOCS', 'Generate API documentation', 'false')), ('BF_CONFIG', 'SCons python config file used to set default options', 'user_config.py'), From ff2fcdf34edb85c7c891a9d3dc99f92a98bde4aa Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Tue, 21 Oct 2008 00:21:02 +0000 Subject: [PATCH 08/38] py 2.3 compat for lightwave_import and wizard_curve2tree --- release/scripts/export_obj.py | 2 +- release/scripts/lightwave_import.py | 6 ++++++ release/scripts/wizard_curve2tree.py | 4 +++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/release/scripts/export_obj.py b/release/scripts/export_obj.py index f99a949fbae..79a224d63c3 100644 --- a/release/scripts/export_obj.py +++ b/release/scripts/export_obj.py @@ -678,7 +678,7 @@ def write_ui(filename): Draw.Label('Blender Objects as OBJ:', ui_x+9, ui_y+59, 220, 20) Draw.BeginAlign() - EXPORT_BLEN_OBS = Draw.Toggle('Objects', EVENT_REDRAW, ui_x+9, ui_y+40, 60, 20, EXPORT_BLEN_OBS.val, 'Export blender objects as "OBJ objects".', do_split) + EXPORT_BLEN_OBS = Draw.Toggle('Objects', EVENT_REDRAW, ui_x+9, ui_y+39, 60, 20, EXPORT_BLEN_OBS.val, 'Export blender objects as "OBJ objects".', do_split) EXPORT_GROUP_BY_OB = Draw.Toggle('Groups', EVENT_REDRAW, ui_x+69, ui_y+39, 60, 20, EXPORT_GROUP_BY_OB.val, 'Export blender objects as "OBJ Groups".', do_split) EXPORT_GROUP_BY_MAT = Draw.Toggle('Material Groups', EVENT_REDRAW, ui_x+129, ui_y+39, 100, 20, EXPORT_GROUP_BY_MAT.val, 'Group by materials.', do_split) Draw.EndAlign() diff --git a/release/scripts/lightwave_import.py b/release/scripts/lightwave_import.py index 2049fbd2380..6d02467cef8 100644 --- a/release/scripts/lightwave_import.py +++ b/release/scripts/lightwave_import.py @@ -106,6 +106,12 @@ try: except: struct= chunk= cStringIO= None +# python 2.3 has no reversed() iterator. this will only work on lists and tuples +try: + reversed +except: + def reversed(l): return l[::-1] + ### # Debuggin disabled in release. ### # do a search replace to enabe debug prints ### DEBUG = False diff --git a/release/scripts/wizard_curve2tree.py b/release/scripts/wizard_curve2tree.py index eb27f1ca0f5..84b2cc76132 100644 --- a/release/scripts/wizard_curve2tree.py +++ b/release/scripts/wizard_curve2tree.py @@ -266,7 +266,9 @@ class tree: brch.calcData() # Sort from big to small, so big branches get priority - self.branches_all.sort( key = lambda brch: -brch.bpoints[0].radius ) + # Py 2.3 dosnt have keywords in sort + try: self.branches_all.sort( key = lambda brch: -brch.bpoints[0].radius ) + except: self.branches_all.sort( lambda brch_a, brch_b: cmp(brch_b.bpoints[0].radius, brch_a.bpoints[0].radius) ) def closestBranchPt(self, co): From 11afafb01e42803f578c97a966807e5e5baaefb1 Mon Sep 17 00:00:00 2001 From: Martin Poirier Date: Tue, 21 Oct 2008 01:11:18 +0000 Subject: [PATCH 09/38] [#17873] "switch direction" for bones can cause infinite loop Stop the infinite loop, but it could be loosing parent relations that it kept before. Aligorith needs to review. --- source/blender/src/editarmature.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/source/blender/src/editarmature.c b/source/blender/src/editarmature.c index d5e5b5a1c4a..ef6be4a010d 100644 --- a/source/blender/src/editarmature.c +++ b/source/blender/src/editarmature.c @@ -3297,6 +3297,9 @@ void switch_direction_armature (void) else ebo->flag &= ~BONE_CONNECTED; + child->parent = NULL; + child->flag &= ~BONE_CONNECTED; + /* FIXME: other things that need fixing? * i.e. roll? */ From 3ac142e65459a0c016397cce53debfca9137c475 Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Tue, 21 Oct 2008 01:40:47 +0000 Subject: [PATCH 10/38] #17873: "switch direction" for bones can cause infinite loop Second attempt at fixing this bug. Previous fix caused segfault when all bones in a chain are selected. Now it should segments which are selected (i.e. get swapped) will get unparented from segments that aren't (i.e. aren't swapped, so are still in old orientation) --- source/blender/src/editarmature.c | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/source/blender/src/editarmature.c b/source/blender/src/editarmature.c index ef6be4a010d..61ca5c09877 100644 --- a/source/blender/src/editarmature.c +++ b/source/blender/src/editarmature.c @@ -3277,7 +3277,8 @@ void switch_direction_armature (void) EditBone *ebo, *child=NULL, *parent=NULL; /* loop over bones in chain */ - for (ebo= chain->data; ebo; child= ebo, ebo=parent) { + for (ebo= chain->data; ebo;) { + /* parent is this bone's original parent (to go to next if we swap) */ parent= ebo->parent; /* only if selected and editable */ @@ -3297,12 +3298,28 @@ void switch_direction_armature (void) else ebo->flag &= ~BONE_CONNECTED; - child->parent = NULL; - child->flag &= ~BONE_CONNECTED; - - /* FIXME: other things that need fixing? - * i.e. roll? + /* get next bones + * - child will become the new parent of next bone + * - next bone to go to will be the original parent */ + child= ebo; + ebo= parent; + } + else { + /* not swapping this bone, however, if its 'parent' got swapped, unparent us from it + * as it will be facing in opposite direction + */ + if ((parent) && (EBONE_VISIBLE(arm, parent) && EBONE_EDITABLE(parent))) { + ebo->parent= NULL; + ebo->flag &= ~BONE_CONNECTED; + } + + /* get next bones + * - child will become new parent of next bone (not swapping occurred, so set to NULL to prevent infinite-loop) + * - next bone to go to will be the original parent (no change) + */ + child= NULL; + ebo= parent; } } } From 8977ccafbb750dd5ad26c01ec98169d2a31f5f16 Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Tue, 21 Oct 2008 08:00:19 +0000 Subject: [PATCH 11/38] Bugfixes: - Adding constraint using button in panel still didn't update Armature Editing buttons properly. - Minor code tidying of earlier bugfix for armatures - 'For Transform' option for Limit constraints is now only taken into account for constraints that are enabled. --- source/blender/src/buttons_object.c | 5 +++-- source/blender/src/editarmature.c | 14 +++++++------- source/blender/src/transform.c | 14 +++++++++++++- 3 files changed, 23 insertions(+), 10 deletions(-) diff --git a/source/blender/src/buttons_object.c b/source/blender/src/buttons_object.c index 841a55d7ae1..a8ce9da8780 100644 --- a/source/blender/src/buttons_object.c +++ b/source/blender/src/buttons_object.c @@ -2056,8 +2056,9 @@ void do_constraintbuts(unsigned short event) if(ob->type==OB_ARMATURE) DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA|OB_RECALC_OB); else DAG_object_flush_update(G.scene, ob, OB_RECALC_OB); - allqueue (REDRAWVIEW3D, 0); - allqueue (REDRAWBUTSOBJECT, 0); + allqueue(REDRAWVIEW3D, 0); + allqueue(REDRAWBUTSOBJECT, 0); + allqueue(REDRAWBUTSEDIT, 0); } void pointcache_bake(PTCacheID *pid, int startframe) diff --git a/source/blender/src/editarmature.c b/source/blender/src/editarmature.c index 61ca5c09877..18f4bc3f8dd 100644 --- a/source/blender/src/editarmature.c +++ b/source/blender/src/editarmature.c @@ -3277,8 +3277,11 @@ void switch_direction_armature (void) EditBone *ebo, *child=NULL, *parent=NULL; /* loop over bones in chain */ - for (ebo= chain->data; ebo;) { - /* parent is this bone's original parent (to go to next if we swap) */ + for (ebo= chain->data; ebo; ebo= parent) { + /* parent is this bone's original parent + * - we store this, as the next bone that is checked is this one + * but the value of ebo->parent may change here... + */ parent= ebo->parent; /* only if selected and editable */ @@ -3300,10 +3303,8 @@ void switch_direction_armature (void) /* get next bones * - child will become the new parent of next bone - * - next bone to go to will be the original parent */ child= ebo; - ebo= parent; } else { /* not swapping this bone, however, if its 'parent' got swapped, unparent us from it @@ -3315,11 +3316,10 @@ void switch_direction_armature (void) } /* get next bones - * - child will become new parent of next bone (not swapping occurred, so set to NULL to prevent infinite-loop) - * - next bone to go to will be the original parent (no change) + * - child will become new parent of next bone (not swapping occurred, + * so set to NULL to prevent infinite-loop) */ child= NULL; - ebo= parent; } } } diff --git a/source/blender/src/transform.c b/source/blender/src/transform.c index e21d543d34e..b9b8a4a21a9 100644 --- a/source/blender/src/transform.c +++ b/source/blender/src/transform.c @@ -1502,6 +1502,10 @@ static void constraintTransLim(TransInfo *t, TransData *td) for (con= td->con; con; con= con->next) { float tmat[4][4]; + /* only consider constraint if enabled */ + if (con->flag & CONSTRAINT_DISABLE) continue; + if (con->enforce == 0.0f) continue; + /* only use it if it's tagged for this purpose (and the right type) */ if (con->type == CONSTRAINT_TYPE_LOCLIMIT) { bLocLimitConstraint *data= con->data; @@ -1585,7 +1589,11 @@ static void constraintRotLim(TransInfo *t, TransData *td) /* Evaluate valid constraints */ for (con= td->con; con; con= con->next) { - /* we're only interested in Limit-Scale constraints */ + /* only consider constraint if enabled */ + if (con->flag & CONSTRAINT_DISABLE) continue; + if (con->enforce == 0.0f) continue; + + /* we're only interested in Limit-Rotation constraints */ if (con->type == CONSTRAINT_TYPE_ROTLIMIT) { bRotLimitConstraint *data= con->data; float tmat[4][4]; @@ -1675,6 +1683,10 @@ static void constraintSizeLim(TransInfo *t, TransData *td) /* Evaluate valid constraints */ for (con= td->con; con; con= con->next) { + /* only consider constraint if enabled */ + if (con->flag & CONSTRAINT_DISABLE) continue; + if (con->enforce == 0.0f) continue; + /* we're only interested in Limit-Scale constraints */ if (con->type == CONSTRAINT_TYPE_SIZELIMIT) { bSizeLimitConstraint *data= con->data; From 27b90f2c66addf846a7eb0c89356b0a30965fbfb Mon Sep 17 00:00:00 2001 From: Nathan Letwory Date: Tue, 21 Oct 2008 08:27:38 +0000 Subject: [PATCH 12/38] * Add some missing docu for Blender.Types * Fix potential crash in CSizeof() --- source/blender/python/api2_2x/Types.c | 10 ++++---- source/blender/python/api2_2x/doc/Blender.py | 6 ++--- source/blender/python/api2_2x/doc/Types.py | 25 +++++++++++++++++++- 3 files changed, 32 insertions(+), 9 deletions(-) diff --git a/source/blender/python/api2_2x/Types.c b/source/blender/python/api2_2x/Types.c index 10db016ab68..a466bbd615a 100644 --- a/source/blender/python/api2_2x/Types.c +++ b/source/blender/python/api2_2x/Types.c @@ -112,7 +112,7 @@ static PyObject *Types_CSizeof(PyObject * self, PyObject *o) char type[32]; if(o) { - sprintf(type, "%s", PyString_AsString(PyObject_Str(o))); + BLI_snprintf(type, 32, "%s", PyString_AsString(PyObject_Str(o))); if(BLI_streq(type, "")==1) { ret = sizeof(struct bAction); @@ -309,9 +309,9 @@ PyObject *Types_Init( void ) ( PyObject * ) &Armature_Type ); PyDict_SetItemString( dict, "BoneType", ( PyObject * ) &Bone_Type ); - PyDict_SetItemString( dict, "CurNurb_Type", + PyDict_SetItemString( dict, "CurNurbType", ( PyObject * ) &CurNurb_Type ); - PyDict_SetItemString( dict, "SurfNurb_Type", + PyDict_SetItemString( dict, "SurfNurbType", ( PyObject * ) &SurfNurb_Type ); PyDict_SetItemString( dict, "CurveType", ( PyObject * ) &Curve_Type ); @@ -349,7 +349,7 @@ PyObject *Types_Init( void ) ( PyObject * ) &constant_Type ); PyDict_SetItemString( dict, "rgbTupleType", ( PyObject * ) &rgbTuple_Type ); - PyDict_SetItemString( dict, "matrix_Type", + PyDict_SetItemString( dict, "matrixType", ( PyObject * ) &matrix_Type ); PyDict_SetItemString( dict, "eulerType", ( PyObject * ) &euler_Type ); PyDict_SetItemString( dict, "quaternionType", @@ -372,7 +372,7 @@ PyObject *Types_Init( void ) ( PyObject * ) &EditBone_Type); PyDict_SetItemString( dict, "ThemeSpaceType", ( PyObject * ) &ThemeSpace_Type); - PyDict_SetItemString( dict, "ThemeUI_Type", + PyDict_SetItemString( dict, "ThemeUIType", ( PyObject * ) &ThemeUI_Type); PyDict_SetItemString( dict, "IDGroupType", ( PyObject * ) &IDGroup_Type); diff --git a/source/blender/python/api2_2x/doc/Blender.py b/source/blender/python/api2_2x/doc/Blender.py index 9d89cae7137..8767df43ee1 100644 --- a/source/blender/python/api2_2x/doc/Blender.py +++ b/source/blender/python/api2_2x/doc/Blender.py @@ -73,7 +73,7 @@ def Set (request, data): - 'renderdir': default render output dir - 'soundsdir': sound dir - 'tempdir': temp file storage dir - - 'mipmap' : Use mipmapping in the 3d view (Use a boolean value True/False). + - 'mipmap' : Use mipmapping in the 3d view (Use a boolean value True/False). @type data: int or string @param data: The new value. """ @@ -111,7 +111,7 @@ def Get (request): - 'soundsdir': the path to the user defined dir for sound files. (*) - 'tempdir': the path to the user defined dir for storage of Blender temporary files. (*) - - 'mipmap' : Use mipmapping in the 3d view. (*) + - 'mipmap' : Use mipmapping in the 3d view. (*) - 'version' : the Blender version number. @note: (*) these can be set in Blender at the User Preferences window -> File Paths tab. @@ -255,6 +255,6 @@ def Quit (): def SaveUndoState (message): """ Sets an undo at the current state. - @param message: Message that appiers in the undo menu + @param message: Message that appears in the undo menu @type message: string """ diff --git a/source/blender/python/api2_2x/doc/Types.py b/source/blender/python/api2_2x/doc/Types.py index a08226e46ee..d9cd70a1f5b 100644 --- a/source/blender/python/api2_2x/doc/Types.py +++ b/source/blender/python/api2_2x/doc/Types.py @@ -25,6 +25,17 @@ Example:: elif type(data) == Types.LampType: print "Let there be light!" +Since Blender 2.48a you can get the size of the underlying DNA structs for a collection of Blender Python types. + +Example:: + # loop over Types dictionary and print the struct sizes + # -1 where the type is not supported byt the CSizeof function + import Blender.Types as bt + x = dir(bt) + for t in x: + s = 'bt.CSizeof(bt.' + t + ')' + print t,"=", eval(s) + @var ObjectType: Blender Object. The base object, linked to its specific data at its .data member variable. @var GroupType: Blender Group. A Group that references a list of objects that are a part of this group. @@ -45,8 +56,12 @@ Example:: @var ArmatureType: Blender Armature. The "skeleton", for animating and deforming objects. @var BoneType: Blender Bone. Bones are, obviously, the "pieces" of an Armature. +@var EditBoneType: Blender Editbone. Bones in editmode. @var CurveType: Blender Curve. @var IpoType: Blender Ipo. +@var CurNurbType: Blender CurNurb. +@var SurfNurbType: Blender SurfNurb. +@var IpoCurveType: Blender IpoCurve. @var MetaballType: Blender Metaball. @var CameraType: Blender Camera. @var ImageType: Blender Image. @@ -57,7 +72,7 @@ objects. @var SceneType: A Blender Scene. Container of all other objects. @var ButtonType: Blender Button. One of the Draw widgets. @var vectorType: Blender vector. Used in NMesh, Mesh and elsewhere. -@var matrix_Type: Blender matrix. +@var matrixType: Blender matrix. @var quaternionType: Blender quaternion. Used in armatures. @var eulerType: Blender euler. @var bufferType: Blender buffer. A contiguous piece of storage, used in BGL. @@ -68,3 +83,11 @@ objects. @var IDGroupType: Blender IDProperty Group type. @var IDArrayType: Blender IDProperty Array type. """ + +def CSizeof (type): + """ + Get the size in bytes of the underlying DNA struct for the given type. + @param type: A Blender Python type. + @type type: type + @return: size in bytes or -1 if not supported type. + """ \ No newline at end of file From a7d7acf60178ed845aad86b4e12e2b78aec5bc6d Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Tue, 21 Oct 2008 08:30:02 +0000 Subject: [PATCH 13/38] Bugfix: "Warning: binarysearch_bezt_index encountered invalid array" errors were being displayed in the console. Was caused by 3d-view show-keyframe for infostring stuff, when an IPO being checked had no keyframes. --- source/blender/src/keyframing.c | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/source/blender/src/keyframing.c b/source/blender/src/keyframing.c index 79f62e38709..244c67264c3 100644 --- a/source/blender/src/keyframing.c +++ b/source/blender/src/keyframing.c @@ -1920,18 +1920,21 @@ short ipo_frame_has_keyframe (Ipo *ipo, float frame, short filter) * - this assumes that keyframes are only beztriples */ for (icu= ipo->curve.first; icu; icu= icu->next) { - /* we either include all regardless of muting, or only non-muted */ - if ((filter & ANIMFILTER_MUTED) || (icu->flag & IPO_MUTE)==0) { - short replace = -1; - int i = binarysearch_bezt_index(icu->bezt, frame, icu->totvert, &replace); - - /* binarysearch_bezt_index will set replace to be 0 or 1 - * - obviously, 1 represents a match - */ - if (replace) { - /* sanity check: 'i' may in rare cases exceed arraylen */ - if ((i >= 0) && (i < icu->totvert)) - return 1; + /* only check if there are keyframes (currently only of type BezTriple) */ + if (icu->bezt) { + /* we either include all regardless of muting, or only non-muted */ + if ((filter & ANIMFILTER_MUTED) || (icu->flag & IPO_MUTE)==0) { + short replace = -1; + int i = binarysearch_bezt_index(icu->bezt, frame, icu->totvert, &replace); + + /* binarysearch_bezt_index will set replace to be 0 or 1 + * - obviously, 1 represents a match + */ + if (replace) { + /* sanity check: 'i' may in rare cases exceed arraylen */ + if ((i >= 0) && (i < icu->totvert)) + return 1; + } } } } From f99c02a06b8ee8e43b6811f27591993e91e1557a Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Tue, 21 Oct 2008 08:53:39 +0000 Subject: [PATCH 14/38] Duplicating bones in EditMode didn't set the custom-shape and bone-groups too. --- source/blender/src/editarmature.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/source/blender/src/editarmature.c b/source/blender/src/editarmature.c index 18f4bc3f8dd..0b8c1339dae 100644 --- a/source/blender/src/editarmature.c +++ b/source/blender/src/editarmature.c @@ -2278,7 +2278,7 @@ void adduplicate_armature(void) bPoseChannel *chanold, *channew; ListBase *listold, *listnew; - chanold = verify_pose_channel (OBACT->pose, curBone->name); + chanold = verify_pose_channel(OBACT->pose, curBone->name); if (chanold) { listold = &chanold->constraints; if (listold) { @@ -2291,6 +2291,9 @@ void adduplicate_armature(void) /* copy transform locks */ channew->protectflag = chanold->protectflag; + /* copy bone group */ + channew->agrp_index= chanold->agrp_index; + /* ik (dof) settings */ channew->ikflag = chanold->ikflag; VECCOPY(channew->limitmin, chanold->limitmin); @@ -2300,7 +2303,10 @@ void adduplicate_armature(void) /* constraints */ listnew = &channew->constraints; - copy_constraints (listnew, listold); + copy_constraints(listnew, listold); + + /* custom shape */ + channew->custom= chanold->custom; } } } From 1df683a38be5c092f1e2a3da693a174a3ad78373 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Tue, 21 Oct 2008 09:08:46 +0000 Subject: [PATCH 15/38] more python 2.3 compat, should be the last of it. --- release/scripts/DirectX8Exporter.py | 2 +- release/scripts/uvcalc_lightmap.py | 11 ++++++++++- release/scripts/wizard_curve2tree.py | 26 +++++++++++++++++++------- 3 files changed, 30 insertions(+), 9 deletions(-) diff --git a/release/scripts/DirectX8Exporter.py b/release/scripts/DirectX8Exporter.py index 01212545f77..b8bdae4de2b 100644 --- a/release/scripts/DirectX8Exporter.py +++ b/release/scripts/DirectX8Exporter.py @@ -7,7 +7,7 @@ # Tooltip: 'Export to DirectX text file format format for XNA Animation Component Library.' """ __author__ = "vertex color exporting feature is added by mnemoto (original:minahito (original:Arben (Ben) Omari))" -__url__ = ("blender", "elysiun", "Adjuster's site http://sunday-lab.blogspot.com/, Author's site http://www.omariben.too.it","Adjuster's site http://ex.homeunix.net/") +__url__ = ("blender.org", "blenderartists.org", "Adjuster's site http://sunday-lab.blogspot.com/, Author's site http://www.omariben.too.it","Adjuster's site http://ex.homeunix.net/") __version__ = "3.1" __bpydoc__ = """\ diff --git a/release/scripts/uvcalc_lightmap.py b/release/scripts/uvcalc_lightmap.py index 37423b7197e..1433ccbd13a 100644 --- a/release/scripts/uvcalc_lightmap.py +++ b/release/scripts/uvcalc_lightmap.py @@ -47,6 +47,12 @@ def AngleBetweenVecs(a1,a2): except: return 180.0 +# python 2.3 has no reversed() iterator. this will only work on lists and tuples +try: + reversed +except: + def reversed(l): return l[::-1] + class prettyface(object): __slots__ = 'uv', 'width', 'height', 'children', 'xoff', 'yoff', 'has_parent', 'rot' def __init__(self, data): @@ -451,7 +457,10 @@ PREF_MARGIN_DIV= 512): # Even boxes in groups of 4 for d, boxes in even_dict.items(): if d < max_int_dimension: - boxes.sort(key = lambda a: len(a.children)) + # py 2.3 compat + try: boxes.sort(key = lambda a: len(a.children)) + except: boxes.sort(lambda a, b: cmp(len(a.children), len(b.children))) + while len(boxes) >= 4: # print "bar", len(boxes) ok = True diff --git a/release/scripts/wizard_curve2tree.py b/release/scripts/wizard_curve2tree.py index 84b2cc76132..1965f9a5070 100644 --- a/release/scripts/wizard_curve2tree.py +++ b/release/scripts/wizard_curve2tree.py @@ -61,6 +61,12 @@ def AngleBetweenVecsSafe(a1, a2): except: return 180.0 +# Python 2.3 has no reversed. +try: + reversed +except: + def reversed(l): return l[::-1] + # Copied from blender, we could wrap this! - BKE_curve.c # But probably not toooo bad in python def forward_diff_bezier(q0, q1, q2, q3, pointlist, steps, axis): @@ -268,7 +274,7 @@ class tree: # Sort from big to small, so big branches get priority # Py 2.3 dosnt have keywords in sort try: self.branches_all.sort( key = lambda brch: -brch.bpoints[0].radius ) - except: self.branches_all.sort( lambda brch_a, brch_b: cmp(brch_b.bpoints[0].radius, brch_a.bpoints[0].radius) ) + except: self.branches_all.sort( lambda brch_a, brch_b: cmp(brch_b.bpoints[0].radius, brch_a.bpoints[0].radius) ) # py2.3 def closestBranchPt(self, co): @@ -1146,7 +1152,8 @@ class tree: # Try sorting by other properties! this is ok for now for segments_level_current in segments_level: - segments_level_current.sort( key = lambda seg: -(seg.headCo-seg.tailCo).length ) + try: segments_level_current.sort( key = lambda seg: -(seg.headCo-seg.tailCo).length ) + except: segments_level_current.sort( lambda a,b: cmp((b.headCo-b.tailCo).length, (a.headCo-a.tailCo).length) ) # py2.3 for level in xrange(twig_fill_levels): if len(segments_level) > level: @@ -1372,18 +1379,23 @@ class tree: # Get the branches based on our selection method! if twig_select_mode==0: - branches_sorted.sort( key = lambda brch: brch.getLength()) + try: branches_sorted.sort( key = lambda brch: brch.getLength()) + except: branches_sorted.sort( lambda a,b: cmp(a.getLength(),a.getLength()) ) # py2.3 elif twig_select_mode==1: - branches_sorted.sort( key = lambda brch:-brch.getLength()) + try: branches_sorted.sort( key = lambda brch:-brch.getLength()) + except: branches_sorted.sort( lambda a,b: cmp(b.getLength(), a.getLength()) ) # py2.3 elif twig_select_mode==2: - branches_sorted.sort( key = lambda brch:brch.getStraightness()) + try: branches_sorted.sort( key = lambda brch:brch.getStraightness()) + except: branches_sorted.sort( lambda a,b: cmp(a.getStraightness(), b.getStraightness())) # py2.3 elif twig_select_mode==3: - branches_sorted.sort( key = lambda brch:-brch.getStraightness()) + try: branches_sorted.sort( key = lambda brch:-brch.getStraightness()) + except: branches_sorted.sort( lambda a,b: cmp(b.getStraightness(), a.getStraightness())) # py2.3 factor_int = int(len(self.branches_all) * twig_select_factor) branches_sorted[factor_int:] = [] # remove the last part of the list - branches_sorted.sort( key = lambda brch: len(brch.bpoints)) + try: branches_sorted.sort( key = lambda brch: len(brch.bpoints)) + except: branches_sorted.sort( lambda a,b: cmp(len(a.bpoints), len(b.bpoints)) ) # py2.3 branches_new = [] #for i in xrange(ratio_int): From b32bd5e8afea11615b58028901400fa1862e9f8f Mon Sep 17 00:00:00 2001 From: Nathan Letwory Date: Tue, 21 Oct 2008 10:38:24 +0000 Subject: [PATCH 16/38] * improvement for CSizeof - instead of fiddling around with strings, just compare pointers. (It's a good thing we have ideasman_42) --- source/blender/python/api2_2x/Types.c | 68 +++++++++++++-------------- 1 file changed, 32 insertions(+), 36 deletions(-) diff --git a/source/blender/python/api2_2x/Types.c b/source/blender/python/api2_2x/Types.c index a466bbd615a..10b968cacba 100644 --- a/source/blender/python/api2_2x/Types.c +++ b/source/blender/python/api2_2x/Types.c @@ -109,74 +109,70 @@ This module is a dictionary of all Blender Python types"; static PyObject *Types_CSizeof(PyObject * self, PyObject *o) { int ret = 0; - char type[32]; - if(o) { - BLI_snprintf(type, 32, "%s", PyString_AsString(PyObject_Str(o))); - - if(BLI_streq(type, "")==1) { + if((void *)o == (void *)&Action_Type) { ret = sizeof(struct bAction); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Armature_Type) { ret = sizeof(struct bArmature); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&BezTriple_Type) { ret = sizeof(struct BezTriple); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Bone_Type) { ret = sizeof(struct Bone); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Camera_Type) { ret = sizeof(struct Camera); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&CurNurb_Type) { ret = sizeof(struct Nurb); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Curve_Type) { ret = sizeof(struct Curve); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Group_Type) { ret = sizeof(struct Group); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&IDGroup_Type) { ret = sizeof(struct IDProperty); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Image_Type) { ret = sizeof(struct Image); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Ipo_Type) { ret = sizeof(struct Ipo); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&IpoCurve_Type) { ret = sizeof(struct IpoCurve); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Lamp_Type) { ret = sizeof(struct Lamp); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Lattice_Type) { ret = sizeof(struct Lattice); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&MCol_Type) { ret = sizeof(struct MCol); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&MEdge_Type) { ret = sizeof(struct MEdge); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&MFace_Type) { ret = sizeof(struct MFace); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&MTex_Type) { ret = sizeof(struct MTex); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&MVert_Type) { ret = sizeof(struct MVert); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Material_Type) { ret = sizeof(struct Material); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Mesh_Type) { ret = sizeof(struct Mesh); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Metaball_Type) { ret = sizeof(struct MetaBall); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&ModSeq_Type) { ret = sizeof(struct ModifierData); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Modifier_Type) { ret = sizeof(struct ModifierData); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Object_Type) { ret = sizeof(struct Object); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Pose_Type) { ret = sizeof(struct bPose); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&RenderData_Type) { ret = sizeof(struct RenderData); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Scene_Type) { ret = sizeof(struct Scene); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&SurfNurb_Type) { ret = sizeof(struct Nurb); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Text3d_Type) { ret = sizeof(struct Curve); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Text_Type) { ret = sizeof(struct Text); - } else if (BLI_streq(type, "")==1) { + } else if ((void *)o==(void *)&Texture_Type) { ret = sizeof(struct Tex); } else { ret = -1; From 7a4e9d97fff0a795a3ab076702d8b856b2e5bf62 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Tue, 21 Oct 2008 14:46:00 +0000 Subject: [PATCH 17/38] Fix for bug #17881: with SSS disabled, SSS materials didn't render textures, related to other recent bugfix for baking. --- source/blender/render/intern/source/sss.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/blender/render/intern/source/sss.c b/source/blender/render/intern/source/sss.c index 2e7ca48affc..9fb48a08503 100644 --- a/source/blender/render/intern/source/sss.c +++ b/source/blender/render/intern/source/sss.c @@ -1025,6 +1025,6 @@ int sample_sss(Render *re, Material *mat, float *co, float *color) int sss_pass_done(struct Render *re, struct Material *mat) { - return ((re->flag & R_BAKING) || (re->sss_hash && BLI_ghash_lookup(re->sss_hash, mat))); + return ((re->flag & R_BAKING) || !(re->r.mode & R_SSS) || (re->sss_hash && BLI_ghash_lookup(re->sss_hash, mat))); } From 71206c9337ec88d8711fa66c128fe464cf27e451 Mon Sep 17 00:00:00 2001 From: Nathan Letwory Date: Tue, 21 Oct 2008 23:07:09 +0000 Subject: [PATCH 18/38] Patch from Timothy Baldridge * add irix6 to GHOST windowing system (same as linux2 et al) * fix faulty return lines in shrinkwrap.c --- intern/ghost/SConscript | 2 +- source/blender/blenkernel/intern/shrinkwrap.c | 12 ++++++++++-- tools/btools.py | 4 ++-- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/intern/ghost/SConscript b/intern/ghost/SConscript index 40968e816a9..f6283cfc0f2 100644 --- a/intern/ghost/SConscript +++ b/intern/ghost/SConscript @@ -10,7 +10,7 @@ sources = env.Glob('intern/*.cpp') pf = ['GHOST_DisplayManager', 'GHOST_System', 'GHOST_Window'] -if window_system in ('linux2', 'openbsd3', 'sunos5', 'freebsd6'): +if window_system in ('linux2', 'openbsd3', 'sunos5', 'freebsd6', 'irix6'): for f in pf: sources.remove('intern' + os.sep + f + 'Win32.cpp') sources.remove('intern' + os.sep + f + 'Carbon.cpp') diff --git a/source/blender/blenkernel/intern/shrinkwrap.c b/source/blender/blenkernel/intern/shrinkwrap.c index 76af9a763ee..28bf7aee884 100644 --- a/source/blender/blenkernel/intern/shrinkwrap.c +++ b/source/blender/blenkernel/intern/shrinkwrap.c @@ -215,7 +215,11 @@ void shrinkwrap_calc_nearest_vertex(ShrinkwrapCalcData *calc) BENCH(bvhtree_from_mesh_verts(&treeData, calc->target, 0.0, 2, 6)); - if(treeData.tree == NULL) return OUT_OF_MEMORY(); + if(treeData.tree == NULL) + { + OUT_OF_MEMORY(); + return; + } //Setup nearest nearest.index = -1; @@ -526,7 +530,11 @@ void shrinkwrap_calc_nearest_surface_point(ShrinkwrapCalcData *calc) //Create a bvh-tree of the given target BENCH(bvhtree_from_mesh_faces( &treeData, calc->target, 0.0, 2, 6)); - if(treeData.tree == NULL) return OUT_OF_MEMORY(); + if(treeData.tree == NULL) + { + OUT_OF_MEMORY(); + return; + } //Setup nearest nearest.index = -1; diff --git a/tools/btools.py b/tools/btools.py index 3112e61918a..7de1f47a91c 100755 --- a/tools/btools.py +++ b/tools/btools.py @@ -53,8 +53,8 @@ def validate_arguments(args, bc): 'WITH_BF_FTGL', 'BF_FTGL', 'BF_FTGL_INC', 'BF_FTGL_LIB', 'WITH_BF_PLAYER', 'WITH_BF_NOBLENDER', - 'WITH_BF_BINRELOC', - 'CFLAGS', 'CCFLAGS', 'CPPFLAGS', + 'WITH_BF_BINRELOC', + 'CFLAGS', 'CCFLAGS', 'CPPFLAGS', 'REL_CFLAGS', 'REL_CCFLAGS', 'C_WARN', 'CC_WARN', 'LLIBS', 'PLATFORM_LINKFLAGS', 'BF_PROFILE_FLAGS', 'LCGDIR', From 4936e09cdf37e0225e948312a23afa576f2fae35 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Tue, 21 Oct 2008 23:14:40 +0000 Subject: [PATCH 19/38] add a way for external scripts to call X3D/VRML importer and deal with unknown node types. --- release/scripts/import_web3d.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/release/scripts/import_web3d.py b/release/scripts/import_web3d.py index e934d06e9ef..9447f15fb79 100755 --- a/release/scripts/import_web3d.py +++ b/release/scripts/import_web3d.py @@ -53,7 +53,7 @@ def dirName(path): # order dosnt matter for loc/size/rot # right handed rotation # angles are in radians -# rotation first defines axis then ammount in deg +# rotation first defines axis then ammount in radians @@ -1782,7 +1782,7 @@ def importTransform(node, ancestry): bpyob.setMatrix( getFinalMatrix(node, None, ancestry) ) -def load_web3d(path, PREF_FLAT=False, PREF_CIRCLE_DIV=16): +def load_web3d(path, PREF_FLAT=False, PREF_CIRCLE_DIV=16, HELPER_FUNC = None): # Used when adding blender primitives GLOBALS['CIRCLE_DETAIL'] = PREF_CIRCLE_DIV @@ -1818,8 +1818,14 @@ def load_web3d(path, PREF_FLAT=False, PREF_CIRCLE_DIV=16): elif spec=='Transform': # Only use transform nodes when we are not importing a flat object hierarchy if PREF_FLAT==False: - importTransform(node, ancestry) - + importTransform(node, ancestry) + else: + + # Note, include this function so the VRML/X3D importer can be extended + # by an external script. + if HELPER_FUNC: + HELPER_FUNC(node, ancestry) + # Add in hierarchy if PREF_FLAT==False: child_dict = {} From 59a30d822fe5ecfafbb5676b2058b7ff8d3760ed Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 22 Oct 2008 03:10:00 +0000 Subject: [PATCH 20/38] fix for [#17878] Scripts operating on blender objects don't clear memory after a crash This is an interesting bug since it is likely the cause of many other suspicious python crashes in blender. sys.last_traceback would store references to PyObjects at the point of the crash. it would only free these when sys.last_traceback was set again or on exit. This caused many crashes in the BGE while testing since python would end up freeing invalid game objects - When running scripts with errors, Blender would crash every 2-5 runs - in my test just now it crashed after 4 trys. It could also segfault blender, when (for eg) you run a script that has objects referenced. then load a new file and run another script that raises an error. In this case all the invalid Blender-Object's user counts would be decremented, even though none of the pointers were still valid. --- source/blender/python/BPY_interface.c | 9 ++++++++- .../gameengine/GameLogic/SCA_PythonController.cpp | 14 ++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/source/blender/python/BPY_interface.c b/source/blender/python/BPY_interface.c index 29ef6c5da1d..dfcf6aa35a5 100644 --- a/source/blender/python/BPY_interface.c +++ b/source/blender/python/BPY_interface.c @@ -616,7 +616,12 @@ static void BPY_Err_Handle( char *script_name ) } Py_DECREF( tb ); } - + + /* Added in 2.48a, the last_traceback can reference Objects for example, increasing + * their user count. Not to mention holding references to wrapped data. + * This is especially bad when the PyObject for the wrapped data is free'd, after blender + * has alredy dealocated the pointer */ + PySys_SetObject( "last_traceback", Py_None); return; } @@ -2727,6 +2732,8 @@ int BPY_call_importloader( char *name ) * Description: This function executes the python script passed by text. * The Python dictionary containing global variables needs to * be passed in globaldict. +* NOTE: Make sure BPY_Err_Handle() runs if this returns NULL +* otherwise pointers can be left in sys.last_traceback that become invalid. *****************************************************************************/ static PyObject *RunPython( Text * text, PyObject * globaldict ) { diff --git a/source/gameengine/GameLogic/SCA_PythonController.cpp b/source/gameengine/GameLogic/SCA_PythonController.cpp index 4cb9bc8fe53..1bbb93e0acc 100644 --- a/source/gameengine/GameLogic/SCA_PythonController.cpp +++ b/source/gameengine/GameLogic/SCA_PythonController.cpp @@ -262,6 +262,13 @@ void SCA_PythonController::Trigger(SCA_LogicManager* logicmgr) printf("Python compile error from controller \"%s\": \n", GetName().Ptr()); //PyRun_SimpleString(m_scriptText.Ptr()); PyErr_Print(); + + /* Added in 2.48a, the last_traceback can reference Objects for example, increasing + * their user count. Not to mention holding references to wrapped data. + * This is especially bad when the PyObject for the wrapped data is free'd, after blender + * has alredy dealocated the pointer */ + PySys_SetObject( "last_traceback", Py_None); + return; } m_bModified=false; @@ -298,6 +305,13 @@ void SCA_PythonController::Trigger(SCA_LogicManager* logicmgr) // something is wrong, tell the user what went wrong printf("Python script error from controller \"%s\": \n", GetName().Ptr()); PyErr_Print(); + + /* Added in 2.48a, the last_traceback can reference Objects for example, increasing + * their user count. Not to mention holding references to wrapped data. + * This is especially bad when the PyObject for the wrapped data is free'd, after blender + * has alredy dealocated the pointer */ + PySys_SetObject( "last_traceback", Py_None); + //PyRun_SimpleString(m_scriptText.Ptr()); } From 18f2d484d9f76ce8e932a1b27b4b7b2f3fbcdb0d Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 22 Oct 2008 04:42:00 +0000 Subject: [PATCH 21/38] missing undo for vgroup operations, countall was running twice from select/deselect and DAG_object_flush_update isnt needed for changed selections. --- source/blender/src/buttons_editing.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/source/blender/src/buttons_editing.c b/source/blender/src/buttons_editing.c index b586302053b..3d60e9a8eea 100644 --- a/source/blender/src/buttons_editing.c +++ b/source/blender/src/buttons_editing.c @@ -4760,7 +4760,7 @@ void do_vgroupbuts(unsigned short event) DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA); scrarea_queue_winredraw(curarea); allqueue(REDRAWOOPS, 0); - + BIF_undo_push("New vertex group"); break; case B_DELVGROUP: if ((G.obedit) && (G.obedit == ob)) { @@ -4776,35 +4776,40 @@ void do_vgroupbuts(unsigned short event) break; case B_ASSIGNVGROUP: assign_verts_defgroup (); + DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA); allqueue (REDRAWVIEW3D, 1); BIF_undo_push("Assign to vertex group"); break; case B_REMOVEVGROUP: remove_verts_defgroup (0); + DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA); allqueue (REDRAWVIEW3D, 1); allqueue(REDRAWOOPS, 0); BIF_undo_push("Remove from vertex group"); break; case B_SELVGROUP: - sel_verts_defgroup(1); + sel_verts_defgroup(1); /* runs countall() */ allqueue (REDRAWVIEW3D, 1); allqueue(REDRAWOOPS, 0); - countall(); + BIF_undo_push("Select vertex group"); break; case B_DESELVGROUP: - sel_verts_defgroup(0); - DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA); + sel_verts_defgroup(0); /* runs countall() */ allqueue (REDRAWVIEW3D, 1); allqueue(REDRAWOOPS, 0); - countall(); + BIF_undo_push("DeSelect vertex group"); break; case B_LINKEDVGROUP: copy_linked_vgroup_channels(ob); + allqueue (REDRAWVIEW3D, 1); + allqueue(REDRAWOOPS, 0); + BIF_undo_push("Copy vertex group to linked obdata"); break; case B_COPYVGROUP: duplicate_defgroup (ob); scrarea_queue_winredraw (curarea); allqueue (REDRAWOOPS, 0); + BIF_undo_push("Copy vertex group"); break; } } From 0026247ee2d8e5e8c7b1eada09e94cdd38000b84 Mon Sep 17 00:00:00 2001 From: Joilnen Leite Date: Wed, 22 Oct 2008 05:33:45 +0000 Subject: [PATCH 22/38] --- source/blender/makesdna/DNA_view3d_types.h | 4 ++-- source/blender/src/header_view3d.c | 8 ++++++++ source/blender/src/toets.c | 4 +--- source/blender/src/view.c | 5 ----- source/nan_definitions.mk | 4 ++-- 5 files changed, 13 insertions(+), 12 deletions(-) diff --git a/source/blender/makesdna/DNA_view3d_types.h b/source/blender/makesdna/DNA_view3d_types.h index ae0dcfc3f0e..b7b5f71c845 100644 --- a/source/blender/makesdna/DNA_view3d_types.h +++ b/source/blender/makesdna/DNA_view3d_types.h @@ -148,8 +148,8 @@ typedef struct View3D { /* last view */ float lviewquat[4]; short lpersp, lview; - short lastview_set; - short pad5; + + short pad5, pad6; } View3D; diff --git a/source/blender/src/header_view3d.c b/source/blender/src/header_view3d.c index 5c215dcdd46..d57fa18a705 100644 --- a/source/blender/src/header_view3d.c +++ b/source/blender/src/header_view3d.c @@ -212,6 +212,14 @@ static void do_view3d_view_camerasmenu(void *arg, int event) persptoetsen(PAD0); G.qual &= ~LR_CTRLKEY; } else { + /* store settings of current view before allowing overwriting with camera view */ + /* this is a copy of the code in toets.c */ + if(G.vd->persp != V3D_CAMOB) { + QUATCOPY(G.vd->lviewquat, G.vd->viewquat); + G.vd->lview= G.vd->view; + G.vd->lpersp= G.vd->persp; + } + for( base = FIRSTBASE; base; base = base->next ) { if (base->object->type == OB_CAMERA) { i++; diff --git a/source/blender/src/toets.c b/source/blender/src/toets.c index 162d652afd1..804660c3433 100644 --- a/source/blender/src/toets.c +++ b/source/blender/src/toets.c @@ -292,17 +292,15 @@ void persptoetsen(unsigned short event) } else if(event==PAD0) { /* lastview - */ - if(G.vd->lastview_set==0) { + if(G.vd->persp != V3D_CAMOB) { /* store settings of current view before allowing overwriting with camera view */ QUATCOPY(G.vd->lviewquat, G.vd->viewquat); G.vd->lview= G.vd->view; G.vd->lpersp= G.vd->persp; - G.vd->lastview_set= 1; } else { /* return to settings of last view */ axis_set_view(G.vd->lviewquat[0], G.vd->lviewquat[1], G.vd->lviewquat[2], G.vd->lviewquat[3], G.vd->lview, G.vd->lpersp); - G.vd->lastview_set= 0; } if(G.qual==LR_ALTKEY) { diff --git a/source/blender/src/view.c b/source/blender/src/view.c index e7b46d83b50..258e4fd99e0 100644 --- a/source/blender/src/view.c +++ b/source/blender/src/view.c @@ -894,11 +894,6 @@ void viewmove(int mode) return; } - /* clear lastview flag (used to return to previous view when - * pressing Pad0 again after entering Camera view) - */ - if (G.vd->lastview_set) G.vd->lastview_set= 0; - // dist correction from other movement devices if((dz_flag)||G.vd->dist==0) { dz_flag = 0; diff --git a/source/nan_definitions.mk b/source/nan_definitions.mk index 424a7c558d7..eccb0c08bc5 100644 --- a/source/nan_definitions.mk +++ b/source/nan_definitions.mk @@ -413,10 +413,10 @@ endif export NAN_PARANOID ?= true # l10n - export INTERNATIONAL ?= true + export INTERNATIONAL ?= false # enable freetype2 support for text objects - export WITH_FREETYPE2 ?= true + export WITH_FREETYPE2 ?= false export WITH_BINRELOC ?= true From 09e4bb058c5d406d449acf6511aed67f2ca8776d Mon Sep 17 00:00:00 2001 From: Joilnen Leite Date: Wed, 22 Oct 2008 05:35:23 +0000 Subject: [PATCH 23/38] --- source/nan_definitions.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/nan_definitions.mk b/source/nan_definitions.mk index eccb0c08bc5..424a7c558d7 100644 --- a/source/nan_definitions.mk +++ b/source/nan_definitions.mk @@ -413,10 +413,10 @@ endif export NAN_PARANOID ?= true # l10n - export INTERNATIONAL ?= false + export INTERNATIONAL ?= true # enable freetype2 support for text objects - export WITH_FREETYPE2 ?= false + export WITH_FREETYPE2 ?= true export WITH_BINRELOC ?= true From 5987488fd0c9b75a8def632be4f3cafffd5bc1b7 Mon Sep 17 00:00:00 2001 From: Nathan Letwory Date: Wed, 22 Oct 2008 07:02:30 +0000 Subject: [PATCH 24/38] * comment fix --- source/blender/src/header_info.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/blender/src/header_info.c b/source/blender/src/header_info.c index 9bacc2b6351..28248c052b3 100644 --- a/source/blender/src/header_info.c +++ b/source/blender/src/header_info.c @@ -1020,7 +1020,7 @@ static void do_info_externalfiles(void *arg, int event) pupmenu("Can't set relative paths with an unsaved blend file"); } break; - case 11: /* make all paths relative */ + case 11: /* make all paths absolute */ { int tot,changed,failed,linked; char str[512]; From 69c6bd604c36e06d704948bce1eb32134ac8971f Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 22 Oct 2008 07:09:15 +0000 Subject: [PATCH 25/38] make sure BPY_Err_Handle clears python errors, even if the exception cant be printed. Added PyErr_Clear() incase there are other references to exception data (sys.exc_info() from python) --- source/blender/python/BPY_interface.c | 23 +++++++++++++------ .../GameLogic/SCA_PythonController.cpp | 2 ++ 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/source/blender/python/BPY_interface.c b/source/blender/python/BPY_interface.c index dfcf6aa35a5..1c8b606ace3 100644 --- a/source/blender/python/BPY_interface.c +++ b/source/blender/python/BPY_interface.c @@ -532,6 +532,16 @@ static PyObject *traceback_getFilename( PyObject * tb ) else return PyString_FromString("unknown"); } +static void BPY_Err_Clear(void) +{ + /* Added in 2.48a, the last_traceback can reference Objects for example, increasing + * their user count. Not to mention holding references to wrapped data. + * This is especially bad when the PyObject for the wrapped data is free'd, after blender + * has alredy dealocated the pointer */ + PySys_SetObject( "last_traceback", Py_None); + + PyErr_Clear(); +} /**************************************************************************** * Description: Blender Python error handler. This catches the error and * stores filename and line number in a global @@ -542,6 +552,7 @@ static void BPY_Err_Handle( char *script_name ) if( !script_name ) { printf( "Error: script has NULL name\n" ); + BPY_Err_Clear(); return; } @@ -568,8 +579,9 @@ static void BPY_Err_Handle( char *script_name ) } else { g_script_error.lineno = -1; } - /* this avoids an abort in Python 2.3's garbage collecting: */ - PyErr_Clear( ); + /* this avoids an abort in Python 2.3's garbage collecting: + PyErr_Clear() */ + BPY_Err_Clear(); /* Calls PyErr_Clear as well */ return; } else { PyErr_NormalizeException( &exception, &err, &tb ); @@ -579,6 +591,7 @@ static void BPY_Err_Handle( char *script_name ) if( !tb ) { printf( "\nCan't get traceback\n" ); + BPY_Err_Clear(); /* incase there is still some data hanging about */ return; } @@ -617,11 +630,7 @@ static void BPY_Err_Handle( char *script_name ) Py_DECREF( tb ); } - /* Added in 2.48a, the last_traceback can reference Objects for example, increasing - * their user count. Not to mention holding references to wrapped data. - * This is especially bad when the PyObject for the wrapped data is free'd, after blender - * has alredy dealocated the pointer */ - PySys_SetObject( "last_traceback", Py_None); + BPY_Err_Clear(); return; } diff --git a/source/gameengine/GameLogic/SCA_PythonController.cpp b/source/gameengine/GameLogic/SCA_PythonController.cpp index 1bbb93e0acc..c354ab39747 100644 --- a/source/gameengine/GameLogic/SCA_PythonController.cpp +++ b/source/gameengine/GameLogic/SCA_PythonController.cpp @@ -268,6 +268,7 @@ void SCA_PythonController::Trigger(SCA_LogicManager* logicmgr) * This is especially bad when the PyObject for the wrapped data is free'd, after blender * has alredy dealocated the pointer */ PySys_SetObject( "last_traceback", Py_None); + PyErr_Clear(); /* just to be sure */ return; } @@ -311,6 +312,7 @@ void SCA_PythonController::Trigger(SCA_LogicManager* logicmgr) * This is especially bad when the PyObject for the wrapped data is free'd, after blender * has alredy dealocated the pointer */ PySys_SetObject( "last_traceback", Py_None); + PyErr_Clear(); /* just to be sure */ //PyRun_SimpleString(m_scriptText.Ptr()); } From 688cc11302caa8cde5649e6230c66a1c60cd24a2 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 22 Oct 2008 08:21:43 +0000 Subject: [PATCH 26/38] added an option for python Draw.UIBlock(func, mouse_exit) so moving the mouse outside the popup wont close it. Stops FBX Export and OBJ I/O from flickering a lot. --- release/scripts/export_fbx.py | 2 +- release/scripts/export_obj.py | 2 +- release/scripts/import_obj.py | 2 +- release/scripts/object_drop.py | 2 +- source/blender/python/api2_2x/Draw.c | 15 ++++++++------- source/blender/python/api2_2x/doc/Draw.py | 8 +++++--- 6 files changed, 17 insertions(+), 14 deletions(-) diff --git a/release/scripts/export_fbx.py b/release/scripts/export_fbx.py index 696d3d1561a..3f02a71f951 100644 --- a/release/scripts/export_fbx.py +++ b/release/scripts/export_fbx.py @@ -2952,7 +2952,7 @@ def write_ui(): #fbx_ui_write('/test.fbx') break - Draw.UIBlock(fbx_ui) + Draw.UIBlock(fbx_ui, 0) # GLOBALS.clear() diff --git a/release/scripts/export_obj.py b/release/scripts/export_obj.py index 79a224d63c3..9feb02638c3 100644 --- a/release/scripts/export_obj.py +++ b/release/scripts/export_obj.py @@ -694,7 +694,7 @@ def write_ui(filename): # hack so the toggle buttons redraw. this is not nice at all while GLOBALS['EVENT'] not in (EVENT_EXIT, EVENT_EXPORT): - Draw.UIBlock(obj_ui) + Draw.UIBlock(obj_ui, 0) if GLOBALS['EVENT'] != EVENT_EXPORT: return diff --git a/release/scripts/import_obj.py b/release/scripts/import_obj.py index b7bdd54fe6d..3aad0800cf7 100644 --- a/release/scripts/import_obj.py +++ b/release/scripts/import_obj.py @@ -878,7 +878,7 @@ def load_obj_ui(filepath, BATCH_LOAD= False): # hack so the toggle buttons redraw. this is not nice at all while GLOBALS['EVENT'] not in (EVENT_EXIT, EVENT_IMPORT): - Draw.UIBlock(obj_ui) + Draw.UIBlock(obj_ui, 0) if GLOBALS['EVENT'] != EVENT_IMPORT: return diff --git a/release/scripts/object_drop.py b/release/scripts/object_drop.py index 63a0bd574fb..f4803e62d98 100644 --- a/release/scripts/object_drop.py +++ b/release/scripts/object_drop.py @@ -216,7 +216,7 @@ def main(): # hack so the toggle buttons redraw. this is not nice at all while GLOBALS['EVENT'] == EVENT_REDRAW: - Draw.UIBlock(terain_clamp_ui) + Draw.UIBlock(terain_clamp_ui, 0) if __name__ == '__main__': main() diff --git a/source/blender/python/api2_2x/Draw.c b/source/blender/python/api2_2x/Draw.c index c942657fbd0..e0111f099aa 100644 --- a/source/blender/python/api2_2x/Draw.c +++ b/source/blender/python/api2_2x/Draw.c @@ -141,7 +141,7 @@ static uiBlock *uiblock=NULL; static char Draw_doc[] = "The Blender.Draw submodule"; -static char Method_UIBlock_doc[] = "(drawfunc, x,y) - Popup dialog where buttons can be drawn (expemental)"; +static char Method_UIBlock_doc[] = "(drawfunc, mouse_exit) - Popup dialog where buttons can be drawn (expemental)"; static char Method_Register_doc[] = "(draw, event, button) - Register callbacks for windowing\n\n\ @@ -290,9 +290,9 @@ static char Method_Text_doc[] = This function returns the width of the drawn string."; static char Method_Label_doc[] = - "(text, x, y) - Draw a text label onscreen\n\n\ + "(text, x, y, w, h, tip, callback) - Draw a text label onscreen\n\n\ (text) The text to draw\n\ -(x, y) The lower left coordinate of the lable"; +(x, y, w, h) The lower left coordinate of the lable, width and height"; static char Method_PupMenu_doc[] = "(string, maxrow = None) - Display a pop-up menu at the screen.\n\ @@ -1101,15 +1101,16 @@ static PyObject *Method_UIBlock( PyObject * self, PyObject * args ) PyObject *val = NULL; PyObject *result = NULL; ListBase listb= {NULL, NULL}; + int mouse_exit = 1; if (G.background) { return EXPP_ReturnPyObjError( PyExc_RuntimeError, "Can't run Draw.UIBlock() in background mode." ); } - if ( !PyArg_ParseTuple( args, "O", &val ) || !PyCallable_Check( val ) ) + if ( !PyArg_ParseTuple( args, "O|i", &val, &mouse_exit ) || !PyCallable_Check( val ) ) return EXPP_ReturnPyObjError( PyExc_AttributeError, - "expected 1 python function and 2 ints" ); + "expected 1 python function and an optional int" ); if (uiblock) return EXPP_ReturnPyObjError( PyExc_RuntimeError, @@ -1121,7 +1122,7 @@ static PyObject *Method_UIBlock( PyObject * self, PyObject * args ) uiblock= uiNewBlock(&listb, "numbuts", UI_EMBOSS, UI_HELV, G.curscreen->mainwin); uiBlockSetFlag(uiblock, UI_BLOCK_LOOP|UI_BLOCK_REDRAW); - result = PyObject_CallObject( val, Py_BuildValue( "()" ) ); + result = PyObject_CallObject( val, NULL ); if (!result) { PyErr_Print( ); @@ -1146,7 +1147,7 @@ static PyObject *Method_UIBlock( PyObject * self, PyObject * args ) /* Done clearing events */ uiBoundsBlock(uiblock, 5); - uiDoBlocks(&listb, 0, 1); + uiDoBlocks(&listb, 0, mouse_exit); } uiFreeBlocks(&listb); uiblock = NULL; diff --git a/source/blender/python/api2_2x/doc/Draw.py b/source/blender/python/api2_2x/doc/Draw.py index 97e22797902..127f37bfbad 100644 --- a/source/blender/python/api2_2x/doc/Draw.py +++ b/source/blender/python/api2_2x/doc/Draw.py @@ -235,19 +235,21 @@ def EndAlign(): Use after BeginAlign() to stop aligning the buttons (button layout only). """ -def UIBlock(draw): +def UIBlock(draw, mouse_exit=1): """ This function creates a popup area where buttons, labels, sliders etc can be drawn. + @type mouse_exit: int + @param mouse_exit: When zero the popup wont close when the mouse moves away from the popup. @type draw: function @param draw: A function to draw to the popup area, taking no arguments: draw(). @note: The size of the popup will expand to fit the bounds of the buttons created in the draw function. - @note: Be sure to use the mouse coordinates to position the buttons under the mouse, + @note: If mouse_exit is nonzero be sure to use the mouse coordinates if to position the buttons under the mouse, so the popup dosn't exit as soon as it opens. The coordinates for buttons start 0,0 at the bottom left hand side of the screen. @note: Within this popup, Redraw events and the registered button callback will not work. - For buttons to run events, use per button callbacks. + For buttons to run events, use per button callbacks instead. @note: OpenGL drawing functions wont work within this popup, for text use L{Label} rather then L{Text} @warning: L{Menu} will not work properly within a UIBlock, this is a limitation with blenders user interface internals. """ From 2ecf987dc665eff477fb03a0cef0b2972e4b78d2 Mon Sep 17 00:00:00 2001 From: Nathan Letwory Date: Wed, 22 Oct 2008 11:28:10 +0000 Subject: [PATCH 27/38] * Minor cleanup of SCons files - cleanup of boolean usage - use True and False now instead of 'true'/'false' or 0/1 - changed SConscripts accordingly --- config/darwin-config.py | 64 +++++++++--------- config/linux2-config.py | 64 +++++++++--------- config/linuxcross-config.py | 44 ++++++------ config/openbsd3-config.py | 48 ++++++------- config/sunos5-config.py | 52 +++++++-------- config/win32-mingw-config.py | 48 ++++++------- config/win32-vc-config.py | 53 +++++++-------- extern/bFTGL/SConscript | 18 ----- intern/SConscript | 2 +- intern/elbeem/SConscript | 2 +- source/SConscript | 2 +- source/blender/SConscript | 10 +-- source/blender/blenkernel/SConscript | 10 +-- source/blender/blenlib/SConscript | 2 +- source/blender/blenpluginapi/SConscript | 2 +- source/blender/imbuf/SConscript | 12 ++-- source/blender/nodes/SConscript | 6 +- source/blender/python/SConscript | 8 +-- source/blender/render/SConscript | 6 +- source/blender/src/SConscript | 28 ++++---- source/creator/SConscript | 6 +- tools/Blender.py | 4 +- tools/btools.py | 89 +++++++++++++------------ 23 files changed, 282 insertions(+), 298 deletions(-) diff --git a/config/darwin-config.py b/config/darwin-config.py index cc6c6ef76af..ccc3eb5a0d0 100644 --- a/config/darwin-config.py +++ b/config/darwin-config.py @@ -8,7 +8,7 @@ import commands # IMPORTANT NOTE : OFFICIAL BUILDS SHOULD BE DONE WITH SDKs -USE_SDK='true' +USE_SDK=True BF_PYTHON_VERSION = '2.3' @@ -38,15 +38,15 @@ else: # enable ffmpeg support -WITH_BF_FFMPEG = 'true' # -DWITH_FFMPEG +WITH_BF_FFMPEG = True # -DWITH_FFMPEG BF_FFMPEG = "#extern/ffmpeg" BF_FFMPEG_INC = '${BF_FFMPEG}/include' -if USE_SDK=='true': +if USE_SDK==True: BF_FFMPEG_EXTRA = '-isysroot '+MACOSX_SDK+' -mmacosx-version-min='+MAC_MIN_VERS #BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib' #BF_FFMPEG_LIB = 'avformat.a avcodec.a avutil.a' -WITH_BF_VERSE = 'false' +WITH_BF_VERSE = False BF_VERSE = "#extern/verse/dist" BF_VERSE_LIBPATH = "${BF_BUILDDIR}/extern/verse/dist" BF_VERSE_INCLUDE = BF_VERSE @@ -76,9 +76,9 @@ WITH_BF_OPENMP = '0' # Note : should be true, but openal simply dont work on intel if MAC_PROC == 'i386': - WITH_BF_OPENAL = 'false' + WITH_BF_OPENAL = False else: - WITH_BF_OPENAL = 'true' + WITH_BF_OPENAL = True #different lib must be used following version of gcc # for gcc 3.3 #BF_OPENAL = LIBDIR + '/openal' @@ -88,7 +88,7 @@ if MAC_PROC == 'powerpc': else : BF_OPENAL = LIBDIR + '/openal' -WITH_BF_STATICOPENAL = 'false' +WITH_BF_STATICOPENAL = False BF_OPENAL_INC = '${BF_OPENAL}/include' BF_OPENAL_LIB = 'openal' BF_OPENAL_LIBPATH = '${BF_OPENAL}/lib' @@ -97,20 +97,20 @@ BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a' # Warning, this static lib configuration is untested! users of this OS please confirm. BF_CXX = '/usr' -WITH_BF_STATICCXX = 'false' +WITH_BF_STATICCXX = False BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a' -WITH_BF_SDL = 'true' +WITH_BF_SDL = True BF_SDL = LIBDIR + '/sdl' #$(shell sdl-config --prefix) BF_SDL_INC = '${BF_SDL}/include' #$(shell $(BF_SDL)/bin/sdl-config --cflags) BF_SDL_LIB = 'SDL' #BF_SDL #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer BF_SDL_LIBPATH = '${BF_SDL}/lib' -WITH_BF_FMOD = 'false' +WITH_BF_FMOD = False BF_FMOD = LIBDIR + '/fmod' -WITH_BF_OPENEXR = 'true' -WITH_BF_STATICOPENEXR = 'false' +WITH_BF_OPENEXR = True +WITH_BF_STATICOPENEXR = False BF_OPENEXR = '${LCGDIR}/openexr' BF_OPENEXR_INC = '${BF_OPENEXR}/include ${BF_OPENEXR}/include/OpenEXR' BF_OPENEXR_LIB = ' Iex Half IlmImf Imath IlmThread' @@ -118,15 +118,15 @@ BF_OPENEXR_LIBPATH = '${BF_OPENEXR}/lib' # Warning, this static lib configuration is untested! users of this OS please confirm. BF_OPENEXR_LIB_STATIC = '${BF_OPENEXR}/lib/libHalf.a ${BF_OPENEXR}/lib/libIlmImf.a ${BF_OPENEXR}/lib/libIex.a ${BF_OPENEXR}/lib/libImath.a ${BF_OPENEXR}/lib/libIlmThread.a' -WITH_BF_DDS = 'true' +WITH_BF_DDS = True -WITH_BF_JPEG = 'true' +WITH_BF_JPEG = True BF_JPEG = LIBDIR + '/jpeg' BF_JPEG_INC = '${BF_JPEG}/include' BF_JPEG_LIB = 'jpeg' BF_JPEG_LIBPATH = '${BF_JPEG}/lib' -WITH_BF_PNG = 'true' +WITH_BF_PNG = True BF_PNG = LIBDIR + '/png' BF_PNG_INC = '${BF_PNG}/include' BF_PNG_LIB = 'png' @@ -135,32 +135,32 @@ BF_PNG_LIBPATH = '${BF_PNG}/lib' BF_TIFF = LIBDIR + '/tiff' BF_TIFF_INC = '${BF_TIFF}/include' -WITH_BF_ZLIB = 'true' +WITH_BF_ZLIB = True BF_ZLIB = '/usr' BF_ZLIB_INC = '${BF_ZLIB}/include' BF_ZLIB_LIB = 'z' -WITH_BF_INTERNATIONAL = 'true' +WITH_BF_INTERNATIONAL = True BF_GETTEXT = LIBDIR + '/gettext' BF_GETTEXT_INC = '${BF_GETTEXT}/include' BF_GETTEXT_LIB = 'intl' BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib' -WITH_BF_FTGL = 'true' +WITH_BF_FTGL = True BF_FTGL = '#extern/bFTGL' BF_FTGL_INC = '${BF_FTGL}/include' BF_FTGL_LIB = 'extern_ftgl' -WITH_BF_GAMEENGINE='true' -WITH_BF_PLAYER='true' +WITH_BF_GAMEENGINE=True +WITH_BF_PLAYER=True -WITH_BF_ODE = 'false' +WITH_BF_ODE = False BF_ODE = LIBDIR + '/ode' BF_ODE_INC = '${BF_ODE}/include' BF_ODE_LIB = '${BF_ODE}/lib/libode.a' -WITH_BF_BULLET = 'true' +WITH_BF_BULLET = True BF_BULLET = '#extern/bullet2/src' BF_BULLET_INC = '${BF_BULLET}' BF_BULLET_LIB = 'extern_bullet' @@ -169,9 +169,9 @@ BF_SOLID = '#extern/solid' BF_SOLID_INC = '${BF_SOLID}' BF_SOLID_LIB = 'extern_solid' -WITH_BF_YAFRAY = 'true' +WITH_BF_YAFRAY = True -#WITH_BF_NSPR = 'true' +#WITH_BF_NSPR = True #BF_NSPR = $(LIBDIR)/nspr #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr #BF_NSPR_LIB = @@ -186,7 +186,7 @@ WITH_BF_YAFRAY = 'true' # if this is not set. # # Be paranoid regarding library creation (do not update archives) -#BF_PARANOID = 'true' +#BF_PARANOID = True # enable freetype2 support for text objects BF_FREETYPE = LIBDIR + '/freetype' @@ -194,16 +194,16 @@ BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2' BF_FREETYPE_LIB = 'freetype' BF_FREETYPE_LIBPATH = '${BF_FREETYPE}/lib' -WITH_BF_QUICKTIME = 'true' # -DWITH_QUICKTIME +WITH_BF_QUICKTIME = True # -DWITH_QUICKTIME -WITH_BF_ICONV = 'true' +WITH_BF_ICONV = True BF_ICONV = LIBDIR + "/iconv" BF_ICONV_INC = '${BF_ICONV}/include' BF_ICONV_LIB = 'iconv' #BF_ICONV_LIBPATH = '${BF_ICONV}/lib' # Mesa Libs should go here if your using them as well.... -WITH_BF_STATICOPENGL = 'true' +WITH_BF_STATICOPENGL = True BF_OPENGL_LIB = 'GL GLU' BF_OPENGL_LIBPATH = '/System/Library/Frameworks/OpenGL.framework/Libraries' BF_OPENGL_LINKFLAGS = '-framework OpenGL' @@ -225,7 +225,7 @@ if MAC_MIN_VERS == '10.3': PLATFORM_LINKFLAGS = '-fuse-cxa-atexit '+PLATFORM_LINKFLAGS LLIBS = LLIBS + ' crt3.o' -if USE_SDK=='true': +if USE_SDK==True: SDK_FLAGS=['-isysroot', MACOSX_SDK,'-mmacosx-version-min='+MAC_MIN_VERS] PLATFORM_LINKFLAGS = '-mmacosx-version-min='+MAC_MIN_VERS+ ' -Wl,-syslibroot,' + MACOSX_SDK+" "+PLATFORM_LINKFLAGS CCFLAGS=SDK_FLAGS+CCFLAGS @@ -243,7 +243,7 @@ else: REL_CFLAGS = ['-O2'] REL_CCFLAGS = ['-O2'] -##BF_DEPEND = 'true' +##BF_DEPEND = True ## ##AR = ar ##ARFLAGS = ruv @@ -261,9 +261,9 @@ CC_WARN = ' -Wall -Wno-long-double' ##DYNLDFLAGS = -shared $(LDFLAGS) BF_PROFILE_FLAGS = ' -pg -g ' -BF_PROFILE = 'false' +BF_PROFILE = False -BF_DEBUG = 'false' +BF_DEBUG = False BF_DEBUG_FLAGS = '-g' BF_BUILDDIR='../build/darwin' diff --git a/config/linux2-config.py b/config/linux2-config.py index 74853de70b6..1e3110cd1db 100644 --- a/config/linux2-config.py +++ b/config/linux2-config.py @@ -1,20 +1,20 @@ LCGDIR = '../lib/linux2' LIBDIR = "${LCGDIR}" -WITH_BF_VERSE = 'false' +WITH_BF_VERSE = False BF_VERSE_INCLUDE = "#extern/verse/dist" BF_PYTHON = '/usr' BF_PYTHON_VERSION = '2.5' -WITH_BF_STATICPYTHON = 'false' +WITH_BF_STATICPYTHON = False BF_PYTHON_INC = '${BF_PYTHON}/include/python${BF_PYTHON_VERSION}' BF_PYTHON_BINARY = '${BF_PYTHON}/bin/python${BF_PYTHON_VERSION}' BF_PYTHON_LIB = 'python${BF_PYTHON_VERSION}' #BF_PYTHON+'/lib/python'+BF_PYTHON_VERSION+'/config/libpython'+BF_PYTHON_VERSION+'.a' BF_PYTHON_LINKFLAGS = ['-Xlinker', '-export-dynamic'] BF_PYTHON_LIB_STATIC = '${BF_PYTHON}/lib/libpython${BF_PYTHON_VERSION}.a' -WITH_BF_OPENAL = 'true' -WITH_BF_STATICOPENAL = 'false' +WITH_BF_OPENAL = True +WITH_BF_STATICOPENAL = False BF_OPENAL = '/usr' BF_OPENAL_INC = '${BF_OPENAL}/include' BF_OPENAL_LIB = 'openal' @@ -26,19 +26,19 @@ BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a' # BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a ${BF_OPENAL}/lib/libalut.a' BF_CXX = '/usr' -WITH_BF_STATICCXX = 'false' +WITH_BF_STATICCXX = False BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a' -WITH_BF_SDL = 'true' +WITH_BF_SDL = True BF_SDL = '/usr' #$(shell sdl-config --prefix) BF_SDL_INC = '${BF_SDL}/include/SDL' #$(shell $(BF_SDL)/bin/sdl-config --cflags) BF_SDL_LIB = 'SDL' #BF_SDL #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer -WITH_BF_FMOD = 'false' +WITH_BF_FMOD = False BF_FMOD = LIBDIR + '/fmod' -WITH_BF_OPENEXR = 'true' -WITH_BF_STATICOPENEXR = 'false' +WITH_BF_OPENEXR = True +WITH_BF_STATICOPENEXR = False BF_OPENEXR = '/usr' # when compiling with your own openexr lib you might need to set... # BF_OPENEXR_INC = '${BF_OPENEXR}/include/OpenEXR ${BF_OPENEXR}/include' @@ -49,14 +49,14 @@ BF_OPENEXR_LIB_STATIC = '${BF_OPENEXR}/lib/libHalf.a ${BF_OPENEXR}/lib/libIlmImf # BF_OPENEXR_LIBPATH = '${BF_OPENEXR}/lib' -WITH_BF_DDS = 'true' +WITH_BF_DDS = True -WITH_BF_JPEG = 'true' +WITH_BF_JPEG = True BF_JPEG = '/usr' BF_JPEG_INC = '${BF_JPEG}/include' BF_JPEG_LIB = 'jpeg' -WITH_BF_PNG = 'true' +WITH_BF_PNG = True BF_PNG = '/usr' BF_PNG_INC = '${BF_PNG}/include' BF_PNG_LIB = 'png' @@ -64,31 +64,31 @@ BF_PNG_LIB = 'png' BF_TIFF = '/usr' BF_TIFF_INC = '${BF_TIFF}/include' -WITH_BF_ZLIB = 'true' +WITH_BF_ZLIB = True BF_ZLIB = '/usr' BF_ZLIB_INC = '${BF_ZLIB}/include' BF_ZLIB_LIB = 'z' -WITH_BF_INTERNATIONAL = 'true' +WITH_BF_INTERNATIONAL = True BF_GETTEXT = '/usr' BF_GETTEXT_INC = '${BF_GETTEXT}/include' BF_GETTEXT_LIB = 'gettextlib' BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib' -WITH_BF_FTGL = 'true' +WITH_BF_FTGL = True BF_FTGL = '#extern/bFTGL' BF_FTGL_INC = '${BF_FTGL}/include' BF_FTGL_LIB = 'extern_ftgl' -WITH_BF_GAMEENGINE='false' +WITH_BF_GAMEENGINE=False -WITH_BF_ODE = 'false' +WITH_BF_ODE = False BF_ODE = LIBDIR + '/ode' BF_ODE_INC = BF_ODE + '/include' BF_ODE_LIB = BF_ODE + '/lib/libode.a' -WITH_BF_BULLET = 'true' +WITH_BF_BULLET = True BF_BULLET = '#extern/bullet2/src' BF_BULLET_INC = '${BF_BULLET}' BF_BULLET_LIB = 'extern_bullet' @@ -97,9 +97,9 @@ BF_SOLID = '#extern/solid' BF_SOLID_INC = '${BF_SOLID}' BF_SOLID_LIB = 'extern_solid' -WITH_BF_YAFRAY = 'true' +WITH_BF_YAFRAY = True -#WITH_BF_NSPR = 'true' +#WITH_BF_NSPR = True #BF_NSPR = $(LIBDIR)/nspr #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr #BF_NSPR_LIB = @@ -114,27 +114,27 @@ WITH_BF_YAFRAY = 'true' # if this is not set. # # Be paranoid regarding library creation (do not update archives) -#BF_PARANOID = 'true' +#BF_PARANOID = True # enable freetype2 support for text objects BF_FREETYPE = '/usr' BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2' BF_FREETYPE_LIB = 'freetype' -WITH_BF_QUICKTIME = 'false' # -DWITH_QUICKTIME +WITH_BF_QUICKTIME = False # -DWITH_QUICKTIME BF_QUICKTIME = '/usr/local' BF_QUICKTIME_INC = '${BF_QUICKTIME}/include' -WITH_BF_ICONV = 'false' +WITH_BF_ICONV = False BF_ICONV = LIBDIR + "/iconv" BF_ICONV_INC = '${BF_ICONV}/include' BF_ICONV_LIB = 'iconv' BF_ICONV_LIBPATH = '${BF_ICONV}/lib' -WITH_BF_BINRELOC = 'true' +WITH_BF_BINRELOC = True # enable ffmpeg support -WITH_BF_FFMPEG = 'true' # -DWITH_FFMPEG +WITH_BF_FFMPEG = True # -DWITH_FFMPEG BF_FFMPEG = '#extern/ffmpeg' BF_FFMPEG_LIB = '' # Uncomment the following two lines to use system's ffmpeg @@ -144,25 +144,25 @@ BF_FFMPEG_INC = '${BF_FFMPEG}/include' BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib' # enable ogg, vorbis and theora in ffmpeg -WITH_BF_OGG = 'false' # -DWITH_OGG +WITH_BF_OGG = False # -DWITH_OGG BF_OGG = '/usr' BF_OGG_INC = '${BF_OGG}/include' BF_OGG_LIB = 'ogg vorbis theoraenc theoradec' -WITH_BF_OPENJPEG = 'true' +WITH_BF_OPENJPEG = True BF_OPENJPEG = '#extern/libopenjpeg' BF_OPENJPEG_LIB = '' BF_OPENJPEG_INC = '${BF_OPENJPEG}/include' BF_OPENJPEG_LIBPATH='${BF_OPENJPEG}/lib' -WITH_BF_REDCODE = 'false' +WITH_BF_REDCODE = False BF_REDCODE = '#extern/libredcode' BF_REDCODE_LIB = '' BF_REDCODE_INC = '${BF_REDCODE}/include' BF_REDCODE_LIBPATH='${BF_REDCODE}/lib' # Mesa Libs should go here if your using them as well.... -WITH_BF_STATICOPENGL = 'false' +WITH_BF_STATICOPENGL = False BF_OPENGL = '/usr' BF_OPENGL_INC = '${BF_OPENGL}/include' BF_OPENGL_LIB = 'GL GLU X11 Xi' @@ -181,7 +181,7 @@ CPPFLAGS = ['-DXP_UNIX'] CXXFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing'] REL_CFLAGS = ['-O2'] REL_CCFLAGS = ['-O2'] -##BF_DEPEND = 'true' +##BF_DEPEND = True ## ##AR = ar ##ARFLAGS = ruv @@ -198,9 +198,9 @@ LLIBS = 'util c m dl pthread stdc++' ##DYNLDFLAGS = -shared $(LDFLAGS) BF_PROFILE_FLAGS = ['-pg','-g'] -BF_PROFILE = 'false' +BF_PROFILE = False -BF_DEBUG = 'false' +BF_DEBUG = False BF_DEBUG_FLAGS = '-g' BF_BUILDDIR = '../build/linux2' diff --git a/config/linuxcross-config.py b/config/linuxcross-config.py index 13f477d21f3..c10e9d76cb5 100644 --- a/config/linuxcross-config.py +++ b/config/linuxcross-config.py @@ -1,10 +1,10 @@ LCGDIR = '../lib/windows' LIBDIR = '${LCGDIR}' -WITH_BF_VERSE = 'false' +WITH_BF_VERSE = False BF_VERSE_INCLUDE = "#extern/verse/dist" -WITH_BF_YAFRAY = 'true' +WITH_BF_YAFRAY = True BF_PYTHON = LIBDIR + '/python' BF_PYTHON_VERSION = '2.5' @@ -13,8 +13,8 @@ BF_PYTHON_BINARY = 'python' BF_PYTHON_LIB = 'python25' BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib' -WITH_BF_OPENAL = 'true' -WITH_BF_STATICOPENAL = 'false' +WITH_BF_OPENAL = True +WITH_BF_STATICOPENAL = False BF_OPENAL = LIBDIR + '/openal' BF_OPENAL_INC = '${BF_OPENAL}/include' BF_OPENAL_LIB = 'openal_static' @@ -24,10 +24,10 @@ BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a' # Warning, this static lib configuration is untested! users of this OS please confirm. BF_CXX = '/usr' -WITH_BF_STATICCXX = 'false' +WITH_BF_STATICCXX = False BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a' -WITH_BF_SDL = 'true' +WITH_BF_SDL = True BF_SDL = LIBDIR + '/sdl' BF_SDL_INC = '${BF_SDL}/include' BF_SDL_LIB = 'SDL' @@ -38,11 +38,11 @@ BF_PTHREADS_INC = '${BF_PTHREADS}/include' BF_PTHREADS_LIB = 'pthreadGC2' BF_PTHREADS_LIBPATH = '${BF_PTHREADS}/lib' -WITH_BF_FMOD = 'false' +WITH_BF_FMOD = False BF_FMOD = LIBDIR + '/fmod' -WITH_BF_OPENEXR = 'true' -WITH_BF_STATICOPENEXR = 'false' +WITH_BF_OPENEXR = True +WITH_BF_STATICOPENEXR = False BF_OPENEXR = LIBDIR + '/gcc/openexr' BF_OPENEXR_INC = '${BF_OPENEXR}/include ${BF_OPENEXR}/include/OpenEXR' BF_OPENEXR_LIB = ' Half IlmImf Iex ' @@ -50,15 +50,15 @@ BF_OPENEXR_LIBPATH = '${BF_OPENEXR}/lib' # Warning, this static lib configuration is untested! users of this OS please confirm. BF_OPENEXR_LIB_STATIC = '${BF_OPENEXR}/lib/libHalf.a ${BF_OPENEXR}/lib/libIlmImf.a ${BF_OPENEXR}/lib/libIex.a ${BF_OPENEXR}/lib/libImath.a ${BF_OPENEXR}/lib/libIlmThread.a' -WITH_BF_DDS = 'true' +WITH_BF_DDS = True -WITH_BF_JPEG = 'true' +WITH_BF_JPEG = True BF_JPEG = LIBDIR + '/jpeg' BF_JPEG_INC = '${BF_JPEG}/include' BF_JPEG_LIB = 'jpeg' BF_JPEG_LIBPATH = '${BF_JPEG}/lib' -WITH_BF_PNG = 'true' +WITH_BF_PNG = True BF_PNG = LIBDIR + '/png' BF_PNG_INC = '${BF_PNG}/include' BF_PNG_LIB = 'png' @@ -67,32 +67,32 @@ BF_PNG_LIBPATH = '${BF_PNG}/lib' BF_TIFF = LIBDIR + '/tiff' BF_TIFF_INC = '${BF_TIFF}/include' -WITH_BF_ZLIB = 'true' +WITH_BF_ZLIB = True BF_ZLIB = LIBDIR + '/zlib' BF_ZLIB_INC = '${BF_ZLIB}/include' #BF_ZLIB_LIB = 'z' BF_ZLIB_LIBPATH = '${BF_ZLIB}/lib' -WITH_BF_INTERNATIONAL = 'true' +WITH_BF_INTERNATIONAL = True BF_GETTEXT = LIBDIR + '/gettext' BF_GETTEXT_INC = '${BF_GETTEXT}/include' BF_GETTEXT_LIB = 'gnu_gettext' BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib' -WITH_BF_FTGL = 'true' +WITH_BF_FTGL = True BF_FTGL = LIBDIR + '/ftgl' BF_FTGL_INC = '${BF_FTGL}/include' BF_FTGL_LIB = 'extern_ftgl' -WITH_BF_GAMEENGINE = 'false' +WITH_BF_GAMEENGINE = False -WITH_BF_ODE = 'true' +WITH_BF_ODE = True BF_ODE = LIBDIR + '/ode' BF_ODE_INC = BF_ODE + '/include' BF_ODE_LIB = BF_ODE + '/lib/libode.a' -WITH_BF_BULLET = 'true' +WITH_BF_BULLET = True BF_BULLET = '#extern/bullet2/src' BF_BULLET_INC = '${BF_BULLET}' BF_BULLET_LIB = 'extern_bullet' @@ -107,18 +107,18 @@ BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2' BF_FREETYPE_LIB = 'freetype' BF_FREETYPE_LIBPATH = '${BF_FREETYPE}/lib' -WITH_BF_QUICKTIME = 'false' # -DWITH_QUICKTIME +WITH_BF_QUICKTIME = False # -DWITH_QUICKTIME BF_QUICKTIME = '/usr/local' BF_QUICKTIME_INC = '${BF_QUICKTIME}/include' -WITH_BF_ICONV = 'false' +WITH_BF_ICONV = False BF_ICONV = LIBDIR + "/iconv" BF_ICONV_INC = '${BF_ICONV}/include' BF_ICONV_LIB = 'iconv' BF_ICONV_LIBPATH = '${BF_ICONV}/lib' # Mesa Libs should go here if your using them as well.... -WITH_BF_STATICOPENGL = 'false' +WITH_BF_STATICOPENGL = False BF_OPENGL = 'C:\\MingW' BF_OPENGL_INC = '${BF_OPENGL}/include' BF_OPENGL_LIBINC = '${BF_OPENGL}/lib' @@ -143,7 +143,7 @@ CC_WARN = [ '-Wall' ] LLIBS = [ '-ldxguid', '-lgdi32', '-lmsvcrt', '-lwinmm', '-lmingw32', '-lm', '-lws2_32', '-lz'] #'-lutil', '-lc', '-lm', '-ldl', '-lpthread' ] -BF_DEBUG = 'false' +BF_DEBUG = False BF_DEBUG_FLAGS= '' BF_BUILDDIR = '../build/linuxcross' diff --git a/config/openbsd3-config.py b/config/openbsd3-config.py index 1cd93008561..b2112c84b98 100644 --- a/config/openbsd3-config.py +++ b/config/openbsd3-config.py @@ -8,40 +8,40 @@ BF_PYTHON_BINARY = '${BF_PYTHON}/bin/python${BF_PYTHON_VERSION}' BF_PYTHON_LIB = 'python${BF_PYTHON_VERSION}' BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib/python${BF_PYTHON_VERSION}/config' -WITH_BF_OPENAL = 'false' -# WITH_BF_STATICOPENAL = 'false' +WITH_BF_OPENAL = False +# WITH_BF_STATICOPENAL = False #BF_OPENAL = LIBDIR + '/openal' #BF_OPENAL_INC = '${BF_OPENAL}/include' #BF_OPENAL_LIB = 'openal' #BF_OPENAL_LIBPATH = '${BF_OPENAL}/lib' #BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a' -WITH_BF_SDL = 'true' +WITH_BF_SDL = True BF_SDL = '/usr/local' #$(shell sdl-config --prefix) BF_SDL_INC = '${BF_SDL}/include/SDL' #$(shell $(BF_SDL)/bin/sdl-config --cflags) BF_SDL_LIB = 'SDL' #BF_SDL #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer BF_SDL_LIBPATH = '${BF_SDL}/lib' -WITH_BF_FMOD = 'false' +WITH_BF_FMOD = False BF_FMOD = LIBDIR + '/fmod' -WITH_BF_OPENEXR = 'false' -WITH_BF_STATICOPENEXR = 'false' +WITH_BF_OPENEXR = False +WITH_BF_STATICOPENEXR = False BF_OPENEXR = '/usr/local' BF_OPENEXR_INC = '${BF_OPENEXR}/include/OpenEXR' BF_OPENEXR_LIB = 'Half IlmImf Iex Imath ' # Warning, this static lib configuration is untested! users of this OS please confirm. BF_OPENEXR_LIB_STATIC = '${BF_OPENEXR}/lib/libHalf.a ${BF_OPENEXR}/lib/libIlmImf.a ${BF_OPENEXR}/lib/libIex.a ${BF_OPENEXR}/lib/libImath.a ${BF_OPENEXR}/lib/libIlmThread.a' -WITH_BF_DDS = 'true' +WITH_BF_DDS = True -WITH_BF_JPEG = 'true' +WITH_BF_JPEG = True BF_JPEG = '/usr/local' BF_JPEG_INC = '${BF_JPEG}/include' BF_JPEG_LIB = 'jpeg' BF_JPEG_LIBPATH = '${BF_JPEG}/lib' -WITH_BF_PNG = 'true' +WITH_BF_PNG = True BF_PNG = '/usr/local' BF_PNG_INC = '${BF_PNG}/include/libpng' BF_PNG_LIB = 'png' @@ -50,31 +50,31 @@ BF_PNG_LIBPATH = '${BF_PNG}/lib' BF_TIFF = '/usr/local' BF_TIFF_INC = '${BF_TIFF}/include' -WITH_BF_ZLIB = 'true' +WITH_BF_ZLIB = True BF_ZLIB = '/usr/local' BF_ZLIB_INC = '${BF_ZLIB}/include' BF_ZLIB_LIB = 'z' -WITH_BF_INTERNATIONAL = 'true' +WITH_BF_INTERNATIONAL = True BF_GETTEXT = '/usr/local' BF_GETTEXT_INC = '${BF_GETTEXT}/include' BF_GETTEXT_LIB = 'intl iconv' BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib' -WITH_BF_FTGL = 'true' +WITH_BF_FTGL = True BF_FTGL = '#extern/bFTGL' BF_FTGL_INC = '${BF_FTGL}/include' BF_FTGL_LIB = 'extern_ftgl' -WITH_BF_GAMEENGINE='false' +WITH_BF_GAMEENGINE=False -WITH_BF_ODE = 'false' +WITH_BF_ODE = False BF_ODE = LIBDIR + '/ode' BF_ODE_INC = '${BF_ODE}/include' BF_ODE_LIB = '${BF_ODE}/lib/libode.a' -WITH_BF_BULLET = 'true' +WITH_BF_BULLET = True BF_BULLET = '#extern/bullet2/src' BF_BULLET_INC = '${BF_BULLET}' BF_BULLET_LIB = 'extern_bullet' @@ -83,9 +83,9 @@ BF_SOLID = '#extern/solid' BF_SOLID_INC = '${BF_SOLID}' BF_SOLID_LIB = 'extern_solid' -WITH_BF_YAFRAY = 'true' +WITH_BF_YAFRAY = True -#WITH_BF_NSPR = 'true' +#WITH_BF_NSPR = True #BF_NSPR = $(LIBDIR)/nspr #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr #BF_NSPR_LIB = @@ -100,7 +100,7 @@ WITH_BF_YAFRAY = 'true' # if this is not set. # # Be paranoid regarding library creation (do not update archives) -#BF_PARANOID = 'true' +#BF_PARANOID = True # enable freetype2 support for text objects BF_FREETYPE = '/usr/X11R6' @@ -108,16 +108,16 @@ BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2' BF_FREETYPE_LIB = 'freetype' BF_FREETYPE_LIBPATH = '${BF_FREETYPE}/lib' -WITH_BF_QUICKTIME = 'false' # -DWITH_QUICKTIME +WITH_BF_QUICKTIME = False # -DWITH_QUICKTIME -WITH_BF_ICONV = 'false' +WITH_BF_ICONV = False BF_ICONV = LIBDIR + "/iconv" BF_ICONV_INC = '${BF_ICONV}/include' BF_ICONV_LIB = 'iconv' BF_ICONV_LIBPATH = '${BF_ICONV}/lib' # Mesa Libs should go here if your using them as well.... -WITH_BF_STATICOPENGL = 'true' +WITH_BF_STATICOPENGL = True BF_OPENGL = '/usr/X11R6' BF_OPENGL_INC = '${BF_OPENGL}/include' BF_OPENGL_LIB = 'GL GLU X11 Xi' @@ -137,7 +137,7 @@ CCFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing'] CXXFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing'] REL_CFLAGS = ['-O2'] REL_CCFLAGS = ['-O2'] -##BF_DEPEND = 'true' +##BF_DEPEND = True ## ##AR = ar ##ARFLAGS = ruv @@ -156,9 +156,9 @@ LLIBS = 'm stdc++ pthread util' ##DYNLDFLAGS = -shared $(LDFLAGS) BF_PROFILE_FLAGS = ' -pg -g ' -BF_PROFILE = 'false' +BF_PROFILE = False -BF_DEBUG = 'false' +BF_DEBUG = False BF_DEBUG_FLAGS = '-g' BF_BUILDDIR='../build/openbsd3' diff --git a/config/sunos5-config.py b/config/sunos5-config.py index a5ba33e44cd..bb6c5d89e46 100644 --- a/config/sunos5-config.py +++ b/config/sunos5-config.py @@ -8,8 +8,8 @@ BF_PYTHON_BINARY = '${BF_PYTHON}/bin/python${BF_PYTHON_VERSION}' BF_PYTHON_LIB = 'python${BF_PYTHON_VERSION}' #BF_PYTHON+'/lib/python'+BF_PYTHON_VERSION+'/config/libpython'+BF_PYTHON_VERSION+'.a' BF_PYTHON_LINKFLAGS = ['-Xlinker', '-export-dynamic'] -WITH_BF_OPENAL = 'true' -WITH_BF_STATICOPENAL = 'false' +WITH_BF_OPENAL = True +WITH_BF_STATICOPENAL = False BF_OPENAL = '/usr/local' BF_OPENAL_INC = '${BF_OPENAL}/include' BF_OPENAL_LIBPATH = '${BF_OPENAL}/lib' @@ -19,20 +19,20 @@ BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a' # Warning, this static lib configuration is untested! users of this OS please confirm. BF_CXX = '/usr' -WITH_BF_STATICCXX = 'false' +WITH_BF_STATICCXX = False BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a' -WITH_BF_SDL = 'true' +WITH_BF_SDL = True BF_SDL = '/usr/local' #$(shell sdl-config --prefix) BF_SDL_INC = '${BF_SDL}/include/SDL' #$(shell $(BF_SDL)/bin/sdl-config --cflags) BF_SDL_LIBPATH = '${BF_SDL}/lib' BF_SDL_LIB = 'SDL' #BF_SDL #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer -WITH_BF_FMOD = 'false' +WITH_BF_FMOD = False BF_FMOD = LIBDIR + '/fmod' -WITH_BF_OPENEXR = 'true' -WITH_BF_STATICOPENEXR = 'false' +WITH_BF_OPENEXR = True +WITH_BF_STATICOPENEXR = False BF_OPENEXR = '/usr/local' BF_OPENEXR_INC = ['${BF_OPENEXR}/include', '${BF_OPENEXR}/include/OpenEXR' ] BF_OPENEXR_LIBPATH = '${BF_OPENEXR}/lib' @@ -40,15 +40,15 @@ BF_OPENEXR_LIB = 'Half IlmImf Iex Imath ' # Warning, this static lib configuration is untested! users of this OS please confirm. BF_OPENEXR_LIB_STATIC = '${BF_OPENEXR}/lib/libHalf.a ${BF_OPENEXR}/lib/libIlmImf.a ${BF_OPENEXR}/lib/libIex.a ${BF_OPENEXR}/lib/libImath.a ${BF_OPENEXR}/lib/libIlmThread.a' -WITH_BF_DDS = 'true' +WITH_BF_DDS = True -WITH_BF_JPEG = 'true' +WITH_BF_JPEG = True BF_JPEG = '/usr/local' BF_JPEG_INC = '${BF_JPEG}/include' BF_JPEG_LIBPATH = '${BF_JPEG}/lib' BF_JPEG_LIB = 'jpeg' -WITH_BF_PNG = 'true' +WITH_BF_PNG = True BF_PNG = '/usr/local' BF_PNG_INC = '${BF_PNG}/include' BF_PNG_LIBPATH = '${BF_PNG}/lib' @@ -57,32 +57,32 @@ BF_PNG_LIB = 'png' BF_TIFF = '/usr/local' BF_TIFF_INC = '${BF_TIFF}/include' -WITH_BF_ZLIB = 'true' +WITH_BF_ZLIB = True BF_ZLIB = '/usr' BF_ZLIB_INC = '${BF_ZLIB}/include' BF_ZLIB_LIBPATH = '${BF_ZLIB}/lib' BF_ZLIB_LIB = 'z' -WITH_BF_INTERNATIONAL = 'true' +WITH_BF_INTERNATIONAL = True BF_GETTEXT = '/usr/local' BF_GETTEXT_INC = '${BF_GETTEXT}/include' BF_GETTEXT_LIB = 'gettextlib' BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib' -WITH_BF_FTGL = 'true' +WITH_BF_FTGL = True BF_FTGL = '#extern/bFTGL' BF_FTGL_INC = '${BF_FTGL}/include' BF_FTGL_LIB = 'extern_ftgl' -WITH_BF_GAMEENGINE='false' +WITH_BF_GAMEENGINE=False -WITH_BF_ODE = 'false' +WITH_BF_ODE = False BF_ODE = LIBDIR + '/ode' BF_ODE_INC = BF_ODE + '/include' BF_ODE_LIB = BF_ODE + '/lib/libode.a' -WITH_BF_BULLET = 'true' +WITH_BF_BULLET = True BF_BULLET = '#extern/bullet2/src' BF_BULLET_INC = '${BF_BULLET}' BF_BULLET_LIB = 'extern_bullet' @@ -91,9 +91,9 @@ BF_SOLID = '#extern/solid' BF_SOLID_INC = '${BF_SOLID}' BF_SOLID_LIB = 'extern_solid' -WITH_BF_YAFRAY = 'true' +WITH_BF_YAFRAY = True -#WITH_BF_NSPR = 'true' +#WITH_BF_NSPR = True #BF_NSPR = $(LIBDIR)/nspr #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr #BF_NSPR_LIB = @@ -108,7 +108,7 @@ WITH_BF_YAFRAY = 'true' # if this is not set. # # Be paranoid regarding library creation (do not update archives) -#BF_PARANOID = 'true' +#BF_PARANOID = True # enable freetype2 support for text objects BF_FREETYPE = '/usr/local' @@ -116,25 +116,25 @@ BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2' BF_FREETYPE_LIBPATH = '${BF_FREETYPE}/lib' BF_FREETYPE_LIB = 'freetype' -WITH_BF_QUICKTIME = 'false' # -DWITH_QUICKTIME +WITH_BF_QUICKTIME = False # -DWITH_QUICKTIME BF_QUICKTIME = '/usr/local' BF_QUICKTIME_INC = '${BF_QUICKTIME}/include' -WITH_BF_ICONV = 'true' +WITH_BF_ICONV = True BF_ICONV = "/usr" BF_ICONV_INC = '${BF_ICONV}/include' BF_ICONV_LIB = 'iconv' BF_ICONV_LIBPATH = '${BF_ICONV}/lib' # enable ffmpeg support -WITH_BF_FFMPEG = 'false' # -DWITH_FFMPEG +WITH_BF_FFMPEG = False # -DWITH_FFMPEG BF_FFMPEG = '/usr/local' BF_FFMPEG_INC = '${BF_FFMPEG}/include' BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib' BF_FFMPEG_LIB = 'avformat avcodec avutil' # Mesa Libs should go here if your using them as well.... -WITH_BF_STATICOPENGL = 'false' +WITH_BF_STATICOPENGL = False BF_OPENGL = '/usr/openwin' BF_OPENGL_INC = '${BF_OPENGL}/include' BF_OPENGL_LIB = 'GL GLU X11 Xi' @@ -153,7 +153,7 @@ CPPFLAGS = ['-DXP_UNIX', '-DSUN_OGL_NO_VERTEX_MACROS'] CXXFLAGS = ['-pipe','-fPIC','-funsigned-char','-fno-strict-aliasing'] REL_CFLAGS = ['-O2'] REL_CCFLAGS = ['-O2'] -##BF_DEPEND = 'true' +##BF_DEPEND = True ## ##AR = ar ##ARFLAGS = ruv @@ -170,9 +170,9 @@ LLIBS = 'c m dl pthread stdc++' ##DYNLDFLAGS = -shared $(LDFLAGS) BF_PROFILE_FLAGS = ['-pg','-g'] -BF_PROFILE = 'false' +BF_PROFILE = False -BF_DEBUG = 'false' +BF_DEBUG = False BF_DEBUG_FLAGS = '' BF_BUILDDIR = '../build/sunos5' diff --git a/config/win32-mingw-config.py b/config/win32-mingw-config.py index 65b7beb79ad..d7ecad33bca 100644 --- a/config/win32-mingw-config.py +++ b/config/win32-mingw-config.py @@ -1,7 +1,7 @@ LCGDIR = '#../lib/windows' LIBDIR = "${LCGDIR}" -WITH_BF_VERSE = 'false' +WITH_BF_VERSE = False BF_VERSE_INCLUDE = "#extern/verse/dist" BF_PYTHON = LIBDIR + '/python' @@ -11,8 +11,8 @@ BF_PYTHON_BINARY = 'python' BF_PYTHON_LIB = 'python25' BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib' -WITH_BF_OPENAL = 'true' -WITH_BF_STATICOPENAL = 'false' +WITH_BF_OPENAL = True +WITH_BF_STATICOPENAL = False BF_OPENAL = LIBDIR + '/openal' BF_OPENAL_INC = '${BF_OPENAL}/include' BF_OPENAL_LIB = 'dxguid openal_static' @@ -20,12 +20,12 @@ BF_OPENAL_LIBPATH = '${BF_OPENAL}/lib' # Warning, this static lib configuration is untested! users of this OS please confirm. BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a' -WITH_BF_FFMPEG = 'false' +WITH_BF_FFMPEG = False BF_FFMPEG_LIB = 'avformat swscale avcodec avutil xvidcore x264' BF_FFMPEG_LIBPATH = LIBDIR + '/gcc/ffmpeg/lib' BF_FFMPEG_INC = LIBDIR + '/gcc/ffmpeg/include' -WITH_BF_SDL = 'true' +WITH_BF_SDL = True BF_SDL = LIBDIR + '/sdl' BF_SDL_INC = '${BF_SDL}/include' BF_SDL_LIB = 'SDL' @@ -36,11 +36,11 @@ BF_PTHREADS_INC = '${BF_PTHREADS}/include' BF_PTHREADS_LIB = 'pthreadGC2' BF_PTHREADS_LIBPATH = '${BF_PTHREADS}/lib' -WITH_BF_FMOD = 'false' +WITH_BF_FMOD = False BF_FMOD = LIBDIR + '/fmod' -WITH_BF_OPENEXR = 'true' -WITH_BF_STATICOPENEXR = 'false' +WITH_BF_OPENEXR = True +WITH_BF_STATICOPENEXR = False BF_OPENEXR = LIBDIR + '/gcc/openexr' BF_OPENEXR_INC = '${BF_OPENEXR}/include ${BF_OPENEXR}/include/OpenEXR' BF_OPENEXR_LIB = ' Half IlmImf Iex ' @@ -48,15 +48,15 @@ BF_OPENEXR_LIBPATH = '${BF_OPENEXR}/lib' # Warning, this static lib configuration is untested! users of this OS please confirm. BF_OPENEXR_LIB_STATIC = '${BF_OPENEXR}/lib/libHalf.a ${BF_OPENEXR}/lib/libIlmImf.a ${BF_OPENEXR}/lib/libIex.a ${BF_OPENEXR}/lib/libImath.a ${BF_OPENEXR}/lib/libIlmThread.a' -WITH_BF_DDS = 'true' +WITH_BF_DDS = True -WITH_BF_JPEG = 'true' +WITH_BF_JPEG = True BF_JPEG = LIBDIR + '/jpeg' BF_JPEG_INC = '${BF_JPEG}/include' BF_JPEG_LIB = 'jpeg' BF_JPEG_LIBPATH = '${BF_JPEG}/lib' -WITH_BF_PNG = 'true' +WITH_BF_PNG = True BF_PNG = LIBDIR + '/png' BF_PNG_INC = '${BF_PNG}/include' BF_PNG_LIB = 'png' @@ -65,31 +65,31 @@ BF_PNG_LIBPATH = '${BF_PNG}/lib' BF_TIFF = LIBDIR + '/tiff' BF_TIFF_INC = '${BF_TIFF}/include' -WITH_BF_ZLIB = 'true' +WITH_BF_ZLIB = True BF_ZLIB = LIBDIR + '/zlib' BF_ZLIB_INC = '${BF_ZLIB}/include' BF_ZLIB_LIBPATH = '${BF_ZLIB}/lib' -WITH_BF_INTERNATIONAL = 'true' +WITH_BF_INTERNATIONAL = True BF_GETTEXT = LIBDIR + '/gettext' BF_GETTEXT_INC = '${BF_GETTEXT}/include' BF_GETTEXT_LIB = 'gnu_gettext' BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib' -WITH_BF_FTGL = 'true' +WITH_BF_FTGL = True BF_FTGL = LIBDIR + '/ftgl' BF_FTGL_INC = '${BF_FTGL}/include' BF_FTGL_LIB = 'extern_ftgl' -WITH_BF_GAMEENGINE = 'false' +WITH_BF_GAMEENGINE = False -WITH_BF_ODE = 'true' +WITH_BF_ODE = True BF_ODE = LIBDIR + '/ode' BF_ODE_INC = BF_ODE + '/include' BF_ODE_LIB = BF_ODE + '/lib/libode.a' -WITH_BF_BULLET = 'true' +WITH_BF_BULLET = True BF_BULLET = '#extern/bullet2/src' BF_BULLET_INC = '${BF_BULLET}' BF_BULLET_LIB = 'extern_bullet' @@ -101,9 +101,9 @@ BF_SOLID_LIB = 'extern_solid' BF_WINTAB = LIBDIR + '/wintab' BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE' -WITH_BF_YAFRAY = 'true' +WITH_BF_YAFRAY = True -#WITH_BF_NSPR = 'true' +#WITH_BF_NSPR = True #BF_NSPR = $(LIBDIR)/nspr #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr #BF_NSPR_LIB = @@ -123,18 +123,18 @@ BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2' BF_FREETYPE_LIB = 'freetype' BF_FREETYPE_LIBPATH = '${BF_FREETYPE}/lib' -WITH_BF_QUICKTIME = 'false' # -DWITH_QUICKTIME +WITH_BF_QUICKTIME = False # -DWITH_QUICKTIME BF_QUICKTIME = '/usr/local' BF_QUICKTIME_INC = '${BF_QUICKTIME}/include' -WITH_BF_ICONV = 'false' +WITH_BF_ICONV = False BF_ICONV = LIBDIR + "/iconv" BF_ICONV_INC = '${BF_ICONV}/include' BF_ICONV_LIB = 'iconv' BF_ICONV_LIBPATH = '${BF_ICONV}/lib' # Mesa Libs should go here if your using them as well.... -WITH_BF_STATICOPENGL = 'false' +WITH_BF_STATICOPENGL = False BF_OPENGL = 'C:\\MingW' BF_OPENGL_INC = '${BF_OPENGL}/include' BF_OPENGL_LIBINC = '${BF_OPENGL}/lib' @@ -159,11 +159,11 @@ CC_WARN = [ '-Wall' ] LLIBS = ['-lshell32', '-lshfolder', '-lgdi32', '-lmsvcrt', '-lwinmm', '-lmingw32', '-lm', '-lws2_32', '-lz', '-lstdc++'] -BF_DEBUG = 'false' +BF_DEBUG = False BF_DEBUG_FLAGS= '-g' BF_PROFILE_FLAGS = ['-pg','-g'] -BF_PROFILE = 'false' +BF_PROFILE = False BF_BUILDDIR = '..\\build\\win32-mingw' BF_INSTALLDIR='..\\install\\win32-mingw' diff --git a/config/win32-vc-config.py b/config/win32-vc-config.py index 14fd8b3aac7..ec401e3ad57 100644 --- a/config/win32-vc-config.py +++ b/config/win32-vc-config.py @@ -1,11 +1,11 @@ LCGDIR = '#../lib/windows' LIBDIR = '${LCGDIR}' -WITH_BF_VERSE = 'false' +WITH_BF_VERSE = False BF_VERSE_INCLUDE = "#extern/verse/dist" # enable ffmpeg support -WITH_BF_FFMPEG = 'true' # -DWITH_FFMPEG +WITH_BF_FFMPEG = True # -DWITH_FFMPEG BF_FFMPEG = LIBDIR +'/ffmpeg' BF_FFMPEG_INC = '${BF_FFMPEG}/include' BF_FFMPEG_LIBPATH='${BF_FFMPEG}/lib' @@ -18,8 +18,8 @@ BF_PYTHON_BINARY = 'python' BF_PYTHON_LIB = 'python25' BF_PYTHON_LIBPATH = '${BF_PYTHON}/lib' -WITH_BF_OPENAL = 'true' -WITH_BF_STATICOPENAL = 'false' +WITH_BF_OPENAL = True +WITH_BF_STATICOPENAL = False BF_OPENAL = LIBDIR + '/openal' BF_OPENAL_INC = '${BF_OPENAL}/include ${BF_OPENAL}/include/AL ' BF_OPENAL_LIB = 'dxguid openal_static' @@ -29,16 +29,16 @@ BF_OPENAL_LIB_STATIC = '${BF_OPENAL}/lib/libopenal.a' # TODO - are these useful on win32? # BF_CXX = '/usr' -# WITH_BF_STATICCXX = 'false' +# WITH_BF_STATICCXX = False # BF_CXX_LIB_STATIC = '${BF_CXX}/lib/libstdc++.a' -WITH_BF_ICONV = 'true' +WITH_BF_ICONV = True BF_ICONV = LIBDIR + '/iconv' BF_ICONV_INC = '${BF_ICONV}/include' BF_ICONV_LIB = 'iconv' BF_ICONV_LIBPATH = '${BF_ICONV}/lib' -WITH_BF_SDL = 'true' +WITH_BF_SDL = True BF_SDL = LIBDIR + '/sdl' BF_SDL_INC = '${BF_SDL}/include' BF_SDL_LIB = 'SDL.lib' @@ -49,11 +49,11 @@ BF_PTHREADS_INC = '${BF_PTHREADS}/include' BF_PTHREADS_LIB = 'pthreadVC2' BF_PTHREADS_LIBPATH = '${BF_PTHREADS}/lib' -WITH_BF_FMOD = 'false' +WITH_BF_FMOD = False BF_FMOD = LIBDIR + '/fmod' -WITH_BF_OPENEXR = 'true' -WITH_BF_STATICOPENEXR = 'false' +WITH_BF_OPENEXR = True +WITH_BF_STATICOPENEXR = False BF_OPENEXR = LIBDIR + '/openexr' BF_OPENEXR_INC = '${BF_OPENEXR}/include ${BF_OPENEXR}/include/IlmImf ${BF_OPENEXR}/include/Iex ${BF_OPENEXR}/include/Imath ' BF_OPENEXR_LIB = ' Iex Half IlmImf Imath IlmThread ' @@ -61,15 +61,15 @@ BF_OPENEXR_LIBPATH = '${BF_OPENEXR}/lib_vs2008' # Warning, this static lib configuration is untested! users of this OS please confirm. BF_OPENEXR_LIB_STATIC = '${BF_OPENEXR}/lib/libHalf.a ${BF_OPENEXR}/lib/libIlmImf.a ${BF_OPENEXR}/lib/libIex.a ${BF_OPENEXR}/lib/libImath.a ${BF_OPENEXR}/lib/libIlmThread.a' -WITH_BF_DDS = 'true' +WITH_BF_DDS = True -WITH_BF_JPEG = 'true' +WITH_BF_JPEG = True BF_JPEG = LIBDIR + '/jpeg' BF_JPEG_INC = '${BF_JPEG}/include' BF_JPEG_LIB = 'libjpeg' BF_JPEG_LIBPATH = '${BF_JPEG}/lib' -WITH_BF_PNG = 'true' +WITH_BF_PNG = True BF_PNG = LIBDIR + '/png' BF_PNG_INC = '${BF_PNG}/include' BF_PNG_LIB = 'libpng_st' @@ -78,33 +78,33 @@ BF_PNG_LIBPATH = '${BF_PNG}/lib' BF_TIFF = LIBDIR + '/tiff' BF_TIFF_INC = '${BF_TIFF}/include' -WITH_BF_ZLIB = 'true' +WITH_BF_ZLIB = True BF_ZLIB = LIBDIR + '/zlib' BF_ZLIB_INC = '${BF_ZLIB}/include' BF_ZLIB_LIB = 'libz' BF_ZLIB_LIBPATH = '${BF_ZLIB}/lib' -WITH_BF_INTERNATIONAL = 'true' +WITH_BF_INTERNATIONAL = True BF_GETTEXT = LIBDIR + '/gettext' BF_GETTEXT_INC = '${BF_GETTEXT}/include' BF_GETTEXT_LIB = 'gnu_gettext' BF_GETTEXT_LIBPATH = '${BF_GETTEXT}/lib' -WITH_BF_FTGL = 'true' +WITH_BF_FTGL = True BF_FTGL = LIBDIR + '/ftgl' BF_FTGL_INC = '${BF_FTGL}/include' BF_FTGL_LIB = 'extern_ftgl' -WITH_BF_GAMEENGINE = 'true' -WITH_BF_PLAYER = 'true' +WITH_BF_GAMEENGINE = True +WITH_BF_PLAYER = True -WITH_BF_ODE = 'true' +WITH_BF_ODE = True BF_ODE = LIBDIR + '/ode' BF_ODE_INC = BF_ODE + '/include' BF_ODE_LIB = BF_ODE + '/lib/libode.a' -WITH_BF_BULLET = 'true' +WITH_BF_BULLET = True BF_BULLET = '#extern/bullet2/src' BF_BULLET_INC = '${BF_BULLET}' BF_BULLET_LIB = 'extern_bullet' @@ -116,11 +116,11 @@ BF_SOLID_LIB = 'extern_solid' BF_WINTAB = LIBDIR + '/wintab' BF_WINTAB_INC = '${BF_WINTAB}/INCLUDE' -WITH_BF_YAFRAY = 'true' +WITH_BF_YAFRAY = True -WITH_BF_BINRELOC = 'false' +WITH_BF_BINRELOC = False -#WITH_BF_NSPR = 'true' +#WITH_BF_NSPR = True #BF_NSPR = $(LIBDIR)/nspr #BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr #BF_NSPR_LIB = @@ -135,21 +135,22 @@ WITH_BF_BINRELOC = 'false' # if this is not set. # # Be paranoid regarding library creation (do not update archives) -#BF_PARANOID = 'true' +#BF_PARANOID = True # enable freetype2 support for text objects +BF_WITH_FREETYPE = True BF_FREETYPE = LIBDIR + '/freetype' BF_FREETYPE_INC = '${BF_FREETYPE}/include ${BF_FREETYPE}/include/freetype2' BF_FREETYPE_LIB = 'freetype2ST' BF_FREETYPE_LIBPATH = '${BF_FREETYPE}/lib' -WITH_BF_QUICKTIME = 'true' # -DWITH_QUICKTIME +WITH_BF_QUICKTIME = True # -DWITH_QUICKTIME BF_QUICKTIME = LIBDIR + '/QTDevWin' BF_QUICKTIME_INC = '${BF_QUICKTIME}/CIncludes' BF_QUICKTIME_LIB = 'qtmlClient' BF_QUICKTIME_LIBPATH = '${BF_QUICKTIME}/Libraries' -WITH_BF_STATICOPENGL = 'false' +WITH_BF_STATICOPENGL = False BF_OPENGL_INC = '${BF_OPENGL}/include' BF_OPENGL_LIBINC = '${BF_OPENGL}/lib' BF_OPENGL_LIB = 'opengl32 glu32' diff --git a/extern/bFTGL/SConscript b/extern/bFTGL/SConscript index c03992631e6..f377c61f01d 100644 --- a/extern/bFTGL/SConscript +++ b/extern/bFTGL/SConscript @@ -4,24 +4,6 @@ import os Import('env') -# Import the C flags set in the SConstruct file -#Import ('cflags') -#Import ('defines') -#Import ('user_options_dict') - -#if sys.platform=='linux2' or sys.platform=='linux-i386': -# ftgl_env.Append (CCFLAGS = ['-O2', '-ansi']) -#elif sys.platform=='win32': - #ftgl_env.Append (CCFLAGS = ['/O2']) -#elif sys.platform=='sunos': -# ftgl_env.Append (CCFLAGS = ['Xc', '-v', '-fast']) -#elif sys.platform=='darwin': -# ftgl_env.Append (CCFLAGS = ['-O2', '-pipe', '-fPIC', '-funsigned-char', '-ffast-math']) -#else: -# ftgl_env.Append (CCFLAGS = cflags) - -#ftgl_env.Append (CPPDEFINES = defines) - incs = 'include src ' + env['BF_FREETYPE_INC'] + ' ' + env['BF_OPENGL_INC'] defs = '' diff --git a/intern/SConscript b/intern/SConscript index f6092b7bd02..82c7739bf42 100644 --- a/intern/SConscript +++ b/intern/SConscript @@ -20,7 +20,7 @@ SConscript(['SoundSystem/SConscript', # perhaps get rid of intern/csg? NEW_CSG='false' -if env['BF_NO_ELBEEM'] == 0: +if not env['BF_NO_ELBEEM']: SConscript(['elbeem/SConscript']) if NEW_CSG=='false': diff --git a/intern/elbeem/SConscript b/intern/elbeem/SConscript index 68892ac261c..f1c09423f04 100644 --- a/intern/elbeem/SConscript +++ b/intern/elbeem/SConscript @@ -7,7 +7,7 @@ sources = env.Glob('intern/*.cpp') defs = 'NOGUI ELBEEM_BLENDER=1' -if env['WITH_BF_OPENMP'] == 1: +if env['WITH_BF_OPENMP']: defs += ' PARALLEL' if env['OURPLATFORM']=='win32-vc': diff --git a/source/SConscript b/source/SConscript index ca264579f6e..9b497edd85a 100644 --- a/source/SConscript +++ b/source/SConscript @@ -4,7 +4,7 @@ Import ('env') SConscript(['blender/SConscript', 'kernel/SConscript', 'creator/SConscript']) -if env['WITH_BF_GAMEENGINE'] == 1: +if env['WITH_BF_GAMEENGINE']: SConscript (['gameengine/SConscript']) if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw'): diff --git a/source/blender/SConscript b/source/blender/SConscript index 25745c0e51a..decbbf35642 100644 --- a/source/blender/SConscript +++ b/source/blender/SConscript @@ -18,17 +18,17 @@ SConscript(['avi/SConscript', 'src/SConscript', 'nodes/SConscript']) -if env['WITH_BF_YAFRAY'] == 1: +if env['WITH_BF_YAFRAY']: SConscript(['yafray/SConscript']) -if env['WITH_BF_INTERNATIONAL'] == 1: +if env['WITH_BF_INTERNATIONAL']: SConscript (['ftfont/SConscript']) -if env['WITH_BF_DDS'] == 1: +if env['WITH_BF_DDS']: SConscript (['imbuf/intern/dds/SConscript']) -if env['WITH_BF_OPENEXR'] == 1: +if env['WITH_BF_OPENEXR']: SConscript (['imbuf/intern/openexr/SConscript']) -if env['WITH_BF_QUICKTIME'] == 1: +if env['WITH_BF_QUICKTIME']: SConscript (['quicktime/SConscript']) diff --git a/source/blender/blenkernel/SConscript b/source/blender/blenkernel/SConscript index f891b307b2c..82743ef5ea7 100644 --- a/source/blender/blenkernel/SConscript +++ b/source/blender/blenkernel/SConscript @@ -29,21 +29,21 @@ if env['WITH_BF_VERSE']: if env['WITH_BF_VERSE']: defs += ' WITH_VERSE' -if env['WITH_BF_OPENEXR'] == 1: +if env['WITH_BF_OPENEXR']: defs += ' WITH_OPENEXR' -if env['WITH_BF_DDS'] == 1: +if env['WITH_BF_DDS']: defs += ' WITH_DDS' -if env['WITH_BF_FFMPEG'] == 1: +if env['WITH_BF_FFMPEG']: defs += ' WITH_FFMPEG' incs += ' ' + env['BF_FFMPEG_INC'] -if env['WITH_BF_QUICKTIME'] == 1: +if env['WITH_BF_QUICKTIME']: defs += ' WITH_QUICKTIME' incs += ' ' + env['BF_QUICKTIME_INC'] -if env['BF_NO_ELBEEM'] == 1: +if env['BF_NO_ELBEEM']: defs += ' DISABLE_ELBEEM' if env['WITH_BF_PLAYER']: diff --git a/source/blender/blenlib/SConscript b/source/blender/blenlib/SConscript index 65cebf02f62..e7a4f2eaf13 100644 --- a/source/blender/blenlib/SConscript +++ b/source/blender/blenlib/SConscript @@ -10,7 +10,7 @@ incs += ' ' + env['BF_ZLIB_INC'] incs += ' ' + env['BF_SDL_INC'] defs = '' -if env['WITH_BF_INTERNATIONAL'] == 1: +if env['WITH_BF_INTERNATIONAL']: defs = 'WITH_FREETYPE2' if env['WITH_BF_VERSE']: diff --git a/source/blender/blenpluginapi/SConscript b/source/blender/blenpluginapi/SConscript index d17a35e933e..4cf52a50e8c 100644 --- a/source/blender/blenpluginapi/SConscript +++ b/source/blender/blenpluginapi/SConscript @@ -7,7 +7,7 @@ incs = '. .. #/intern/guardedalloc ../blenlib ../imbuf ../makesdna' defs = [] -if env['WITH_BF_QUICKTIME'] == 1: +if env['WITH_BF_QUICKTIME']: defs.append('WITH_QUICKTIME') incs += ' ' + env['BF_QUICKTIME_INC'] diff --git a/source/blender/imbuf/SConscript b/source/blender/imbuf/SConscript index 7349f481731..4eba4a843b2 100644 --- a/source/blender/imbuf/SConscript +++ b/source/blender/imbuf/SConscript @@ -17,25 +17,25 @@ if env['WITH_BF_VERSE']: defs.append('WITH_VERSE') incs += ' ' + env['BF_VERSE_INCLUDE'] -if env['WITH_BF_OPENEXR'] == 1: +if env['WITH_BF_OPENEXR']: defs.append('WITH_OPENEXR') -if env['WITH_BF_DDS'] == 1: +if env['WITH_BF_DDS']: defs.append('WITH_DDS') -if env['WITH_BF_FFMPEG'] == 1: +if env['WITH_BF_FFMPEG']: defs.append('WITH_FFMPEG') incs += ' ' + env['BF_FFMPEG_INC'] -if env['WITH_BF_OPENJPEG'] == 1: +if env['WITH_BF_OPENJPEG']: defs.append('WITH_OPENJPEG') incs += ' ' + env['BF_OPENJPEG_INC'] -if env['WITH_BF_REDCODE'] == 1: +if env['WITH_BF_REDCODE']: defs.append('WITH_REDCODE') incs += ' ' + env['BF_REDCODE_INC'] -if env['WITH_BF_QUICKTIME']==1: +if env['WITH_BF_QUICKTIME']: incs += ' ' + env['BF_QUICKTIME_INC'] defs.append('WITH_QUICKTIME') diff --git a/source/blender/nodes/SConscript b/source/blender/nodes/SConscript index 8af7b67520e..f80f4b521db 100644 --- a/source/blender/nodes/SConscript +++ b/source/blender/nodes/SConscript @@ -31,14 +31,14 @@ if env['WITH_BF_VERSE']: if env['WITH_BF_VERSE']: defs += ' WITH_VERSE' -if env['WITH_BF_OPENEXR'] == 1: +if env['WITH_BF_OPENEXR']: defs += ' WITH_OPENEXR' -if env['WITH_BF_FFMPEG'] == 1: +if env['WITH_BF_FFMPEG']: defs += ' WITH_FFMPEG' incs += ' ' + env['BF_FFMPEG_INC'] -if env['WITH_BF_QUICKTIME'] == 1: +if env['WITH_BF_QUICKTIME']: defs += ' WITH_QUICKTIME' incs += ' ' + env['BF_QUICKTIME_INC'] diff --git a/source/blender/python/SConscript b/source/blender/python/SConscript index 1f0cbd2c86d..670041a6504 100644 --- a/source/blender/python/SConscript +++ b/source/blender/python/SConscript @@ -14,17 +14,17 @@ defs = [] if env['OURPLATFORM'] in ('win32-mingw') and env['BF_DEBUG']: defs.append('Py_TRACE_REFS') -if env['WITH_BF_QUICKTIME']==1: +if env['WITH_BF_QUICKTIME']: incs += ' ' + env['BF_QUICKTIME_INC'] defs.append('WITH_QUICKTIME') -if env['WITH_BF_OPENEXR'] == 1: +if env['WITH_BF_OPENEXR']: defs.append('WITH_OPENEXR') -if env['WITH_BF_FFMPEG'] == 1: +if env['WITH_BF_FFMPEG']: defs.append('WITH_FFMPEG') -if env['BF_BUILDINFO'] == 1: +if env['BF_BUILDINFO']: defs.append('NAN_BUILDINFO') env.BlenderLib ( libname='blender_python', sources = Split(sources), includes = Split(incs), defines = defs, libtype=['core','game2'], priority = [60,115] ) diff --git a/source/blender/render/SConscript b/source/blender/render/SConscript index f0d1353b0d3..607ddf5c7a3 100644 --- a/source/blender/render/SConscript +++ b/source/blender/render/SConscript @@ -10,16 +10,16 @@ incs += ' ../quicktime ../include ../../kernel/gen_messaging ../blenloader' defs = [] -if env['WITH_BF_YAFRAY'] == 1: +if env['WITH_BF_YAFRAY']: incs += ' ../yafray' else: defs.append('DISABLE_YAFRAY') -if env['WITH_BF_QUICKTIME'] == 1: +if env['WITH_BF_QUICKTIME']: defs.append('WITH_QUICKTIME') incs += ' ' + env['BF_QUICKTIME_INC'] -if env['WITH_BF_FFMPEG'] == 1: +if env['WITH_BF_FFMPEG']: defs.append('WITH_FFMPEG') if env['WITH_BF_OPENEXR']: diff --git a/source/blender/src/SConscript b/source/blender/src/SConscript index 5365908c130..47b269c85d7 100644 --- a/source/blender/src/SConscript +++ b/source/blender/src/SConscript @@ -5,7 +5,7 @@ Import ('env') sources = env.Glob('*.c') -if env['BF_SPLIT_SRC'] == 1: +if env['BF_SPLIT_SRC']: numobj = len(sources) maxobj = 30 @@ -36,36 +36,36 @@ incs += ' ' + env['BF_OPENGL_INC'] defs = [] -if env['BF_TWEAK_MODE'] == 1: +if env['BF_TWEAK_MODE']: defs.append('TWEAK_MODE') -if env['WITH_BF_YAFRAY'] == 0: +if not env['WITH_BF_YAFRAY']: defs.append('DISABLE_YAFRAY') -if env['WITH_BF_INTERNATIONAL'] == 1: +if env['WITH_BF_INTERNATIONAL']: incs += ' ../ftfont' defs.append('INTERNATIONAL') defs.append('FTGL_STATIC_LIBRARY') -if env['WITH_BF_OPENEXR'] == 1: +if env['WITH_BF_OPENEXR']: defs.append('WITH_OPENEXR') -if env['WITH_BF_DDS'] == 1: +if env['WITH_BF_DDS']: defs.append('WITH_DDS') -if env['WITH_BF_QUICKTIME']==1: +if env['WITH_BF_QUICKTIME']: incs += ' ' + env['BF_QUICKTIME_INC'] defs.append('WITH_QUICKTIME') -if env['WITH_BF_ICONV'] == 1: +if env['WITH_BF_ICONV']: incs += ' ' + env['BF_ICONV_INC'] defs.append('WITH_ICONV') -if env['WITH_BF_FFMPEG'] == 1: +if env['WITH_BF_FFMPEG']: defs.append('WITH_FFMPEG') incs += ' ' + env['BF_FFMPEG_INC'] -if env['WITH_BF_OGG'] == 1: +if env['WITH_BF_OGG']: defs.append('WITH_OGG') if env['OURPLATFORM'] in ('win32-vc', 'win32-mingw'): @@ -76,16 +76,16 @@ if env['WITH_BF_VERSE']: incs += ' ' + env['BF_VERSE_INCLUDE'] # TODO buildinfo -if env['BF_BUILDINFO'] == 1: +if env['BF_BUILDINFO']: defs.append('NAN_BUILDINFO') -if env['BF_NO_ELBEEM'] == 1: +if env['BF_NO_ELBEEM']: defs.append('DISABLE_ELBEEM') -if env['WITH_BF_SDL'] == 0: +if not env['WITH_BF_SDL']: defs.append('DISABLE_SDL') -if (env['BF_SPLIT_SRC'] == 1) and (env['OURPLATFORM'] == 'win32-mingw'): +if env['BF_SPLIT_SRC'] and (env['OURPLATFORM'] == 'win32-mingw'): for i in range(numlibs): env.BlenderLib ( libname = 'src%d' % (i), sources = subsources[i], includes = Split(incs), defines = defs, libtype=['core', 'intern'], priority = [5, 25] ) else: diff --git a/source/creator/SConscript b/source/creator/SConscript index 15f73040f4b..c5a661abd69 100644 --- a/source/creator/SConscript +++ b/source/creator/SConscript @@ -11,15 +11,15 @@ incs += ' ../kernel/gen_system #/extern/glew/include ../blender/gpu' incs += ' ' + env['BF_OPENGL_INC'] defs = [] -if env['WITH_BF_QUICKTIME']==1: +if env['WITH_BF_QUICKTIME']: incs += ' ' + env['BF_QUICKTIME_INC'] defs.append('WITH_QUICKTIME') -if env['WITH_BF_BINRELOC']==1: +if env['WITH_BF_BINRELOC']: incs += ' ../../extern/binreloc/include' defs.append('WITH_BINRELOC') -if env['WITH_BF_OPENEXR']==1: +if env['WITH_BF_OPENEXR']: defs.append('WITH_OPENEXR') if not env['WITH_BF_SDL']: diff --git a/tools/Blender.py b/tools/Blender.py index 9baeb374af8..dd617f3c563 100644 --- a/tools/Blender.py +++ b/tools/Blender.py @@ -155,7 +155,7 @@ def setup_syslibs(lenv): ] if not lenv['WITH_BF_STATICPYTHON']: - if lenv['BF_DEBUG']==1 and lenv['OURPLATFORM'] in ('win32-vc'): + if lenv['BF_DEBUG'] and lenv['OURPLATFORM'] in ('win32-vc'): syslibs.append(lenv['BF_PYTHON_LIB']+'_d') else: syslibs.append(lenv['BF_PYTHON_LIB']) @@ -215,7 +215,7 @@ def buildinfo(lenv, build_type): build_rev = os.popen('svnversion').read()[:-1] # remove \n obj = [] - if lenv['BF_BUILDINFO']==1: #user_options_dict['USE_BUILDINFO'] == 1: + if lenv['BF_BUILDINFO']: if sys.platform=='win32': build_info_file = open("source/creator/winbuildinfo.h", 'w') build_info_file.write("char *build_date=\"%s\";\n"%build_date) diff --git a/tools/btools.py b/tools/btools.py index 7de1f47a91c..e16e78488de 100755 --- a/tools/btools.py +++ b/tools/btools.py @@ -47,7 +47,7 @@ def validate_arguments(args, bc): 'WITH_BF_GAMEENGINE', 'WITH_BF_BULLET', 'BF_BULLET', 'BF_BULLET_INC', 'BF_BULLET_LIB', 'BF_SOLID', 'BF_SOLID_INC', 'BF_WINTAB', 'BF_WINTAB_INC', 'WITH_BF_YAFRAY', - 'BF_FREETYPE', 'BF_FREETYPE_INC', 'BF_FREETYPE_LIB', 'BF_FREETYPE_LIBPATH', + 'WITH_BF_FREETYPE', 'BF_FREETYPE', 'BF_FREETYPE_INC', 'BF_FREETYPE_LIB', 'BF_FREETYPE_LIBPATH', 'WITH_BF_QUICKTIME', 'BF_QUICKTIME', 'BF_QUICKTIME_INC', 'BF_QUICKTIME_LIB', 'BF_QUICKTIME_LIBPATH', 'WITH_BF_STATICOPENGL', 'BF_OPENGL', 'BF_OPENGL_INC', 'BF_OPENGL_LIB', 'BF_OPENGL_LIBPATH', 'BF_OPENGL_LIB_STATIC', 'BF_OPENGL_LINKFLAGS', 'WITH_BF_FTGL', 'BF_FTGL', 'BF_FTGL_INC', 'BF_FTGL_LIB', @@ -137,7 +137,7 @@ def read_opts(cfg, args): ('VERSE_BUILD_BINARY', 'Build a release or debug binary.', 'release'), ('VERSE_BUILD_DIR', 'Target directory for intermediate files.', "${BF_BUILDDIR}/extern/verse"), ('VERSE_REGEN_PROTO', 'Whether to regenerate the protocol files', 'yes'), - (BoolOption('WITH_BF_VERSE', 'Use VERSE if true', 'false')), + (BoolOption('WITH_BF_VERSE', 'Use VERSE if true', False)), ('BF_VERSE_INCLUDE', 'verse include dir', '/usr/include'), ('LCGDIR', 'location of cvs lib dir'), ('VERSE_BUILD_BINARY', 'Build a release or debug binary.', 'release'), @@ -153,20 +153,20 @@ def read_opts(cfg, args): ('BF_PYTHON_LIB_STATIC', 'Python static libraries', ''), ('BF_PYTHON_LIBPATH', 'Library path', ''), ('BF_PYTHON_LINKFLAGS', 'Python link flags', ''), - (BoolOption('WITH_BF_STATICPYTHON', 'Staticly link to python', 'false')), + (BoolOption('WITH_BF_STATICPYTHON', 'Staticly link to python', False)), - (BoolOption('BF_NO_ELBEEM', 'Disable Fluid Sim', 'false')), - (BoolOption('WITH_BF_YAFRAY', 'Enable Yafray', 'true')), + (BoolOption('BF_NO_ELBEEM', 'Disable Fluid Sim', False)), + (BoolOption('WITH_BF_YAFRAY', 'Enable Yafray', True)), - (BoolOption('WITH_BF_OPENAL', 'Use OpenAL if true', '')), + (BoolOption('WITH_BF_OPENAL', 'Use OpenAL if true', False)), ('BF_OPENAL', 'base path for OpenAL', ''), ('BF_OPENAL_INC', 'include path for python headers', ''), ('BF_OPENAL_LIB', 'Path to OpenAL library', ''), ('BF_OPENAL_LIB_STATIC', 'Path to OpenAL static library', ''), ('BF_OPENAL_LIBPATH', 'Path to OpenAL library', ''), - (BoolOption('WITH_BF_STATICOPENAL', 'Staticly link to openal', 'false')), + (BoolOption('WITH_BF_STATICOPENAL', 'Staticly link to openal', False)), - (BoolOption('WITH_BF_SDL', 'Use SDL if true', '')), + (BoolOption('WITH_BF_SDL', 'Use SDL if true', False)), ('BF_SDL', 'SDL base path', ''), ('BF_SDL_INC', 'SDL include path', ''), #$(shell $(BF_SDL)/bin/sdl-config --cflags) ('BF_SDL_LIB', 'SDL library', ''), #$(shell $(BF_SDL)/bin/sdl-config --libs) -lSDL_mixer @@ -177,20 +177,20 @@ def read_opts(cfg, args): ('BF_PTHREADS_LIB', 'Pthreads library', ''), ('BF_PTHREADS_LIBPATH', 'Pthreads library path', ''), - (BoolOption('WITH_BF_FMOD', 'Use FMOD if true', 'false')), + (BoolOption('WITH_BF_FMOD', 'Use FMOD if true', False)), # BF_FMOD = $(LCGDIR)/fmod - (BoolOption('WITH_BF_OPENEXR', 'Use OPENEXR if true', 'true')), - (BoolOption('WITH_BF_STATICOPENEXR', 'Staticly link to OpenEXR', 'false')), + (BoolOption('WITH_BF_OPENEXR', 'Use OPENEXR if true', True)), + (BoolOption('WITH_BF_STATICOPENEXR', 'Staticly link to OpenEXR', False)), ('BF_OPENEXR', 'OPENEXR base path', ''), ('BF_OPENEXR_INC', 'OPENEXR include path', ''), ('BF_OPENEXR_LIB', 'OPENEXR library', ''), ('BF_OPENEXR_LIBPATH', 'OPENEXR library path', ''), ('BF_OPENEXR_LIB_STATIC', 'OPENEXR static library', ''), - (BoolOption('WITH_BF_DDS', 'Use DDS if true', 'true')), + (BoolOption('WITH_BF_DDS', 'Use DDS if true', True)), - (BoolOption('WITH_BF_FFMPEG', 'Use FFMPEG if true', 'false')), + (BoolOption('WITH_BF_FFMPEG', 'Use FFMPEG if true', False)), ('BF_FFMPEG', 'FFMPEG base path', ''), ('BF_FFMPEG_LIB', 'FFMPEG library', ''), ('BF_FFMPEG_EXTRA', 'FFMPEG flags that must be preserved', ''), @@ -199,29 +199,29 @@ def read_opts(cfg, args): ('BF_FFMPEG_LIBPATH', 'FFMPEG library path', ''), (BoolOption('WITH_BF_OGG', 'Use OGG, THEORA, VORBIS in FFMPEG if true', - 'false')), + False)), ('BF_OGG', 'OGG base path', ''), ('BF_OGG_LIB', 'OGG library', ''), - (BoolOption('WITH_BF_JPEG', 'Use JPEG if true', 'true')), + (BoolOption('WITH_BF_JPEG', 'Use JPEG if true', True)), ('BF_JPEG', 'JPEG base path', ''), ('BF_JPEG_INC', 'JPEG include path', ''), ('BF_JPEG_LIB', 'JPEG library', ''), ('BF_JPEG_LIBPATH', 'JPEG library path', ''), - (BoolOption('WITH_BF_OPENJPEG', 'Use OPENJPEG if true', 'false')), + (BoolOption('WITH_BF_OPENJPEG', 'Use OPENJPEG if true', False)), ('BF_OPENJPEG', 'OPENJPEG base path', ''), ('BF_OPENJPEG_INC', 'OPENJPEG include path', ''), ('BF_OPENJPEG_LIB', 'OPENJPEG library', ''), ('BF_OPENJPEG_LIBPATH', 'OPENJPEG library path', ''), - (BoolOption('WITH_BF_REDCODE', 'Use REDCODE if true', 'false')), + (BoolOption('WITH_BF_REDCODE', 'Use REDCODE if true', False)), ('BF_REDCODE', 'REDCODE base path', ''), ('BF_REDCODE_INC', 'REDCODE include path', ''), ('BF_REDCODE_LIB', 'REDCODE library', ''), ('BF_REDCODE_LIBPATH', 'REDCODE library path', ''), - (BoolOption('WITH_BF_PNG', 'Use PNG if true', 'true')), + (BoolOption('WITH_BF_PNG', 'Use PNG if true', True)), ('BF_PNG', 'PNG base path', ''), ('BF_PNG_INC', 'PNG include path', ''), ('BF_PNG_LIB', 'PNG library', ''), @@ -230,33 +230,33 @@ def read_opts(cfg, args): ('BF_TIFF', 'TIFF base path', ''), ('BF_TIFF_INC', 'TIFF include path', ''), - (BoolOption('WITH_BF_ZLIB', 'Use ZLib if true', 'true')), + (BoolOption('WITH_BF_ZLIB', 'Use ZLib if true', True)), ('BF_ZLIB', 'ZLib base path', ''), ('BF_ZLIB_INC', 'ZLib include path', ''), ('BF_ZLIB_LIB', 'ZLib library', ''), ('BF_ZLIB_LIBPATH', 'ZLib library path', ''), - (BoolOption('WITH_BF_INTERNATIONAL', 'Use Gettext and Freetype if true', 'true')), + (BoolOption('WITH_BF_INTERNATIONAL', 'Use Gettext and Freetype if true', True)), ('BF_GETTEXT', 'gettext base path', ''), ('BF_GETTEXT_INC', 'gettext include path', ''), ('BF_GETTEXT_LIB', 'gettext library', ''), ('BF_GETTEXT_LIBPATH', 'gettext library path', ''), - (BoolOption('WITH_BF_ICONV', 'Use iconv if true', 'true')), + (BoolOption('WITH_BF_ICONV', 'Use iconv if true', True)), ('BF_ICONV', 'iconv base path', ''), ('BF_ICONV_INC', 'iconv include path', ''), ('BF_ICONV_LIB', 'iconv library', ''), ('BF_ICONV_LIBPATH', 'iconv library path', ''), - (BoolOption('WITH_BF_GAMEENGINE', 'Build with gameengine' , 'true')), + (BoolOption('WITH_BF_GAMEENGINE', 'Build with gameengine' , True)), - (BoolOption('WITH_BF_ODE', 'Use ODE if true', 'true')), + (BoolOption('WITH_BF_ODE', 'Use ODE if true', True)), ('BF_ODE', 'ODE base path', ''), ('BF_ODE_INC', 'ODE include path' , ''), ('BF_ODE_LIB', 'ODE library', ''), - (BoolOption('WITH_BF_BULLET', 'Use Bullet if true', 'true')), + (BoolOption('WITH_BF_BULLET', 'Use Bullet if true', True)), ('BF_BULLET', 'Bullet base dir', ''), ('BF_BULLET_INC', 'Bullet include path', ''), ('BF_BULLET_LIB', 'Bullet library', ''), @@ -266,10 +266,10 @@ def read_opts(cfg, args): ('BF_WINTAB', 'WinTab base dir', ''), ('BF_WINTAB_INC', 'WinTab include dir', ''), ('BF_CXX', 'c++ base path for libstdc++, only used when static linking', ''), - (BoolOption('WITH_BF_STATICCXX', 'static link to stdc++', 'false')), + (BoolOption('WITH_BF_STATICCXX', 'static link to stdc++', False)), ('BF_CXX_LIB_STATIC', 'static library path for stdc++', ''), ## -##WITH_BF_NSPR = 'true' +##WITH_BF_NSPR = True ##BF_NSPR = $(LCGDIR)/nspr ##BF_NSPR_INC = -I$(BF_NSPR)/include -I$(BF_NSPR)/include/nspr ##BF_NSPR_LIB = @@ -283,23 +283,24 @@ def read_opts(cfg, args): ### if this is not set. ## ### Be paranoid regarding library creation (do not update archives) -##BF_PARANOID = 'true' +##BF_PARANOID = True ## ### enable freetype2 support for text objects + (BoolOption('WITH_BF_FREETYPE', 'Use FreeType2 if true', False)), ('BF_FREETYPE', 'Freetype base path', ''), ('BF_FREETYPE_INC', 'Freetype include path', ''), ('BF_FREETYPE_LIB', 'Freetype library', ''), ('BF_FREETYPE_LIBPATH', 'Freetype library path', ''), - (BoolOption('WITH_BF_OPENMP', 'Use OpenMP if true', 'false')), + (BoolOption('WITH_BF_OPENMP', 'Use OpenMP if true', False)), - (BoolOption('WITH_BF_QUICKTIME', 'Use QuickTime if true', 'false')), + (BoolOption('WITH_BF_QUICKTIME', 'Use QuickTime if true', False)), ('BF_QUICKTIME', 'QuickTime base path', ''), ('BF_QUICKTIME_INC', 'QuickTime include path', ''), ('BF_QUICKTIME_LIB', 'QuickTime library', ''), ('BF_QUICKTIME_LIBPATH', 'QuickTime library path', ''), - (BoolOption('WITH_BF_STATICOPENGL', 'Use MESA if true', 'true')), + (BoolOption('WITH_BF_STATICOPENGL', 'Use MESA if true', True)), ('BF_OPENGL', 'OpenGL base path', ''), ('BF_OPENGL_INC', 'OpenGL include path', ''), ('BF_OPENGL_LIB', 'OpenGL libraries', ''), @@ -307,13 +308,13 @@ def read_opts(cfg, args): ('BF_OPENGL_LIB_STATIC', 'OpenGL static libraries', ''), ('BF_OPENGL_LINKFLAGS', 'OpenGL link flags', ''), - (BoolOption('WITH_BF_FTGL', 'Use FTGL if true', 'true')), + (BoolOption('WITH_BF_FTGL', 'Use FTGL if true', True)), ('BF_FTGL', 'FTGL base path', ''), ('BF_FTGL_INC', 'FTGL include path', ''), ('BF_FTGL_LIB', 'FTGL libraries', ''), - (BoolOption('WITH_BF_PLAYER', 'Build blenderplayer if true', 'false')), - (BoolOption('WITH_BF_NOBLENDER', 'Do not build blender if true', 'false')), + (BoolOption('WITH_BF_PLAYER', 'Build blenderplayer if true', False)), + (BoolOption('WITH_BF_NOBLENDER', 'Do not build blender if true', False)), ('CFLAGS', 'C-compiler flags', ''), ('CCFLAGS', 'C++-compiler flags', ''), @@ -327,13 +328,13 @@ def read_opts(cfg, args): ('LLIBS', 'Platform libs', ''), ('PLATFORM_LINKFLAGS', 'Platform linkflags', ''), - (BoolOption('BF_PROFILE', 'Add profiling information if true', 'false')), + (BoolOption('BF_PROFILE', 'Add profiling information if true', False)), ('BF_PROFILE_FLAGS', 'Profiling flags', ''), - (BoolOption('BF_DEBUG', 'Add debug flags if true', 'false')), + (BoolOption('BF_DEBUG', 'Add debug flags if true', False)), ('BF_DEBUG_FLAGS', 'Debug flags', ''), - (BoolOption('BF_BSC', 'Create .bsc files (msvc only)', 'true')), + (BoolOption('BF_BSC', 'Create .bsc files (msvc only)', True)), ('BF_BUILDDIR', 'Build dir', ''), ('BF_INSTALLDIR', 'Installation dir', ''), @@ -342,18 +343,18 @@ def read_opts(cfg, args): ('CC', 'C compiler to use', ''), ('CXX', 'C++ compiler to use', ''), - (BoolOption('BF_BUILDINFO', 'Buildtime in splash if true', 'true')), + (BoolOption('BF_BUILDINFO', 'Buildtime in splash if true', True)), - (BoolOption('BF_TWEAK_MODE', 'Enable tweak mode if true', 'false')), - (BoolOption('BF_SPLIT_SRC', 'Split src lib into several chunks if true', 'false')), - (BoolOption('WITHOUT_BF_INSTALL', 'dont install if true', 'false')), - (BoolOption('BF_FANCY', 'Enable fancy output if true', 'true')), - (BoolOption('BF_QUIET', 'Enable silent output if true', 'true')), - (BoolOption('WITH_BF_BINRELOC', 'Enable relocatable binary (linux only)', 'false')), + (BoolOption('BF_TWEAK_MODE', 'Enable tweak mode if true', False)), + (BoolOption('BF_SPLIT_SRC', 'Split src lib into several chunks if true', False)), + (BoolOption('WITHOUT_BF_INSTALL', 'dont install if true', False)), + (BoolOption('BF_FANCY', 'Enable fancy output if true', True)), + (BoolOption('BF_QUIET', 'Enable silent output if true', True)), + (BoolOption('WITH_BF_BINRELOC', 'Enable relocatable binary (linux only)', False)), ('BF_X264_CONFIG', 'configuration flags for x264', ''), ('BF_XVIDCORE_CONFIG', 'configuration flags for xvidcore', ''), - (BoolOption('WITH_BF_DOCS', 'Generate API documentation', 'false')), + (BoolOption('WITH_BF_DOCS', 'Generate API documentation', False)), ('BF_CONFIG', 'SCons python config file used to set default options', 'user_config.py'), From d4e2c48faa28c2c7c083df983142b44037435ca7 Mon Sep 17 00:00:00 2001 From: Ton Roosendaal Date: Wed, 22 Oct 2008 11:48:26 +0000 Subject: [PATCH 28/38] Part one of the release update commit --- release/datafiles/splash.jpg | Bin 256633 -> 288981 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/release/datafiles/splash.jpg b/release/datafiles/splash.jpg index f80a35becbc02eb2dc561c733e340ecc61f68606..c65b2f37e871a5a05475b0205888cb8a9c2b6f9c 100644 GIT binary patch literal 288981 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

?JxxF>tdK~ZhmlPTg&m|*$FSCt?^#9? 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

7+GN5^ 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


*lMRf)r%-8&`4q> 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

e_kcAW4 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 IM6N<$f_A6xyZ`_I literal 256633 zcmV)JK)b(*P)PyA07*naRCwC#y?3}>M|nNG-gjp9KJE6Va;2+YED6iKgRvc(00z@c4EcZ%N(%Wx z2@v=og%VnD5;_4A)3JfjjExJn0oyXNWE)w%*DLAva>_0<^Zx$W=Um-u*2o!q|dlCVWfE>sQJV6N{HqMCFwA9SWv?Q}Pz<8$+t#0Vhy^CvgBE z23#L!fu1(lQ&Z9SDBPGqb_7?yI}{*|t`XA4DDsmZn^Wa?vdBr_oSO1qK0Y(X%1`^i z)807DeD5BwwkhG7xWR5?}t&a3PBqu#d1i+K9B0y~8 za;lHH=&2nBpW<`B^TnT9t$(A@qhB(5{G`8pQk+sh&c1sFacis|(^#a46Y)$;bs}pA z9^EjxWnHOy6ca~|RYu!aO$1BN;joFrqGu+k1{TA6fI!pmrhx<}bcU%0@r<@TVOMF| zVgO77+{cWO{5sIm0MirWbD|Cr07Rarw2r3=?lbN(wRvG_uy2{MIq*DPCz-z9Hl&zL zHTo61z-gioP4AEJjCM2@GkP49pZ1Y3LuAX~|KtUrvB;bP_fzGRJo8(63p`G2+MfX5 z>u)=89RV9qnDI#ku5Z;FEpq@V&5{blf*G1!WNT%rjF((BFlzkpqXXk3z11x8sokVsQ0kg=mlc?@y2 zIj1R&2m22s<735Ao{J@|6hXubkjXPAAebn_ULlAykUG2Ri6a59K&UP(XUH`5uMURO zh@}V3tZnAbfSxkG*TJ=M_DhXp2&(TyK)*rdnARgdb9I}sP|@^>0cQu+C;CS;ZOH1Z zI$Mfn>}+V-j)dwno^3(U5SnP3G(Ynko2DLx`UKHbe;XB_kN^o_-_U+|YQAXZLw2hC z4s*~ak_k>7us-?Gqo+7J1PFv@Dx@*fJ{p4pw)3Z@bX+qmDAvVV*sLVxF!|c!+P@7=Srp zAyda?_9t-4LmKcTd;(ZcC>6e;y^}QHl72foqs$10eM2^>4_Cbnz5$*3*Q(jo^>%P} z#0~P<+BRh!H2pMPO?ytHE~f=C9D)Vv3V8iY0ybMnPFM%Q0&vhWL*G9|yH1rS z!y=z#;a^%CKk57aZa6tXo_7#}1l2!NDv&-ik4UzyISuGzeM727QAGHZWZr zU>g7=M8a_Jju~(fd?}eiCPrXmEs3&KdFJFivXlS($2ELuJW$BTWbQ>DvpCOo4r7-$K(ylb*T;FDKn$YG)vg)uXWm@xKOP zk^1%ZzGr6@b>d5zHgjUOr^bP2YDSGpz*GA!5(p8YZu?4VYQMvcUNoe3p9yf8aIfm~ zPN!(ssq&=x`%@7ke|<&zx2j$LUr^|Y0Gp;CtkEy)H2sP%NF)JB>a5cO$QY;x2#&o6 zS@;?Va0F(M100-y1roypsss;^LtI8$#(^!v8*ZWTel4kZvN~Vke16vAuJf-#&uPeY zK-iP^Amv z8Yd0Em1o(57~(uJd$G)!HMn}J^*isFy@Mxcf+7#^p*5Uy%$c5{9N?S}6lcB%9>UCC zAOz>30A@@x!f9{;@(tex;~Ec(nl{tU*+7B32S`|1fhHz+=cK+lJ5^4VC*bcQbp|0q zjX#7a^QghpHvrQU8y<)_07MFa_nwG|rfCC@$KSL2X4iP{nSUcjFCrqs%u{!NO#8F{ z`&%1359a#NiMPa=>j*at#4}$ZsUu(gC9RK!_nt^)4a++2z0aDKnJE%cHj*ds-HSV6 zKv5q-4ZuOP#Bfy%94rqWa5f?`N-1%XcWD@gE{Y1;r`9K`s7>A{H5LI==qBC4hsuX` zXd5#*=SYHl1)*)7*L%qe(6bzccBq1d&U6M5crQwkwcco+>QB~zD2cV!itCNG&T6IO zI1NK%t=Ec(tawix#?C9n0MazcnW?>js$2flkCC4;zE45?42`J1UU-o5-YZrhA0=@Z zg!F6eA5&NYd$0n?ff>#Vb2iD6CQb)Bn{KgIY27efrG{41P_?I@Ze{o`nYONHdOtyc z#Q8wMxkP7g7jr{Y&uIQB{(h=FA-+$6d-n8Y9~<91W&z;o7e5hdXYiUq)e~?F55PHL zKCxhADDg|{e?nNd)*551wOZ?`)=vF*3gZ7)M$mg^*fiCeK?=eUaZchmo~)FIhKAxK z(Td_UX)YBzx;n>3Mok#hYH_Vr^A6V9-rnBMjy7WqGptLr(o#R#nt6t2MH;fZZz#5z z{%aAB*sb>;-~6*=>|jw_cokP`Do{!(??GM!&V>2NTFgpm5HnkA14>IerFfFPcQzp% zI?vF#i1Sgdt!wp#xzjF1`+QI!!XQ=mbrK;`kj%VBL`WL;mjZ!zMC1gDm1LTY2$2H> zX%(aZ10AM-^-v6gm`vdjKIw4(*TLT@h*!w$yIn)G39NUTm54a1qwP~uXRL!_#}s>n z402!sQVY#cY^N>zIclzu3HL3CrZ&T*WafoAb?*R z-=}_JttF!A6=t`{{`f8Pcbhqh)Tx+w3sNFfE>{m7JQ9Yv*7mkisYHqcjq!5j-k;vH zcz+c`{bbnKC>9DKkTdsfldV} zFz!%^v3KVYRuG>oTf8tAq7abx$T1YiTMuR^nts?avk5%?uPJ4Z2+pS37=RrkvQU}? zP$2J|QwUC>*QxR(P%`7WBH}%m$ruAbDV1^XUj^TF6 zL$V*HY0Au6Yw!J(N;7rA{|0|&MUsgKBGy`MjQ1EA80tTAeD#_&#=v@bkI8bnfB)V) z?zm&s>XkjS`ht8IN1{U-9!;YtO4GEtRGKqy$u#NbQs@eh2uy_59LPecr(QWZDE8t5 zX78*C7(m%dMbmeFy7Qa2{%qUsgRBGZy%Xp9_HX-ZUiO6|{f0LGXpWEYVsHGev1e@st*!{V%0n!R{t z(#F(kwf_DA6XaK~S)&Y&4n*5`?e0HvZ2$iK`wr}FYHFgbhgw<=L~%MiJUTI1@!nf& znOQ4ZuwZ^*xOZNkv(SpX*L0Fq1bLAY_|A1K0N};5)UfXt!`mJxkM7IC1!Nq^iYWLd zPIWw98Sc+%NxX;w&4k1cCc z)aY&ELZ(;{ggCMiXyR$6es1cV@z=rk%qUZ5ClyKn!X)s(jzjCV9(eG92VZvO#n)VZ zj&a#)`4nq*36x4a6OkdL&WZ{K61?so{(b$fejl{43T;#qA~FhO32Bg4dNhCRpWb=; z!j?Rs$!k3oUyS)N9#=EM)Ob)stFejF+JP&;juHIDo8CD&KKjx3y!+y1vvZnajiQZ> z4mb4=z2#HiTeowdYMP(}lGH=x;*rqD*IahdNB{itjzEd6kMn)<~Vf1kqQ-$X0VDooQf2!h9KET-S(w>MaI+)a`s zilU>(2aFDT=l4OdVdKu*@4S0rvNkz6Stu39#>SQ`S#s8y=O|@%?%b7F9|Sq;9g}uG zg?IT-A3J*BiYuOe-dW2PLGd()mnr`4;hDJMU1}TVe;`uME4A?Sj?UheXhg(&XGoZl zXgh|9e!pW~t~Q)jM})N~6OpmG&bW19e(thd`z*>g=Yu>62);HtfQh4%hqmg8{@Ua~ zOWvq>yk+vxfqTB)ms%`ZOQ8`CQeYgpb^9moKX~WOx8L)@xBb>3gT^=k_pFwH@*Lp>-P*w(=1o5 zYCEyEx3g3TCzELVp<@*;Nv`=wb>#p3z(@b}oo_s2QG2suSgVy*nWER&sni{mvZ*~0 z6UIAe09xxfwJ^a@gtveA6Ne*GLHlS-iAN4%JsGWjzU%NyKKQjmm69oRn`pccps14Z z8r4)GZtDHwJ$rT^IQpZ1c}0obDUAC)X6lbo`KB;EGm8LVQ_-4;pcDk~zG1^GC;s@Q zCyktm;7VyCB(V;zZQ|Im-;^vp)k1OyInoU2huSWntyBBhBG6ab1-Km!aN7=|YS$Y5a79vn*r zXljb9PHM3)g*oqi$~tLuPZ6ukC;)q(!SnRJar2a?}$GO%6x} zFu?@y&;RkoE&GnAx@glRCFMmRJ|I1o`Zs-X-QjAU^Z7YE`PyqQI`8x)MMDSskA3~F zM}DyBXnRxXz8$0Qzwsv@xbD(ZDENnm_{2;COim<+`-h{NHAXp~E?6+Xsfq5oYyE={ zK6w5GXI*^p`6heoo&bS~Ia?Bx))4&o$LrRwUw__(=RNZo=TBq1Gk#({s#SOR@L?M# zfY*jQJ3G6(+orUK$GAwJaABFQPcnO(p4Oh8u9jv~Uvf`sfrgMso#c7(ideh{ zgqSoDiNHBcMjJq-s13```;I<*mzn5qrkW&aOvI)T=~lh)JS;xXwJ-6-uFVIIKl`UZZvL4*tHU%m)c}GP=ZOW* zN1g@}Z0(P#QH@BNi-o!Exj6+68ODPWFtb2g?-h)zMn1^ZKr!=!`^OFsjSme@3bfWd ztD|{&Z|8ze-Ohl6Q{Dm!oSkw+z(|BGdk2q9OoU#EbQ8YK-GGY&$%DXlQt3bPS@K3c-T8T}$S)&nZzJ za1L6*xq1lR2smEFmYqkB9olp4)fan^(bU_P|Llj~{kQ-8(bLzS@rIYbq(!3`3b{02 zFrAj(^_nXV?%uTPcs0zmuG_eMXv}uD!Mapy1L7G*?)ANkcp;|j{5H*`M^-8&t^pso z;r2T=?3P@!i{p@-cQxk|4bsqe9VoAR_|dkxb1TEguYbp%yzuM=Km{-t%wPG^^ZQ=# zp&x#KnD9wVipEo8v#97xgbg99J_zzv`rsOBXu74vU+ z!y6_m#Z8YMS@pDYm=Py123}w-w1x--V1{^zfEAKNf`A<09mXqq^Nu6S*4QNT`tyK? zHjqrg7o-3&cJ3Sg$cH|;cJ)fdlGxgL7oGd`u5&a&Wj|41K&-GLAvn};tp(nLRGqY0 z2g9gT^u|rQ9M?TOr`mb*5ANT*edk-=@~XZ2NB`~mPkiZ1|L%P~7!*mvRg$t0x*!HK zym(D;UKA^W7ZHNWgdWOla;)#~KkS`bxpJlVetfe0!yn%I>}Owd@x`@mJNC49x3{&m z%$q-Fc6ZmT*&QS}(m#0oP~V}$M_O9jW9w4u#txUAbD=g-RMpyt0k2rTC{wAtV?Jpg zqlw6SN5TM9h62POMS!)Q;I#s53`r4>jc>SPa>qI|aj+<{A#s6DC|{*QZq~}&qO+vu zv;kN8`gebN5+s94d#aeVMIH|#ueynk@iKszTEP(*V(o1gd03tsb_OIq?=_1L;=f8ugp%)-ST z8#nF!>UVD4exSb!O1*0_L0@;<8~*eqPd{UBPHP7YT73KV2X4FX;RF4{QIZ;C6!DT} zOP_P~vqcx8n#~!6`CKGYQF!3dUE0xNfBNvjLQ8S7Qdzoq!I`J^!cKYwo;BN;gWQX+y70T31|4xZ;e&@q zR`<4_g2F#A$z4dX699p8dF#Ue?;ro}zi;@$(f)%64i7ry!Nnv|smB99-+TZ4_Y=w7 zxpS|+`mzTf+*+xQi^zckhvGQCOAS#8gH)@6@AvSqwHxoFAa9Xt0b-E2(D-@W;wq zj`a`T_na#)Bf*__uWRp`Gi&y|jT_cWRNc92M|;<-m%ri#l`__?+xXD>O<@>1XF&Mo zO?U6wwToFlZS9#?T(NfZw!Oy(#&5ZGbE#Oo=0$&MJ+^G#d(ThquhnX2p1Jn2%g(vu z?nlxz-Mw>{x9R1VKV$Wp1&Z0iYSyVuHIsABXq5%Y_AX^ILqkJpnl4(r)Y_z6E`RTP zKRoZe^8#b8yz(!JI6hI=+vh5z}r*UZk% z>OSomhlfYv=wKo6Nj#>xFuZ3|Tl3r?Ux1H^T}|j<6(7Ipwj@de@}Y!2cI7zPH*w^l zJx3ncw)>s0eqm5hl{BURsf%NuCSkCDQvUw>&u-e+A4e`wXemg(Njrr7qt&fL(T;E2 z(SLOKb+5Rl)QmTO@UzFOCZ%xRyxzf~-x`qWg_J?O*@OZp4Kp6 znyA(WBlp1Gp`9Q9+8h7uWiPsT#k$Qq-}TuWtEv!ywN~Tha$cDtsoG>(%ORI1BHOCv ztiEpN#k*LuLXsyx|9FT*s z(Qrwkf`^adeV_U61Oh1Kf}rMNLx$Nn7)MYZ1z)S`Qh=yQ)pC-8#Zl;-4T8XdJ7uDi zE8{4^8<*HqfcJ-_zt_bH>pU?VW0X>?f}J}KR4O$cm|1gXAJ~6LG@$iO-(L5_o9}FG zZC8-3+YTQeh^y6T=gysgx7G^mrcJx&_P*y|KYYX3#N@JNi>i@L9Y-~F5 z>gpIcHnCyDw$TwkGBUhv+ZLrvlG@Au=*l>StVV(Zx4>`KGz^SMJ@j|KP!c*F69E zyLRm`TQ^&Wv5D#xS3b`>^|{agm(I6%Wm4X75q}tcVpwwaM{`;ibz~ zTIZ|PS;Ua?}uym@n($!IL->&%WTG79c28Lgan=PFAU%{9i1jFf|1-h)e}=0c&+ z++1oZhRsd6J^K!=U9*hH3Q{j#!OXCK_f&Ujao#B+A~u;ZhIa~9`535R*TzE+{kS-B zq*yy%G@4xsNtq$yQh{#oMN4nk+Ozd|<+C^apqlF_M-UZc?oLq3v5r~a^1$ZjUVO&0 zmUjk=PdD2(q=ybGh#{XtIyrcxtv04wXM1mzQj%I1n#9?z=5X!uMP0@G{=-K$?me84 z8A;tO4?NP{Qn>EA=fLEhfSG*|jyrtf)1QBMPk+^$e3*Owm6tx_?8VJ_Gf|cA{`meM zJ+!Or<8R&b;OxcA{`kt%h7%g2QX*<%?~#@qoxOVbg1-6XYUTciHys*_U~)T-4gchk zZL_-9e(XPQy7lK<$6Zj;oQJGhxvX#Ytcl5y%{z7vR$L591s2Y;IW}RxeDhsHHgq~H z1oDy>{L#5;E{bp&ssf? zlPameS{vx#7YE0NtkFTx9Ju*i-KS9S_Zr+EM`UIwrQkfAwP_L=W4`~rZ>PQ{f+I%< zRS?ED1)IC?x!*c<(M6X*(wlF-`N569ShIR<6w~Wo_xdx=Y%#OlJpce807*naRDbXL zK6mWcu}8Na85xN#yyO|L|I15myM5bNzxvHEXuAEjpINKVJmXwexcLXS|K#2cr>|bc zDtFB_SFc#HY+!KYCqI_k@3`6fG;y9-U3%%IS6sf#S^WILhj;8c49X=bjDdBEI4=?c z>Y5i^NsOP~yQw@GZ+z&{mt6aT)lcgQa_Waax}6y3oO{u>E!+3)J*sc3i!tiK(-~Af{Wv=?8XPtG{f?__n=dPatFs42@UOa=m z_lgauo(pLA?%lof`iKxm_Rc%*ZYs4bSg^>(Nk>P~L0E_wBCr-pK`9o&%{idHBdHC+IGC*mi)euta#SsfJazI63nmTMyAgBk{uOCZj582GsTg{g3Wn`twJ3R=vuZpi4!6^QSL<#@VX^BnsGmWau5A{OW;muQ^c6 zVX^(5`+mN!|9DCvi97e4(=R-CReN4HH=`@cUz>aG&ix0*V(dLWe#^Z-@9OGOhJ7@V zXxH0n-t@w&{^+b#1^8y;G%M>NLMAN1gS>-4h@BUxJU|(~Z`{1y7$br?9W8C8oMEa5 z@tDS~8j;96v4cb;xlj`X5wJhSoBr+d15uh+`mCO&H~i&wFMIokQpbkHursgf1SKe{wT?fAOrT_Wr4gd4vmt37U#ae93)!0Mr*}o4`S-EDh;vh+? ztfZ~IxuqFh-Ob029jn%2Hr%&pu4kmaW=xo-c5-r(NDlSyvo1OP%oR3;P016MF6&yl zJhW+^IeE+9T^q*;LVWOFzmO|hQ6L~+3Y>G=gvubcFh<33%@}2!gUZ~$ozeMnx!T#; zsSSi<5B=c!v5)`T_18TAxmQ2$**D$v4MkQf5m#e@5(&sC;g(`kW`o#VDk&oG67jKC zfJ8fV?tJS zcY)Npp`oEPja!YB?gST(nGc3zAm zFy>FLI%Cteo&U3bYdMiXb?~U=Lh2PnjvP7q$xnTzy@WKX1VL^* z)#My|8#{aG`0-O29 zSS1{mJtR#O1*x^W5A>^ClXzotO8M$VXRf*AX^Xo9+mtU5i8jo{R^T#&PNRH1CcFaR zJUnCb5qDr<%<7f`qxFC zm)HJpUw9di0_GGH{sDn~rX&DfK;q(PvXF1yvU%e0!9B1^b5p6150ki32=v0f-aWey zHWkBXJpIzap`%;3Zm&rk8qq3EQ>{2*mZs*sm-wz9-!{MR+8x`rJDX^QMT=$~Jh-or z4==v>@_~VYty_0H#V(Bmkx@|OHG3xHa^gYlZN=TYwm~kABJAC}`;w>6uSJuU3YalG zJi2nFiIZv=5(pwNMp>K8n$^8;-`+KA&a9Rz&ZUEc$5*UaaqYF|mdhZv-q%7CL{Sw$ znpBy5sgOT#V1KO!6JW!G>*md0Ja~M-x`+T)$fA=l)sshOfv~)X)@-fUnyb}laBz6v z{@dExI*%SbcFsBHIOp2hnymG#d}i-sjB!r9gE5pO{`f$Dnx?BxJH1+U8#n%9WTfVZ zSTQM;8E!Hu9hx+iJ$nzWJ!4fqm$yhC^B!sjm_Xt|Vx8AnINr31;ho3sxj7!#(;^ik zDUqr=kPek8L~+FsDMcV+g*bJ20(o?`cd+#^3Tz-qqo|P2S0PBFLa6e#)>8~knm`g* zI4@4T*2-w5eHxDshelbOS`tq_Z|u^(o_tQ{aw=qYgaWX1(R}^TPIfAF(edL)(>Q{& ziiKdS)v6Q4Cg;5jO~#{>6XGUwnk7x3gG>wwl#3>ZlQgMD2~o(9CG+Pt<#Q@P7#08+ zARihf9v~H%UivvNIZvOz7o}x)&;Vf-O#|$f`zB0u{MRGN#d2g3t9{LQVzLXkVTUbf%jkq zhb%H2dG8gGKs2d};49y~JE2o3nA}8iio6;(@9$U;J!Taxdc>TIGO*P% zEnPBy|Ni|SdjIwLeBO}2PrUk7&;Qh?KK0-OKYwWb!_M16skC6;LZiKA@(u*}IQ1SN zN2Fi;!WX{hy&r!2TR&W$jFv82diC=zxc9zW-t$lYo+jRVZ_~&a7f0g?Z~~^7Ir-zO zF1_JPU);NE=k}f3LhaV9TJYU(f8(G2>AwaBkAf1TSM<*9*}dn$hd%t()u*l2#$Wo( zz6}q}`=aN6a@|9ou^4BwCN==#XYu$Z4No)}0vSe${iPkK@v4Nwr=JXux zKfYqciYQ4&$48bfUyv;T5apc(KtzhPGDxi(8y^;NJ+o(d(2gAkMn)<^K^O*cS`!g# zlPt`lVN*+@YBfIEKh)mVM<nz*?Lx@DP15!*5_tiLT+8*EM|SS)F-NG>V0 zwsp+Tg~8|~#kdU`IMaI+v69)>4 z*jj6tqFR!lTeQ|1m5XZ8Xn8UygdD&Enfvv`Bob$df+R^qTzgv!(SWtKn9H5Ddg+4B zQUI$+TQ4feJ8$8t%B8c~+nrIGRT9MorE*3Gtb>5F(<)|wDNy9H@cIxZ%&bHbq97t{ zJrv#Yvj=0H=i2ylE?T>2PHT&CX;d@C{B+A+nvvsBrCz`&1K;}T-kX2+pw>n0t8cjO zn$>gLngdl+06Y;TaS{YMr4+MxC{Ivn^{p>{#=M^9zxe!})qF=_{0}w_`A3d52Zhce zf9S8C^YZgoS}Ramrr8Yt??v4^RsMf3Pnh0QM6_b(v2ek>H^2F>K!%mIE?%^7ZgUZX z!?JX7_w3%z_V(OIKJ`9e@2_{K?*Z`xh(-um8wD9yvPH)!k99jJ7t19UaC0`1guxsJM zE-?P?t*yIuN4ZohU^%No1s7)rR0Y`?{L{>QA2i{?C4WOk~osSD`3|O9PP- zxyvp*YsuX1mau|}BNKyocAJ*9FeCFl+M85F(L*$lkkU&n2fXAjPqVWlRD; zeR!LvFl5SE^mcaa-o0NFN1_0|pr<`ZC&NOJB;`e2Ew8xp{PtYjQPOcF5%fd*j;=m! zcB$-)Ruc-6#7Y$yLN3v;S||X#=YW-1r<4&A>;0V0)`FpOY$+_L&I>KS>&hEOOLk?rv6 zk&qklkR?mgZJG5Xux{7b`#ya`)lw5rzVd}vJn!PQB^5R0T2cbDPONXzrXKU!K`A(i zV9fn{#y|A^opIPHZZe6Tc-Bn?7e%!wUo3QqSmh>T%1^huJ%#nZcMw10NGA(plKGA@ zqtryJpVl>{-Y5Zp?oR6N?3FCsFL=Si(v*BZZ+xYL*f>he83XR?YE9vhY$yK|EHknLXt++fqXFY28Ypv%8rY za9F)^erDIXa6xzWP|oiw_AMv^IDPd3=h4xL*0xRoX7#jZ89_TcsjIV#fK{vKWI=A` z_vPpJ8x+uECR zIkSBElKQJR^NrJ-MLmRvB&Zxae&6@po(GEYpn>;^Bv3ZjmK0~VEIvmqIL8%>O1avj z8*-jxY198Cwvs;UopL_PTm!H!{ z6G%txmizMYkd_z#$ao!^<{qbuo()0SBt@ZUS$+4%_qDNHx^`7ZOUJ>%u`k|o$M%B* z-f1n#>C5J=S~T~*^$#W1a}cul#k1SjE}3)hp20#`eB_abe=@iA@(Y&&CaTK!e)Qv8 z?t9?8wQF8=#RV&uF7}K{+D? zRxiorf%lT~YDH-YG-vr62;Rea=ZsPWFq5-@=*$Pod&i2rcic$XtQ30>Cr}!cg#e?#IU%a& z5>-IrkR1w&cUp;uDAwXhDTu&1&&-OE#e8?xLo)&5Q$@nitk?r-iqK?k>sBci5W_J9 z1P3DmA!vpb4%h#KH7ibhc{19%ZFeoQ!~ruaqSPf}E{LM4F@}iYe62b;dsb&> zN2$B3&0DYaN&FpRH8H$}t5hGkJKnp|)GEpt_SR~SR4Hv)(6s7u?pk7+dsL2L=2BZ5 zhK7|SU`H+r?eT%F_swnZphdy#pzGzAuD$5AMLP~0-qU}?roOLdc2`T&(j~pEG|{dT z?AbiD?cQdY09)_jK(SS-(5Xs2T*#$ff8%Fho_HOgiT&7f{mM z9K7t=m$aFbiJ**gNkLc<(&~lzE_~ab(B>J}1$_*5EI%z54Gzc4J~O9=m%U*|l-U zVPj01rjyk;MZip9As<&qHDq3A>BY}H>vK2$a3W|qTD2d%@wV>U?+3ZziHZL4xWpL$ z-Ysn%t#jse1v(_J0#<={>|$Z(m~=fABC-$(J`2SMD`Fif3*JBCKYqiF2n!~uJ#Aj+ zE3f{eAgbhBidvb(K^ZmWdY$E`ol4E;3H>#^=QCd(p&W5_?b5zCzv{)!zFJfi8smWp zz%wPz7W0L~N-craV8Ku&e%+_OKSAwYjV|j5ZhOa@`Z_f(#GhZb_BEfn`KJfQTf)NU zZ{8cFw}0s`ulyCra0=yre|Wr`ZZ}DFzCK0rxeoo(fS0<$qmvjxBU@V#m@HEmAXf+EqTJ}hx$!(0IJ-nmS8>6^c}T5;oJRqqsQr4$E2ZtK?V&CLa)RI$)h zD3sbey25;J@#4iw>+Rcjc6RrC|K{6DO|3=;sla;YoCHBAUNjpLR^Xkxcg&wRTPdtu zvD7Fqvv^CaXWGwXuN@Q8bpN(ZZE2j>Sk%7seCb)GI_4TSFb=wX_R_WE zBL~w&G}tF`bKWEqhYoGLZN4J(tY`^4PM=d;*gPjaV;&0-$IZr&46+@^{znh5`%$Z} z=(Ordr=nD@m`bsG_JWiHSQNArlZmj<6ozKroF#|%9;{WP$T~7XNC??4>+8PuSr?wS za=y~47hFax zNRanYPZ+XT?W1BL^r_{%ajDHI-Ie$4I!=q^gRkBBz~RwKwOZX%9@7B{Q(GxNtEKRw z^DlYYY0H&IfqbjPH5<3&ZAh^a2Tx!U2nm5RqL3*r#KZy~1>XCy&rNy-aI;EZ`;zB0 zYu{NcG6<{`!!@Fy2~DN>CIMSulJMsDeQw8*@d-WA;9QUf7<9-PlmQM3 z&ZCmpM2E3PjgV(t|BXAh4p?p6tQ>#+P1p5xsHhx=LAF$5I?z)fNeB=7Td@H_j z_d_o|W8QPlU4G&bB$EPlm)ByOzc1aG!zr+PSqjaTGA(Be9JTWoR)7@Dr=KJP#ceR(8 z;hkfCY|tq!P*I%b0tL>s&0du38w*_(98|+@HFs6hvI|`M{9JRls6Yn>l7ibxi_eI5 zKb#Im1_MHm9SUTKpgO-aO8ZtGX6md!JKPckFpmOWm4fTaqQu z1{;hSLmWbgnFE9b6Ov~_NWx3_@!f7I=kWXr@(Uf%cR`{n*ozm~f1?c2A`*=O&y*ItWEPw$F}iRpa@4=q$` z&1SQ^vwh3P_5EFKs|Pwea)tx z*V|t1E*3(?%bu}n`|#Df5030UaAcvGx-{-B7q*_Ye(lhziHWltNo>@u>u+!4q#WAU zzVK<6Y}<6?#N__NM`jl1ouut;<)Qxm^@F`<^>=mVZ9(y@bI&0E*3jdtxETfctAo_!0j3Edx;$z&mKLV*3?G>-E~)VPacee?f80`AO$G zEq0PMVPJgfjAd{RZL4}VKmF)k(-U4?8+5OUffW3c}4riX0r)maEPJKXKr7o zWW*&F!YaAY7NZa%HsCF*dp51?Y9t8}3Xx|c1>l_i(s1c)f5Fze_Z|#Q$oq~k&^XRV z92$7w(#>nVN0Ky+NppcE!ytwsan1AAuiCtporj1o1X>J`q{-PUit7fpJnz!2^G%lz zZQx=fX%q!#_pN47+^84wfwhK2yYh6wnyxK_9qC19R~k()8HN>KG$=)^B2k1@1EqoP zQayDEr)(&1*t7(udD&8zGBPX>!yK8#$G`Bk8p6Ca!yRqEa^=%HLZ9Q4ZoCi#r+;Zn#9_5@WiyI#~JRzQiq9Cd_;xG)sw$ez#a+ivay&M`DoAnDgGXlP&e!`{;?sDP}Ik`eljO|4QWle;DhR zzsM9ZS}X93gd1jnJR2*(LpyeT<;&mv_$S`=<*(cXao7I0*S+@xAAjX5U;X7TfAOP# z^Jky=+*gCZT>Iviz3Z<&_^Ow`{`%{$f9Jd2@$kbB-txWgf9zxL{HHJ8SS*F>-f(rC zLI`Ywo4)hC;o()^y5TFH-tlN^PO*h<2lcLma2Z`h8zFr zkN*4CEd!z^8$%@`CeEav7OIs}v7HQiNo%#*^z`)Bty{w&|H$5vsp$#tRGHu*U_(U4 zs87osxqP88JUqN}*Pd#%4j(8{sZdz4Vl}g*Ni(p%n9pB$!4^ZX79zsLDtJtgx8zb- zBgAa;7~VP%wz;`65y^M0OoMV*>fj)>>;XYwV?oGr<0gl>2AN9G*1rCdYJR0H^?QdXfcGhffwhH@ z36NN&m^aR;F<~0li@BV4sUdHyQ36A)K{Me1ia>S0KkfhkAOJ~3K~zUr$lxVWVTDn2 z=7Q9_T;8T>S`2fVcv23FApnIZGS*NazL3v3&N)&dcBcfK7lZuv@5^rC+L!{sqtWVEj-~RDxt@h$^)Kfm| z+)ZtrZHJDWICgAic3yt^;M~M`^ZC!eNEKuts>=Q?Z+o@1n6FpwyZ-?-_V~p3Lp%1o z=}m9y9q1mNoWA?solXkZyy^AlpTAluw`1p?JMVtzX_sI5`Zv5NRor~*eY10mHY`8= z@+&Bio%?p&b&UuVY%F$5zkpqQdTSt4>Bm4GrcC~kR zcSlk2=*ULQF^j4G4e@47^G%7YfqA5`n}iSt1ZavtZ^0mRTH#R0-A^V$DYZ zi6;YM@~P)Q6{<>>n5#JSKCDYt^B8q2B>aMrZvWuOKy9(UaM_cIN6L7IY$7m?Hl zK>&6cUXKdtOa9xt00|*)|GhUqYh&MvB0>vdcr~JSp|aRl_Rbcd0a6hYg<1pCOg)7S z9eg1dKt-3za$-I`(6>Y^Pfg^{AnSdm0^kW*9RKQ%{nz9FEO$mdM9BQ>_BaaVmYoDY z<^{+i45QScuP<1&YSpbjxa-_=w~LzZeD{a#?d26K&^NH^2e?9FG1$1OMCS1xt+ z_2ImWwvC;b+_~$~SH0>r4?nzfJ+3FcDc^YlDNUCZ-mhb3;QzZ0(PJbgxrK zY&WbsYyYErq9|}4$_nserGD<3jhT@H8_i(xZ-4tc4viHnRey=2I6F6Ty#;j+IJ zzi$l@2h2dYv<_7XINjq)17-sS6U889hzB!-;L+;C)D)pXHlBVOr?84mLI}U6d+*YX6ITt$hHZgIdo@?v;_8kwC30=}0TG_ee(4)wR z`)K(Sw-mA;m&j)mkcLi=_shLIdHqe_`T8~2{Em0{>ev6}l8et1 zkL{bc-SXY7z^c4-;fvUBE03&0I-uu4(A%)qwtG;<_VfU^B0|WimHo)oy z#Zt%4o%>((qVpAT@I{^YwbYtG(mkfy3u)8a`{oP(B|KVcD{Z8OB&-qVBe}tREBHv;Jyk zj(f_QC#$57ub#7lt3~=D03n994z_jHclVyyd5_ci$TcjqCB2|2i?U&_ln7Wu1W}#B zs)XFVren?4u>Wk^yO!E|)P|JpeSv|(;uHigo3w9Tm)1|qp@>deNh^T}1o*jq52Upj zo6lD!W+x6EPtzm}rP$Sz%jZkoePC1WS&@2#Hnqi4n#O_6Q(GrzzApy6v8P7`*faS6+DG#<%>*hgYr| zterUc#y7s{j-T!Q$pb&zG|>LmxBljhx7@yZ_3AW0;&A;}Z{GRH{@#xAo343%zJzzY zm0umtAu4FFpSm-64#E*fxQA;Ju&x>{QK}u*lxO>Xom`=kq}!9|wp`(8&IN zq7()|1Niv$-~Gzhzf~@jfA6>7@QY7B%LcH9R3y(7z$+LL8C8VbAP+L3hXK2!*`3dc zI1?B&(*jf3NQi`BH}}xasY=c0`@iwPWtVI|t0S*TVnc@WLAm3mhsOT-zP-7iy-}+@ z`_hi)oJ3KW(NwI( z%9VXlfQv5J6o&Zx^%LvY4MY}${T=Z2XI!?8fG>QeI=r%%JkHyC&ZnEzZCf_<_F!;D z`|8z0O!)E*|GahU*44vnNaH_v>t6;@zP4EV&EI(S-FMyA)scVY%U|@N550Ty=FLZs z9zFlu^IW``4~T&@UCf34na{lFgCD%@eSdx3)YMdHeRpSW!-m1P|IvGf)~wjIYu77Z z@fxTjb~_$^XxFY?fB5^?UUvD#fBz5H_4M?NkB`3k)i1v7_HQ^>XToJqzxW^j;WO|2 zi|ebkd6C3e_8!K9GslG%Z!J_Kj^!_6cJv_2|bmZ{v@ySC;B8k}P$?8J&#MZOd7ovQrnBRKA#a$}~ z!*V;bDX!c|>f!5}q-?DTj15acxyzQjhy#$Qw4%Hc65vZW-TH-Ze*dGNc;B_xzVlaq z^(8$6{qKIydw%cDe=t2Y_4TiP`D1_k!C$}T4}S4Em%rjU7u6c|x4iS?fAyaChLzC^ zE;#4IpS|(e@zD?e*|p#N`b{_Aa`!dY{{9c|{qfl3*!$l7rWalHYp?m$m#i3E_2Ex^ z_TwLU|1&mpP|{En#@2lD`;UC^vtMc=5|1@22Y&0-FDvR+BePBbEfq^dOE;KK`5E70zO|~dGX{4)L(o3;q*!_;KQ=L!rydCT ziP!uo*MHmN$-MH(-G?U!PW@b@+Aub8PL};amEK}d z+*~|%;@JB28}~nYWbK+Yr4kMwnXWgh{r&yD-T56m4xV-Pn#IaowOU`db{L972j}bc z`ug>QQ69T@KeB1lrYK_PFgJ^l(aA6j-}l$=eAm1GY|WZ3B1oDBL8}MWVw2&d32o}J zuu%Wzw{Gg~83=PFA`3DiVr@u7mC8b+S&18sffaoL)0Qn82m0EWPG&++wQ*%Zq5z$K zZ7s?(TsaXiXR>4#5Fm%PRi@ats$+%BkEIg_n^Pmrh3TYT@d`2l09$Me+Il;?2E(pZ zraT~pcFnh$Fh@2708OEmh;;egKiOrh0D-(pW#sN#ci#Qu<0Hotltzx8_}-6yysEpr z82e&WJU+8T|VHZ$9S@?Vs}h@TD6UH5Z1V!kw6y{L2shjn$M%nXPk)LF$t@ z%oj-fIqTL@P->d84~x|_?u?2*eQ3v}8waCY(8?i<@haK$GlLi;;>nQrfT|B5aLl0! zD;purYRfl1d)sY4+j;ZO=}oS(a&-Fd-uv)%xx5tH#}?DrX(wgmuyYAvTT(w$@ z?(V{~uDI-uJMUGoWJ0D;i2=lML&TMexuM||UXl$P*LHWeQLD|s%SPl+DazXn)>hSQ zP(caQaw5bTuWYj6V33Fsh^;pvn*#L~xxGK?Ssf*{b}uR%J4&37BI~_ZV}g7MLEe)! zVHoBLs+zF@nX)gGprUlf_pMlFRnu|`r~s%rasT&^KeGEr_wG7;WQ2nP;;Eg-j#N@T zI#&yfovzGOlC++(VTxj{Hs*F8ooat{-;a0izWn0zE_}xGRcz1DP@!+AHnJxg*bvvM z#@J+H6w`B2p-}GWvF-h&0MY=#)h~X@XFvbN-+t*YM0NBOgMu+{c>Qa8%MmU7YR^DV zjuWVl0wXD2_<}2*@w_YEcI_JmhKC|(lqS+ZZ+GABg9o2$uXyy(qXPqd1i-0xE}sX0 zRH4S!yru^4zwT4BO%jt!owqiqHDhBUV{={{D?v>m-)8cduh)%wipu5oZszgD>O!s% zA&v)n`anp-< zU#}(Agud|E&)cwc)vvw$Nh33+KDxJBsitwWQmccpP>-kTO(m+-<}W*E!#8gE;n1cH zEhCxb>l6IN#+o=utTo0Oz%!fJrG`zCI&0W_veqPNGYo?4MFdU&bs%UEn9S?WIcF>Z z-aE%^jWtOUhhby_1`s!sTrL#fY8`s-AmrJosL4cI0ES~AvJjs#2ieW^F0qyan|YLG z?l=(jVQ5u-5SY}Zfen%*jl#e%AZnPlZ`*jyZ~mHBTPn8?4|Pz>!Bs_sSVgiB%tWp8 zRH1;V2yrkpJb2mVmyDg5ZpI+8;QsF6z8Tphc~9PCrYcg)TYM~*K*~=C77R{ z!|0**Rhw*kdkDPZg_r;Ed*6D=^Pf=;Q;zhsw;+M2hqeS%x zIx#izKmX(}=4$aJ+qZ7ruy$ai*HmP3oidP>S zIdp7%k+pH<#ao_r=|z&H$mL`yAgPFoCn9d)CX^-BnmS?AYt#AWTsyc#bt68l)heSq z=65|X_2{0#(IXT##|plZ%sV!eFW9cOppfrt&z-k*xZEC2j-NjJj0KVjrxR1EI+ws>Ca!!|Mn>V|D}g`$HtC5e9!go zeEaUB6V=2uoUc03fFx-W5fNEyy-%I^AP5wyaA9agys8>wqgRTU6bHB6!|vUct2VavhjiHRh3`BH&Y0TxNh?Zv+SuE7<(3N@qz zoSL?u60M)yQhog4@UQI_X_de(qu>QVOaBbypt8h-Ga2jVbY^txJjjNUTh#&}nPiGC z%|VHmWPEX$ws*RKQFgZ~)8_irU3Jm!)A%!ZLFi??_apF^oidBb7idqbf>p@^Su=Qqx8ElZm zu2d-cG$k0P64^k~#D>3;@b#(Tx9PU}UY6)#OV9s)R$}}mnyU*q%D6dOMJuR(QJ2>aN|EZS(g9c*MF+--)Gz8w(I`qk8Zi`;Q0JRwcdzb)A>f~o2hSl@0IiU!a!%w zTIPU}m%}2#=eEa6d zgm}Q8Mv&Lcc??P145L7yqd&g$uix?Kdk!C)tTu>D80BC1>=(S}GoMs10vM(Y*AOpk zjd$K~2*A12h9?oBmPVNOMAWhZ1uR=ITpF`6%;cQ6Hgq1#yb|Y|mKj7Uq(W>BAl@a$ z8o-@(KtT+%l$EIvmV0YZ zRj3kM0(=HZE&Xak+{)uy3^)N;;X$l^5~;7A7#-hxpm*I+WpY}Q#1y;k`}}9>jq1%m zJJHcznwnmG_}Hj0fdZGL$9>W+=wm)F(eBi3$wjO3QAaVK&j;T7hbI<}tKJaDM-t~l zBfCbAPJDOWsufSW=)!?@mnX43aqlf%8_(4=nLT=_(9s>1%H*4#*)OKa;tm_;oNER_ zKI-V9u%LlSeOxFP(=_eQGqb3uWieh0QFcqjlfrQJP@j?_jSyIurfC?3n%x3%%tG*- zkCG&5W1DBuP&9;dbv8yyLgJZOLlvn|z|0oPP8v};a+(s+3(nhMKuKILNL>nJTa5S&gKSN-;xT~R=^Z{f6A0f* z4drBR^7tO<|D|;Ksq<(4L-;nTN@QwNNALQ(Ki{|i$b79)ZN|;m#a?Pj%FIgI5+w32 z@lL!uy8pnFiSJNNYm1FW9V#wPMyBSAQE+&+>P4KQ>BJH|VZK&*@r#~+(|2#(aNf2v zjX^E9SdDYdFbWqA@4o(j{NWvYjvSn>c=d_bz_79A;axjM4;&j@Gi;1eNi)GiwxLgB z6WA=sSR15i%FJ0n7ZCu)n2cy>*=CrGI<=t{F92C)@4Yo<$xTpf7JL=NOW2@@vGyeI zlgK$|ZI}gj=bW*;6#5iI*_zE%B)#}7nyWa&tg6{Ry;pO}tiVzZty!419Eb>*a=Dg> zjkPd9DhRUK*A^q4m&mCn!@8D*Ub{eus^@A$~r z*KWV3zpsCMdiKE7Wa@q3&7AQzN#CCfp4Hp#z1%l4bK!8G$=R7oV=7KU(I_;Vhx<0e zJ}*t3b3dJ)|J+pVp43k@n=9IFSZ?l zg3j*QM;;Eldgl-9P3NZy?d@SlUl`@`{VM??vfv16$S46u4FCgDf-nFCEUKQP2tY1m zA`%v4E;M9?!W7_88DM2LtQ-h(N=^u@oCz3_0zw7`U=LNMh@m2+V!SWpb1)2U(Njdg zl%8@Qmu^hfDpXOJ*7{SK9XURJVq&V2jL$Bfn6J(?;>BjVDCq0$D(50GcBY=Tb>^c| zd!^pg%3@S1`6Py9%UUF9k_`z?*|acjW1!N)*iJdovpoXRWj!(xA+mH5uohKW_6=8Y znF)!P)Cnsw!>}R~Mb28dFmMV>Pc=lg+BrXe<)88c{I6cM^&!*gh|bctma6yVuTNf| z_?d_6!V&o)K+- zOci0PhaX59O#q7v)k0vJu}hs-(ngZ1sxo=63d~h&FMaVZ{q*1w4$Ko_S41#2xZ}D% zzwxU#K03ZI-G~KZK%oIMS!ktMzx`|9e$5~Ku0p}200&kTY>leY60*Farz!@u)2t@vr7}Qb@Pzab*nT^dBn5r6U6_R!8*;1CVWD~i| z{-#;jGo0nMu!dR_G@4OSmkb!P<`+&jTbV2rEg-s8US~UmEi07yB!-C=4N^g^@_Xrt z`h;s#ahm&rO`i(js7q5h*$j|b3i^tZ2B6wn$F1l2Qz+}FY!N2n?3|Egpr}=r6NpVR z$w)PBB#VoUx%tZYXk}q>aeU_Tw_JPwXTGrKXZQc)zzhc+hepRwEG{;abitZjz4=DL zD~G$o{?4)E)2ZsVb$xqhtCJIc&ZQA6*yKS~C#1R}pLZml`JMg!GOR3$hu)Wz^8JGLr>>Y$n!Z z3VBPG8B8P;*lbE9YyF%CMN{_q8)g>HwCp^e3?~BcNwRD!?#MD+qpC|&NfO6%^9!R> zbCa_R)7AP+J)UWLUo3aFm5mMZ-97F719cAPrY3sZ!?hb%w{>>pOYQwbs|MC>hzf;9 zlE4^}CW43nQY8>GLzPsKRhJARqbk`lW$?++#@6E`xrTXJmS;)zPa#Xm3mYR&y%%*7 zT81&+lLKJj^@+NLXU65}iHXE|Dy8!b5Xut;cg87+%^Ai>mTRikwq5!kdeYc_Mwnwd ze#ck#-2UwoCr%t4ogQDTC(frL42IFbaFU8TWo9Krfwjb8Xa_f~bM&OxIg`it6O2n; zGf8_pO8ZXCD#&?BMFYce>V1~cG98&5d+C)|eCeLM0H)KW3$kBTJHGE*@A>aLA3eJJ z#GEB^P9ip5#27XN1I-ybIy&N7q0lb(XtJ;MBxloPKn>df#xyGPkKT9Bowwe6Tmm1S?BzGyVE3g6hd7pnQ^C`BYMsR(h;Z0z_^6RM=R{<#bj|YD?tv z43q}?*IxD{hoSWml7R+(!SBC!_vb&m_04~1NGhRQ+eC$EVX;{(=MF-@I5xi$*smxSa$zxlXt7o_zMe`i zFa;DU)op=oH|C4;6N84Y>gXsfqz5d?!d0T^PjmezbG~osL?cOG+d!=`7>Gm#AxXh%rpu3 z6gMruG@FU#)lJ|G&uA@r0^k*nT1Tv$9+)yiVEw%BN{-n7w%!PMATxm4`yA1Jn!7|da=v%S1>)ljkA-ZQkSd(HY> zKIc^%X+lI0OU8l{LTD^OJPXrOT+b4CYMo)HEt2dFJG3MdK(I?IB+PzT2_ls7<(0it zQVNU_uc=pY-my`FTiV3>q?v|_pEnit_?GHZ?aDq8QHP%NzI!}pCsRm2dgFB?4?i$E zGJ5#fRMYz?;F)Su6oEDEhU?CkBQuty*03rQQ8Aw{7mHz6M|`TwPpf{(a!op!YZ21L zIbw>NaWM+_9v!bFo>ZGo48e)`R{5b2MAqJN|9!vrl2^R{8~*|oB0ep+@45H3Prmp5 zod-qXocBzDrO4RC3sV+kwZE&YQdy`!rs{cIJKZ@))>bD+zyFDkeC=yDPA%4^8gZOT ztV%>T-Er?X{^i>r{M;9Yx1RkN8xnflhk0teGQ7Md?J{u}Ex4SZ+&Y9?2lMi|uq3?k z*qe5mFvHTPDodZT0*cJPs->|aS^ue3)Sb-7Pa6h2Lo|PaZ)H0z`<}h^ug_^TQy2SY zf`G+D%-M0IkZceOAXX-Yka&eq0C30@fC%E145=4*q)r=kby@WC#2$fw!IT#bkS}vo zFzQ4BW>r=qCh;~b4{o_?>kHm4BM&sk$E&mHrmKG~8r? zT=?AcD%INfBfDw~v)x1M2exc2boACHPqYuNMHtqn#_E$}y_>fZ2n^Rup<0Cd^t;ba zn)7L@&S~0Iahk^J9Fjznq(up3ONAmj+7af+G8u~~VpSEdUR1m`>)LFp^BNdLc?tuv z0Wm=ZX^J!zfF!GY7=~e(0z=M&4Jd;N4Dxwm)7p##hJ*78fniW4J|B_^IhpeNj=D-! zYIThg^%ZNpb``W<)A2`k=L~mbh6V<+2e{cuCkkZq6qVQ-5+zuISMStBEMCb|kbrB* zH4q6Gg7#9^S#fo=UL9L7z8Z><28K$W3t%#6gd_##k}>T8Mer_BhG8UK*tL#K&Q-_Y8?D{d z+P0+Ha;~MQQ>96+*+N}KXbJjk`2bOCf=j(8Hh_{LD5*#b0T5m4FhjGf?Icx_RnbbY zGNy$g3fcgpX+_l&8C6frs??I4QviI)rso^U_+q`5_<*Qf z2(^*MUh|O&L#qq5vH2>5tgWuktWIjGelcvXaX?QEAlyF3&T)R8<6+#4sn|4 zL4g!DI2o~{2xy+T7vfdMf&fsYkNVIfYk zOw%Q>VdSM5D9BTkBN7OcWUX{YQ#8(e2R*z;016U9pz6U9IL9s`PYNYtjTfIQbY1q# z9~)eM1(HYok-I6^FI1V{fB(QQ{R(`l;%hUrqq}zBf6qPd{rV5an}_H3+_&?t`@VVC z9bIi*M<>VY&P~?c=;dckCLW{HHfQdCbn*+f*wtHJH9LQxnT&`6D5|H1pAs|x6)Xaw z;t;SJm{FYu1}%*W7FF-7EL_qs=k4{Qg&lr%|2Z4ijE&IL^pSdfoiXU>F6SeuPaod% zy?ur5{(NVTKDwuO^}5dCjY+*;otn;dcO_GkFTeQm^UvP&$~XMRHGlTV-~IKvv^JNd zT8rUg@kv(RQZrVkVhpUpd*&1olg%L?QA*x~f)Vij#=Z$w!;t`(k%GR2Kn#w@C7q7YKwdY{Zo6gYwc>awFEO8^;ID6BYo z`1siI@q@>wEA_OVxI$q-g*a8i8h-KJdgD(YN6Oqj!FtF;u%*+Hppc!qunJk^ufH*Ki7=hIcD%3<33WXOKg38jUW%k{c zwj~U=Aigw#4Us|kMj;W@fjvxwAcu?>XBk8w3kBfG15pUe&{XS96j?1(WGEN1Wl9y+ za6U9-O-6n$Z(;6 z*KE3I&qKG&&CFPjoMR^SOHB(ehyhr5z$+jSPfBD0q*ikgH7pqb*0M=WVc^Oaer#y{ zb5$1=)6{gPt$S|I!;ju|PuJO-Ve+WYO+EU^p@$yYdG7|r^Pg#MR4o({=~bq+7$1~EA4mgeBqXQ=X0LD@B2R* z9PF!(Os&3Xr5PShle9Kfk#xG!P!$BZXl~?i5azo!o-N|qySj%uyN8Qmz0o|n^x=1Q`yk<*rZG~1ivbcf>K(kQ6R=mCA|=XOwxVpwIq?Do5-$!a2HwE~Uf`Wt zXkg%gEPRV<3b3kkpnyP1Aq1)nHDoNs7P&y09?q!&oT`O-1uGe&5H*IHKoDvj+DJ7O zb)s!;oEAW$PT>R|AcM955rJ48;2_M1m54M56rn;P3@EIDi!}fOL7<4BMwpX&bMAOk zle&?b`b1y>u>@5zs$L8mFeD(#0im)*>Left!vrdpg&10uv}Rz0tRXN_f+j5(JPASU%*q)_z@sKD5zqWcuC5eUq>B(_TgSMGh};ON}s z-0|^Q5hkLxLSZp+bK_%4n)Ye7{M@gw&fKfEW2n;dY`bd_e32t-=bhnCrk`s}aM7Eqo6t^1A~ zxb?t`F5k4v5Gko4ZtHa6aAoX~dPkdmZ*IPU5yB5*BI ztWhNai;^0GFeK&q+4O(id%!STQYT7;RMav-vzar{1uz#=Fv1+!071}->`YJ(!%B>N9;6U~OOZC!8Pzc3O28?sC2Nc^ z0fbo2q5!o^{FrK8;(R<}DeqzP&(*bRPKa)GsvB{a8 zduGR~#jv#T6>pSR_aEB-qx%949-W=}^(WVTw6jpOh2rAORCR9Nr>-(TpJiig zOjk$uYk%+ef8)(>tyLDk@}+GNNBMO>c^3)Y0?V*jAT z4HLDs^>2!s2)oz2g{oRVf8=0TD$kFe*uU#%$LA}#sC}k7zjM$1Kl<4%^@;tj`<=V~ z@gofotWq7TFthrmODqyUjdgre^u zJF<<8jJ~-Mw>{0?d#yF+e1EKcBXzv-V%!mb-FqVLy=Tug*EhfKH^qp|1Q3Rjsdm1? z7;}4=y{TpfN(jLWXo8i@RS6MOB60?TV}#g=1Y#z^6hHtMnp*f0QNaRM$^nd4tRz$w z#KRjb!pNK<3L+B&My3v6ST|u;A$W!ZlP6Ikqq0OHmYHpZk|%?xv5Hw#OJ+py1SqkC zV`3(ARV*kt^#!cVFYY+1qudh{d5{u$7+ZEiQZ9vJxe~I%0n6IL#FBo{~7&fDDwa-2^HAn$T0oH}78 zzod0KvzdyJE2ydvV4rF;Hr&}l_>r}C_1xN#lV`RcQ%;rg-=L_uqQsUTe=7QNhfPe)(rF zW(B3P9bd72{v?wdR83l&8dOAAH^(P8w<1QVU8kyNk>T4Ut*XGWQz0&3%+7XSM5D^B z&f>80qsnbINnzQXmhTcVr9rPZolbk@Vq2fe_6;ErL&T6s)tEpfF}Ux%XJ^nh#pqHJ zF){L>7Ab+%jNly9pm~ifg8*iTp(tSrCdhUV5KOsR@}HoH&D7-zY|S zA~UCj2eGM;utJS|76_dsQOon0jdM)5G75r_Tq!wD%Qn96s>vv-f`=rXZ`g zCM%~-T5^B(sW1FLcm7#ge^gD*o;iPFZEWDAT1>;+Z@Ko&*^TcXIseCXJPnKh$FzEW z^D*H6{>?YM^ws|kM(0i*TW=d%UCj|$S5+KU03-HQkBRE(WW2uCPA0cK_xUfr?L~k3 z{`bE3^Iu&Teg46VUikW-I&}YubEnQ-dhsHhX>9zc?`E~{FQk-YyjJa4suq^!FTO+# zmpg& z$QmO@zfl-ltZ0S3^&|z%iBKowzAhZC`>HNqbL9c8FK%Xxe+meoW>R~ zNoERBfq}gzUlJ3TOw|=7n6y5>^RjDS{GZ=--M2sY=GVXR`$tZV#pZ^+L9Yjpk&0Rr zZ9i5*1Y z0VW7_Dn&A=Aa~a6Q8<`^T_^0RK?GF5J0w9;zJn}%tGrXgGpbvUP3@21W ztpx;CAH9ma=fR+Gg)6xe`JBtW3$tfa$;QeQOqJLH1Y`1|!VIv2AxecqiZB6)4(z{j zvbA~S#ObEiP@`?*8m+TZ)rUlcNJWqO6_F|&6@`((m*g^(U39QW(kFGg^P;Qn_?f>O z&h^0~lZM@XTmPEz1gFoYjal{l*V}!c`qpp1>9e2y?wh~#Wt(l9@!H|X&K^1Oy~9V= zfoIWdw@J%=EtcLsh zt53V_N6wsHYqqweo|u&c(iqZAmM^)inU2+bbM6eM71dM_~n=e>ixWViN zk*eY1Kh$+B=O6vjS6}i|e|6V4?gSe#;tb{?YRezwDP#5A$O4XcSxI*f4Iy*z%l+`TP z(+-SG@Oa!^X8;*rn6ffKh^o0_$ANZyYTLa>W=ia`lbV^#0MA5@NhfXC*jPWmvi9U> zJoP2N@dxE#9)MXgOaGGAxUCCNXVsR77{P3+^IyN09f7!ATdTLmzSnQYlc-wHVm*sC zYcL4B@6y5YrEzQT)z5m_+KE4zp8i`W6^Sv^;yga^-b;S<->+P(As7Rm!W+*EnM&YS&)GLSx8m#ZA zjWq08S#iIjojcuNP?Qyms5A23b+i3~RfvftNu~p&q$yd5RyXG77nasH*Pz)8owMtZ zM5p`cg+RV__7FrPCz4;2Rpt6r%FMsn)1TmPBb5@o_VyMU|sIV8l^xcN?j!ep|Di*Nzj^=B z&wTMi?b!!ckDgdRb>`U0xlyk=zBPWf@w0Bc{4f6bzCVgu0Y=y|{M#RS=G)%=Zqac3 zq3=8Ai>fje5i^k(8WRPC%-0)d|KvR%diD!m^qU{Lb7?p?n?1Jj_n)eq{^V1i@QT}R zefZeXwUy(~`SBk*ap+{>5%BG9u>fva1Gv!N+K3Aal*W}VI$IZ-K52ZR3R~lkh3#c0%AuU1!SAIlQ~ZS)W~z%IBK)=(r!`i>xnwB z2f)sm3D_|aJOi#dzxKrEyx_I(`sM8?qyB40_Jswg1TtuZ39^L?fG9CZ(~vJ**#pc} z4CbnWK$?=PD&%s{&Y(oj^-Hib*_xj#=dZur4fpM;=H{w}`J`!b<~%^{WK#5cv96P;nt5l?w&+#U%}wD`+J?mg2Vz?3|&+f0h=c0Pn-g9#O#JDY;YsGp@Mo1#PUT-#e%z>g>;X$&^ zvU4!8T&WV$%qYc_kQ$R<8j>bhOe$h+gm*~E%7UCnQsj8PMEHV|nB&gq$P8mx?EH$7 z;0)@`F;p{kA7)63s)Q)a5F=s>QzS7Xa6!%k21n$XMkDr2-jJM4YU>YevCq9B`I38m zSCq~d>9`KlV84Csu6yn~_CH$51M4GdAN>8dyzCd=bmIPd*cYy>0Mgh>Qd7xb z3NN8jEUsM|`jEd#?c?W;zeTV<){s&%i!xOH#Y)3tnekJ|+ z9Z|M6$1CR_Jazd~ZkkWg&lPTIIZU_8g{5YFQ@M|J-OufI(zKJ!tDk+_hmSpU>m}Fp zfd9QYebUhrPrvA*{olFo&Zk}fZyvbo(;s=K64)coI*+OtTnQ6cftU~@d|`EOu`Ebyv0+F`F5CR6WX5Ajc4a=AS0-G~i=-kaYSWHkTBdUsHSD1jDCowCW6^^%MW%CTG zNP?M2a+Ex@1B{sn%o&-A)0FEEETOweGmKaqIZ-09!XZXua^@A09A~FOm!9FylCoVd z%}kBREaj@p1ek&|$%L59a)AJYKzzR@b{7~4mhr_om7oTId>(`%k6wu=s~EXD6B8L( zcTSj@Svyu~fvm#j6G)9*R{V4SZmOnA`9S7;;5N1L1XN+pzTWvoF_Fn4<&Za z%m~zb!mUrb`3}kvd4TdR%6~6D`*O|TZ4JWh`Lw15nyDBllr0DnIii{(Ks7mOX)DQ?3W=%65BZ(`0IhtGEb7j%1 zvJx>nza~kcGPifHs>JE6EUR{F%a$j~mwti+Ws7Uma{teDxLqI_*l+snk%p>!a&MpdXy zYEeyDL$sut1liZ%9RMp!ILc%~0N@Iul*F7t2rB6JAPH>?RX|JxtSEa#B~k*pOxi-W z(}W0B0FY>A(1Z|-n3~$klAuJOevhk?tBRpk1kgwq7eN&j6+%m8<%*Jvl2zfH6=e>! z5LBC(R5YceNkmf9Xo$Kww%H8+^zn6afHM%W=HDzyzK{dnfgQYuXNqdP?e8}O!SC67 zRj(>euRN3>RY_`?8;mZ!@~P|R4?Xo6@7%kzEDgD82WI!A?|sGXzR2blw?6T={TpxZ zJ?TZOpZ(aGlNf*f9ebX1)s>6IGoO55&kZ-G&FT7)lVP$kKOEhAY~^Jycov}N4- zHXgqJq5Zo@OUpYQm0Xo6gktF1GwooHb5-TIG#-$(ZZIcJEwinn>fLMMqJ^cottpv3 zdi=xyC$66xec@Rzc=nU8{Iq+t!?GoKhoqhGO&%&}TL=(ZQ-eivo}7mW>Kb`|9_Mi3sOUn*WO)%vuHObKJOK73V1CC%i!c0DDhf0E|3t6y96`3X;whleU~M4h z!9?UNG*oy?27)xf4f}}6%*b&b_mj*2E+Aqd0ML-YfJ$sysH&-jsDPO|=2$nNz>c#{ zAt9LtVlokpCStzoyAk`Ms4idj{Xv>e*cX$tXF?kXOH1Y4oJkDh+EryUo)m+=gg}t~ z{HU2u`}6&3*xPvIu4eO+UDsT@{>X#n!eVdd9lhNzUcL8cLs+S*L6V}W!!)FVodP8w zX5P8^(eS{fSF~}%JE$3iOyCT;S1uhi=K>8enUIO7D%D9<5gM%4L6S%eTF-1Y)6I#luBxwVB@bT_ znH2>QLCgw|7yvaB^A0A^)U7&YveY65#H5qW^RohNOiYjho~YL!?%#L&EzkS7;pF5C zpXy(BIZ_{Ik7042tevbMx_jZ(|2-W3=DC0V02zq%bn#e6xnl*3R8^roQIN1Eq7H`NThzo8iOX`ohY10>gEu zPVe5k_CZ z_b`Duh$0F?v;;IWcu!?vrbvlWvKX^02*+SU)1a=PX$79*HU6ij5q-l>SGvG)WcRRu@{t{`Gp70y@E)*vRwZqPS_nWnmN z71%S8RZBZuzX$JSbIX8cb6u15mgjqm3%);^ojZfVAXJovw1Gs}S1>Jm6?q?Kli9{v z5_XW~Yp$<1HqvxP1@F4?!_%`L`tEx^c<$`^hfb^ssPHa|5|gQodcDzLG+Jsyn*eh8 zyc2@&SU))~D`M(I5{xXGMVLfOYB4|+^>0NCS!r`FEWCP+)NChNziGkrL{F zvO+S%X!#ycmQa8h3{pm{E#^7BfgBYjOuEJQAaq^<=a|fSMgewahS27?0W*`q9GfIF zGiFsWiCVX5YduXvl4K#OV@zh+G&-4>5xfXQV1%+nS>_24Vq-CN3#~=r9J1e63^Ahc zhzX(AGw09s2c$qzkc$j&x8DANUAv!Zrgq|cVPibH^ci;V$LY!^Oh56-gZpr9)9G(i+9aCS1j$` zQC6dJIM-iVZpY)ob22AQiUr>VuVh0t=R_v@=cj{y^Ul0Rj!2mAZ;~qSgl<4Ht zo={L=GE+EYYmPA`prGstgaY1y7$jco>LuTiY8e&p` za|RWFnX)N8JE{~!gH z9%5^;0bn8om!)|k&S#Q}5NCZKpuA?@0me+=0zlrI@1fqVo!QUi zm_gL5dV6;6U*0#~JjP-wF*kbK236}UPHLcp6tzhpXG)e7ZEJZ9>pdCZ^BxK|BJ+-r z_gQnMOBxi!Xd4iaf`#mc@CbkfTOaX4&?ycy#>uK`y z*~}~klZbxh3dgmH*|?-~ZLoby+!e>df&IiwAbN(eiBNRDaZ)-?3|R zW%b*St=#ssYhc=JZpK){kzqDm9=(28eDKUhcH8b+8vgnp{^7Y($3;?XYE>i7C{)dR zQq&t7ZdaPE)n^~*@4BoQ?$mZ#%qj0wq1)jDf6v^5<=XQo>!Ymm)o z!Aulv=ExvW%??JGn2Bi+4Z_i4tr-AoWL6Lr5S>|^k(%qeT?RuFpm`g7XFOC>fLt}_ zmM0%~e(_P8PP0(>#+)UZyp$spDIv&zsXbjkz(ldMW^=TI5s+y#mfvr`d`sWXFT z2)@R&aU^aY?hfJHk5T7(%r8C}m_aN%505|b+nR~D|< zb7jw$-VZ7eLOm;nqhe{%%`d_^gAkEP1f&?w7jsJhbUI1XX=-N79NU&W6M@UZOf{uu za|@yxm6<_~$Z_fG=`2ns^`wrW37aeMRXg6AoLy-)wp`E0@dPl5fn4#^zw_rGzw6s4 z&z#??+g??wTCeOakLIpCc<{)P|Cy3Pp=@nqb!#cpvOGmao;hi2lE?%pSxQiW28bbv zg=CUU&BQE4XoB~7kO9fFnB3YYI0uj!g9>m3@>$-4B#0m-#5T+B-93^#If5@R>{G9# z`5`YZ(qI5`)Yga*F=z_LL}lT!>aWS#R;LrKTS-xgR8nf%l%lFg3?h;M4Z+%0+lc8* zXSId~b!$on&fNmKY*nrc?9sMJ5iwviKfL})H}BiO6G~Mdqhasnr$6!1eT%~(6$NQT z+n}Dpqx{9UtW>?8*#?Ds+OK@_k@vkfZLMiJcltB`fL0csde!m2`_RK5`26KR|GM4_ z|J&9F|LX%^Jsij5i*9`46My7Ko_gaI0EgLZVgDsD>VuCS|N7CB*BscD*Z;KR>B8Q9 zKwp(#cg^nKpM-*NR_%}9`pah@yiY>Y&L%J=f@WxoBu$;mNkuKh)V86SJ?E!hb=_45 zCY$F^*G;+WqMscNesfe_39P7Yfi?(Bo{lGd+`5`!Q^nZ@1l&!@AZx2$}}5g(yO6P{h_?U}sEurfLwV0EQ3@ zIibf$EmD9ZI8SUy(p9adfuwA(F$h8nOAvu)c!DpeU%(j(z&R>M*mDt&N<>EwoDs+1 z9`y!P3_wHXK5-8@E|>|IW_h72B$;NLy_f_`!BVt_Y@#xSZb3IxXRvmgSV>AQPe=tB zdQ55>RhsSri?vEn6NRZ591)v25G7`q3aDG_O4-jxImN#!OkT(1ID>nW@H*{h`t{Qcodbl1!4tR#ox|VQSL0aW-u>H{)y?o3@>7h3Ui< z6%$)b)=bmZIt&t;Y`8RuadSOxjpKAGp;hBhHxk5oPtN=PC{CvBbV}YCQ)&YfB}r6N zscsDh*K@-K=ZPG}daNll8*36`n6_#pF{RMP*>rY(WnsAU@Ob=^AHD72V=IGRe{MLs z{L+KF_aE6lvMsih?;*)xgrpr(fwDzQ0dJYTniNV%F(Y}w4$gOUB7iyp!@;(f(5QBw zAVNwohmfEKY!B69L{lRMgcdOxftaXt7z}CHLw`V{IhtRj`30_eH0o1XQc;jAmyiD+zM(?$_dNfNbfQWT9zXN`tnO>MKOO32@-dFP-4X7W}3 zg<>`~le~r*4!vQqTboC`w-jk^Nd2Bv!$ke;a|Z}Lzx0d0d^gE?5NP9`l@ES&xNCI9 zbDmw@`oj;r>GhZX`0ZHQ^T2Qahf{Z*eg3CEON&oy?t1rKANleR{>~r&`7i#`QZ@hX z4}SWq4}PLOeS%mw&zwE>;6q>g{zH=(Z@BJYswYKnSZ|Jt{)i|(`MQJeddJr)zykre z>FG~Df97=Iy(`Krg5@VyGo4GsR8rI=5hDHhrSZAbH{NjVXFvOugU9aC&rcr&?g3`N z6^;(8_WI@dsIUIfXFlhaTfY6JFOkO5RSSy?d#^lLy0RKAa8Z$WqEjN}vM7f|Gm+7b zUX-4O&}^)0m=p{9-C!}+6XFfmTh8oh(X{vA^`ChEyI%atH~iM}(&sieU-Oxd|LF@} z^oAqzjzT-ThZ)EengB)uW#1pSWW>}b0zm)} zCzz_HtdwV)nlgJeAjvjy*L3R~4D9nBOc1ebZG7<45C7u-__^_+sjQy@nNfx%sU-!u zY|4R=n&rpWtYd(isdR{fF15t2I}kFU!$iBqvrHEtVyfbtGqLUm%xp>>mqrY1T>yq0 zRH-cUIzuD!J1$*(@vr=g{bl*@7M1`57g=k__HLvZxV*4cgP2iNXq(5s7RXTxYZ^7c zBB_~)8w|qwI?UL6A`X)c6D4+F=Ol%3qn1(|B?SUhG^b;Vs;8zv4ON#<3+FY26j~-% z*Q=Vu6$P}}&QXd&b#E1c0mei}*J5T}>k$?#7 zQ1t-A>iNy@eDiasPp*~By&eT^jvTw++;o1C<`#K4;>#|%;Z6VP5j*!CSv`)2Kf3zK zPdxhdL&F!prr5o__E+x+Z7i2}Jo-ET@yvIQJpc1w$Ks9Y?1#4=IX!&R58U&=?!4s< zzx2K1r+#qJRXg^K&z&aFi3cAza_G=n)3izUU%FqTq!@aGa(r%cdEbsp_U!lqpg>}} ze&4b-O`42z&R->^kR+wlhSapFZ9?0IHl*0ZrmaSEPk7UB39G;6Ech8W|Ee&**dUL1a8WBsh^ zg7a_u%%`5U|3(VX2o_k}_OmH+lrnT20=nRRRP7d7s35dR(eiel&>|$OYa}ruBr)%| z$>!WS04-lI6JXGk!OkoScH|231J0Lw$z{yZm6tnqHUkcw5Sa16%o)7FnUZx_L_@)} zy^g@VL+V!CKocz5wANYBpjN{gkK{~pz(>J`0`MTFT}eqa{o-<@Kb-i=Z+sTE}+P#N;f0zmfU2Q z5JQE!h4VSddLfFMX$hpFCWe236GI0A$d(KCRPfkyt9G^TLW;2nLCe!xp`PfWNZLqvJJAd{WxBSS_6NgGackr6el;XX41ZRP* zB}pBVf(fKZs+vR3FqruYMVUnl%lMb#R2 zXzK2Y99oD12Fr$IhI3RF)Gui`;L*U1=G@#oFD&w|o!syFe%}?9XLd=sZfrVEvs%Yf z3$04BkR$}z+KB6GvNe{;B!yO*kXFwf{rZqgKKI(2|K{Ym zzf`P<4Pn<8-T{v))_^On*#Cidzx@rbe(A{*XYc;r_ZA243D;b5?aepsy6VcgE3Pfd z3KBKU%(-$jjCGsZ(AEK@a20t4%k1pY6hm9bxN)|>>msQ`oVL#Q2YdI{Yv+ohn5>=u z;@3WRui{k;^Pg(kJt{A479iU(lep@U=67i;GV&uDo_^i)NQC_$6bMDz&k&3m@8~p z7Jbjm-jioyCReg&VkH$b$7*CCcH9--ZND~m)GJdW6E!oLj;)+s^V}aCk1?CW+n@8s z-M{$jYH9`(?La@^!A;Ne%ljXve#1I93%hMrBxjCD#*O8KYIotM$9*-O$I%!0@KP}l zsR&?M4c$f*5FD8)<=dwk*wJ8N>5gC9uIYIRQ8Y9lgCyj$#C&(rGXa%=gSLnbT#3*? zqorg?(qux8sVLwaR4nr=2<)7O5T_HB#ExUr#OWl=g2bdLnOU68V%-3yrtQ|G-I}Dj zCGVYc5~4(biin0;NOdbANZm@)rlz$NRYIy;XZQt9>m@JENk@JAotD+VS*?CV2Sb*9TQ65?PO&#&tS%&Ps1V4&-2o9vAE!R zr6VE&rKs&pW>cL`Es1IF8=}tYG~P;^Te`6!lc}_gggW&Gi>FSU35}gOzOp#CeCp(i zib^y|Fg3pV;Ej8CER~)zq(B8^%tkR-tzUNz$_Q12g`On|E`ttez z@aez%oqzo6_04u`&ob&+s3#j|PY`R}LaM4chsTk}GQ@Yyvb92~@-CEG{rgpWXB1 z$-%pht>_9kkmq8^Zd4SDyZVc}XwY{9>a_7~)4Rb4tZE&;RV=$4L^Q{P^ZF;!&L&`D zAOGB;pMKlDcYW^LKX&USKH-z=SbyIimHV$&?HpDT)kgf*xBU0}j~*&6d9taAXh-PR z+mvO*IQ$V{Qajq067xwi?4gg0_%=YKYjFsHsVqNmFy#<6dPZNU=-ORuvOTTT7@- z)rh3cb2?QCnV*uH6r0w>G)ev(->Y2VT~Vk=Y6Cg){Q;a~Prg?`RWxzo$&s14swxI$ ze{rE0^ogDG1=2GXX`rg}mtN=nm> zjpJYb;^t$ACMSM|zXX+@Wh&F&2DRejx6(e*fX~t3% z#r7fY;0calM#B=liin9FdIdSA(U2BKzTbC+XE963>LxX_IGx7XL|slG5j0^u(|W3# zn>rcmY^?!9aId3UrY4yOmcK3-X0-n-DQeB+Qul7Y;72uqT zN(eBJ_r>zkK_qG3~ z51({A4LVpV9=z*bmf6kExao?U|6i`&Gv2nWD)WBEm~(}__t_`k94p?cf{GLcMUYg5 zNNN-WF}z@C8ZdO*joNmy#kOf}o9-VXt*ySI-J)V6qN1RH1y$rwIo(us)4Au~6L(x| z%`nFMVXjl+dq38PTj!p0_FQv~@jU#^8QZ`VOzkDJM;=+D}s6B)tz(aMG2`q(Fb;tj9* z#3w#Cqk8Y!Bi-HkBA_$5oYEnYODB62H0qT7!s6ztkDU>zqkP2c{2wZ@~ zHqUA-$h1t1s1R*8uF0XKg2=6)CgIWz0mQ+BAdQ1z)EL037*&hFnnIb0uLMydV#_%sH`M7bcKdU)S=sOQv9Tg? z3l_G^T5#E2(5xG^7WH5yLzJ#U7F2>95TIToD9Me}C`CbrDJ31XtwE89yx{gL9^N|s z?oVC(=o=1ys>t@|{;lu%%-=om-!J^}@syT?>i_t_y??nn{qTSN!qfM@!JT=CQ=7lN zvM113>YJOk^%qkWkW)AHnT4&Uc2$zLNhHIR-0>+~FNwrP5K(4M6%E6%8AO-f{0rYU zZ4cij1BwY2mGo9E!7@F^QgzbR1QqW>J!Q6JbFxgCk)|O|KYLYz)>U*(!bVDrlF$oH z12Ef6qeyUUtudrQ0XCMA=ONUVt*F3I-YtrLkE~Va!H6+}*>-y%Wn)ZcHO8zz2Ng-U z8)9M`n?^-6hA?RWMCT|*7n)c(-*_l8%hM`qjK-jzRFEhVVl{D9$on&5y2f&~ec3gW zEbp0eU^AO_I#Hr-ZS{xt#7L3EKqJ8zN{TX#L{=mK3Twgb z@z7F=+@p3wi<@lm)B>l=7VN zk_@5D*%+_@KGCDq?N-uBi{qdG^Zs&9N@=_TKVr9*W5%TIjibakmdyK(XG5B=DR6lNN;B0KSc z-@W3;_>1rVi+_7gw+`yc$h{P5mKzj|M|{))HWe%;lFuYQwl_TP5P%DK&r z@#Vc&UiI`t4{fbp&}Qppul$ZH@4R#N%4d-=DhituoS%$}`K9PwtSbd|_w8*4!|r^y z8NwDOhRl||IQ3*WcvvE4csBt|y>;2UW_Ee6?e_d=*x!G^HPr|I{8RkW7kvEl-*{`8 zj~+UammqHEcdAg2h?W?`1~I}|uptSpx;+ReL#FN3J|_f)2sjnsEoB)vDO{N{LLM`&Y3CfiV=qGPfwSUVhC zc($`iu1L7ya~q`|Pi7{n;moNeQof&fZUc^7MfczyI^U^2V1w3&v2| zrX>!n{6nr1Dim9{1sRYqVr;Q9|46CVrY%H;lEI`6)mSzxQB7*#N`T3sy7;~Sp0Yxp z!Bu{nlMY~@_%_L--$B(!DBx=lLt--;SZe`jaFiF))CoAN2pXftsKH6p;6teDw)oq4 zHWok(o|(xIS))N=*tWa`wRvH)EXCqE%fJX#WwH#+DlyeTCC04NBcrgEjR{TQydY!5 z*HEa0=z>HcRS^kQt`{fWzi_L(EPyg&!Y3&T}y8_#%irZf&$M2=EvVGY;e9u=$=g-aW*=47f7HM$D zcimauc~D3A76Ro;_l49;NHLg_{+cB9lZJ8$DSUzumyW*(){AD{ioQ})9sN4 zY+bzk`LBHA(s1IV{MehmGhbYaVrKX3kF`7XwR;ZVdPl4)D0)lFS09+uV9uO5>zi79 z)6{icWV4gWlRy9dZ++qZW3#2Y6B~)1Zy<*D}HBCqo zEuDxo%AGgwz32W_XYu$Go9}t^O`rVwrL&9^fBv~w|KcxHk9|vm>|37sn+MJdQxS@n z+8qp`pCF{;I7i>~#GL7It2@+{qNdz0DoiE##S!PU%z|Y`=E)y&lbUInOy` z^m^RybGK_|x=c!b0tWXNOs8+z5>#Cy)g+3lwID(*VcyPQRO2@kUFxVLX655wrVtbk~cw(a*hjd9f0{@s49B zzwp%I7hLnnm)(8J73c5y(!QDQlb$HcZoV|2@%ef*s)obiXy~F?DprQoO$X+EU1eoA z3@0)8$=2l~&$_AT&5T!lclUlb+$#3&x#NcGpS{^^o_h57i8B|^tsMOAKl|9`c+p@_ zVg7CHw$3&`efw2+eebIe-tzpl;}0%ed*fhp+_+fRlevROHdacS z`E%n%`?+4#}V#LzOh80|qHL)$cTjV47@+Q}$E6nRE@j-o`-Nti#fK&QtuT{f2T z3?>ryVRGvBm@OsGP1^Y+V12K{y{BYSuwk;`@K}H})Sou>H4R zmu9_x)Ad;#6vb}4`@lDT@t!MhKD=_(vFRf#FZeJ2@x8Zv_wH*CKkL}h^^+%xyj$LI ziJMiqAFF*D5>t6f1{TD7Zq?WJf5x|KY8xdlk7(o$#7Ek~|+;Va5R z$G9xRcp8HX(_y~2*bD|>3&wEeqOa@8%0_Q_-W0v8+bR3Y_4c5!#ShF*9 z)qj}lAz3e_y^`>7MUgrkF~xF0L_4V)ZA&@nRn%s!zBvI@f{0-#BeUccMMgHK zW}?gcDKlsyE)TIghcyr-2&{o=;RFfJ$fOEGN=h}vaLE!NY&&oJxlhdFQhfYt$nqFO zd?m>wqLGMHZ1iJlCS;5n3kfWari0sG@*Aff{Jr%HpRxcfpu#X@%WGfw9w$?`@|0gW zGr9j;X++b?i4w4Y+iqy8GLeOfePG3}M(itaFvEYlQ2$I}_w;z=<=&0({{Q@cfBN6N zqk8P?Km6jupZ)0Zwe@Y2ldpuWO@k6<)^@u~O1u+@OpzK+$9H?(=5$5Wwj9OO_L>AB z;$n`N5i39l#Kvfh<<+;(-1Kr0NniK3Cug7u^PFf0jJDE7?anrOaXxK_gKvnLh&a#E zm_QV$Y7GmiDGS#)C4iZV z%z~%mq0OvBiNR;x-gsP7?$s7*?CO&bsrX{HC*v6MneCPHaauq1=wth?x_a-m$7c5K zwprF)oQ*#EDc<^ylYjW3YgB1EiBcj_K_x!W4yCrf3xgMTaS4N>NJ%m^wX< zK@C%34H-5JHmDjO139nb2_{nn4^f1+uLkG!fBmoDXM-k9hED;SH1MR%KcY!mcitMv*$R^?A+eX#~$zOTB z$&nSIu2hxTmX!U}+F7;8a&QilBg>I@P!w$rwiq?0S0A(ZU;q&I~_`;J7rFsGB$|NJg1~oHyI=6UIzd+JPIbZ z#D=UPBcKR!U`3HLGhkA`hpbKP1Kf1S5B=18KQXucU|78nLiD3;KiUXYBa@LzXk{Oh zfdnV6j^ph(*$9Kne)VizJF6>CUUlq^*F5J}*b4{16GFV|>UV|FD5L(&^>;77=3gBA z`QN0>QcDD8v|=ng^LZsERaTDAeX?H+`cpzmW+Z0bL^Y(SDYxQ*uO{i;)G12#1^b|ouV4E=; z6%~nKh(sdN;3NidO&ZXUWj4l?9X2cqm8hE1uR#s5wF-o~u0~@CfsFx_Q(K>aAZfxw zN^EVYr?xjMu4Xo*L~Jz#i1_I^X_}+NrkVy9MWQh&O_Vp2sRW6wsZiLM@noD8xiMr4 zBhiU#Os}Ihzxeng>rWr&vMd*u77rg?I&w{?*RM8LA9?VbPe1zL=7lrc=bqX=dj_iA zg@yj!z0GitcjkZa$4^&coe@zX(}E~e5~3r;i&fEnvc$tOB!UGowm4ti8ImQ>ig)Ur z`UErB*_ov?w|y;ZMO&0H8HQzKhVqu*L~lwgwdn=@MrV6UhlxswfjD=q7lpeqx)lbd9~hm&AZ-m z;&Y#0Tb~SsS1Y%2dF$A_|Krp5ee>yWow~HXO@qmxk(+kU&viRr`PFy7=@mCW^5E&Y z*hDhbU`rwv_w8GG`t)_z9Nss#aOBAT&Rm}rWK9fyymbkbr!-r4cB$<5of~hitSs!` zGu+rVCHM9o9ItP7_Z;$3g{Z14%JY0~G4JI;vccxC8c#UOECuHMNBX^-v`!pbTw%tS4@`?lv}? zwUsEoIe$D}d|J*tyg1Xp`p*ApTr@7u&fhFGsnkN$ocL1x=x0oK|Dpf#+4A~3391mL zX9!xPP>`m7JD|r7FCSaT2ZEO@79i}-@W8|am}lHDk6-@W#a++6x$Ks`oU=at%6tD% zB~@YwOwUOCc0$fOw|T>wIBF>&X)`jW6(gXf2e-L-Vik?mT9~X#aHbFXjDcLIWo-bdHO;KOw4n@TmRchR}jtco#;iU2YA5L~RA=p%v$ zQFKm2P*5u7OAOIBF?g_5RUriLLkJQj)J=>*qKGPtkr2pOTXq4odJDt0(`930@S&-* znV$Gsy-!o46zzga7*`U4h^Y6?V8W^t)ioh63T3$3$KXTbV}uy0t2)F`563pQwGTqH zy}3QwTAyxhUOacE=r1+Xs@ht2({T*b?WZ5xyl`J>t`^WtL-MVg8NZ^M<#)`G;Qrnm5eO&N~kkc&9#z-W8x{8OiY>KFe4y6Hdt|MJlr24DMBo>7(;WQ^$@saH-TE3Uoi(AGl_ zMdyCz-Y=|dPd1&q=fP8i8RP3i*BlIN?pv?l|I@FO!Qh2vxOUHH2ItP*a{YmC2xp-& zSs}Srb*LRJEbd;O>&?t`@|pR1I<__o&Modc)J%sl23vI0uq`_=#BQhP?>{tITc24v zC_dDaQB#eBt0x%oM^Dnnvpon<;#A z?(v6xHB@%d`^nm63ESn|vP2zTIIC=73O61o)Rbjj^f)gSqbeYLo8@&JSxBnv9 z1O-8AjX_aZWElVy1#AmP0Rh%P2~iLgY*YyvAs&)ay@`+rh)3`$0r8pBV`uYY4N{va z&p68|3AnSijW0}qw9qO7*nl(azQ&do4%oP)(Wf_YWQL$h24pFTHY~SmL}GgG%ie$6 zt#`Pf6dq26u=>ywASQeD0@IrEsm zd_J6cq|ffqbKVapyBA*@T&>_Zxa5xC=bpT``s{zz%a82-k$=~}>j%;^45~(x6RT;crhZzhLQfvf@{*_JN;TE%npfyO$-jvr_O^dN|WXF zaFoVWU?agPR8@j&K$?|BJsvyfRO{(@N+dD5YB=`J)m7uG$~Sd09@K-0s)Q(`@l*jZ zWi|kdKy<&;+1?tTJ#{>&Svz-nvaw>w2RA5QU?W@cgE^1&^YQJcjz<@UD=TZKPX6e-p19`P*9QVqYG^B4M4<8Tg5cl-tVNzfB_TMU5iKdP z+O(C82ti#9@1cNqP*G!G(n`!EAu2*dW{H)UP?TKcWG!VGWtJ26kfF{gphOy?h9IhH z4CRKH07Eh8WD=$mUyc2A8ok$EiP;(Imek3RSxpNeW7;a5MuJh1bx3~~$H92ptobAkZ zw=Q2SvP{sKjJ7n8uO>5n)1BWvztG)v;|T0-6rihJGY>u`jS>9>t=F-Do zo!xh|nA=?shn>8L)x>I`yf8%(f*Y-FGUCj>ea7UszwnJ;`TWNsc0%hBwm=Lm&niW= zl1nctQa%?7=i!{140%q5+moFXO#|=R=}k@msVPVzI1&I?qs&sCmuya1&LL=wnlbsP zO;E!ytgK*z5S3K(T!~O*ICEJSh)gDyDJxqerO8x<$U*=%tfJ3((SJU=cXxd1@i?8h zrcv)DdPM~l^?}OLkRdh%C}*<06i(%zN@J+twNN`Pc&u_SL) zs{hJ~p}>$xnQa%@sT7|aOs!4ICP@`yoPX^UzrmC)4EILZqR8lumNLR~;E@@Df~b&W(rFaMUfD&0vUXF=qbnUK&42%H@f`=^;e0#fMkaG$KDW%D0y7GqrO?u=; zQ?N3GlsW?|EKxV(j^*4?nNz1UHiLIMtyM|IY2IZURaIgjYdOm(LJ`H+(nPH%N`x$@ zPKQZ>jChQGU#bbLB~e9a(^y7fEv>CzBH;3+OEI9XGzO$tlnQK4>>^?mVr4K062TyA zI7<*Hia+qL{&@8d-{mKv+0@rr#9yz2)Kz3Gih-}!bKe~gb@yLN6g zID6)Ee|Fz5eD||2UjND;dGGtNy}q$ET`hXIACkFa2mj|!e!$Ok|J{$hjZ_V!8 zOQz%Mx-&Z$T;(dMt4XiuOGHySUyVBb1JyWGqrtwT*Q}o2o?9sP9lKtO8S2iJq^36u zV>JX-g(1^h-gx{=SHAKUs}DbXp^qm9jKS~JP~p=(1Eyo&y3kEM?%;gA@{BEG)M-3swZb(_|wUY8gT4Oy`793~gsV0X<@Z%tRog)UwPnC}0Z& zzz2#7D`YHbgtjAV&2xxTF;Jx#Kujhln}ZlEG-=d8jiIsw6htBnrotE^C1Fd#y651F zj~={IPTn8ti62)8(-;UEMOodLR1lh&bzzgJkYY0pqls@SKdSs-Tu+?|YRW9@=6N&I zY;MlQ*j1gs;`(^-g~JDbsk`rRy?WZtE~bdMbeF@%89M)sncH75{`_Ho=`7TwYi2s6 z$Usx!DKn+woi9G}TlbzhSL4PRc!7%m5P-9_5;aZ-5otQTa7J)N;RgwKoUQ(O({tO)$XmYvdf3QeI~Q>CjtS!RwBx~Z8csQ@LG+d zPg#x7j7FiZL&N~Rxg3`y~}gE zcFivB+mjW=Vv#Lhaqzh>{Ggp*0D!uJo8a;Uoh~{v$Sjb!OH+ygd54Q!%bAzm{ek_5 zUi#;M_QM5n@G>5^W6$(fW(}0dc3_J3!JX#sDRq<77iq1<8T=GBgAWjewe6Lk85yI< zDYw)sX?}q_9aCg201AX4sB3XfMKB}koODVMn{G}348f-@kJl*Zb*a}iY(a|9q^mzd zMDR#xSkcxV5hM2P-MhMaacOC9@;0ls25=Ra8xM99OF9W&3&S}X17wCuW{CXIzy0v8 z?#9Uv|2ZEzwEVp1<+r`*#LvHQ?d)Ldk*6Md;_`5?e(meuy8Y1K`s~2R{^YaIdHpM1 za>u?4-#qzL#T)0(y!N_XfBMnSyznKrz4rTF_{%^3ThDp(Yc?-mzI1N&($b!bYui)9 zM|REslXt!2#C=~`+_!t>%;jphIWs%IzIJ)ng4uQCifm@y=4CUP6umO*%uF`66=HIe zm$S{JSvatJw6?u)aPP*Mi@`Ta+MAmhtPke)EW4@H_4v}$r+vM>_v$Nbk@sf$ZZzum zW{$n!IbvtZ`DH+Cf5~sHoBkYx!emq~El*c3HiL0k?_-T8%T zTu(<^oMl_9!^aX$;K$5KWRwNif=x>IwIQ4`BPfcJvW%En!36aI6jN1}j78(rW-Vz_qaxt+DVCSM`C!0Z`l))C3ESQxn7oEA6y!4m!!g0T~<(o#TVVG7bF?uHw)i)5Mu}Sl4byKbC zSWQDc^~33Ob5M_6J#v$g6QfP-C5AAp>dlR;v{_M_U3;6&L1%HkIrCVyxX4+~<*Z2L z?xImoMKSY=e>VEu|87%645Ebo_(x&G<)z;F)$OwOS9Gyj!x5mU0ZGy|gP;(FkNCdl z>@!8TO+y-1RZgS!WC~9%c@QzTfU;x@gb*>9I9WT0z|6)d8)gRB&M(iu{B13hn+S+4 zlMo8>h)zYxSQv{K00OHvqfl3&u87bK2f;h>j`MH5RdGOW zI*B1bA~RsDN>GWaP*ye+oQvM4Z<2%{fW{!+A&U4w)_}o=jLFhJUt^RQ)6^>khmKPZ#c5=*5}@G_02b3wSUing?@j2))YA>3QU%x?4l@8r16S^xc!dC2*W75 zASPF0i!4W$lgTKiEPO_32g^IABT(}CLRHh; zD!peXxptmWx1@fbmv-^ooauGb5Pj)zyo4KL16}fBy3p7I**M-~Rn*T!kH;l?K?P zQ830BLMNlH;mlCRfU32$w7mC*7v8<{-{0K5=GlvT`of3Vogeq^SbFhn@x+&>& zcfI6W4;_DQSKs%|74&+;VdWKXfBAEuoEPPEICjmr*YDKM^=FFt*}01zzecHCsp?=8(N%+*sFtZi(sU9u*dZf%#D9(&PCv)QEw zKlS(5z2K(a4L8K5$>*2IsK#jfJ&j`ea{$L`Akk}-W;8ZsS#)ySU%d3t{eC(!g^gY| z&z?MZ)2-9dq#4&D)uRueHkht$Hj|Z&bC=hyT3=jU4;P1-82Tk>`1p+wI*XzTm%HltQsPdAtoy)!4SAWh;7Z403Xy^C8IEG5Y@9JrhW7|l=(3V!0W`h48%ThFa)Ud*<3HfS6YlbwpN^!i!n76>LZYfcnnvp22II-l*Aq7x_$a8V7)2I#1vhmw3jy~(zO9uWWsGy#@Cj6+>y{e@Q3(VF@QL>gkEoh3UMGm8i@k!c|WX(gRpCuF%DxiLXR zO~#CcH~j4XZ=srqW2&LGev44P^J<0w=c4l|#McZ5O*K(T`c@51)l!{RrSY+;1yG5c zP!(4Z5M2}M%2$ljCP# z@rhWW5J6^$0A`dO^k+EF!3I)mjHC`~lt^Pl`VZsy+b=|?A*F5dRq=SS(Ef9Q07Za3%U*13x}zwAZbUAx_M zTFfqjVY;)E^Jn_YxA@B!^4$l}OeDCX-#_>DZ|u5i_jJpZbG!X;Q+%Tkg4sBG_Ub#H zH{GmBtJ&pUE5}dG^|FQegM%TRJ^p0BlWh(fW}eS;uXK8K>+2^j481GJ+KdTi?$7Ue z&EI|IEkE&|UZ-5xyPGVB&}gJA&vxk8ra!kdGq*h4Ugv~1Auy0xiV-j%fFq0nrzvov z4KfL|YG5+r9KpjD>KlM5LB)xY5hN`g88NniSTb-9MTbIERV@sHz%VJ3VHlDoLV_ZI zND-0cbmSm^<&n6y4G;8Y4H*gAM$!e8bx}>!WDE1Q?=PPW)i{nvv94peQ( zGbBozDbpAv20xuPlQ6nmuMb^a$EPQOquzPj0a}_{+(#Rir`3~}Z2w`NUFx2=C%@q> zdf|cSB6XK|=?Jne5s4|x%#5y|>fQ9*>V`Y3$G%2v+T|goS`ka~a2q2;uR1n&-|0cn z7SWRsFVmfd0Rcbx${X4e5Yk9p$XJcat>r->+8*DOknTc>#xBqupqRu!46=nPIJaQi zx#c^F%`;0_aDFsOO{G{*tKl%JkSc4&8iNRdD1#3nZA6n^ zDtZqQ5dpFBfisgxVWdKA6l$y`!!bIe*4hGu7`#N4;M3kXMI6O@%1J_yC^pMTV&iLO zqonF1XPHx7!?oRYYx1GP1}3!*CA7?IKIjnu}Au zAeBd=*YV&@-}P&+d+i6l@r^(E)L*?f%4Qm&L{&&4f>@P=AxJ!TLd#WIOVJ@Z6;WF=;h5U& zfnt=Zild>7C+eI=L2Oz8PSQkLR*7H(g}(CcyZ`c&f0y1T467GdhLWWWoEh#Amxc?5 zwd`WN^9^q=X8g)SkL`Wk_iX*mrx)J+s~7+5-^@PyyZ-*2Z~XkD=b!(scNKg3*B`jD zK5+fa@Z$a#+;s5LxmP^@)?fU8-t~QNzWd!X_Kp|b{?L67{@!OF`6oZ~>u-9_u?H`# zpZx0A-}mYJ0bH{@+sn*XE)CzgXSo@TV|3MI(2Tc(ud|{I&7{|zCqrPawl=bE&Ur5@ zs^A>FbQbqcH_rB!=Rmf6S#ln4N_J4(jKj*)%F%NvdtIv?+?>Zc8h#*@1;kcEM~flVz|D#uxD4f zxODd6`#b%);Z`k*Yo2{*v^g5Bt~OCs7ED}rh;IB zKA?kzFFOPhvFC46GatWGLr zMOGj}W6<6n-W*1+SS~<@Vjv||D1@>Ms+8w^%k%#^R?miM6(|+v>U(Tvy$4*NMOR zj4@xZFL-%=@yq#(-{C&@8)B`F)+HqYB=Wv%?fh;XoL_$X`_BE`%iFY&fD%L`Dy8p; z0>IH{U-4H@JTMhB3R2{ZNlceKFz~alJa+8r17vKv*s7ql=;0qokV-8vC|%xDW2yZy zK-pRefo%q`im=H*mTl3y@nx!#T2X1ZOJtLO3#!lkP@>--APqOAw#JL00i$~bHAWyR5DB7?;Mry^ z){Z#(K?EgpCn+I8TU1h#&?Y+-%=bJaD%FLPvRh3jFsWe-%EK3$Lw&ekA zjAdH}OdDvT3Azb44W=KBX`mYuIGznWcnyu8Z47wA#s)0g@@&hR=aN*aQmN*ghdZ8g z_TFo)_s2e2lHt9IjEsz^RAuQ_<~n-&D6T3cQ^yl=;4N3L|s>)yGfGp?p4Ku0Aa zfE-{1aSUm?8P!uzCKUvffhYzOm*F21fr&wH_BIBC3qWA8f^fq2rdRybO|N*nB__6R zwBE~x%gfI$UU=%cXa1$PvFK^Y1fGyRuo85DLBT5^&?}SzZ%a^x0@N|238V>BYbb~! z=t-OvEhsGPg;<;wTWkW$6xM5q3XKW~R1`3b5@`^?vVhJ>G2(7lHoB6HB+J1$K!HdD zDkSCr6jurY*yJ1E_`1PTadHlcMPI+Sj-o0?wGuN~Nt=<5732aA^)G+;Gk$n9@`)Op zs=w_+!>|4Eh11b}U;F;$w_SPZoA3IoU;nRf`cLou-4A{0?)U$^IroIxamjOk`?+Ha zqwOty^PN97v19UMfA)E|W!sJem+YMCB(>-h4?g>v{j>WjYH^rX>(w2z6AIxCuf8%( zOxl`WId?uzs>P_M4Ccep<<}gk%&JHra zmW{?L$*Gn8(qL4Jqk<_HSRG`&JhPsr8p-zY){dz$W7Oit`lC-j{fWQ)s~5iat-*^6 zow=EMXAA&{Xy@K*e(=rzXVX!w3;>32R8SQ}#aL6Q86|)RG$?~ggNaZf#8nLVFjSx; zP>hTaknR`1u|vL&5z`2Cgi)j-tvJN8dD9gVXn6!g0uqk!2p-c^edU{!3tTpfllu&p zk$u!!0iaeoimR7j`cC`8F}uD(`OxQ!30CJ6vrW{^QH>||81^|r8s zb$el{cwpV#JyYql&GNHr6`{0-OJo*%#rT5{?YQH{g~bi+dP!?sb+%x8md+hzmqFf@ z(JHSm*u|64*tANjfCD{!C_nnWQkGFF7cG-U!?2iJNEl{!?bP-{X`gIWXXV^D2ET7@`;C@Md*>{cuZ zADa_j0is4QDoQKOW@CJ2`oP}3x888mFW&NF|K*08{=?RtuiRK&TwOgy1b~K^gXa|i zfsq-QOF3R4Dg%`i8+Em1M%Ste71&&a5CwDssHG@m*ylV4rNBhkZmW9TRH`O22%=Ew zus2XjfuN9NIS&WE+oPog>UMcF0PnyRAP%)b775L@8o&`COW}a2gpD$QMz9V{q*bJ$ zq4Zdiwqt`Jy@CeLUG?Md0NgOcGuCBLtsnj4yVsvNhP!Y7?xQDnyyA-cKm3OeEc&}M z_uIerwtL_I8?SutPiDuSv{d}^2Y>&DH{Gq{zp75pwf0^5$3f>Td`YX`|_~USnc5t~9;f&~cpg zHb&iz=G4r>^GCNIxpA;~K5ch|i?Jsb^si-6G}9%7B`P$6i5 zghSFskkCZJD)4<#bm`mG3ImKc;0gmTAh57B0)uFcl|qf;EO;*(L2FP7 zSqLIfIj{rIU^JLSnN%Ydj^X%8KESA*kO%Mr37Z%dN?NN!e}%Gv9}LMmwwAKY_C`D^ zye<65F*73SG}0WS6SQQi5#*i(?9dH*?)1>Vs&3}m`ouHqTjrt%GySP(F7Id2qs#Yh z^#5h$o3DB2?dSSSm8BP}ojE;onVC50R!)hI5S6MWG*}xweQ)jX?I=_ABiD8Ru_8r| zTC)HMGRws*B5DJGzx0-?fBWwrIXZxzKu3WUNELkG$M#-+a67!@z0qa3RB0wgtyw7y zW_TTK;@Sj5yvrD2xp>M41QkU>gbWa+s@~D{v2x>D@E)FW001BWNklg^nsA%*(=YC6!=PXCap(Dq<1%dO&TO5awH}Bv%{sPQ zpd!!_pn*u2={{w^7>HAdk}?x`5wuyZ6dCYko#UI(&&|VrdCmdk@I)-B5&&gKT5vHj zfk2wpF1_sbOAq~+u)6;TpZ>yUe`9DDO%(aUhr%v}2ndlWt96XRIL2BX1I%9|j!j^; zL7u<^Gl_NV7(5F(h!X?=qs#1^iI7=2V1%;1ki6t0>Tmef74B|uHk4r|J_tlwNHB^+ z#!A}bom*~xmC?~B|K_vTUUTga?|V=yFank#HlWfdYE^2@IBumT3LA2iq4TeK*Ly|} ze;K+xRcqLl^J@Nly7yXo;-0(Tbjz>&w~yU^_fOokC3)j7eCTsueiZgUzl7A9&`tC{tkG;U4L z<%3~=b*0ze=&hYDM#DjGefO>%S)OZU1T-LMtxcubn?F}?H&v9@>Q!w_b*zcP-un8~ zjLV9&)r>0jtlR4^oEqOYJGOIA+-RSE=;6sjS8+Zxl|+~USXZhc{zXN`&M9s3VXidT zflbDz2Meq9$#GyFt*j-rYSv#f)x;K26h%5Vd{? z=bm3Zb9S)0e$%b*VGof4gJKl04;;IIKnEu<@-p5Lp?67%M<*)SyprdVz|AT=qvvt`0a@`xJonSOlJC%^j1k9_1aAOF}tJoCiD@rUnt zaQ&V?{rvPbZ|FY$kn66>*+-+R-&pqUD1~W?^|kxGs;Pn@z@7U#S6;R~kQ|iKf*{1oXi>OXd!oweRu@+9Pa zUbwtKvpIE80iZS!2?|pfisTtYR2;K+ED+MN#^`YVAY1q%^R~$IA$tqjAei9qLSgSY zpouwrpA;i+xybU#YC1F9aO)euq^dF2>Yx*dD^RIGC4ou}+T$=b4HGlao`z}zqPQeO zNNH!(#wAFefXSBWgiuQU;w=XAmWWTzvGWSdg}cj_^wDw zEKEpVl!iDixsrkFrxApaNtswx>QNl)T2nVW2n^myRzOjR+mv(=L1{6X17Hk9f``_7 zwuQ@vZq%c-HSTS2mVqsl%`q>K1U&#K0S?(}c=au}-uv}$6eBNQ=C;fQTxqDi5dhU{ zjMvjDXwWFARZeciqN|Pi%9AQ>`m}BM0$2r|>HEI<E{$-?D%9mw)Tew_dU% z(fFO`&;G@iet7Q}ztz~W`&Iwp9m!bji+}XN)q?)u)8G8PFaO}3uf68X#vmKH@kZs( zzxv28+<0idH{9N;PE^zDcJFxW4Oh3ux1drRD=QOIJKQ=}+hf8yspvROP@AYyMHP8# zK|$JRC#@}7>-yw2c3Gu4E&y&c5Y!;HHZ@1qyIwwb#Z|4Hdu)GW{q*VGH{R&8jIt5A z3;?5ARjkE0@xuWq%+^;a&j1`oRkDNbnR7(l&Lvka9zCurroX(Z0GO#5uE+IMp?UF{ z^-rdr9o%*{^h+_mGt%-l@9vU75>9w*hv?3rxspX#Jh>_`wH zjiRj+o$+RS@2)+qPNSYyRyP)HHrRRKP-Dvk4F|)Og}2@P!88S7Gyt)JiUBP^UJA$7 zlXIMr6e0zIpd=}@+mKX1MM7SLgb^sv3`2LAfa5?A1SJ@Qi4`h^441UwLtEhr3!lA@j_0uCV2xpwU`^nRh0fvqetFqh%jEoE zK>eXx&+^`Au$p(5N4>SY*SD+Z`s-`is8{q>MuToq4Bent6l(=}iegL@FmdC^6{}0d zzK{H=n?JVRU0Yo|w|Me7@>-<$&+FCRXTLGyvLWb5n9xL+HrS;3 z>8GK;8gJjKsx1)Eq7XF#f*^+KJ*7Y}=+tky^}s8(jxBn)u8lwQ#v?3%S}PUeFB$-a zMFsM5@Gr%2==1>47}gh{fWz)qHrrWE+4&@4_P)CZN6d*+F*!pl5?KOdGg*{E5Y2URA8NXXNAQi2`KHH^+iG6 zi6EL7jpmTuvKE+y*?Y&I1sTwV)G@#LfdL5cA7@LN% zDX6v~NB)H5#|<(OtOIO z1yDga1z;xV-NBuIeYIvMir@UJF<9o;me=Ar!!po z*3&0-rTU#mkE+=sh@W8i@K7MR|o}zZM^6_8)>4WX+gAYA(BRo&;2=l#q*S zO(Cn3>Tqq|j(Vn2L6h{B7rPhE)W^rkyZTr=$eojy8~|NmN4{{aZFAm{Qea1!X|&lh zpdx2M$8Ol~FD@Xuyx*^k)kmvK^{LLu??1HT+QY8j69I*~ySx9dW^!`I-N!}X(p9=5*?hK-Z?SWsU+6g zlk-b2E-sFS{dzSW6(eF|@kO33JpYV$K1%AX&UBP^n7~;S2QE038LU7qP%w-duex9eTM zw3II{6^j>!YhAn1D^{0=qk+pu&Sx&mxoxo9FZyE6kD#+-Z@;^C?9uP*C~A0geGP}T0SlPGZVk`Q3#7m_MzWZLZ4>P zYCK?MP98h^7muCaRfG4x?RsF)MuF$DtX8Rj$-ijEK&6Fw^Zc$#&S$8NQYysyQ5p6e zK+hOOs3Qx2FY-uBw}{rM+XtF;MK2qZ>>7l>j=Q%GX0 z)>XZ(LaDpb2%%yj!lIBtCWVu{C=KiY;5fvb5mgXW(P&g!DO4uLN(_-kB-8+kOS^yo zAWA4|R)pjM9Zif)D8Pxa4wBc1!5rVp*}uS8|vEhSU4@%)hv}a{kQR{+-_9*xY1i?x1L%+I|FFZ+vn*sWeQIl6Rf) zvAR)*F5P|j^21jjIEaG%%p%}ey}oPvmVfu|_uc)LpE|sArnj-WvanRIq!SZkuE=#- zL1d+(`ouT@T=&YiY6Gzr1h4=Z0|R)0oM7aIRf*0(1yKZ|MI(>{08ml*z7@~Ho|!=d zXap01jzMeG22G5?ma8HJ5E4OR3M^el21E@gKq#I?X-G6`qoaHBXaAw-3KSkJm#Mj$ z0w!21z%jOV1o-MR@ggo-VWVxz32_x+J;*h()ocu-KVoX_uP^_x027V+A}M5 zW8g+3PleZBmK_X4&A)Iup6Pt`Z~pMVe&E;s{xg62b3gaibI(4QkMaxWHWuG~m0#-N z^qy?~yj?y^qdw0+6JPN40OOvO9=oXY83VuJa45VI&^vnAfv|6>Kb~A zQK{M$w@YBo0&k9W0u0?NEZ+Jer=no;L>@q#&GXU7+ad@+A_7EImL&;*us9}5)-rK< zfgl%JK|}}y*|~6*mjGBmP3*`MMq268zb{09VR{pzP?0kcgM@j*NT3v|Qime%$yp{2 z0ukAq3d`(8h{%DE0K06&-Z2p{lV>6lg<+pA-l=jyHMnh0Z zl3-GU+3her17lNA9Rrm>KrFq~W(6Z zIf=l#@{N4?IkZ`6k1r+V05D0bAO642-2AGa)dnJk1|dyRYlsu9H$WQ%D9cC`2s3Lf z-a|Hmd<05^j={vh3fW1hbqEc=S}9aYX%$5}GAc<`6qPj(C2RmiA;b|dLqNdC0$=~y zw_fpz8{3W6?XP~-55E0v6>du+rAz1POHu$NBxNKgKNOazdgo97RPX*TQ9ph78{chC zPFHpvoY*=@qRy4ucmMJS|MK#=PT$M&Ae$PizxSQDo$Ya>N?(8c)b=f7lIQ>Zi{D)> z{FPhB4~wUye$RMGEO+T%*=;l^qdM?UvawW{N|=x;P$E)c8b7gy>HN?W_B|AK>7Lbcq_C-p6b zA5Bm1S?|qvCU;jWRkpqBuDE_MSoch+ZWK1NY@6c~H{JS%t=nhkb|0vw)z0)>tx+W> z?YXUunJMr5wq1w6_0N9-jG^>{SQx}J5Q~M9Ta_eGNik&id|-=*sm#Cv6u5CpfI(}- zprZ;zF(xTSF;*)|YZL?xGRh=;r-ag;@WZIW@bQvX)Zp*(M<3&Xz(NjvE>Ay^0)t=> zLPPN_*KfP=mHS6$F4#ej0ce=@mPT2>==a=UL@T*pEcjH$PxNVNNKrk0c%9Dm{PJpE zk5pt(F&Kkq2fo2@;X-%j@Xk*^dH-|s()Zi8G_%j&f8X0@+k@ZumAqPM9^7iKd&}~d zK2@2S(AAD^j491npR;Ek0bgt?BqGl0N<}p%`uBfToC_68z=9z}8Ztym{o$t`TqJng z!R9qr?iYm6R2OcIs1$00y5xT;r2SvLQLg&N6!<_O9?Y4^p}?g^L-6`$5_A%AgE0iD2-_3QKU#2n0o* z5S0oRk7e{pUV|j-??S>;1du2gV7KrSV?hWQjLw7S_8EPn=?7^Bm`nJ8D`w=iuZvO zf{i-H5mu`vPE}--R;q-0LV5K<2Jd9hsx)z%kg7edeiSM<09q zg=5DCd4Y(IMQH#8??DxwLql3GFV<|)_t}-V+}Zu+r@sIB2ex0g@7br8KlfK(%r-mI$H!0GUT<5Y`b^i(yUP3^`=if)_w?%8|NQjVcJ0}A?+4yK6~~{s z|Jfr~UHY}-XI^pD-dlD|84dsV_{mN+al;})=n9kbbG3Bo+}ZZTq!$vQBJ0lV+12ih z8n>JhH+h&t$dwl!$=Io3BDy7D!wndQ^ z1w@cL$t`3aMo#iziwyi;5^|z8TL{QXk%RM6vaK!Txrm3nkfLDk!4|*(pdd0BMHmuK zTErKO#LlvFLYBQ_v7kxB3kn+r?w{<5U2xb;PF!lnJb7zr|xZTKeTpX!}o{9{7G6} z;O=s?b+7aWoDHepqhSvbRi#DQ2=akx&6elA(j+WQ1SCr7$L@RPp#dE3;2p2NMgWl! zg3zK>sj315RiUi)2t%Z-ZNgG7RT@EsCr2s4hXXYz@g9`|VAUAkoC(2IN@1)AP$%Vu z%Le4ix@81mSGZBZg=6yUi9L%a2~o7r1`VQ&K@m|XOo93m%HM@Odm?L5A%yjEIQ$9& ziVDn6krLnzpd$moXb=^kh>jy=jEW2hm?%L+_JKty>>Lq^fOoX1<5N*su}+Y*)_@?+ zy29Gw(7A#aF7tK1u{9pg(p38S{**n?#;fV`<&x7^ePrmW?&;Rqc&-L@W-twBqAA0JGkDYki z4Tp}OU!7`J7W&zZduLCsY$T}GvSMkF|J3VlY){XuoL_P-XQxHw`Ji{np~KZJTS03f zNt$D}-;Wxt_0wl7jY!1}Wi$vUwYpA|cx+1YA)46dc~q?{qw}>TM6HlaYqEd##rn(^ z+wJPKYHE${nHQ6KrRb0Ra5!9BoV)tEqPqcrLh}6m5A3??QkSDp)?3ZuMAjEph1Yak z>#wXe$8@DV(cM7gwMui`IR!Ej!0Onn_o8dHm2=N2Q%&l1VbYO`l9q~S_u<=~{J}qM zo!L1)HJMZs&Rwh1%*4F*{1{b!!nhn>o z)t*}!`jw2nz3e`A+w_sWy0L5j6UVyWJ+}HnkDfZ&bw^LUaaa9}Bu}r5w!~^@JNnL| zH7xV3`XQtKV`AU=s>55xCja7lr=~l4&GG!IRa)=8Y5xn~d9X1RD`C{e)SD_v9h4TOA?04iih7)1bxf#;35S;8V1M+k^Yr+coBXZHcv&GeH8W+96r z>;hN zLd0Y}KzRI=3{3$c@4fSBq^{jLQLr}cPJHPhn3{!Z6IBD@V)#p5_FUYAqlUMaX8ONU zZ2r};eG|e`R-?$jKCNFYs$~M_fi{1)EK5_H|C8oo^CF^tIrWp7uDs?=-}vf>jFDQZ zT1~9CbSUi-2Fe8xoEP#k7)Uk@OF%FN(*$ZYRjr{`h@y;9!N*LSh%pg%Uh*OJdYosR zXQleDG4wP65FCI01rd1s$!8yZ__41ykDvbDcl*yi**rh_AwYnSScC?-}+sF(`g`*AGe7LaC*tV4l@0~Xq zDq|CaC5wqsnM;W7oAud@jo;PVGE$=-l(?HqM`IO;ix7 z;$4`&$8^xcy z_vxpfJsa2Xbip}cgiuY>v5Cg<=g!6J>*8`W0BI$zba-P$Z`p@&Rgdq9XLqXB91Io& zusD9dU0n{{r(ya9p!>%^_u$i+Tr-*6eEq?)O}VU70YnWdwC-sU4hnv0gjbu+jLqYF z=-QTx?r9aWWTK1#DZyd&BR^)E69BF>b+7~B;Cf+aowdU3omHqnh@5lQF)@VFE%M?> z6ox<(Fqkw(1>z~#B7?66ggIodh(T)v0TE?%kV?X86hj-W-=tv$615`$L8U@ltTrY* z2o<7$F!>Sm;;BPJpoY#r1DZXVL7$AyzYc`v{2cHffuD1`O)G2a`h(I+kLq{eMyahm!^DR zE%K(+9;)bB%6w`lS}iGWy8NOjFIQ=Tf3#X1KYr|MNs1;`CdMREwOT|DfWzYvtY@1^ zo*}U)K&>H4F^SP=M2(SFS}PO`1}I?w7Iy3$6&ZKeDI0)ulH1U+hK5l*kOM$)4sN^k zb^D|`^GEY|Ep_*;a47f`r|)*cI#L=6&V8E zMe|?YdeioH{qMj1#5LC*&W8D;XBHPW1~U`Q1LLie%Nv8-igWYpeVZ2(o|XzXUWu!% zsnN!Hr8rJ%Aga;nD5K)E5=Aja6%aV}(D#zmupL#$C)wvd&yqB)w%e}A(?)Z&x@f8u zU`fZuv-MRI#~7ua9aZf5G9oPFM`M}#^>4no< zF4=kRsVBGW-clZKo&efW}zs+dO#_W;~F7} zu~x@80R?5}Y6M^qTmjyLx55n80|i1c zEISzrtTCVQFak9i76YqRa>+~*%^hg%zZPs?vi{M({?M_1_ezKoK+u&`A9xEEgY3ld zlH40S*W?wdAAIMje_Y`m6?oqpuLK4Rei((Dp15##)**cw5@HgTv=`ZI)?b-xd21a+$Ik#>}r%M<)vWN2ML?la=!`!%pz1~m&lX%;lBfBah@rNzN!?j zq6m$k(gqIMMS)3p-^N9LZlR1fmd#=t8F{0S6r#~9fVd3 zbPSSS3mL0wS*%33K#KpDCs{8I>^Xpwv* zStfQQ&I@_=LcSnpy)CS>&NBfEg?}g!?;t`z2JKNS2&?eeVv$E4dF=K(Zr4femfP>R z_gmi}1PT`t2gIO~7_dRR`iCak1Fe$7hq~IC-l~oHkn!N6eB`t0JmCK7mn1$YErnI2FOrp=(;RZaCBm zgza!;tueh-naJ5(M0Av-wZ_!mBTDJCRXzLk^Npzrns~527ke%0Y1fZCTyuUQPZNH3)Y9qe#)$d?CO6!w@?&8+N*RIT; zsy8O5_Z;kO+YZFVa3ij!+NjR%U6p1F#3-%pdQYXM7&-4p!lIO}H^$<$mD48LA`11s zzy!n+6hh~r$Vxa2aj*fFr%Pk7+E7UY(}s#u6vo7$LQw!{Pzb=GFvMCbP?4Y_r94m( zoEJhKt54CH5v*9S3@ro81ymIDJ+uvwfb}pQ!P z#y|HTZ~N@;KYU_o{ltNpL+}0NC_uPvW#PdDeTf7Rr5H^OkqUN{+P`^I1W*vi6?9{YQ! zv>{suzlJ;R6yh*?g#kf2EoA{LmPfx3N@Nz0aHSIQ<)C55>_wPa0vJJv#9JWGzVO5x67a+TOrA>p z7nKfunk<1d;GBb?yOR&m)-XWv;x<({v^W8gcq*?LK}QB)a^fA6XBPIJbLX68X4HrX z?48dG@)Y=#Y0;3RtM1&k5mcIKkY6QY88pB_B^Ka@D!pPFq6IHWo zUwrToOm2Zn4Ip~?aDS=Csyw*|X~ma5-_jiUZ>Kr`=*I#`7bkKlvv6qSBk&f;148MR zDKc<21cM=zReBGF1sl#p9()1Bg0~HiH@tUwve7?tF94-XpJn)mqBj#*;-q^Zt6juFW?dc|KoT zC<^a=4x&6+aRfR-RNm%!e?v#rY<+p-{ORt(8Sx_QwbBZ}RB9-st95Y}lmQY`t+2}} z&ziGaB_A#yJFaVW9mQ#*S@io?>}RXZ>DWZLF^@#;MDPjs-vrQC_JxqqN?eKV5H6#kDHxI;q?wwb5X? zF*etjm}*bVE$yR0)+>RrVY< zV}s(vH5$(@W?QD>ch6ON3`2$iz(8QgkO}k6cw%p<#<9AMj-^IQYG`W8GTX!4D2?0kqJfIsPAln zB05gU6XiKLC+r1~12ani6ozAaD3le?q9hn1OASOI#H?6=oZU3=pa25<5S|g?&0TSs za$;sGJa|tmL`;PT@LI*`(5w;>37|I_j~WY{>JN-!8hFb`ggtOZVX#G0D}MsMx!!D39%zIN_Ndn z=vUpo^5g>#-}9tvUr6>H+Isrr>)&?UJ)ivN{kvyA^tbmsHotOUvVFFn|L?nR`OeXE z_Z&O7r&Is*L(hNcCtvwH|M30q8U35LU-@?rJon)*e*gD>?vD7g-~RLi&)t2^?mzkA z^SAAu`PzwvHyqx1W@FIL{cZc^zJKDv=`#zhiJ1#8URYjTsn(me=d;lWm9qJ$!cw2u zGFV)g*mH2Wwl=wKj*85rsaE2$k)URlxKj6{p0`c`=r}^7sjyLN+;vwg?K%1(Wf1 zB!yJRs~Zdb#$>f99DpYzu|;XF?RHD0bGxiDm*5$<4RF^SNh!Smxdth(Q>% z1|TE{K~_`@$fy*624|rt#9B$KO0wDs8nZScco&gb)Cdv zH-TCKX#jyZ0R|c7Vsr2ysew2~ZIA#WEs+8u9u372udn;=fT1hZ8rEZRUh<6dLL7Ipn4r?WypmMz`S`c0?e=HB z^!55+xMyYa<8?v9;v66)*m~&`mGn14<6VxS&h!F4H_Chbk74Hz3ZkI z7uLS||MK;w(VAvgecylYbDrUy?mX1cHTFEI)h*N-8chgE$jAYV5XOm};8+P_#S8m` zm+g?)D^3iyag0}RJgi`hkr+%^fI&z`W)Kn@TB4;E-7WQ0T~k-ptvkQ>9iHKwy>~vG z=e8hZcPdsi;Cvq`>m z!sj_VH{IPfZKP?4NJ0ztS&lmeXM0Mz|VMl%DN7BP@0AP6m*8m_C#bCy$4 za+b4bXQlDZn2|*61_dKa&|xO0h^=w0hgWT{#zBLFhzJx8%Q@Cdc*e-1bTESuqM{WH zk`Eq$&p?bKr^0(jndikGv%}?2JbOj)rpF&_rsGgo?eyrApZ@a6jR!t|`#gw$^ra_% z>FK@g%zbuePEn2&uk5#!;VqA>{!b4qoGExa;y^JmynDs};Dbx={?11?-|*()op<)u zhoC5RWzzbhSGw$<{`h8DgMzYVGdYU;6u|=1u?JFMRcKi_;l?+XKMMY3>cE zN+idYOlzvXBN>RsHpJKw#K38`4hAH0ddM3%&nXSKH4?L9$60a*GBZ<>glK0(N&_Ql z+wP|)C5R;LV2wPhLE2VilCoos8be1!N|SY|8Wq(hYTF{J ziiwD7R862fr4*iFBBDs{;&LCO5ga2gju9~iv}TQ209v5^Q)3zXlM@*J|4z#Msl)xx zq$Cr%pu5E%2V;`o(s81_bO(Kmun19WgN9%+YF)|EQJjpe4N^5|8w3FnX4CF}{8L+2 zyXS%L?Dbrh0U+noCk}-sC~{P*MC)kADgq-gLl{J8MVnR+4`gRYc6ViaS9W*g=9cX4 z>U3fj5nC`!B0^)c+UjU9gxaE}MH)Hk$U1p`92B7L9PmBI(}qFJjMb$TpKS$`Z~NZA z@R^VQ&YyqBgF99D!XI7w$Upm$Pyef5{QVbhzxCq!jjtY^=()kL_j}J>{khM7{rew2 z_ksJ*{N!i8u`=p?>H7XpeCRFz;&-0i+*p2s>B(#RPhGnGp(pPD%`d(1eQ$s8CqMq= z+aJ7eZEr#_HCr8KSJ`i_kNUp1zjK2<_j<*2f{ZN8Lzcy?>}O@sOb_zG$a&}TqBA2@7?(77tg-=iFPvg!;!U_O3UQka1{6U%i$=t)7jpwtXOt= zVd@WVZk@dU+>K|ilp_wYo^Q?BQGd9GusaxJlr8VyxFOMWHecCTudAlFw0i4>SJv+s zG#ax0N*Ir0yQ761-o6I5*w($pMaS-F?`Gax&8pdO^Mu6MR)=e+&i9rU>+vBo5xcy< zNST}N?#_3%H|}{zwXMeU?8G85nTYc_Ok!JmpLwS5fA9NWy#C^sp1qV_N&WFpL-Kn# zHdRtJFsYhG3K4aMvWHk3=j7OoNeyM6OpO?2kMfcYU`DGNnaq)aC?__u3Wch_W-l}l zh7ksYLqRSuLlhheB%<)}1X3tr;4o?70oMq~6FYL=c@JWrQJm<;fWGkAKOO@Q+;_G< z8i%?@tPTag`SjQS$%gx$H$VPQzi{;#yX9+{8TAM^fw^Kl(F+eRJa%&V-j{_&S@dWU<4_~Gw(cwu1#W&^WxMu3qqlcKY>s=*UPEX7FmxauNgu#`w42G~K5 z!!}U>G7Vrh6-woB6H_Llc(9eNoG@wuZz_~!Flbv#hy>|KQI5&XnAtfA0S1jNgxLA6 zTrAP~+?=YarD&rGJ5N!-lpan*)Cnm7W3ymHDp7rwBcu%jR0X-$CZxzunl2DK5<`~u zH!0umECc`+6y8~gU^XU~MpeW}e}~N|Mi8q34leB|1;2omCd6Sl0{#sD-jc@&XUw!ho0ru%lAUy>QjxDM- z(FDd00w_Vnz$C%iD2_SQI69QWu~e1C26d$!L#(B0WfZsWqN3R;kjD}%I>HB@;iU!cc1?0Km5j1o1;JX*o9yI z;`8TEtUR>2@Rh5#mzOTS?a>Qgdv))J-uH&jJ#+PNJRR4~Lz~N6(|XtWoaoX^FD-4J zo{aaKs&?82Ba8|(MnJ-dCAJZELTbNO;_*w4z+Wtq>)n=f8rYDKuIs^RkTbao_7HW^=CJb5=G zr>wtw^t&H=!}FJaa(p-gcR!P9b9Su%geC|Uh?7kwnuxiAB@i<59?qds zGG&92Pp_^jLO>dqLm4F0F*}02{FLl9-xMeG94dnYCN0cRc=S0f{5onv$vB;(xpA8^ z0x`KvW!md|PgFWyE;*l8rxy4Nzx##%>N`KUeS0R({=@e_cxQ3$Njme9fB0_}GDO0G zqQ`V?-mLVCSsmf5X>IY`dT(v%ysD|ohr`~=Mt!BpL5avrx{a;|a+yYTMn>YiQ<1b!XZEQ#1em!*lv0Qq6I5UfQ(|!DRTK$^#mACW zHBplo5>CgGR5oR1n28{53nD}{n8g6cu?=LPqA-|=s=_hBaT?H@8Y879DfOAURd9-M z5ed7s>PY;GGeuJ&&w+^OkP(bP@lRlWQ>`~3IZy5X|ISW-;&%TU;a$I((N{%m5dvaF z2wk!yZLQOp?ido&q$@2|GzM+klpT_wq{c;=E%)NAB42Y++O(#!59j`0(ahoKJSl@r zq8P|jOjN|gOj6ObMsIYSs?W#_A|?^DD3h`7?diO>rn06nM8s$WQb7#Rh!_ANi7+t% z&@I0qhSxpt;4l5se~2pN%~=P3XCTi&3iqyuMw2?UD$(?v@BM+{l~)ey&us~1<^}8ho5=j=3ji` zz9-JE+}<63{OdQq@A10}$9uEpffLK0{Nu}>S(`8kI?VX>cb}AKMV{{*%^hK>%v@97 z{pe$RJGa^Ux{f!lTz}KspD35tL?giY;-V?B_gR0LG`g~KxbJ=UG^=0wcfF7P!hih4&M$xd zrKf-IsnLkH)TV~o;D`>D)_VR-pU$0K94_|!VAx+a9w;X3zHV?k|`M>d@*B3>W+DToqFfo5~cgzb+ z{}IH@#AYcF(w*gIM&6|>ylJQX1IR?ku^#ID<*C@cE+yb%zSTH97)ba@W5 zgaeb<5_=G-XlxrIm`H-O=Vg)hylUz=d85)hH(7UiC30D^^_m()wc`LFacej=;*1c5 zyi2xNX(Lo)XjROjfGBgGIhE^FP1DZS+QvYd_PnMhLYeCXNNHcqAdpJr&cbf&+;KY7 z(syLtc#(*)5+>Pj1XIpDyzkTm1~@}Z7CnOrI0e$ZbF{5B zwbd=!woCUQlC_i>vyitm3hWlUY;cT~<<-629f^(SE&>`OOghxDd-H?+X&WQB4fe#h zzU%J6=u02{^~DFDkfT=*Kl_V&fB2~w=*)@U)6Z?;uKR!E^G{t^U3ts-^~*PIU%Ij7 zielch>%+2Ydu233%3rY%foViJbUQEsZT$B zso%@@=FLK$9aZ6xJJv3}a`W7SXS^?C3?Mtay?y%h^65w3I@`IiaQY(oGFDS!xV#tJ zM%&=>oXZ{=YpkVdvwkUU#pHZh5c9$Hs|%Yab}zk5hH^B#^o1|1o<9lXWT9AG+qry& zyr1muiL^}Iwy|x4<9vB@^WfG&Rc+-(zv!3b${5?h!s`5JyT7=8w7qK-EyipxwAd2N z$PJcPi1XgU;?e$1W>@qEz0q>pR%O0Pkux3Au)Te9wo^2o)zfB1bL zJe6hNcJAD#Uix|($1}(~z`&qhj=W%)b=_pxzuc=B}@=Q{_e zTWedHHd4oQJ$k9u2QvDBwec_i<3IS!mkz&p$gLxFn0o9*Yk?!fL}5&sck5mrSSwDP zTpXR+?5(c3-ePa#MDN_)<>_;NeUlbO$QVs+^<3MiRc%HDVdse*jFK^soTI!XSAalS z4=n4aAG~+}v(}x6-QJSG9Td#Evnu^3a?Z4~djMdUj8;C`v`rF*o!L2bFI4IB>(XnK zX?h<}VwcvjurPexw*e8clC~x$VwYYE5|&+JVCPk0m{;Uog6J}{%e8iJ|8z~1$z`zfTD%mZ+~>(+j=d}N(6*YsE~ zo{sM0GAeaL?T-EXr{*(uJbaIk78Vg>cdR!}#|}$%+|;pZYKsw)azSdHp0-pXzL)RjcD8oldN2EGnEw zSt85HgIsb88ji-gvu)Mf+JL69rbP(pYR_h1p$yyy_sJEYc)XKff&+QN+ur`RM<03J z!w*07(8G_s?%_wCdg_nUmX!d<@J$pkI(zo+y4o+N*IxP3D~mk*)KC5VJO116KKcH? z>YDMZKl>~H>EHd)!z*Y1-RGW!^MTz*zk2z5?m2m8q4>hq^x3U&W_9VY!u{tCno@#jAGjkn)>dQ|4;Mlze%cWo>@e`V{vufOwi-?--Uq7@tD{L1#Y*UOK# z_k39bG@s6^HfEsM%(Jp@B21m%GPae=d^0`DM`vQF$UC%*ntDOQV%F6J$lvO1pRc*20OUax~n&eto#S zv~%@#w&r6aB2{%%XZ^jw;#xI3$}%_XFEm79G7n*#c?rR_?_R z*3aH^`_eO^uIC4Pj>wmz`fvi1`tX3*hq`IU)Be)(#+`Q_+_<)Q@}y%Tmy5LQa}mk& z3{Y}3zjbLcp7hr@YM#Bjzx3t3i8(M3)qdcO@7lX{9T{wY+b6OqKx{FkwbiQ1ioP-c zmeI&*gmcJ^RMFH{WR&t)Y-Fvnng~G+p6I%4w-{uIhG_(Vp2H+U41Isu@s)zK3k0HR^0HUjP$x>M`@;o3quS}7M+%RA0zYa6_{ieVoRv^Cnw=2K}aZ7TTGm3%FV z4r3-q04xTua=r`#iY22JBQ`T8QZY`(Q{P2VnaH|)umiyomrp^S(xFDqnJPOrHFDl0 zvSaP!%0k|&9*=EQ(y^|lOagKQk@=CvNS=vULf|Y&q7Y^Wdb)6=VgyUW8IZ*&+D3~Knl)LNeEDg1m`oTbn~LblV)@)T<)H2N$u@C8w{F;>1kK1BCX>ro!wzJ;o;C? zFtEWg=M!HZ-h+}k-ggL&bo&-LR_GzA~q8-1V2&T|B=zOByQI>I*A|6CVV|KqzWYHr z)```xzIfxwKN6$Nml!Sg#zqDQtn~Zy>72scOm?<*$>1G)5`_w+MmtA6x9M1_TI1a2 za{;T*;5_wu4CW{Zp<^zwzzHB|#ahDlflUpsRJdMaE|@9yTT}w?FjLF~mBIskk7zjE zha*fQ#?h{9wW#OmTj0|B-1i6BF!!5F*|~u~IdFpvFIUzt{hTp1ibOT20cwR2+MMT# z_x9r(E{x7Ua^dtFzh(6;Z(ID<_Z9cv$EyoKjl&z*yP=1-WV|ocOslC$Ocy;OQX}Io zpkk7)Hy&9DSR|@>}^2Dytm{OVi-t`Q+6cPSW}cx)WiVNAOK7h3JrnC zrF@~qRNqHhCYqWFEJ~NqivkU%KnPM#0KhqzNNCg7$vG~1oaf{-Q<6?4LCk)zxR?zG z-2#({U6vI+3knCyeAmcLK$@6dz6{+db-a>vOw7(ZI9OD$Nl+0})lgTdD=V)}x>dD} zaGZef76QS{gwkhW22n~STPE$U_9;(qBBB<%uVX!Lt9cA{ z81J|HyO@qKpJFyem?K6=i`YWiV-9-@36KO&IZnZwd=vec#yA>a$2i{v4od~4s=|C? z)3G%*LF4!^&gL+UM~87fLmMmvscH?uM3PZ9H5ec%w_s%5Qw1g(W2|eP%@74X8fnfe)(8L|!}0TpWkf+8w{rln992oeDZUd*ywcMrB0Hn`^v z_kIg~=%0PpuYKh2{_8Kl{ITah{jNI}KmNk)zw^Csd+ye==g)4u@rg%Yc;(f1UEKKk zt=%7d`$My!&tBhNaJ06NfBMGWq-vIXy{%cZQ|~VKim%*y<;3#v_2<@~ySBSEZ|`4U zn33&CwKH>@3;hQM#jA()eqC=a^j^HV{}#%P3YEYNX+vTpA_hxn2%iyW2Bu;ZkM=mv z*-^c}8>*_$@cmvp8-ijXnCG^*c`h`0Gu|6*EKPO~ zvoddv_Fb=64%ctK_`>q(HOJX>f9vGMHy+%6o_z+Q$@Z3nFg@Hhmcio5d|^mAH?x@` zfT%tkubewSxpjNKci^*(n8;Air=gxNt#5QuJOcxs$qd!bPT6xy_gt`F{~9d__hnX0v^)1$Zz z2JJzbpU7->)0|3 zGb7+NQ+T?nnSe4lm?}}4#V5WW(whN0-%aYtr_{HpsdeXVH?~NpLjsyfpv*VdU-b7s z-q}4uYZB9Y0GJ&Y22u&>;!MQk7~V0PGJzZs%mgk66bfdiXwz-l+QxvCk^`lvoKgzS zNV50B2nt1jYP5(LS~%Bb`^+2@IhQn~+SEyhlB6Z7LPSOi6EK-Yurp0EIUrHlNlYaT zgP?56pl*sqL`lF65%tVu@FdeYMk6&y+hTeMz!f<=PclTI@E*>07xpd)q_7B=ff-;> zDx<~Y!PIM$o0P#9#0YlXMzWsC(Nx;TG#$`tp`{{6Y-3fE&m5DexadIMNTAXcoyA_; zB3LSJMT51JwHBjQ6^#}^z+h+^F_~a*7gt}khaRBSwJaZm)@!M;*71=|XP8uI<_K*% z!@8`H2&gdyB3o0VnrmnL5U8b|DS^nRx0IBmAsCRkt^&~gK@q9|@4-NjZqsaA(2=bLms35a&* z?fIqUjiuW=ZP-{_-k;o{sm+#X&tiI%17BUs_#1 z+}h6yt3&WE-@kry^WugtPG)}Qecv>z4sM;eaF<&=-fjoSLgZ~%=|^c^Jk z{cO6wb?&hTuRZsBqm6UT;kNhL%E=4W!L9~bI(I7X_lYUYW-iO2q#8}MTo{3gea6hG zOqi8}q*7yo1_hhUk5DFEg`CdQtk zS(PTGj5?#dpe$#fF)`Rv=^d1vA~s+qjUX5kMQ`gT$h~COE5ze`fp^#w?9QQrM^5(M z`TEuG`{0|t`sEk@$RKHk8z0 zO&})9eEQdph$LdBU{8#gxQM32%xRINWY$U}%AO^-I6&S(nbuNxEPXDJ+OZ!(De?eB0X|&&yJbs=EEzpZgdK%ptYz zJb^OD%my_-EMNZ8Q!oDdAKbNwTem|~SG|J9uKbxldhzS~N6G1@hJIPDX7t$E6MyjX zjiuZj2EG33?(CJ@o1^m4^`*xadXDhy&UAY+yK8yyzI!&laC7o&U%$ED&kyUkQD)!q zx^uUuJ5Fg5_oG+#?o8jmeD$lF>x)qkLTu_5u_ni02SmzpV&}@f>-C%cT|ZicNHy8Z z7gsY!Cef9{y-Tm?nGJGwc>U%bk34eaE6;@P0%(dt=(RtJZ!ul0OdmaaH)mK-;AKtx{Be0r2;Wz)_=4CQEbf9tAJ9>c_J z$#JHk>5UehI^P?%F}R{PzI8e84Mr#LAd_M^)L570Vt-?Ka`V<;d9}B+Fh3lVXArSt zmt~=;yOFLHO2$AlKIpA3AMNd|tS`=|&7*fL-jIXb@g1Wjw6&F)%_cW*?v;HG)-9)) z%oDLf#Z;(njWX1=77Z1BVoyGE-oro^Dbd1W19-3i(KMp`;86jUAOp5%_{k5y z@hxw?FE7igZYGE0$KP=0FWrCYC;rW6o_Te?HpEVg;SeAH&tLx^-+uq>Xo2R_G{`Pm zVc%p~>tc+90Y8Zd7saoUAq5A|8aKDd)hzx*!&N^!C?|xYuNeG$ma!l zMpao}vTC<1CYOez1cL^o>N}3L(+*%~dExp?)L-TPlFj#wmrpOCaQ7|Ro zcY1`>H(r8y5Sxg`s47GtGihs8^O+BI3RwcFxs>HFRf6kqzCuFqu%=N{i;***@f1E0(*!;P1IB+kEh!!Q0fxblcpD+0Y1K5rf#AJ~K_V2UWc?C_gLW=* zgIZK;qpF$&38JbNMWPx&tQMn@SqPLq6z3s|Uf)h^qCddmVw!o!HgJZvMl**6sE{d0 z(94M#-lHgB(UcK`i6FhXQQB$?n7Z|tOOHW;15_~+HMJNp4{8o727-~9!yDf8reFHy zU;T3*c>gCp`N=mu{$@_X9!2J%02c|{tnAoPxjdUx-}RyQ^zV7}cHp)3#ozqsZ~V2# zE{M`E{_~$O;K%;^zgp(mX1}*JZ~pIRE;GRq#Sll%-_gq<`s9t>PrY*c^EVD8#zoIJ zXYFTh9GxB%-+q2&xnHjL^Ar8y$+NCB2cf7SqMp~DZwFjUQ-?Nkmhar&ciu~kFwwRq zm>HRh)N{(R`PNk~dnN&pd^A!K4Pp7@iNW&8{?bBS&6}!itJXP=ZK!5dTOIkLlpvxy zpBxNVmk+jg7EZ2IQ>){Snq)=BMZc=XOKYdwd5p25oI+4`3^v~%s750q!*F>;s%(CA zYwhG+J;^cD76q zn|Z97)JF6^^WLc;@AUv^2rxT5*eZs@P`CB`h(Rl-Hp&J)R%&~`wh9G)=~Gz!m%hWj>q@B8j| z&ZfMPCmjrM3)W=E=q(84pNxV5QC+r>EyhNz*|blEh3OUjpdxWR*U=Zm=Ya&Q~|#2fm9 z{ttfO?T2-|zF+U}Zx7$`0|_vbm^2cP%}7x+-JgikUd^QI^n)m!p=PFSRDp?T>J0|z zCea}#Sg(mmj37=r4ulqJ7FvW>o4FwwmozQeTvkAhOiVg(Roc_Cb3V_yi9e9g@a!C^ zab6@enZ~Fgnkmw`>%Ez&3Dhjv_RK=lsEKKWnK@?f366-&Q>q;?Lq$SpB!(DTO%BY^ zibN6B7}LkADjlv23Z~f9D#4^h3~EuDAZ;xgkGW~8BF7J&*lAs3OFpZov-E&8RdSxZ z17|)jeQ&@-2ol>C^&Hxwt&iP!atspCZaN=Yv@P1?Fm0g`p*^Os0d0+@27tE3+FEa6 z;2Bm`R!wy_)5Eb%j&wY+>69#xMoLp1RTZ%iVX6>~t;q3HQ^ZV6wbLV}xMbH^^&mr@ z=V#CJi4&A%X4cfxdRB)@Cu7qVv4sT`j`}6{JQt2K4~7vzgQXq8bP5qj+r>Up+%j`8 zP2t?`fz>v4Sj&DTts0q;K?w>(wb^XmG&K`zloOj9-oNIMhj(D_ohQz~EM!4ePi)-! z+E@3R-X~t({@}YFr`~Ya_clKLYSS|LdPwEwftUEa<=e+dnd{+Xj5+;-Da_ z3`<46ROa(GTsxe;ayVOCS-kVa@&a(0mUhCY8iG?-ldI{bFI^;MUbsuY2s)E6?A4wNd2eA9Tb=G~0mjaUrgF|H)cK5v_FlT~dxM3QQ9C~( zw2S99?wR+8N`t|WNX)r|TYH6b18@$`9UOyO_q9$6?BFQqv)Om7_99!myk~EZ! z5)Q$UXJR2Ak&Q5E(WD6^A#=Dk#jpO$5ATc{zp`d|p)thJhA3HP>-TTo`Pk-1{^H|b zKSZr~`AEi-hD_6QhO*o(41I5qt&IjJ7MISgjn181dFaB04}awR-~Xq>JMXqX{^adn z`{~QS^ZWn&=dXNv*Y?#uyA^-qr=O``eI*|5X>2sM>49YAIsmVVX@rV3t*V;$#<{s3 zmCMvybqlMmzhw2ix%rB0d@C>CD{URx=70T}pSx)|k@HV|ac}q<@w zq_Mr2nRZz~L${Jmx6$;MCb0^VIXaC;U>)AmQqY@CVj`d$J5z(p0g8t^M8@nodtc%R zAAeuRxe86(dG=X1rZ82FD#}n5wYGt!2~d=%8YL;5w2dl>KBq9%Sc^u$V$)g_wa%Sw zp48OZ##D?{qgYgkSWKd*nB1yb)h6MXFQ5FWQQN3(6cKHMg$Q!ew6SW^6PJiJq%CFA z@CnE)im9kXi6$`yQaF}2B;MumDG9{Z`Hah)h{P13MT}@_q!_5ij@)a<>QoJAYs3a2 zKms(Pnsq08+hBZ%c?DCHJuEHv`u%>d@KxiQ%1tLcp77o-&1MvZeMZhBLE76OB2ZWq zRkb#XN!KUn@GhECJlzziOY!7j;Ph#%t|xL%2=f@M3EH+gpIZz>N{&!CWR3`3xIYGp zku^esH4Ul?#?Tg&mJS3ujytDPZ5u5FYh$NcPaa+-1;IO9y8NOm+;d-l<}dxFzj*E1 zt18GH9Cg2z_aLw{HRnJG&pmx5E|kOe^UC`3pZeUL1%;F6&Mq$~>8F17r@!mJ`=K7$ zT1F4Q;bGs)RWYfXquTCY99AmVXKm?txy;u4y_x7&ZtRNUk@ZoVW#@W)P{-$Q9{%_b zzU%PH?}?Erk-{?-$}5>)@h;QYjBjPd!mO&;=j=-}ab?dyp&FOjib*ijSkEoAy_Myi zSFU)6rE_O*KJ%PvJ6bz)?U@(OJapgom96pqw(qTlIL&0)Q*7oX&iQ=;KQ>3w;AKgA|C6uG0og7eRSuuR`+a7r3xCa^^y2}E76B2pdc!HabL1xqcOTSxfR|MK36=29Kj zFMqAw+HL2psG&8^sn}fZo!RUSvLE~5*Z=5GJ-yh+Km4)Z{;_}feY@9pm^>8)x0!nH z9QPImuHPrh%E!K)M;TszTI(i`$3@>=c;fz_xUh8N8@CU3s#BZA*>{}hlNXy>p+cNf z#vmpWQwIxX1dXPtGwDz+Qr3s>Q`z%_5pgEl*8>mf;`fkL8s_Xd%NMitQxD&$GH)gpgd87!_E$GP_(R=ZR0S@BwB$2u80%b1cW{iNQr6ivslDZ{^L0CIdfjY0u`hd0_d1Dz(5P1K^d_{6FO!BdQQgk zxz6WSRnj)d3hMP-f5>Go#W)c~%q+&}O;sSG3`A4E@?O;B9IXq*im!_ z!?8RV86yh30|<{keE%z#zW(A%FTU{Niz0vn(kEm9!F~HD%6?-%~? z8^3>h;__^FT3HB{n;>w`cs<6>k)6T?3 zxqY2@sQ>^V07*naRCC1hsJE+D4F&Tk<8iQ=*w#FO&)7xctc5-sXD?#10^rWnnhW2Me*D0~%)2W;V@x{VQMj@`-!zlMwc< z-&j~*si*V#c+y|!A8hT$dNx{Jo9-RuMOn{}iv9q`iqO_UMHNjmX+aiklKB#x!oNaX z%=Zr#Hr6M*yS^x@@qRumV=XRslikB|p)|NWw_>ysD+AA$PTaqLz1ZQCAG)gVEaQP1S|~jq$fXfBDR^Z^?o|(l!eaM(B1$Favq= z8C*u0r~ZKQJjsa6dyWE)Kr~MJgsEW$tBjZ3?5gYrIEQn~y&w6TADl^V{@my5OV`ai zkjwkt4|11#n>KO(&@C-O^uKswE82iyMF+aKy1I|(fe$;2F|Hpl6NjETvl>IxoAL8 zgIW+1RmzQf#0C7o=iYg;x{|$H&C(-$@{I^%GvUJfUP+Xh>4o*-zyFm_j0jp5Zx~cD z1WHm>q~$7@U3Xxn*IK66{HvV;i5Nr{4JI8If?mTEq|qr%BZw)1-H|Th4w86~-lSf5 z<9n?+(h!_?zQ2%gC>ok(a@fx2FmqXEB6(T(qKL`09V2_kjvc$Es?^||V|G%v658a_ zmZoLzRRUnzK*aS_}T(YjwNl?|;geXDP*g5B% zAq68X~Gc`v?eKL@7p1UmLJZI;a9T9h3r;a)7 zx?u|)m$%ZQzuSykH>*zLjFd-ds?NwUn`u>r**qK_GBdjjqR0w%oCaA`4rpnKS6AI= zU|=&bP>MjQ2zBp9s)^9p0WAS2JLj_8_j|rKpy2|%Cw8w{SOHF(=l|n>dpC1iO;EQ) z#*#Q`mb{s$qiX8d!s;33a|;ccnoAbG~AFAFoTGy+p^PO|9wVvi}cYpevB%CBCgph<_NTd}}P~ugtsG~&7TOdWL zrDaj5+^UP+Eg4+ft4P_DA_D5I5|kh!0uckm00B%(64IXj?6ccPo1aa=b9x+3t_V);J&+Laj{MpajW)i*~+l%Mm(I z;n4Uz&%u~ zE;E#|%z;>#4R`@Czyge500JjXO_yQo@?VN6EUt)bfYXRORUOsjthan~Hv634U|1RF z!Ybr=W77^wDKZKjhFdL|UarhxeKS9}Hrw3%{LkF@=J!7QTYvDmpMKLzrh6@DM3dWL z&n_-zhmOJGb0A!Tx{}#cG?UP1Yyi=Wm$27FX5R_{qccF3tTEPMo&jNpHwmnO8b#5H z$-(rLG9W`3z)RfS40chD-A-0RbqNh+gMrC1!ZOBSt$pjid)vXB9O7Sm;mp6eac%8; zzJK%MAL*t8iKK%9Xh0D_AoZB`sp=rAU5W+}4WI=9;0S8qUrJpMu|ZLQXT_{M8P`ez4uL%+*147Q3izQ z8xD~yXjDz0$jC{*D}m1V|bJ@kl)|fGC(5DiKN~W1$UFfvV}im!g_mRRv=}0FGaN z`H8De%&XvoGQ$Ty@PR0ukSa#7xiKmdBm&BOI=SrR;oF9*kKOHGfYfqHWg z+b2$+DvSKTzV$zT_~RdY{Pej&S$ybIcP=lC>c|#g;+sRmG6S?oZH)cQ_MMf;TY&{> z>cdVe^ELz@-*xMCyZ4?d$*p9H0hlmHT`;y!Hb)fDmSq+p7-OYOb$QOd6O=id*NTJ`LhE|gAj(8IR<74` zzSOAB7R_w8EEb#jHuMBUeLDei)%K;LKMIZYzBPL_Ve9f0U+rW|ho@T;U!5rzN3-o+ z7Q453uIw)x!Mp$J&#%1s1t)KM_36hxA;I7Jh94(q=a;r!zYL9cdD$N?*L%Cej8fRzc9zXir%VRS^sT34l$tF`UDrl`njm_?S!vm&dK}x+@ z4GIB)1Bd}*!5XlnZNNMNfN~J^8WfEM5wVC$s08A$Z5R;hWN}~|7<}z5#YgUKf-nr0 zU}KwOP+O$2Jvjs*WYiQPAX4MpXn1jZ_q}gCx%Mj${=^&Rs>Wu8Eu9+<^VP#JJO)&E zqi*B);(6aT)Ei<}XlT*(AdAMvPG(I&M40D@2pW~622mtY1+;31V0wy35KyB|>lk8t z;KeXJO1#SguI%N5z9|aD2mogu{_?FizI+KF%gBoe>sPnhmp}MbbWUU9t0|fEOiTuC z0v1FRAf)uc){bF7R%O3J*;Vw@@s5=h3A+ZVlBOhcf{~??5RkCMolDu;f(R2C(Maf$ zM2Spi@>7m3%MegvKq8Q~i;Ey|jEV@%F@)4Z0&77y&ATNA6_JR~UUAT%cmYGoDjK?> zOEP80$RWfKpS5u_E0JOph5#4(>(d`3-MpNp+1B3=xK_VE7 z27o;ohYqnvV3D#&NKi%Ps9*pMD1cRn2#9di$!nf?;?Yn1{oh?!--uCD6|DAPF%9Tb zmq9Ryv?>DXFFx?l`~L{1Pb@9uZ+_dqeeDl?-v_^X`r)1VuHZbzxBS8{-ErsVRQUFn zz2y3nSI_2kpTL2j>Z#poqw#f!WGoqbc2+MAd&|9IAu|YiSxihOJW<+WJy|c{Q}Gq8x*L7z;qdvO!7HjY4nto2ocREKtMi)eCNP3B~|nOvOjte=14Ye2N+;o%1!zV}m~ zdf?I1_kZ>NNB{m)*f!R*PNQ+QHyWV@L>r^GSuW9|wV;sq`W!h`oWYVJe(_^}I6Qa^ z00@LIkTGZqK}1KQ0!T50MgT#BKm=e=AHl1tf)^#TA01Wz)!1q?(|INHT0;~N;E>#m z$_yc@62=Tdj-C(zbHQb#AAe#0EjKUBr?u>!gX9v5K)J=t*~M{oY>f!W5P>RL*B_N- zu_g9H-+gf9U)`~~l2ehp!O-+aFc?FB2+a&yuj*I;N26>w#A=tf&qF=OSQ%Ag$QrUm zY0A__Y5d=|HL{W~atjr)H%F0or z?-Cc$D|6>IN-g#Ts7h6SWeEWYRY8N_pX1B)-oHh1i2{vj!hpc(_=zdR!I))~|1GDjx154Z}7}|!Likm95 zjfimY;@jYZ2#fbDK!!pH%p$QBVQsxi02W~ePJ2`fEI<~F0hfVs;0#y;$s5idyzhcM zpuhoCps67QXd7u8t|}0TZ7Zz@iQ0N;yoLyfzG~X0jUlqI_aTN5Vo3PRq%q$w|0=Km z5+)(Lc484tT~S0#Y>DLddzMTuVyt<~YfrWfRyE9OnAhL~G+tuV$SSH$&>&EIsT-Kj zwQgZL*S6K9cf|g6CiVJOq5{i(i7! z=>^-^y^Op-8z4k5FS~xsB0*SGPmabHp4l0d;nY8Tc6lv-&(Hkk4L3b^R<#E+OTvSq zREasqJMO(dN8O#*yFNVc@?%@Odxr*P&!8aX&TQ5`N4zliRb(W*da<`#c`y3LSHE~^ z_n9sUrVv$GwMS;bnjTpKXeI7&+?MFZOE3P8A3))zq$GJaB+-6lmpMHTpVnl-frW@aA|eExoe%-+uqKH#=3u24bTc&@hyq%7_J<)f2~y!$)}M zyuY*oWdYWhyl@AOW(N<3jde|jJLf3tQQ3zW{r1jv*Q~zxbLWrR_Qn@n;{|MQXcrGc zY@lt#SJE`nHtK@_VOH4Qka~Sn_R-}?h}NcMFQ82g%r4xm8RUI6Lj{0PX+76w&)3;x z={D)FA*v{U6vm+yc6+R{sJn?3NA zeP3vTr~sN2)JXv&e0H|l>GxPMmBOPWm=sylG1NtoNKw-a8=>O|pfMoQ4eAMHwmZ7@ zcCNNfQQE8kB#GY7_PDJ%aN=cIN|-#`Ej?pQX-t3q;`XY*!E{2s38iA2#b$kR5*gQs*DH-B&wke%FIy` zVln*I|o0NNBs`a||G&b%iW(Zvw%Gx(ZFBK7cYu?!X3s5C!)oE#E-IQyPhPZ+E~X zo9{G&9S2mp*DI=ku{LwID6!Y4q5x}w?0$cOXS>@U`omunR3%^lM2G=IQIrxkN;=O8 zL{$Kt%^`*knn{Ej(E_1DL1YASLj{@w$ti%stmTS@NwG_4ff`9`i2iW&%9nr3!s60Z zCr(~<%?&3{-f-RXZg}AS2VmdvqzX1@Dk+#AuD*j8CNP-W|!E%JIg&HCznB+%K` z4wAGnG#6&xd%#@UZSM{9p0&9hE;iE(k)fIHmZRf&@4#f^nepnC;>9euYFb5Mjy|-$ z_0#@v9D$uBRW?qWN#K^p}?uu*BLz9;E>SXrQXLU3O$) z^?T|6$@)iL}bgsr6(U>z2Zb~ zd0AN6YMz%p1Z?XWxvZ&Y>fpcK`H7#s{k7B-ZEqptpv3&L-_KkdiAor zQDIUB71Xqpl0@H&002foSP`JEHOsYM5LnD^N|BfgO`5S ztAG$f0Ay+BTvZZU5K&TKRYDE{Kv`s;f|w4dE?MZrM^#W$sOF5R0 z>t{OG&|uLkMx$&n0OH=_;q#At_1kZ}ddKq(g$V+zN(y8kGd85rvuXhHXHR1}miZ)+ zt(Y0f2n!mQSOh62gOmb{nu3p#NC4^fPQ=N6o6i0U`$labV}un{kpqYd2p}P4aki^L z)R2T0%o1p7&yorm!<(ABv4VU>o}hSXsByVdgAE2w!SDriii84*_BcAL<&Lq`OF*_Xc@0fFF%{O1yMVIp?-e*)oZA%tk5x?0940hO6Q1FMFU99u|j>}tG;LTz%k)y@}iy30hD7v!g9DU zIe(Fi3Bd!$wodiGBJ0`Ri#y~P#1MjST4xO)kpU1QXE*|2U?0H|2ILrAUT$AHH(Flv z)eJ;bqKJ2Sq28K8#W#Sta)W5*+dG)GS=Lt#yPLa2lX9>c+KP~x%1?KnDSIx@Mv7ug zFE2ycJ2c%ryLk9SHEpA``EcRLO*i+KSF>Rs$%#Y&(_32DIe*6Gy{y**h|zmjX7AMf=RR?vnRvMRxSff51J9N&$bdEA z3=o2IK#JBT*c2GT+z}910Z}ksu?1;0)*35?O3_2H4PSo5fBdQDf1Hci;_&uY-|X8q zOtz>f+=0u?c$xP$!{!CF7BR87jp>c4H-tFn?LDj78x3Gy{ls5AbK6RD@?|d-Q^l`^j&A<&XXByN)>;5K8AFg51%?n)?fbjlFv4sEPWz8xE8QN5!!h zG^ZX-hj$>C;IX3WXy&1rOJtE~jU(&Gl685izjE}k@gm9`nK`LA*auKSYeG{iq6iC%a%5)F zj$fA=0i{n1lDx zC&Vxd#}w#P(crxyR25Z0fOH3d7=VRxOU9}qY_6AOLB<+qY?iw$BV*86L?Y*a3>bv0 z0GD;>U<7bEXaqtqHW_iXt{{Y1&%=Bgb|&q7&c0|6Dq^R=SmbKF-~-h4QmcZzi5xWPWUGc4Dc= z-j92QCRMyeRhx_SjV%Z>16Bdis#BwAEOLOALzl(2E=J4TG!mi@4U$vl-HT`2X5Lnl ztn9ZW>D#ZV{Z1o>YjOZ=2cPW;Pt6&7+sRS7do#O;PP$BD7_HxhPBHYz#57H<_E9 zTkkE5tm%o6agYrZZ9xS!^KAY6mlqFQ&CIcC4MB7^bLHN~h2iRK0!4aTBX`z*l;gMU70Luf-dr*$$>T7iE3fC*4$c=MggN7-{OzR1p`I7(A zDXAiCL`WH|e|UT|BLSPc@t76dcs15j-aHS2Xc3K7Q31t_fCENGWmcF*e*5iLo}WDW z+TZx<+wObkum07${q`B2?1+M}PbbafjMlW*)BpyQQEXW zo6nmo4_|enZ-)zm-oaz}jj!MR{9kMLG>8@>GbV@HpnyO2kAA z+Kn(0D>pQrtWydKoK|6yE(NU2OoV_0A*2gN=fOf?6+;v~6N0fuMWXk{7z2U=90U8v zkvqGS2qf*0p^ig94h(k0#Z19E2tL`Vz**xg1DLi^AKSX(7&{hx@G_rkRfQ%95|#xK znar9brzJzyp|ywxtwCeKM~DQ82txoJxF3O1x4Xl|r9`6&Lu3je&MTMqU^>O|vId^6 zU--)xzU+Hn@~W4-?DZe}=zGy95vl+=kn|ZOi2Ki8NL}U#8~_2;fGR`E1 z9@GJ-LTv#_!6hahASzif2&g~^Ekou&1p3PhFL}u;iek94J^l2ZcU{`t@i8^A)LF1< zgj57EvP@>X-}k z`B2!ScHmZnFc>a?ib@a_vPPLhGk1Bf+1quNtQ!QC$;MW1kQ3$YY%lu86;-it1jKKh zIkkHHSZL9fz2;nym8jZq@cq%Snr&u7Fp%zjxk7B~y}@`b%y(IU#VZiHJo>ii7t_g3 zJG;oyH(N8)oB6sFucqh9;Yz*Nl;vVwPZka?)O#>qTdHRm!`#ux#xhVYKh z{Nsl|^^dolyz=GGyV4fD8sykMF2i_C(8(60$7A;4W7Xnec+*x zX-FN2q!%#Q$(Y)XTL~FKR2UmLzZ!8e*Mlfx4-WLFMi2Qt#8vaCVAaebf2Ih-{_AdrZojH4gxEM zFr7`le##$x85}&}oc5fU%u<$_vT#K%BBQlKTc=N-EDp}2oGeUa4FU>E0BFtWI{fla zeBbN-!%qt4)14hc_wX~1-Sft8afc7~FFV1mO`9`96hS3HMMO{{RY5SRNs@*Yz=@=; z$qWJrnD+jxs>#$KU7R8+rV@j6C`OQ|3TQz@>n9&FMJW;_L}N)MByO-Gf&yh{pBw-H zAOJ~3K~xJDSx&~N#MGY>_QKIn4iEt$;UU2o2qDpVH3kLY5JWio5JEs!(a4d7gQ^0M z0Bh`g6~ci-Y}-(`ttx;)=km}tfQpF7U072h6QwpBf^vqLicvsF_XJgmVw@2r?Z9Cy ztiBSm5J54TXb@SDFo@VJV+{~9gM`2uJhu&duaQ9%SRnsj_LaaM7{D0t0h$_!AO?s6 zq|i26RVK^9I2E<52Cc*>z)S|p5@WPY&66o#iXKohr&(sR+?Kg5GGi@fg%Lx>g2_-L zM$+_RLR2J8%#f}InA)q!jLQgCi+-%?e60tRef?K|=|lhRk1n0xdfjE058v`b-*wxK zpZwcDQG+e0Qo8x6DumD>s|8ilM3lQ4EHOwDoTQ5a2wRK+qDndrM25nEMU4z(#G155 z0s{~tWCj?K47~D{ue|H7yPr9=zP57U72op85B~XwQ}31tLI9ftDhN?5?CxGX^qtSQ z*WCD;7k%@w6X(a9;HPX~+M_cf98Cp~HXkH-B@}TJO?iUL$?x-EXcpwk}@W zzT=;se(>C86+>a%*Dh=r#IH|kBrxQ5z4RSf#j6f1g4U@5PR0-_s!IW-bj7o1j3sTP zGzNW*<7GgKzBM)%WmRO~09sd4J8P<{QI248muKy4Hy^Cl(+dPc%5k`QY;SWTA1sGv z)*Fv}HLa$5d2hj2lPvEcE9H5j=J>j;c6O&5XO@mUr>$#i2^_k@we4QsUu$ODfG%>I zjYoC0ULv%u(YOQAgtj)>Kvl_DR}cr-+rH2r8zArv8aMZiM?7D^vE$GC)+0B(V6uK; zw05waPZp0HTYvJ2g(JuOyq;V#C)3UKZj75e0H{F$t=|8{ z(~mv=OrLNS%}>9$5Q7crj*17F30Dk^3CRPk2WbHr_9}=TA^X zWv080*0mk<*XRDXfAHk@KeX|V_k8BAZ@Y!lgCMAiK)MkpNm2-Ejj93}RD(rMWP)$2 zQ)hM`zsPGhW;eenFAybSZf%y?+?hOAL#8ZN4qyH=uYbe){{G&pavBmflJuh5v*vsi zP97Tne;@mu-rC`&=B#JKysc;RM}F-;T=Sx97q5FhjFu@Iq`j(iA4cqQ;wkLN(Kz>w zNsEH+v%|W7YbZVB6ZH&~(YSP{7v8V4Dv*E(lQSyd7FUk^_-_MMnaeaeh7v-m@##I6 z4BM_8bg*L4bdXfx1PcRJF$yuNMCl%^%07s&uj|;x7+KgOC^K_nghA}~86v__y!a67 zs*WKdB7o({h7f>}EQm@7k;NKno0gnKQAJEY>Zv~|3haZbDmvw$sKA282*)7ey7nZd ziI#Dej15iW^1{!j2xttkYHZus)Eq;HqU?gF2xP!F-I9X{+BrJnCa40ULyfhqjR!LKF<>StzCQ?M`^@_!j8}!LJV_GzZj3a~T z-7MWu!>EcX3X7;{s`8>$rv7-1*!<}ae&0QJ{?h>9TdzI2B7+xx=r8o98~SZ+EP0W1 zVqjJxj0}l_CIHNU3f@ETU>sNjAixo=>kf0mpql((ssMyQ2w+e^GYhO}4FGC)GQ*CW z85lU?`3vhRaQ58#^L?sHXSJy%sH7VSIV`*Ux4>+e2#af=K( zYsWqNoN;k>){2569Uc@bP#J4AvT-J90W1vOR7&N{L zKvkFyrqfHkVJ|TRL%_D4gURy(cGfrZeqIy@hRX+S?$#fB@W6>{Cl}5v9JzA3y{#Nw zUS4|Q>qoA=zO80S@f>`UHJfdq-j2R`k?AOGgtZv3`aPbbsZiph%kg^eKj z)9?Cs2d`ROzW%wRlQ*idlv{G8MvtNi*51`sP?Uj8YTHAS+ocp;8gMEol9QM!0Dy)- zLD6c*NJ-)Ngrz}HMIse-O9zkr)O%DTAek(SO=J6j#)f*Xgt~8-Ln51H-N`*UT~i9P z`yX=Jv?#OsAO=)~qmSMzbBt~DiH8L$orEYQ{6s`Tj4}GiKE$^6QN$36szGI=u>otN z0wRGU@=XwhST#h1#)yE;RAL8?QC3zptZBxsD#oAy#5RN$oFxW8QB@&tin55tfHp#8 z(?&v6nSE7h3;^6QR#JT_f!*5%5WzPv+40Yuo?bXpH?0lP4j0V9)vPRx5{Cd$B!-0f zLX8?VgQ&)xakzyFV4xW6p&@zUt#(cqx#$gS-uLZ{()1ny z6bLmj@>32WMgRemTvbV7ODRGFA`thvPoxkOEU2*%MIE97SksXaSU{+gK;b^nVQKN; zGtXRHT0PhX^q~WWr_rH}B1#dg=A~x2#CH2nzwgKHIx~OAe|}SZ>hbqJ@@akgtjXMW z-gM2Yf9OZv|DHcMc5wJBfA&kwUwyc^>Z&Ubj~;m3mlOHdKlJl|{=T38pQheTCdue9~{(t(4% zRcD8LdpkvcFx}bhjmOjNEkjWOB>L(4UNIU<3+$TM)@?m=t}uD#`eh7Z@BD>wJUaLA z14plW{(O6fB@9;%MqjHSD4>%&|L`3Nh6)5M01W78JQ@&X7tgIL0vWA|6^TK_U@O81 zWYj@7PbID{qd+f^o_q=|zw5shKB@iNwdN$7}GbS%M z`h~UC%`>N8blENECe;;%VO378d4SB徝{g%IZ~fP%sVCc8)(yF;>)ptkXU_iN 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