From a9ee497e335303d4c8bd289dc15399032ba74aa8 Mon Sep 17 00:00:00 2001 From: Yuval Tassa Date: Sun, 15 Oct 2023 07:39:20 -0700 Subject: [PATCH 01/26] Add spaces around comparison operators. PiperOrigin-RevId: 573620198 Change-Id: Icf295cc0dd381a4a7f0e2c94f2e12b499193e862 --- src/engine/engine_collision_convex.c | 38 +-- src/engine/engine_collision_driver.c | 344 +++++++++++------------ src/engine/engine_collision_primitive.c | 10 +- src/engine/engine_collision_sdf.c | 354 ++++++++++++------------ src/engine/engine_core_constraint.c | 68 ++--- src/engine/engine_core_smooth.c | 50 ++-- src/engine/engine_derivative.c | 4 +- src/engine/engine_forward.c | 4 +- src/engine/engine_io.c | 69 +++-- src/engine/engine_passive.c | 4 +- src/engine/engine_print.c | 4 +- src/engine/engine_ray.c | 50 ++-- src/engine/engine_sensor.c | 32 +-- src/engine/engine_setconst.c | 20 +- src/engine/engine_support.c | 96 +++---- src/engine/engine_util_container.c | 6 +- src/engine/engine_util_misc.c | 2 +- src/engine/engine_util_sparse.c | 54 ++-- src/engine/engine_vis_init.c | 16 +- src/engine/engine_vis_interact.c | 12 +- src/engine/engine_vis_visualize.c | 100 +++---- 21 files changed, 670 insertions(+), 667 deletions(-) diff --git a/src/engine/engine_collision_convex.c b/src/engine/engine_collision_convex.c index 158d2eea..1f526af6 100644 --- a/src/engine/engine_collision_convex.c +++ b/src/engine/engine_collision_convex.c @@ -39,12 +39,12 @@ void mjccd_center(const void *obj, ccd_vec3_t *center) { int v = ccd->vert; // return geom position - if (g>=0) { + if (g >= 0) { mju_copy3(center->v, ccd->data->geom_xpos + 3*g); } // return flex element position - else if (e>=0) { + else if (e >= 0) { mju_copy3(center->v, ccd->data->flexelem_aabb + 6*(ccd->model->flex_elemadr[f]+e)); } @@ -64,14 +64,14 @@ void mjccd_support(const void *obj, const ccd_vec3_t *_dir, ccd_vec3_t *vec) { int g = ccd->geom; //-------------------------- flex element or vertex ----------------------------- - if (g<0) { + if (g < 0) { int f = ccd->flex; int dim = m->flex_dim[f]; mjtNum *res = vec->v; const mjtNum *dir = _dir->v; // flex element - if (ccd->elem>=0) { + if (ccd->elem >= 0) { int e = ccd->elem; const int* edata = m->flex_elem + m->flex_elemdataadr[f] + e*(dim+1); const mjtNum* vert = d->flexvert_xpos + 3*m->flex_vertadr[f]; @@ -79,11 +79,11 @@ void mjccd_support(const void *obj, const ccd_vec3_t *_dir, ccd_vec3_t *vec) { // find element vertex with largest projection along dir mju_copy3(res, vert+3*edata[0]); mjtNum best = mju_dot3(res, dir); - for (int i=1; i<=dim; i++) { + for (int i=1; i <= dim; i++) { mjtNum dot = mju_dot3(vert+3*edata[i], dir); // better vertex found: assign - if (dot>best) { + if (dot > best) { best = dot; mju_copy3(res, vert+3*edata[i]); } @@ -285,7 +285,7 @@ static int mjc_MPRIteration(mjtCCD* obj1, mjtCCD* obj2, const ccd_t* ccd, mju_zero3(con->frame+3); // both geoms: fix contact frame normal - if (obj1->geom>=0 && obj2->geom>=0) { + if (obj1->geom >= 0 && obj2->geom >= 0) { mjc_fixNormal(m, d, con, obj1->geom, obj2->geom); } @@ -1130,7 +1130,7 @@ int mjc_HFieldElem(const mjModel* m, const mjData* d, mjContact* con, int dim = m->flex_dim[f]; const int* edata = m->flex_elem + m->flex_elemdataadr[f] + e*(dim+1); mjtNum* evert[4] = {NULL, NULL, NULL, NULL}; - for (int i=0; i<=dim; i++) { + for (int i=0; i <= dim; i++) { evert[i] = d->flexvert_xpos + 3*(m->flex_vertadr[f] + edata[i]); } mjtNum* ecenter = d->flexelem_aabb + 6*(m->flex_elemadr[f]+e); @@ -1145,7 +1145,7 @@ int mjc_HFieldElem(const mjModel* m, const mjData* d, mjContact* con, // save elem vertices, transform to hfield frame mjtNum savevert[4][3]; - for (int i=0; i<=dim; i++) { + for (int i=0; i <= dim; i++) { mju_copy3(savevert[i], evert[i]); mju_sub3(vec, evert[i], hpos); mju_mulMatTVec(evert[i], hmat, vec, 3, 3); @@ -1161,7 +1161,7 @@ int mjc_HFieldElem(const mjModel* m, const mjData* d, mjContact* con, xmin = xmax = evert[0][0]; ymin = ymax = evert[0][1]; zmin = zmax = evert[0][2]; - for (int i=1; i<=dim; i++) { + for (int i=1; i <= dim; i++) { xmin = mju_min(xmin, evert[i][0]); xmax = mju_max(xmax, evert[i][0]); ymin = mju_min(ymin, evert[i][1]); @@ -1175,7 +1175,7 @@ int mjc_HFieldElem(const mjModel* m, const mjData* d, mjContact* con, (ymin-margin > hsize[1]) || (ymax+margin < -hsize[1]) || (zmin-margin > hsize[2]) || (zmax+margin < -hsize[3])) { // restore vertices and center - for (int i=0; i<=dim; i++) { + for (int i=0; i <= dim; i++) { mju_copy3(evert[i], savevert[i]); } mju_copy3(ecenter, savecenter); @@ -1217,23 +1217,23 @@ int mjc_HFieldElem(const mjModel* m, const mjData* d, mjContact* con, // process all prisms in sub-grid cnt = 0; - for (int r=rmin; r2) { + if (nvert > 2) { // prism height test - if (prism.v[3][2]=mjMAXCONPAIR) { + if (cnt >= mjMAXCONPAIR) { r = rmax+1; c = cmax+1; k = 3; @@ -1258,7 +1258,7 @@ int mjc_HFieldElem(const mjModel* m, const mjData* d, mjContact* con, } // restore elem vertices and center - for (int i=0; i<=dim; i++) { + for (int i=0; i <= dim; i++) { mju_copy3(evert[i], savevert[i]); } mju_copy3(ecenter, savecenter); diff --git a/src/engine/engine_collision_driver.c b/src/engine/engine_collision_driver.c index b6cf04af..5726e2b7 100644 --- a/src/engine/engine_collision_driver.c +++ b/src/engine/engine_collision_driver.c @@ -61,7 +61,7 @@ static inline void resetArena(mjData* d) { #ifdef ADDRESS_SANITIZER if (!d->threadpool) { ASAN_POISON_MEMORY_REGION( - (char*)d->arena + d->parena, d->narena - d->pstack - d->parena); + (char*)d->arena + d->parena, d->narena - d->pstack - d->parena); } #endif } @@ -145,19 +145,19 @@ static int filterSphere(const mjtNum pos1[3], const mjtNum pos2[3], mjtNum bound // filter contact based on bounding sphere test static int mj_filterSphere(const mjModel* m, mjData* d, int g1, int g2, mjtNum margin) { // neither geom is a plane - if (m->geom_rbound[g1]>0 && m->geom_rbound[g2]>0) { + if (m->geom_rbound[g1] > 0 && m->geom_rbound[g2] > 0) { return filterSphere(d->geom_xpos + 3*g1, d->geom_xpos + 3*g2, m->geom_rbound[g1] + m->geom_rbound[g2] + margin); } // one geom is a plane - if (m->geom_type[g1]==mjGEOM_PLANE && m->geom_rbound[g2]>0 + if (m->geom_type[g1] == mjGEOM_PLANE && m->geom_rbound[g2] > 0 && planeGeomDist(m, d, g1, g2) > margin + m->geom_rbound[g2]) { - return 1; + return 1; } - if (m->geom_type[g2]==mjGEOM_PLANE && m->geom_rbound[g1]>0 + if (m->geom_type[g2] == mjGEOM_PLANE && m->geom_rbound[g1] > 0 && planeGeomDist(m, d, g2, g1) > margin + m->geom_rbound[g1]) { - return 1; + return 1; } return 0; } @@ -186,7 +186,7 @@ static int filterBodyPair(int weldbody1, int weldparent1, int weldbody2, // return 1 if bodyflex can collide, 0 otherwise static int canCollide(const mjModel* m, int bf) { - if (bfnbody) { + if (bf < m->nbody) { return (m->body_contype[bf] || m->body_conaffinity[bf]); } else { int f = bf - m->nbody; @@ -199,10 +199,10 @@ static int canCollide(const mjModel* m, int bf) { // return 1 if two bodyflexes can collide, 0 otherwise static int canCollide2(const mjModel* m, int bf1, int bf2) { int nbody = m->nbody; - int contype1 = (bf1body_contype[bf1] : m->flex_contype[bf1-nbody]; - int conaffinity1 = (bf1body_conaffinity[bf1] : m->flex_conaffinity[bf1-nbody]; - int contype2 = (bf2body_contype[bf2] : m->flex_contype[bf2-nbody]; - int conaffinity2 = (bf2body_conaffinity[bf2] : m->flex_conaffinity[bf2-nbody]; + int contype1 = (bf1 < nbody) ? m->body_contype[bf1] : m->flex_contype[bf1-nbody]; + int conaffinity1 = (bf1 < nbody) ? m->body_conaffinity[bf1] : m->flex_conaffinity[bf1-nbody]; + int contype2 = (bf2 < nbody) ? m->body_contype[bf2] : m->flex_contype[bf2-nbody]; + int conaffinity2 = (bf2 < nbody) ? m->body_conaffinity[bf2] : m->flex_conaffinity[bf2-nbody]; // opposite of bitmask filter return (!filterBitmask(contype1, conaffinity1, contype2, conaffinity2)); @@ -212,7 +212,7 @@ static int canCollide2(const mjModel* m, int bf1, int bf2) { // return 1 if element is active, 0 otherwise int mj_isElemActive(const mjModel* m, int f, int e) { - if (m->flex_dim[f]<3) { + if (m->flex_dim[f] < 3) { return 1; } else { return (m->flex_elemlayer[m->flex_elemadr[f]+e] < m->flex_activelayers[f]); @@ -226,19 +226,19 @@ int mj_isElemActive(const mjModel* m, int f, int e) { // compare contact pairs by their geom/elem/vert IDs quicksortfunc(contactcompare, context, el1, el2) { const mjModel* m = (const mjModel*) context; - mjContact* con1 = (mjContact*)el1; - mjContact* con2 = (mjContact*)el2; + mjContact* c1 = (mjContact*)el1; + mjContact* c2 = (mjContact*)el2; // get colliding object ids - int con1_obj1 = con1->geom[0]>=0 ? con1->geom[0] : (con1->elem[0]>=0 ? con1->elem[0] : con1->vert[0]); - int con1_obj2 = con1->geom[1]>=0 ? con1->geom[1] : (con1->elem[1]>=0 ? con1->elem[1] : con1->vert[1]); - int con2_obj1 = con2->geom[0]>=0 ? con2->geom[0] : (con2->elem[0]>=0 ? con2->elem[0] : con2->vert[0]); - int con2_obj2 = con2->geom[1]>=0 ? con2->geom[1] : (con2->elem[1]>=0 ? con2->elem[1] : con2->vert[1]); + int con1_obj1 = c1->geom[0] >= 0 ? c1->geom[0] : (c1->elem[0] >= 0 ? c1->elem[0] : c1->vert[0]); + int con1_obj2 = c1->geom[1] >= 0 ? c1->geom[1] : (c1->elem[1] >= 0 ? c1->elem[1] : c1->vert[1]); + int con2_obj1 = c2->geom[0] >= 0 ? c2->geom[0] : (c2->elem[0] >= 0 ? c2->elem[0] : c2->vert[0]); + int con2_obj2 = c2->geom[1] >= 0 ? c2->geom[1] : (c2->elem[1] >= 0 ? c2->elem[1] : c2->vert[1]); // for geom:geom, reproduce the order of contacts without mj_collideTree // normally sorted by (g1, g2), but in mj_collideGeoms, g1 and g2 are swapped based on geom_type // here we undo this swapping for the purpose of sorting - needs to be done for each mjContact - if (con1->geom[0]>=0 && con1->geom[1] && con2->geom[0]>=0 && con2->geom[1]) { + if (c1->geom[0] >= 0 && c1->geom[1] && c2->geom[0] >= 0 && c2->geom[1]) { if (m->geom_type[con1_obj1] > m->geom_type[con1_obj2]) { int tmp = con1_obj1; con1_obj1 = con1_obj2; @@ -298,7 +298,7 @@ void mj_collision(const mjModel* m, mjData* d) { // process bodyflex pairs returned by broadphase, merge with predefined geom pairs int pairadr = 0; - for (int i=0; i>16) & 0xFFFF; int bf2 = broadphasepair[i] & 0xFFFF; @@ -317,8 +317,8 @@ void mj_collision(const mjModel* m, mjData* d) { int startadr = pairadr; if (npair) { // test all predefined pairs for which pair_signature<=signature - while (pairadrpair_signature[pairadr]<=signature) { - if (m->pair_signature[pairadr]==signature) { + while (pairadr < npair && m->pair_signature[pairadr] <= signature) { + if (m->pair_signature[pairadr] == signature) { merged = 1; } mj_collideGeoms(m, d, pairadr++, -1); @@ -334,30 +334,31 @@ void mj_collision(const mjModel* m, mjData* d) { int exadr = 0; if (nexclude) { // advance exadr while exclude_signature < signature - while (exadrexclude_signature[exadr]exclude_signature[exadr] < signature) { exadr++; } // skip this bodyflex pair if its signature is found in exclude array - if (exadrexclude_signature[exadr]==signature) { + if (exadr < nexclude && m->exclude_signature[exadr] == signature) { continue; } } // get bodyflex info - int isbody1 = (bf1body_bvhadr[bf1] : m->flex_bvhadr[bf1-nbody]); int bvh2 = (isbody2 ? m->body_bvhadr[bf2] : m->flex_bvhadr[bf2-nbody]); + int geomadr1 = (isbody1 ? m->body_geomadr[bf1] : -1); + int geomadr2 = (isbody2 ? m->body_geomadr[bf2] : -1); // process bodyflex pair: two single-geom bodies - if (isbody1 && isbody2 && m->body_geomnum[bf1]==1 && m->body_geomnum[bf2]==1) { - mj_collideGeomPair(m, d, m->body_geomadr[bf1], m->body_geomadr[bf2], - merged, startadr, pairadr); + if (isbody1 && isbody2 && m->body_geomnum[bf1] == 1 && m->body_geomnum[bf2] == 1) { + mj_collideGeomPair(m, d, geomadr1, geomadr2, merged, startadr, pairadr); } // process bodyflex pair: midphase - else if (!mjDISABLED(mjDSBL_MIDPHASE) && bvh1>=0 && bvh2>=0) { + else if (!mjDISABLED(mjDSBL_MIDPHASE) && bvh1 >= 0 && bvh2 >= 0) { int ncon_before = d->ncon; mj_collideTree(m, d, bf1, bf2, merged, startadr, pairadr); int ncon_after = d->ncon; @@ -369,13 +370,13 @@ void mj_collision(const mjModel* m, mjData* d) { // process bodyflex pair: all-to-all else { - int geomadr_end1 = m->body_geomadr[bf1] + m->body_geomnum[bf1]; - int geomadr_end2 = m->body_geomadr[bf2] + m->body_geomnum[bf2]; + int geomadr_end1 = geomadr1 + m->body_geomnum[bf1]; + int geomadr_end2 = geomadr2 + m->body_geomnum[bf2]; // body : body if (isbody1 && isbody2) { - for (int g1=m->body_geomadr[bf1]; g1body_geomadr[bf2]; g2body_geomadr[bf1]; gbody_geomadr[bf1]; g < geomadr_end1; g++) { // bitmask filtering at the geom-flex level if (filterBitmask(m->geom_contype[g], m->geom_conaffinity[g], m->flex_contype[f], m->flex_conaffinity[f])) { @@ -394,13 +395,14 @@ void mj_collision(const mjModel* m, mjData* d) { } // plane special processing - if (m->geom_type[g]==mjGEOM_PLANE) { + if (m->geom_type[g] == mjGEOM_PLANE) { mj_collidePlaneFlex(m, d, g, f); continue; } // collide geom with flex elements - for (int e=0; eflex_elemnum[f]; e++) { + int elemnum = m->flex_elemnum[f]; + for (int e=0; e < elemnum; e++) { mj_collideGeomElem(m, d, g, f, e); } } @@ -412,8 +414,8 @@ void mj_collision(const mjModel* m, mjData* d) { int f2 = bf2 - nbody; // collide elements of two flexes - for (int e1=0; e1flex_elemnum[f1]; e1++) { - for (int e2=0; e2flex_elemnum[f2]; e2++) { + for (int e1=0; e1 < m->flex_elemnum[f1]; e1++) { + for (int e2=0; e2 < m->flex_elemnum[f2]; e2++) { mj_collideElems(m, d, f1, e1, f2, e2); } } @@ -423,13 +425,13 @@ void mj_collision(const mjModel* m, mjData* d) { // finish merging predefined geom pairs if (npair) { - while (pairadrnflex; f++) { + for (int f=0; f < m->nflex; f++) { if (!m->flex_rigid[f] && (m->flex_contype[f] & m->flex_conaffinity[f])) { // internal collisions if (m->flex_internal[f]) { @@ -437,14 +439,14 @@ void mj_collision(const mjModel* m, mjData* d) { } // active element collisions - if (m->flex_selfcollide[f]!=mjFLEXSELF_NONE) { + if (m->flex_selfcollide[f] != mjFLEXSELF_NONE) { // element-element: midphase if (!mjDISABLED(mjDSBL_MIDPHASE) && - m->flex_selfcollide[f]!=mjFLEXSELF_NARROW && - m->flex_bvhadr[f]>=0) { + m->flex_selfcollide[f] != mjFLEXSELF_NARROW && + m->flex_bvhadr[f] >= 0) { // select midphase mode - if (m->flex_selfcollide[f]==mjFLEXSELF_BVH || - (m->flex_selfcollide[f]==mjFLEXSELF_AUTO && m->flex_dim[f]==3)) { + if (m->flex_selfcollide[f] == mjFLEXSELF_BVH || + (m->flex_selfcollide[f] == mjFLEXSELF_AUTO && m->flex_dim[f] == 3)) { mj_collideTree(m, d, nbody+f, nbody+f, 0, 0, 0); } else { mj_collideFlexSAP(m, d, f); @@ -454,9 +456,9 @@ void mj_collision(const mjModel* m, mjData* d) { // element-element: direct else { int flex_elemnum = m->flex_elemnum[f]; - for (int e1=0; e1body_weldid[bf1]==0) { - for (int i=m->body_geomadr[bf1]; ibody_geomadr[bf1]+m->body_geomnum[bf1]; i++) { - if (m->geom_type[i]==mjGEOM_PLANE) { + if (isbody1 && !isbody2 && m->body_weldid[bf1] == 0) { + for (int i=m->body_geomadr[bf1]; i < m->body_geomadr[bf1]+m->body_geomnum[bf1]; i++) { + if (m->geom_type[i] == mjGEOM_PLANE) { mj_collidePlaneFlex(m, d, i, f2); } } @@ -683,18 +685,18 @@ void mj_collideTree(const mjModel* m, mjData* d, int bf1, int bf2, nstack--; int node1 = stack[nstack].node1; int node2 = stack[nstack].node2; - mjtByte isleaf1 = (child1[2*node1]<0) && (child1[2*node1+1]<0); - mjtByte isleaf2 = (child2[2*node2]<0) && (child2[2*node2+1]<0); + mjtByte isleaf1 = (child1[2*node1] < 0) && (child1[2*node1+1] < 0); + mjtByte isleaf2 = (child2[2*node2] < 0) && (child2[2*node2+1] < 0); int nodeid1 = m->bvh_nodeid[bvhadr1 + node1]; int nodeid2 = m->bvh_nodeid[bvhadr2 + node2]; // SHOULD NOT OCCUR - if ((isleaf1 && nodeid1<0) || (isleaf2 && nodeid2<0)) { + if ((isleaf1 && nodeid1 < 0) || (isleaf2 && nodeid2 < 0)) { mju_error("BVH leaf has invalid node id"); } // self-collision: avoid repeated pairs - if (bf1==bf2 && node1>node2) { + if (bf1 == bf2 && node1 > node2) { continue; } @@ -702,8 +704,8 @@ void mj_collideTree(const mjModel* m, mjData* d, int bf1, int bf2, if (isbody1 && isbody2) { // both are leaves if (isleaf1 && isleaf2) { - mjtNum margin = mj_assignMargin(m, - mju_max(m->geom_margin[nodeid1], m->geom_margin[nodeid2])); + mjtNum maxmargin = mju_max(m->geom_margin[nodeid1], m->geom_margin[nodeid2]); + mjtNum margin = mj_assignMargin(m, maxmargin); if (!mj_filterSphere(m, d, nodeid1, nodeid2, margin)) { if (mj_collideOBB(m->geom_aabb + 6*nodeid1, m->geom_aabb + 6*nodeid2, @@ -719,8 +721,8 @@ void mj_collideTree(const mjModel* m, mjData* d, int bf1, int bf2, } // if no intersection at intermediate levels, stop - mjtNum margin = mj_assignMargin(m, - mju_max(m->body_margin[bf1], m->body_margin[bf2])); + mjtNum maxmargin = mju_max(m->body_margin[bf1], m->body_margin[bf2]); + mjtNum margin = mj_assignMargin(m, maxmargin); if (!mj_collideOBB(bvh1 + 6*node1, bvh2 + 6*node2, d->xipos + 3*bf1, d->ximat + 9*bf1, d->xipos + 3*bf2, d->ximat + 9*bf2, @@ -733,8 +735,8 @@ void mj_collideTree(const mjModel* m, mjData* d, int bf1, int bf2, else if (isbody1 && !isbody2) { // both are leaves if (isleaf1 && isleaf2) { - mjtNum margin = mj_assignMargin(m, - mju_max(m->geom_margin[nodeid1], m->flex_margin[f2])); + mjtNum maxmargin = mju_max(m->geom_margin[nodeid1], m->flex_margin[f2]); + mjtNum margin = mj_assignMargin(m, maxmargin); if (!filterBitmask(m->geom_contype[nodeid1], m->geom_conaffinity[nodeid1], m->flex_contype[f2], m->flex_conaffinity[f2]) && @@ -745,7 +747,7 @@ void mj_collideTree(const mjModel* m, mjData* d, int bf1, int bf2, NULL, NULL, margin, NULL, NULL, &initialize)) { // collide unless geom is plane (plane:flex handled separately) - if (m->geom_type[nodeid1]!=mjGEOM_PLANE) { + if (m->geom_type[nodeid1] != mjGEOM_PLANE) { mj_collideGeomElem(m, d, nodeid1, f2, nodeid2); } d->bvh_active[node1 + bvhadr1] = 1; @@ -756,12 +758,12 @@ void mj_collideTree(const mjModel* m, mjData* d, int bf1, int bf2, } // if no intersection at intermediate levels, stop - mjtNum margin = mj_assignMargin(m, - mju_max(m->body_margin[bf1], m->flex_margin[f2])); + mjtNum maxmargin = mju_max(m->body_margin[bf1], m->flex_margin[f2]); + mjtNum margin = mj_assignMargin(m, maxmargin); if (!mj_collideOBB(bvh1 + 6*node1, bvh2 + 6*node2, - d->xipos + 3*bf1, d->ximat + 9*bf1, - NULL, NULL, - margin, product, offset, &initialize)) { + d->xipos + 3*bf1, d->ximat + 9*bf1, + NULL, NULL, + margin, product, offset, &initialize)) { continue; } } @@ -783,8 +785,8 @@ void mj_collideTree(const mjModel* m, mjData* d, int bf1, int bf2, } // if no intersection at intermediate levels, stop - mjtNum margin = mj_assignMargin(m, - mju_max(m->flex_margin[f1], m->flex_margin[f2])); + mjtNum maxmargin = mju_max(m->flex_margin[f1], m->flex_margin[f2]); + mjtNum margin = mj_assignMargin(m, maxmargin); if (filterBox(bvh1 + 6*node1, bvh2 + 6*node2, margin)) { continue; } @@ -863,28 +865,28 @@ void mj_collideTree(const mjModel* m, mjData* d, int bf1, int bf2, // make AAMM (xmin[3], xmax[3]) for one bodyflex static void makeAAMM(const mjModel* m, mjData* d, mjtNum* aamm, int bf, const mjtNum* frame) { // body - if (bfnbody) { + if (bf < m->nbody) { int body = bf; int body_geomnum = m->body_geomnum[body]; // process all body geoms (body is collidable, should have geoms) - for (int i=0; ibody_geomadr[body]+i; mjtNum margin = mjENABLED(mjENBL_OVERRIDE) ? 0.5*m->opt.o_margin : m->geom_margin[geom]; mjtNum _aamm[6]; // set _aamm for this geom - for (int j=0; j<3; j++) { + for (int j=0; j < 3; j++) { mjtNum cen = mju_dot3(d->geom_xpos+3*geom, frame+3*j); _aamm[j] = cen - m->geom_rbound[geom] - margin; _aamm[j+3] = cen + m->geom_rbound[geom] + margin; } // update body aamm - if (i==0) { + if (i == 0) { mju_copy(aamm, _aamm, 6); } else { - for (int j=0; j<3; j++) { + for (int j=0; j < 3; j++) { aamm[j] = mju_min(aamm[j], _aamm[j]); aamm[j+3] = mju_max(aamm[j+3], _aamm[j+3]); } @@ -906,11 +908,11 @@ static void makeAAMM(const mjModel* m, mjData* d, mjtNum* aamm, int bf, const mj mju_mulMatVec(v, frame, vbase+3*i, 3, 3); // update aamm - if (i==0) { + if (i == 0) { mju_copy3(aamm, v); mju_copy3(aamm+3, v); } else { - for (int j=0; j<3; j++) { + for (int j=0; j < 3; j++) { aamm[j] = mju_min(aamm[j], v[j]); aamm[j+3] = mju_max(aamm[j+3], v[j]); } @@ -946,7 +948,7 @@ static void add_pair(const mjModel* m, int bf1, int bf2, int body_geomadr1 = m->body_geomadr[bf1]; int body_geomnum1 = m->body_geomnum[bf1]; contype1 = conaffinity1 = 0; - for (int i=body_geomadr1; igeom_contype[i]; conaffinity1 |= m->geom_conaffinity[i]; } @@ -960,7 +962,7 @@ static void add_pair(const mjModel* m, int bf1, int bf2, int body_geomadr2 = m->body_geomadr[bf2]; int body_geomnum2 = m->body_geomnum[bf2]; contype2 = conaffinity2 = 0; - for (int i=body_geomadr2; igeom_contype[i]; conaffinity2 |= m->geom_conaffinity[i]; } @@ -1021,7 +1023,7 @@ quicksortfunc(SAPcompare, context, el1, el2) { // using sweep-and-prune along specified axis (0-2). static int mj_SAP(mjData* d, const mjtNum* aamm, int n, int axis, int* pair, int maxpair) { // check inputs - if (n>=0x10000 || axis<0 || axis>2 || maxpair<1) { + if (n >= 0x10000 || axis < 0 || axis > 2 || maxpair < 1) { return -1; } @@ -1030,7 +1032,7 @@ static int mj_SAP(mjData* d, const mjtNum* aamm, int n, int axis, int* pair, int mjtSAP* activebuf = (mjtSAP*) mj_stackAllocByte(d, 2*n*sizeof(mjtSAP), _Alignof(mjtSAP)); // init sortbuf with specified axis - for (int i=0; i=maxpair) { + if (npair >= maxpair) { return maxpair; } } @@ -1088,9 +1090,9 @@ static int mj_SAP(mjData* d, const mjtNum* aamm, int n, int axis, int* pair, int // max value: remove corresponding min value from list else { int toremove = sortbuf[i].id_ismax & 0xFFFF; - for (int j=0; jbody_geomnum[b1] > 0) || - (m->body_weldid[b1]==0 && hasPlane(m, b1))) { + (m->body_weldid[b1] == 0 && hasPlane(m, b1))) { // add b1:body pairs that are not welded together - for (int b2=0; b2> 16]; int bf2 = bfid[sappair[i] & 0xFFFF]; // body pair: prune based on weld filter - if (bf1body_weldid[bf1]; int weld2 = m->body_weldid[bf2]; int parent_weld1 = m->body_weldid[m->body_parentid[weld1]]; @@ -1295,34 +1297,34 @@ static void mj_contactParam(const mjModel* m, int* condim, mjtNum* gap, mjtNum fri[3]; // get parameters from geom1 or flex1 - int priority1 = (f1<0) ? m->geom_priority[g1] : m->flex_priority[f1]; - int condim1 = (f1<0) ? m->geom_condim[g1] : m->flex_condim[f1]; - mjtNum gap1 = (f1<0) ? m->geom_gap[g1] : m->flex_gap[f1]; - mjtNum solmix1 = (f1<0) ? m->geom_solmix[g1] : m->flex_solmix[f1]; - const mjtNum* solref1 = (f1<0) ? m->geom_solref+g1*mjNREF : m->flex_solref+f1*mjNREF; - const mjtNum* solimp1 = (f1<0) ? m->geom_solimp+g1*mjNIMP : m->flex_solimp+f1*mjNIMP; - const mjtNum* friction1 = (f1<0) ? m->geom_friction+g1*3 : m->flex_friction+f1*3; + int priority1 = (f1 < 0) ? m->geom_priority[g1] : m->flex_priority[f1]; + int condim1 = (f1 < 0) ? m->geom_condim[g1] : m->flex_condim[f1]; + mjtNum gap1 = (f1 < 0) ? m->geom_gap[g1] : m->flex_gap[f1]; + mjtNum solmix1 = (f1 < 0) ? m->geom_solmix[g1] : m->flex_solmix[f1]; + const mjtNum* solref1 = (f1 < 0) ? m->geom_solref+g1*mjNREF : m->flex_solref+f1*mjNREF; + const mjtNum* solimp1 = (f1 < 0) ? m->geom_solimp+g1*mjNIMP : m->flex_solimp+f1*mjNIMP; + const mjtNum* friction1 = (f1 < 0) ? m->geom_friction+g1*3 : m->flex_friction+f1*3; // get parameters from geom2 or flex2 - int priority2 = (f2<0) ? m->geom_priority[g2] : m->flex_priority[f2]; - int condim2 = (f2<0) ? m->geom_condim[g2] : m->flex_condim[f2]; - mjtNum gap2 = (f2<0) ? m->geom_gap[g2] : m->flex_gap[f2]; - mjtNum solmix2 = (f2<0) ? m->geom_solmix[g2] : m->flex_solmix[f2]; - const mjtNum* solref2 = (f2<0) ? m->geom_solref+g2*mjNREF : m->flex_solref+f2*mjNREF; - const mjtNum* solimp2 = (f2<0) ? m->geom_solimp+g2*mjNIMP : m->flex_solimp+f2*mjNIMP; - const mjtNum* friction2 = (f2<0) ? m->geom_friction+g2*3 : m->flex_friction+f2*3; + int priority2 = (f2 < 0) ? m->geom_priority[g2] : m->flex_priority[f2]; + int condim2 = (f2 < 0) ? m->geom_condim[g2] : m->flex_condim[f2]; + mjtNum gap2 = (f2 < 0) ? m->geom_gap[g2] : m->flex_gap[f2]; + mjtNum solmix2 = (f2 < 0) ? m->geom_solmix[g2] : m->flex_solmix[f2]; + const mjtNum* solref2 = (f2 < 0) ? m->geom_solref+g2*mjNREF : m->flex_solref+f2*mjNREF; + const mjtNum* solimp2 = (f2 < 0) ? m->geom_solimp+g2*mjNIMP : m->flex_solimp+f2*mjNIMP; + const mjtNum* friction2 = (f2 < 0) ? m->geom_friction+g2*3 : m->flex_friction+f2*3; // gap: max *gap = mju_max(gap1, gap2); // different priority: copy from item with higher priority - if (priority1>priority2) { + if (priority1 > priority2) { *condim = condim1; mju_copy(solref, solref1, mjNREF); mju_copy(solimp, solimp1, mjNIMP); mju_copy(fri, friction1, 3); } - else if (priority1=mjMINVAL && solmix2>=mjMINVAL) { + if (solmix1 >= mjMINVAL && solmix2 >= mjMINVAL) { mix = solmix1 / (solmix1 + solmix2); - } else if (solmix10 && solref2[0]>0) { - for (int i=0; i 0 && solref2[0] > 0) { + for (int i=0; i < mjNREF; i++) { solref[i] = mix*solref1[i] + (1-mix)*solref2[i]; } } // reference direct: min else { - for (int i=0; i6 || *condim<1) { + if (*condim > 6 || *condim < 1) { mjERROR("Invalid condim value: %d", *condim); } } @@ -1501,7 +1503,7 @@ void mj_collideGeoms(const mjModel* m, mjData* d, int g1, int g2) { // allocate mjContact[mjMAXCONPAIR] on the arena mjContact* con = - (mjContact*) mj_arenaAllocByte(d, sizeof(mjContact) * mjMAXCONPAIR, _Alignof(mjContact)); + (mjContact*) mj_arenaAllocByte(d, sizeof(mjContact) * mjMAXCONPAIR, _Alignof(mjContact)); if (!con) { mj_warning(d, mjWARN_CONTACTFULL, d->ncon); return; @@ -1578,7 +1580,7 @@ void mj_collideGeoms(const mjModel* m, mjData* d, int g1, int g2) { } // add contacts returned by collision detector - for (int i=0; iflexvert_xpos + 3*(m->flex_vertadr[f]+i); // distance from plane to vertex @@ -1678,7 +1680,7 @@ static int planeVertex(mjContact* con, const mjtNum* pos, mjtNum rad, // project, check distance mjtNum dst = mju_dot3(ev, nrm); - if (dst<=-2*rad) { + if (dst <= -2*rad) { return 0; } @@ -1698,13 +1700,13 @@ void mj_collideFlexInternal(const mjModel* m, mjData* d, int f) { int flex_evpairnum = m->flex_evpairnum[f]; // predefined element-vertex - for (int i=0; iflex_evpair + 2*m->flex_evpairadr[f] + 2*i; mj_collideElemVert(m, d, f, ev[0], ev[1]); } // within-element for tetrahedral only - if (m->flex_dim[f]!=3) { + if (m->flex_dim[f] != 3) { return; } @@ -1725,7 +1727,7 @@ void mj_collideFlexInternal(const mjModel* m, mjData* d, int f) { // process all elements const mjtNum* vertxpos = d->flexvert_xpos + 3*m->flex_vertadr[f]; - for (int e=0; eflex_elem + m->flex_elemdataadr[f] + e*4; con.elem[0] = e; @@ -1766,14 +1768,14 @@ void mj_collideFlexSAP(const mjModel* m, mjData* d, int f) { int* elid = mj_stackAllocInt(d, m->flex_elemnum[f]); int nactive = 0; int flex_elemnum = m->flex_elemnum[f]; - for (int i=0; iflexelem_aabb + 6*m->flex_elemadr[f]; - for (int i=0; ibvh_aabb_dyn + 6*(m->flex_bvhadr[f] - m->nbvhstatic); - int axis = (bvh[3]>bvh[4] && bvh[3]>bvh[5]) ? 0 : (bvh[4]>bvh[5] ? 1 : 2); + int axis = (bvh[3] > bvh[4] && bvh[3] > bvh[5]) ? 0 : (bvh[4] > bvh[5] ? 1 : 2); // call SAP; hard limit on number of pairs to avoid out-of-memory int maxsappair = mjMIN(nactive*(nactive-1)/2, 1000000); int* sappair = mj_stackAllocInt(d, maxsappair); int nsappair = mj_SAP(d, aamm, nactive, axis, sappair, maxsappair); - if (nsappair<0) { + if (nsappair < 0) { mjERROR("SAP failed"); } // send SAP pairs to nearphase - for (int i=0; i> 16]; int e2 = elid[sappair[i] & 0xFFFF]; mj_collideElems(m, d, f, e1, f, e2); @@ -1829,62 +1831,62 @@ void mj_collideGeomElem(const mjModel* m, mjData* d, int g, int f, int e) { int b = m->geom_bodyid[g]; const int* edata = m->flex_elem + m->flex_elemdataadr[f] + e*(dim+1); const int* bdata = m->flex_vertbodyid + m->flex_vertadr[f]; - for (int i=0; i<=dim; i++) { - if (b==bdata[edata[i]]) { + for (int i=0; i <= dim; i++) { + if (b == bdata[edata[i]]) { return; } } // allocate mjContact[mjMAXCONPAIR] on the arena mjContact* con = - (mjContact*) mj_arenaAllocByte(d, sizeof(mjContact) * mjMAXCONPAIR, _Alignof(mjContact)); + (mjContact*) mj_arenaAllocByte(d, sizeof(mjContact) * mjMAXCONPAIR, _Alignof(mjContact)); if (!con) { mj_warning(d, mjWARN_CONTACTFULL, d->ncon); return; } // sphere/capsule/box : capsule - if (dim==1 && (type==mjGEOM_SPHERE || type==mjGEOM_CAPSULE || type==mjGEOM_BOX)) { + if (dim == 1 && (type == mjGEOM_SPHERE || type == mjGEOM_CAPSULE || type == mjGEOM_BOX)) { // make capsule from vertices mjtNum pos[3], mat[9], size[2]; mj_makeCapsule(m, d, f, m->flex_elem + m->flex_elemdataadr[f] + e*2, pos, mat, size); // call raw primitive for corresponding geom type - if (type==mjGEOM_SPHERE) { + if (type == mjGEOM_SPHERE) { num = mjraw_SphereCapsule(con, margin, - d->geom_xpos+3*g, d->geom_xmat+9*g, m->geom_size+3*g, - pos, mat, size); + d->geom_xpos+3*g, d->geom_xmat+9*g, m->geom_size+3*g, + pos, mat, size); } - else if (type==mjGEOM_CAPSULE) { + else if (type == mjGEOM_CAPSULE) { num = mjraw_CapsuleCapsule(con, margin, - d->geom_xpos+3*g, d->geom_xmat+9*g, m->geom_size+3*g, - pos, mat, size); + d->geom_xpos+3*g, d->geom_xmat+9*g, m->geom_size+3*g, + pos, mat, size); } else { num = mjraw_CapsuleBox(con, margin, - pos, mat, size, - d->geom_xpos+3*g, d->geom_xmat+9*g, m->geom_size+3*g); + pos, mat, size, + d->geom_xpos+3*g, d->geom_xmat+9*g, m->geom_size+3*g); // reverse contact normals, since box geom is second - for (int i=0; iflexvert_xpos + 3*m->flex_vertadr[f]; num = mjraw_SphereTriangle(con, margin, - d->geom_xpos+3*g, m->geom_size[3*g], - vertxpos + 3*edata[0], vertxpos + 3*edata[1], - vertxpos + 3*edata[2], m->flex_radius[f]); + d->geom_xpos+3*g, m->geom_size[3*g], + vertxpos + 3*edata[0], vertxpos + 3*edata[1], + vertxpos + 3*edata[2], m->flex_radius[f]); } // general geom : elem @@ -1905,7 +1907,7 @@ void mj_collideGeomElem(const mjModel* m, mjData* d, int g, int f, int e) { mj_contactParam(m, &condim, &gap, solref, solimp, friction, g, -1, -1, f); // add contacts - for (int i=0; iflex_elem + m->flex_elemdataadr[f2] + e2*(dim2+1); const int* bdata1 = m->flex_vertbodyid + m->flex_vertadr[f1]; const int* bdata2 = m->flex_vertbodyid + m->flex_vertadr[f2]; - for (int i1=0; i1<=dim1; i1++) { + for (int i1=0; i1 <= dim1; i1++) { int b1 = bdata1[edata1[i1]]; - for (int i2=0; i2<=dim2; i2++) { - if (b1==bdata2[edata2[i2]]) { + for (int i2=0; i2 <= dim2; i2++) { + if (b1 == bdata2[edata2[i2]]) { return; } } @@ -1963,14 +1965,14 @@ void mj_collideElems(const mjModel* m, mjData* d, int f1, int e1, int f2, int e2 // allocate mjContact[mjMAXCONPAIR] on the arena mjContact* con = - (mjContact*) mj_arenaAllocByte(d, sizeof(mjContact) * mjMAXCONPAIR, _Alignof(mjContact)); + (mjContact*) mj_arenaAllocByte(d, sizeof(mjContact) * mjMAXCONPAIR, _Alignof(mjContact)); if (!con) { mj_warning(d, mjWARN_CONTACTFULL, d->ncon); return; } // capsule : capsule - if (dim1==1 && dim2==1) { + if (dim1 == 1 && dim2 == 1) { // make capsules from vertices mjtNum pos1[3], mat1[9], size1[2]; mjtNum pos2[3], mat2[9], size2[2]; @@ -2001,12 +2003,12 @@ void mj_collideElems(const mjModel* m, mjData* d, int f1, int e1, int f2, int e2 mj_contactParam(m, &condim, &gap, solref, solimp, friction, -1, -1, f1, f2); // ignore gap in self collision, since margin is ignored - if (f1==f2) { + if (f1 == f2) { gap = 0; } // add contacts - for (int i=0; incon); return; } // sphere : capsule - if (dim==1) { + if (dim == 1) { mjtNum pos[3], mat[9], size[2]; mjtNum I[9] = {1, 0, 0, 0, 1, 0, 0, 0, 1}; mj_makeCapsule(m, d, f, edata, pos, mat, size); @@ -2069,11 +2071,11 @@ void mj_collideElemVert(const mjModel* m, mjData* d, int f, int e, int v) { } // sphere : triangle - else if (dim==2) { + else if (dim == 2) { const mjtNum* vertxpos = d->flexvert_xpos + 3*m->flex_vertadr[f]; num = mjraw_SphereTriangle(con, 0, vert, radius, - vertxpos + 3*edata[0], vertxpos + 3*edata[1], - vertxpos + 3*edata[2], radius); + vertxpos + 3*edata[0], vertxpos + 3*edata[1], + vertxpos + 3*edata[2], radius); } // sphere : tetrahdron @@ -2094,7 +2096,7 @@ void mj_collideElemVert(const mjModel* m, mjData* d, int f, int e, int v) { mj_contactParam(m, &condim, &gap, solref, solimp, friction, -1, -1, f, f); // add contacts - for (int i=0; i=1) { + } else if (a >= 1) { res[0] = v[0]; res[1] = v[1]; } else { @@ -582,7 +582,7 @@ int mjraw_SphereTriangle(mjContact* con, mjtNum margin, mjtNum sign3 = areaSign(p, b, o); // p is inside triangle - if (sign1==sign2 && sign2==sign3) { + if (sign1 == sign2 && sign2 == sign3) { // P is nearest point to S within triangle mju_copy3(X, P); } @@ -596,7 +596,7 @@ int mjraw_SphereTriangle(mjContact* con, mjtNum margin, dstx[2] = pointSegment(x[2], p, b, o); // select minimum - int best = (dstx[0]rbound) { + if (dst > rbound) { return 0; } diff --git a/src/engine/engine_collision_sdf.c b/src/engine/engine_collision_sdf.c index f754c9e3..1e557e1a 100644 --- a/src/engine/engine_collision_sdf.c +++ b/src/engine/engine_collision_sdf.c @@ -43,44 +43,44 @@ static mjtNum geomDistance(const mjModel* m, const mjData* d, const mjpPlugin* p // see https://iquilezles.org/articles/distfunctions/ switch (type) { - case mjGEOM_PLANE: - return x[2]; - case mjGEOM_SPHERE: - return mju_norm3(x) - size[0]; - case mjGEOM_BOX: - a[0] = mju_abs(x[0]) - size[0]; - a[1] = mju_abs(x[1]) - size[1]; - a[2] = mju_abs(x[2]) - size[2]; - b[0] = mju_max(a[0], 0); - b[1] = mju_max(a[1], 0); - b[2] = mju_max(a[2], 0); - return mju_norm3(b) + mju_min(mju_max(a[0], mju_max(a[1], a[2])), 0); - case mjGEOM_CAPSULE: - a[0] = x[0]; - a[1] = x[1]; - a[2] = x[2] - mju_clip(x[2], -size[1], size[1]); - return mju_norm3(a) - size[0]; - case mjGEOM_ELLIPSOID: - a[0] = x[0] / size[0]; - a[1] = x[1] / size[1]; - a[2] = x[2] / size[2]; - b[0] = a[0] / size[0]; - b[1] = a[1] / size[1]; - b[2] = a[2] / size[2]; - mjtNum k0 = mju_norm3(a); - mjtNum k1 = mju_norm3(b); - return k0 * (k0 - 1.0) / k1; - case mjGEOM_CYLINDER: - a[0] = mju_sqrt(x[0]*x[0]+x[1]*x[1]) - size[0]; - a[1] = mju_abs(x[2]) - size[1]; - b[0] = mju_max(a[0], 0); - b[1] = mju_max(a[1], 0); - return mju_min(mju_max(a[0], a[1]), 0) + mju_norm(b, 2); - case mjGEOM_SDF: - return p->sdf_distance(x, d, i); - default: - mjERROR("sdf collisions not available for geom type %d", type); - return 0; + case mjGEOM_PLANE: + return x[2]; + case mjGEOM_SPHERE: + return mju_norm3(x) - size[0]; + case mjGEOM_BOX: + a[0] = mju_abs(x[0]) - size[0]; + a[1] = mju_abs(x[1]) - size[1]; + a[2] = mju_abs(x[2]) - size[2]; + b[0] = mju_max(a[0], 0); + b[1] = mju_max(a[1], 0); + b[2] = mju_max(a[2], 0); + return mju_norm3(b) + mju_min(mju_max(a[0], mju_max(a[1], a[2])), 0); + case mjGEOM_CAPSULE: + a[0] = x[0]; + a[1] = x[1]; + a[2] = x[2] - mju_clip(x[2], -size[1], size[1]); + return mju_norm3(a) - size[0]; + case mjGEOM_ELLIPSOID: + a[0] = x[0] / size[0]; + a[1] = x[1] / size[1]; + a[2] = x[2] / size[2]; + b[0] = a[0] / size[0]; + b[1] = a[1] / size[1]; + b[2] = a[2] / size[2]; + mjtNum k0 = mju_norm3(a); + mjtNum k1 = mju_norm3(b); + return k0 * (k0 - 1.0) / k1; + case mjGEOM_CYLINDER: + a[0] = mju_sqrt(x[0]*x[0]+x[1]*x[1]) - size[0]; + a[1] = mju_abs(x[2]) - size[1]; + b[0] = mju_max(a[0], 0); + b[1] = mju_max(a[1], 0); + return mju_min(mju_max(a[0], a[1]), 0) + mju_norm(b, 2); + case mjGEOM_SDF: + return p->sdf_distance(x, d, i); + default: + mjERROR("sdf collisions not available for geom type %d", type); + return 0; } } @@ -92,83 +92,83 @@ static void geomGradient(mjtNum gradient[3], const mjModel* m, const mjData* d, // see https://iquilezles.org/articles/distfunctions/ switch (type) { - case mjGEOM_PLANE: - mju_zero3(gradient); - gradient[2] = 1; - break; - case mjGEOM_SPHERE: - mju_copy3(gradient, x); - c = mju_norm3(x); - gradient[0] *= 1. / c; - gradient[1] *= 1. / c; - gradient[2] *= 1. / c; - break; - case mjGEOM_BOX: - mju_zero3(gradient); - a[0] = mju_abs(x[0]) - size[0]; - a[1] = mju_abs(x[1]) - size[1]; - a[2] = mju_abs(x[2]) - size[2]; - int k = a[0] > a[1] ? 0 : 1; - int l = a[2] > a[k] ? 2 : k; - if (a[l]<0) { - gradient[l] = x[l] / mju_abs(x[l]); - } else { - b[0] = mju_max(a[0], 0); - b[1] = mju_max(a[1], 0); - b[2] = mju_max(a[2], 0); - c = mju_norm3(b); - gradient[0] = a[0]>0 ? b[0] / c * x[0] / mju_abs(x[0]) : 0; - gradient[1] = a[1]>0 ? b[1] / c * x[1] / mju_abs(x[1]) : 0; - gradient[2] = a[2]>0 ? b[2] / c * x[2] / mju_abs(x[2]) : 0; - } - break; - case mjGEOM_CAPSULE: - a[0] = x[0]; - a[1] = x[1]; - a[2] = x[2] - mju_clip(x[2], -size[1], size[1]); - c = mju_norm3(a); - gradient[0] = a[0] / c; - gradient[1] = a[1] / c; - gradient[2] = a[2] / c; - break; - case mjGEOM_ELLIPSOID: - a[0] = x[0] / size[0]; - a[1] = x[1] / size[1]; - a[2] = x[2] / size[2]; - b[0] = a[0] / size[0]; - b[1] = a[1] / size[1]; - b[2] = a[2] / size[2]; - mjtNum k0 = mju_norm3(a); - mjtNum k1 = mju_norm3(b); - gradient[0] = a[0]*(2.*k0 - 1.) / k1 + k0*(k0 - 1.) * b[0]/(k1*k1); - gradient[1] = a[1]*(2.*k0 - 1.) / k1 + k0*(k0 - 1.) * b[1]/(k1*k1); - gradient[2] = a[2]*(2.*k0 - 1.) / k1 + k0*(k0 - 1.) * b[2]/(k1*k1); - break; - case mjGEOM_CYLINDER: - c = mju_sqrt(x[0]*x[0]+x[1]*x[1]); - e = mju_abs(x[2]); - a[0] = c - size[0]; - a[1] = e - size[1]; - mjtNum grada[3] = {x[0] / c, x[1] / c, x[2] / e}; - int j = a[0] > a[1] ? 0 : 1; - if (a[j] < 0) { - gradient[0] = j==0 ? grada[0] : 0; - gradient[1] = j==0 ? grada[1] : 0; - gradient[2] = j==1 ? grada[2] : 0; - } else { - b[0] = mju_max(a[0], 0); - b[1] = mju_max(a[1], 0); - mjtNum bnorm = mju_norm(b, 2); - gradient[0] = grada[0] * b[0] / bnorm; - gradient[1] = grada[1] * b[0] / bnorm; - gradient[2] = grada[2] * b[1] / bnorm; - } - break; - case mjGEOM_SDF: - p->sdf_gradient(gradient, x, d, i); - break; - default: - mjERROR("sdf collisions not available for geom type %d", type); + case mjGEOM_PLANE: + mju_zero3(gradient); + gradient[2] = 1; + break; + case mjGEOM_SPHERE: + mju_copy3(gradient, x); + c = mju_norm3(x); + gradient[0] *= 1. / c; + gradient[1] *= 1. / c; + gradient[2] *= 1. / c; + break; + case mjGEOM_BOX: + mju_zero3(gradient); + a[0] = mju_abs(x[0]) - size[0]; + a[1] = mju_abs(x[1]) - size[1]; + a[2] = mju_abs(x[2]) - size[2]; + int k = a[0] > a[1] ? 0 : 1; + int l = a[2] > a[k] ? 2 : k; + if (a[l] < 0) { + gradient[l] = x[l] / mju_abs(x[l]); + } else { + b[0] = mju_max(a[0], 0); + b[1] = mju_max(a[1], 0); + b[2] = mju_max(a[2], 0); + c = mju_norm3(b); + gradient[0] = a[0] > 0 ? b[0] / c * x[0] / mju_abs(x[0]) : 0; + gradient[1] = a[1] > 0 ? b[1] / c * x[1] / mju_abs(x[1]) : 0; + gradient[2] = a[2] > 0 ? b[2] / c * x[2] / mju_abs(x[2]) : 0; + } + break; + case mjGEOM_CAPSULE: + a[0] = x[0]; + a[1] = x[1]; + a[2] = x[2] - mju_clip(x[2], -size[1], size[1]); + c = mju_norm3(a); + gradient[0] = a[0] / c; + gradient[1] = a[1] / c; + gradient[2] = a[2] / c; + break; + case mjGEOM_ELLIPSOID: + a[0] = x[0] / size[0]; + a[1] = x[1] / size[1]; + a[2] = x[2] / size[2]; + b[0] = a[0] / size[0]; + b[1] = a[1] / size[1]; + b[2] = a[2] / size[2]; + mjtNum k0 = mju_norm3(a); + mjtNum k1 = mju_norm3(b); + gradient[0] = a[0]*(2.*k0 - 1.) / k1 + k0*(k0 - 1.) * b[0]/(k1*k1); + gradient[1] = a[1]*(2.*k0 - 1.) / k1 + k0*(k0 - 1.) * b[1]/(k1*k1); + gradient[2] = a[2]*(2.*k0 - 1.) / k1 + k0*(k0 - 1.) * b[2]/(k1*k1); + break; + case mjGEOM_CYLINDER: + c = mju_sqrt(x[0]*x[0]+x[1]*x[1]); + e = mju_abs(x[2]); + a[0] = c - size[0]; + a[1] = e - size[1]; + mjtNum grada[3] = {x[0] / c, x[1] / c, x[2] / e}; + int j = a[0] > a[1] ? 0 : 1; + if (a[j] < 0) { + gradient[0] = j == 0 ? grada[0] : 0; + gradient[1] = j == 0 ? grada[1] : 0; + gradient[2] = j == 1 ? grada[2] : 0; + } else { + b[0] = mju_max(a[0], 0); + b[1] = mju_max(a[1], 0); + mjtNum bnorm = mju_norm(b, 2); + gradient[0] = grada[0] * b[0] / bnorm; + gradient[1] = grada[1] * b[0] / bnorm; + gradient[2] = grada[2] * b[1] / bnorm; + } + break; + case mjGEOM_SDF: + p->sdf_gradient(gradient, x, d, i); + break; + default: + mjERROR("sdf collisions not available for geom type %d", type); } } @@ -179,16 +179,16 @@ mjtNum mjc_distance(const mjModel* m, const mjData* d, const mjSDF* s, const mjt mjtNum y[3]; switch (s->type) { - case mjSDFTYPE_SINGLE: - return geomDistance(m, d, s->plugin[0], s->id[0], x, s->geomtype[0]); - case mjSDFTYPE_INTERSECTION: - mju_rotVecMat(y, x, s->relmat); - mju_addTo3(y, s->relpos); - return mju_max(geomDistance(m, d, s->plugin[0], s->id[0], x, s->geomtype[0]), - geomDistance(m, d, s->plugin[1], s->id[1], y, s->geomtype[1])); - default: - mjERROR("SDF type not available"); - return 0; + case mjSDFTYPE_SINGLE: + return geomDistance(m, d, s->plugin[0], s->id[0], x, s->geomtype[0]); + case mjSDFTYPE_INTERSECTION: + mju_rotVecMat(y, x, s->relmat); + mju_addTo3(y, s->relpos); + return mju_max(geomDistance(m, d, s->plugin[0], s->id[0], x, s->geomtype[0]), + geomDistance(m, d, s->plugin[1], s->id[1], y, s->geomtype[1])); + default: + mjERROR("SDF type not available"); + return 0; } } @@ -199,33 +199,33 @@ void mjc_gradient(const mjModel* m, const mjData* d, const mjSDF* s, const mjtNum* point[2] = {x, y}; switch (s->type) { - case mjSDFTYPE_INTERSECTION: - mju_rotVecMat(y, x, s->relmat); - mju_addTo3(y, s->relpos); - int i = geomDistance(m, d, s->plugin[0], s->id[0], x, s->geomtype[0]) > - geomDistance(m, d, s->plugin[1], s->id[1], y, s->geomtype[1]) ? 0 : 1; - geomGradient(gradient, m, d, s->plugin[i], s->id[i], point[i], s->geomtype[i]); - if (i==1) { - mju_rotVecMatT(gradient, gradient, s->relmat); - } - break; - case mjSDFTYPE_AVERAGE: - mju_rotVecMat(y, x, s->relmat); - mju_addTo3(y, s->relpos); - mjtNum grad1[3], grad2[3]; - geomGradient(grad1, m, d, s->plugin[0], s->id[0], x, s->geomtype[0]); - mju_normalize3(grad1); - geomGradient(grad2, m, d, s->plugin[1], s->id[1], y, s->geomtype[1]); - mju_rotVecMatT(grad2, grad2, s->relmat); - mju_normalize3(grad2); - mju_sub3(gradient, grad1, grad2); - mju_normalize3(gradient); - break; - case mjSDFTYPE_SINGLE: - geomGradient(gradient, m, d, s->plugin[0], s->id[0], point[0], s->geomtype[0]); - break; - default: - mjERROR("SDF type not available"); + case mjSDFTYPE_INTERSECTION: + mju_rotVecMat(y, x, s->relmat); + mju_addTo3(y, s->relpos); + int i = geomDistance(m, d, s->plugin[0], s->id[0], x, s->geomtype[0]) > + geomDistance(m, d, s->plugin[1], s->id[1], y, s->geomtype[1]) ? 0 : 1; + geomGradient(gradient, m, d, s->plugin[i], s->id[i], point[i], s->geomtype[i]); + if (i == 1) { + mju_rotVecMatT(gradient, gradient, s->relmat); + } + break; + case mjSDFTYPE_AVERAGE: + mju_rotVecMat(y, x, s->relmat); + mju_addTo3(y, s->relpos); + mjtNum grad1[3], grad2[3]; + geomGradient(grad1, m, d, s->plugin[0], s->id[0], x, s->geomtype[0]); + mju_normalize3(grad1); + geomGradient(grad2, m, d, s->plugin[1], s->id[1], y, s->geomtype[1]); + mju_rotVecMatT(grad2, grad2, s->relmat); + mju_normalize3(grad2); + mju_sub3(gradient, grad1, grad2); + mju_normalize3(gradient); + break; + case mjSDFTYPE_SINGLE: + geomGradient(gradient, m, d, s->plugin[0], s->id[0], point[0], s->geomtype[0]); + break; + default: + mjERROR("SDF type not available"); } } @@ -257,7 +257,7 @@ static void undoTransformation(const mjModel* m, const mjData* d, int g, mjtNum sdf_xpos[3], mjtNum sdf_quat[4]) { mjtNum* xpos = d->geom_xpos + 3 * g; mjtNum* xmat = d->geom_xmat + 9 * g; - if (m->geom_type[g]==mjGEOM_MESH || m->geom_type[g]==mjGEOM_SDF) { + if (m->geom_type[g] == mjGEOM_MESH || m->geom_type[g] == mjGEOM_SDF) { mjtNum negpos[3], negquat[4], xquat[4]; mjtNum* pos = m->mesh_pos + 3 * m->geom_dataid[g]; mjtNum* quat = m->mesh_quat + 4 * m->geom_dataid[g]; @@ -328,19 +328,19 @@ static int addContact(mjtNum* points, mjContact* con, const mjtNum x[3], // finds minimum of Frank-Wolfe objective static mjtNum stepFrankWolfe(mjtNum x[3], const mjtNum* corners, int ncorners, const mjModel* m, const mjSDF* sdf, mjData* d) { - for (int step=0; stepopt.sdf_iterations; step++) { + for (int step=0; step < m->opt.sdf_iterations; step++) { mjtNum best = 1e10, fun, s[3], grad[3]; // evaluate gradient mjc_gradient(m, d, sdf, grad, x); // evaluate all corners - for (int i=0; iopt.sdf_iterations; step++) { + for (int step=0; step < m->opt.sdf_iterations; step++) { mjtNum grad[3]; // evaluate gradient mjc_gradient(m, d, s, grad, x); // sanity check - if (isnan(grad[0]) || grad[0]>mjMAXVAL || grad[0]<-mjMAXVAL || - isnan(grad[1]) || grad[1]>mjMAXVAL || grad[1]<-mjMAXVAL || - isnan(grad[2]) || grad[2]>mjMAXVAL || grad[2]<-mjMAXVAL) { + if (isnan(grad[0]) || grad[0] > mjMAXVAL || grad[0] < -mjMAXVAL || + isnan(grad[1]) || grad[1] > mjMAXVAL || grad[1] < -mjMAXVAL || + isnan(grad[2]) || grad[2] > mjMAXVAL || grad[2] < -mjMAXVAL) { return mjMAXVAL; } @@ -422,7 +422,7 @@ static int triangleIntersect(const mjtNum triangle[9], const mjModel* m, // coordinate change mju_addTo3(center, p); - return mjc_distance(m, d, sdf, center)= max_stack) mjERROR("BVH stack depth exceeded."); stack[nstack].node = child[2*node+i]; @@ -551,9 +551,9 @@ int mjc_MeshSDF(const mjModel* m, const mjData* d, mjContact* con, int g1, int g collideBVH(m, (mjData*)d, g1, offset, rotation, faces, &npoints, &n0, &sdf); // Frank-Wolfe algorithm - for (int i=0; imesh_vert[3*(vertadr+m->mesh_face[3*face+v])+0], m->mesh_vert[3*(vertadr+m->mesh_face[3*face+v])+1], @@ -576,13 +576,13 @@ int mjc_MeshSDF(const mjModel* m, const mjData* d, mjContact* con, int g1, int g x[2] = (corners[2]+corners[5]+corners[8])/3; // SHOULD NOT OCCUR - if (ncandidate==MAXMESHPNT) mjERROR("too many contact points"); + if (ncandidate == MAXMESHPNT)mjERROR("too many contact points"); // Frank-Wolfe depth = stepFrankWolfe(x, corners, 3, m, &sdf, (mjData*)d); // store candidate if there is penetration - if (depth<0) { + if (depth < 0) { mju_copy3(candidate + 3*ncandidate, x); index[ncandidate] = ncandidate; dist[ncandidate++] = depth; @@ -593,7 +593,7 @@ int mjc_MeshSDF(const mjModel* m, const mjData* d, mjContact* con, int g1, int g mjQUICKSORT(index, ncandidate, sizeof(int), distcompare, dist); // add only the first mjMAXCONPAIR pairs - for (int i=0; iopt.sdf_initpoints) { + while (i < m->opt.sdf_initpoints) { x[0] = aabb[0] + (aabb[3]-aabb[0]) * mju_Halton(j, 2); x[1] = aabb[1] + (aabb[4]-aabb[1]) * mju_Halton(j, 3); x[2] = aabb[2] + (aabb[5]-aabb[2]) * mju_Halton(j, 5); @@ -723,7 +723,9 @@ int mjc_SDF(const mjModel* m, const mjData* d, mjContact* con, int g1, int g2, m cnt = addContact(contacts, con, x, pos2true, squat2, dist, cnt, m, &sdf, (mjData*)d); // SHOULD NOT OCCUR - if (cnt>mjMAXCONPAIR) mjERROR("too many contact points"); + if (cnt > mjMAXCONPAIR) { + mjERROR("too many contact points"); + } } return cnt; diff --git a/src/engine/engine_core_constraint.c b/src/engine/engine_core_constraint.c index ba2bf539..d6f723f6 100644 --- a/src/engine/engine_core_constraint.c +++ b/src/engine/engine_core_constraint.c @@ -124,11 +124,11 @@ int mj_isDual(const mjModel* m) { // assign/clamp contact friction parameters void mj_assignFriction(const mjModel* m, mjtNum* target, const mjtNum* source) { if (mjENABLED(mjENBL_OVERRIDE)) { - for (int i=0; i<5; i++) { + for (int i=0; i < 5; i++) { target[i] = mju_max(mjMINMU, m->opt.o_friction[i]); } } else { - for (int i=0; i<5; i++) { + for (int i=0; i < 5; i++) { target[i] = mju_max(mjMINMU, source[i]); } } @@ -181,20 +181,20 @@ static int mj_elemBodyWeight(const mjModel* m, const mjData* d, int f, int e, in // compute inverse distances from contact point to element vertices // save body ids, find vertex v in element int vid = -1; - for (int i=0; i<=dim; i++) { + for (int i=0; i <= dim; i++) { mjtNum dist = mju_dist3(point, vert+3*edata[i]); weight[i] = 1.0/(mju_max(mjMINVAL, dist)); body[i] = m->flex_vertbodyid[m->flex_vertadr[f] + edata[i]]; // check if element vertex matches v - if (edata[i]==v) { + if (edata[i] == v) { vid = i; } } // v found in e: skip and shift remaining - if (vid>=0) { - while (vid= 0) { + while (vid < dim) { weight[vid] = weight[vid+1]; body[vid] = body[vid+1]; vid++; @@ -242,9 +242,9 @@ int mj_addContact(const mjModel* m, mjData* d, const mjContact* con) { // add #size rows to constraint Jacobian; set pos, margin, frictionloss, type, id static void mj_addConstraint(const mjModel* m, mjData* d, - const mjtNum* jac, const mjtNum* pos, - const mjtNum* margin, mjtNum frictionloss, - int size, int type, int id, int NV, const int* chain) { + const mjtNum* jac, const mjtNum* pos, + const mjtNum* margin, mjtNum frictionloss, + int size, int type, int id, int NV, const int* chain) { int empty, nv = m->nv, nefc = d->nefc; int *nnz = d->efc_J_rownnz, *adr = d->efc_J_rowadr, *ind = d->efc_J_colind; mjtNum *J = d->efc_J; @@ -665,7 +665,7 @@ void mj_instantiateEquality(const mjModel* m, mjData* d) { flex_edgenum = m->flex_edgenum[id[0]]; // add one constraint per edge - for (int e=flex_edgeadr; eflexedge_length[e] - m->flexedge_length0[e]; @@ -930,14 +930,14 @@ void mj_instantiateContact(const mjModel* m, mjData* d) { con->efc_address = d->nefc; // special case: single body on each side - if ((con->geom[0]>=0 || con->vert[0]>=0) && - (con->geom[1]>=0 || con->vert[1]>=0)) { + if ((con->geom[0] >= 0 || con->vert[0] >= 0) && + (con->geom[1] >= 0 || con->vert[1] >= 0)) { // get bodies int bid[2]; for (int side=0; side < 2; side++) { - bid[side] = (con->geom[side]>=0) ? - m->geom_bodyid[con->geom[side]] : - m->flex_vertbodyid[m->flex_vertadr[con->flex[side]] + con->vert[side]]; + bid[side] = (con->geom[side] >= 0) ? + m->geom_bodyid[con->geom[side]] : + m->flex_vertbodyid[m->flex_vertadr[con->flex[side]] + con->vert[side]]; } // compute Jacobian differences @@ -956,16 +956,16 @@ void mj_instantiateContact(const mjModel* m, mjData* d) { int nb = 0; int bid[8]; mjtNum bweight[8]; - for (int side=0; side<2; side++) { + for (int side=0; side < 2; side++) { // geom - if (con->geom[side]>=0) { + if (con->geom[side] >= 0) { bid[nb] = m->geom_bodyid[con->geom[side]]; bweight[nb] = side ? +1 : -1; nb++; } // flex vert - else if (con->vert[side]>=0) { + else if (con->vert[side] >= 0) { bid[nb] = m->flex_vertbodyid[m->flex_vertadr[con->flex[side]] + con->vert[side]]; bweight[nb] = side ? +1 : -1; nb++; @@ -977,7 +977,7 @@ void mj_instantiateContact(const mjModel* m, mjData* d) { con->vert[1-side], con->pos, bid+nb, bweight+nb); // negative sign for first side of contact - if (side==0) { + if (side == 0) { mju_scl(bweight+nb, bweight+nb, -1, nw); } @@ -986,7 +986,7 @@ void mj_instantiateContact(const mjModel* m, mjData* d) { } // combine weighted Jacobians - NV = mj_jacSum(m, d, chain, nb, bid, bweight, con->pos, jacdif, dim>3); + NV = mj_jacSum(m, d, chain, nb, bid, bweight, con->pos, jacdif, dim > 3); } // skip contact if no DOFs affected @@ -1068,7 +1068,7 @@ void mj_diagApprox(const mjModel* m, mjData* d) { id = d->efc_id[i]; // clear edge counter - if (d->efc_type[i]!=mjEQ_FLEX) { + if (d->efc_type[i] != mjEQ_FLEX) { edgecnt = 0; } @@ -1139,31 +1139,33 @@ void mj_diagApprox(const mjModel* m, mjData* d) { // add the average translation and rotation components from both sides tran = rot = 0; - for (int side=0; side<2; side++) { + for (int side=0; side < 2; side++) { // get bodies and weights int nb, bid[4]; mjtNum bweight[4]; // geom - if (con->geom[side]>=0) { + if (con->geom[side] >= 0) { bid[0] = m->geom_bodyid[con->geom[side]]; bweight[0] = 1; nb = 1; + } // flex vert - } else if (con->vert[side]>=0) { + else if (con->vert[side] >= 0) { bid[0] = m->flex_vertbodyid[m->flex_vertadr[con->flex[side]] + con->vert[side]]; bweight[0] = 1; nb = 1; + } // flex elem - } else { + else { nb = mj_elemBodyWeight(m, d, con->flex[side], con->elem[side], con->vert[1-side], con->pos, bid, bweight); } // add weighted average over bodies - for (int k=0; kbody_invweight0[2*bid[k]] * bweight[k]; rot += m->body_invweight0[2*bid[k]+1] * bweight[k]; } @@ -1188,7 +1190,7 @@ void mj_diagApprox(const mjModel* m, mjData* d) { else { for (int j=0; j < dim-1; j++) { fri = con->friction[j]; - dA[i+2*j] = dA[i+2*j+1] = tran + fri*fri*(j<2 ? tran : rot); + dA[i+2*j] = dA[i+2*j+1] = tran + fri*fri*(j < 2 ? tran : rot); } // processed 2*dim-2 elements in one i-loop iteration; advance counter @@ -1401,7 +1403,7 @@ void mj_makeImpedance(const mjModel* m, mjData* d) { // elliptic contacts use solreffriction in non-normal directions, if non-zero int elliptic_friction = (tp == mjCNSTR_CONTACT_ELLIPTIC) && (j > 0); mjtNum* ref = elliptic_friction && (solreffriction[0] || solreffriction[1]) ? - solreffriction : solref; + solreffriction : solref; // friction: K = 0 if (tp == mjCNSTR_FRICTION_DOF || tp == mjCNSTR_FRICTION_TENDON || elliptic_friction) { @@ -1526,7 +1528,7 @@ static int mj_jacSumCount(const mjModel* m, mjData* d, int* chain, NV = mj_bodyChain(m, body[0], chain); // accumulate remaining - for (int i=1; iflex_edgenum[id[0]]; // process edges of this flex - for (int e=flex_edgeadr; eflex_vertbodyid[m->flex_vertadr[id[0]] + m->flex_edge[2*e]]; int b2 = m->flex_vertbodyid[m->flex_vertadr[id[0]] + m->flex_edge[2*e+1]]; @@ -1665,7 +1667,7 @@ static int mj_ne(const mjModel* m, mjData* d, int* nnz) { // accumulate counts; flex NV already accumulated ne += mj_addConstraintCount(m, size, NV); - nnze += (m->eq_type[i]==mjEQ_FLEX) ? NV : size*NV; + nnze += (m->eq_type[i] == mjEQ_FLEX) ? NV : size*NV; } } @@ -1805,7 +1807,7 @@ static int mj_nc(const mjModel* m, mjData* d, int* nnz) { int nb = 0, bid[8]; for (int side=0; side < 2; side++) { // geom - if (con->geom[side]>=0) { + if (con->geom[side] >= 0) { bid[nb++] = m->geom_bodyid[con->geom[side]]; } @@ -1819,7 +1821,7 @@ static int mj_nc(const mjModel* m, mjData* d, int* nnz) { int f = con->flex[side]; int fdim = m->flex_dim[f]; const int* edata = m->flex_elem + m->flex_elemdataadr[f] + con->elem[side]*(fdim+1); - for (int k=0; k<=fdim; k++) { + for (int k=0; k <= fdim; k++) { bid[nb++] = m->flex_vertbodyid[m->flex_vertadr[f] + edata[k]]; } } diff --git a/src/engine/engine_core_smooth.c b/src/engine/engine_core_smooth.c index ba01e9dd..f083335e 100644 --- a/src/engine/engine_core_smooth.c +++ b/src/engine/engine_core_smooth.c @@ -284,7 +284,7 @@ void mj_camlight(const mjModel* m, mjData* d) { // adjust for mode switch ((mjtCamLight) m->cam_mode[i]) { case mjCAMLIGHT_FIXED: - break; + break; case mjCAMLIGHT_TRACK: case mjCAMLIGHT_TRACKCOM: // fixed global orientation @@ -393,15 +393,15 @@ void mj_updateDynamicBVH(const mjModel* m, mjData* d, int bvhadr, int bvhnum) { mju_zeroInt(modified, bvhnum); // mark leafs as modified - for (int i=0; ibvh_nodeid[bvhadr+i]>=0) { + for (int i=0; i < bvhnum; i++) { + if (m->bvh_nodeid[bvhadr+i] >= 0) { modified[i] = 1; } } // update non-leafs in backward pass (parents come before children) - for (int i=bvhnum-1; i>=0; i--) { - if (m->bvh_nodeid[bvhadr+i]<0) { + for (int i=bvhnum-1; i >= 0; i--) { + if (m->bvh_nodeid[bvhadr+i] < 0) { int child1 = m->bvh_child[2*(bvhadr+i)]; int child2 = m->bvh_child[2*(bvhadr+i)+1]; @@ -413,13 +413,13 @@ void mj_updateDynamicBVH(const mjModel* m, mjData* d, int bvhadr, int bvhnum) { // compute new (min, max) mjtNum xmin[3], xmax[3]; - for (int k=0; k<3; k++) { + for (int k=0; k < 3; k++) { xmin[k] = mju_min(aabb1[k] - aabb1[k+3], aabb2[k] - aabb2[k+3]); xmax[k] = mju_max(aabb1[k] + aabb1[k+3], aabb2[k] + aabb2[k+3]); } // convert to (center, size) - for (int k=0; k<3; k++) { + for (int k=0; k < 3; k++) { aabb[k] = 0.5*(xmax[k]+xmin[k]); aabb[k+3] = 0.5*(xmax[k]-xmin[k]); } @@ -446,20 +446,20 @@ void mj_flex(const mjModel* m, mjData* d) { } // compute Cartesian positions of flex vertices - for (int f=0; fnflex; f++) { + for (int f=0; f < m->nflex; f++) { int vstart = m->flex_vertadr[f]; int vend = m->flex_vertadr[f] + m->flex_vertnum[f]; // centered: copy body position if (m->flex_centered[f]) { - for (int i=vstart; iflexvert_xpos+3*i, d->xpos+3*m->flex_vertbodyid[i]); } } // non-centered: map from local to global else { - for (int i=vstart; iflexvert_xpos+3*i, m->flex_vert+3*i, d->xmat+9*m->flex_vertbodyid[i]); mju_addTo3(d->flexvert_xpos+3*i, d->xpos+3*m->flex_vertbodyid[i]); } @@ -467,11 +467,11 @@ void mj_flex(const mjModel* m, mjData* d) { } // compute flex element aabb - for (int f=0; fnflex; f++) { + for (int f=0; f < m->nflex; f++) { int dim = m->flex_dim[f]; // process elements of this flex - for (int e=0; eflex_elemnum[f]; e++) { + for (int e=0; e < m->flex_elemnum[f]; e++) { const int* edata = m->flex_elem + m->flex_elemdataadr[f] + e*(dim+1); const mjtNum* vert = d->flexvert_xpos + 3*m->flex_vertadr[f]; @@ -479,8 +479,8 @@ void mj_flex(const mjModel* m, mjData* d) { mjtNum xmin[3], xmax[3]; mju_copy3(xmin, vert+3*edata[0]); mju_copy3(xmax, vert+3*edata[0]); - for (int i=1; i<=dim; i++) { - for (int j=0; j<3; j++) { + for (int i=1; i <= dim; i++) { + for (int j=0; j < 3; j++) { mjtNum value = vert[3*edata[i]+j]; xmin[j] = mju_min(xmin[j], value); xmax[j] = mju_max(xmax[j], value); @@ -500,14 +500,14 @@ void mj_flex(const mjModel* m, mjData* d) { // update flex bhv_aabb_dyn if needed if (!mjDISABLED(mjDSBL_MIDPHASE)) { - for (int f=0; fnflex; f++) { - if (m->flex_bvhadr[f]>=0) { + for (int f=0; f < m->nflex; f++) { + if (m->flex_bvhadr[f] >= 0) { int flex_bvhadr = m->flex_bvhadr[f]; int flex_bvhnum = m->flex_bvhnum[f]; // copy element aabbs to bhv leaf aabbs - for (int i=flex_bvhadr; ibvh_nodeid[i]>=0) { + for (int i=flex_bvhadr; i < flex_bvhadr+flex_bvhnum; i++) { + if (m->bvh_nodeid[i] >= 0) { mju_copy(d->bvh_aabb_dyn + 6*(i - m->nbvhstatic), d->flexelem_aabb + 6*(m->flex_elemadr[f] + m->bvh_nodeid[i]), 6); } @@ -535,18 +535,18 @@ void mj_flex(const mjModel* m, mjData* d) { } // compute lengths and Jacobians of edges - for (int f=0; fnflex; f++) { + for (int f=0; f < m->nflex; f++) { // skip if edges cannot generate forces if (m->flex_rigid[f] || - (m->flex_edgeequality[f]==0 && - m->flex_edgestiffness[f]==0 && m->flex_edgedamping[f]==0)) { + (m->flex_edgeequality[f] == 0 && + m->flex_edgestiffness[f] == 0 && m->flex_edgedamping[f] == 0)) { continue; } // process edges of this flex int vbase = m->flex_vertadr[f]; int ebase = m->flex_edgeadr[f]; - for (int e=0; eflex_edgenum[f]; e++) { + for (int e=0; e < m->flex_edgenum[f]; e++) { int v1 = m->flex_edge[2*(ebase+e)]; int v2 = m->flex_edge[2*(ebase+e)+1]; int b1 = m->flex_vertbodyid[vbase+v1]; @@ -562,7 +562,7 @@ void mj_flex(const mjModel* m, mjData* d) { // sparse edge Jacobian if (issparse) { // set rowadr - if (ebase+e>0) { + if (ebase+e > 0) { rowadr[ebase+e] = rowadr[ebase+e-1] + rownnz[ebase+e-1]; } @@ -1110,7 +1110,7 @@ void mj_transmission(const mjModel* m, mjData* d) { const mjContact* con = d->contact+j; // contact involving flex, continue - if (con->geom[0]<0 || con->geom[1]<0) { + if (con->geom[0] < 0 || con->geom[1] < 0) { continue; } @@ -1772,7 +1772,7 @@ void mj_rnePostConstraint(const mjModel* m, mjData* d) { con = d->contact+i; // skip contact involving flex - if (con->geom[0]<0 || con->geom[1]<0) { + if (con->geom[0] < 0 || con->geom[1] < 0) { continue; } diff --git a/src/engine/engine_derivative.c b/src/engine/engine_derivative.c index 84c51d47..8414aec0 100644 --- a/src/engine/engine_derivative.c +++ b/src/engine/engine_derivative.c @@ -1471,12 +1471,12 @@ void mjd_passive_vel(const mjModel* m, mjData* d) { } // flex edge damping - for (int f=0; fnflex; f++) { + for (int f=0; f < m->nflex; f++) { if (!m->flex_rigid[f] && m->flex_edgedamping[f]) { mjtNum B = -m->flex_edgedamping[f]; // process edges of this flex - for (int e=m->flex_edgeadr[f]; eflex_edgeadr[f]+m->flex_edgenum[f]; e++) { + for (int e=m->flex_edgeadr[f]; e < m->flex_edgeadr[f]+m->flex_edgenum[f]; e++) { // add sparse or dense if (mj_isSparse(m)) { addJTBJSparse(m, d, d->flexedge_J, &B, 1, e, diff --git a/src/engine/engine_forward.c b/src/engine/engine_forward.c index c68ed24a..98fa76ed 100644 --- a/src/engine/engine_forward.c +++ b/src/engine/engine_forward.c @@ -215,7 +215,7 @@ void mj_fwdVelocity(const mjModel* m, mjData* d) { // returns the next act given the current act_dot, after clamping static mjtNum nextActivation(const mjModel* m, const mjData* d, - int actuator_id, int act_adr, mjtNum act_dot) { + int actuator_id, int act_adr, mjtNum act_dot) { mjtNum act = d->act[act_adr]; if (m->actuator_dyntype[actuator_id] == mjDYN_FILTEREXACT) { @@ -569,7 +569,7 @@ void mj_solCG_island_multithreaded(const mjModel* m, mjData* d) { mj_markStack(d); // allocate array of arguments to be passed to threads mjSolIslandArgs* sol_cg_island_args = - mj_stackAllocByte(d, sizeof(mjSolIslandArgs) * d->nisland, _Alignof(mjSolIslandArgs)); + mj_stackAllocByte(d, sizeof(mjSolIslandArgs) * d->nisland, _Alignof(mjSolIslandArgs)); mjTask* tasks = mj_stackAllocByte(d, sizeof(mjTask) * d->nisland, _Alignof(mjTask)); for (int island = 0; island < d->nisland; ++island) { diff --git a/src/engine/engine_io.c b/src/engine/engine_io.c index 3e2a0ba8..773a20f4 100644 --- a/src/engine/engine_io.c +++ b/src/engine/engine_io.c @@ -444,19 +444,16 @@ static int safeAddToBufferSize(intptr_t* offset, size_t* nbuffer, // allocate and initialize mjModel structure mjModel* mj_makeModel( - int nq, int nv, int nu, int na, int nbody, int nbvh, int nbvhstatic, - int nbvhdynamic, int njnt, int ngeom, int nsite, int ncam, int nlight, - int nflex, int nflexvert, int nflexedge, int nflexelem, int nflexelemdata, - int nflexshelldata, int nflexevpair, int nflextexcoord, int nmesh, - int nmeshvert, int nmeshnormal, int nmeshtexcoord, int nmeshface, - int nmeshgraph, int nskin, int nskinvert, int nskintexvert, int nskinface, - int nskinbone, int nskinbonevert, int nhfield, int nhfielddata, int ntex, - int ntexdata, int nmat, int npair, int nexclude, int neq, int ntendon, - int nwrap, int nsensor, int nnumeric, int nnumericdata, int ntext, - int ntextdata, int ntuple, int ntupledata, int nkey, int nmocap, - int nplugin, int npluginattr, int nuser_body, int nuser_jnt, int nuser_geom, - int nuser_site, int nuser_cam, int nuser_tendon, int nuser_actuator, - int nuser_sensor, int nnames, int npaths) { + int nq, int nv, int nu, int na, int nbody, int nbvh, int nbvhstatic, int nbvhdynamic, int njnt, + int ngeom, int nsite, int ncam, int nlight, int nflex, int nflexvert, int nflexedge, + int nflexelem, int nflexelemdata, int nflexshelldata, int nflexevpair, int nflextexcoord, + int nmesh, int nmeshvert, int nmeshnormal, int nmeshtexcoord, int nmeshface, int nmeshgraph, + int nskin, int nskinvert, int nskintexvert, int nskinface, int nskinbone, int nskinbonevert, + int nhfield, int nhfielddata, int ntex, int ntexdata, int nmat, int npair, int nexclude, int neq, + int ntendon, int nwrap, int nsensor, int nnumeric, int nnumericdata, int ntext, int ntextdata, + int ntuple, int ntupledata, int nkey, int nmocap, int nplugin, int npluginattr, int nuser_body, + int nuser_jnt, int nuser_geom, int nuser_site, int nuser_cam, int nuser_tendon, + int nuser_actuator, int nuser_sensor, int nnames, int npaths) { intptr_t offset = 0; // allocate mjModel @@ -602,21 +599,21 @@ mjModel* mj_copyModel(mjModel* dest, const mjModel* src) { // allocate new model if needed if (!dest) { dest = mj_makeModel( - src->nq, src->nv, src->nu, src->na, src->nbody, src->nbvh, - src->nbvhstatic, src->nbvhdynamic, src->njnt, src->ngeom, src->nsite, - src->ncam, src->nlight, src->nflex, src->nflexvert, src->nflexedge, - src->nflexelem, src->nflexelemdata, src->nflexshelldata, - src->nflexevpair, src->nflextexcoord, src->nmesh, src->nmeshvert, - src->nmeshnormal, src->nmeshtexcoord, src->nmeshface, src->nmeshgraph, - src->nskin, src->nskinvert, src->nskintexvert, src->nskinface, - src->nskinbone, src->nskinbonevert, src->nhfield, src->nhfielddata, - src->ntex, src->ntexdata, src->nmat, src->npair, src->nexclude, - src->neq, src->ntendon, src->nwrap, src->nsensor, src->nnumeric, - src->nnumericdata, src->ntext, src->ntextdata, src->ntuple, - src->ntupledata, src->nkey, src->nmocap, src->nplugin, src->npluginattr, - src->nuser_body, src->nuser_jnt, src->nuser_geom, src->nuser_site, - src->nuser_cam, src->nuser_tendon, src->nuser_actuator, - src->nuser_sensor, src->nnames, src->npaths); + src->nq, src->nv, src->nu, src->na, src->nbody, src->nbvh, + src->nbvhstatic, src->nbvhdynamic, src->njnt, src->ngeom, src->nsite, + src->ncam, src->nlight, src->nflex, src->nflexvert, src->nflexedge, + src->nflexelem, src->nflexelemdata, src->nflexshelldata, + src->nflexevpair, src->nflextexcoord, src->nmesh, src->nmeshvert, + src->nmeshnormal, src->nmeshtexcoord, src->nmeshface, src->nmeshgraph, + src->nskin, src->nskinvert, src->nskintexvert, src->nskinface, + src->nskinbone, src->nskinbonevert, src->nhfield, src->nhfielddata, + src->ntex, src->ntexdata, src->nmat, src->npair, src->nexclude, + src->neq, src->ntendon, src->nwrap, src->nsensor, src->nnumeric, + src->nnumericdata, src->ntext, src->ntextdata, src->ntuple, + src->ntupledata, src->nkey, src->nmocap, src->nplugin, src->npluginattr, + src->nuser_body, src->nuser_jnt, src->nuser_geom, src->nuser_site, + src->nuser_cam, src->nuser_tendon, src->nuser_actuator, + src->nuser_sensor, src->nnames, src->npaths); } if (!dest) { mjERROR("failed to make mjModel. Invalid sizes."); @@ -1333,8 +1330,8 @@ static inline void* stackallocinternal(mjData* d, mjStackInfo* stack_info, size_ char* prev_pstack_ptr = (char*)(stack_info->top); size_t prev_misalign = (uintptr_t)prev_pstack_ptr % _Alignof(size_t); size_t* prev_usage_ptr = - (size_t*)(prev_pstack_ptr + - (prev_misalign ? _Alignof(size_t) - prev_misalign : 0)); + (size_t*)(prev_pstack_ptr + + (prev_misalign ? _Alignof(size_t) - prev_misalign : 0)); ASAN_UNPOISON_MEMORY_REGION(prev_usage_ptr, sizeof(size_t)); usage = current_alloc_usage + *prev_usage_ptr; ASAN_POISON_MEMORY_REGION(prev_usage_ptr, sizeof(size_t)); @@ -1343,7 +1340,7 @@ static inline void* stackallocinternal(mjData* d, mjStackInfo* stack_info, size_ // store new stack usage in the red zone size_t misalign = new_top_ptr % _Alignof(size_t); size_t* usage_ptr = - (size_t*)(new_top_ptr + (misalign ? _Alignof(size_t) - misalign : 0)); + (size_t*)(new_top_ptr + (misalign ? _Alignof(size_t) - misalign : 0)); ASAN_UNPOISON_MEMORY_REGION(usage_ptr, sizeof(size_t)); *usage_ptr = usage; ASAN_POISON_MEMORY_REGION(usage_ptr, sizeof(size_t)); @@ -1403,7 +1400,7 @@ __attribute__((always_inline)) static inline void markstackinternal(mjData* d, mjStackInfo* stack_info) { size_t top_old = stack_info->top; mjStackFrame* s = - (mjStackFrame*) stackallocinternal(d, stack_info, sizeof(mjStackFrame), _Alignof(mjStackFrame)); + (mjStackFrame*) stackallocinternal(d, stack_info, sizeof(mjStackFrame), _Alignof(mjStackFrame)); s->pbase = stack_info->stack_base; s->pstack = top_old; #ifdef ADDRESS_SANITIZER @@ -1447,8 +1444,8 @@ static inline void freestackinternal(mjStackInfo* stack_info) { #define mjSYMBOLIZELEN 256 char dbginfo[mjSYMBOLIZELEN]; __sanitizer_symbolize_pc( - s->pc, "mj_markStack %F at %S has no corresponding mj_freeStack", - dbginfo, sizeof(dbginfo)); + s->pc, "mj_markStack %F at %S has no corresponding mj_freeStack", + dbginfo, sizeof(dbginfo)); dbginfo[mjSYMBOLIZELEN - 1] = '\0'; mjERROR("%s", dbginfo); #undef mjSYMBOLIZELEN @@ -1584,7 +1581,7 @@ static void _resetData(const mjModel* m, mjData* d, unsigned char debug_value) { mju_zero(d->qvel, m->nv); mju_zero(d->act, m->na); mju_zero(d->ctrl, m->nu); - for (int i=0; ineq; i++) d->eq_active[i] = m->eq_active0[i]; + for (int i=0; i < m->neq; i++) d->eq_active[i] = m->eq_active0[i]; mju_zero(d->qfrc_applied, m->nv); mju_zero(d->xfrc_applied, 6*m->nbody); mju_zero(d->qacc, m->nv); @@ -1966,7 +1963,7 @@ const char* mj_validateReferences(const mjModel* m) { if (m->geom_dataid[i] >= m->nhfield || m->geom_dataid[i] < -1) { return "Invalid model: geom_dataid out of bounds."; } - } else if ((m->geom_type[i]==mjGEOM_MESH) || (m->geom_type[i]==mjGEOM_SDF)) { + } else if ((m->geom_type[i] == mjGEOM_MESH) || (m->geom_type[i] == mjGEOM_SDF)) { if (m->geom_dataid[i] >= m->nmesh || m->geom_dataid[i] < -1) { return "Invalid model: geom_dataid out of bounds."; } diff --git a/src/engine/engine_passive.c b/src/engine/engine_passive.c index a5088982..3da589fe 100644 --- a/src/engine/engine_passive.c +++ b/src/engine/engine_passive.c @@ -52,7 +52,7 @@ void mj_passive(const mjModel* m, mjData* d) { stiffness = m->jnt_stiffness[i]; // disabled : nothing to do - if (stiffness==0) { + if (stiffness == 0) { continue; } @@ -102,7 +102,7 @@ void mj_passive(const mjModel* m, mjData* d) { damping = m->flex_edgedamping[f]; // disabled or rigid: nothing to do - if (m->flex_rigid[f] || (stiffness==0 && damping==0)) { + if (m->flex_rigid[f] || (stiffness == 0 && damping == 0)) { continue; } diff --git a/src/engine/engine_print.c b/src/engine/engine_print.c index 413f866a..0d1b15c1 100644 --- a/src/engine/engine_print.c +++ b/src/engine/engine_print.c @@ -362,7 +362,7 @@ void mj_printFormattedModel(const mjModel* m, const char* filename, const char* if (m->nbody) fprintf(fp, "\n"); // BVHs - for (int i=0; inbvh; i++) { + for (int i=0; i < m->nbvh; i++) { fprintf(fp, "\nBVH %d:\n", i); object_class = &m->nbvh; MJMODEL_POINTERS @@ -428,7 +428,7 @@ void mj_printFormattedModel(const mjModel* m, const char* filename, const char* if (m->nlight) fprintf(fp, "\n"); // flexes - for (int i=0; inflex; i++) { + for (int i=0; i < m->nflex; i++) { fprintf(fp, "\nFLEX %d:\n", i); fprintf(fp, " " NAME_FORMAT, "name"); fprintf(fp, " %s\n", m->names + m->name_flexadr[i]); diff --git a/src/engine/engine_ray.c b/src/engine/engine_ray.c index 2dc60250..4c08badc 100644 --- a/src/engine/engine_ray.c +++ b/src/engine/engine_ray.c @@ -844,15 +844,15 @@ mjtNum mju_rayFlex(const mjModel* m, const mjData* d, int flex_layer, mjtByte fl // compute bounding box mjtNum box[3][2] = {{0, 0}, {0, 0}, {0, 0}}; mjtNum* vert = d->flexvert_xpos + 3*m->flex_vertadr[flexid]; - for (int i=0; iflex_vertnum[flexid]; i++) { - for (int j=0; j<3; j++) { + for (int i=0; i < m->flex_vertnum[flexid]; i++) { + for (int j=0; j < 3; j++) { // update minimum along side j - if (box[j][0]>vert[3*i+j] || i==0) { + if (box[j][0] > vert[3*i+j] || i == 0) { box[j][0] = vert[3*i+j]; } // update maximum along side j - if (box[j][1]flex_radius[flexid]; - for (int j=0; j<3; j++) { + for (int j=0; j < 3; j++) { box[j][0] -= radius; box[j][1] += radius; } // construct box geom mjtNum pos[3], size[3], mat[9] = {1, 0, 0, 0, 1, 0, 0, 0, 1}; - for (int j=0; j<3; j++) { + for (int j=0; j < 3; j++) { pos[j] = 0.5*(box[j][0]+box[j][1]); size[j] = 0.5*(box[j][1]-box[j][0]); } // apply bounding-box filter - if (ray_box(pos, mat, size, pnt, vec, NULL)<0) { + if (ray_box(pos, mat, size, pnt, vec, NULL) < 0) { return -1; } // construct basis vectors of normal plane mjtNum b0[3] = {1, 1, 1}, b1[3]; - if (mju_abs(vec[0])>=mju_abs(vec[1]) && mju_abs(vec[0])>=mju_abs(vec[2])) { + if (mju_abs(vec[0]) >= mju_abs(vec[1]) && mju_abs(vec[0]) >= mju_abs(vec[2])) { b0[0] = 0; - } else if (mju_abs(vec[1])>=mju_abs(vec[2])) { + } else if (mju_abs(vec[1]) >= mju_abs(vec[2])) { b0[1] = 0; } else { b0[2] = 0; @@ -895,9 +895,9 @@ mjtNum mju_rayFlex(const mjModel* m, const mjData* d, int flex_layer, mjtByte fl mjtNum x = -1; // check edges if rendered, or if skin - if (flg_edge || (dim>1 && flg_skin)) { - for (int e=m->flex_edgeadr[flexid]; - eflex_edgeadr[flexid]+m->flex_edgenum[flexid]; e++) { + if (flg_edge || (dim > 1 && flg_skin)) { + int edge_end = m->flex_edgeadr[flexid]+m->flex_edgenum[flexid]; + for (int e=m->flex_edgeadr[flexid]; e < edge_end; e++) { // get vertices for this edge mjtNum* v1 = d->flexvert_xpos + 3*(m->flex_vertadr[flexid]+m->flex_edge[2*e]); mjtNum* v2 = d->flexvert_xpos + 3*(m->flex_vertadr[flexid]+m->flex_edge[2*e+1]); @@ -916,7 +916,7 @@ mjtNum mju_rayFlex(const mjModel* m, const mjData* d, int flex_layer, mjtByte fl mjtNum sol = mju_rayGeom(pos, mat, size, pnt, vec, mjGEOM_CAPSULE); // update - if (sol>=0 && (x<0 || sol= 0 && (x < 0 || sol < x)) { x = sol; // construct intersection point @@ -935,8 +935,8 @@ mjtNum mju_rayFlex(const mjModel* m, const mjData* d, int flex_layer, mjtByte fl } // check vertices if rendered (and edges not checked) - else if (flg_vert && !(dim>1 && flg_skin)) { - for (int v=0; vflex_vertnum[flexid]; v++) { + else if (flg_vert && !(dim > 1 && flg_skin)) { + for (int v=0; v < m->flex_vertnum[flexid]; v++) { // get vertex mjtNum* vpos = d->flexvert_xpos + 3*(m->flex_vertadr[flexid] + v); @@ -947,7 +947,7 @@ mjtNum mju_rayFlex(const mjModel* m, const mjData* d, int flex_layer, mjtByte fl mjtNum sol = mju_rayGeom(vpos, NULL, size, pnt, vec, mjGEOM_SPHERE); // update - if (sol>=0 && (x<0 || sol= 0 && (x < 0 || sol < x)) { x = sol; *vertid = v; } @@ -955,11 +955,11 @@ mjtNum mju_rayFlex(const mjModel* m, const mjData* d, int flex_layer, mjtByte fl } // check faces if rendered - if (dim>1 && (flg_face || flg_skin)) { - for (int e=0; eflex_elemnum[flexid]; e++) { + if (dim > 1 && (flg_face || flg_skin)) { + for (int e=0; e < m->flex_elemnum[flexid]; e++) { // skip if 3D element is not visible int elayer = m->flex_elemlayer[m->flex_elemadr[flexid]+e]; - if (dim==3 && ((flg_skin && elayer>0) || (!flg_skin && elayer!=flex_layer))) { + if (dim == 3 && ((flg_skin && elayer > 0) || (!flg_skin && elayer != flex_layer))) { continue; } @@ -968,22 +968,22 @@ mjtNum mju_rayFlex(const mjModel* m, const mjData* d, int flex_layer, mjtByte fl mjtNum* v1 = d->flexvert_xpos + 3*(m->flex_vertadr[flexid] + edata[0]); mjtNum* v2 = d->flexvert_xpos + 3*(m->flex_vertadr[flexid] + edata[1]); mjtNum* v3 = d->flexvert_xpos + 3*(m->flex_vertadr[flexid] + edata[2]); - mjtNum* v4 = dim==2 ? NULL : d->flexvert_xpos + 3*(m->flex_vertadr[flexid] + edata[3]); + mjtNum* v4 = dim == 2 ? NULL : d->flexvert_xpos + 3*(m->flex_vertadr[flexid] + edata[3]); mjtNum* vptr[4][3] = {{v1, v2, v3}, {v1, v2, v4}, {v1, v3, v4}, {v2, v3, v4}}; int vid[4][3] = {{0, 1, 2}, {0, 1, 3}, {0, 2, 3}, {1, 2, 3}}; // process triangles of this element - for (int i=0; i<(dim==2?1:4); i++) { + for (int i=0; i < (dim == 2?1:4); i++) { // copy vertices into triangle representation mjtNum v[3][3]; - for (int j=0; j<3; j++) + for (int j=0; j < 3; j++) mju_copy3(v[j], vptr[i][j]); // intersect ray with triangle mjtNum sol = ray_triangle(v, pnt, vec, b0, b1); // update - if (sol>=0 && (x<0 || sol= 0 && (x < 0 || sol < x)) { x = sol; // construct intersection point @@ -996,9 +996,9 @@ mjtNum mju_rayFlex(const mjModel* m, const mjData* d, int flex_layer, mjtByte fl mju_dist3(v[1], intersect), mju_dist3(v[2], intersect) }; - if (dist[0]<=dist[1] && dist[0]<=dist[2]) { + if (dist[0] <= dist[1] && dist[0] <= dist[2]) { *vertid = edata[vid[i][0]]; - } else if (dist[1]<=dist[2]){ + } else if (dist[1] <= dist[2]){ *vertid = edata[vid[i][1]]; } else { *vertid = edata[vid[i][2]]; diff --git a/src/engine/engine_sensor.c b/src/engine/engine_sensor.c index e7e02bf9..f2fb29a6 100644 --- a/src/engine/engine_sensor.c +++ b/src/engine/engine_sensor.c @@ -208,8 +208,8 @@ static void cam_project(mjtNum sensordata[2], const mjtNum target_xpos[3], rotation[1][1] = 1; rotation[2][2] = 1; rotation[3][3] = 1; - for (int i=0; i<3; i++) { - for (int j=0; j<3; j++) { + for (int i=0; i < 3; i++) { + for (int j=0; j < 3; j++) { rotation[i][j] = cam_xmat[j*3+i]; } } @@ -237,11 +237,11 @@ static void cam_project(mjtNum sensordata[2], const mjtNum target_xpos[3], // projection matrix (3x4): product of all 4 matrices mjtNum proj[3][4] = {0}; - for (int i=0; i<3; i++) { - for (int j=0; j<3; j++) { - for (int k=0; k<4; k++) { - for (int l=0; l<4; l++) { - for (int n=0; n<4; n++) { + for (int i=0; i < 3; i++) { + for (int j=0; j < 3; j++) { + for (int k=0; k < 4; k++) { + for (int l=0; l < 4; l++) { + for (int n=0; n < 4; n++) { proj[i][n] += image[i][j] * focal[j][k] * rotation[k][l] * translation[l][n]; } } @@ -256,10 +256,10 @@ static void cam_project(mjtNum sensordata[2], const mjtNum target_xpos[3], // project world coordinates into pixel space, see: // https://en.wikipedia.org/wiki/3D_projection#Mathematical_formula mjtNum pixel_coord_hom[3] = {0}; - for (int i=0; i<3; i++) { - for (int j=0; j<4; j++) { - pixel_coord_hom[i] += proj[i][j] * pos_hom[j]; - } + for (int i=0; i < 3; i++) { + for (int j=0; j < 4; j++) { + pixel_coord_hom[i] += proj[i][j] * pos_hom[j]; + } } // avoid dividing by tiny numbers @@ -716,8 +716,8 @@ void mj_sensorAcc(const mjModel* m, mjData* d) { // contact pointer, contacting bodies (-1 for flex) con = d->contact + j; int conbody[2]; - for (int k=0; k<2; k++) { - conbody[k] = (con->geom[k]>=0) ? m->geom_bodyid[con->geom[k]] : -1; + for (int k=0; k < 2; k++) { + conbody[k] = (con->geom[k] >= 0) ? m->geom_bodyid[con->geom[k]] : -1; } // select contacts involving sensorized body @@ -950,14 +950,14 @@ void mj_energyPos(const mjModel* m, mjData* d) { // add flex-level springs if (!mjDISABLED(mjDSBL_PASSIVE)) { - for (int i=0; inflex; i++) { + for (int i=0; i < m->nflex; i++) { stiffness = m->flex_edgestiffness[i]; - if (m->flex_rigid[i] || stiffness==0) { + if (m->flex_rigid[i] || stiffness == 0) { continue; } // process edges of this flex - for (int e=m->flex_edgeadr[i]; eflex_edgeadr[i]+m->flex_edgenum[i]; e++) { + for (int e=m->flex_edgeadr[i]; e < m->flex_edgeadr[i]+m->flex_edgenum[i]; e++) { mjtNum displacement = m->flexedge_length0[e] - d->flexedge_length[e]; d->energy[0] += 0.5*stiffness*displacement*displacement; } diff --git a/src/engine/engine_setconst.c b/src/engine/engine_setconst.c index 438a9ec3..0e9b5b1f 100644 --- a/src/engine/engine_setconst.c +++ b/src/engine/engine_setconst.c @@ -115,14 +115,14 @@ static void set0(mjModel* m, mjData* d) { // compute body_invweight0 m->body_invweight0[0] = m->body_invweight0[1] = 0.0; - for (int i=1; inbody; i++) { + for (int i=1; i < m->nbody; i++) { // static bodies: zero invweight0 if (m->body_weldid[i] == 0) { m->body_invweight0[2*i] = m->body_invweight0[2*i+1] = 0; } // accelerate simple bodies with no rotations - else if (m->body_simple[i]==2) { + else if (m->body_simple[i] == 2) { mjtNum mass = m->body_mass[i]; if (!mass) { // SHOULD NOT OCCUR mjERROR("moving body %d has 0 mass", i); @@ -147,7 +147,7 @@ static void set0(mjModel* m, mjData* d) { } // compute dof_invweight0 - for (int i=0; injnt; i++) { + for (int i=0; i < m->njnt; i++) { // simple body with no rotations: no off-diagonal inertia if (m->body_simple[m->jnt_bodyid[i]] == 2) { int id = m->jnt_dofadr[i]; @@ -200,14 +200,14 @@ static void set0(mjModel* m, mjData* d) { // compute flexedge_invweight0, tendon_invweight0, actuator_acc0 if (nv) { // compute flexedge_invweight0 - for (int f=0; fnflex; f++) { - for (int i=m->flex_edgeadr[f]; iflex_edgeadr[f]+m->flex_edgenum[f]; i++) { + for (int f=0; f < m->nflex; f++) { + for (int i=m->flex_edgeadr[f]; i < m->flex_edgeadr[f]+m->flex_edgenum[f]; i++) { // bodies connected by edge int b1 = m->flex_vertbodyid[m->flex_vertadr[f] + m->flex_edge[2*i]]; int b2 = m->flex_vertbodyid[m->flex_vertadr[f] + m->flex_edge[2*i+1]]; // accelerate edges that connect simple bodies with no rotations - if (m->body_simple[b1]==2 && m->body_simple[b2]==2) { + if (m->body_simple[b1] == 2 && m->body_simple[b2] == 2) { m->flexedge_invweight0[i] = (1/m->body_mass[b1] + 1/m->body_mass[b2])/2; } @@ -217,7 +217,7 @@ static void set0(mjModel* m, mjData* d) { if (mj_isSparse(m)) { mju_zero(tmp, nv); int end = d->flexedge_J_rowadr[i] + d->flexedge_J_rownnz[i]; - for (int j=d->flexedge_J_rowadr[i]; jflexedge_J_rowadr[i]; j < end; j++) { tmp[d->flexedge_J_colind[j]] = d->flexedge_J[j]; } } else { @@ -232,7 +232,7 @@ static void set0(mjModel* m, mjData* d) { } // compute tendon_invweight0 - for (int i=0; intendon; i++) { + for (int i=0; i < m->ntendon; i++) { // make dense vector into tmp if (mj_isSparse(m)) { mju_zero(tmp, nv); @@ -422,8 +422,8 @@ static void setStat(mjModel* m, mjData* d) { } // adjust body size for flex edges involving body - for (int f=0; fnflex; f++) { - for (int e=m->flex_edgeadr[f]; eflex_edgeadr[f]+m->flex_edgenum[f]; e++) { + for (int f=0; f < m->nflex; f++) { + for (int e=m->flex_edgeadr[f]; e < m->flex_edgeadr[f]+m->flex_edgenum[f]; e++) { int b1 = m->flex_vertbodyid[m->flex_vertadr[f]+m->flex_edge[2*e]]; int b2 = m->flex_vertbodyid[m->flex_vertadr[f]+m->flex_edge[2*e+1]]; diff --git a/src/engine/engine_support.c b/src/engine/engine_support.c index fa19d68f..ceb3e2c3 100644 --- a/src/engine/engine_support.c +++ b/src/engine/engine_support.c @@ -100,22 +100,22 @@ const char* mjTIMERSTRING[mjNTIMER]= { // return size of a single state element static inline int mj_stateElemSize(const mjModel* m, mjtState spec) { switch (spec) { - case mjSTATE_TIME: return 1; - case mjSTATE_QPOS: return m->nq; - case mjSTATE_QVEL: return m->nv; - case mjSTATE_ACT: return m->na; - case mjSTATE_WARMSTART: return m->nv; - case mjSTATE_CTRL: return m->nu; - case mjSTATE_QFRC_APPLIED: return m->nv; - case mjSTATE_XFRC_APPLIED: return 6*m->nbody; - case mjSTATE_EQ_ACTIVE: return m->neq; // mjtByte, stored as mjtNum in state vector - case mjSTATE_MOCAP_POS: return 3*m->nmocap; - case mjSTATE_MOCAP_QUAT: return 4*m->nmocap; - case mjSTATE_USERDATA: return m->nuserdata; - case mjSTATE_PLUGIN: return m->npluginstate; - default: - mjERROR("invalid state element %u", spec); - return 0; + case mjSTATE_TIME: return 1; + case mjSTATE_QPOS: return m->nq; + case mjSTATE_QVEL: return m->nv; + case mjSTATE_ACT: return m->na; + case mjSTATE_WARMSTART: return m->nv; + case mjSTATE_CTRL: return m->nu; + case mjSTATE_QFRC_APPLIED: return m->nv; + case mjSTATE_XFRC_APPLIED: return 6*m->nbody; + case mjSTATE_EQ_ACTIVE: return m->neq; // mjtByte, stored as mjtNum in state vector + case mjSTATE_MOCAP_POS: return 3*m->nmocap; + case mjSTATE_MOCAP_QUAT: return 4*m->nmocap; + case mjSTATE_USERDATA: return m->nuserdata; + case mjSTATE_PLUGIN: return m->npluginstate; + default: + mjERROR("invalid state element %u", spec); + return 0; } } @@ -124,21 +124,21 @@ static inline int mj_stateElemSize(const mjModel* m, mjtState spec) { // return pointer to a single state element static inline mjtNum* mj_stateElemPtr(const mjModel* m, mjData* d, mjtState spec) { switch (spec) { - case mjSTATE_TIME: return &d->time; - case mjSTATE_QPOS: return d->qpos; - case mjSTATE_QVEL: return d->qvel; - case mjSTATE_ACT: return d->act; - case mjSTATE_WARMSTART: return d->qacc_warmstart; - case mjSTATE_CTRL: return d->ctrl; - case mjSTATE_QFRC_APPLIED: return d->qfrc_applied; - case mjSTATE_XFRC_APPLIED: return d->xfrc_applied; - case mjSTATE_MOCAP_POS: return d->mocap_pos; - case mjSTATE_MOCAP_QUAT: return d->mocap_quat; - case mjSTATE_USERDATA: return d->userdata; - case mjSTATE_PLUGIN: return d->plugin_state; - default: - mjERROR("invalid state element %u", spec); - return NULL; + case mjSTATE_TIME: return &d->time; + case mjSTATE_QPOS: return d->qpos; + case mjSTATE_QVEL: return d->qvel; + case mjSTATE_ACT: return d->act; + case mjSTATE_WARMSTART: return d->qacc_warmstart; + case mjSTATE_CTRL: return d->ctrl; + case mjSTATE_QFRC_APPLIED: return d->qfrc_applied; + case mjSTATE_XFRC_APPLIED: return d->xfrc_applied; + case mjSTATE_MOCAP_POS: return d->mocap_pos; + case mjSTATE_MOCAP_QUAT: return d->mocap_quat; + case mjSTATE_USERDATA: return d->userdata; + case mjSTATE_PLUGIN: return d->plugin_state; + default: + mjERROR("invalid state element %u", spec); + return NULL; } } @@ -248,7 +248,7 @@ int mj_mergeChain(const mjModel* m, int* chain, int b1, int b2) { } // neither body is movable: empty chain - if (b1==0 && b2==0) { + if (b1 == 0 && b2 == 0) { return 0; } @@ -257,19 +257,19 @@ int mj_mergeChain(const mjModel* m, int* chain, int b1, int b2) { da2 = m->body_dofadr[b2] + m->body_dofnum[b2] - 1; // merge chains - while (da1>=0 || da2>=0) { + while (da1 >= 0 || da2 >= 0) { chain[NV] = mjMAX(da1, da2); - if (da1==chain[NV]) { + if (da1 == chain[NV]) { da1 = m->dof_parentid[da1]; } - if (da2==chain[NV]) { + if (da2 == chain[NV]) { da2 = m->dof_parentid[da2]; } NV++; } // reverse order of chain: make it increasing - for (int i=0; ib2) { + if (b1 > b2) { int tmp = b1; b1 = b2; b2 = tmp; @@ -293,17 +293,17 @@ int mj_mergeChainSimple(const mjModel* m, int* chain, int b1, int b2) { int n1 = m->body_dofnum[b1], n2 = m->body_dofnum[b2]; // both fixed: nothing to do - if (n1==0 && n2==0) { + if (n1 == 0 && n2 == 0) { return 0; } // copy b1 dofs - for (int i=0; ibody_dofadr[b1] + i; } // copy b2 dofs - for (int i=0; ibody_dofadr[b2] + i; } @@ -317,7 +317,7 @@ int mj_bodyChain(const mjModel* m, int body, int* chain) { // simple body if (m->body_simple[body]) { int dofnum = m->body_dofnum[body]; - for (int i=0; ibody_dofadr[body] + i; } return dofnum; @@ -331,7 +331,7 @@ int mj_bodyChain(const mjModel* m, int body, int* chain) { } // not movable: empty chain - if (body==0) { + if (body == 0) { return 0; } @@ -340,13 +340,13 @@ int mj_bodyChain(const mjModel* m, int body, int* chain) { int NV = 0; // construct chain from child to parent - while (da>=0) { + while (da >= 0) { chain[NV++] = da; da = m->dof_parentid[da]; } // reverse order of chain: make it increasing - for (int i=0; id = d; array_list->element_size = element_size; @@ -35,7 +35,7 @@ mjArrayList* mju_arrayListCreate(mjData* d, size_t element_size, size_t initial_ // allocate array list buffer array_list->buffer = (void*) mj_stackAllocByte( - d, element_size * initial_capacity, _Alignof(mjtMaxAlign)); + d, element_size * initial_capacity, _Alignof(mjtMaxAlign)); return array_list; } @@ -63,7 +63,7 @@ void mju_arrayListAdd(mjArrayList* array_list, void* element) { if (cursor->next_segment == NULL) { // add a new segment with twice the capacity of the last segment cursor->next_segment = mju_arrayListCreate( - cursor->d, cursor->element_size, 2 * cursor->capacity); + cursor->d, cursor->element_size, 2 * cursor->capacity); } cursor = cursor->next_segment; } diff --git a/src/engine/engine_util_misc.c b/src/engine/engine_util_misc.c index 3b1496b3..e1e126d7 100644 --- a/src/engine/engine_util_misc.c +++ b/src/engine/engine_util_misc.c @@ -630,7 +630,7 @@ static uint32_t _decode(char ch) { // returns number of chars written in buf: 4 * [(ndata + 2) / 3] + 1 size_t mju_encodeBase64(char* buf, const uint8_t* data, size_t ndata) { static const char *table = - "ABCDEFGHIJKLMNOPQRSTUBWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; + "ABCDEFGHIJKLMNOPQRSTUBWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; int i = 0, j = 0; diff --git a/src/engine/engine_util_sparse.c b/src/engine/engine_util_sparse.c index e86247bd..6a804ac2 100644 --- a/src/engine/engine_util_sparse.c +++ b/src/engine/engine_util_sparse.c @@ -379,19 +379,19 @@ void mju_addToSparseInc(mjtNum* dst, const mjtNum* src, int adrs = 0, adrd = 0, inds = indsrc[0], indd = inddst[0]; while (1) { // common non-zero index - if (inds==indd) { + if (inds == indd) { // add dst[adrd] += src[adrs]; // advance src - if (++adrsflex_dim[f]==0) { + if (m->flex_dim[f] == 0) { scn->flexfacenum[f] = 0; } // 2D: 2*fragments + 2*elements - else if (m->flex_dim[f]==2) { - scn->flexfacenum[f] = 2*m->flex_shellnum[f] + 2*m->flex_elemnum[f]; + else if (m->flex_dim[f] == 2) { + scn->flexfacenum[f] = 2*m->flex_shellnum[f] + 2*m->flex_elemnum[f]; } // 3D: max(fragments, 4*maxlayer) @@ -187,8 +187,8 @@ void mjv_makeScene(const mjModel* m, mjvScene* scn, int maxgeom) { while (nlayer) { // count elements in this layer nlayer = 0; - for (int e=0; eflex_elemnum[f]; e++) { - if (m->flex_elemlayer[m->flex_elemadr[f]+e]==layer) { + for (int e=0; e < m->flex_elemnum[f]; e++) { + if (m->flex_elemlayer[m->flex_elemadr[f]+e] == layer) { nlayer++; } } @@ -234,8 +234,8 @@ void mjv_makeScene(const mjModel* m, mjvScene* scn, int maxgeom) { memcpy(scn->flexedge, m->flex_edge, 2*m->nflexedge*sizeof(int)); // compute flexfaceadr - for (int f=0; fflexfaceadr[f] = f==0 ? 0 : scn->flexfaceadr[f-1]+scn->flexfacenum[f-1]; + for (int f=0; f < nflex; f++) { + scn->flexfaceadr[f] = f == 0 ? 0 : scn->flexfaceadr[f-1]+scn->flexfacenum[f-1]; } } diff --git a/src/engine/engine_vis_interact.c b/src/engine/engine_vis_interact.c index 0c4a14ef..6eacc958 100644 --- a/src/engine/engine_vis_interact.c +++ b/src/engine/engine_vis_interact.c @@ -546,7 +546,7 @@ void mjv_initPerturb(const mjModel* m, mjData* d, const mjvScene* scn, mjvPertur pert->localmass = 3 / mju_max(invmass, mjMINVAL); // scale localmass with flex average number of edges per vertex - if (pert->flexselect>=0 && !m->flex_rigid[pert->flexselect]) { + if (pert->flexselect >= 0 && !m->flex_rigid[pert->flexselect]) { pert->localmass *= (2.0*m->flex_edgenum[pert->flexselect]) / (mjtNum)m->flex_vertnum[pert->flexselect]; } @@ -773,7 +773,7 @@ int mjv_select(const mjModel* m, const mjData* d, const mjvOption* vopt, *flexid = -1; if (vopt->flags[mjVIS_FLEXVERT] || vopt->flags[mjVIS_FLEXEDGE] || vopt->flags[mjVIS_FLEXFACE] || vopt->flags[mjVIS_FLEXSKIN]) { - for (int i=0; inflex; i++) { + for (int i=0; i < m->nflex; i++) { // process one flex int vertid; mjtNum newdist = mju_rayFlex(m, d, vopt->flex_layer, @@ -782,7 +782,7 @@ int mjv_select(const mjModel* m, const mjData* d, const mjvOption* vopt, i, pos, ray, &vertid); // update if closer intersection found - if (newdist>=0 && (newdist= 0 && (newdist < flexdist || flexdist < 0)) { flexdist = newdist; flexbodyid = m->flex_vertbodyid[m->flex_vertadr[i] + vertid]; *flexid = i; @@ -842,9 +842,9 @@ int mjv_select(const mjModel* m, const mjData* d, const mjvOption* vopt, // find smallest non-negative distance mjtNum raydist[3] = {geomdist, flexdist, skindist}; int best = -1; - for (int i=0; i<3; i++) { - if (raydist[i]>=0) { - if (best<0 || raydist[best]>raydist[i]) { + for (int i=0; i < 3; i++) { + if (raydist[i] >= 0) { + if (best < 0 || raydist[best] > raydist[i]) { best = i; } } diff --git a/src/engine/engine_vis_visualize.c b/src/engine/engine_vis_visualize.c index 37325336..f86f92ed 100644 --- a/src/engine/engine_vis_visualize.c +++ b/src/engine/engine_vis_visualize.c @@ -148,9 +148,9 @@ static void addContactGeom(const mjModel* m, mjData* d, const mjtByte* flags, // label contacting geom names or ids if (vopt->label == mjLABEL_CONTACTPOINT) { char contactlabel[2][48]; - for (int k=0; k<2; k++) { + for (int k=0; k < 2; k++) { // make geom label - if (con->geom[k]>=0) { + if (con->geom[k] >= 0) { const char* geomname = mj_id2name(m, mjOBJ_GEOM, con->geom[k]); if (geomname) { mjSNPRINTF(contactlabel[k], "%s", geomname); @@ -164,7 +164,7 @@ static void addContactGeom(const mjModel* m, mjData* d, const mjtByte* flags, else { const char* flexname = mj_id2name(m, mjOBJ_FLEX, con->flex[k]); if (flexname) { - if (con->elem[k]>=0) { + if (con->elem[k] >= 0) { mjSNPRINTF(contactlabel[k], "%s.e%d", flexname, con->elem[k]); } else { @@ -172,7 +172,7 @@ static void addContactGeom(const mjModel* m, mjData* d, const mjtByte* flags, } } else { - if (con->elem[k]>=0) { + if (con->elem[k] >= 0) { mjSNPRINTF(contactlabel[k], "f%d.e%d", con->flex[k], con->elem[k]); } else { @@ -265,9 +265,9 @@ static void addContactGeom(const mjModel* m, mjData* d, const mjtByte* flags, // get bodyflex ids int bf[2]; - for (int k=0; k<2; k++) { - bf[k] = (con->geom[k]>=0) ? m->geom_bodyid[con->geom[k]] : - m->nbody + con->flex[k]; + for (int k=0; k < 2; k++) { + bf[k] = (con->geom[k] >= 0) ? m->geom_bodyid[con->geom[k]] : + m->nbody + con->flex[k]; } // make sure arrow points towards bodyflex with higher id @@ -599,7 +599,7 @@ void mjv_addGeoms(const mjModel* m, mjData* d, const mjvOption* vopt, if ((vopt->flags[mjVIS_FLEXVERT] || vopt->flags[mjVIS_FLEXEDGE] || vopt->flags[mjVIS_FLEXFACE] || vopt->flags[mjVIS_FLEXSKIN]) && (category & catmask)) { - for (int i=0; inflex; i++) { + for (int i=0; i < m->nflex; i++) { if (vopt->flexgroup[mjMAX(0, mjMIN(mjNGROUP-1, m->flex_group[i]))]) { START @@ -614,7 +614,7 @@ void mjv_addGeoms(const mjModel* m, mjData* d, const mjvOption* vopt, setMaterial(m, thisgeom, m->flex_matid[i], m->flex_rgba+4*i, vopt->flags); // set texcoord - if (m->flex_texcoordadr[i]>=0) { + if (m->flex_texcoordadr[i] >= 0) { thisgeom->texcoord = 1; } else { @@ -622,17 +622,17 @@ void mjv_addGeoms(const mjModel* m, mjData* d, const mjvOption* vopt, } // glow flex if selected - if (pert->flexselect==i) { + if (pert->flexselect == i) { markselected(&m->vis, thisgeom); } // skip if alpha is 0 - if (thisgeom->rgba[3]==0) { + if (thisgeom->rgba[3] == 0) { continue; } // vopt->label - if (vopt->label==mjLABEL_FLEX) { + if (vopt->label == mjLABEL_FLEX) { makeLabel(m, mjOBJ_FLEX, i, thisgeom->label); } @@ -723,11 +723,11 @@ void mjv_addGeoms(const mjModel* m, mjData* d, const mjvOption* vopt, // flex BVH if (vopt->flags[mjVIS_FLEXBVH]) { float rgba[] = {1, 0, 0, 0.1}; - for (int f=0; fnflex; f++) { + for (int f=0; f < m->nflex; f++) { if (m->flex_bvhnum[f] && vopt->flexgroup[mjMAX(0, mjMIN(mjNGROUP-1, m->flex_group[f]))]) { - for (int i=m->flex_bvhadr[f]; iflex_bvhadr[f]+m->flex_bvhnum[f]; i++) { - int isleaf = m->bvh_child[2*i]==-1 && m->bvh_child[2*i+1]==-1; + for (int i=m->flex_bvhadr[f]; i < m->flex_bvhadr[f]+m->flex_bvhnum[f]; i++) { + int isleaf = m->bvh_child[2*i] == -1 && m->bvh_child[2*i+1] == -1; if (scn->ngeom >= scn->maxgeom) break; if (m->bvh_depth[i] != vopt->bvh_depth) { if (!isleaf || m->bvh_depth[i] > vopt->bvh_depth) { @@ -743,7 +743,7 @@ void mjv_addGeoms(const mjModel* m, mjData* d, const mjvOption* vopt, // b/304453879 : add LINEBOX geom for bounding box visualization START - mjv_initGeom(thisgeom, mjGEOM_BOX, aabb+3, aabb, NULL, rgba); + mjv_initGeom(thisgeom, mjGEOM_BOX, aabb+3, aabb, NULL, rgba); FINISH } } @@ -1351,7 +1351,7 @@ void mjv_addGeoms(const mjModel* m, mjData* d, const mjvOption* vopt, if (m->geom_type[i] == mjGEOM_MESH || m->geom_type[i] == mjGEOM_SDF) { thisgeom->dataid *= 2; if (m->mesh_graphadr[m->geom_dataid[i]] >= 0 && vopt->flags[mjVIS_CONVEXHULL] && - (m->geom_contype[i] || m->geom_conaffinity[i])) { + (m->geom_contype[i] || m->geom_conaffinity[i])) { thisgeom->dataid += 1; } } @@ -1646,7 +1646,7 @@ void mjv_addGeoms(const mjModel* m, mjData* d, const mjvOption* vopt, mju_addToScl3(vfar[3], y, zver[1]); // triangulation and wireframe of the frustum - for (int e=0; e<4; e++) { + for (int e=0; e < 4; e++) { START mju_sub3(x, vfar[e], vnear[e]); mju_sub3(y, vnear[(e+1)%4], vnear[e]); @@ -1839,7 +1839,7 @@ void mjv_addGeoms(const mjModel* m, mjData* d, const mjvOption* vopt, for (int j=0; j < npoints-1; j++) { START - sz[0] = m->tendon_width[i]; + sz[0] = m->tendon_width[i]; // construct geom mjv_connector(thisgeom, mjGEOM_CAPSULE, sz[0], catenary+3*j, catenary+3*j+3); @@ -2300,7 +2300,7 @@ static void makeSmooth(float* _face, float* _normal, mjtNum radius, mjtByte flg_ float* face = _face + 9*nface; float* normal = _normal + 9*nface; int ind[3] = {i0, i1, i2}; - int sign = radius>0 ? 1 : -1; + int sign = radius > 0 ? 1 : -1; // flat shading if (flg_flat) { @@ -2315,7 +2315,7 @@ static void makeSmooth(float* _face, float* _normal, mjtNum radius, mjtByte flg_ mju_normalize3(nrm); // set all vertex normals equal to face normal - for (int k=0; k<3; k++){ + for (int k=0; k < 3; k++){ normal[3*k+0] = (float) (sign*nrm[0]); normal[3*k+1] = (float) (sign*nrm[1]); normal[3*k+2] = (float) (sign*nrm[2]); @@ -2324,7 +2324,7 @@ static void makeSmooth(float* _face, float* _normal, mjtNum radius, mjtByte flg_ // smooth shading else { - for (int k=0; k<3; k++){ + for (int k=0; k < 3; k++){ normal[3*k+0] = (float) (sign*vertnorm[3*ind[k]+0]); normal[3*k+1] = (float) (sign*vertnorm[3*ind[k]+1]); normal[3*k+2] = (float) (sign*vertnorm[3*ind[k]+2]); @@ -2332,7 +2332,7 @@ static void makeSmooth(float* _face, float* _normal, mjtNum radius, mjtByte flg_ } // set positions: vertices offset by radius*normal - for (int k=0; k<3; k++){ + for (int k=0; k < 3; k++){ face[3*k+0] = (float) (vertxpos[3*ind[k]+0] + radius*vertnorm[3*ind[k]+0]); face[3*k+1] = (float) (vertxpos[3*ind[k]+1] + radius*vertnorm[3*ind[k]+1]); face[3*k+2] = (float) (vertxpos[3*ind[k]+2] + radius*vertnorm[3*ind[k]+2]); @@ -2354,13 +2354,13 @@ static void makeSide(float* _face, float* _normal, mjtNum radius, mjtNum v01[3] = {v1[0]-v0[0], v1[1]-v0[1], v1[2]-v0[2]}; mjtNum nrm[3]; mju_cross(nrm, v01, vertnorm+3*i1); - if (radius<0) { + if (radius < 0) { mju_scl3(nrm, nrm, -1); } mju_normalize3(nrm); // set normals - for (int k=0; k<3; k++){ + for (int k=0; k < 3; k++){ normal[3*k+0] = (float) nrm[0]; normal[3*k+1] = (float) nrm[1]; normal[3*k+2] = (float) nrm[2]; @@ -2368,8 +2368,8 @@ static void makeSide(float* _face, float* _normal, mjtNum radius, // set positions int ind[3] = {i0, i1, i1}; - for (int k=0; k<3; k++){ - mjtNum sign = (k==1 ? -1 : +1); + for (int k=0; k < 3; k++){ + mjtNum sign = (k == 1 ? -1 : +1); face[3*k+0] = (float) (vertxpos[3*ind[k]+0] + sign*radius*vertnorm[3*ind[k]+0]); face[3*k+1] = (float) (vertxpos[3*ind[k]+1] + sign*radius*vertnorm[3*ind[k]+1]); face[3*k+2] = (float) (vertxpos[3*ind[k]+2] + sign*radius*vertnorm[3*ind[k]+2]); @@ -2403,39 +2403,39 @@ void mjv_updateActiveFlex(const mjModel* m, mjData* d, mjvScene* scn, const mjvO scn->flexskinopt = opt->flags[mjVIS_FLEXSKIN]; // convert vertex positions from mjtNum to float - for (int v=0; v<3*m->nflexvert; v++) { + for (int v=0; v < 3*m->nflexvert; v++) { scn->flexvert[v] = (float) d->flexvert_xpos[v]; } // construct faces - for (int f=0; fnflex; f++) { + for (int f=0; f < m->nflex; f++) { int dim = m->flex_dim[f]; mjtNum radius = m->flex_radius[f]; mjtByte flg_flat = m->flex_flatskin[f]; const mjtNum* vertxpos = d->flexvert_xpos + 3*m->flex_vertadr[f]; float* face = scn->flexface + 9*scn->flexfaceadr[f]; float* normal = scn->flexnormal + 9*scn->flexfaceadr[f]; - float* texdst = m->flex_texcoordadr[f]>=0 ? - scn->flextexcoord + 6*scn->flexfaceadr[f] : NULL; - const float* texsrc = m->flex_texcoordadr[f]>=0 ? - m->flex_texcoord + 2*m->flex_texcoordadr[f] : NULL; + float* texdst = m->flex_texcoordadr[f] >= 0 ? + scn->flextexcoord + 6*scn->flexfaceadr[f] : NULL; + const float* texsrc = m->flex_texcoordadr[f] >= 0 ? + m->flex_texcoord + 2*m->flex_texcoordadr[f] : NULL; // 1D, or face and skin disabled: no faces - if (dim==1 || (!opt->flags[mjVIS_FLEXFACE] && !opt->flags[mjVIS_FLEXSKIN])) { + if (dim == 1 || (!opt->flags[mjVIS_FLEXFACE] && !opt->flags[mjVIS_FLEXSKIN])) { scn->flexfaceused[f] = 0; } // 2D or 3D face: faces from elements, flat normals, texture else if (!opt->flags[mjVIS_FLEXSKIN]) { int nface = 0; - for (int e=0; eflex_elemnum[f]; e++) { + for (int e=0; e < m->flex_elemnum[f]; e++) { // in 3D, show only elements in selected layer - if (dim==2 || m->flex_elemlayer[m->flex_elemadr[f]+e]==opt->flex_layer) { + if (dim == 2 || m->flex_elemlayer[m->flex_elemadr[f]+e] == opt->flex_layer) { // get element data const int* edata = m->flex_elem + m->flex_elemdataadr[f] + e*(dim+1); // triangles: two faces per element - if (dim==2) { + if (dim == 2) { makeFace(face, normal, radius, vertxpos, nface, edata[0], edata[1], edata[2]); copyTex(texdst, texsrc, nface, edata[0], edata[1], edata[2]); nface++; @@ -2482,27 +2482,27 @@ void mjv_updateActiveFlex(const mjModel* m, mjData* d, mjvScene* scn, const mjvO mju_zero(vertnorm, 3*m->flex_vertnum[f]); // add vertex normals: top element sides in 2D, shell fragments in 3D - if (dim==2) { - for (int e=0; eflex_elemnum[f]; e++) { + if (dim == 2) { + for (int e=0; e < m->flex_elemnum[f]; e++) { const int* edata = m->flex_elem + m->flex_elemdataadr[f] + e*(dim+1); addNormal(vertnorm, vertxpos, edata[0], edata[1], edata[2]); } } else { - for (int s=0; sflex_shellnum[f]; s++) { + for (int s=0; s < m->flex_shellnum[f]; s++) { const int* sdata = m->flex_shell + m->flex_shelldataadr[f] + s*dim; addNormal(vertnorm, vertxpos, sdata[0], sdata[1], sdata[2]); } } // normalize vertex normals - for (int i=0; iflex_vertnum[f]; i++) { + for (int i=0; i < m->flex_vertnum[f]; i++) { mju_normalize3(vertnorm+3*i); } // create faces, offset along smoothed vertex normals, and texcoord int nface = 0; - if (dim==2) { - for (int e=0; eflex_elemnum[f]; e++) { + if (dim == 2) { + for (int e=0; e < m->flex_elemnum[f]; e++) { const int* edata = m->flex_elem + m->flex_elemdataadr[f] + e*(dim+1); makeSmooth(face, normal, radius, flg_flat, vertnorm, vertxpos, nface, edata[0], edata[1], edata[2]); @@ -2514,7 +2514,7 @@ void mjv_updateActiveFlex(const mjModel* m, mjData* d, mjvScene* scn, const mjvO nface++; } } else { - for (int s=0; sflex_shellnum[f]; s++) { + for (int s=0; s < m->flex_shellnum[f]; s++) { const int* sdata = m->flex_shell + m->flex_shelldataadr[f] + s*dim; makeSmooth(face, normal, radius, flg_flat, vertnorm, vertxpos, nface, sdata[0], sdata[1], sdata[2]); @@ -2524,8 +2524,8 @@ void mjv_updateActiveFlex(const mjModel* m, mjData* d, mjvScene* scn, const mjvO } // 2D: close sides using shell fragments - if (dim==2) { - for (int s=0; sflex_shellnum[f]; s++) { + if (dim == 2) { + for (int s=0; s < m->flex_shellnum[f]; s++) { const int* sdata = m->flex_shell + m->flex_shelldataadr[f] + s*dim; makeSide(face, normal, radius, vertnorm, vertxpos, nface, sdata[0], sdata[1]); @@ -2665,10 +2665,10 @@ void mjv_updateActiveSkin(const mjModel* m, mjData* d, mjvScene* scn, const mjvO // normalize normals for (int k=vertadr; k < vertadr+vertnum; k++) { float s = sqrtf( - scn->skinnormal[3*k]*scn->skinnormal[3*k] + - scn->skinnormal[3*k+1]*scn->skinnormal[3*k+1] + - scn->skinnormal[3*k+2]*scn->skinnormal[3*k+2] - ); + scn->skinnormal[3*k+0]*scn->skinnormal[3*k+0] + + scn->skinnormal[3*k+1]*scn->skinnormal[3*k+1] + + scn->skinnormal[3*k+2]*scn->skinnormal[3*k+2] + ); float scl = 1/mjMAX(mjMINVAL, s); scn->skinnormal[3*k] *= scl; From 93d1c3c92e95156fd89bf290d5effcbde1d238f1 Mon Sep 17 00:00:00 2001 From: Yuval Tassa Date: Sun, 15 Oct 2023 07:57:37 -0700 Subject: [PATCH 02/26] Add GitHub link to the docs sidebar PiperOrigin-RevId: 573621667 Change-Id: Iac0fe218267dd8691bc503f5c8ea31c62ba216a9 --- doc/changelog.rst | 27 ++++++++++----------------- doc/conf.py | 6 ++++++ doc/index.rst | 4 ++++ 3 files changed, 20 insertions(+), 17 deletions(-) diff --git a/doc/changelog.rst b/doc/changelog.rst index 1c5cd20f..de8ec530 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -99,8 +99,7 @@ General 12. Added :ref:`mjData.eq_active` user input variable, for enabling/disabling the state of equality constraints. Renamed ``mjModel.eq_active`` to :ref:`mjModel.eq_active0`, which now has the semantic of - "initial value of ``mjData.eq_active``". - Fixes `#876 `__ + "initial value of ``mjData.eq_active``". Fixes :github:issue:`876`. **Migration:** Replace uses of ``mjModel.eq_active`` with ``mjData.eq_active``. @@ -122,7 +121,7 @@ General 19. Added :ref:`ls_iterations` and :ref:`ls_tolerance` options for adjusting linesearch stopping criteria in CG and Newton solvers. These can be useful for performance tuning. 20. Added ``mesh_pos`` and ``mesh_quat`` fields to :ref:`mjModel` to store the normalizing transformation applied to - mesh assets. Fixes `#409 `__ . + mesh assets. Fixes :github:issue:`409`. 21. Added camera :ref:`resolution` attribute and :ref:`camprojection` sensor. If camera resolution is set to positive values, the camera projection sensor will report the location of a target site, projected onto the camera image, in pixel coordinates. @@ -138,8 +137,7 @@ General 23. Implemented reversed Z rendering for better depth precision. An enum :ref:`mjtDepthMap` was added with values ``mjDEPTH_ZERONEAR`` and ``mjDEPTH_ZEROFAR``, which can be used to set the new ``readDepthMap`` attribute in :ref:`mjrContext` to control how the depth returned by :ref:`mjr_readPixels` is mapped from ``znear`` to ``zfar``. - `Contribution `__ by - `Levi Burner `__. + Contribution :github:pull:`978` by `Levi Burner `__. 24. Deleted the code sample ``testxml``. The functionality provided by this utility is implemented in the `WriteReadCompare `__ test. 25. Deleted the code sample ``derivative``. Functionality provided by :ref:`mjd_transitionFD`. @@ -147,10 +145,9 @@ General Python bindings ^^^^^^^^^^^^^^^ -26. Fixed `#870 `__ where calling ``update_scene`` with an invalid - camera name used the default camera. +26. Fixed :github:issue:`870` where calling ``update_scene`` with an invalid camera name used the default camera. 27. Added ``user_scn`` to the :ref:`passive viewer` handle, which allows users to add custom - visualization geoms (`#1023 `__). + visualization geoms (:github:issue:`1023`). 28. Added optional boolean keyword arguments ``show_left_ui`` and ``show_right_ui`` to the functions ``viewer.launch`` and ``viewer.launch_passive``, which allow users to launch a viewer with UI panels hidden. @@ -165,8 +162,7 @@ Simulate :ref:`Python viewer`. State history can be viewed by scrubbing the History slider and (more precisely) with the left and right arrow keys. See screen capture: -30. The ``LOADING...`` label is now shown correctly. - `Contribution `__ by +30. The ``LOADING...`` label is now shown correctly. Contribution :github:pull:`1070` by `Levi Burner `__. Bug fixes @@ -204,13 +200,10 @@ Python bindings 7. The :ref:`passive viewer` handle now exposes ``update_hfield``, ``update_mesh``, and ``update_texture`` methods to allow users to update renderable assets. - (`#812 `_, - `#958 `_, - `#965 `_) -#. Allow a custom keyboard event callback to be specified in the :ref:`passive viewer`. - (`#766 `_) -#. Fix GLFW crash when Python exits while the passive viewer is running. - (`#790 `_) + (Issues :github:issue:`812`, :github:issue:`958`, :github:issue:`965`). +#. Allow a custom keyboard event callback to be specified in the :ref:`passive viewer` + (:github:issue:`766`). +#. Fix GLFW crash when Python exits while the passive viewer is running (:github:issue:`790`). Models ^^^^^^ diff --git a/doc/conf.py b/doc/conf.py index 53c6d9a5..ca6252bc 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -49,9 +49,15 @@ extensions = [ 'sphinx_favicon', 'sphinx_reredirects', 'sphinx_toolbox.collapse', + 'sphinx_toolbox.github', + 'sphinx_toolbox.sidebar_links', 'mujoco_include', ] +# GitHub-related options +github_username = 'google-deepmind' +github_repository = 'mujoco' + # Bibtex references for sphinxcontrib.bibtex bibtex_bibfiles = ['references.bib'] diff --git a/doc/index.rst b/doc/index.rst index e4225fd3..b9556e9f 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -17,3 +17,7 @@ unity models changelog + + +.. sidebar-links:: + :github: From 110ade14356cb99c5aa82e479998fcd2a9d8c4ed Mon Sep 17 00:00:00 2001 From: Alessio Quaglino Date: Mon, 16 Oct 2023 03:02:14 -0700 Subject: [PATCH 03/26] Update Solid and Shell plugins to use FlexComp. PiperOrigin-RevId: 573755821 Change-Id: I3b8d7fb27f0e940038fa9fd2b26ecc746df4f7ac --- doc/XMLreference.rst | 17 +- doc/XMLschema.rst | 36 +- model/plugin/elasticity/flag.xml | 1 - model/plugin/elasticity/flag_flex.xml | 54 + model/plugin/elasticity/floppy_flex.xml | 54 + model/plugin/elasticity/jelly_flex.xml | 56 + model/plugin/elasticity/plate.xml | 1 - model/plugin/elasticity/plate_flex.xml | 53 + model/plugin/elasticity/poncho.xml | 1 - model/plugin/elasticity/poncho_flex.xml | 1427 +++++++++++++++++++++ model/plugin/elasticity/press_flex.xml | 70 + plugin/elasticity/elasticity.cc | 16 - plugin/elasticity/elasticity.h | 23 +- plugin/elasticity/shell.cc | 76 +- plugin/elasticity/shell.h | 7 +- plugin/elasticity/solid.cc | 57 +- plugin/elasticity/solid.h | 7 +- src/engine/engine_collision_driver.c | 6 + src/engine/engine_core_smooth.c | 4 +- src/engine/engine_sensor.c | 4 +- src/user/user_composite.cc | 23 +- src/user/user_flexcomp.cc | 11 +- src/user/user_flexcomp.h | 6 + src/user/user_mesh.cc | 90 +- src/xml/xml_native_reader.cc | 39 +- test/plugin/elasticity/elasticity_test.cc | 26 +- 26 files changed, 1988 insertions(+), 177 deletions(-) create mode 100644 model/plugin/elasticity/flag_flex.xml create mode 100644 model/plugin/elasticity/floppy_flex.xml create mode 100644 model/plugin/elasticity/jelly_flex.xml create mode 100644 model/plugin/elasticity/plate_flex.xml create mode 100644 model/plugin/elasticity/poncho_flex.xml create mode 100644 model/plugin/elasticity/press_flex.xml diff --git a/doc/XMLreference.rst b/doc/XMLreference.rst index a97481a7..e1b78754 100644 --- a/doc/XMLreference.rst +++ b/doc/XMLreference.rst @@ -3765,7 +3765,7 @@ Associate this composite with an :ref:`engine plugin`. Either :at:`plu .. _body-flexcomp-euler: -.. _body-flexcomp-selfcollide: +.. _body-flexcomp-group: .. _body-flexcomp-flatskin: @@ -3820,6 +3820,15 @@ Associate this composite with an :ref:`engine plugin`. Either :at:`plu .. _flex-contact-gap: .. _flexcomp-contact-gap: +.. _flex-contact-internal: +.. _flexcomp-contact-internal: + +.. _flex-contact-selfcollide: +.. _flexcomp-contact-selfcollide: + +.. _flex-contact-activelayers: +.. _flexcomp-contact-activelayers: + .. _flexcomp-pin: .. _flexcomp-pin-id: @@ -3830,6 +3839,12 @@ Associate this composite with an :ref:`engine plugin`. Either :at:`plu .. _flexcomp-pin-gridrange: +.. _flexcomp-plugin: + +.. _flexcomp-plugin-plugin: + +.. _flexcomp-plugin-instance: + .. _deformable: diff --git a/doc/XMLschema.rst b/doc/XMLschema.rst index 0458347c..149ebc74 100644 --- a/doc/XMLschema.rst +++ b/doc/XMLschema.rst @@ -485,19 +485,19 @@ | :ref:`flexcomp | \* | :class: mjcf-attributes | | ` | | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | -| | | | :ref:`name` | :ref:`class` | :ref:`type` | :ref:`dim` | | +| | | | :ref:`name` | :ref:`class` | :ref:`type` | :ref:`group` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | -| | | | :ref:`flatskin` | :ref:`count` | :ref:`spacing` | :ref:`radius` | | +| | | | :ref:`dim` | :ref:`count` | :ref:`spacing` | :ref:`radius` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | | | | | :ref:`rigid` | :ref:`mass` | :ref:`inertiabox` | :ref:`scale` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | | | | | :ref:`file` | :ref:`point` | :ref:`element` | :ref:`texcoord` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | -| | | | :ref:`material` | :ref:`rgba` | :ref:`selfcollide` | :ref:`flatskin` | | +| | | | :ref:`material` | :ref:`rgba` | :ref:`flatskin` | :ref:`pos` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | -| | | | :ref:`pos` | :ref:`quat` | :ref:`axisangle` | :ref:`xyaxes` | | +| | | | :ref:`quat` | :ref:`axisangle` | :ref:`xyaxes` | :ref:`zaxis` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | -| | | | :ref:`zaxis` | :ref:`euler` | | | | +| | | | :ref:`euler` | | | | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | +------------------------------------+----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |_2| flexcomp |br| |_2| |L| | | .. table:: | @@ -517,7 +517,9 @@ | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | | | | | :ref:`friction` | :ref:`solmix` | :ref:`solref` | :ref:`solimp` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | -| | | | :ref:`margin` | :ref:`gap` | | | | +| | | | :ref:`margin` | :ref:`gap` | :ref:`internal` | :ref:`selfcollide` | | +| | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | +| | | | :ref:`activelayers` | | | | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | +------------------------------------+----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |_2| flexcomp |br| |_2| |L| | | .. table:: | @@ -527,6 +529,20 @@ | | | | :ref:`id` | :ref:`range` | :ref:`grid` | :ref:`gridrange` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | +------------------------------------+----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| |_2| flexcomp |br| |_2| |L| | | .. table:: | +| :ref:`plugin | \* | :class: mjcf-attributes | +| ` | | | +| | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | +| | | | :ref:`plugin` | :ref:`instance` | | | | +| | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | ++------------------------------------+----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| |_3| plugin |br| |_3| |L| | | .. table:: | +| :ref:`config | \* | :class: mjcf-attributes | +| ` | | | +| | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | +| | | | :ref:`key` | :ref:`value` | | | | +| | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | ++------------------------------------+----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | mujoco |br| |L| | | *no attributes* | | :ref:`deformable` | | | +------------------------------------+----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -536,9 +552,9 @@ | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | | | | | :ref:`name` | :ref:`group` | :ref:`dim` | :ref:`radius` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | -| | | | :ref:`material` | :ref:`rgba` | :ref:`flatskin` | :ref:`selfcollide` | | +| | | | :ref:`material` | :ref:`rgba` | :ref:`flatskin` | :ref:`body` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | -| | | | :ref:`body` | :ref:`vertex` | :ref:`element` | :ref:`texcoord` | | +| | | | :ref:`vertex` | :ref:`element` | :ref:`texcoord` | | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | +------------------------------------+----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |_2| flex |br| |_2| |L| | | .. table:: | @@ -549,7 +565,9 @@ | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | | | | | :ref:`friction` | :ref:`solmix` | :ref:`solref` | :ref:`solimp` | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | -| | | | :ref:`margin` | :ref:`gap` | | | | +| | | | :ref:`margin` | :ref:`gap` | :ref:`internal` | :ref:`selfcollide` | | +| | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | +| | | | :ref:`activelayers` | | | | | | | | +-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+-----------------------------------------------------------------+ | +------------------------------------+----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |_2| flex |br| |_2| |L| | | .. table:: | diff --git a/model/plugin/elasticity/flag.xml b/model/plugin/elasticity/flag.xml index cfe4b6c1..ad093663 100644 --- a/model/plugin/elasticity/flag.xml +++ b/model/plugin/elasticity/flag.xml @@ -39,7 +39,6 @@ - diff --git a/model/plugin/elasticity/flag_flex.xml b/model/plugin/elasticity/flag_flex.xml new file mode 100644 index 00000000..667a8c36 --- /dev/null +++ b/model/plugin/elasticity/flag_flex.xml @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/model/plugin/elasticity/floppy_flex.xml b/model/plugin/elasticity/floppy_flex.xml new file mode 100644 index 00000000..a8645f2f --- /dev/null +++ b/model/plugin/elasticity/floppy_flex.xml @@ -0,0 +1,54 @@ + + + + + + + + + + + + diff --git a/model/plugin/elasticity/jelly_flex.xml b/model/plugin/elasticity/jelly_flex.xml new file mode 100644 index 00000000..9a0af65d --- /dev/null +++ b/model/plugin/elasticity/jelly_flex.xml @@ -0,0 +1,56 @@ + + + + + + + + + + diff --git a/model/plugin/elasticity/plate.xml b/model/plugin/elasticity/plate.xml index a3eb8b07..24691e05 100644 --- a/model/plugin/elasticity/plate.xml +++ b/model/plugin/elasticity/plate.xml @@ -44,7 +44,6 @@ - diff --git a/model/plugin/elasticity/plate_flex.xml b/model/plugin/elasticity/plate_flex.xml new file mode 100644 index 00000000..b490b3ae --- /dev/null +++ b/model/plugin/elasticity/plate_flex.xml @@ -0,0 +1,53 @@ + + + + + + + + + + diff --git a/model/plugin/elasticity/poncho.xml b/model/plugin/elasticity/poncho.xml index 859bf95d..4a05599e 100644 --- a/model/plugin/elasticity/poncho.xml +++ b/model/plugin/elasticity/poncho.xml @@ -1407,7 +1407,6 @@ - diff --git a/model/plugin/elasticity/poncho_flex.xml b/model/plugin/elasticity/poncho_flex.xml new file mode 100644 index 00000000..d51df2f9 --- /dev/null +++ b/model/plugin/elasticity/poncho_flex.xml @@ -0,0 +1,1427 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/model/plugin/elasticity/press_flex.xml b/model/plugin/elasticity/press_flex.xml new file mode 100644 index 00000000..c2545652 --- /dev/null +++ b/model/plugin/elasticity/press_flex.xml @@ -0,0 +1,70 @@ + + + + + + + + + + + + diff --git a/plugin/elasticity/elasticity.cc b/plugin/elasticity/elasticity.cc index 35c0e0fc..7b1d0d7e 100644 --- a/plugin/elasticity/elasticity.cc +++ b/plugin/elasticity/elasticity.cc @@ -18,7 +18,6 @@ #include #include #include -#include #include #include @@ -47,19 +46,4 @@ bool CheckAttr(const char* name, const mjModel* m, int instance) { return end == value.data() + value.size(); } -mjtNum SquaredDist3(const mjtNum pos1[3], const mjtNum pos2[3]) { - mjtNum dif[3] = {pos1[0]-pos2[0], pos1[1]-pos2[1], pos1[2]-pos2[2]}; - return dif[0]*dif[0] + dif[1]*dif[1] + dif[2]*dif[2]; -} - -void UpdateSquaredLengths(std::vector& len, - const std::vector >& edges, - const mjtNum* x) { - for (int e = 0; e < len.size(); e++) { - const mjtNum* p0 = x + 3*edges[e].first; - const mjtNum* p1 = x + 3*edges[e].second; - len[e] = SquaredDist3(p0, p1); - } -} - } // namespace mujoco::plugin::elasticity diff --git a/plugin/elasticity/elasticity.h b/plugin/elasticity/elasticity.h index 54b0fb14..18444fd9 100644 --- a/plugin/elasticity/elasticity.h +++ b/plugin/elasticity/elasticity.h @@ -31,20 +31,27 @@ struct PairHash } }; +inline mjtNum SquaredDist3(const mjtNum pos1[3], const mjtNum pos2[3]) { + mjtNum dif[3] = {pos1[0]-pos2[0], pos1[1]-pos2[1], pos1[2]-pos2[2]}; + return dif[0]*dif[0] + dif[1]*dif[1] + dif[2]*dif[2]; +} + +inline void UpdateSquaredLengths(std::vector& len, + const std::vector >& edges, + const mjtNum* x) { + for (int e = 0; e < len.size(); e++) { + const mjtNum* p0 = x + 3*edges[e].first; + const mjtNum* p1 = x + 3*edges[e].second; + len[e] = SquaredDist3(p0, p1); + } +} + // copied from mjXUtil void String2Vector(const std::string& txt, std::vector& vec); // reads numeric attributes bool CheckAttr(const char* name, const mjModel* m, int instance); -// Cartesian distance between 3D vectors -mjtNum SquaredDist3(const mjtNum pos1[3], const mjtNum pos2[3]); - -// updates square lengths of edges -void UpdateSquaredLengths(std::vector& len, - const std::vector >& edges, - const mjtNum* x); - } // namespace mujoco::plugin::elasticity #endif // MUJOCO_PLUGIN_ELASTICITY_ELASTICITY_H_ diff --git a/plugin/elasticity/shell.cc b/plugin/elasticity/shell.cc index 8c671436..cf272a04 100644 --- a/plugin/elasticity/shell.cc +++ b/plugin/elasticity/shell.cc @@ -13,13 +13,10 @@ // limitations under the License. #include -#include +#include #include -#include #include #include -#include -#include #include #include #include @@ -29,6 +26,7 @@ #include #include #include +#include "elasticity.h" #include "shell.h" @@ -40,22 +38,6 @@ constexpr int kNumEdges = Stencil2D::kNumEdges; constexpr int kNumVerts = Stencil2D::kNumVerts; constexpr int edge[kNumEdges][2] = {{1, 2}, {2, 0}, {0, 1}}; -// copied from void mjXUtil -void String2Vector(const std::string& txt, std::vector& vec) { - std::stringstream strm(txt); - vec.clear(); - - while (!strm.eof()) { - int num; - strm >> num; - if (strm.fail()) { - break; - } else { - vec.push_back(num); - } - } -} - // cotangent between two edges mjtNum cot(mjtNum* x, int v0, int v1, int v2) { mjtNum normal[3]; @@ -82,28 +64,12 @@ mjtNum ComputeVolume(const mjtNum* x, const int v[kNumVerts]) { return mju_norm3(normal) / 2; } -// reads numeric attributes -bool CheckAttr(const char* name, const mjModel* m, int instance) { - char* end; - std::string value = mj_getPluginConfig(m, instance, name); - value.erase(std::remove_if(value.begin(), value.end(), isspace), value.end()); - strtod(value.c_str(), &end); - return end == value.data() + value.size(); -} - -struct PairHash -{ - template - std::size_t operator() (const std::pair& pair) const { - return std::hash()(pair.first) ^ std::hash()(pair.second); - } -}; - } // namespace // factory function std::optional Shell::Create(const mjModel* m, mjData* d, int instance) { if (CheckAttr("face", m, instance) && + CheckAttr("edge", m, instance) && CheckAttr("poisson", m, instance) && CheckAttr("young", m, instance) && CheckAttr("thickness", m, instance)) { @@ -111,11 +77,10 @@ std::optional Shell::Create(const mjModel* m, mjData* d, int instance) { mjtNum E = strtod(mj_getPluginConfig(m, instance, "young"), nullptr); mjtNum thick = strtod(mj_getPluginConfig(m, instance, "thickness"), nullptr); - mjtNum damp = - strtod(mj_getPluginConfig(m, instance, "damping"), nullptr); - std::vector face; + std::vector face, edge; String2Vector(mj_getPluginConfig(m, instance, "face"), face); - return Shell(m, d, instance, nu, E, damp, thick, face); + String2Vector(mj_getPluginConfig(m, instance, "edge"), edge); + return Shell(m, d, instance, nu, E, thick, face, edge); } else { mju_warning("Invalid parameter specification in shell plugin"); return std::nullopt; @@ -123,13 +88,14 @@ std::optional Shell::Create(const mjModel* m, mjData* d, int instance) { } // create map from triangles to vertices and edges and from edges to vertices -void Shell::CreateStencils(const std::vector& face) { +void Shell::CreateStencils(const std::vector& simplex, + const std::vector& edgeidx) { // populate stencil - nt = face.size() / kNumVerts; + nt = simplex.size() / kNumVerts; elements.resize(nt); for (int t = 0; t < nt; t++) { for (int v = 0; v < kNumVerts; v++) { - elements[t].vertices[v] = face[kNumVerts*t+v]-1; + elements[t].vertices[v] = simplex[kNumVerts*t+v]; } } @@ -162,14 +128,19 @@ void Shell::CreateStencils(const std::vector& face) { elements[t].edges[e] = it->second; flaps[it->second].vertices[3] = v[(edge[e][1]+1) % 3]; } + + if (!edgeidx.empty()) { + assert(elements[t].edges[e] == edgeidx[kNumEdges*t+e]); + } } } } // plugin constructor Shell::Shell(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, - mjtNum damp, mjtNum thick, const std::vector& face) - : damping(damp), thickness(thick) { + mjtNum thick, const std::vector& face, + const std::vector& edgeidx) + : thickness(thick) { // count plugin bodies nv = ne = 0; for (int i = 1; i < m->nbody; i++) { @@ -181,7 +152,7 @@ Shell::Shell(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, } // generate triangles from the vertices - CreateStencils(face); + CreateStencils(face, edgeidx); // material parameters mjtNum mu = E / (2*(1+nu)); @@ -234,10 +205,6 @@ Shell::Shell(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, } void Shell::Compute(const mjModel* m, mjData* d, int instance) { - mjtNum kD = damping / m->opt.timestep; - - // compute bending contribution - mjtNum embedding; for (int e = 0; e < ne; e++) { int* v = flaps[e].vertices; mjtNum force[12] = {0}; @@ -248,8 +215,7 @@ void Shell::Compute(const mjModel* m, mjData* d, int instance) { for (int i = 0; i < StencilFlap::kNumVerts; i++) { for (int j = 0; j < StencilFlap::kNumVerts; j++) { for (int x = 0; x < 3; x++) { - embedding = d->xpos[3*(i0+v[j])+x]*(kD+1) - position[3*v[j]+x]*kD; - force[3*i+x] += bending[16*e+4*i+j] * embedding; + force[3*i+x] += bending[16*e+4*i+j] * d->xpos[3*(i0+v[j])+x]; } } } @@ -275,8 +241,8 @@ void Shell::RegisterPlugin() { plugin.name = "mujoco.elasticity.shell"; plugin.capabilityflags |= mjPLUGIN_PASSIVE; - const char* attributes[] = {"face", "young", "poisson", "damping", - "thickness"}; + const char* attributes[] = {"face", "edge", "young", + "poisson", "thickness"}; plugin.nattribute = sizeof(attributes) / sizeof(attributes[0]); plugin.attributes = attributes; plugin.nstate = +[](const mjModel* m, int instance) { return 0; }; diff --git a/plugin/elasticity/shell.h b/plugin/elasticity/shell.h index 16dc66a5..88a4ae1d 100644 --- a/plugin/elasticity/shell.h +++ b/plugin/elasticity/shell.h @@ -64,14 +64,15 @@ class Shell { std::vector position; // previous-step positions (nv x 3) std::vector bending; // bending Hessian (ne x 16) - mjtNum damping; mjtNum thickness; private: Shell(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, - mjtNum damp, mjtNum thick, const std::vector& face); + mjtNum thick, const std::vector& face, + const std::vector& edgeidx); - void CreateStencils(const std::vector& face); + void CreateStencils(const std::vector& simplex, + const std::vector& edgeidx); }; } // namespace mujoco::plugin::elasticity diff --git a/plugin/elasticity/solid.cc b/plugin/elasticity/solid.cc index 84130bff..b54a4282 100644 --- a/plugin/elasticity/solid.cc +++ b/plugin/elasticity/solid.cc @@ -13,6 +13,7 @@ // limitations under the License. #include +#include #include #include #include @@ -100,15 +101,17 @@ void GradSquaredLengths(mjtNum gradient[kNumEdges][2][3], // factory function std::optional Solid::Create(const mjModel* m, mjData* d, int instance) { if (CheckAttr("face", m, instance) && + CheckAttr("edge", m, instance) && CheckAttr("poisson", m, instance) && CheckAttr("young", m, instance)) { mjtNum nu = strtod(mj_getPluginConfig(m, instance, "poisson"), nullptr); mjtNum E = strtod(mj_getPluginConfig(m, instance, "young"), nullptr); mjtNum damp = strtod(mj_getPluginConfig(m, instance, "damping"), nullptr); - std::vector face; + std::vector face, edge; String2Vector(mj_getPluginConfig(m, instance, "face"), face); - return Solid(m, d, instance, nu, E, damp, face); + String2Vector(mj_getPluginConfig(m, instance, "edge"), edge); + return Solid(m, d, instance, nu, E, damp, face, edge); } else { mju_warning("Invalid parameter specification in solid plugin"); return std::nullopt; @@ -116,13 +119,14 @@ std::optional Solid::Create(const mjModel* m, mjData* d, int instance) { } // create map from tetrahedra to vertices and edges and from edges to vertices -void Solid::CreateStencils(const std::vector& simplex) { +void Solid::CreateStencils(const std::vector& simplex, + const std::vector& edgeidx) { // populate stencil nt = simplex.size() / kNumVerts; elements.resize(nt); for (int t = 0; t < nt; t++) { for (int v = 0; v < kNumVerts; v++) { - elements[t].vertices[v] = simplex[kNumVerts*t+v]-1; + elements[t].vertices[v] = simplex[kNumVerts*t+v]; } } @@ -149,14 +153,19 @@ void Solid::CreateStencils(const std::vector& simplex) { } else { elements[t].edges[e] = it->second; } + + if (!edgeidx.empty()) { + assert(elements[t].edges[e] == edgeidx[kNumEdges*t+e]); + } } } } // plugin constructor Solid::Solid(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, - mjtNum damp, const std::vector& simplex) - : damping(damp) { + mjtNum damp, const std::vector& simplex, + const std::vector& edgeidx) + : f0(-1), damping(damp) { // count plugin bodies nv = ne = 0; for (int i = 1; i < m->nbody; i++) { @@ -167,8 +176,16 @@ Solid::Solid(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, } } + // count flexes + for (int i = 0; i < m->nflex; i++) { + if (m->flex_vertbodyid[m->flex_vertadr[i]] == i0) { + f0 = i; + break; + } + } + // generate tetrahedra from the vertices - CreateStencils(simplex); + CreateStencils(simplex, edgeidx); // allocate arrays metric.assign(kNumEdges*kNumEdges*nt, 0); @@ -238,7 +255,10 @@ Solid::Solid(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, } void Solid::Compute(const mjModel* m, mjData* d, int instance) { - UpdateSquaredLengths(deformed, edges, d->xpos+3*i0); + // update edges if no flex + if (f0 < 0) { + UpdateSquaredLengths(deformed, edges, d->xpos+3*i0); + } // loop over all elements for (int t = 0; t < nt; t++) { @@ -254,11 +274,18 @@ void Solid::Compute(const mjModel* m, mjData* d, int instance) { // compute elongation mjtNum elongation[kNumEdges]; - mjtNum kD = damping / m->opt.timestep; for (int e = 0; e < kNumEdges; e++) { - int idx = elements[t].edges[e]; - elongation[e] = deformed[idx] - reference[idx] + - ( deformed[idx] - previous[idx] ) * kD; + if (f0 < 0) { + int idx = elements[t].edges[e]; + mjtNum kD = damping / m->opt.timestep; + elongation[e] = deformed[idx] - reference[idx] + + ( deformed[idx] - previous[idx] ) * kD; + } else { + int idx = elements[t].edges[e] + m->flex_edgeadr[f0]; + mjtNum deformed = d->flexedge_length[idx]*d->flexedge_length[idx]; + mjtNum reference = m->flexedge_length0[idx]*m->flexedge_length0[idx]; + elongation[e] = deformed - reference; + } } // we now multiply the elongations by the precomputed metric tensor, @@ -289,7 +316,9 @@ void Solid::Compute(const mjModel* m, mjData* d, int instance) { } // update stored lengths - previous = deformed; + if (f0 < 0) { + previous = deformed; + } } @@ -301,7 +330,7 @@ void Solid::RegisterPlugin() { plugin.name = "mujoco.elasticity.solid"; plugin.capabilityflags |= mjPLUGIN_PASSIVE; - const char* attributes[] = {"face", "young", "poisson", "damping"}; + const char* attributes[] = {"face", "edge", "young", "poisson", "damping"}; plugin.nattribute = sizeof(attributes) / sizeof(attributes[0]); plugin.attributes = attributes; plugin.nstate = +[](const mjModel* m, int instance) { return 0; }; diff --git a/plugin/elasticity/solid.h b/plugin/elasticity/solid.h index 7f4ee95d..fcc2bd12 100644 --- a/plugin/elasticity/solid.h +++ b/plugin/elasticity/solid.h @@ -44,6 +44,7 @@ class Solid { static void RegisterPlugin(); + int f0; // index of corresponding flex int i0; // index of first body int nc; // number of cubes in the grid int nv; // number of vertices (bodies) in the solid @@ -64,9 +65,11 @@ class Solid { private: Solid(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, - mjtNum damp, const std::vector& simplex); + mjtNum damp, const std::vector& simplex, + const std::vector& edgeidx); - void CreateStencils(const std::vector& simplex); + void CreateStencils(const std::vector& simplex, + const std::vector& edgeidx); }; } // namespace mujoco::plugin::elasticity diff --git a/src/engine/engine_collision_driver.c b/src/engine/engine_collision_driver.c index 5726e2b7..590f5852 100644 --- a/src/engine/engine_collision_driver.c +++ b/src/engine/engine_collision_driver.c @@ -1814,6 +1814,8 @@ void mj_collideFlexSAP(const mjModel* m, mjData* d, int f) { // test a geom and an elem for collision, add to contact list void mj_collideGeomElem(const mjModel* m, mjData* d, int g, int f, int e) { + TM_START; + mjtNum margin = mj_assignMargin(m, mju_max(m->geom_margin[g], m->flex_margin[f])); int dim = m->flex_dim[f], type = m->geom_type[g]; int num; @@ -1927,6 +1929,9 @@ void mj_collideGeomElem(const mjModel* m, mjData* d, int g, int f, int e) { // move arena pointer back to the end of the contact array resetArena(d); + + // add duration without incrementing counter + TM_ADD(mjTIMER_COL_NARROW); } @@ -1934,6 +1939,7 @@ void mj_collideGeomElem(const mjModel* m, mjData* d, int g, int f, int e) { // test two elems for collision, add to contact list void mj_collideElems(const mjModel* m, mjData* d, int f1, int e1, int f2, int e2) { TM_START; + mjtNum margin = mj_assignMargin(m, mju_max(m->flex_margin[f1], m->flex_margin[f2])); int dim1 = m->flex_dim[f1], dim2 = m->flex_dim[f2]; int num; diff --git a/src/engine/engine_core_smooth.c b/src/engine/engine_core_smooth.c index f083335e..260c41af 100644 --- a/src/engine/engine_core_smooth.c +++ b/src/engine/engine_core_smooth.c @@ -537,9 +537,7 @@ void mj_flex(const mjModel* m, mjData* d) { // compute lengths and Jacobians of edges for (int f=0; f < m->nflex; f++) { // skip if edges cannot generate forces - if (m->flex_rigid[f] || - (m->flex_edgeequality[f] == 0 && - m->flex_edgestiffness[f] == 0 && m->flex_edgedamping[f] == 0)) { + if (m->flex_rigid[f]) { continue; } diff --git a/src/engine/engine_sensor.c b/src/engine/engine_sensor.c index f2fb29a6..29d8b654 100644 --- a/src/engine/engine_sensor.c +++ b/src/engine/engine_sensor.c @@ -948,11 +948,11 @@ void mj_energyPos(const mjModel* m, mjData* d) { } } - // add flex-level springs + // add flex-level springs for dim=1 (dim>1 requires plugins) if (!mjDISABLED(mjDSBL_PASSIVE)) { for (int i=0; i < m->nflex; i++) { stiffness = m->flex_edgestiffness[i]; - if (m->flex_rigid[i] || stiffness == 0) { + if (m->flex_rigid[i] || stiffness == 0 || m->flex_dim[i] > 1) { continue; } diff --git a/src/user/user_composite.cc b/src/user/user_composite.cc index 03de87ca..03c8e9b6 100644 --- a/src/user/user_composite.cc +++ b/src/user/user_composite.cc @@ -370,7 +370,7 @@ bool mjCComposite::MakeParticle(mjCModel* model, mjCBody* body, char* error, int }; for (int s = 0; s < 6; s++) { for (int v = 0; v < 4; v++) { - face.push_back(vert[cube2tets[s][v]]+1); + face.push_back(vert[cube2tets[s][v]]); } } } @@ -388,7 +388,7 @@ bool mjCComposite::MakeParticle(mjCModel* model, mjCBody* body, char* error, int }; for (int s = 0; s < 2; s++) { for (int v = 0; v < 3; v++) { - face.push_back(vert[quad2tri[s][v]]+1); + face.push_back(vert[quad2tri[s][v]]); } } } @@ -398,6 +398,8 @@ bool mjCComposite::MakeParticle(mjCModel* model, mjCBody* body, char* error, int } else { dim = 2; // can only load a surface for now mjXUtil::String2Vector(userface, face); + for (int i=0; iplugin_instance->config_attribs["face"] = userface; + b->plugin_instance->config_attribs["edge"] = ""; // update density if (dim == 2) { @@ -505,8 +508,8 @@ bool mjCComposite::MakeParticle(mjCModel* model, mjCBody* body, char* error, int // create edges for (int i=0; iface.push_back(j*nvert+face[3*i]-1); - skin->face.push_back(j*nvert+face[3*i+(j==0 ? 1 : 2)]-1); - skin->face.push_back(j*nvert+face[3*i+(j==0 ? 2 : 1)]-1); + skin->face.push_back(j*nvert+face[3*i]); + skin->face.push_back(j*nvert+face[3*i+(j==0 ? 1 : 2)]); + skin->face.push_back(j*nvert+face[3*i+(j==0 ? 2 : 1)]); } } diff --git a/src/user/user_flexcomp.cc b/src/user/user_flexcomp.cc index 2cea596d..b082146c 100644 --- a/src/user/user_flexcomp.cc +++ b/src/user/user_flexcomp.cc @@ -65,11 +65,12 @@ mjCFlexcomp::mjCFlexcomp(void) { mjuu_setvec(scale, 1, 1, 1); mass = 1; inertiabox = 0.005; - equality = true; + equality = false; mjuu_setvec(pos, 0, 0, 0); mjuu_setvec(quat, 1, 0, 0, 0); rigid = false; centered = false; + plugin_instance = nullptr; } @@ -453,6 +454,14 @@ bool mjCFlexcomp::Make(mjCModel* model, mjCBody* body, char* error, int error_sz pf->vert[3*i+1] = 0; pf->vert[3*i+2] = 0; } + + // add plugin + if (plugin_instance) { + pb->is_plugin = true; + pb->plugin_name = plugin_name; + pb->plugin_instance = plugin_instance; + pb->plugin_instance_name = plugin_instance_name; + } } } diff --git a/src/user/user_flexcomp.h b/src/user/user_flexcomp.h index 4d6e8742..45201210 100644 --- a/src/user/user_flexcomp.h +++ b/src/user/user_flexcomp.h @@ -85,6 +85,12 @@ class mjCFlexcomp { std::vector used; // is point used by any element (false: skip) std::vector element; // flex elements std::vector texcoord; // vertex texture coordinates + + // plugin support + bool is_plugin; + std::string plugin_name; + std::string plugin_instance_name; + mjCPlugin* plugin_instance; }; #endif // MUJOCO_SRC_USER_USER_FLEXCOMP_H_ diff --git a/src/user/user_mesh.cc b/src/user/user_mesh.cc index 9d5c7092..18d18cba 100644 --- a/src/user/user_mesh.cc +++ b/src/user/user_mesh.cc @@ -18,9 +18,11 @@ #include #include #include +#include #include #include #include +#include #include #include @@ -59,6 +61,7 @@ #include "user/user_model.h" #include "user/user_objects.h" #include "user/user_util.h" +#include "xml/xml_util.h" #include extern "C" { @@ -2157,6 +2160,24 @@ void mjCSkin::LoadSKN(mjResource* resource) { //------------------ class mjCFlex implementation -------------------------------------------------- +// hash function for std::pair +struct PairHash +{ + template + std::size_t operator() (const std::pair& pair) const { + return std::hash()(pair.first) ^ std::hash()(pair.second); + } +}; + +// simplex connectivity +constexpr int kNumEdges[3] = {1, 3, 6}; +constexpr int eledge[3][6][2] = {{{ 0, 1}, {-1, -1}, {-1, -1}, + {-1, -1}, {-1, -1}, {-1, -1}}, + {{ 1, 2}, { 2, 0}, { 0, 1}, + {-1, -1}, {-1, -1}, {-1, -1}}, + {{ 0, 1}, { 1, 2}, { 2, 0}, + { 2, 3}, { 0, 3}, { 1, 3}}}; + // constructor mjCFlex::mjCFlex(mjCModel* _model) { // set model @@ -2216,6 +2237,9 @@ void mjCFlex::Compile(const mjVFS* vfs) { if (vert.size() % 3) { throw mjCError(this, "vert size must be a multiple of 3"); } + if (edgestiffness>0 && dim>1) { + throw mjCError(this, "edge stiffness only available for dim=1, please use elasticity plugins"); + } nelem = (int)elem.size()/(dim+1); // set nvert, rigid, centered; check size @@ -2276,42 +2300,34 @@ void mjCFlex::Compile(const mjVFS* vfs) { throw mjCError(this, "repeated vertex in element"); } } - - // make edges from sorted element - switch (dim) { - case 1: // line - edge.push_back(std::make_pair(el[0], el[1])); - break; - - case 2: // triangle - edge.push_back(std::make_pair(el[0], el[1])); - edge.push_back(std::make_pair(el[1], el[2])); - edge.push_back(std::make_pair(el[0], el[2])); - break; - - case 3: // tetrahedron - edge.push_back(std::make_pair(el[0], el[1])); - edge.push_back(std::make_pair(el[1], el[2])); - edge.push_back(std::make_pair(el[2], el[3])); - edge.push_back(std::make_pair(el[0], el[2])); - edge.push_back(std::make_pair(el[0], el[3])); - edge.push_back(std::make_pair(el[1], el[3])); - break; - } } - // sort edges - std::sort(edge.begin(), edge.end()); + // create edges + std::vector edgeidx(elem.size()*kNumEdges[dim-1]); - // remove repeated edges - std::vector> edge1; - edge1.push_back(edge[0]); - for (int i=1; i<(int)edge.size(); i++) { - if (edge1[edge1.size()-1]!=edge[i]) { - edge1.push_back(edge[i]); + // map from edge vertices to their index in `edges` vector + std::unordered_map, int, PairHash> edge_indices; + + // insert local edges into global vector + for (int f = 0; f < (int)elem.size()/(dim+1); f++) { + int* v = elem.data() + f*(dim+1); + for (int e = 0; e < kNumEdges[dim-1]; e++) { + auto pair = std::pair( + std::min(v[eledge[dim-1][e][0]], v[eledge[dim-1][e][1]]), + std::max(v[eledge[dim-1][e][0]], v[eledge[dim-1][e][1]]) + ); + + // if edge is already present in the vector only store its index + auto [it, inserted] = edge_indices.insert({pair, nedge}); + + if (inserted) { + edge.push_back(pair); + edgeidx[f*kNumEdges[dim-1]+e] = nedge++; + } else { + edgeidx[f*kNumEdges[dim-1]+e] = it->second; + } } } - edge = edge1; // set size nedge = (int)edge.size(); @@ -2378,6 +2394,18 @@ void mjCFlex::Compile(const mjVFS* vfs) { } } + // add plugins + std::string userface, useredge; + mjXUtil::Vector2String(userface, elem); + mjXUtil::Vector2String(useredge, edgeidx); + + for (int i=0; i<(int)vertbodyid.size(); i++) { + if (model->bodies[vertbodyid[i]]->plugin_instance) { + model->bodies[vertbodyid[i]]->plugin_instance->config_attribs["face"] = userface; + model->bodies[vertbodyid[i]]->plugin_instance->config_attribs["edge"] = useredge; + } + } + // create shell fragments and element-vertex collision pairs CreateShellPair(); diff --git a/src/xml/xml_native_reader.cc b/src/xml/xml_native_reader.cc index 0019576b..4b927369 100644 --- a/src/xml/xml_native_reader.cc +++ b/src/xml/xml_native_reader.cc @@ -78,7 +78,7 @@ void ReadPluginConfigs(tinyxml2::XMLElement* elem, mjCPlugin* pp) { //---------------------------------- MJCF schema --------------------------------------------------- -static const int nMJCF = 223; +static const int nMJCF = 227; static const char* MJCF[nMJCF][mjXATTRNUM] = { {"mujoco", "!", "1", "model"}, {"<"}, @@ -293,25 +293,31 @@ static const char* MJCF[nMJCF][mjXATTRNUM] = { {"config", "*", "2", "key", "value"}, {">"}, {">"}, - {"flexcomp", "*", "26", "name", "class", "type", "dim", "flatskin", + {"flexcomp", "*", "25", "name", "class", "type", "group", "dim", "count", "spacing", "radius", "rigid", "mass", "inertiabox", - "scale", "file", "point", "element", "texcoord", "material", "rgba", "selfcollide", + "scale", "file", "point", "element", "texcoord", "material", "rgba", "flatskin", "pos", "quat", "axisangle", "xyaxes", "zaxis", "euler"}, {"<"}, {"edge", "?", "5", "equality", "solref", "solimp", "stiffness", "damping"}, - {"contact", "?", "10", "contype", "conaffinity", "condim", "priority", - "friction", "solmix", "solref", "solimp", "margin", "gap"}, + {"contact", "?", "13", "contype", "conaffinity", "condim", "priority", + "friction", "solmix", "solref", "solimp", "margin", "gap", + "internal", "selfcollide", "activelayers"}, {"pin", "*", "4", "id", "range", "grid", "gridrange"}, + {"plugin", "*", "2", "plugin", "instance"}, + {"<"}, + {"config", "*", "2", "key", "value"}, + {">"}, {">"}, {">"}, {"deformable", "*", "0"}, {"<"}, - {"flex", "*", "12", "name", "group", "dim", "radius", "material", "rgba", "flatskin", - "selfcollide", "body", "vertex", "element", "texcoord"}, + {"flex", "*", "11", "name", "group", "dim", "radius", "material", + "rgba", "flatskin", "body", "vertex", "element", "texcoord"}, {"<"}, - {"contact", "?", "10", "contype", "conaffinity", "condim", "priority", - "friction", "solmix", "solref", "solimp", "margin", "gap"}, + {"contact", "?", "13", "contype", "conaffinity", "condim", "priority", + "friction", "solmix", "solref", "solimp", "margin", "gap", + "internal", "selfcollide", "activelayers"}, {"edge", "?", "2", "stiffness", "damping"}, {">"}, {"skin", "*", "9", "name", "file", "material", "rgba", "inflate", @@ -2366,6 +2372,21 @@ void mjXReader::OneFlexcomp(XMLElement* elem, mjCBody* pbody) { epin = epin->NextSiblingElement("pin"); } + // plugin + XMLElement* eplugin = elem->FirstChildElement("plugin"); + if (eplugin) { + ReadAttrTxt(eplugin, "plugin", fcomp.plugin_name); + ReadAttrTxt(eplugin, "instance", fcomp.plugin_instance_name); + if (fcomp.plugin_instance_name.empty()) { + fcomp.plugin_instance = model->AddPlugin(); + fcomp.plugin_instance->name = "flexcomp_" + fcomp.name; + fcomp.plugin_instance_name = fcomp.plugin_instance->name; + } else { + model->hasImplicitPluginElem = true; + } + ReadPluginConfigs(eplugin, fcomp.plugin_instance); + } + // make flexcomp char error[200]; bool res = fcomp.Make(pbody->model, pbody, error, 200); diff --git a/test/plugin/elasticity/elasticity_test.cc b/test/plugin/elasticity/elasticity_test.cc index e30add97..c8174ce4 100644 --- a/test/plugin/elasticity/elasticity_test.cc +++ b/test/plugin/elasticity/elasticity_test.cc @@ -39,14 +39,14 @@ TEST_F(ElasticityTest, ElasticEnergyShell) { - - + - + )"; @@ -93,13 +93,14 @@ TEST_F(ElasticityTest, ElasticEnergySolid) { - - + - + + )"; @@ -110,6 +111,9 @@ TEST_F(ElasticityTest, ElasticEnergySolid) { mjData* d = mj_makeData(m); auto* solid = reinterpret_cast(d->plugin_data[0]); + mj_kinematics(m, d); + mj_flex(m, d); + // check that if the entire geometry is rescaled by a factor "scale", then // trace(strain^2) = 3*scale^2 @@ -119,10 +123,12 @@ TEST_F(ElasticityTest, ElasticEnergySolid) { mjtNum volume = 1./6.; for (int e1 = 0; e1 < 6; e1++) { for (int e2 = 0; e2 < 6; e2++) { - int idx1 = solid->elements[t].edges[e1]; - int idx2 = solid->elements[t].edges[e2]; - mjtNum elongation1 = scale*solid->reference[idx1]; - mjtNum elongation2 = scale*solid->reference[idx2]; + int idx1 = solid->elements[t].edges[e1] + m->flex_edgeadr[0]; + int idx2 = solid->elements[t].edges[e2] + m->flex_edgeadr[0]; + mjtNum elongation1 = + scale * m->flexedge_length0[idx1] * m->flexedge_length0[idx1]; + mjtNum elongation2 = + scale * m->flexedge_length0[idx2] * m->flexedge_length0[idx2]; energy += solid->metric[36*t+6*e2+e1] * elongation1 * elongation2; } } From d67b8c6251d70b513ae0ff26c22ae96dbe9ca2d2 Mon Sep 17 00:00:00 2001 From: Alessio Quaglino Date: Tue, 17 Oct 2023 04:54:37 -0700 Subject: [PATCH 04/26] Add membrane plugin (2D Flex elastic stiffness). PiperOrigin-RevId: 574109411 Change-Id: I4a701d8189cecf540cd200bd30cb4582f3c7dd43 --- model/plugin/elasticity/trampoline_flex.xml | 62 +++++ plugin/elasticity/CMakeLists.txt | 2 + plugin/elasticity/elasticity.cc | 60 +++++ plugin/elasticity/elasticity.h | 76 ++++++- plugin/elasticity/membrane.cc | 237 ++++++++++++++++++++ plugin/elasticity/membrane.h | 67 ++++++ plugin/elasticity/register.cc | 2 + plugin/elasticity/shell.h | 8 +- plugin/elasticity/solid.cc | 95 +------- plugin/elasticity/solid.h | 11 +- src/user/user_flexcomp.cc | 19 +- test/engine/engine_plugin_test.cc | 2 +- test/plugin/elasticity/elasticity_test.cc | 60 +++++ 13 files changed, 586 insertions(+), 115 deletions(-) create mode 100644 model/plugin/elasticity/trampoline_flex.xml create mode 100644 plugin/elasticity/membrane.cc create mode 100644 plugin/elasticity/membrane.h diff --git a/model/plugin/elasticity/trampoline_flex.xml b/model/plugin/elasticity/trampoline_flex.xml new file mode 100644 index 00000000..874e12fa --- /dev/null +++ b/model/plugin/elasticity/trampoline_flex.xml @@ -0,0 +1,62 @@ + + + + + + + + + + + diff --git a/plugin/elasticity/CMakeLists.txt b/plugin/elasticity/CMakeLists.txt index 833e0c16..3ea66137 100644 --- a/plugin/elasticity/CMakeLists.txt +++ b/plugin/elasticity/CMakeLists.txt @@ -21,6 +21,8 @@ set(MUJOCO_ELASTICITY_SRCS cable.h elasticity.cc elasticity.h + membrane.cc + membrane.h register.cc shell.cc shell.h diff --git a/plugin/elasticity/elasticity.cc b/plugin/elasticity/elasticity.cc index 7b1d0d7e..088f8b6b 100644 --- a/plugin/elasticity/elasticity.cc +++ b/plugin/elasticity/elasticity.cc @@ -14,15 +14,75 @@ #include "elasticity.h" #include +#include #include #include #include #include +#include #include +#include #include namespace mujoco::plugin::elasticity { +template +int CreateStencils(std::vector& elements, + std::vector>& edges, + const std::vector& simplex, + const std::vector& edgeidx) { + int ne = 0; + int nt = simplex.size() / T::kNumVerts; + elements.resize(nt); + for (int t = 0; t < nt; t++) { + for (int v = 0; v < T::kNumVerts; v++) { + elements[t].vertices[v] = simplex[T::kNumVerts*t+v]; + } + } + + // map from edge vertices to their index in `edges` vector + std::unordered_map, int, PairHash> edge_indices; + + // loop over all tetrahedra + for (int t = 0; t < nt; t++) { + int* v = elements[t].vertices; + + // compute edges to vertices map for fast computations + for (int e = 0; e < T::kNumEdges; e++) { + auto pair = std::pair( + std::min(v[T::edge[e][0]], v[T::edge[e][1]]), + std::max(v[T::edge[e][0]], v[T::edge[e][1]]) + ); + + // if edge is already present in the vector only store its index + auto [it, inserted] = edge_indices.insert({pair, ne}); + + if (inserted) { + edges.push_back(pair); + elements[t].edges[e] = ne++; + } else { + elements[t].edges[e] = it->second; + } + + if (!edgeidx.empty()) { + assert(elements[t].edges[e] == edgeidx[T::kNumEdges*t+e]); + } + } + } + + return nt; +} + +template int CreateStencils(std::vector& elements, + std::vector>& edges, + const std::vector& simplex, + const std::vector& edgeidx); + +template int CreateStencils(std::vector& elements, + std::vector>& edges, + const std::vector& simplex, + const std::vector& edgeidx); + void String2Vector(const std::string& txt, std::vector& vec) { std::stringstream strm(txt); vec.clear(); diff --git a/plugin/elasticity/elasticity.h b/plugin/elasticity/elasticity.h index 18444fd9..7bc35720 100644 --- a/plugin/elasticity/elasticity.h +++ b/plugin/elasticity/elasticity.h @@ -15,8 +15,10 @@ #ifndef MUJOCO_PLUGIN_ELASTICITY_ELASTICITY_H_ #define MUJOCO_PLUGIN_ELASTICITY_ELASTICITY_H_ -#include +#include +#include #include +#include #include #include @@ -46,6 +48,78 @@ inline void UpdateSquaredLengths(std::vector& len, } } +struct Stencil2D { + static constexpr int kNumEdges = 3; + static constexpr int kNumVerts = 3; + static constexpr int edge[kNumEdges][2] = {{1, 2}, {2, 0}, {0, 1}}; + int vertices[kNumVerts]; + int edges[kNumEdges]; +}; + +struct Stencil3D { + static constexpr int kNumEdges = 6; + static constexpr int kNumVerts = 4; + static constexpr int edge[kNumEdges][2] = {{0, 1}, {1, 2}, {2, 0}, + {2, 3}, {0, 3}, {1, 3}}; + int vertices[kNumVerts]; + int edges[kNumEdges]; +}; + +// gradients of edge lengths with respect to vertex positions +template +void inline GradSquaredLengths(mjtNum gradient[T::kNumEdges][2][3], + const mjtNum* x, + const int v[T::kNumVerts]) { + for (int e = 0; e < T::kNumEdges; e++) { + for (int d = 0; d < 3; d++) { + gradient[e][0][d] = x[3*v[T::edge[e][0]]+d] - x[3*v[T::edge[e][1]]+d]; + gradient[e][1][d] = x[3*v[T::edge[e][1]]+d] - x[3*v[T::edge[e][0]]+d]; + } + } +} + +// compute metric tensor of edge lengths inner product +template +void inline MetricTensor(std::vector& metric, int idx, mjtNum mu, + mjtNum la, const mjtNum basis[T::kNumEdges][9]) { + mjtNum trE[T::kNumEdges] = {0}; + mjtNum trEE[T::kNumEdges*T::kNumEdges] = {0}; + + // compute first invariant i.e. trace(strain) + for (int e = 0; e < T::kNumEdges; e++) { + for (int i = 0; i < 3; i++) { + trE[e] += basis[e][4*i]; + } + } + + // compute second invariant i.e. trace(strain^2) + for (int ed1 = 0; ed1 < T::kNumEdges; ed1++) { + for (int ed2 = 0; ed2 < T::kNumEdges; ed2++) { + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 3; j++) { + trEE[T::kNumEdges*ed1+ed2] += basis[ed1][3*i+j] * basis[ed2][3*j+i]; + } + } + } + } + + // assembly of strain metric tensor + for (int ed1 = 0; ed1 < T::kNumEdges; ed1++) { + for (int ed2 = 0; ed2 < T::kNumEdges; ed2++) { + int index = T::kNumEdges*T::kNumEdges*idx + T::kNumEdges*ed1 + ed2; + metric[index] = mu * trEE[T::kNumEdges * ed1 + ed2] + + la * trE[ed2] * trE[ed1]; + } + } +} + +// convert from Flex connectivity to stencils +template +int CreateStencils(std::vector& elements, + std::vector>& edges, + const std::vector& simplex, + const std::vector& edgeidx); + // copied from mjXUtil void String2Vector(const std::string& txt, std::vector& vec); diff --git a/plugin/elasticity/membrane.cc b/plugin/elasticity/membrane.cc new file mode 100644 index 00000000..38470139 --- /dev/null +++ b/plugin/elasticity/membrane.cc @@ -0,0 +1,237 @@ +// Copyright 2023 DeepMind Technologies Limited +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include +#include +#include +#include +#include + +#include +#include +#include +#include "elasticity.h" +#include "membrane.h" + + +namespace mujoco::plugin::elasticity { +namespace { + +// local tetrahedron numbering +constexpr int kNumEdges = Stencil2D::kNumEdges; +constexpr int kNumVerts = Stencil2D::kNumVerts; + +// area of a triangle +mjtNum ComputeVolume(const mjtNum* x, const int v[kNumVerts]) { + mjtNum normal[3]; + mjtNum edge1[3]; + mjtNum edge2[3]; + + mju_sub3(edge1, x+3*v[1], x+3*v[0]); + mju_sub3(edge2, x+3*v[2], x+3*v[0]); + mju_cross(normal, edge1, edge2); + + return mju_norm3(normal) / 2; +} + +// compute local basis +void ComputeBasis(mjtNum basis[9], const mjtNum* x, const int v[kNumVerts], + const int faceL[2], const int faceR[2], mjtNum area) { + mjtNum basisL[3], basisR[3]; + mjtNum edgesL[3], edgesR[3]; + mjtNum normal[3]; + + mju_sub3(edgesL, x+3*v[faceL[0]], x+3*v[faceL[1]]); + mju_sub3(edgesR, x+3*v[faceR[1]], x+3*v[faceR[0]]); + + mju_cross(normal, edgesR, edgesL); + mju_normalize3(normal); + mju_cross(basisL, normal, edgesL); + mju_cross(basisR, edgesR, normal); + + // we use as basis the symmetrized tensor products of the edge normals of the + // other two edges; this is shown in Weischedel "A discrete geometric view on + // shear-deformable shell models" in the remark at the end of section 4.1; + // equivalent to linear finite elements but in a coordinate-free formulation. + + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 3; j++) { + basis[3*i+j] = ( basisL[i]*basisR[j] + + basisR[i]*basisL[j] ) / (8*area*area); + } + } +} + +} // namespace + +// factory function +std::optional Membrane::Create(const mjModel* m, mjData* d, + int instance) { + if (CheckAttr("face", m, instance) && CheckAttr("poisson", m, instance) && + CheckAttr("young", m, instance) && CheckAttr("thickness", m, instance)) { + mjtNum nu = strtod(mj_getPluginConfig(m, instance, "poisson"), nullptr); + mjtNum E = strtod(mj_getPluginConfig(m, instance, "young"), nullptr); + mjtNum thick = + strtod(mj_getPluginConfig(m, instance, "thickness"), nullptr); + std::vector face, edge; + String2Vector(mj_getPluginConfig(m, instance, "face"), face); + String2Vector(mj_getPluginConfig(m, instance, "edge"), edge); + return Membrane(m, d, instance, nu, E, thick, face, edge); + } else { + mju_warning("Invalid parameter specification in shell plugin"); + return std::nullopt; + } +} + +// plugin constructor +Membrane::Membrane(const mjModel* m, mjData* d, int instance, mjtNum nu, + mjtNum E, mjtNum thick, const std::vector& simplex, + const std::vector& edgeidx) + : thickness(thick) { + // count plugin bodies + nv = ne = 0; + for (int i = 1; i < m->nbody; i++) { + if (m->body_plugin[i] == instance) { + if (!nv++) { + i0 = i; + } + } + } + + // count flexes + for (int i = 0; i < m->nflex; i++) { + if (m->flex_vertbodyid[m->flex_vertadr[i]] == i0) { + f0 = i; + break; + } + } + + // generate triangles from the vertices + nt = CreateStencils(elements, edges, simplex, edgeidx); + + // allocate metric induced by geometry + metric.assign(kNumEdges*kNumEdges*nt, 0); + + // loop over all triangles + for (int t = 0; t < nt; t++) { + int* v = elements[t].vertices; + for (int i = 0; i < kNumVerts; i++) { + if (m->body_plugin[i0+v[i]] != instance) { + mju_error("This body does not have the requested plugin instance"); + } + } + + // triangles area + mjtNum volume = ComputeVolume(m->body_pos+3*i0, v); + + // material parameters + mjtNum mu = E / (2*(1+nu)) * mju_abs(volume) / 4 * thickness; + mjtNum la = E*nu / ((1+nu)*(1-2*nu)) * mju_abs(volume) / 4 * thickness; + + // local geometric quantities + mjtNum basis[kNumEdges][9] = {{0}, {0}, {0}}; + + // compute edge basis + for (int e = 0; e < kNumEdges; e++) { + ComputeBasis(basis[e], m->body_pos+3*i0, v, + Stencil2D::edge[Stencil2D::edge[e][0]], + Stencil2D::edge[Stencil2D::edge[e][1]], volume); + } + + // compute metric tensor + MetricTensor(metric, t, mu, la, basis); + } +} + +void Membrane::Compute(const mjModel* m, mjData* d, int instance) { + for (int t = 0; t < nt; t++) { + int* v = elements[t].vertices; + + // compute length gradient with respect to dofs + mjtNum gradient[kNumEdges][2][3]; + GradSquaredLengths(gradient, d->xpos+3*i0, v); + + // compute elongation + mjtNum elongation[kNumEdges]; + for (int e = 0; e < kNumEdges; e++) { + int idx = elements[t].edges[e] + m->flex_edgeadr[f0]; + mjtNum deformed = d->flexedge_length[idx]*d->flexedge_length[idx]; + mjtNum reference = m->flexedge_length0[idx]*m->flexedge_length0[idx]; + elongation[e] = deformed - reference; + } + + // we now multiply the elongations by the precomputed metric tensor, + // notice that if metric=diag(1/reference) then this would yield a + // mass-spring model + + // compute local force + mjtNum force[kNumVerts*3] = {0}; + int offset = kNumEdges*kNumEdges; + for (int ed1 = 0; ed1 < kNumEdges; ed1++) { + for (int ed2 = 0; ed2 < kNumEdges; ed2++) { + for (int i = 0; i < 2; i++) { + for (int x = 0; x < 3; x++) { + force[3 * Stencil2D::edge[ed2][i] + x] += + elongation[ed1] * gradient[ed2][i][x] * + metric[offset * t + kNumEdges * ed1 + ed2]; + } + } + } + } + + // insert into global force + for (int i = 0; i < kNumVerts; i++) { + for (int x = 0; x < 3; x++) { + d->qfrc_passive[m->body_dofadr[i0]+3*v[i]+x] -= force[3*i+x]; + } + } + } +} + + + +void Membrane::RegisterPlugin() { + mjpPlugin plugin; + mjp_defaultPlugin(&plugin); + + plugin.name = "mujoco.elasticity.membrane"; + plugin.capabilityflags |= mjPLUGIN_PASSIVE; + + const char* attributes[] = {"face", "edge", "young", "poisson", "thickness"}; + plugin.nattribute = sizeof(attributes) / sizeof(attributes[0]); + plugin.attributes = attributes; + plugin.nstate = +[](const mjModel* m, int instance) { return 0; }; + + plugin.init = +[](const mjModel* m, mjData* d, int instance) { + auto elasticity_or_null = Membrane::Create(m, d, instance); + if (!elasticity_or_null.has_value()) { + return -1; + } + d->plugin_data[instance] = reinterpret_cast( + new Membrane(std::move(*elasticity_or_null))); + return 0; + }; + plugin.destroy = +[](mjData* d, int instance) { + delete reinterpret_cast(d->plugin_data[instance]); + d->plugin_data[instance] = 0; + }; + plugin.compute = +[](const mjModel* m, mjData* d, int instance, int type) { + auto* elasticity = reinterpret_cast(d->plugin_data[instance]); + elasticity->Compute(m, d, instance); + }; + + mjp_registerPlugin(&plugin); +} + +} // namespace mujoco::plugin::elasticity diff --git a/plugin/elasticity/membrane.h b/plugin/elasticity/membrane.h new file mode 100644 index 00000000..10fa2b60 --- /dev/null +++ b/plugin/elasticity/membrane.h @@ -0,0 +1,67 @@ +// Copyright 2023 DeepMind Technologies Limited +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#ifndef MUJOCO_PLUGIN_ELASTICITY_MEMBRANE_H_ +#define MUJOCO_PLUGIN_ELASTICITY_MEMBRANE_H_ + +#include +#include +#include + +#include +#include +#include +#include "elasticity.h" + + +namespace mujoco::plugin::elasticity { + +class Membrane { + public: + // Returns a new Membrane instance or nullopt on failure. + static std::optional Create(const mjModel* m, mjData* d, + int instance); + Membrane(Membrane&&) = default; + + Membrane& operator=(Membrane&& other) = default; + + void Compute(const mjModel* m, mjData* d, int instance); + + static void RegisterPlugin(); + + int f0; // index of corresponding flex + int i0; // index of first body + int nc; // number of quads in the grid + int nv; // number of vertices (bodies) in the Membrane + int nt; // number of area elements (triangles) + int ne; // number of edges in the Membrane + + // connectivity info for mapping tetrahedra to edges and vertices + std::vector elements; // triangles (nt x 6) + std::vector > edges; // edge to vertex map (ne x 2) + + // precomputed quantities + std::vector metric; // geom-induced metric (nt x 9) + + mjtNum thickness; + + private: + Membrane(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, + mjtNum thick, const std::vector& simplex, + const std::vector& edgeidx); +}; + +} // namespace mujoco::plugin::elasticity + +#endif // MUJOCO_PLUGIN_ELASTICITY_MEMBRANE_H_ diff --git a/plugin/elasticity/register.cc b/plugin/elasticity/register.cc index c3747200..50417a59 100644 --- a/plugin/elasticity/register.cc +++ b/plugin/elasticity/register.cc @@ -15,12 +15,14 @@ #include #include "cable.h" #include "shell.h" +#include "membrane.h" #include "solid.h" namespace mujoco::plugin::elasticity { mjPLUGIN_LIB_INIT { Cable::RegisterPlugin(); + Membrane::RegisterPlugin(); Shell::RegisterPlugin(); Solid::RegisterPlugin(); } diff --git a/plugin/elasticity/shell.h b/plugin/elasticity/shell.h index 88a4ae1d..f92fffbb 100644 --- a/plugin/elasticity/shell.h +++ b/plugin/elasticity/shell.h @@ -21,17 +21,11 @@ #include #include #include +#include "elasticity.h" namespace mujoco::plugin::elasticity { -struct Stencil2D { - static constexpr int kNumEdges = 3; - static constexpr int kNumVerts = 3; - int vertices[kNumVerts]; - int edges[kNumEdges]; -}; - struct StencilFlap { static constexpr int kNumVerts = 4; int vertices[kNumVerts]; diff --git a/plugin/elasticity/solid.cc b/plugin/elasticity/solid.cc index b54a4282..d2c5c853 100644 --- a/plugin/elasticity/solid.cc +++ b/plugin/elasticity/solid.cc @@ -17,7 +17,6 @@ #include #include #include -#include #include #include @@ -34,8 +33,6 @@ namespace { // local tetrahedron numbering constexpr int kNumEdges = Stencil3D::kNumEdges; constexpr int kNumVerts = Stencil3D::kNumVerts; -constexpr int edge[kNumEdges][2] = {{0, 1}, {1, 2}, {2, 0}, - {2, 3}, {0, 3}, {1, 3}}; constexpr int face[kNumVerts][3] = {{2, 1, 0}, {0, 1, 3}, {1, 2, 3}, {2, 0, 3}}; constexpr int e2f[kNumEdges][2] = {{2, 3}, {1, 3}, {2, 1}, {1, 0}, {0, 2}, {0, 3}}; @@ -83,19 +80,6 @@ void ComputeBasis(mjtNum basis[9], const mjtNum* x, const int v[kNumVerts], } } -// gradients of edge lengths with respect to vertex positions -void GradSquaredLengths(mjtNum gradient[kNumEdges][2][3], - const mjtNum* x, - const int v[kNumVerts], - const int edge[kNumEdges][2]) { - for (int e = 0; e < kNumEdges; e++) { - for (int d = 0; d < 3; d++) { - gradient[e][0][d] = x[3*v[edge[e][0]]+d] - x[3*v[edge[e][1]]+d]; - gradient[e][1][d] = x[3*v[edge[e][1]]+d] - x[3*v[edge[e][0]]+d]; - } - } -} - } // namespace // factory function @@ -118,49 +102,6 @@ std::optional Solid::Create(const mjModel* m, mjData* d, int instance) { } } -// create map from tetrahedra to vertices and edges and from edges to vertices -void Solid::CreateStencils(const std::vector& simplex, - const std::vector& edgeidx) { - // populate stencil - nt = simplex.size() / kNumVerts; - elements.resize(nt); - for (int t = 0; t < nt; t++) { - for (int v = 0; v < kNumVerts; v++) { - elements[t].vertices[v] = simplex[kNumVerts*t+v]; - } - } - - // map from edge vertices to their index in `edges` vector - std::unordered_map, int, PairHash> edge_indices; - - // loop over all tetrahedra - for (int t = 0; t < nt; t++) { - int* v = elements[t].vertices; - - // compute edges to vertices map for fast computations - for (int e = 0; e < kNumEdges; e++) { - auto pair = std::pair( - std::min(v[edge[e][0]], v[edge[e][1]]), - std::max(v[edge[e][0]], v[edge[e][1]]) - ); - - // if edge is already present in the vector only store its index - auto [it, inserted] = edge_indices.insert({pair, ne}); - - if (inserted) { - edges.push_back(pair); - elements[t].edges[e] = ne++; - } else { - elements[t].edges[e] = it->second; - } - - if (!edgeidx.empty()) { - assert(elements[t].edges[e] == edgeidx[kNumEdges*t+e]); - } - } - } -} - // plugin constructor Solid::Solid(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, mjtNum damp, const std::vector& simplex, @@ -185,7 +126,7 @@ Solid::Solid(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, } // generate tetrahedra from the vertices - CreateStencils(simplex, edgeidx); + nt = CreateStencils(elements, edges, simplex, edgeidx); // allocate arrays metric.assign(kNumEdges*kNumEdges*nt, 0); @@ -204,8 +145,6 @@ Solid::Solid(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, // local geometric quantities mjtNum basis[kNumEdges][9] = {{0}, {0}, {0}, {0}, {0}, {0}}; - mjtNum trT[kNumEdges] = {0}; - mjtNum trTT[kNumEdges*kNumEdges] = {0}; // compute edge basis for (int e = 0; e < kNumEdges; e++) { @@ -213,38 +152,16 @@ Solid::Solid(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, face[e2f[e][0]], face[e2f[e][1]], volume); } - // compute first invariant i.e. trace(strain) - for (int e = 0; e < kNumEdges; e++) { - for (int i = 0; i < 3; i++) { - trT[e] += basis[e][4*i]; - } - } - - // compute second invariant i.e. trace(strain^2) - for (int ed1 = 0; ed1 < kNumEdges; ed1++) { - for (int ed2 = 0; ed2 < kNumEdges; ed2++) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 3; j++) { - trTT[kNumEdges*ed1+ed2] += basis[ed1][3*i+j] * basis[ed2][3*j+i]; - } - } - } - } - // material parameters mjtNum mu = E / (2*(1+nu)) * volume; mjtNum la = E*nu / ((1+nu)*(1-2*nu)) * volume; - // assembly of strain metric tensor - for (int ed1 = 0; ed1 < kNumEdges; ed1++) { - for (int ed2 = 0; ed2 < kNumEdges; ed2++) { - int index = kNumEdges*kNumEdges*t + kNumEdges*ed1 + ed2; - metric[index] = mu * trTT[kNumEdges*ed1+ed2] + la * trT[ed2]*trT[ed1]; - } - } + // compute metric tensor + MetricTensor(metric, t, mu, la, basis); } // allocate array + ne = edges.size(); reference.assign(ne, 0); deformed.assign(ne, 0); previous.assign(ne, 0); @@ -266,7 +183,7 @@ void Solid::Compute(const mjModel* m, mjData* d, int instance) { // compute length gradient with respect to dofs mjtNum gradient[kNumEdges][2][3]; - GradSquaredLengths(gradient, d->xpos+3*i0, v, edge); + GradSquaredLengths(gradient, d->xpos+3*i0, v); // we add generalized Rayleigh damping as decribed in Section 5.2 of // Kharevych et al., "Geometric, Variational Integrators for Computer @@ -299,7 +216,7 @@ void Solid::Compute(const mjModel* m, mjData* d, int instance) { for (int ed2 = 0; ed2 < kNumEdges; ed2++) { for (int i = 0; i < 2; i++) { for (int x = 0; x < 3; x++) { - force[3 * edge[ed2][i] + x] += + force[3 * Stencil3D::edge[ed2][i] + x] += elongation[ed1] * gradient[ed2][i][x] * metric[offset * t + kNumEdges * ed1 + ed2]; } diff --git a/plugin/elasticity/solid.h b/plugin/elasticity/solid.h index fcc2bd12..a2505d44 100644 --- a/plugin/elasticity/solid.h +++ b/plugin/elasticity/solid.h @@ -21,17 +21,11 @@ #include #include #include +#include "elasticity.h" namespace mujoco::plugin::elasticity { -struct Stencil3D { - static constexpr int kNumEdges = 6; - static constexpr int kNumVerts = 4; - int vertices[kNumVerts]; - int edges[kNumEdges]; -}; - class Solid { public: // Returns a new Solid instance or nullopt on failure. @@ -67,9 +61,6 @@ class Solid { Solid(const mjModel* m, mjData* d, int instance, mjtNum nu, mjtNum E, mjtNum damp, const std::vector& simplex, const std::vector& edgeidx); - - void CreateStencils(const std::vector& simplex, - const std::vector& edgeidx); }; } // namespace mujoco::plugin::elasticity diff --git a/src/user/user_flexcomp.cc b/src/user/user_flexcomp.cc index b082146c..033a215b 100644 --- a/src/user/user_flexcomp.cc +++ b/src/user/user_flexcomp.cc @@ -512,6 +512,7 @@ bool mjCFlexcomp::MakeGrid(char* error, int error_sz) { // 2D else if (dim==2) { + int quad2tri[2][3] = {{0, 1, 2}, {0, 2, 3}}; for (int ix=0; ix #include #include "test/fixture.h" +#include "plugin/elasticity/membrane.h" #include "plugin/elasticity/shell.h" #include "plugin/elasticity/solid.h" @@ -84,6 +85,65 @@ TEST_F(ElasticityTest, ElasticEnergyShell) { mj_deleteModel(m); } +// -------------------------------- membrane ----------------------------------- +TEST_F(PluginTest, ElasticEnergyMembrane) { + static constexpr char cantilever_xml[] = R"( + + + + + + + + + + + + + + + + + )"; + + char error[1024] = {0}; + mjModel* m = LoadModelFromString(cantilever_xml, error, sizeof(error)); + ASSERT_THAT(m, testing::NotNull()) << error; + mjData* d = mj_makeData(m); + auto* membrane = + reinterpret_cast(d->plugin_data[0]); + + mj_kinematics(m, d); + mj_flex(m, d); + + // check that if the entire geometry is rescaled by a factor "scale", then + // trace(strain^2) = 2*scale^2 + + for (mjtNum scale = 1; scale < 4; scale++) { + for (int t = 0; t < membrane->nt; t++) { + mjtNum energy = 0; + mjtNum volume = 1./2.; + for (int e1 = 0; e1 < 3; e1++) { + for (int e2 = 0; e2 < 3; e2++) { + int idx1 = membrane->elements[t].edges[e1] + m->flex_edgeadr[0]; + int idx2 = membrane->elements[t].edges[e2] + m->flex_edgeadr[0]; + mjtNum elongation1 = + scale * m->flexedge_length0[idx1] * m->flexedge_length0[idx1]; + mjtNum elongation2 = + scale * m->flexedge_length0[idx2] * m->flexedge_length0[idx2]; + energy += membrane->metric[9*t+3*e2+e1] * elongation1 * elongation2; + } + } + EXPECT_NEAR( + 4*energy/volume, 2*scale*scale, std::numeric_limits::epsilon()); + } + } + + mj_deleteData(d); + mj_deleteModel(m); +} + // -------------------------------- solid ----------------------------------- TEST_F(ElasticityTest, ElasticEnergySolid) { static constexpr char cantilever_xml[] = R"( From 393cfec1e847bf26614d0092dc05e931e1125158 Mon Sep 17 00:00:00 2001 From: Nimrod Gileadi Date: Tue, 17 Oct 2023 06:31:26 -0700 Subject: [PATCH 05/26] Don't use PluginTest as the fixture name in xml_native_writer_test PiperOrigin-RevId: 574129298 Change-Id: I8c3e10bf271d54cb414b8d2af3724d8c81b6fc80 --- test/xml/xml_native_writer_test.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/xml/xml_native_writer_test.cc b/test/xml/xml_native_writer_test.cc index 114dfb64..52b21923 100644 --- a/test/xml/xml_native_writer_test.cc +++ b/test/xml/xml_native_writer_test.cc @@ -44,7 +44,7 @@ using ::testing::HasSubstr; using ::testing::Not; using ::testing::NotNull; -using XMLWriterTest = MujocoTest; +using XMLWriterTest = PluginTest; TEST_F(XMLWriterTest, EmptyModel) { static constexpr char xml[] = ""; @@ -1062,7 +1062,7 @@ mjtNum CompareModel(const mjModel* m1, const mjModel* m2, return maxdif; } -TEST_F(PluginTest, WriteReadCompare) { +TEST_F(XMLWriterTest, WriteReadCompare) { // full precision float printing FullFloatPrecision increase_precision; @@ -1132,7 +1132,7 @@ TEST_F(PluginTest, WriteReadCompare) { // ---------------- test CopyBack functionality (decompiler) ------------------ using DecompilerTest = MujocoTest; -TEST_F(XMLWriterTest, SavesStatitics) { +TEST_F(DecompilerTest, SavesStatitics) { static constexpr char xml[] = R"( From db067a3b94a290697bb92d45451a22b3342ca656 Mon Sep 17 00:00:00 2001 From: Alessio Quaglino Date: Tue, 17 Oct 2023 07:19:40 -0700 Subject: [PATCH 06/26] Update SdfLib to latest version. PiperOrigin-RevId: 574140359 Change-Id: Icbbf1c863204bef45252cfd184e0d80046261dc4 --- cmake/MujocoDependencies.cmake | 7 +- cmake/sdflib-optional-dependencies.patch | 585 ----------------------- 2 files changed, 4 insertions(+), 588 deletions(-) delete mode 100644 cmake/sdflib-optional-dependencies.patch diff --git a/cmake/MujocoDependencies.cmake b/cmake/MujocoDependencies.cmake index 48c82034..4e3e2c8d 100644 --- a/cmake/MujocoDependencies.cmake +++ b/cmake/MujocoDependencies.cmake @@ -59,7 +59,7 @@ set(MUJOCO_DEP_VERSION_benchmark ) set(MUJOCO_DEP_VERSION_sdflib - 492847fa81e46653114da48e8886730ccefed377 + 7c49cfba9bbec763b5d0f7b90b26555f3dde8088 CACHE STRING "Version of `SdfLib` to be fetched." ) @@ -184,6 +184,9 @@ findorfetch( EXCLUDE_FROM_ALL ) +option(SDFLIB_USE_ASSIMP OFF) +option(SDFLIB_USE_OPENMP OFF) +option(SDFLIB_USE_ENOKI OFF) findorfetch( USE_SYSTEM_PACKAGE OFF @@ -195,8 +198,6 @@ findorfetch( https://github.com/UPC-ViRVIG/SdfLib.git GIT_TAG ${MUJOCO_DEP_VERSION_sdflib} - PATCH_COMMAND - git apply --reject --whitespace=fix ${mujoco_SOURCE_DIR}/cmake/sdflib-optional-dependencies.patch TARGETS SdfLib EXCLUDE_FROM_ALL diff --git a/cmake/sdflib-optional-dependencies.patch b/cmake/sdflib-optional-dependencies.patch deleted file mode 100644 index 46f44931..00000000 --- a/cmake/sdflib-optional-dependencies.patch +++ /dev/null @@ -1,585 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 20551cf..0d2a364 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -70,15 +70,25 @@ add_custom_target(copyShaders ALL SOURCES ${SHADER_FILES}) - # Add dependencies - add_subdirectory(libs) - -+if(SDFLIB_USE_ENOKI) -+ target_link_libraries(${PROJECT_NAME} PUBLIC enoki) -+ target_link_libraries(${PROJECT_NAME} PUBLIC fcpw) -+ target_compile_definitions(${PROJECT_NAME} PUBLIC -DENOKI_AVAILABLE) -+endif() -+ -+if(SDFLIB_USE_ASSIMP) -+ target_link_libraries(${PROJECT_NAME} PUBLIC assimp) -+ target_compile_definitions(${PROJECT_NAME} PUBLIC -DASSIMP_AVAILABLE) -+endif() -+ -+if(SDFLIB_BUILD_APPS OR SDFLIB_BUILD_DEBUG_APPS) -+ target_link_libraries(${PROJECT_NAME} PUBLIC args) -+ target_link_libraries(${PROJECT_NAME} PUBLIC stb_image) -+endif() -+ - target_link_libraries(${PROJECT_NAME} PUBLIC glm) --target_link_libraries(${PROJECT_NAME} PUBLIC assimp) --target_link_libraries(${PROJECT_NAME} PUBLIC args) - target_link_libraries(${PROJECT_NAME} PUBLIC spdlog) - target_link_libraries(${PROJECT_NAME} PUBLIC cereal) --target_link_libraries(${PROJECT_NAME} PUBLIC enoki) --target_link_libraries(${PROJECT_NAME} PUBLIC eigen) --target_link_libraries(${PROJECT_NAME} PUBLIC fcpw) --target_link_libraries(${PROJECT_NAME} PUBLIC stb_image) - target_link_libraries(${PROJECT_NAME} PUBLIC icg) - - if(CMAKE_CXX_COMPILER_ID MATCHES GNU) -@@ -86,17 +96,22 @@ if(CMAKE_CXX_COMPILER_ID MATCHES GNU) - endif() - - # Add openMP --if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") -- message("Enabling openmp llvm extension") -- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /openmp:llvm") --else() -- find_package(OpenMP) -- if(NOT OpenMP_CXX_FOUND) -- message(FATAL_ERROR "OpenMP not found") -- endif() -- message("OpenMP version ${OpenMP_CXX_VERSION}") -- target_link_libraries(${PROJECT_NAME} PUBLIC OpenMP::OpenMP_CXX) --endif() -+if(SDFLIB_USE_OPENMP) -+ if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") -+ message("Enabling openmp llvm extension") -+ set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /openmp:llvm") -+ target_compile_definitions(${PROJECT_NAME} PUBLIC -DOPENMP_AVAILABLE) -+ else() -+ find_package(OpenMP) -+ if(OpenMP_CXX_FOUND) -+ message("OpenMP version ${OpenMP_CXX_VERSION}") -+ target_link_libraries(${PROJECT_NAME} PUBLIC OpenMP::OpenMP_CXX) -+ target_compile_definitions(${PROJECT_NAME} PUBLIC -DOPENMP_AVAILABLE) -+ else() -+ message("Disabling openmp") -+ endif() -+ endif() -+endif() - - # Add executable - if (NOT UNIX) -@@ -160,6 +175,7 @@ if(SDFLIB_BUILD_DEBUG_APPS) - add_executable(GJKtest src/tools/GJKtest/main.cpp) - target_link_libraries(GJKtest PUBLIC ${PROJECT_NAME}) - -+ target_link_libraries(${PROJECT_NAME} PUBLIC eigen) - add_executable(CalculateInterpolationParameters src/tools/CalculateInterpolationParameters/main.cpp) - target_link_libraries(CalculateInterpolationParameters PUBLIC ${PROJECT_NAME}) - -diff --git a/include/SdfLib/ExactOctreeSdf.h b/include/SdfLib/ExactOctreeSdf.h -index 79ad82d..06dd7ac 100644 ---- a/include/SdfLib/ExactOctreeSdf.h -+++ b/include/SdfLib/ExactOctreeSdf.h -@@ -214,6 +214,8 @@ private: - }; - } - -+#ifdef OPENMP_AVAILABLE - #include "ExactOctreeSdfDepthFirst.h" -+#endif - - #endif -\ No newline at end of file -diff --git a/include/SdfLib/InterpolationMethods.h b/include/SdfLib/InterpolationMethods.h -index 077dfb2..f707d5b 100644 ---- a/include/SdfLib/InterpolationMethods.h -+++ b/include/SdfLib/InterpolationMethods.h -@@ -4,7 +4,10 @@ - #include - - #include "utils/TriangleUtils.h" -+ -+#ifdef ENOKI_AVAILABLE - #include "enoki/array.h" -+#endif - - namespace sdflib - { -@@ -236,15 +239,6 @@ struct TriLinearInterpolation - // outCoeff[63] = 8 * inValues[0][0] + 4 * inValues[0][1] * nodeSize + 4 * inValues[0][2] * nodeSize + 4 * inValues[0][3] * nodeSize + -8 * inValues[1][0] + 4 * inValues[1][1] * nodeSize + -4 * inValues[1][2] * nodeSize + -4 * inValues[1][3] * nodeSize + -8 * inValues[2][0] + -4 * inValues[2][1] * nodeSize + 4 * inValues[2][2] * nodeSize + -4 * inValues[2][3] * nodeSize + 8 * inValues[3][0] + -4 * inValues[3][1] * nodeSize + -4 * inValues[3][2] * nodeSize + 4 * inValues[3][3] * nodeSize + -8 * inValues[4][0] + -4 * inValues[4][1] * nodeSize + -4 * inValues[4][2] * nodeSize + 4 * inValues[4][3] * nodeSize + 8 * inValues[5][0] + -4 * inValues[5][1] * nodeSize + 4 * inValues[5][2] * nodeSize + -4 * inValues[5][3] * nodeSize + 8 * inValues[6][0] + 4 * inValues[6][1] * nodeSize + -4 * inValues[6][2] * nodeSize + -4 * inValues[6][3] * nodeSize + -8 * inValues[7][0] + 4 * inValues[7][1] * nodeSize + 4 * inValues[7][2] * nodeSize + 4 * inValues[7][3] * nodeSize + 0.0f; - // } - --// inline static float interpolateValue(const std::array& values, glm::vec3 fracPart) --// { --// return 0.0f --// + values[0] + values[1] * fracPart[0] + values[2] * fracPart[0] * fracPart[0] + values[3] * fracPart[0] * fracPart[0] * fracPart[0] + values[4] * fracPart[1] + values[5] * fracPart[0] * fracPart[1] + values[6] * fracPart[0] * fracPart[0] * fracPart[1] + values[7] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] + values[8] * fracPart[1] * fracPart[1] + values[9] * fracPart[0] * fracPart[1] * fracPart[1] + values[10] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] + values[11] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] + values[12] * fracPart[1] * fracPart[1] * fracPart[1] + values[13] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] + values[14] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] + values[15] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] --// + values[16] * fracPart[2] + values[17] * fracPart[0] * fracPart[2] + values[18] * fracPart[0] * fracPart[0] * fracPart[2] + values[19] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[2] + values[20] * fracPart[1] * fracPart[2] + values[21] * fracPart[0] * fracPart[1] * fracPart[2] + values[22] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] + values[23] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] + values[24] * fracPart[1] * fracPart[1] * fracPart[2] + values[25] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] + values[26] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] + values[27] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] + values[28] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] + values[29] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] + values[30] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] + values[31] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] --// + values[32] * fracPart[2] * fracPart[2] + values[33] * fracPart[0] * fracPart[2] * fracPart[2] + values[34] * fracPart[0] * fracPart[0] * fracPart[2] * fracPart[2] + values[35] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[2] * fracPart[2] + values[36] * fracPart[1] * fracPart[2] * fracPart[2] + values[37] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] + values[38] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] + values[39] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] + values[40] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[41] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[42] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[43] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[44] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[45] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[46] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[47] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] --// + values[48] * fracPart[2] * fracPart[2] * fracPart[2] + values[49] * fracPart[0] * fracPart[2] * fracPart[2] * fracPart[2] + values[50] * fracPart[0] * fracPart[0] * fracPart[2] * fracPart[2] * fracPart[2] + values[51] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[2] * fracPart[2] * fracPart[2] + values[52] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[53] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[54] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[55] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[56] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[57] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[58] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[59] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[60] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[61] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[62] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[63] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2]; --// } -- - // inline static void interpolateVertexValues(const std::array& values, glm::vec3 fracPart, float nodeSize, std::array& outValues) - // { - // outValues[0] = 0.0f -@@ -383,6 +377,7 @@ struct TriCubicInterpolation - outCoeff[63] = 8 * inValues[0][0] + 4 * inValues[0][1] + 4 * inValues[0][2] + 4 * inValues[0][3] + 2 * inValues[0][4] + 2 * inValues[0][5] + 2 * inValues[0][6] + 1 * inValues[0][7] + -8 * inValues[1][0] + 4 * inValues[1][1] + -4 * inValues[1][2] + -4 * inValues[1][3] + 2 * inValues[1][4] + 2 * inValues[1][5] + -2 * inValues[1][6] + 1 * inValues[1][7] + -8 * inValues[2][0] + -4 * inValues[2][1] + 4 * inValues[2][2] + -4 * inValues[2][3] + 2 * inValues[2][4] + -2 * inValues[2][5] + 2 * inValues[2][6] + 1 * inValues[2][7] + 8 * inValues[3][0] + -4 * inValues[3][1] + -4 * inValues[3][2] + 4 * inValues[3][3] + 2 * inValues[3][4] + -2 * inValues[3][5] + -2 * inValues[3][6] + 1 * inValues[3][7] + -8 * inValues[4][0] + -4 * inValues[4][1] + -4 * inValues[4][2] + 4 * inValues[4][3] + -2 * inValues[4][4] + 2 * inValues[4][5] + 2 * inValues[4][6] + 1 * inValues[4][7] + 8 * inValues[5][0] + -4 * inValues[5][1] + 4 * inValues[5][2] + -4 * inValues[5][3] + -2 * inValues[5][4] + 2 * inValues[5][5] + -2 * inValues[5][6] + 1 * inValues[5][7] + 8 * inValues[6][0] + 4 * inValues[6][1] + -4 * inValues[6][2] + -4 * inValues[6][3] + -2 * inValues[6][4] + -2 * inValues[6][5] + 2 * inValues[6][6] + 1 * inValues[6][7] + -8 * inValues[7][0] + 4 * inValues[7][1] + 4 * inValues[7][2] + 4 * inValues[7][3] + -2 * inValues[7][4] + -2 * inValues[7][5] + -2 * inValues[7][6] + 1 * inValues[7][7]; - } - -+#ifdef ENOKI_AVAILABLE - using vec4 = enoki::Array; - - inline static float interpolateValue(const std::array& values, glm::vec3 fracPart) -@@ -433,6 +428,16 @@ struct TriCubicInterpolation - - return sum; - } -+#else -+ inline static float interpolateValue(const std::array& values, glm::vec3 fracPart) -+ { -+ return 0.0f -+ + values[0] + values[1] * fracPart[0] + values[2] * fracPart[0] * fracPart[0] + values[3] * fracPart[0] * fracPart[0] * fracPart[0] + values[4] * fracPart[1] + values[5] * fracPart[0] * fracPart[1] + values[6] * fracPart[0] * fracPart[0] * fracPart[1] + values[7] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] + values[8] * fracPart[1] * fracPart[1] + values[9] * fracPart[0] * fracPart[1] * fracPart[1] + values[10] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] + values[11] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] + values[12] * fracPart[1] * fracPart[1] * fracPart[1] + values[13] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] + values[14] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] + values[15] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] -+ + values[16] * fracPart[2] + values[17] * fracPart[0] * fracPart[2] + values[18] * fracPart[0] * fracPart[0] * fracPart[2] + values[19] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[2] + values[20] * fracPart[1] * fracPart[2] + values[21] * fracPart[0] * fracPart[1] * fracPart[2] + values[22] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] + values[23] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] + values[24] * fracPart[1] * fracPart[1] * fracPart[2] + values[25] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] + values[26] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] + values[27] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] + values[28] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] + values[29] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] + values[30] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] + values[31] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] -+ + values[32] * fracPart[2] * fracPart[2] + values[33] * fracPart[0] * fracPart[2] * fracPart[2] + values[34] * fracPart[0] * fracPart[0] * fracPart[2] * fracPart[2] + values[35] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[2] * fracPart[2] + values[36] * fracPart[1] * fracPart[2] * fracPart[2] + values[37] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] + values[38] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] + values[39] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] + values[40] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[41] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[42] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[43] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[44] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[45] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[46] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] + values[47] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] -+ + values[48] * fracPart[2] * fracPart[2] * fracPart[2] + values[49] * fracPart[0] * fracPart[2] * fracPart[2] * fracPart[2] + values[50] * fracPart[0] * fracPart[0] * fracPart[2] * fracPart[2] * fracPart[2] + values[51] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[2] * fracPart[2] * fracPart[2] + values[52] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[53] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[54] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[55] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[56] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[57] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[58] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[59] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[60] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[61] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[62] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2] + values[63] * fracPart[0] * fracPart[0] * fracPart[0] * fracPart[1] * fracPart[1] * fracPart[1] * fracPart[2] * fracPart[2] * fracPart[2]; -+ } -+#endif - - inline static glm::vec3 interpolateGradient(const std::array& values, glm::vec3 fracPart) - { -@@ -493,4 +498,4 @@ struct TriCubicInterpolation - }; - } - --#endif -\ No newline at end of file -+#endif -diff --git a/include/SdfLib/TrianglesInfluence.h b/include/SdfLib/TrianglesInfluence.h -index 3f3d33f..fc2ca52 100644 ---- a/include/SdfLib/TrianglesInfluence.h -+++ b/include/SdfLib/TrianglesInfluence.h -@@ -1,7 +1,10 @@ - #ifndef TRIANGLES_INFLUENCE_H - #define TRIANGLES_INFLUENCE_H - -+#ifdef ENOKI_AVAILABLE - #include -+#endif -+ - #include "utils/Mesh.h" - #include "utils/TriangleUtils.h" - #include "OctreeSdfUtils.h" -@@ -1008,6 +1011,7 @@ struct VHQueries - } - }; - -+#ifdef ENOKI_AVAILABLE - template - struct FCPWQueries - { -@@ -1118,6 +1122,8 @@ struct FCPWQueries - { - } - }; -+#endif -+ - } - --#endif -\ No newline at end of file -+#endif -diff --git a/include/SdfLib/utils/Mesh.h b/include/SdfLib/utils/Mesh.h -index 28d5486..7d21e44 100644 ---- a/include/SdfLib/utils/Mesh.h -+++ b/include/SdfLib/utils/Mesh.h -@@ -4,9 +4,11 @@ - #include - #include - #include -+#ifdef ASSIMP_AVAILABLE - #include - #include - #include -+#endif - #include "SdfLib/utils/UsefullSerializations.h" - - namespace sdflib -@@ -43,6 +45,23 @@ struct BoundingBox - return glm::length(glm::max(q,glm::vec3(0.0f))) + glm::min(glm::max(q.x, glm::max(q.y,q.z)),0.0f); - } - -+ float getDistance(glm::vec3 point, glm::vec3& outGradient) const -+ { -+ glm::vec3 a = glm::abs(point) - getSize(); -+ int k = a[0] > a[1] ? 0 : 1; -+ int l = a[2] > a[k] ? 2 : k; -+ if (a[l] < 0) { -+ outGradient[l] = point[l] / glm::abs(point[l]); -+ } else { -+ glm::vec3 b = glm::max(a, glm::vec3(0.0f)); -+ float c = glm::length(b); -+ outGradient[0] = a[0] > 0 ? b[0] / c * point[0] / glm::abs(point[0]) : 0; -+ outGradient[1] = a[1] > 0 ? b[1] / c * point[1] / glm::abs(point[1]) : 0; -+ outGradient[2] = a[2] > 0 ? b[2] / c * point[2] / glm::abs(point[2]) : 0; -+ } -+ return getDistance(point); -+ } -+ - template - void serialize(Archive & archive) - { -@@ -54,8 +73,10 @@ class Mesh - { - public: - Mesh() {} -+#ifdef ASSIMP_AVAILABLE - Mesh(std::string filePath); - Mesh(const aiMesh* mesh); -+#endif - Mesh(glm::vec3* vertices, uint32_t numVertices, - uint32_t* indices, uint32_t numIndices); - -@@ -74,7 +95,9 @@ public: - void computeNormals(); - void applyTransform(glm::mat4 trans); - private: -+#ifdef ASSIMP_AVAILABLE - void initMesh(const aiMesh* mesh); -+#endif - - std::vector mVertices; - std::vector mIndices; -@@ -83,4 +106,4 @@ private: - }; - } - --#endif -\ No newline at end of file -+#endif -diff --git a/include/SdfLib/utils/TriangleUtils.h b/include/SdfLib/utils/TriangleUtils.h -index 9f930ed..6ee2304 100644 ---- a/include/SdfLib/utils/TriangleUtils.h -+++ b/include/SdfLib/utils/TriangleUtils.h -@@ -2,6 +2,7 @@ - #define TRIANGLE_UTILS_H - - #include -+#include - #include - #include - #include -@@ -401,4 +402,4 @@ namespace TriangleUtils - } - } - --#endif -\ No newline at end of file -+#endif -diff --git a/libs/CMakeLists.txt b/libs/CMakeLists.txt -index b48bf39..ea22b9a 100644 ---- a/libs/CMakeLists.txt -+++ b/libs/CMakeLists.txt -@@ -14,37 +14,41 @@ if(NOT glm_lib_POPULATED) - endif() - - # assimp --FetchContent_Declare(assimp_lib -- GIT_REPOSITORY https://github.com/assimp/assimp.git -- GIT_TAG 9519a62dd20799c5493c638d1ef5a6f484e5faf1 # 5.2.5 --) -- --if(NOT assimp_lib) -- FetchContent_Populate(assimp_lib) -- -- set(CMAKE_POLICY_DEFAULT_CMP0077 NEW) -- set(BUILD_SHARED_LIBS OFF) -- set(ASSIMP_BUILD_ASSIMP_TOOLS OFF) -- set(ASSIMP_BUILD_TESTS OFF) -- set(ASSIMP_INSTALL OFF) -- set(ASSIMP_INJECT_DEBUG_POSTFIX OFF) -- set(ASSIMP_BUILD_ASSIMP_VIEW OFF) -+if(SDF_USE_ASSIMP) -+ FetchContent_Declare(assimp_lib -+ GIT_REPOSITORY https://github.com/assimp/assimp.git -+ GIT_TAG 9519a62dd20799c5493c638d1ef5a6f484e5faf1 # 5.2.5 -+ ) - -- add_subdirectory(${assimp_lib_SOURCE_DIR} ${assimp_lib_BINARY_DIR}) -+ if(NOT assimp_lib) -+ FetchContent_Populate(assimp_lib) -+ -+ set(CMAKE_POLICY_DEFAULT_CMP0077 NEW) -+ set(BUILD_SHARED_LIBS OFF) -+ set(ASSIMP_BUILD_ASSIMP_TOOLS OFF) -+ set(ASSIMP_BUILD_TESTS OFF) -+ set(ASSIMP_INSTALL OFF) -+ set(ASSIMP_INJECT_DEBUG_POSTFIX OFF) -+ set(ASSIMP_BUILD_ASSIMP_VIEW OFF) -+ -+ add_subdirectory(${assimp_lib_SOURCE_DIR} ${assimp_lib_BINARY_DIR}) -+ endif() - endif() - - # args --FetchContent_Declare(args_lib -- GIT_REPOSITORY https://github.com/Taywee/args.git -- GIT_TAG a48e1f880813b367d2354963a58dedbf2b708584 # 6.3.0 --) -- --FetchContent_GetProperties(args_lib) --if(NOT args_lib_POPULATED) -- FetchContent_Populate(args_lib) -- add_library(args INTERFACE) -- target_include_directories(args INTERFACE ${args_lib_SOURCE_DIR}) --endif() -+if(SDFLIB_BUILD_APPS OR SDFLIB_BUILD_DEBUG_APPS) -+ FetchContent_Declare(args_lib -+ GIT_REPOSITORY https://github.com/Taywee/args.git -+ GIT_TAG a48e1f880813b367d2354963a58dedbf2b708584 # 6.3.0 -+ ) -+ -+ FetchContent_GetProperties(args_lib) -+ if(NOT args_lib_POPULATED) -+ FetchContent_Populate(args_lib) -+ add_library(args INTERFACE) -+ target_include_directories(args INTERFACE ${args_lib_SOURCE_DIR}) -+ endif() -+ endif() - - # spdlog - FetchContent_Declare(spdlog_lib -@@ -76,47 +80,53 @@ if(NOT cereal_lib_POPULATED) - endif() - - # Enoki --FetchContent_Declare(enoki_lib -- GIT_REPOSITORY https://github.com/mitsuba-renderer/enoki.git -- GIT_TAG 2a18afa --) --FetchContent_GetProperties(enoki_lib) --if(NOT enoki_lib_POPULATED) -- FetchContent_Populate(enoki_lib) -- add_library(enoki INTERFACE) -- add_subdirectory(${enoki_lib_SOURCE_DIR} ${enoki_lib_BINARY_DIR}) -- target_include_directories(enoki INTERFACE ${enoki_lib_SOURCE_DIR}/include) --endif() -- --# eigen --FetchContent_Declare(eigen_lib --GIT_REPOSITORY https://gitlab.com/libeigen/eigen.git --GIT_TAG 46126273552afe13692929523d34006f54c19719 # 3.4 --) -+if(SDFLIB_USE_ENOKI) -+ FetchContent_Declare(enoki_lib -+ GIT_REPOSITORY https://github.com/mitsuba-renderer/enoki.git -+ GIT_TAG 2a18afa -+ ) -+ FetchContent_GetProperties(enoki_lib) -+ if(NOT enoki_lib_POPULATED) -+ FetchContent_Populate(enoki_lib) -+ add_library(enoki INTERFACE) -+ add_subdirectory(${enoki_lib_SOURCE_DIR} ${enoki_lib_BINARY_DIR}) -+ target_include_directories(enoki INTERFACE ${enoki_lib_SOURCE_DIR}/include) -+ endif() - --FetchContent_GetProperties(eigen_lib) --if(NOT eigen_lib_POPULATED) -- FetchContent_Populate(eigen_lib) -- add_library(eigen INTERFACE) -- target_include_directories(eigen INTERFACE ${eigen_lib_SOURCE_DIR}) -+ # FCPW -+ FetchContent_Declare(fcpw_lib -+ GIT_REPOSITORY https://github.com/rohan-sawhney/fcpw.git -+ GIT_TAG dd65ec2 -+ ) -+ -+ FetchContent_GetProperties(fcpw_lib) -+ if(NOT fcpw_lib_POPULATED) -+ FetchContent_Populate(fcpw_lib) -+ add_subdirectory(${fcpw_lib_SOURCE_DIR} ${fcpw_lib_BINARY_DIR}) -+ target_include_directories(fcpw INTERFACE ${fcpw_lib_SOURCE_DIR}) -+ endif() - endif() - --# FCPW --FetchContent_Declare(fcpw_lib -- GIT_REPOSITORY https://github.com/rohan-sawhney/fcpw.git -- GIT_TAG dd65ec2 --) -- --FetchContent_GetProperties(fcpw_lib) --if(NOT fcpw_lib_POPULATED) -- FetchContent_Populate(fcpw_lib) -- add_subdirectory(${fcpw_lib_SOURCE_DIR} ${fcpw_lib_BINARY_DIR}) -- target_include_directories(fcpw INTERFACE ${fcpw_lib_SOURCE_DIR}) --endif() -+# eigen -+if(SDFLIB_BUILD_DEBUG_APPS) -+ FetchContent_Declare(eigen_lib -+ GIT_REPOSITORY https://gitlab.com/libeigen/eigen.git -+ GIT_TAG 46126273552afe13692929523d34006f54c19719 # 3.4 -+ ) -+ -+ FetchContent_GetProperties(eigen_lib) -+ if(NOT eigen_lib_POPULATED) -+ FetchContent_Populate(eigen_lib) -+ add_library(eigen INTERFACE) -+ target_include_directories(eigen INTERFACE ${eigen_lib_SOURCE_DIR}) -+ endif() -+ endif() - - # stb --add_library(stb_image INTERFACE) --target_include_directories(stb_image INTERFACE stb) -+if(SDFLIB_BUILD_APPS OR SDFLIB_BUILD_DEBUG_APPS) -+ add_library(stb_image INTERFACE) -+ target_include_directories(stb_image INTERFACE stb) -+ endif() - - # icg - add_library(icg INTERFACE) -diff --git a/src/sdf/OctreeSdf.cpp b/src/sdf/OctreeSdf.cpp -index ef8ed4d..0e1eb97 100644 ---- a/src/sdf/OctreeSdf.cpp -+++ b/src/sdf/OctreeSdf.cpp -@@ -6,7 +6,9 @@ - #include "SdfLib/InterpolationMethods.h" - #include "sdf/OctreeSdfDepthFirst.h" - #include "sdf/OctreeSdfBreadthFirst.h" -+#ifdef OPENMP_AVAILABLE - #include "sdf/OctreeSdfBreadthFirstNoDelay.h" -+#endif - #include - #include - -@@ -46,8 +48,11 @@ OctreeSdf::OctreeSdf(const Mesh& mesh, BoundingBox box, - break; - case OctreeSdf::InitAlgorithm::CONTINUITY: - //initOctreeWithContinuity>(mesh, startDepth, depth, terminationThreshold, terminationRule); -- // initOctreeWithContinuity>(mesh, startDepth, depth, terminationThreshold, terminationRule); -+#ifdef OPENMP_AVAILABLE - initOctreeWithContinuityNoDelay>(mesh, startDepth, depth, terminationThreshold, terminationRule, numThreads); -+#else -+ initOctreeWithContinuity>(mesh, startDepth, depth, terminationThreshold, terminationRule); -+#endif - break; - // case OctreeSdf::InitAlgorithm::GPU_IMPLEMENTATION: - // Timer time; -@@ -78,7 +83,7 @@ float OctreeSdf::getDistance(glm::vec3 sample) const - startArrayPos.y < 0 || startArrayPos.y >= mStartGridSize || - startArrayPos.z < 0 || startArrayPos.z >= mStartGridSize) - { -- return mBox.getDistance(sample) + glm::sqrt(3.0f) * mBox.getSize().x; -+ return mBox.getDistance(sample) + mMinBorderValue; - } - - const OctreeNode* currentNode = &mOctreeData[startArrayPos.z * mStartGridXY + startArrayPos.y * mStartGridSize + startArrayPos.x]; -@@ -108,7 +113,7 @@ float OctreeSdf::getDistance(glm::vec3 sample, glm::vec3& outGradient) const - startArrayPos.y < 0 || startArrayPos.y >= mStartGridSize || - startArrayPos.z < 0 || startArrayPos.z >= mStartGridSize) - { -- return mBox.getDistance(sample) + mMinBorderValue; -+ return mBox.getDistance(sample, outGradient) + mMinBorderValue; - } - - const OctreeNode* currentNode = &mOctreeData[startArrayPos.z * mStartGridXY + startArrayPos.y * mStartGridSize + startArrayPos.x]; -@@ -253,4 +258,4 @@ void OctreeSdf::getDepthDensity(std::vector& depthsDensity) - size *= 0.125f; - } - } --} -\ No newline at end of file -+} -diff --git a/src/sdf/OctreeSdfDepthFirst.h b/src/sdf/OctreeSdfDepthFirst.h -index 53ee4b2..196d191 100644 ---- a/src/sdf/OctreeSdfDepthFirst.h -+++ b/src/sdf/OctreeSdfDepthFirst.h -@@ -7,7 +7,10 @@ - #include "SdfLib/OctreeSdfUtils.h" - #include - #include -+#ifdef OPENMP_AVAILABLE - #include -+#endif -+ - - namespace sdflib - { -@@ -381,7 +384,9 @@ void OctreeSdf::initOctree(const Mesh& mesh, uint32_t startDepth, uint32_t maxDe - }; - - const uint32_t voxlesPerAxis = 1 << startDepth; -+#ifdef OPENMP_AVAILABLE - if(numThreads < 2) -+#endif - { - // Create the grid - mOctreeData.resize(voxlesPerAxis * voxlesPerAxis * voxlesPerAxis); -@@ -402,7 +407,8 @@ void OctreeSdf::initOctree(const Mesh& mesh, uint32_t startDepth, uint32_t maxDe - - mValueRange = mainThread.valueRange; - } -- else -+#ifdef OPENMP_AVAILABLE -+ else - { - std::vector threadsContext(numThreads, mainThread); - -@@ -511,6 +517,7 @@ void OctreeSdf::initOctree(const Mesh& mesh, uint32_t startDepth, uint32_t maxDe - } - #endif - } -+#endif - - #ifdef SDFLIB_PRINT_STATISTICS - SPDLOG_INFO("Used an octree of max depth {}", maxDepth); -@@ -544,4 +551,4 @@ void OctreeSdf::initOctree(const Mesh& mesh, uint32_t startDepth, uint32_t maxDe - } - } - --#endif -\ No newline at end of file -+#endif -diff --git a/src/utils/Mesh.cpp b/src/utils/Mesh.cpp -index b407d38..6fff5fe 100644 ---- a/src/utils/Mesh.cpp -+++ b/src/utils/Mesh.cpp -@@ -5,6 +5,7 @@ - - namespace sdflib - { -+#ifdef ASSIMP_AVAILABLE - Mesh::Mesh(std::string filePath) - { - Assimp::Importer import; -@@ -28,6 +29,7 @@ Mesh::Mesh(const aiMesh* mesh) - { - initMesh(mesh); - } -+#endif - - Mesh::Mesh(glm::vec3* vertices, uint32_t numVertices, - uint32_t* indices, uint32_t numIndices) -@@ -39,7 +41,7 @@ Mesh::Mesh(glm::vec3* vertices, uint32_t numVertices, - std::memcpy(mIndices.data(), indices, sizeof(uint32_t) * numIndices); - } - -- -+#ifdef ASSIMP_AVAILABLE - void Mesh::initMesh(const aiMesh* mesh) - { - if(!(mesh->mPrimitiveTypes & aiPrimitiveType_TRIANGLE)) -@@ -83,6 +85,7 @@ void Mesh::initMesh(const aiMesh* mesh) - computeNormals(); - } - } -+#endif - - void Mesh::computeBoundingBox() - { -@@ -134,4 +137,4 @@ void Mesh::applyTransform(glm::mat4 trans) - - computeBoundingBox(); - } --} -\ No newline at end of file -+} From 139a8ae298abf83c934c6f25f3fe0c814c279d00 Mon Sep 17 00:00:00 2001 From: Alessio Quaglino Date: Tue, 17 Oct 2023 09:44:58 -0700 Subject: [PATCH 07/26] Add flex and elasticity documentation. Fixes #873. PiperOrigin-RevId: 574179040 Change-Id: Iaf90bbf2b2c3fe075c940c2b66b7b841f256e653 --- doc/XMLreference.rst | 937 ++++++++++++++++-------- doc/changelog.rst | 56 +- doc/images/modeling/bunny1.png | Bin 0 -> 499539 bytes doc/images/modeling/bunny2.png | Bin 0 -> 1206276 bytes doc/images/modeling/coil.png | Bin 0 -> 589603 bytes doc/images/modeling/flexelem.png | Bin 0 -> 92767 bytes doc/modeling.rst | 186 +++-- doc/overview.rst | 8 + doc/programming/extension.rst | 1 + model/plugin/elasticity/mannequin.xml | 5 +- model/plugin/elasticity/poncho_flex.xml | 7 +- 11 files changed, 825 insertions(+), 375 deletions(-) create mode 100644 doc/images/modeling/bunny1.png create mode 100644 doc/images/modeling/bunny2.png create mode 100644 doc/images/modeling/coil.png create mode 100644 doc/images/modeling/flexelem.png diff --git a/doc/XMLreference.rst b/doc/XMLreference.rst index e1b78754..afb6e339 100644 --- a/doc/XMLreference.rst +++ b/doc/XMLreference.rst @@ -1321,9 +1321,9 @@ also known as terrain map, is a 2D matrix of elevation data. The data can be spe .. _asset-hfield-content_type: -:at:`content_type`: :at-val: `string, optional` +:at:`content_type`: :at-val:`string, optional` If the file attribute is specified, then this sets the - `Media Type `_ (formerly known as MIME types) of the + `Media Type `__ (formerly known as MIME types) of the file to be loaded. Any filename extensions will be overloaded. Currently ``image/png`` and ``image/vnd.mujoco.hfield`` are supported. @@ -1576,173 +1576,23 @@ Associate this mesh with an :ref:`engine plugin`. Either :at:`plugin` Instance name, used for explicit plugin instantiation. - -.. _deformable-skin: .. _asset-skin: :el-prefix:`asset/` |-| **skin** (*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -Skinned meshes (or skins) were added in MuJoCo 2.0. These are deformable meshes whose vertex positions and normals are -computed each time the model is rendered. MuJoCo skins are only used for visualization and do not affect the physics -in any way. In particular, collisions involve the geoms of the bodies to which the skin is attached, and not the skin -itself. Unlike regular meshes which are referenced from geoms and participate in collisions, the skin is not -referenced from anywhere else in the model. It is a stand-alone asset that is used by renderer and not by the -simulator. - -The skin has vertex positions and normals updated at runtime, and triangle faces and optional texture coordinates -which are predefined. It also has "bones" used for updating. Bones are regular MuJoCo bodies referenced with the -:el:`bone` subelement. Each bone has a list of vertex indices and corresponding real-valued weights which specify how -much the bone position and orientation influence the corresponding vertex. The vertex has local coordinates with -respect to every bone that influences it. The local coordinates are computed by the model compiler, given global -vertex coordinates and global bind poses for each body. The bind poses do not have to correspond to the model -reference configuration qpos0. Note that the vertex positions and bone bind poses provided in the skin definition are -always global, even if the model itself is defined in local coordinates. - -At runtime the local coordinates of each vertex with respect to each bone that influences it are converted to global -coordinates, and averaged in proportion to the corresponding weights to obtain a single set of 3D coordinates for each -vertex. Normals then are computed automatically given the resulting global vertex positions and face information. -Finally, the skin can be inflated by applying an offset to each vertex position along its (computed) normal. -Skins are one-sided for rendering purposes; this is because back-face culling is needed to avoid shading and aliasing -artifacts. When the skin is a closed 3D shape this does not matter because the back sides cannot be seen. But if the -skin is a 2D object, we have to specify both sides and offset them slightly to avoid artifacts. Note that the -composite objects introduced in MuJoCo 2.0 generate skins automatically. So one can save an XML model with a composite -object, and obtain an elaborate example of how a skin is specified in the XML. - -Similar to meshes, skins can be specified directly in the XML via attributes documented later, or loaded from a binary -SKN file which is in a custom format. The specification of skins is more complex than meshes because of the bone -subelements. The file format starts with a header of 4 integers: nvertex, ntexcoord, nface, nbone. The first three are -the same as in meshes, and specify the total number of vertices, texture coordinate pairs, and triangle faces in the -skin. ntexcoord can be zero or equal to nvertex. nbone specifies the number of MuJoCo bodies that will be used as -bones in the skin. The header is followed by the vertex, texcoord and face data, followed by a specification for each -bone. The bone specification contains the name of the corresponding model body, 3D bind position, 4D bind quaternion, -number of vertices influenced by the bone, and the vertex index array and weight array. Body names are represented as -fixed-length character arrays and are expected to be 0-terminated. Characters after the first 0 are ignored. The -contents of the SKN file are: - -.. code:: Text - - (int32) nvertex - (int32) ntexcoord - (int32) nface - (int32) nbone - (float) vertex_positions[3*nvertex] - (float) vertex_texcoords[2*ntexcoord] - (int32) face_vertex_indices[3*nface] - for each bone: - (char) body_name[40] - (float) bind_position[3] - (float) bind_quaternion[4] - (int32) vertex_count - (int32) vertex_index[vertex_count] - (float) vertex_weight[vertex_count] - -Similar to the other custom binary formats used in MuJoCo, the file size in bytes is strictly enforced by the model -compiler. The skin file format has subelements so the overall file size formula is difficult to write down, but should -be clear from the above specification. - -.. _deformable-skin-name: .. _asset-skin-name: - -:at:`name`: :at-val:`string, optional` - Name of the skin. - -.. _deformable-skin-file: .. _asset-skin-file: - -:at:`file`: :at-val:`string, optional` - The SKN file from which the skin will be loaded. The path is determined as described in the meshdir attribute of - :ref:`compiler `. If the file is omitted, the skin specification must be provided in the XML using the - attributes below. - -.. _deformable-skin-vertex: .. _asset-skin-vertex: - -:at:`vertex`: :at-val:`real(3*nvert), optional` - Vertex 3D positions, in the global bind pose where the skin is defined. - -.. _deformable-skin-texcoord: .. _asset-skin-texcoord: - -:at:`texcoord`: :at-val:`real(2*nvert), optional` - Vertex 2D texture coordinates, between 0 and 1. Note that skin and geom texturing are somewhat different. Geoms can - use automated texture coordinate generation while skins cannot. This is because skin data are computed directly in - global coordinates. So if the material references a texture, one should specify explicit texture coordinates for the - skin using this attribute. Otherwise the texture will appear to be stationary in the world while the skin moves - around (creating an interesting effect but probably not as intended). - -.. _deformable-skin-face: .. _asset-skin-face: - -:at:`face`: :at-val:`int(3*nface), optional` - Trinagular skin faces. Each face is a triple of vertex indices, which are integers between zero and nvert-1. - -.. _deformable-skin-inflate: .. _asset-skin-inflate: - -:at:`inflate`: :at-val:`real, "0"` - If this number is not zero, the position of vertex during updating will be offset along the vertex normal, but the - distance specified in this attribute. This is particularly useful for skins representing flexible 2D shapes. - -.. _deformable-skin-material: .. _asset-skin-material: - -:at:`material`: :at-val:`string, optional` - If specified, this attribute applies a material to the skin. - -.. _deformable-skin-rgba: .. _asset-skin-rgba: - -:at:`rgba`: :at-val:`real(4), "0.5 0.5 0.5 1"` - Instead of creating material assets and referencing them, this attribute can be used to set color and transparency - only. This is not as flexible as the material mechanism, but is more convenient and is often sufficient. If the value - of this attribute is different from the internal default, it takes precedence over the material. - -.. _deformable-skin-group: .. _asset-skin-group: -:at:`group`: :at-val:`int, "0"` - Integer group to which the skin belongs. This attribute can be used for custom tags. It is also used by the - visualizer to enable and disable the rendering of entire groups of skins. - - -.. _skin-bone: - -:el-prefix:`skin/` |-| **bone** (*) -''''''''''''''''''''''''''''''''''' - -This element defines a bone of the skin. The bone is a regular MuJoCo body which is referenced by name here. - - -.. _skin-bone-body: - -:at:`body`: :at-val:`string, required` - Name of the body corresponding to this bone. - -.. _skin-bone-bindpos: - -:at:`bindpos`: :at-val:`real(3), required` - Global body position corresponding to the bind pose. - -.. _skin-bone-bindquat: - -:at:`bindquat`: :at-val:`real(4), required` - Global body orientation corresponding to the bind pose. - -.. _skin-bone-vertid: - -:at:`vertid`: :at-val:`int(nvert), required` - Integer indices of the vertices influenced by this bone. The vertex index corresponds to the order of the vertex in - the skin mesh. The number of vertex indices specified here (nvert) must equal the number of vertex weights specified - with the next attribute. The same vertex may be influenced by multiple bones, and each vertex must be influenced by - at least one bone. - -.. _skin-bone-vertweight: - -:at:`vertweight`: :at-val:`real(nvert), required` - Weights for the vertices influenced by this bone, in the same order as the vertex indices. Negative weights are - allowed (which is needed for cubic interpolation for example) however the sum of all bone weights for a given vertex - must be positive. +:ref:`Skins` have been moved under the new grouping element :ref:`deformable`. They can +still be specified here but this functionality is now deprecated and will be removed in the future. .. _asset-material: @@ -1750,7 +1600,7 @@ This element defines a bone of the skin. The bone is a regular MuJoCo body which :el-prefix:`asset/` |-| **material** (*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -This element creates a material asset. It can be referenced from :ref:`skins `, :ref:`geoms `, +This element creates a material asset. It can be referenced from :ref:`skins `, :ref:`geoms `, :ref:`sites ` and :ref:`tendons ` to set their appearance. Note that all these elements also have a local rgba attribute, which is more convenient when only colors need to be adjusted, because it does not require creating materials and referencing them. Materials are useful for adjusting appearance properties beyond color. However @@ -1920,19 +1770,17 @@ adjust it properly through the XML. :at:`o_margin`: :at-val:`real, "0"` This attribute replaces the margin parameter of all active contact pairs when :ref:`Contact override ` is - enabled. Otherwise MuJoCo uses the element-specific margin attribute of :ref:`geom ` or :ref:`pair - ` depending on how the contact pair was generated. See also :ref:`Collision` in the Computation - chapter. The related gap parameter does not have a global override. + enabled. Otherwise MuJoCo uses the element-specific margin attribute of :ref:`geom` or + :ref:`pair` depending on how the contact pair was generated. See also :ref:`Collision` in the + Computation chapter. The related gap parameter does not have a global override. .. _option-o_solref: - .. _option-o_solimp: - .. _option-o_friction: :at:`o_solref`, :at:`o_solimp`, :at:`o_friction` - These attributes replace the solref, solimp, and friction parameters of all active contact pairs when contact - override is enabled. See :ref:`CSolver` for details. + These attributes replace the solref, solimp and friction parameters of all active contact pairs when contact override is + enabled. See :ref:`CSolver` for details. .. _option-integrator: @@ -3714,171 +3562,344 @@ Associate this composite with an :ref:`engine plugin`. Either :at:`plu Instance name, used for explicit plugin instantiation. + .. _body-flexcomp: -:el-prefix:`body/` |-| **flex** (*) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +:el-prefix:`body/` |-| **flexcomp** (*) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Similar to :el:`composite`, this element (new in MuJoCo 3.0) is not a model element, but rather a macro which expands +into multiple model elements representing a deformable entity. In particular this macro creates one +:ref:`flex` element, a number of bodies that are children of the body in which the :el:`flexcomp` is +defined, and optionally one :ref:`flex equality` which constrains all flex edges to their initial length. +A number of attributes are specified here and then passed through to the automatically-constructed flex. The primary +role of :el:`flexcomp` is to automate the creation of a (possibly large) collection of moving bodies with corresponding +joints, and connect them with stretchable flex elements. See :ref:`flex` and :ref:`deformable +objects` documentation for specifics on how flexes work. Here we only describe the automated construction +process. + +An important distinction between :el:`flex` and :el:`flexcomp` is that the flex references bodies and specifies vertex +coordinates in the frames of those bodies, while the flexcomp defines *points*. Each flexcomp point corresponds to one +body and one vertex in the underlying flex. If the flexcomp point is *pinned*, the corresponding flex body is the parent +body of the flexcomp, while the corresponding flex vertex coordinates equal the flexcomp point coordinates. If the +flexcomp point is not pinned, a new child body is created at the coordinates of the flexcomp point (within the flexcomp +parent body), and then the coordinates of the flex vertex within that new body are (0,0,0). The mechanism for +:ref:`pinning` flexcomp points is explained below. + +Composite objects (available prior to MuJoCo 3.0) needed bodies with geoms for collisions, and sites for connecting +tendons which generated shape-preserving forces. In contrast, flexes generate their own collisions and shape-preserving +forces (as well as rendering), thus the bodies created here are much simpler: no geoms, sites or tendons are needed. +Most of the bodies created here have 3 orthogonal slider joints, corresponding to freely moving point masses. In some +cases we generate radial slider joints, allowing only expansion and contraction. Since no geoms are generated, the +bodies need to have explicit inertial parameters. + +Below is a simple example of a flexcomp, modeling a (somewhat flexible) double pendulum with one end pinned to the +world: + +.. code-block:: xml + + + + + + + + + +This flexcomp has 3 points, however the first point is pinned to the world (i.e. the parent of the flexcomp) and so only +two bodies are automatically created, namely FL_1 and FL_2. Here is what this flexcomp generates after loading and +saving the XML: + +.. code-block:: xml + + + + + + + + + + + + + + + + + + + + + + + -.. _body-flexcomp-name: .. _body-flexcomp-class: -.. _body-flexcomp-type: +:at:`class`: :at-val:`string, optional` + Defaults class for setting unspecified attributes. + +.. _body-flexcomp-name: + +:at:`name`: :at-val:`string, required` + The name of the flex element being generated automatically. This name is used as a prefix for all bodies that are + automatically generated here, and is also referenced by the corresponding flex equality constraint (if applicable). .. _body-flexcomp-dim: +:at:`dim`: :at-val:`int(1), "2"` + Dimensionality of the flex object. This value must be 1, 2 or 3. The flex elements are capsules in 1D, triangles with + radius in 2D, and tetrahedra with radius in 3D. Certain flexcomp types imply a dimensionality, in which case the + value specified here is ignored. + +.. _body-flexcomp-type: + +:at:`type`: :at-val:`[grid, box, cylinder, ellipsoid, mesh, gmsh, direct], "grid"` + This attribute determines the type of :el:`flexcomp` object. The remaining attributes and sub-elements are then + interpreted according to the type. Default settings are also adjusted depending on the type. Different types + correspond to different methods for specifying the flexcomp points and the stretchable elements that connect them. + They fall in three categories: direct specification entered in the XML, direct specification loaded from file, and + automated generation from higher-level specification. + + **grid** generates a rectangular grid of points in 1D, 2D or 3D as specified by :at:`dim`. The number of points in + each dimension is determined by :at:`count` while the grid spacing in each dimension is determined by :at:`spacing`. + Make sure the spacing is sufficiently large relative to :at:`radius` to avoid permanent contacts. In 2D and 3D the + grid is automatically triangulated, and corresponding flex elements are created (triangles or tetrahedra). In 1D the + elements are capsules connecting consecutive pairs of points. + + **box** generates a 3D box object, however flex bodies are only generated on the outer shell. Each flex body has a + radial slider joint allowing it to move in and out from the center of the box. The parent body would normally be a + floating body. The box surface is triangulated, and each flex element is a tetrahedron connecting the center of the + box with one triangle face. :at:`count` and :at:`spacing` determine the count and spacing of the flex bodies, similar + to the **grid** type in 3D. Note that the resulting flex has the same topology as the box generated by + :el:`composite`. + + **cylinder** is the same as **box**, except the points are projected on the surface of a cylinder. + + **ellipsoid** is the same as **box**, except the points are projected on the surface of an ellipsoid. + + **mesh** loads the flexcomp points and elements (i.e. triangles) from a mesh file, in the same file formats as mesh + assets. A mesh asset is not actually added to the model. Instead the vertex and face data from the mesh file are used + to populate the point and element data of the flexcomp. :at:`dim` is automatically set to 2. Recall that a mesh asset + in MuJoCo can be used as a rigid geom attached to a single body. In contrast, the flex generated here corresponds to + a soft mesh with the same initial shape, where each vertex is a separate moving body (unless pinned). + + **gmsh** is similar to mesh, but it loads a `GMSH file `__ + in format 4.1 (ascii or binary). The file extension can be anything; the parser recognizes the format by examining + the file header. This is a very rich file format, allowing all kinds of elements with different dimensionality and + topology. MuJoCo only supports GMSH element types 1, 2, 4 which happen to correspond to our 1D, 2D and 3D flexes. + Only the Nodes and Elements sections of the GMHS file are processed, and used to populate the point and element data + of the flexcomp. The parser will generate an error if the GMSH file contains meshes that are not supported by MuJoCo. + :at:`dim` is automatically set to the dimensionality specified in the GMSH file. Presently this is the only mechanism + to load a large tetrahedral mesh in MuJoCo and generate a corresponding soft entity. If such a mesh is available in a + different file format, use the freely available `GMSH software `__ to convert it to GMSH 4.1. + + **direct** allows the user to specify the point and element data of the flexcomp directly in the XML. Note that + flexcomp will still generate moving bodies automatically, as well as automate other settings; so it still provides + convenience compared to specifing the corresponding flex directly. + .. _body-flexcomp-count: +:at:`count`: :at-val:`int(3), "10 10 10"` + The number of automatically generated points in each dimension. This and the next attribute only apply to types grid, + box, cylinder, ellipsoid. + .. _body-flexcomp-spacing: -.. _body-flexcomp-radius: - -.. _body-flexcomp-rigid: - -.. _body-flexcomp-mass: - -.. _body-flexcomp-inertiabox: - -.. _body-flexcomp-scale: - -.. _body-flexcomp-file: +:at:`spacing`: :at-val:`real(3), "0.02 0.02 0.02"` + The spacing between the automatically generated points in each dimension. The spacing should be sufficiently large + compared to the radius, to avoid permanent contacts. .. _body-flexcomp-point: +:at:`point`: :at-val:`real(3*npoint), optional` + + The 3D coordinates of the points. This attribute is only used with type **direct**. All other flexcomp types generate + their own points. The points are used to construct bodies and vertices as explained earlier. + .. _body-flexcomp-element: -.. _body-flexcomp-material: +:at:`element`: :at-val:`int((dim+1)*npoint), optional` -.. _body-flexcomp-rgba: + The zero-based point ids forming each flex elements. This attribute is only used with type **direct**. All other + flexcomp types generate their own elements. This data is passed through to the automatically-generated flex. .. _body-flexcomp-texcoord: +:at:`texcoord`: :at-val:`real(2*npoint), optional` + + Texture coordinates of each point, passed through to the automatically-generated flex. Note that flexcomp does not + generate texture coordinates automatically, except for 2D grids. For all other types, the user can specify explicit + texture coordinates here, even if the points themselves were generated automatically. This requires understanding of + the layout of the automatically-generated points and how they correspond to the texture referenced by the material. + +.. _body-flexcomp-mass: + +:at:`mass`: :at-val:`real(1), "1"` + The mass of each automatically-generated body equals this value divided by the number of points. Note that pinning + some points does not affect the mass of the other bodies. + +.. _body-flexcomp-inertiabox: + +:at:`inertiabox`: :at-val:`real(1), "0.005"` + Even though the automatically-generated bodies have the physics of point masses, with slider joints, MuJoCo still + requires each body to have rotational inertia. The inertias generated here are diagonal, and are computed such that + the corresponding equivalent-inertia boxes have sides equal to this value. + +.. _body-flexcomp-file: + +:at:`file`: :at-val:`string, optional` + The name of the file from which a **mesh** or a **gmsh** is loaded. For mesh, the file extentsion is used to + determine the file format. Supported formats are the same as in :ref:`mesh assets`. For gmsh, the file is + expected to be in GMSH format 4.1, ascii or binary. + +.. _body-flexcomp-rigid: + +:at:`rigid`: :at-val:`[true, false], "false"` + If this is true, all points correspond to vertices within the parent body, and no new bodies are created. This is + equivalent to pinning all points. Note that if all points are indeed pinned, the model compiler will detect that the + flex is rigid (which behaves is a non-convex mesh in collision detection). + .. _body-flexcomp-pos: +:at:`pos`: :at-val:`real(3), "0 0 0"` + This 3D vector translates all points relative to the frame of the parent body. + .. _body-flexcomp-quat: +:at:`quat`: :at-val:`real(4), "1 0 0 0"` + This is a quaternion rotation of all points around the :at:`pos` vector specified above. Together these two vectors + define a pose transformation, used to position and orient the points as needed. + .. _body-flexcomp-axisangle: - .. _body-flexcomp-xyaxes: - .. _body-flexcomp-zaxis: - .. _body-flexcomp-euler: -.. _body-flexcomp-group: +:at:`axisangle`, :at:`xyaxes`, :at:`zaxis`, :at:`euler` + Alternative specification of rotation, that can be used instead of :at:`quat`. + +.. _body-flexcomp-scale: + +:at:`scale`: :at-val:`real(3), "1 1 1"` + Scaling of all point coordinates, for types that specify coordinates explicitly. Scaling is applied after the pose + transformation. + +.. _body-flexcomp-radius: +.. _body-flexcomp-material: +.. _body-flexcomp-rgba: +.. _body-flexcomp-group: .. _body-flexcomp-flatskin: -.. _flex-edge: -.. _flexcomp-edge: +:at:`radius`, :at:`material`, :at:`rgba`, :at:`group`, :at:`flatskin` -.. _flex-edge-equality: -.. _flexcomp-edge-equality: +These attributes are directly passed through to the automatically-generated :ref:`flex` object and have +the same meaning. -.. _flex-edge-solref: -.. _flexcomp-edge-solref: - -.. _flex-edge-solimp: -.. _flexcomp-edge-solimp: - -.. _flex-edge-stiffness: -.. _flexcomp-edge-stiffness: - -.. _flex-edge-damping: -.. _flexcomp-edge-damping: - -.. _flex-contact: .. _flexcomp-contact: -.. _flex-contact-contype: +:el-prefix:`flexcomp/` |-| **contact** (*) +'''''''''''''''''''''''''''''''''''''''''' + +.. _flexcomp-contact-internal: +.. _flexcomp-contact-selfcollide: +.. _flexcomp-contact-activelayers: .. _flexcomp-contact-contype: - -.. _flex-contact-conaffinity: .. _flexcomp-contact-conaffinity: - -.. _flex-contact-condim: .. _flexcomp-contact-condim: - -.. _flex-contact-priority: .. _flexcomp-contact-priority: - -.. _flex-contact-friction: .. _flexcomp-contact-friction: - -.. _flex-contact-solmix: .. _flexcomp-contact-solmix: - -.. _flex-contact-solref: .. _flexcomp-contact-solref: - -.. _flex-contact-solimp: .. _flexcomp-contact-solimp: - -.. _flex-contact-margin: .. _flexcomp-contact-margin: - -.. _flex-contact-gap: .. _flexcomp-contact-gap: -.. _flex-contact-internal: -.. _flexcomp-contact-internal: +:at:`internal`, :at:`selfcollide`, :at:`activelayers`, :at:`contype`, :at:`conaffinity`, :at:`condim`, :at:`priority`, +:at:`friction`, :at:`solmix`, :at:`solimp`, :at:`margin`, :at:`gap` -.. _flex-contact-selfcollide: -.. _flexcomp-contact-selfcollide: +Same as in :ref:`flex/contact`. All attributes are passed through to the automatically-generated flex. + +.. _flexcomp-edge: + +:el-prefix:`flexcomp/` |-| **edge** (*) +''''''''''''''''''''''''''''''''''''''' + +Each flex element has one edge in 1D (coinciding with the capsule element), three edges in 2D, and six edges in 3D. The +edges are generated automatically when the flex element is compiled, and the user cannot specify them directly. This +element is used to adjust the properties of all edges in the flex. + +.. _flexcomp-edge-equality: + +:at:`equality`: :at-val:`[true, false], "false"` + When enabled, an equality constraint of :ref:`type flex` is added to the model, referencing the + automatically-generated flex by name. + +.. _flexcomp-edge-solref: +.. _flexcomp-edge-solimp: + +:at:`solref`, :at:`solimp` + The standard constraint parameters, passed through to the automatically generated equality constraint. + +.. _flexcomp-edge-stiffness: +.. _flexcomp-edge-damping: + +:at:`stiffness`, :at:`damping` + Edge stiffness and damping, passed through to the automatically generated flex. -.. _flex-contact-activelayers: -.. _flexcomp-contact-activelayers: .. _flexcomp-pin: +:el-prefix:`flexcomp/` |-| **pin** (*) +'''''''''''''''''''''''''''''''''''''' + +Each point is either pinned or not pinned. The effect of pinning was explained earlier. This element is used to specify +which points are pinned. Note that each attribute below can be used to specify multiple pins, and in addition to that, +the :el:`pin` element itself can be repeated for user convenience. The effects are cumulative; pinning the same point +multiple times is allowed. + .. _flexcomp-pin-id: +:at:`id`: :at-val:`int(n), required` + Zero-based ids of points to pin. When the points are automatically-generaged, the user needs to understand their + layout in order to decide which points to pin. This can be done by first creating a flexcomp without any pins, + loading it in the simulator, and showing the body labels. + .. _flexcomp-pin-range: +:at:`range`: :at-val:`int(2*n), required` + Ranges of points to pin. Each range is specified by two integers. + .. _flexcomp-pin-grid: +:at:`grid`: :at-val:`int(dim*n), required` + Grid coordinates of points to pin. This can only be used with type grid. + .. _flexcomp-pin-gridrange: +:at:`gridrange`: :at-val:`int(2*dim*n), required` + Ranges of grid coordinates of points to pin. Each range is specified by (dim) integers for the minimum of the range + followed by (dim) integers for the maximum of the range. This can only be used with type grid. + .. _flexcomp-plugin: +:el-prefix:`flexcomp/` |-| **plugin** (?) +''''''''''''''''''''''''''''''''''''''''' + +Associate this flexcomp with an :ref:`engine plugin`. Either :at:`plugin` or :at:`instance` are required. + .. _flexcomp-plugin-plugin: +:at:`plugin`: :at-val:`string, optional` + Plugin identifier, used for implicit plugin instantiation. + .. _flexcomp-plugin-instance: - -.. _deformable: - -.. _deformable-flex: - -.. _deformable-flex-name: - -.. _deformable-flex-group: - -.. _deformable-flex-material: - -.. _deformable-flex-radius: - -.. _deformable-flex-rgba: - -.. _deformable-flex-texcoord: - -.. _deformable-flex-flatskin: - -.. _deformable-flex-selfcollide: - -.. _deformable-flex-dim: - -.. _deformable-flex-body: - -.. _deformable-flex-vertex: - -.. _deformable-flex-element: - - - -**deformable** (*) -~~~~~~~~~~~~~~~~~~ - +:at:`instance`: :at-val:`string, optional` + Instance name, used for explicit plugin instantiation. .. _contact: @@ -3999,6 +4020,342 @@ the :ref:`pair ` element above are checked for collisions. The name of the second body in the pair. +.. _deformable: + +**deformable** (*) +~~~~~~~~~~~~~~~~~~ + +This is a grouping element and does not have any attributes. It groups elements that specify deformable objects, namely flexes and skins. + + +.. _deformable-flex: + +:el-prefix:`deformable/` |-| **flex** (*) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Flexible objects (or flexes) were added in MuJoCo 3.0. These are collections of massless stretchable geometric elements +(capsules, triangles or tetrahedra) connecting vertices that are defined within different moving body frames. These +stretchable elements support collisions and contact forces, which are then distributed to all the interconnected bodies. +Flexes also generate passive and constraint forces as needed to simulate deformable entities with the desired material +properties. The modeling of flexes is automated and simplified by the :ref:`flexcomp` element. In most +cases, the user will specify a :el:`flexcomp` which will then automatically construct the corresponding low-level +:el:`flex`. See :ref:`deformable objects` for additional information. + +.. _deformable-flex-name: + +:at:`name`: :at-val:`string, optional` + Name of the flex. + +.. _deformable-flex-dim: + +:at:`dim`: :at-val:`int, "2"` + Dimensionality of the flex. Allowed values are 1, 2 and 3. In 1D the elements are capsules, in 2D the elements are + triangles with radius, in 3D the elements are tetrahedra with (optional) radius. + +.. _deformable-flex-radius: + +:at:`radius`: :at-val:`real, "0.005"` + Radius of all flex elements. It can be zero in 3D, but must be positive in 1D and 2D. The radius affects both + collision detection and rendering. In 1D and 2D it is needed to make the elements volumetric. + +.. _deformable-flex-body: + +:at:`body`: :at-val:`string(nvert or 1), required` + An array of MuJoCo body names (separated by white space) to which each vertex belongs. The number of body names + should either equal the number of vertices (nvert), or be a single body. If a single body is specified, all vertices + are defined within that body - in which case the flex becomes a rigid body. The latter functionality effectively + creates a general non-convex mesh (unlike mesh geoms which are convexified for collision detection purposes). + +.. _deformable-flex-vertex: + +:at:`vertex`: :at-val:`real(3*nvert), optional` + The local coordinates of the vertices within the corresponding body frames. If this attribute is omitted, all + coordinates are (0,0,0) or in other words, the vertices coincide with the centers of the body frames. + +.. _deformable-flex-texcoord: + +:at:`texcoord`: :at-val:`real(2*nvert), optional` + Texture coordinates for each vertex. If omitted, texture mapping for this flex is disabled, even if a texture is + specified in the material. + +.. _deformable-flex-element: + +:at:`element`: :at-val:`int((dim+1)*nelem), required` + For each element of the flex, this lists the zero-based indices of the vertices forming that flex element. We need + two vertices to specify a capsule, three vertices to specify a triangle, and four vertices to specify a tetrahedron - + which is why the number of indices equals (dim+1) times the number of elements. In 2D, the vertices should be listed + in counter-clockwise order. In 1D and 3D the order is irrelevant; in 3D the model compiler will rearrange the + vertices as needed. Repeated vertex indices within a flex element are not allowed. The topology of the flex is not + enforced; it could corespond to a continuous soft body, or a collection of disconnected stretchable elements, or + anything in-between. + +.. _deformable-flex-flatskin: + +:at:`flatskin`: :at-val:`[true, false], "false"` + This attribute determines whether 2D and 3D flexes that are rendered in flexskin mode will use smooth or flat + shading. The default smooth shading is suitable in most cases, however if the object is intended to have visible + sharp edges (such as a cube) then flat shading is more natural. + +.. _deformable-flex-material: + +:at:`material`: :at-val:`string, optional` + If specified, this attribute applies a :ref:`material` to the flex. Note that textures specified in + the material will be applied only if the flex has explicit texture coordinates. + +.. _deformable-flex-rgba: + +:at:`rgba`: :at-val:`real(4), "0.5 0.5 0.5 1"` + Instead of creating material assets and referencing them, this attribute can be used to set color and transparency + only. This is not as flexible as the material mechanism, but is more convenient and is often sufficient. If the value + of this attribute is different from the internal default, it takes precedence over the material. + +.. _deformable-flex-group: + +:at:`group`: :at-val:`int, "0"` + Integer group to which the flex belongs. This attribute can be used for custom tags. It is also used by the + visualizer to enable and disable the rendering of entire groups of flexes. + + +.. _flex-edge: + +:el-prefix:`flex/` |-| **edge** (?) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +This element adjusts the passive or constraint properties of all edges of the flex. A flex edge can have a damping +passive force and an :ref:`equality constraint` associated with it, resulting in edge constraint forces. +In the latter case, passive forces are usually unnecessary. For a 1D flex, an edge can also have a passive stiffness, +while ``Solid`` or ``Membrane`` first-party plugins can be used for the 2D and 3D case, respectively. which would +generally make edge constraints unnecessary. However these are modeling choices left to the user. MuJoCo allows all +these mechanisms to be combined as desired. + +.. _flex-edge-stiffness: + +:at:`stiffness`: :at-val:`real(1), "0"` + Stiffness of all edges. Only for 1D flex. For 2D and 3D, plugins must be used. + +.. _flex-edge-damping: + +:at:`damping`: :at-val:`real(1), "0"` + Damping of all edges. + +.. _flex-contact: + +:el-prefix:`flex/` |-| **contact** (?) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +This element adjusts the contact properties of the flex. It is mostly identical to geom contact properties, with some +extensions specific to flexes. + +.. _flex-contact-internal: + +:at:`internal`: :at-val:`[true, false], "true"` + Enables or disables internal collisions which prevent flex self-penetration and element inversion. Note that flex + elements that have shared vertices cannot collide (or else there will be permanent contacts). In 1D and 2D, internal + collision checks rely on predefined vertex-element pairs, where the vertex is treated as a sphere with the same + radius as the flex. These spheres correspond to non-shared vertices of neighboring elements on the periphery of the + flex. The pre-defined vertex-element pairs are generated by the model compiler automatically. In 3D, internal + collision checks are performed within each tetraheron: each vertex is collided with the plane corresponding to the + opposing triangle face (again using the flex radius). The resulting contacts are always created with condim 1, gap 0, + margin 0. + +.. _flex-contact-selfcollide: + +:at:`selfcollide`: :at-val:`[none, narrow, bvh, sap, auto], "auto"` + This determines the strategy for midphase collision pruning of element pairs belonging to the same flex. **none** + means flex elements cannot collide with each other. **narrow** means narrow phase only (i.e. all pairs are checked). + This is a diagnostic tool and is never a good idea in practice. **bvh** and **sap** refer to bounding volume + hierarchies and sweep-and-prune (which are two different strategies for midphase collision pruning). **auto** selects + **sap** in 1D and 2D, and **bvh** in 3D. Which strategy performs better depends on the specifics of the model. The + automatic setting is just a simple rule which we have found to perform well in general. + +.. _flex-contact-activelayers: + +:at:`activelayers`: :at-val:`int(1), "1"` + This only has an effect for 3D flexes. Each tetrahedron is labeled by the model compiler with an integer + corresponding to (graph) distance to the outside surface of the flex. Thus outside-facing elements are in layer 0, + their neighbors are in layer 1, etc. This attribute specifies how many layers will be allowed to participate in + collisions. The default setting 1 means that only one layer (i.e. layer 0) can collide, with itself and with the rest + of the world. This is usually sufficient, however if the outer layer is composed of small tetrahedra, another body + can "pierce" it and get stuck. In that case the value should be increased. + + +.. _flex-contact-contype: +.. _flex-contact-conaffinity: +.. _flex-contact-condim: +.. _flex-contact-priority: +.. _flex-contact-friction: +.. _flex-contact-solmix: +.. _flex-contact-solref: +.. _flex-contact-solimp: +.. _flex-contact-margin: +.. _flex-contact-gap: + +.. |deformable/flex/contact attrib list| replace:: + :at:`contype`, :at:`conaffinity`, :at:`condim`, :at:`priority`, :at:`friction`, + :at:`solmix`, :at:`solref`, :at:`solimp`, :at:`margin`, :at:`gap` + +|deformable/flex/contact attrib list| + Same meaning as regular :ref:`geom ` attributes. + + +.. _deformable-skin: + +:el-prefix:`deformable/` |-| **skin** (*) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +These are deformable meshes whose vertex positions and normals are computed each time the model is rendered. MuJoCo +skins are only used for visualization and do not affect the physics in any way. In particular, collisions involve the +geoms of the bodies to which the skin is attached, and not the skin itself. Unlike regular meshes which are referenced +from geoms and participate in collisions, the skin is not referenced from anywhere else in the model. It is a +stand-alone element that is used by renderer and not by the simulator. + +The skin has vertex positions and normals updated at runtime, and triangle faces and optional texture coordinates +which are predefined. It also has "bones" used for updating. Bones are regular MuJoCo bodies referenced with the +:el:`bone` subelement. Each bone has a list of vertex indices and corresponding real-valued weights which specify how +much the bone position and orientation influence the corresponding vertex. The vertex has local coordinates with +respect to every bone that influences it. The local coordinates are computed by the model compiler, given global +vertex coordinates and global bind poses for each body. The bind poses do not have to correspond to the model +reference configuration qpos0. Note that the vertex positions and bone bind poses provided in the skin definition are +always global, even if the model itself is defined in local coordinates. + +At runtime the local coordinates of each vertex with respect to each bone that influences it are converted to global +coordinates, and averaged in proportion to the corresponding weights to obtain a single set of 3D coordinates for each +vertex. Normals then are computed automatically given the resulting global vertex positions and face information. +Finally, the skin can be inflated by applying an offset to each vertex position along its (computed) normal. +Skins are one-sided for rendering purposes; this is because back-face culling is needed to avoid shading and aliasing +artifacts. When the skin is a closed 3D shape this does not matter because the back sides cannot be seen. But if the +skin is a 2D object, we have to specify both sides and offset them slightly to avoid artifacts. Note that the +composite objects introduced in MuJoCo 2.0 generate skins automatically. So one can save an XML model with a composite +object, and obtain an elaborate example of how a skin is specified in the XML. + +Similar to meshes, skins can be specified directly in the XML via attributes documented later, or loaded from a binary +SKN file which is in a custom format. The specification of skins is more complex than meshes because of the bone +subelements. The file format starts with a header of 4 integers: nvertex, ntexcoord, nface, nbone. The first three are +the same as in meshes, and specify the total number of vertices, texture coordinate pairs, and triangle faces in the +skin. ntexcoord can be zero or equal to nvertex. nbone specifies the number of MuJoCo bodies that will be used as +bones in the skin. The header is followed by the vertex, texcoord and face data, followed by a specification for each +bone. The bone specification contains the name of the corresponding model body, 3D bind position, 4D bind quaternion, +number of vertices influenced by the bone, and the vertex index array and weight array. Body names are represented as +fixed-length character arrays and are expected to be 0-terminated. Characters after the first 0 are ignored. The +contents of the SKN file are: + +.. code:: Text + + (int32) nvertex + (int32) ntexcoord + (int32) nface + (int32) nbone + (float) vertex_positions[3*nvertex] + (float) vertex_texcoords[2*ntexcoord] + (int32) face_vertex_indices[3*nface] + for each bone: + (char) body_name[40] + (float) bind_position[3] + (float) bind_quaternion[4] + (int32) vertex_count + (int32) vertex_index[vertex_count] + (float) vertex_weight[vertex_count] + +Similar to the other custom binary formats used in MuJoCo, the file size in bytes is strictly enforced by the model +compiler. The skin file format has subelements so the overall file size formula is difficult to write down, but should +be clear from the above specification. + +.. _deformable-skin-name: + +:at:`name`: :at-val:`string, optional` + Name of the skin. + +.. _deformable-skin-file: + +:at:`file`: :at-val:`string, optional` + The SKN file from which the skin will be loaded. The path is determined as described in the meshdir attribute of + :ref:`compiler `. If the file is omitted, the skin specification must be provided in the XML using the + attributes below. + +.. _deformable-skin-vertex: + +:at:`vertex`: :at-val:`real(3*nvert), optional` + Vertex 3D positions, in the global bind pose where the skin is defined. + +.. _deformable-skin-texcoord: + +:at:`texcoord`: :at-val:`real(2*nvert), optional` + Vertex 2D texture coordinates, between 0 and 1. Note that skin and geom texturing are somewhat different. Geoms can + use automated texture coordinate generation while skins cannot. This is because skin data are computed directly in + global coordinates. So if the material references a texture, one should specify explicit texture coordinates for the + skin using this attribute. Otherwise the texture will appear to be stationary in the world while the skin moves + around (creating an interesting effect but probably not as intended). + +.. _deformable-skin-face: + +:at:`face`: :at-val:`int(3*nface), optional` + Trinagular skin faces. Each face is a triple of vertex indices, which are integers between zero and nvert-1. + +.. _deformable-skin-inflate: + +:at:`inflate`: :at-val:`real, "0"` + If this number is not zero, the position of vertex during updating will be offset along the vertex normal, but the + distance specified in this attribute. This is particularly useful for skins representing flexible 2D shapes. + +.. _deformable-skin-material: + +:at:`material`: :at-val:`string, optional` + If specified, this attribute applies a material to the skin. + +.. _deformable-skin-rgba: + +:at:`rgba`: :at-val:`real(4), "0.5 0.5 0.5 1"` + Instead of creating material assets and referencing them, this attribute can be used to set color and transparency + only. This is not as flexible as the material mechanism, but is more convenient and is often sufficient. If the value + of this attribute is different from the internal default, it takes precedence over the material. + +.. _deformable-skin-group: + +:at:`group`: :at-val:`int, "0"` + Integer group to which the skin belongs. This attribute can be used for custom tags. It is also used by the + visualizer to enable and disable the rendering of entire groups of skins. + + +.. _skin-bone: + +:el-prefix:`skin/` |-| **bone** (*) +''''''''''''''''''''''''''''''''''' + +This element defines a bone of the skin. The bone is a regular MuJoCo body which is referenced by name here. + + +.. _skin-bone-body: + +:at:`body`: :at-val:`string, required` + Name of the body corresponding to this bone. + +.. _skin-bone-bindpos: + +:at:`bindpos`: :at-val:`real(3), required` + Global body position corresponding to the bind pose. + +.. _skin-bone-bindquat: + +:at:`bindquat`: :at-val:`real(4), required` + Global body orientation corresponding to the bind pose. + +.. _skin-bone-vertid: + +:at:`vertid`: :at-val:`int(nvert), required` + Integer indices of the vertices influenced by this bone. The vertex index corresponds to the order of the vertex in + the skin mesh. The number of vertex indices specified here (nvert) must equal the number of vertex weights specified + with the next attribute. The same vertex may be influenced by multiple bones, and each vertex must be influenced by + at least one bone. + +.. _skin-bone-vertweight: + +:at:`vertweight`: :at-val:`real(nvert), required` + Weights for the vertices influenced by this bone, in the same order as the vertex indices. Negative weights are + allowed (which is needed for cubic interpolation for example) however the sum of all bone weights for a given vertex + must be positive. + + + .. _equality: **equality** (*) @@ -4098,8 +4455,7 @@ of the other body, without any joint elements in the child body. :at:`body2`: :at-val:`string, optional` Name of the second body. If this attribute is omitted, the second body is the world body. Welding a body to the world - and changing the corresponding component of :ref:`mjData.eq_active` at runtime can be used to fix the body - temporarily. + and changing the corresponding component of mjModel.eq_active at runtime can be used to fix the body temporarily. .. _equality-weld-relpose: @@ -4208,19 +4564,26 @@ This element constrains the length of one tendon to be a quartic polynomial of a .. _equality-flex: :el-prefix:`equality/` |-| **flex** (*) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +This element constrains the lengths of all edges of a specified flex to their respective lengths in the initial model +configuration. In this way the edges are used to maintain the shape of the deformable entity. Note that all other +equality constraint types add a fixed number of scalar constraints, while this element adds as many scalar constraints +as there are edges in the specified flex. .. _equality-flex-name: - .. _equality-flex-class: +.. _equality-flex-active: +.. _equality-flex-solref: +.. _equality-flex-solimp: + +:at:`name`, :at:`class`, :at:`active`, :at:`solref`, :at:`solimp` + Same as in :ref:`connect ` element. .. _equality-flex-flex: -.. _equality-flex-active: - -.. _equality-flex-solref: - -.. _equality-flex-solimp: +:at:`flex`: :at-val:`string, required` + Name of the flex whose edges are being constrained. .. _equality-distance: @@ -7361,44 +7724,6 @@ tendon, slidersite, cranksite. All :ref:`adhesion ` attributes are available here except: name, class, body. -.. _default-flex: - -.. _default-flex-contype: - -.. _default-flex-conaffinity: - -.. _default-flex-condim: - -.. _default-flex-priority: - -.. _default-flex-material: - -.. _default-flex-friction: - -.. _default-flex-solmix: - -.. _default-flex-solref: - -.. _default-flex-solimp: - -.. _default-flex-margin: - -.. _default-flex-gap: - -.. _default-flex-stiffness: - -.. _default-flex-damping: - -.. _default-flex-radius: - -.. _default-flex-rgba: - -.. _default-flex-dim: - -:el-prefix:`default/` |-| **flex** (?) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - - .. _custom: **custom** (*) diff --git a/doc/changelog.rst b/doc/changelog.rst index de8ec530..aee18a76 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -8,27 +8,47 @@ Upcoming version (not yet released) New features ^^^^^^^^^^^^ -.. youtube:: Vc1tq0fFvQA - :align: right - :width: 240px - -1. Added constraint island discovery with :ref:`mj_island`. Constraint islands are disjoint sets of constraints - and degrees-of-freedom that do not interact. The only solver which currently supports islands is - :ref:`CG`. Island discovery can be activated using a new :ref:`enable flag`. - If island discovery is enabled, geoms, contacts and tendons will be colored according to the corresponding island, - see video. - .. youtube:: QewlEqIZi1o :align: right :width: 240px -2. Added new signed distance field (SDF) collision primitive. SDFs can take any shape and are not constrained to be +1. Added new signed distance field (SDF) collision primitive. SDFs can take any shape and are not constrained to be convex. Collision points are found by minimizing the maximum of the two colliding SDFs via gradient descent. - Added new SDF plugin for defining implicit geometries. The plugin must define methods computing an SDF and its gradient at query points. See the :ref:`documentation` for more details. -3. Added :ref:`mjThreadPool` and :ref:`mjTask` which allow for multi-threaded operations within the MuJoCo engine +.. youtube:: ra2bTiZHGlw + :align: right + :width: 240px + +2. Added new low-level model element called ``flex``, used to define deformable objects. These + `simplicial complexes `__ can be of dimension 1, 2 + or 3, corresponding to stretchable lines, triangles or tetrahedra. Two new MJCF elements are used + to define flexes. The top-level :ref:`deformable` section contains the low-level flex definition. + The :ref:`flexcomp` element, similar to :ref:`composite` is a convenience macro for + creating deformables, and supports the GMSH tetrahedral file format. + + - Added `shell `__ passive force plugin, + computing bending forces using a constant precomputed Hessian (cotangent operator). + + **Note**: This feature is still under development and subject to change. In particular, deformable object + functionality is currently available both via :ref:`deformable` and :ref:`composite`, + and both are modifiable by the first-party + `elasticity plugins `__. We expect some of + this functionallity to be unified in the future. + +.. youtube:: Vc1tq0fFvQA + :align: right + :width: 240px + +3. Added constraint island discovery with :ref:`mj_island`. Constraint islands are disjoint sets of constraints + and degrees-of-freedom that do not interact. The only solver which currently supports islands is + :ref:`CG`. Island discovery can be activated using a new :ref:`enable flag`. + If island discovery is enabled, geoms, contacts and tendons will be colored according to the corresponding island, + see video. + +4. Added :ref:`mjThreadPool` and :ref:`mjTask` which allow for multi-threaded operations within the MuJoCo engine pipeline. If engine-internal threading is enabled, the following operations will be multi-threaded: - Island constraint resolution, if island discovery is :ref:`enabled` and the @@ -40,16 +60,8 @@ New features Engine-internal threading is a work in progress and currently only available in first-party code via the :ref:`testspeed` utility, exposed with the ``npoolthread`` flag. -.. youtube:: ra2bTiZHGlw - :align: right - :width: 240px - -4. Added capability to initialize :ref:`composite` particles with arbitrary positions. - -5. Added `shell `__ passive force plugin: - - - Collisions use spheres located at mesh vertices. - - Stretching as tendon constraints and bending using a constant precomputed Hessian (cotangent operator). +5. Added capability to initialize :ref:`composite` particles from OBJ files. Fixes :github:issue:`642` + and :github:issue:`674`. General ^^^^^^^ diff --git a/doc/images/modeling/bunny1.png b/doc/images/modeling/bunny1.png new file mode 100644 index 0000000000000000000000000000000000000000..d1b6bb3f714bce49a2ef85e0a435c5c727f0ee81 GIT binary patch literal 499539 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ð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

Tk5Gq%=hy_DI&T}T_T0-p& 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

fwr=_K` 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%0A%{QeBH?_@8r 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

O-Y}R#5`=?lAHeFEbJ7v)F+9 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

4A2Y&_s%|4illm4^x+J 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

OR=*-qQN=f*Ne8FN^R2{_yG@tRfa;^})Q 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

#Rs4{%kg?dv@x{lJ& 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

G?F#&O+9%Zcby+kPr% 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�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∋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 z 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

gWAH257rrKSEcjm8a(g4 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

0s3Ku3pj!9Rk9xe$Uv!qXd1~?GeVF` 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�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�{ z!%R4*tSOkioO(Q0xRf3}A#-O&-v3r?C5rv~{O6$@9#hf4O1?_Jboq0l$Q=Frzsj8@ z)cR?%>YT}C~};PqXgIGa*Dn$7;a zo_zj#Ox_p~%8uHwhl9<Wps?16fVn;K#75-meD(Ht+9exxX!4A>>(G=7o*I zor7oTLNUa1o4|SDZP8z78S4H=HiZTT$asgPkmfO-d#|{Uz0rb!iIU<2i(7d%g?ERA z4{d2iWDa@~++Jn6yi4Ytb7Y5Ra3nmXOcsNCwd$7Cbcfm2?npZe@)*(tAPT1fcJ z{X;1}FgCR`#JkI~-W(KmO95TfuE4btbgLt3qn#|^&2~$YppNs&!I0~0q4fXM*)|a> zboMegfm-{tYAKiVZqoE!z8aAGBj+m4Ri1xtmgIZl5y)yAjAghn`O$8JKHh!1p!xyTYYX|SiJj)LqcfB=R zyi92${Ar1~)MtMs)AaS|IJysvR)VA@vJ~Yjr~(_#4P;Q78?TE<2{C+aCohiKBMMx1aO{o6tY(t;jlAyP zRQ6b_FA9b^ex%oSB4=B&0LBtJ+&d#`py?sd{?NaFFES+ZZr}+yfE7%xgjLLK=c;)R zGZ_eABmdpl4*VAgU$12yfx=mNEX?lYwQCx_Lm}llYWH-U zq(~%iw?8;MQ8Yv&&KEvzG- z?8_v^uX#V}I-<94kF0;~Plk%!_UuKzv8S@gJeQWjsM3ZlfAUBgI+}LYJ3&zpeX`pZ znhP0HirnUnFc0e?!#N)+mRPQX{ENnjO?wl1M{P^LU?hSDo>OnMXOJ-NPXEgu(1<59abh(@Df;jAB7Bah*c<9^a#k zw8i4b!u+N}*2)~z(J)b=o2U5r(hx^$iUeJz#aofEFLiS7VJmezF&aFYHb1PZE&;JxHk^FTe8%=Rphzw{j01X5}DdN8j{eZQ#`++jeJj+4j12dxTuE5_RZC%$|}N*2w2t3F{_tMG3^dG9e{;7J56IMXwIKhJe_ zz*A9TwcYRxd^Mhdl1e4Y@3v(w-bb2tclZRPKZZ#pNe^Y6$yA)TUKLkvnsOfqHdE$T zF@Ok`(8>`S7LH#_ORrLr#fiYP{DU$P3hgUU*-ILu(_l6|^E~=#r-qV~!APm&_^RBh zD2!$BL883o4C1NQns}RlrrBHD7vXDBtM1$hsRYwko_MoaP_Y@h$o%_0karQ18=! zXyhi$5cGmJYBGfySmT~jj)vW)EOM`S>Ge{5=B!5pyk8Xe=iHt>4CqH33U<+M_xp9h zFfP2QGA|shKn`G3)W%tyd6o(b1QNzMTq@+$MM9Vvhtl~?>0BJ780E? z)9v^by~Wx|JAZ#dOv#4W97p3UBGmc&b{zF;T9j~vCnu)vMzXA%NKXHW?vtFeL}1$l zICr^BwiLUS_B6SG;_b_?OYpYo)tSzFq=s#-%@iT%t=+HwQRhJnjf%MnYiA52&Mf%o z7c;?Gcr$25%(!Ad#q#)K<`i)aHTrtC@*h4STuvBNeGtuaqsfLVWl$>rEL{ZrQbB+J znv=^TGDaHr_b)O=MNT1l{U4>GgpFJ6gNRV+9774A`drALzPeDqHE$ym1GmD?WM~6P zJV0-L#87AfhO-Kw>yJc5aMjM-uQ4nkdHZJo}?!A1Y|A$@(aU3{8xr zjW@Uu*s;Nq$KrQzp)!};qb_u9%^>5{O5$d#5s>4tszN-Lt}9yYGBaB4E5jEzXBrhK zWdTognvp8iKsu}z8VMX|!lj*pHX=ISDnEGv5Zi>zD_)BgWZbgLxs4N04(Daxxhi~X z3m*8*0`aS(vc2)&w;AE+bucSP0Sp9r)~d}~z=kY?m&d*dENGvDP91OMqEQQx-*S$AO-#Y|0h> zG~zc9YBBPTDTt^Je;LKxk)di<0zZ$NX?D05%iKAHDTSfw8|tE=%@N1RKWd()9)7{w zo8ItIKTzIa6Syqzn7j~uAia1)ej9oGoCn;OJU{K^I>^3@6DL7z+bX);fotF8GT#$= zb!IFjaH+55smXs>_7fgGo9p!0b8biCv2}|T_A95_9qum0kS`YZhHRoM z^IA*y6I1jdZf#sM@b9*7j|coGGMwQcuE@Rd3eFL4n}i@08~+uRg0u%tY&5O+yoYzYnwC9t=J?J@EM_ zym%I4l*jF|Ls0k{<3D`C6Rp#R>AHEU-*VpLK5JchECb*Eh<}_zIMnA3m`}r3bxgi? z>9sElre0=0HQ~JAy)q&z`PRDbXkOG7hiktWZ|EHgE%8#*FLZ}>Dn?a&GPzh0yf*z= zw=>+4#*<9C6_}0-Q}#BxS@p&?sI5(!3|oblJ zImhAXHt-(^5B%{J!x`%7SQ~YvE=w6r3DrQ&a}I>8Iz{3>HR93Rj&D>5?=*1WpHcl` zP=AsA3TC_GmYW0Pl->0&S3M=}3i)cArEwkqW>X*V{MmGxgLO^GR5&Sm8pr|cy4!r? zIP<*SdZ0EJkvQkyGeA*%1(MBS7S9XC(>7{{2ZN$tWQC-@`*F=u;Aii1p}UbIJI|uq zEzoub%k7-D{eorPbS^ahej?siYmOjYH25x-=P!Ng2EA3-N2n<29p&JmMH0+LqIZx!|s=-4F6BfflPbV*dwPQN0apxol8?!@$X zl*p8E3U+6}^1s^XkNo#7GErEpa-G&n)??!pC8}YTP2C$+8Vhzj4U z3GSU>!Ix%)VEvyUu;>Ep4YC_}c(%n5xGB9jFX1d=fg7A5LuyMHL6*B6mvvh)g%IEG zC!Q>>=f5F#mlNN)T_X9q&)YkK$r!mXdJ#eG$Sm3<@jd0Hvs~&tJ}^Q-4TQ5kmKA6_ zOf8xfd-z#|W#?C2&8*&q$dz!?ls48X;h8drhKlk&Z109xsD|j$7=mvG?frhiHFv3F zx+G^@EUi)kFi~hevF4GaH498U+;;w7dULXLeUNke+G3ICmg-`tjB^uP3#N2GGomio z5@Y1@;Sm`GHg00S)N1RWb}@f^Dq1{s-e-x|J2UZdAeYT6(lP#K>_qtv`CFmvCzw09 zY$;SWZ`v{}?Q_E+25@8|zXri@R+0Pe0~$oFw^`p-dT14ISyv}V^*=$o-Z_rmFwpn| zjEFtab=A)5kAF%g|0kZ#`x(PwG>1bV!IctR$qpM{EcLUI`4-dpZEcm~I4;W%M;?lw z`I^M=sV~}F+AEfRoUAq1F)W2jjQwuW4QLBX(RlJ%2CF-3tGCXTu^n4rxsjwvOnzkW z$uA=}FFS7l5pfxiKd!ZSK8I2?!uJ0=TGwhB&35ev)IXF)pS0kR4@Ka+cBSt<^M6VT z&8}s5_2Elr7c5w%sXI|k<*rz05NE<`f5mfhwEhj!T5Dpu6?v&)S{U|sZlvH1cr#mX z4fdXfKy4wj8qRlgN9)q*Rp_2JAI5z5e#!7DEA^JpHIerVR+(h!CACA^)2%-DQ5K8b zwr5yoGUHH5-6QwhC9~;qq1Ei+s9Q-{vsA>)5%_69pCdWKG2`;zuPZQ$QFB%*_Qf9K z0+8r;%wNFNEqN&qVVR(de8C&*s3`-GNB5c(3wADLYbVk4@~iuDd>kv~axM&r{jn{q zqbcoo3JGhRx%RURgb)2m$lZk_gp|-|AzvN7TULa**zU3ozSFtyc>T-r_J?VyCHlE- zd$a|%Ag{OsL7Cv!yd7u)x zoq~UlRC8o2>}Th!Pqe{FUQ}nkP*fyHtu#v+)2GX58{HuTkN1)pn7X8F^L46(Y_(Tm%@o{@VH{k)hNoh2l~+ z2_jFhDTS!|%IA};kKgeftRX1v+FfGj<%0cCqSvxC7fj}5c&eV#Bya$}ZZRwu zGwioK74YT*3y(k*pV}JdohW@rvWT<^Q*0$~5lhIM?`ASskQ^{@4!1WoPG%=oW zMhB;EZkS?f?)lf?aYN^5GQng2O#)vllXQTPn<=*_a_I^YxE$1{&0< z)0Vqxu&`2}_$7nVrRNV8J||Z<<%>ekzq9#)>8__tSQ~4nbH?8Um!`vbQ-gurNh#+ zZ_m0jCNSUtx&-5Sp3o;JtvA_15waFC0+bOl$*^aSZmV>ifOqX7wAtoK((S?Ok~D|g z#TVHxZ4rhh%JE*oMEgT3#{=herR1iP-5M~}&#E&{hf_nYMUG$O$|G0_TXoWgZpD86McffZ!$_ulf=w{hGoliesqWqAv7l=}>Z1 z5xl(+xX$6-SOZwBvbEyUxRC1DsmkS?{$sYqb~%>)4fgmjeRhO1)(%+1F?G5+x=b~2 z;X*z$SPKm2M9zp((DE+l^K1=|<^U11dVsPef~_fEDc|B%`Lt-x2%c!N-~EWTfZGF8 z?eeybtTe1E`L06}t8$q~$Mqm{SwCOvV#vPZLH)NBh)Ml?v7h_BKD7K0ho*u@x-4r@ z6rjht6<2zHn=z<7o$^bsIo_l*9ac}<43&jK*B@-gud|HE`C~|HkE3SDW!(&@FFoG31h6%YfW5D^@t>)sG9A-H9=|X*&O>r zE9wA^j`wSBXM@JVj5rp7LcDkh?M)Qv^>KtBeiR6`K7FU%y=&g3w4GABmhCBM@Sb9t z`(e%|njRn(>%~8eF5S=lD%A{#7&$(BEiBM}PCF`ozYmgj& zD}Fa8->P(9ZCJQ;Klvp{pww+kRu5@xRhRuyx%uBzi|G*UeC1vkelZ3)yVj_Xaxh3M zomj(6K`>IEG4;G(ZOuIY2Y*W#;3(q4Hh*L-;P9>Qy98c^#I%8j9R1^d)Hf)(r#75h zy3f@Z3CfvEy*kcYFL$d<@c4%6(f1>6z5u1T)+{~Tj<$+2d+@&Qai++> ziyQVtCiHH$9;#)TzQssuuOGSVV?xTgQwZg1udi0gO;a16Mo@SC<(^kN)<=%kljT1&_7{hu|%Gz=+vb;7PJ)pQ~(IOJyiqf|;+HspEU@+or}@k9L9V-oBBV2VGJ zaM@V8rfE?s;kSQRtYk0=FvX~~-CC(2Q=XS!YDAy#v>Pv0uxU5Wot}BFgNGLvA9935 zKpdu?*Y?|!HNOKk&>GRJ|9h$A<~8#SK^K`0>F|8c=-03T_VVT#e_qZD?-16 zSCiuYUrtKASFcZJ0Agw6&%{xZSmMebgy^O!fn#&EPxJICiw32ThNT~Gk%AC_kd_7U zc=7U)_w?R+4ja=&eA_0mOQZ%Wp|tzBUGA-Jc;W%oa@4!`5Kz>>URAIweUw6!r%%t{ znjV}XMZ$J;+~1#;TCsd|LO!&AeAT1A-Q$YNkWpoUK28kd1Hlv+)~>7Y3EUE(w7mqM zfVi7%BZrxf-ZvtZl>h<`+ei_*v8OMZbtR9~!skc)H@G5$2adV@H;3f4paYBi7-N~Q z`t0*8&&W|&%Y1%1qxsP+;9+XJU-?p0B@{ROfl;kpJ%G|GX}G&D^|sL@o&9pmtOT>% zghJ4_X$_TO{p-pEsK>5BpWc%N*e|{71mgFjW*FK!cz3V451AfTen{+X^j3>dW^}mJ z@^Ih#3XSIQ@A@aX#|D}hOaLhhc-j2ivz&mD0CEliei7Q7IWgr3cf$&+ZZxm>GjEK-{76Hq<1h(2t& z&q^_$Yn;Ir614_7MhE}G2H$oyVGgJqD9=3{dY%=iB1tiCrR-wHx0GvVbud4$xF&kL z(?G}MvR{qrTk@j}mTA|7kMrDD$E>pIrsZA5+YMauVdXAu?C0O1ROT~^nUG!SiUXSI zp6kMjMT9INgPcnvec!9IpC$Ovc#nYcadeA2A!QH#iEmX~-$l3O8Ai`7)V+1Zq`pn} za+>gmS{vX}?W;=KemXHAo6qk$R<{s#os}|NC_1eA=;C^z{)ISkGJa6)%-JJerdE8K z+bVOk_0cxrvZ3u^1@}j-_}arhzADZ~aDeVzLdka?v8Y57z4#`-^IXp@<-q&8ZRA(E zR@w01J3qh`$?V)P-9uW?c?|^vmkc|w2(pRP#W+1sh4}`-ku+%kPp_u1XvHMEoEgg48 z4GI;&MXMHHtKaI*6rTZwtx_{zO@gR{{R{Hq&7oz4!0{roRfHCxS_u-i430c#GmDpv zU?z|Ac@Rpn;5>0EvfEd7m-c+*zFjrTUP+ZF6uzF_y>}qiVoKCpP_}){@#m8};_RKg zDCi6E>7vYS$_-NhRcNQst5^!PMpr-zA{%)4Zw>aHh=@aQqyXSePxDCEN+|c*fXHv85=tA8tMKJ$tr7@cg)s zmn#w;SCpm1-=S|)42`N__3$-9`nM)|Wj*jP{vZ~2y1TER6=Y~)@S3q$L&dgLSZ8TG zr_w}z66k{rIjNzVcDuJ32iTuye%^=W> zc}I~Y)cKg>A8jyfR9i;(d_^EzLr6-WB5>zn*#A-W-tlZd-WRYD#E#LTR#2m*W^2Vr z(4w?ft)i$^ZEY1RVnk7D6h+l4sx7rTj1YTP#oiKo6|rL`kI(OU{`fwB<^6YF@B6;@ zo^$Rw6K6Y$E>GW1-`ob3<*}`0Q@7S93rbKv3}z@;Rniv3b(`x` ze37J<_J=S#F80cMic$S|5h9vI;{6vglb*=@%;l%Vl)?c^0HognU?XhYOJSd0E z_PHwV7rOk%IVTy(ATgxc0NPw)utif(xB{AA@c*`p6w9!)%v|_ zZy1(exDlwsbSrq6vSec;VR_6E;{YbJnE-M}4hN8A9X`J&qBPH~odDlH?9{97a9Leu zaD>iZQW=3;&m)ZAQ*fDGdmZ{(O^%Q`>0=q1E;^&2K0BdeyE}AGANmXyyQ*7h!l^?+ zCQ-98*@QW+h#0c$OEV1{G+)OHDNEF>-aA3N)pi6ao?wjyPwr+4C&;$=sq7~iugNkq zsO4dUd=9H6k#myf;}SHTta_!SF$S%h z;sOUqR6xKn`$H3X4eOxzcvJ9B<8gYgQrLL>-O4r1tEbO5k3BA2bA%J_Pw2~@q8)CT ziMxDB+RMqjW?A@Xk}{(3Rk0+is%_pL$tlUM1iIE6jxc_5N|T^&r9^djJ1=-bBlF+o z65yBETt$wDYU-FcsCAUaz}35z4=S4jv5qA5p^MYD`sVK}gsrfKYeHlu4@IoRfyHiD z%hXi#Y45^SX$>Fo2*TJ+Tgbz2QnHDDnHXak!r9wa^w@>9Qesrqp1Lp)S%%+n~1X?)5RS3c1b~S`rkjS zp}ZqqcRbQ=jIrYV|4}R#o&G7TV2%3y|)NFStBLV`p!AER|ll%uZch^K#*p^H<{iA9#1QdkTZBA#R zH&hbXsmP-t1b!U^H}!fe(4XVA$l>`RP?7Bhi)z^VE#FmOy zA#nh(O0Hdd&2oK910A|OL2&-`YF;5Z(!k?wMfi)4L4^rN=BmKjb#GQ;dOySPQy7V)Sz^p|al~>A-s`C}25!J?LJzM%yUI z%fq}yR}hI^mhk6=;7@TX##s9%cLRWc`h$G+mG_F*EE&R;wrdxG3&1hpF1?uWK+H($ z_cE1-cwb(H3#brO&#~kS2gib1p8u&_Yu%qKUWs2sG?hd-ruR98r<^YaaEoC35^CF) z;Wm1maGNmo#2u}ZQ?HT2-n1AZ_+mWT1vP}imirsC%r{D=VysBEMhC4A^+CpfO8ckd z*J`PjDL}2g@xm<)p#^)+@e1&wS2b`>27pHz&qIiseb~Q`&P>U!b7N-*d4^}1Kh$>N=o6m_)=rj?L3~O&NSD)V3L4)uO(Neb z;0GK{-K-EV{XX{Y@-RxplvYO{s{Fo^$7pPSFV0>tuv`*kF`%&?oEe~n>J{%OaBIlu zyvY!m&lof++G-W4y`2br6OySS7~!D{XpB%x?MJ(PA0e}CSIo^801Qtrf#h%p{6ug~ zZTfUHNgTGfo-7_RiswHKV;L4)$7aJ&q+PS-qhp>igBK+Pqt-H{`hysiuLWt(;*(YFZ~;t7!O!B{UBi(dfIVKW+wO|{XWre zd5p`UA!3@Ae>`6GmFst1qQWy<&FhI2npD9g=~&&a&ZK}}J`%UfSHp;xrgG{}2;A4W z_>)$>;Ig$k{cmgS zsXgj?m^TTozX1fD0mj%KJ5gaQw?WH}U|=gxyT&Jen1;Pzdu$R#&aRXYRV%JP#qm40eXM$ zWo2GpmJiCkrP+6uU~L^9w@F%@+hFTk%D$vG#VZNT-sP>3rHB^04o3%i^}O~Oi)-j? zdfQQRT&8`(o!3^6ndA#-A~KHd>Wv673n_|aYZ7fMz+UT?KH@Z;>WT%4!EE8GDzYV8 z;DgV%<0v$fS+gA+5*g2rtw>W%Z!`fHt-G&XbrJs1ThG^3yN#h8tAWmx^Ek!S_qluxqUUqJuLPrk)GzVzH+3{moM`iZ${AV_aeTGa;XG0N0h_7o!=MloNa4?>y7FF|oB?$^k{hSlb9? zpV=!n!AQ6_%dmjc_!U5ekFoA$YC!=b&!oaZG%3y=PduI*LJ)7Y!Ezc>IT4%MI~aXJ z&f|_eKu;m#>5U&9hn3pN7W}~z`eD9h$a?#;zjiM+zH2>^gvSuQEZ6}tX_qlSewlT8 zadWdZw3)*h&+X(asi;o3^BhUXCuMeLrN^mI_4>aEwm2fap~L#_1-XRT)KPS+NS{-i4Iulv^gXs$9<@m%97 zd?)~lNV1+I#+p=%-CczS;3oc;q>4>(M@j9SjcH>cEYQ- zg@r|J=stSe1is~ygsLC0G3<(1KQ7u&OA!M?CpM$sEDk%(ODi4BOCMi8|N15vC7%q} zjfkkBM7P`#o_4?iA|Xh(x2nDp-#F%5O=ptVg+|C*r4@;k=W5DI$y`_E9_l#`CA&4? zQSH5=)JQ;VPxnw_ghW{D_6Ia&%6~ZqBsxd2K1kYlOxT`y7doA% z6?OtXpr@PbbIGs+gMmwCXAWXz1tN!RtPA^z4^QDce(sA3mUefxedb<|D`3 zuN_Nt4%NQ7C4_sQZ|J6^d(ZmNaPCXvp=@8{LxK9eUW5YWT_92w)_S3vlz96@jAU9I z6%uph?~m-g%vn`owaPQ-%pRVG7K{ZpfcmHNpFABSgqCKY01j6w8={RL)z|^^`8(B| zlH-ac3ny6*l1_rq?N8q;0?ty+b5D8qVNhS`Iza&b;W8WAtBlZYcr3YC>k&oBP=3lq zC^tw%Sk~L&e%)FoE>dX0d-wzB>8Tvw&-|iartDD0rC|Vz$ZPZq6teAG{hhtqf zPd`S}1Q@mF*^?r0Fg?(c<{Wwz?P$26Ea3F&ThiUPZEt(t+Hck0xvG0AE_H|;n*lpH z`N;92an|nD)XjkwYKZfXB1(k`5gg(Qlo6{9f6mC~XL!Ld{p{T;FZVRrRyQe+Cn-dq zsNyQ(e`Toj`EfMO|5uXcjSpR*UR25H(6k7}Or2|Uyv>@vC(BM?+$hJmt%ARfvN2Dx z$hN|>nvUcC55`sK^Moe-uOi_MHs@lTd8W}2(tc+!}5tr3>B4$x2m_-1htR&myoL(4TB7kjuZpFeEcNe{v-`iAo$VWDfW zI`03_EW#3Vq`-9;^!hZLY-lwu$17nmq0IQL zECs6ItUR=Qs5fDzU^-~-V#*P3m+#TZ)H_%=Rmf_=H{<%$3ni&%15Y(_-}cP^z5!>u z=C5Xp=L2kTNiw~&&kU)k--z^9>0GNcmd3d6@7^8y!u<9(hQh;)N5~)p0Dxg~T1C#) z+h(dBfIt$9qVT|mUYCIEwwQ*Dyi9ltG2FpQBjY>+T&8Nf$BWO<;-YI) zLfTVRfej+AC&g#D4Fk=GUm$qY#4pFKrSe`lYYl)3UcZx%OhmqnlAr(V@gk$uy9s?d zc~?Zu~VrGoI3GNDg+Zw_b)f zL(_boZ}Z895sef&6*Uy|c3wI(oN?X3DCN3*1~QUficsue65`bb-{FOYeOyClSHYMd z6`Wos`H|zkv>&5m@gSsF-KYGyd1YeFnf17O)nCo0<4PeZWqK$VEzw}6k>1phR~`_>G>^G16|VcuaJ_XQ zm!W1!3E1$~diwQ*HWSU1*G9Oy$2R7VG%xWX_?Yb;*3R#*)mBo2FjHWex9*9MvEA)5 zWa!s(ddje`ef}9dXqmYd1_SSWrcD7bA8=E6fXIKRfG-byvNDKFA?k^o-pa6*-wXdD z&NN4xxL)wbtJ_!C1N71xdC)5vBaI2=*i;3tLGSO1FnPB}8|Y_IIzH5G?|Og-TR}|R z>065X_)1a0>$T<>lw|DolTLo1=~e^!u2rh)+Q9GiSgoZC!%euF)yXf&e8EPZU2St{ z6;)JXSZIpswG-)QQSLFl8Bj-k<$(f$QLffOCGgTB(}|rgYkR?W=@a+iAJgXo7mNkl z{qG+x5UA!e$?;Cn@6V~x-0Wmnw~xOag+ooa*K4m3II9}h{;_9TZaoEFrCxa{eNtiL z#?oOD<3?(jl~9E2TnKEZM3DB>t?%^fk(|Y{*UV43`q?LWrL_|menuAAmQ5!}9tE|> zh`GU2%rUakkL&{@7q1={02!dXCD@bqiuf;S8Atyh^EMTUwZ&M!!V--|Y1?xsZb3ll z!W13Hzt^aL%!9$kjn5kQ^%@5HR7IV3Yx2}C&-USN3Hn&(_3h>Uq%M$;h^uz6yqarP zgXsxy1F?e|p3%*`ZFy^dM$;s;_*VO^O0>d?QrI1?Il`WkUkusSfdKL0cf00DvCNNR zM$Gi#1MSaeI)wN{Z><1%EIEM2Ghj4hrr*-n%EX(0`GnEQ9R$1cTRQ&@sfR13|1+?T z7i@pkuZP`HKI*#uw+PG?BUEFk!PNJif?bS*PBLu!+iF(IChbP6b%gV!h~+rt%z~&~ zlg55zH1$oW*Uy4iwETc)mYTiXVo zZ_>u*sR(r6JQSsb#WdWilcB6T*h#l!Vefwf4S>>S_T|-`Zba0=QJYZi?)bfhPJtF^ zH%hH-n+KFz{*so`WPKggw2E#Np$cblxu@GdWOlThr;prnFZx=!q=cqyq1b`1%hg=^ zLKX=Mvo4tn0Iflxy|K96N9o_a`-TMJo)K66`TGo~+?o|kBW{kR$g`Tl!zT(jfL0M+ z9hy`#{M6m1*I9)kXZfPQWo}z6-kfPa*(i3zIVtA-q)Y$+BYwzlA{>8)6ABzoq^JA{ zOO((u9Hvy^R{$sd3|e;~k{~x(T(J=vrO3}0>)Aj*FT0=b++GdR^DNWLNjIcV9IVlxHg!FiEy+_e5@K8nU5w_>hMoCbi z_G-nn0CuGTf%Nqx#$G!Jk^D-Kaomm0iUv8&CmuhM;_bXS zHZw8d-!PVa5l7Qo8^HnpjOi{yZb#Y2hH}5MSO=%2jMbhgN$7@c;`H5!Z=bU6Vwu}T z4KdcOONhN|+eh3L@3`e;wrH}eZgMf4NVVOW&nA7a`*rtQ zRjFOGozOu@t;B9NW30@g?=HOMZs#zFAjaE!JZnlzL6NwM4*0q_sbG%$fjI-b+x?kiJ8_# zJ8g0vD5y|GMU^h$C9G*J5AMej2C$S$1Pf4IFr1*cgQ~^m#m+YOT!!KU z-+Kl*Z({`j&N-{?#SKe6yO)$wyT9HAxYW%Jo=lp2K+b11{l0Km<`f;wO$h!y1=OJk zKYmv-;izxraJO{t{s-9k<+mc1L)FyC%44aZP`3+GHk1Gb>rIBsZ-udOw&zIa`7n;0 zZPEho0QE--nB&dt^h$#R+;_oerO3Bu^xy335+-&9EeeIJ5}UR>3I#Rn!eVbhfHN;Z zl$5opbA}!BwZf5_8Sz6Y2gHn!*pNyF4cGQ-{B?XvJ0HV7U}Bpwzh;_jcZD}mmfQ4s ztH0b1|HvS?ZRg66NwdsX2#EBRvu_m|##;;f=|@HxO&CHDo|fuQT6XOSOvWH!xkQc4 zYNPOs?i}dylxRp~9qOV&iyz!|J#BbF5rN-wutbG6mTV+CAdWPFxv5?&XNmm0TX?1I z)O5PTf^rbTfvC&H{zV+Gi?Fkk@LREic1zcBfL@`!g@oq6@_H&`HFt2HmY;<-Sf_4y zQ+_+2K|9jH;Feg7!e#w56U!KBq2w#@&5b9Te{<+^_qPUKqyB*`AnH;h-^m3>>ky<- zR)=HEAb71V!;a^h0m4KXf7Qd}5~M;iwg%zIceo}J-TvgtPNfDm`h~skx62DV@0IK- z{-^h1oi^0aR4u@YEFsm5i(Im*z`f{fK?8*UIgryJz zgipmfz34aOyI5{?IZEfCM~PGPv$ey@BgcE_I{}uoolWPPp-w9qyDE2A`~Rx7a$9mk z(mPx>uR&S>5a1s>-d=9VyxTJWWY0|c-FvyjZLG!P{RWNqa!79EgF{EINM7W_Or zW^sNQdkF`F`!i+2vTJUo_w;R$UG|>8#p2`fd~SQWYGPhPpcWWslSeDn?t$;7>o-Q$ zFPmE3AvdTPGj7E!Db2^%rIHO~O|FPxQHB(7P7r%$!;lklyH}DJO>JZt85KSNj-=kr zK7icsb{;RkvJHd8_Vu23Xyn0 zgvyH8gM4=Pp9FU!okeF&G<>MBug(%4a?+fpsVThJm-(nHmpCB=sx%94p7SqeTsL|a zlR1x_MF2`}+T!mv|4pRsYEVw%)&Fc1Q%fGXH*P;82zn~mQ-lojcY;^>o>K&M=UGEc zHIg2oM=k4uSZ8^bgE}D#iH7&uJ7fR?>B^Z4F2_6XHYfy4oot2|I9R_IFlbA{wnf0wR==slS(lGD-?XwF!LW>X=^f^LR{{6CraLvaSK#c-EsXnF(nx)yPE82-(OB{(g_s>l-&&&_gk1FIt7A#|`>PFbqmou&76ES9(Nu$k~8FIr8 zxg`Cz)#qQkMqtI!ZS-nbRIyt?goDpj&Tu=LQ>|Xl*Zv&eikOP)h#mp%^O`gNc&}-$ zwbCTp<0)TBU~11g8F?YG@bzhewa>8|2q=j?&p7Tfto+`Oa1;1KI1BuIj##CCKT^1J znip&k@($Nt#k`>!N#%W=4;F!Lk^)wLBS+hKPC{&)?xPyy>V3XI+JR!}8P(o1UxFfb zf9{sZd9DC+3wb&G=$vevyj`6egyRDg&0a08Xvpm%Xo6!Ao#O97w^hQ3#{&Szxt@J7t)?LYG8t3pKraR#SZ7v z)9!!r_P+JqDkNdlQrGHRlYLz#(<@PC3%9@X^*PqH+wXhKjQ&Xw-w5i1GND5cy6Zz^ z#WJ(?1>dH ztFn`K9ZU%moUQ;KyTE$4qVZj+s2K@wI-hK{n4h0TSl9St^9+j?JJ0Lhl*UZc1X=mw zX_v%=1t}f&wh)_9d=eL3ltJb!K!fWvL%9%NfkAar8ny2oo%Jo1U2bG}+r9d@#kt((1aY2wULj!rt@ z%>D9vmIgpa&j{tcm;Y*EZE%BY!wzyq2^P+nM9(NJ8(7)fpG6Mfp3tA;=GtBae)?BF zjYhZHykZjnlh`*XsMQY#gVx0*A94+p5DYTHmer>WTK)DfVlR&&e6SFl+*AmzP)3X? zv~KA0UpDAkDvBC-e@S3or&Xw3gnMo~OIphNq^j1d!nfMADI;g^(+m5lSb4E$JYVG3 z9Yc;;@QImcHy4sI1_Q3D5kNiF^^ZMa$t6MJRL3>5Hiuw5t3Be7hGhTc_L2(z=_{Co zw{H3^7&XYCb^ff^C;N*j3om$pau znM1qXHf}Ko5F4b4#7?lK1|Ey%oXQJpkUf`s8vsOFsX7R)Zgw{^n73%M=ILb(|0bLi z`~FG=M^c?6Ktjk@^)%rtBYrVQMLCCrDEWVmuE#5btH%wN5TRps0{g@9%s6R+&%Ouo zL40`D+(e*mJ>hErsrU^+!Cdg9YhXArtxA!hRniF0xx9+rwD}aKX&=_xT02o|0r`!# zed?{@~f!*kVj zep5D4qF3eh=ftHnuVc(LXPD-quXxS4x(I^}e~XzdT)8TT(?0|4se7e3acVc>iB8&-e+7cPr4lH_8fL70~C$6gZFZ}Q>2t_ zz%_taxmbtT?^$)I-T)!A3vx887R4l7>A=dHH_Jr&?crR%aS;jR!R$r{a1K z7~M{QatkrMKX=uU@Ok!#M|DHbIv5G|nk7AsC=03ISj>v7S82R~lpIar&Kbc+!y4|O zf5Op6Fycd$9#Q)ga#W1I#YX0jLP;X{5W+^gsqN`0zuIN|K=%Xgwh%6`T0r(|P`$(^v-IjNG!P&DT=CNd0vj96r1=E3% zTaPE%8#p3u2TB^T=pTRP{15Nq*-yrfmV`hSysAKw%7&sA#o?-8=f%OD@r1DOO!F|d z>!?cmNbiNc2D0jWxT>QdVd@xfiD%ZOyw$-5L@%){yqRlxPD6zPOqu%%!gl{Xx8^(c?`iW3laTCYTw`ud`_o&B!l6{*ebsPFz4M)saF~ zkxcXct6SXDs`p2ZN0mpchLP6lY^ESiZfbN>-$WXjT*X87UG+M@B|y5o+Hku%7C6C; zhoJoOc$N{9lnq4{^}P4a-@_S zLVY#ESKqPpo&`_2b~KjQ%&0t%+i(s;R{W&*isV?%GBgzS&p(BziDP#Sj>}D5{WQLk zG;X>S^-HAg@m&6Eu$XXooDW?0acI@Xl}TsQ=jPX2!s*?)IKvGRjWRrc{VOciM06wp zs1t*1U4)qgr&2JJ76Od?jxF~J1G(H4W^ zrohb!joiBPJwG=U`%@8NB>nz2RTuCwjBQR5J7M;_&wzMUs)g>*|#M`^fd$!$P&dLkZvoyFiCIG#h z$cSxlpMBQs6T(PINLB!N=fK+alq3DM3KQzKj@rMZKA{U%>cclWP7iG zFR#i2aB}Dy70J6zrv230DfyqDe!IBFh){>H2 zWoS|R^ZGMw^L|`JYzA^mKP*@2VhzE<4*zzI+w?_l*8_(d3ze3>aF;5lNw~ zmYecEVb$`#I{a4pKij5I`V|%0FX6tQmB(+9&jd)E~7DZUyc% zsI35nIg(V$YY%T{mpMNzVk$CMqx)KXTzJaQl6LUw$~&*uJsM9b^&L$cIB7jA^cTQF zH*Epb7Sc(6Yxv#7#;%l%j3@QP&B4N`vQSr%>uVXj@PkSmB~tD29-~^) zBb}Qai6g8nf_lT70ameu-J8>H6_{XqV+vvhdRBmqUAeW8k$Jm96$xle0_Y#9f!eSQSje4)sxE0?5{xkJdID@F&8$yT zTIX4%M@+;Xmzay(nb3n-c)l$nZ#0H*D)T51ui*ZqRl1;siIAjH^bfYPRV))d&gG`$ z;T)Gh;N}8aX7Ayx_gFv9mV2#`!pUqqw}w9hnU}J%y-F0XvOjK=;M($Ss<2Rx_`PZW znIClE?KEa|sBj%pbN+*#S@rltml4T*ysG|)JSo})%}eLn`hwOp#tTzX1vzHqZOf=B z9r6LEw=g}eJq9yNW~AU+QE(YOLxTZ2FPi2wy4G~t=<RI>W6OwjI+Q`v89yI3MyE_{hLi z0$?qxH(8wS_s#;y+YtPu`1sp(^3N5(RR)vJ$^agb#aq|q$6ORUfBhR%;1TCtjMts1 z;9R*Y&53k+>L_pDooQ`Lf0_6;i_5rsk6b(?Dy5Uf8kkgxBdE-CjQ^(1K+J{vdKvTpCG}xZ+(TXH682n%(8~F2;h(b}Qo2+AwRq=OVu_iCP}R_k3(P2t=8`_Qx8Onp>K%eef5} zt!r={#pe*k{>ENvU)RN26M0PSE#!q|40FFRykYvYkn0k~47Y+Z&u^qu%>;t7Fz#Wd+17 zb|5w+bO?tvw91@#M44|34WdI5zpp_}`#fVVL!4F;`8FaWxq3r&8^`5zj4XIG?Hq-{ z;74mz)W&oHyb_C9GXykaQC{Ls(wqY@RngIn3HGORlZEkgKm9k5y7|qCTcQBJtJanI zdQGdpamJV3@Q*aV90%G zT7_RgGowISU$r68XE!}$Y>^k3N(w$rot+ZJWVzzP*>;mI%qG@1^lv>yE^8Jw zA@+g~BC%9xh9Wx^@Pm+(SJhsf>Z6Jy!@sME{Q0G4wO^+*WoV~P7Dr>=pHpq!6+p{2 zzuEObvy5Z~cb7+oVt>VVm9h%yP7+E(g?Y0wytxY^s`E=Br{%|ybl>np%LWK6N#P*% zA%?D3?fTX`q;BuKlflz+A&XH0-*yE9ZaHMlW&tf^pD1O<<-Q;FQQ8jiR?+@diJ<)O zFXAPe7 z4#_xkMWSVPEaLTPl6CgT5gIvn0dQtx0zFIeotdD<0|rIAktc(Gc@geY*F zhK9t}EAM3Cgj{OsQ0*L-POA}tq8my{fBezW-*IF@_G0L%@{|IAW`%O0PfOTQSS_3k z&njHVgR~qE!#*Msq4}WEB)~5R*MriVMvGf&Uc08qu>TXxx&F`Ssfv=9RWjCX=YGcP zEYhJ}$vcuwq1-kyhYQC8no(kssS=LzCsx zqAH5|(Z}{G?|aX}re@pHtPec^V8Mu`isS*#*_Xv_IA!Fa(GXQa}ZgZ`nzN0}IeL z1!(w?pgY%I-gZtmm(QWMLQ#-A9Oh8Gnv=ddX@`ytnz=A0R8?p3^F%q^ueAdP{RHf) z8N2_CZ&n$V{y370$Y2ZBW4oASi2}Vl-~p=XIBqU>f1onWEpGx#AewSglAh^jLMLEA z3vL3}d-QD`?tJnM8AOczP~j}K@BmuiQb&~hswUk=dSMHcnwtTEpQgm@rlCt5Vt*Y&6~IR-xcKO>A4|A`hBb`a>ECzBU}M}~g)M}q z;=A}(&WPo9Zz`^hZX=46^2YDT>-p?8JTIF4S|x8OhoXBnfTqcw z#JPZ*n9PLuaP#uUd=TMo+f&f^#h7W|*`DUz`BOyG9CuZ8muP#H>eZd3IEBv^VI?nY z3mcXDyIGz(?H_vnAKw^b@;|IUHRrp@IlSVM*`-b~9Y#wKW1!ulJ>%ICXn58f_+) zRsLvhSM^jVdm@065k7ZA9?cY;T;isN)m!|n|VO4-!&Sk=;v$zq`}i%H4U zi5g0u8v;Ht2O0gDtkfp$`HPW zPWm|9xz%b@$28P9lX5&oOWFLx9DcB>7!1bFvP>Cq0i+!HkiX<)*vR2vo!82*^@8q; z?8OG%XvhKXfjvELTuKPED6qN|;kWl#t{b=3u4R(WnU!qk=&Un*N4gY+Ge12oQr{?ywwK_3N+t8aJTrvjjaOmA#2ymfGRy?Qch;$dRXPK+~< z=E26}2Q4uQ3oDA+xP$rWZ%^9qf}wgsxj<$pW^G|}c_nAP0vZe3xy+|2&Y9xjQqr@b zKltv6yv2gnL77>3N&#rF0fqnx~|_uXwH z`|NA4BrN>so9C}XYvcTfzqUl3yC`N|8m35~p+}f{Z|M0fZa!x!lK4+B!pp2iTl(hM z?|L+8?u4$iDFA*MY%smKLM}B_E5t-imnPIB=t;l)J;dByGrFWDDAqRvlo1z)QQk)$ zgJd}D+WM5o%%;`BgTCUWKEx-RQYx#vu2b?)GO+PGFLZ6HsFb1M8v*fG%PdQTgQjoW@*pw ztm^WodaGqyJ|D$pDMl@X{t8+~+zCsAFUkLmN(*c#?BW*{;K)4T&ne32OlxT>gNxzGO$w+#4Yu2J2W@P}(ylD|aT$JE7n>I%KIlUyg1tXC z(rZ9k z9=&B3l>0TfdgBofh`XC8#kAIKa#zl+1O}i~_$gDLBk5x!OzMCs56t??psI&hlM81B zk3|BHzqUQxYx^?(Jf!f!qcClf+a0Mhu3qduebR&zm-OyZ9Z$~74{TbD^kU32$?|%F zMW(=zR!zwlDVjr*ac3-m<;|7uYl!Oss7wqs(AXWS;VP~LqKqbnxF$#c6%_ud?VluX zqBvxGct9Vl{)g;mPS@Y}P_>97?oR8N!k!GXoiT;XOz6I{aN7lq-y|ETJ>fPXEI;h$ z_vEPj?Srm~QLny=D|!u{7PM6&9Eiotj99%_{4JD`1N#bEYZ{ebbx-yT&sTO7LZ?Hu z5$Hmht=r1LsknOQC+q?TKV@I=wgw@^=Mb9p7l%-u4Y)zrB|mEwGN_mip={3Ry~sTk z!`lQM+n%r`+npWN5N2%))mRzdLpLY(yAO}o)j;m`4?KQhAF%G>QC3Ap(Srfg0Y zsh@r6^DkM$<)fFRk|V-0W(U22B`VGj3!cC>^PAYNvWZomu@3!u5meBHdE0Gi>A$5P z`U5$ay%MMjPi_DEBj{evjhN%V#+oPqCQI5d$$KntTv=n$#OaZf)uIvN!))Ma?GSe= z`slgZY2!6KdGHeRaC?hD{7WGs3=M-4c^#>9prVT}moyY2U_%2*5_`Cy^Zs%c!S8ac zLQ!%U4ZR&O=KqB>x&L>_gj&m?z;_CCG_t`UAot8L^U?!Orp?K9+C4F5u`9W3ueW)E z?QgX|+*QcO-bCo0pNBnAmKTc6jnlRi>g(`HW{2a1zO(uIi(a()M??^POV+FlM({nG zS$x{g)uK|F2iGy}+HpipB>AlE774{NRFgJ7>5*LtRSq&B717+dA}k_nJ>x>hQ5o{Q zHSXhEhi1UR3-O1W({9S2yL+t&+A9!-r?1frM<%H!6z=>|bu<>1_1e@~Z_}!#q1lYv zWkfi-VSr6+_JS0QlvdLK>M55hI4R8&beiaug~RjWRQ-sWOv$6bI3PuX$cmk}4CO)- z{=pnjSeNB8StIF11^+4uT@lVRV>UpzwFV--gVYY33bel}wzC6mfIxNOaG;(dAe4*2 zAAGQ$IFSYC*Wm`m%D8r^GdJe`Gro#bLes^n*ZbamE&M(CV3#PRm7-Yy6DPv>Mapwk z!$K$66n3>q%3&y;K@m^YXN)tAe~NpsmRYNHZ48W;?QQhE)A-mLKxpW-G6z;U_$#i> zNFxU17zJd%OxGplB=JOY;SbAGNE7(8)YU}&IJ+5tXRy5dHmrMPqH%H9MI5lB>4T+s zdO!G3({YJr9rZKSh@@ROUHk^gV zQ%$BK6Sb*~JT4)$p@LGOpO?ntguuX#t158eM}h z<9xm*E3!%Ol;{7$)O)|P-T&|Z#EKo%s+HI+HCv-G6122t2db@AtIH~4j}S%eRn#u3 zMQt@g%o?epN^P-MN$e2olk0kakMHaH1M({O%ry4x^yk!2k zOC+#Q=)26IrEi6b0U|w__4tSA+ml=~UQy>+#U5>XZ~42~KJ}|3`FHl23Ln&q$TSH& zy~{&Mk(~$DLOOwne0%J)SIjE;Y+j7DDecctPq~#W=;(3qt6YAY$%)U~`Y`gFisN~c znwR$~p9o7Hng9TZleaQR`kNnxG9n+Sh>&aJsn_x{ZDW-1LR=B&I~XA3OY$$<5w&qPRG{l zD~|WnVI5wpy4o{uMp$AQu4En-w(MRuEvd66D82B`) zeSj9Y5??1um14g3cL`=JySLNod!%Hsx)WC}Qts(u8Saet`RQ0=Ne2tx|5o6XMR*7K zH8qACMdv8iA98t{UtkJI@2bsMs8#CCRF7!;lKntjK;w1Hyw$rgG2^DF0v)_(?|f}i&XUG%rJ!Ay}MAr{SM-+y!l z9<=UYEJH(ibH;iy>I@x1pxA4 z`$vDg>sfH+cw9IQMq(2~=l++#kdo?J=6BB#^94KJ;BJ-jF(B45RwULT_8`_e{0C3k zgvwLsn+qVpz0aPeO!9*S?ZQvgg51kH&%tNI+G1a4MOxV|`3(3g%;&EV z{gkkK^nZ`Ug3NG@i|uBvce6a2{7+k+k{2?1Icty$sH1JWTWRf(ht9n?L2`D_jM5v~ zw#awktYQhf$^n?Z=iVQRh* zzf(h9xEVPfaQGze8lA?QMx_Y`7{g(`AptO-a8#abJ|q2HJ63bXT|16*BNQp7X1P4F zC2RVWjQa<%G`t?#2woQO4$Z*)okLdlFvZtbg7PVQ?aVBMw-YX8pL+aMfzAq0b*Opl zuSs&CA16qgIp2OX*C1@)noW-_XQW^WZAgJs5AH4O8c|1oLo#Vy7O_tl?AK4gr++o0 zb+l&^Q020v%qpvXr@GDJbKVt|uRjHc-F)#X@^gc_l~-|#oPY2bTN3ays=j1uZ(7R+ zGBBP&g$Pu#A2**pD2GT7tpq|rCwuNXAt72C5OQ_?E~MyfFILmACSy^oTL}W!?aLl? z$jI(!a2mE9h-vb-S=(&O8S#MnwwIvTM2kHfwJMc-B@a8qNy#bJlLh4usY#d$X&;JXA>8FyZ~wGFX!d8DXi7mQN7$>Mwu*eriS8kV?8tI-*Lic zS0VHa;QVU`oy^Lg!CGhMoA`~C5SS1o0JuY#1(0+9IBVP=OwHW<%Ln=$VR1lySo3bX zH1lM%Yu=&PqlQgHp8(!um9s+Wi=p>gfxZ@seAjIy*Kd5h!;=!(X2ac=K1-&0yIKq7v$qGQjeHz)n4GY$-Qj=%XRy;vTD zsJjQ}P2P*sW2n}r0}9^uV|1^fQgk%Aom-)CpwD@mcg6pMyHj^se|Ms{X=_nXeRpXG z&xzyf7XeJ&bugHXcgSJUQ^i@%;)ajp_eiV?>h22+(6<4zxOm=Gi{sucvy`2_AcqmU zjh=Tr*o!_d|Gx(H(SI7$$&cjp#R_wWqOBaf;VbP0iq?$9!cxaVwaZYYgK98c@AQN` zBo=Bce-_vmKcP7G%x$)nq=u1!Iz z!u1CZ!L|FVi9eUQ?pvS4sz$bM69_I6(%=yKs*Bex+JV_Jo=6JH_8C*0erR}53>&2p@oz)x zB+3#(4KRKfuqc^yRU}dlqGGIKLeL42lyZ2tHfEHOsE~bBT*|oYz`3?5!Lkyu-YT>qHrFf*NbJy4n-+1}M)WS#qZ0Zc z9c<1sLcWK3b;k)^^u^gS-%Gddawxu$o`+|wxS(L@d!PC-9FeMCA+^U3*Qo(!4&}a5pticsvnf!ZkZYnWU5^j8@9G0FR+}S_nm>s!2{_@8WyGTle_Pt*LiO`X~SlC}9{S zd%-a%3}fr2rp@7QRiZ>(8zR!s^~A@M;xE`oUiB{w%InUSTKZZ&Mz$cM@!x}>qiiJzwo0Hr}vq&Yqu|G&v+Z1JGoVvqYZxOTnaU?SytAr*(88MHBaOmI& zLNVf&Pf_!(z?R+J#p#%tD>yGk3zWRf4Q0@Z?8~edPhSSSZoZ?eL<|B@?V(~~SKZ~I zJ_G4Dw8BsXEVS`r@7-X!m5&F*i)Z302})ak0_^{lC#)*|lOnz*8HU&Vf^48i(uegi z?Pj3+3ieNxT|whwTqOrk<4I=e$38ppVV&r zn6!6~nkmEHM|MvMsr@jxo<7#e;H^PubJz@?e!fepe;9q`MT||`EoZxh2RoIk8R_3S z#AZKRt}jbCpPj`iVX22irIIh&t~O6xYhb)`pX0X?X%(>OTqzvTmz_Wv6`bQXH?FGS zo0dQ^z^~pE%yJ&HDeYF<=T=%t`Elyj*MA%{sv!36!mJ?UqF+l&c=3IC0^nKxRH71A z2ElP22yc74Ia}{aDGXw}lV;`@F+frD%*lf)fy?-dbRBOYcB!f(xx;%LNP1B6t4@Z$)gCvkl=zWI!s?jwKHU6YV~ zomoe3%Khsls~|$$Wq97tV-xGhTPyeKGn=v?_z}e#g{W)`HT6^NQQZL6m79zS1-q`{ zP1OxG8}sKSeDiGIXW7`5mSm1{iel90fG?cQv)K6i^-ePK2hyflI~GTkx&@R+E9iBa zausrMX$pT$>a+9A&u1{qZ2i}cueJLNTDe(kakD>n0={${DsP1BtxJ&IMK_U@5DH-{ z|B>#|{0kjCpaG33K+$1nqGa8&7$_0vcSuai7nfZY4p^G}sWl$hX0V1ftWD}s(@aKP z*syZzRVX2<&lz91Dkf~|$U7Lg!q?}aqZ)9cdU#A4~tkqohT>XpBynh^>mX^k8E9&cb`) zJ=)VeW1yPU+aXHWZYDkkrN}pi%Ppj=iorYo)#Y2b{!kRx(+7@EScMh`;8EuBMeFl_VZDyUlpj$pH156WZA<7Ws^!p4i(M*?4U0&d1!EBCqYW3x z6U>{Kv>*4t)M&9cpSddd)2^`z1@=qwc?7ZvEC;r)eARZVSLSL^m8XM_(DTCchKfA4 zv-p$@aB&2rFrRU121)S@^Be5;^j_-}Ocl<}19o1Ev|Pd_!6<;#3A??)4zu1&o|3CB z#F+x!bc)Cx(Dhy|6pFLBQ8G2;?UPNc3`*=#yOaHVCOtqL7zmRn$+G@@6Ji45 zR-mK*G@DyS@~y^7NR5*R`83`gg4RoyU6pA@R?}nf`PR34w;|amTe`z^vd*%`yOe+Z ziiaT~r6r&$B6i%Hd;CP_< zJdExBPc&m~J3l0O`^5#KbK3Om;mJE|UHlcfxA)7)8FNW}!40Bbh?+1GZ#p0H=6uSu z=~oRFMuhS=5w4yklDvzISA`0v7yjfMp=XG1%Y$m`Slm~I7V%;@x0PSAO7lWrnmA-WQBV7fYg8$sd>Jhn>Ft(sv#nH-n_w+jrignZG0__$LDf3|)*avK-49kyeX{9q?jbmGt;UXCJ#EtS|8 zp^(fnC{XAKhYjb_r>U@iTJ^e9RKELK{8&Idq=s)H*2Q7%OG$lTb*uPJ1eO??8C&4>~0D3+a;!kWj$fr z1nrp%IXNWZ5FRoLB_ml9OjjkOTzmV(Ae4_N77KqFgT+l!a{aFLvM8Ce-CxE=YsaQ))Sc)u$@0)&5ivTAdmX(^~B1!QRFUO8VWbE*BMvoLouaNDf4nX*Nx+zJxu zN`XKr0ZFZC%#{S;^JRU(K;nKUew9o~_Nuq^sU;2F_igoDjP)Oofj+*gvNHWdj@r>QEz0CbJl4!xZKyrE zV&_~-w6x7f9}uFH_&qR#q!1r+LIkk$ee*=>8rST;oPJ~_EC3NRa6UKe-qA}IIq}tC zM>Afh%LG1u_N(@4(f!J_N_fMDehvk31k%rbQDEXiH)ARu?9(bSXaQtEoisO}f%QRf`k&cPPylW^7I_vdX zO*^;BaMo6etl#LhpWHYs>H{JvIkj3!fkGrvu&sgg%C`R9bc1Jr9WQ9Lz|x(|VW?QQ z4%9D(;*;6q0r>Q(S%xCy9fP|jL2&%`+ThD8#u?yPg^D+ugsD&Gtrzo}uMJi=hU~Fj z7^-;{G$hYpZb|fp15D5XLxV3e3IlZhnG_E+Yc>x3qaF3)=S8u zUlZt`1Ky>c?XVHFjsB&e}wS#m}r|6L_akG;tDe_RfYh8|_^>vdyAoH&|W^V4Es& z|HB;8#%2kT^fYkgaLITkkud4MT>=KG-D}<&I8H%>|uI zG3jwJ9u+1a^BR_KK051TJm*|yH7i@cGrz~fo5FAT_Lv62s%fVUdjuD~f-WffcOn#{ zy4a|tS6ujID)D}Y$oTkow$_MJp`q_$xQ>aRo!6)zbkI&pST^Tmo;8XLuVLf(6fB<( zmkxrIjy{3)MdTVL7l>maBy;1D%_65w znS_jn&4Iiyh4@AhEvmHSSK1<$bZv^0^fd|}&YYG6&@j;GmZEz_zhk|S#K>ZHCb6U@ z;SgE9f!HFclee=4UuXWwC1xv3`cJkfWzFzo??Oe#e`%uFbb&!${VhF0_h(r`)8U!o za);-#rhLCv7bG;+H|Nvj^iDz>)M_p{c6T0JvwD-p-Ly|sYCy@F@%BguP*W=kmRv-r zpkd(c&CO5E`>Z&r4tA1leh`o+qYm0cc*4!K*0V1*{|r^Hk4xGQ^eW8NS)(|8_7+da zIs&cB#D8O+&ECygr1TDJo+4JA2FTXxZ<#%jAGmS*%qaFn>}afStSTiWSi8>Iop0h zt z+0e_hTfT{)lhUN7>yL|t-{t_PXR)WJcSU5~=J_D$U48M4tpkEsLYXEn;5z^)z()@O8F+$%tppr?|K@C+Av!XxLsQWWU{r z#_P6RLUb(s6~s&+NTs@$42_=43V`yA&_|kQ!e2jWDT`sD>cY#6_k}*ZCkqKUDG#Nv z(AJ%6bzA5fO4Ni9p@O9f7H=YCO-XhL(O=(G0Oyl;2U(S2yWg26?~Mg^Y9Dd9Jty?* ziIgs7P~Q2>^o$i0wV)LPaZ5EmO}MwPKL7O{SA5WdAQh>v3Fe)@(el;)iE;ngnrs7zh5mmI&Sa$ zoar;wSzJilNsBAXo*y{)MduVa8^hW^TTzyl@D0jH^L`p8)Yn>21u_W+mxn0jYlEO`RkC*6UGI=mjA-s`~GsS8!0b z+X5koRJXh1JbF=g&si^XN=fMkixQ^psOOhK@c9{m5HF^^=5#8tOX!Y+7@)_!ff-CuK$B+dOT{K`k!@&a|#?|x<|X70{5j| z=k4-lCzHKPw~(-Qiu0oq^_ye)Ao*@@K+Nt>_1(*w>d0Q7R6H2kN_2b!p1TlCqUVm#6AdrY0mS4T{&N; zB1}w7z_PEjf!@OaMa41Z!U`Go=A=f^n28PIBao?^@>4}NQl}p&Y^avp`hlnJStfg| z^SK46Z?-R-D18Q4B2E~s%WJ10tz%DXh}a%Yjb6TF7t{lZoV1YZn=pz2IbYTUdOiLw zK}GOeE$rhyBR!a;T=GR6e|2a|rOhFu6IR19pymE;f9#X(Mz`?|ix|`Yb zpq2R0KMG9F9F0+G61+xI3ZlnHsoG)G06eVMLtx;m?n=Z+@HN=C-?=5kr8P(>c@1PM z$H;IK=#g-v7qS(m(P2p;DM~AWEkAcwKeY@&6SO>?W8>ts)a0GK z0(y(x`G1S|8+byJYiGteWLCOHk!?jB(%_n+_Ihf{vkvs^4Xjyfb&2VT?tO^#x+1<* z;prQ?4k~*Qq@ck24oYNuT4}ienjH!6?NdFgEH!|)3~OKR4y4~zNlRW$2x)u(2?fBG zuE^?qUfsmo(Rzg~#b*ciBUe+;lG-Rh738(-Te;cqr$sLbkZaH-|4ee0|IL8Quo~K# z>e&NKEZM(nC4V-h$RAqg2qj=lWw@c_&|<>|iBMPB-B`g`|}vsANHo(ea&3 zyc=az5GR^&i<+7e-ek#J&nr8k2?bEjqeJqvXKRfev^AOdb5qHTeuU88^JKmn5k`)0 z#8+FUCuaDWz_$&B*5hggvcC>8fWK3i14?!~)e(b3E!Mo>$t&fOJ^YHmtiDN}0lMu^ zLyOd+j-BP=(?z{#yO^_B-wDOTC8hY}Yl0t9iZTN#BQ^J;a_^?&9oblv?Sfn;e+SP@ zw}_D!7IMi2y8i}tHY)D_2kLT{HyyVZ=N)rL(1AjTJy$_b`QBP-h!*LIuYE_>9m@Mt z?@rUdOued3iK4AHV39-&UOr_Mk?BC52d(d5KsdbIHk1GKvz$~FkxO!H7VHe3Vk`u% zZbfl8f?Ja6MP*4;<=k$4v%_9j{3Uqw9Xn%aYBS;fl~N1xc}54on1l`8mlR_ZCESeC zQOnqx{Sw8;A4&m*>q!@IpJTE;`RBsT_*2(P;lRGL@(-WUPb-tp&GM&^Lo+uqW&}?o z4P<9_stX#F(3w*sg_N5&pWVx8A@_o;gcj708satK+;6N#c~&Lzr_pdI{l(_tV>#fw z;Zq>RvWr%{nwJGWddv!{w+|#|O?P0HWN05lZ=e*hCVB4JTib7}FUK{6+XaVYDU`CV9#-NJ;X)x(T>2oo8?r`vMJ#$T=^3>eAszvFg zWv=TvxMRLTAN(Xxm++O4AVAYWYKX zYE}22YL!|oFfQ7Wmo*VGyF|f6ng|{PV`%?QqZFeQuE<9!-|7Emi?xUI4Bk6^`pBRX zc1E_7J*_P1EBR#r?6xoP+>!sS2&Z)Sh60n(0JTp3Ko)3c4SaK0B7WjUyWuQ7!(8#j zAKYcU{#}v*|N2959rQ!&Rcu!oc(xxEO)P)X3ru6zypLGD@X+0WzI!fC zVrA?(S6O+EAmYLUFS*w?A00u;S%#FUwLuM4@J`6oQ)jCZ~E ztTgOo^BZ$-9gs0E8KEwlm+S41^%zhVZG~f1V3ET3l+1viT7d1JsoZXa2m}|@Cm74o zC>5}&ZxXEcK+h}wq5XK9qVu2#JzvFAjtdK~ga&~3gU?S^ zFkx_uzZIl*1I&|o!5Sh$(;Zc7eu2HuqH>WMYfoV|F9U*44IMU!$Zd>;Ex$)NgAm-xitl(|T{IR0zlewCI_kzKk z|8s54?ql0#=4PqcAugt@&osLl+x=+IJUgh*rrma~CPx!Ed_QLIH_x!9|%f?mA}cnt_|sag+}5M|R4TA1}UCPZ`2OYcNb?}Dbbkd@i#p$St%QBqQ!b&U}vK?|RpU%sl+9`1f! z|2cHhf6!~+f z5Ry)8kw-*<>^tXT%9Z*~nbr|EljA{q0%j{xVYcM~)rzGxwKy2xCtVYYe&7m_0_KaZ zClidj1b|d76(rk3jlmbhxSU}pwgJf7@RkBnCQ(7k`o-v{B1MqW%I`62O){^r;0?Es z_ux||!LLEJOM-gDBpW-vLJ?<$P_{D%F2J@iU)C95>!Hwry4@$&PLYG$CvRA5(JtnH z_R*y?L$QHxt=4b=oMB*kE@92?fORam&epbl=dQfBk8b~@8xaaTr@weC^U3aMfLjHm3%o{U#tzLAUZ%x`I$| zR!5e|)|4NdKC4gCYg^!RMt4+-SN*MOBmiM36v^(UO~=QIipPlV9`Fp8COn>)G_+R^VA6fiE;vQF+#f#oRiO@=i2G z`V0c1MI{Qj55JJl*VR$*;CMUr559H-ETxsI4?J@Qn?zC|Ve`Kf2<+f-_3bu?v}`9r zC>d3`38YU^h4j}rw1%AK!c1Tx;ASZ0`wnWeat;PHi=9F8GXy$(Wa2LlO^?c>*pwd9 zU^|WDx%r&f#*Qzoje-^RpHj<|^LoL}r11S8#;1k9 zgHgQgV|@;l!%ZAtf%gg_wneK6vA^h9y5=(*YZbVv^oU#RJ)4?TNGL%@uW7XA^e~`{ z-?sg}YA3ixdHKsUsD8NCSpqp@xxjjd0rS0AV`cEQCv293MKY}6N^W{uLM8SaTA!6t zw5ACZmsxFEOf;Pdzzi#mS#-!W(oJ&q2IDNiTN_sn#{dooZgo`|o90e6e9wRAHktYb)zV=YD&kmM@)Jr?i@Fwjpwm8g}ZJ zODdK!_nSM)aG|qRmy+@Q(_QE9^?i^i;?h4|6i6RGs%*@Up37!4d9BUOB`M{HeHwJ| zQ-*rTYOrPu+N5scg4M&+W;m0DIwH$*zHyg~(ely&01<==J|3X$zU8zbv?k!raeIPx zn9O7WK3}#Y+gsF%4X4REVmZCLBs$7h$&eHMZtNkS1hL$@}p)YuKQ1|s-5R*#YHsFq?=%T-v6FlOe>RFrbXkbZ>eUfo`|FcO z4sZ9m>&&Tq#M4pJ)jXl5-IJl|sn&sQuO+_FZU0rE%`+E7sY~~3!pW9G6DmNmq_x&` ze?}0RCAXHPxkp{I9tg%14CBR|h!F2QkO4D;qS+4kegOMEK|e`xr)dep*h{5jvKdLW z6c(ipeZvKM9539?C{84rO{l)@E&9F>q%KQXa!jKD_+!G_-XTJ%=jk~X2AMa--E;x< z#aQE~o?bRilvz!i)q#rAi5G}Bpi7VD2ZItSZG?uOu74!g83tO_Cl2}QBu5=RSY=*d zU=_A|AjwjfZL4G5&$WL;ZUs{VuI!|Erpxmyyf|Wst`t6My1C)WMJt_;v)$g`SuDV3 z{JsrCvw3@m0l%VHRXIbiIM`C9-tFuOFXEa#BMjJ1!Z*K`M>n4#S}855p~em)PloF1 zEm&y>G1(J9TId_REmd07?^NzLv*_aTWqU zgm$ygN)=2gx2P#6wfe#5E@@Wtbzd98O~$r{^x=$!ictUif&aa?*ioWUBb&+9;sC}}?o@eK^XWq9 zN{njaX-d_X)brr`c2URACaO6&dlj5QBs!8|7%Npo}2Py5l+{GE4 z=6KitIhZdNNB{qrUCS5FYE^G`o}~*#D&mLdJhe`IZkGU>VZK!7Sza&MHKdXO$rOVW z^JG{&LtxiIYk3q>u8rlJP^OxXt~l@X7lX&|#U;sOUKiCv1gobQlgV(qCZT||5#$Ri z1iKr2GkCov4JIG``D?k5(RV(fA?5BJnECi!#FJeg9$UEhZ}H+y@ig%UV_|!ouf{LU z#i%})G+6!AC)}1|f;Ea(e0=b!|JLl7OQQq7;bMb8VSxY@f=Zg6_PxykR3WpGkv_D_ zBX1&Y?kL~ssz871AsL|~Asy0sa!w?)n79w>Tmw_TpLR+Q(DvRd^NSR4j~y8%g4pBD zd1)e_m+qj!HuNZ3-~|xGe^2N0P&m`{)AY>+TL7wpY+k0>QMoPIL3u!yqXmG$X}YZ@ z%Y(0%6=uE+m&AX~7E5l{f$l@H@iB zreF}prJIn)BC=^q27mq%dQNUM=cdNbC>uFE@RC4URZBfI#r(lu}A!kuY7oc{YTG4Zb*@KTLUtPl4R2 zt?4P>ye}7oB=7`s@w@3F-q7J*>T=KATYvvnMow=sEu^;KhaESDy14Y(dMU7fGhzH& zCPmT;3w6eI5?7aVS+}et2cb`yFI_}soJL2=a_RvBOXutJnR4vhMm_zHLDd-1dP_f&{ zDa(ViXPB1Rv0P^1uKPl>-=!@{A4wq?JHwpd{G9nuaU*G!(+5slB8AY%__*FUi>wVD z-fkC~n>8xy5l93{FR&8T~^bz_C@>e)hE_QZuZ-+sHxSn=&+P9XD<$6wsfHcgo2 zvCGob<=(~3Pip9(D)7jTOb6g_a18o3uM)eU6Z;@F-!j zeHp&j5E@684H7{$@-jrtlSNHI>ef|t36>y)h?8_hR+kuVg?E7>I(j|?}pLTW@>*q9dNZGE=MmcC|4C+mGSkm$9Pz8_`6Jdq!^?oB6Q$dC*j zhI}|TSO12lGlEZ4Rv(LsN+KGRBff~)Qj%#Ey!2y#jWtqQ=obZU$k%L){DOfL$r`^SF2s@GYzI` z#e4w=ZpsDiiEd2%OGRpWPvCkmkBVQUoCpGC+#hy?ThrG&`+n|Or0RIU{t?H*pI+C#$2 z%MM)+2*T0{5rt@N!4$fh>L2%v@cwSWv}FBAr)VFM-zIA|?m|aMdC!tIc__ zSKO4}Lry1k$Jsj!z6%;W>V9%(v;VXTo!0_&VE2ThoYsdgHy2}jS(?VTjv87vnj+R= zN5jhnXbETRRvk=LnjY|e4j-R>!f@`)qm^@aF-gc?!oa3ZlijQlXNhZ^DpB+E+41rZ zsWj!1DH~f=BV6$H7HE`RoRBXk9I<@524uxZbcn{aSscw6o)o@9E>6B|vuS?U>gzcQEF1zP)yK1>Ym`qn_t1S5|elo}R8czQ5BMh7`hzdK!EbiYQ@52QeLx@vRC1$ zBhfN41a|rK$J+Ff<-xc5tr@fBg$|!Bb5(YqE7m=%7AntTo07#)oFhPj(LZV%GlL94$t$`#^v^lIYPioMQu3D6XeSO!3&|jrD zJY;^R8wKSqy0#^_h84r2xbFqtACXXhD6Z7etIN&R=5+%iA{`Qz()>VNtLAP7c<+mb z`-jo;=IrLv-9);BPgy{(GB8K$o3m$z!mbr}#L_oEP-m)HfhE&-2KMOB$x2t&V-ODo zl2X{ck5#aBv)Vl+Ve!>_6y+2deh{PoPT5}bbTUG-xwT*}H<xW=eM^bK-x&Q<<^bTrEKF0t6OptpYSVBlv&{sg1 zYeQw@#=E>c^wg+rG2HvF7V?2^T$WRW1cQuvoTcS3-Epv@~ zU3Ns^bS9|_TXa~P+OB}=iEw3qr4`te_Pg)+vtIF)s?cx!5a~vF32DI96(E-yN4*hO zm@D(g_zB`~A||;~&rDRK#;y0O(W$0w-+PRB&P93xHW;6tA#Z!awkaAo$)O^y45FJJZVMm=&kwEkn%rOL>1b4iwP zi>rGk5V{Z@hynVREtDVmxA^ARs3Bf}yjeM($9vj3YHqvOrfhu|hE|ZyXh`q;O`p*@ z3%=N}RJ7Hkswyjce`>>Z>3Q;W>Pf-DR#Mt=hX02DpRK-n&Ohgk*fc@(H=6a<)Ah+h zrHX6?#>JL}g>ub!k}TAccX<}DY)sdsJcC|X!Q`bM%yb?2*{;4P-bvoaE)H8VfNbB^ z-pvf4A-$lcBC!SDdA_aB*{URchJZHm%+%n2?gSmHS!{(}e1{3ZP*1^_kpej^bbjyW znp^G1?c=x98|71)R>yf#(Rd8CSE{QVvZkT-VCU?r0BXm%1wDJwSbah}4DE{h=Sh26Y*EBo9EA2N5?X?Gu8k8}+#Vh<#Ua|hSytT^wr@WCUV;EJQ8B9v0%&DkBYh_p>83WGE!)QGUBVIsH)(o-SZ~{e%uL3s$i~#KWj55zJjo zrziJr^=71RndQmS)7>OLGYU6W%D~$1FIg>B+>mW~rbO^5@>@w3^RQ)(id8EEsL5Z)BBqjyc{Aba7t^ykjo8h&QAJu~$xjyvD^KXcC? z|4QY|ZX?6l(moGE@n0`GHoq|rJM~0Xt25QYJ17o*g;SBXFpZ~(#0!Dp$|b@6P=K#) zQweJ*zfPqeVG#V>j;mGSVKHbvq**78d#i$IiP$oRQaej-4J)2D1b#};xcpr9^w}T_ zcs-I2+={leYOY6nshQ#G#fZET+#R=oC73Tu0a-5A>` zLyr}edO2l()ho%8r)J@87X#?tw{ob*S+gZI2awjF+At*X;yw|7!WV_>b?C!~i zp)&J*32L~W;BrlDb2eNr#NI}!G2S0Vvq5uwi=Y)M#xE-8X5B7p9ejqFxz%edpw+t# z8x5wWIGY8a>6`K>jFfFVq#uPihXS0V@G?xR*K#FzB(o%>Kg$ipLqfw4+zqZa2<^Ec z@)SrW`3ZD#L2f%TMc1b1SWqNi-M8J7NF5m)oXLhLl+pP)dSXiscIj0QTJBtRv|Qv; zr0U_c5ZD;9nU*Iw`ZviM1gEr3+Qyz8ZY-Yi|15OLsDs-f)g)xeV5R)?HT*&T55@XM zoN!5_Aj9W|1JHC7!%mU%d{$v%PR5KGrc0&+j00-S*sNm!uEy9 zVgH8KhZVOuAjB{3$f84qwrpYNJU~%c5*Q#-B!=)MoDajnb9@}_Ap~iGu65pX_b`5k zv6*Il%ixdX3fQA<$})+1qx9+LqcJwE?(71BY4c=*{7a!%1K9BIDOEKpF{-i392HKn zwxbpDHAfy-s%eym=QXa|sykWDXIqyeT=12DXa2v|Q2#%zp%HI->tiaO_>u-TF+_rXC&oh{yD zsOjTRz8Zrr4`y>~%+X2jElhsl484Lm3I<0}Z@4bCjk*T@#Zc`n z`xeGN_PO7m@8@^!-}gS}_SYPLaORx%^}ep_^?JS@4@NyQSMR0-Z1nUY7z}G}xB=fx zhJ}W%iG}cL?UJV`XN{e}17~amiWAKHN8lCYAyUF9_m0$V7$LoDKrP7e_$7o9}Nqy=i zg@POpzB{5B+n3T4HgMe59}dz;C2AMQmPTsT8H&j|kUwpjlRu9)sFAYE^y^0EY+POZ z9wwKDjES~x)_Y6CViJ&q+Ho-bY5^l;_szRh{G6%g$a7AaeiTUjJ3x1xYTtSqRB|HX zh-rUT6Ky!gz_9U=1bXbtfQTiPkYJW-U%pIP|El5tL`Wjrjwk9ng64bTKvT;P^da(I3^JdSpdt$I>v@UP|I9rN6i0+Vq;$bdtk z)>%?zeeR=l1Km0NbowK4$R*b`mp7?RTkHM?l8$JHa#CPh0 zh2q2nNeIYgyGv!zXfqakxHQE;36X9&#%DOL-JUZ@n-A!{8j7oAzoBGum z$5JKjIf}<*fjCH9!#w0moY{bqUct`J&db|2@R@O6&Yy#0Da=8eOm<-XY~`{JZ^sZJ zObHby^2IJ>^k8U%8ZKmNxSA=zwW($siw@sg`_Ek3srUW=8#CT}e~*qLYzuixgQ?d5 zY5@8d?g+IAwLKAiQlp`YIcg5r8=AQp-oR;KAq>XUr$e;u_ZrX{Uhq~`$8CgKFr}Gt zOqpVNF7Sptn0QcmPmh}Bj8)p}B3qDY^|XyCr$Oh) zf$HY{exAaUJaIYqzR;M$EV}eA@5`ACpN>ufhbnK`LnsL84^fT)kLG}Jg6P)-pRN?| z%R)9|8jM#e+2vzQdIybc88{sftuE(2NT z-JcSm5pVE7O!@B}NN{KGPku?*;Z!$9(R=g|$pGP~S4{w>qV{6jfAbv`c8p6i0ydH5 z{mU95S*&^+Hk`U5M^uNh_^YkeO$@6Z`;XYT;6Vv~y{p$Yc8s;VKBlpv2m+hGso(WOX{EDStIA&h7no z`f59!(&?LoM|<%FIvi6bM5y>|;vGmZQIc2z+LG@YcvVD`=xa6-q9m?>3Y#n;?b5FJ2wHc#HDnI(smdw1Uvx;{xLDrB> ziPQ2;f;^TgMbDhEtwv~~czOkYtqZuN6o1E^pP$JwQ546@BHS{K z%qH$YRiq^Q1*$%+>3BTKdZM6-qegsBT+J?&wYA|iwj^t zdK$$Cp>-+go|O;{`CbEIOi5C?ns{J&l|c^h=*?>=E%*wHv41H`!dIMH3i~7Omnvp- zpK0742D|uJQ*RT4==6eFIU2myzs#*2jW|NNGJ#Nu`xQCO?>PDPpo;aU@0<@}!#9bC z^CJD#_ zC9T^@LNz7*msLtj|M8$C$oBVo>s{n3O7?Oe$^vnSgfu3gBQaZS8;Hu+lJ@PAyq=L3 z1u&0To~r(5cb{C`PF87Jzcb-VJolmLR3qn|kr z3d-n(E-)eDtUt@so$Emn5uPtY&EQcR=I+U%@) z3E-rgAtj9}D$Q-GEiSk=7FS*_{+AMt595r4RhVk29 zJCnIll56vy$RzrIM>$=^!e7XD%Z3y&ZGYPBFZflEZ^+BE>?!YbL4lp-Nh9Ew1e;#= zdx`I+u4)t~btCg}v-{9Nb)C3U8uGZRN~53 z54rinH67h5{U3hWCW9{o9P{=f);H)5clmBBj(67;-WiG*Di^MYq+ZU;flgOYhly}Z z^wF@@2>+4%?(Hr!avg*rS&}aKE*@+(asr1wl7a2>#{v6Gm|zkTXh{3H>9o|SpUmt` zIJ{Or=m`Z)^J8}NIctGgU1*?XJ#%e!h`Md7Tr$gkFt2e)#n0xnM0xteI+&$-ZuUsx zXG`gd^QK<{%+~bK+!LnmeJ;lzlvh#Pf_t8}TUsXN8-i}-+Bi^LRisiH`jWO$2(RbN z{5J?g=mT>b^qrc19ah8^K8OK94zoluwiijJvs$|BAFe11LWw^lR)mmUSeoAr9rFjKgtR-q}m)C$N-qIrS%gAB4 zIqj1FBk!1oSC6_hTo6vk?a6f)$RnY5j-`_C`N5Ry{&D;QCtm_W(%nM2qr@yGSVCQk zs?rLaD8BU55>TU;{JsOpI8SXmwEmjz&3ngyQ0FN|E!;xSqQ+4(ajdtSNM z$=TnN=YpYk&0yO-lecZxjrsS2X2{>F#QVofN)tyQy=`!J@p~)xh9~G5EcVfs9^F$> zHO;3g)Yg}53cl=aEKTmX&}g!Irwt8HjC_&ud%Q8D@mBN5HS8$5;spb%G@Md+FKZl; zsP?h^aIv$jInHiu^;q0$p_o`G6;?ki913)!mT@+dKqBbF+=f317$ne_1O^F87MI8i z24HuwfWzCTSg(K%gD6QZBaunwo_oy)fyq$;kTi`)D?*g#8rf!x)z+P-d(J-Kl&?iB zPhI-~ZoKal8kO-=J#Fa6@^@OI|7kjsf*YkJ4q1j$yZ;qu4S7aZ`t!P?EPspH;RNtXFHGjlu04SCDZCn56&}a5vhrYYQ z&mlfxr={?!?=A2t6cLw{gKfN}AxxF?VF@~rZCj+=EoHEjc^5#`-PewiV`qKE&(;_b z^)_m+>8;fz0cqW%rOl~k{q)-1s06Pc1e%o?qZY8lBB;_Wp#pyBk(jYQW$JzT$5c@u zcJkQ&ZOZS=jy0xk_Z!=n)egJAdE5%ymW^UMtkK=%T;o!VX=ypPvjjl+xk5pm6H1j2DvqLHS*?#a`%|$gZDJqbm+P8|cLb@jCGs z5?AeHMjXSC^L{0Ajv6iRHv7;USwc@nAoPn_v=u^7bAtT45RXS5!;TQfwAAbyAmtrp zpC^)4XyG%OCn@!hH>hdW5sNcswwhDw00>x1$EffV7}5q@@}{_D)i9g5HE?t2RGtWc2$wRFxu$`7d-ET z;k2w{0UyD_0@&)__JF#-UeL+q#fg|Fs1@*6e}-~Ni%U_LLMhl|>IO$2GllH*NsSXP z!q?GqEz1uI;z`M9={OCb<|ceU!9l1fP@Bumd|p@3&*){bdfGac9O(2*O6{J#At+?| zvJw0aszY23Z=7V^<)zC53ho1%g7DU1zs7?n$JBy3zj8OSMectz*qFe|Z-h@}S+`w}}ic z-F|UB08C3jR5wcLVoY?#w83|<+spf?wAS@6!z}D}{;?H9esFy*+{pCk zwQ@923Jg*%cwp{6c0-6bfqFDJ^%(OBN?BV}oi)rcl3z`RM&@AhRgTO)hG-&&VDpoZ=H)cV1ghXN^?_vUBKWxED?mI$rvaFXiw=3!E*zxkczBrFKYi9eC+C)vKn3(+;MhGjx^s|D3}tWbIgeI~DnLEZTny2|v~^ zy{qGn=6f+A$dp^J6iTDh;rntsMp0j$_0$@_)xp?Bi4&1*4uoC+7?TT%HBF4vXB$^* zm{hDcb|tw+UZETRs_e9xSzb5gmcvx^Y&{|clc&Cm7%-i5(5w6M)$zlZFbk(7>s`hP zt|Cs2m? z`%MXI!sJL^A=$h1iJSruP3nH&+jP+%)q-p5==+E8th9Q;SWCF1dhmOKz?$O>Xj98T z^^re19s~~!ZSfoP;r3F1MpS@l5l1l9B&4{N+-i`e`6jL3R9e`fXdaM&@E19z(X1ME z=1u%EJ%wGqD1z-)4ZgEvv@#Wq zb}iIb4fWPT3nf-Q51UueR)ukwyD&UH5lJMhGO9>5cqGtL%*G2bJVVnT<}G z1o6vcEU7j!4CM6>oLVPkSSqfXaDR{rWmxAa z$SN!QwKzANc*djhkhtwK+!@fIw+VYQJZc%#F2T0~n8oCF&FYW!0HQiKy4pwb$1KA} zvA@ruYPE+k$0P+VTH<21xSOQU$rf_3*T1XOnZ~;8##m*8;vz~eNX4u6O7a2@qS+y0 z`+8Zjd#hWl>J>Xr!p*rmcE(OMMxB8n8ScUX9ThgEJ!e@S=z@f;`Yj1tz@xN*Ip`6e z`|#!7kX1~;F#$FsYP*ig=4ARuAqPz6{P!{Q(q8#9n|NNGG{MC5^Hb+n^;^;sd+AQ- z4!B1mTI5+jAGZ|1dvKb81j;aFlV83}U738J*Jf5APIRWRxpOGl>q(W2p(b>5c2?42 z@MoJuvETLNYrQ=M?-^-9*q`f>uOJL@&3m7;Qd1|=;rjo?!nj_8r|oAFDG}{vVk)PJC1qnoOB=IREqf7(3V==sY^Qu!z|$6#O7)n+v%r7MmR*c) zzvH&~382_yi2AcN<%jhR$kmz5R z2xlZ4XdvSEitSgJ4(@~o9REGO?gnXjotjq%m+<(e4Pr8F&WEe(P3@Of)R^7P{kqR- zbrD)Ae%5Onyzc~m&eJ*pWUlvu`I^Es)Z*GNP@;&yHA^@Y`g`z`K>Q;BN!5BPD&T$~ z{~bV&n7Zf4m{QElw|uR#6MG=~xLOJv52N=H=t6GG;wl_HFto z-rh8$7pE;JB`KzXes(qlsk*3bl>_dI8N zk+6IK1ADI#f!Sl|pTVGjjS_bV0v4KcGV|=@ueep)jIAWwRd>rBstZ?Bn|(B={x_xS#s6Aw_e)OEJYpu%Gy@%x@B9eUDaeK(b zht_u=J`^s6Pa?k}tDBB8K9_a$IPDt9pCh!>>rs-0xkkcWr@VeC?Oa`AWNh+JB!s4x zH3uiCx1E)Fk}pmKc3*A-I>!0e2MW&@)iFK|oC!9d0T`#9~)|waX zA{<_TsaZM9vtSCop9xGeHx8v3Ak&+XqMgNDZ-h0ByrOaIHET_GA(_HQ<30xe|=E(?BbQ1BwelrjZ_7vo4y(Z1SEh9 z43oX834*>Kr#jRjyOiuCer1J#buH>CeXoyU$^1gx6pKatc}QS;VRUlixM!qiaAdGc zqz3qUGqPl(cE|8-dgFJp7fuT1)b(PhqKUVPz3wlj#L`PtYcKa~K4?FOHP8C6FF1mB z)*KmS`9Q_|^nC=jfWJU$Bhtt_z;LfRKx}bFqTZdPu~ycphvM_2dFvdOE_sYr17?w8GrwEeKmmlZmg190!XN4J ze`d>=WTskJm;w{&V-$3O$$H?aVq@~>q_t?qAT=z9-+|gQO|5}veme0<#r|57XFICqMH3;lE zydPT~m{A2;Y<|I!Y}A3p(RUa-OqdDxbL3^#ZPXi=`3UfMQk=f2 z#}5cz=&H4%a9FF~_WHM-{rJ5vdHR!38-c`Iv`@ag&Ub5q=kjrh6;xw9Geu4&-w}=u@P@bTt;D622=5)HHwwjMF^ZN51K zxKypgGDV~h=0)hON~NL4wQV7O0;iM435!8fp|GhX5490;+^4+IwV`;cKYXEi7#0%tr61w`=f_U zAyfu1K*j?#r=AHvX6SIgHS`Diz;GBT2|u+K|F}-)Bi@VVP$|B1J4Z@+!>D7|V6h)c z=X4GK=m!$W=@LIp1NW{A-JPm~_<>@)f!k5~$^nwIm;2`Ir|w9!`xm8_zpF6WC05Etf@^ zE4>FBrw`5Grw`Kv;hUMCUqwtRsLo#_I0F(F$r=^$EH5WNw5rHST1e&u^&-V>T1N$gensNQui7zRWxD|PlbO+KI|-+_+~#N2_d7-ie)4uNfUaXb&S&b@ zLCwD-sqFtX2yi9oR!DS@03>qOYlYhHhblK)Qae+@!V!LySlU%&2{M`z6P-+)(pm1}Tndo4Uzc&q%{TD+Wr zAt9ROAC1mPve|~J$G3|CS>|Zdml?Aq0rug#VB@82ve}1XGE(6F9i5G z=Rp3)eG2&LiNNo@1$oU0>J|Amg76SmrH7HyxpmHANJ#ypeaGZfIBl~P$vyL@`q{Eh zr@MB)S+Fe!lSHfW4dMi^+3$EkO^ASiG8Gu#1r#qq3>xGH7!}|&UnyLYWGbtt-GWNO z3r5!!QQE$JTiSkr2X`wlJN$vorU%XT>A*7uDU)CbP3c&X)a1Q{V}??f!bg6Ad;^p@ z)R%D^4vrYPCOqcws%?_%N>&#OL?OXt{Dg%OcNwPiXA%zwd3b4??$<9@9h2o*p~^oK z^>#mB#pNC8*M>=t-7kz9#jEHo^-a7x|HHvAU(l~G+!8-0%xu3xgj;q!5XvMy#Zgmf zy7_4N02L;%8^#B8%832GI;mxLEb7{+hrvam(F=&W)DChLa2P`ik>H zuebMmqJ0GvYs-(YyJ~@l3t>z*bbl3w^Fi;z*|kQ{qK5TV8K>JZ+ZPOSH0zP^u*44& zhpq4dy`^|xQ$ew)oaYTDjxz;^=^(qWyx?mlHYf;!-D& zpRt$G_Qmmt)Rm_5M-`u;Zcy2kh{5!x;upUaW+3Q8;~ZAzr_B>-3*r3Ksku=ZXx|(a zZ{M4>qd^Qk@o*4>>d_XVx{e=vERUtCA_k;~v-2hC_v&pr7c`Saf@d277^`;LceaDg zb;ErA9&VJC24z4P@X|Ifn>0ielO#`th$I`xIe8b>bIZ@;+U~}!^{^HQ_S5?04s=$V z6pi)qI=s9l`Y5Pf0SE+8a@=RhRzcn|n7xaPLBY)(3t*~_jg8};G)236wv@nX#xxJy zg5Z!&FKrBfN<}Ho-SMRBsrIR;&k<*gRnen_``5UNVaLD9kpDmBR3qUpbi2Y}^zV70 zr8G9kNk+9}XA5xy+k7&^(pk`JY6q@y?jk(6^2D1Jey&3@Og7_AuXgQvf6^_j`#v;^ z^^tEypw+6HjJL<~qVHK)+HY%m-?g;DTV_T*H)RFG*mX7OB5#$t}9R)N*&X^j!2^$vMR^bmq7|bi^2H+v@obap7q? z1LKjgwr4VhoC@pH=14Z z=}&`0J0%;vcp1ZlG(szp98XKrB&FkbHVgfBdf!#BQhULfQzvX!L#n$Jdm+$ae3Q*mJviXwNntscNCM1OH=JEe7Q^wuk>XdXIy8_R7%#14vC?^*i zI?J4Ob*B|t`W9Tu^Pb>0@_F(IOilIL#fJumKW18+Kk`sL{zk13S<#}j?L}NYxXQqk zNsPVVz+nyiBgH?$;wgfPMiG(2&~V)wGY3~_#G?+6)qN%L3!p{ zdym>L)e-NJD0dgi@l!CTQnclku2vwJh!2h4znXWm(TjP1r7%)Lp^K z1ugUX`umQv`X}YI+4>afQ%$S+?!-r1MN7=s-FGVaF$|yrbh|M$qN*YvPEDgpyLb@& zt6J`W)#qE8)C<9*p#h*Mnmw$r`>R$jNB&#pL6QcJV=Cil^Ha1R&su1K;K7~~!1?@Q z9;URXuP#x5m3}lPC}cz&)X7OCQE4RmbjAh=uW6jEjJ-WNHZSB}DJP0nwr6tS$r|q5 zth6xaAL`tg{KI%Zt?+@x_H|2+a}45qMD-myl27xWf0v-X$^UjVUYd0UhWWD>L4O!a zS$h8H@N!{v7iLHjjJV@+N0#Y~0crqKRTh>Lb|dW1Ve%ln2i}(rNEhjc7`&fxC<1(b z*~#i#W+GF^Vnt;mje@rNK1V{u;v15^LXe8>5=Oe|9rYc#rO|bXitY8e>)bK9pd{i6 z^NQ}+>$3+xoJe8|kI9`9@Z5Qlb(U%XHUX4*-8K0j%l_;i`dZbLUw8lgELVID9C@Cv zcDrZi6u>G^6m}NUR9#+#fU^Mw9YQqn^tr->G^E(VjaTJS|00(FH8vH(;?m$=+WuFE z)tQ|O<->i_G0%DYUEkcTwJcNdnQ#;nK}sS5nPi_CSLaZskh*x3u7x2!9rJXn3~8ipQFEw?D_ zc3~wkJ%~Da#VsHKT2F^D&`q2$&U22O+LeL)E#JBZvnJ^WHAeu8%ZtM5suZg& zRg=@O>^VOH36#%Z>&`60R-CShPi0uuU!R`}$qUlM|GYm!m}jtjsh>g@&}XG&0B#@7hU_Y=lK^Oob26r1|MqW$}<*%RRAAUMQF6EFGT- zH_||Un8+jUG2TgJK{rM(-R+*_D((StHW3QiDWUjbRe|DLxHH%zNT}x(#7R1=z z&LZ|hQ4BllS;wLe6PMg2MjmlN5~-NtB&i`Ed|~QfaNbiC+syh9c@8m+UiMo1!($XD&DRk6jjmWY=%^Am9gg^v(Gv*CY-) zfZhgdz&l&ohKl9SPEq+Y{Q1?n!2GW~h3?90p)~_;r3` zMa?}}_QPqfr^n~Q-M$9Z@N+~)0{{SUd-``t9zdJ?9H4%AfCmIgD(Fg?R%#9GBu&T~ zkw|M4Sz*Hv8TceUc|H5bzzt+2EA`X26YLzfYrK$>|+&Q*|a=+?gA-pgD|#7#Ms^B8W04J(Dr*Dhnd{m$ct2^ zrV+Z-C`e61%Ky&uI+?pQ#jQ&MRe>0TdTw9Df<*0vE_-Zb10|#-KTu0T)>P`f+h)avC?+w$ zl&)+XV6R0#qF9G|n7B-yXB}CO2*37heD-%=y|rPOSBDB1HAMIONB63oJ3X$vc0PyC zH+bAwd#Xew?M(`^_otKPYJOkNnZ|?l+37#DG)K{atA?s)NuzJ}vIMviq%>Kb^(k}j znLZo#2Q>SL#jmbx9hDW+<86WPkm7cOvONhUR%F>CAqo$?ZvY5hi> zfBP@TG~9r~%cX!4UL;L@KyMG+1@YIhD_TYJP(xB&?E#TeTgYUWgUIT+Uq7$lw99wO zGj9^aoP^x1Vwy)RLWCd_kb?#hBJ*OqoYBTq8-IZoZyd|xeuZ1AV})?TlW*&X5PF9X z{{S5Da45sgN9E|^=Y9=2sG{tdlzrV)HK*)JjjV4fTA4U!ADRyR(~h-qAy+UB&~w~S zX8WC($;xJg*$U%dJB{9+bC7VlbF~4$rvmG85z^a{j$_ECWeiu5Qo)C-^e)nLyqhXk zDQv^XhAn+l|2I>uVEn(CY91?9i#Im7>LDFra2#CoOfakN*ZIv)ys`)J2`%j{1ufd` z)5N+HVLFJvd%8rLS1(v;!7q49$KHdwSMTG4O_7GxV2EJoDi1 zkAEKMf=t8M&xPR6c`yz9+T#r>T_p0VdqJzlr&*7#F8MHd*|v6jh-kaD|9l;i+m^_& z%i15sh-OtWcK13S2FPKg^xNVHLU{uzXesdo=x4+ac{cm~{nU0A>)$t^*&AfmY6gIh z5W117<`*u2FFJzhtcyRRaMW@@BO-rEQ2_i*1oL=`4wqsQp@(a#T|OnuwdImTQAS?P z+`=b2mD;9sf&&1LANiyR<-_Q8my*66&rLOT>Vy5+vZWnw>F*LjptXGq1wojWv)%8U z4<$Uv;!RD!Y9qqBvE(?6 zVC)b3EO4*@>*yy|%PNb)FK(l>xuNx4i0u@+x#k$^8x$3J~y@Nie@&=~E=A zyWrGrW*cN(XqXv!_F3JA&KcFPYHB%l2vvV_&60Qb&EBUNB0Ti3<{3B@>mTX<@exRYzx@eh+qiN|x#k`}i5dA#r)>704!$!!q?K{O&<8XH_fS;7mk z1X(OYZXbG`%)QwwzfeCi=gpkrw+sHLl|UbmfNpu=H!^%6y}V)NaisT zJ|`?Zab-)X?HaC$AzTqLuVR@=fXWKJFmvCr5LQX|+Wq_k&9Pg%J@rBT1Nw#$;1@_f z+3P0C2i6H|2*+0PKY(&r9RI1=IJG$ZA@=6;2TStR-j5L`9U@YVyDC^zg_Pm}aw$^B z4Qz~~-T0>~xZ#0m=yeB*r9B8*IvSv`LtZv9JC6vni!?}9qQ*6q*zgF5a`_J9J3Ik0 zrd}u1JMeEKY4Z4(UkQyfYEEro4s!$!th@}`@Xb{bwMugDO(Po-4Wi%At=r*`F0gq` z_}9YdreM``k-PW=bs$|2U^f2@X3@e30u9-+2k{;1?)N@>^U*$j_(> z;D(7TtQ?!Zv#fq^Z)_dX;L^+mKVm%svqdItHTl0szsuz`I;j$2zLTYWgy>GZB_iGkQ4Wr*hPnaJ1|(U{g%xzL(ZST@eq<7< z;zBx%%Heuq!s1BgoP`dQ$26I*2rU0Fz5!;gYft+J1Ys&8cvko(3pMI~Bl3y6KdEg< zp}-cR-E+0wvY!UCfZfz)D!JE=5b&d;80g3b zy^bZ!LtDz;X!Y^j^Esor-@WV*ZU|!cs!JT-?aYpGf^W@NxI}BzHKV_(wEygWQ=So#0r45SwT`)Wmia05-ae;e zwV~#!d0;esMtwA@e^&o`BYXcW_~Ws6azj@e$t?XQq{1u8J;Ia1TI|EFEjm5nTL1mx z97o_D0JxP>v?5dk5L&{?_IU*+M60JgCi~IoBzh~;Q4pjEV&PXk5xoXKHm6aK}jPwo`ZgpGozmfQs5NXh3mc9w! zxu(M?fA#H798&uy(-Wg!z{i?!+Y5KJRs+Vht)(b3Q+sSCuJ%i&owifC_t-bZA%R`&zuKrPCFvOQ=OuQFt>Jp#aw$PE|2lWLmyMx3;L?i{6s#yq? z@O1icvAG%pc{+azG26m^f3p&4p)ipWtPXpS$fS6mkzd!s za_ZguR$pUKC`hE+R);G2Vx*u;LKfI7s0V#Dl**p2_hhy#=#^suKKHydJ;Dcw(to%& zlhd?OKj5?Q_wdLt{P&P+9y$2;dM@TCsf=WXP7SWVHdsjP3pY5^0p$i)MT3;|&0JM2 za!co*^L%!~Nmcv5XL&c=VeQW@=?!h>_LFp8d;BgC82yv;33|j2z%An7NbX(ngb+vNlciHxX%K-`B2S%qO+8#f#-zWWU-glROS-c9Q=+@_e*dgk7WfvCX1YTjSQYG zzp8xqJnkZKZZD9N4LtUaJhFak#7V;S`3mMDoAWv5|3 z$9{<>kR5wRazy_^cH_$X%6lz6J~IFj*?F)vvl}~fbfUT>aLwP$ug?W6j*^p+>0ZA5 zR<`wB`)D|IRK!~b^zDXGCAcJYSXsNhh&GsRFz42^d|S58?J_YUXtySh5s-Wpg- zy05bs8$s!`WH0h({+m~54vn+Hpg5~2>6QZdMduNsi5oEN&=n71-f+?kWyYVMu-=;W z9zH+Q;@KHb3R*w<+gTRonyu*G1e!_l)PZ2}v=jPnT(+&XB{m+%L*z`P!?O5ZoFtQ* z(~}zO5MWd`VM}jb9ns1NgyR&K$ir&8?;5R7HzPRPXd^f{P>nmeFuD!NgXABlv`TSL z86aBPW@x0YIjF0=4X33dRVM|r+kKKev__Y6YE2og4Bhhja>ZO=Hx*19qG+vRy8JkI z-ITX~tPUP~J~C)){02PMUFYE8RyS#YuYv zK|Ly{ovWh=iWCAHq5rN^C)|q^SWI{gW+j^jb`|n*Xe#@Rq+i4D0s3ZWmM(m&OC*Sc zOZQ&ai+NynfsgG<#cNFI=c^bY-a**RpEhupk`5OY+f;RSz~1O#} zn;aGDkG`@VzaQKRM=(|{<=MGRo_;~$g~1gMb1ac>+d!0r)v2iYq{RXae+%j0_h;-~ zL$y*G!Tv{RjYoMUBK{lVMxBF&QixM6oDL+{vLnvuqI__!>aTC%1<6vHynC&@@aK5g z?$z~~l_RO!oElU!t(;i7>w0S9e{z@a*k2kdXRez1?1M!Ucj0aXJ*;xq5`X+XQwR*H4XG7{);cd@}U7q^j zVvA&BA~$GoC1}$50FzYwfaz6MhKd|NhKz>xQqqjgNS^3%Lw3|6_ zEOL4N#do}31a&kJK7%`@U#fP~9pE!Jdrv?f)#03MT<;{er7M2HNTFgiEx<{uBx+fG&GEwfFd!PFCV}w7_&9b)XhjuDBvS0h-84p0#o`|4rX$@STrMzuO9e0;_9V{E2{2mc58rt^riPItW@YFg@%>8KxZ zG(q;fTKAp!3mQCV{HgE zmIt*|Gnx?0VIlJF6>SIIA1GcKJ!>+}%AVxH$KKy~ufisE^M3J?gnZLWMP=5UAAhLc zw{KgsTzz)Mg*4AHC~{}*OwVu#(1$O8~^3Ki;(A=uy`h%0dP}JiPCfF4Yh{Z?GZno^O$?g=z^=+nZ`cr-?%b&hAd<^ z;K5e~L>$O1_D}rFfSA(#uft|V4~Wm$)s5d?z$U>p)TR(xHHIU!Yxr&u#>;r`jtij_ z->|-65}(qStRgg%K)LOtMpkWYE}PJSC{Om+hY!Tq6ATKZST{~bRpzp`U!%YGm(H^s zJ`uP?g|Z2Ky0Eeqx0~1eygCd7$d;D41iAw9fmGN~+wSfa$0a@~29R=Q_y&L>ZkD^= zDkuQ~>g)vUQW@SQ69%hcrVg{zVLLyuEeNRIs6!mZvWX|t^iohD@x9gOf&(O3Beqc6 zknb@|lXRTGCVC*ke>~zB8d}bJ;e`)7l;b2UUgDntz*Cl>r=*3R;TrKDL|@7=IoPg> z-_+*kOr9N*iTB>tl5goE*eM2V-n=(~y-s)r2wFIEUS_#}9972%(>$P-gG(o@ zN8>OWJdZpgD#x0pzRcGM2`zK=U#&&Mui{UmsAuQDit#%fqErTxk)a~gVbBEFApUa+ z>cKBnyVSNd4A%!ao10bw@`Ah|eBI-HHK81@B4@8IJyS^*+2YyTBhLLJs-NeX$4?5V z5Mq5m|7+fSBHDf5hG-JQaBDc@-(Nf2W?icTw|Ww*~obcLL+lSdTw97Z2^fX70Ano@wzyh zjqk=qy>$K|>}xzrB7}(ccQi86%-$sRk2az%Hx(eAG=HP3tgP-pT$|=!%WSPu(;U9? z>qsrDeY{-r+mn?k4bs62tcIW8_1=yqa+{t2YZaOcm>}(ZXqND3TdZE}3XaMVn1`w# zde;v_`ef&VEPPK!Ow86B-6p-ihlWn4coMM0gMU^m2N*}ww?=Z2tFH(N$z`OmYS`-7 zSp(LrLw>U0(Ph8FpENO5z-i{J|HNKpP0V=2Mo9Tza9FTcLg{^omp zVSc#~OS*#TpxL8Ux9+_)`8gn^=0n>HIMAUAF?O(mn(Y5W)tg5{{l9fGH81>a5692h3mE)|Bb87&wA zPM5B0+mr0yOH;@gH-f)fO}zk{|3cP`M(|*=$Z1;`2Jw`Qa@dg5OtLy8V@u$!e->Ud0H#`sc$ z#?J)WC1v3lN}*AeE>*NXNEcTOch^!)*J~Q{ZF7s*3H0~{FFtm1^}pY|6LwT=x*{XF zX5tF8P!a!meB+t}#66j1o^cx8oS?RfwqcUdoZ6OD0~BHXqT%RV87uM#!FPV1 z55o2K=JnarQLX7^sTDE&QR1sK(C|L=c%gpdo2P&SUNgyKdFu4-ncBOTh%oE-Z0)-_ zvFH~wTR2{KyNn9fu(k^>w|jU(Jbxr6?ZB>)B7t0uzNRIAs-RPWU2v^tRzj1swpk!DeQ9`OhUv>LqgE` z$i5)X$i4;cF1)1q^wI2UL&}YS+wUi;R%@3tT237`&F8YaOY2++PlO3(f=J7T!187% zhBIl>{X^bf5%SiL(Zbga@vrc*#rOH*EK8y9ld!p4pgNCoI1_ENDJRr{ZESjvpPZ8>qyUb%6E$k!*P({q z7Uzx?X@d|HR6ai9{b@73t)1Hew#i5`nO6JqA-2DfbAAv@CGSINd_!j49l1woK|f(B ztWU5-TdbR(|e<|LNa`*%u$mLDLm% z`-`dX(z$;}(%MV3c`9mYb;G9@DF5zBB}J8`Dfc^1_W;6D9wL&~?wNmguN?KE!x)*i z)gg*@r)5q>Z%F1ufbPSQ(bD7DI1@*sM*T|;Nf#L!Gj@>H+xTjz=rry2f%|(c{hg&` zkvJ4MtfjUvmpEwIh@Z&;$V=uq+U0#qVx%wVA!}Y)P0c6XAhMQEVlzb$pe^nCmeLZoczm0Pa#OTT z&}A5cV}GzxV4<8(TjOOp>su9#TMEK!{4!F%lTU2YTN2f31W_-EUuj%k6gPGz2P9QR zu6omS1l2?coZB!(5j!W)FU#eF>21_Tx;|;;*t7g9%aKGov)8CF=VhWqOU{U1;5R4R z!^>L(!=rWF^HwPOe8LM%-9MNx1sW;FV9R-NJySs9<6wYY3sE7alltSfEGRF7x~$4>YhJszD>;V@FGrOQ-UD)K|UA zStLu>K^Aa$r)pOgVpmD#W+}z^ri9$fLFKB%yt-4_J89)m=&aLYjdJUf|H(MGB{eXu*kKY+78XjU~$Hvp>BcI0S+5W9pk0UgH@7OPOc_fv!4RXX?I|btXah_X5 z8i5gxk@14x;&-|j)RZWwv^(LBadS%Jx)tRothyG8Y;~Ze#f;ne5Ja*5bz5t~ZD6Qu zoAG0k&e`;%p>`Kb@B-U29k}!o`}{pUO^zgH-*tm|RwnO0|H$0$3FV-Z&6sFw;GLT@ zac^eO-`h`V)d_hj1LG9Jo}HkoG|5gr5f`Rer=K z0I$!n!ob1Sv`gc+*)JHpun1ez$=322vDW5y#{R4_*4nWB19eQ~2!5#`BH&C{njr zN#l;?Aj2L5IspGC^lk$(xkwiT*IAxjuUL8JlFJ(Q|~@$WZUF$yv!(loX$!!_;vA*b@Xw8!KsDu!l4bWRAygrPGFwj`0vy!ugRC1 zl8+<#&KPuSWA$u94bnroe`pZqWwLw@JO)?Bhv4eL{%c)hk>H*=M*$Z-c3wT|{&xdD z?K$7B{jRL8kJOL&uF<#UeNei}?>bu3Z;w0I2g>?{)iWD<|F;(v{h#~j{1@gWYOXk| z{*fdna|FsmoSnh1$1v*tvez zFbX)%sr1M=%~a*XyaG4hG^D;t1QghwIkdC@PiZ)3n&G_aWqz1`z-KuoW`99Fzh0Gj z(1Vb)@?65z<9kP7fYmOC-kbpzC03xh+I2l7ccb3|E|}@Vw`1S{9*e`J(uQdzh`&ej zoLNQEdTpwNg)P3?F7>HaXior`edFi?KS-n}8b`DERQ%KV@0z0bz2w^<0kt185-)E+ zFuW0wq&ezQMKMMo44NS1xSH_R{vFqoXuo*ZyLOW{URKhx!R5lo-$b_};o$d+kpNPS z83r5r8=P*xJ{unDpmnfrG)#bSTv>+~^ptXVFLXt0(4iC75zxWUi*~qwz(qOKP z8iL)j(J^kudy#c`uAOcnH@btK9A8SQ52kPX-~~IR|GNDnS&)wCP)~aGXhHAkRa3pb z+QzrR(LUKTh5CEr0TqLbF#rssfQkg)@=R|Js~sco-P6&*6tqcO*|{CR+QP#XpuxLdW@usg%s6h_tB;P95M*?*LJu582R zX0L?~i?eLcuG{G_eAUdTk~-NZ%m4jzR3+gdOzrHHNk|WVWcGQFp!S5{9Us4@H~9$X z#O(Gu%PEZV>_mR*4&ult9D|2#H`w;mNaNWhbQ#zxcdw!s|7nQA^N4%Ni7PdKHvNCk zb8G*#F-hvVm0R{y@7PrjbMeq(Et3tlL!Dwp$(hbZ^t3;1S(3cFhUJ&`2(N$ z><;#12{6s3`0YkCj_g}pbv{CHLx^%3o(q{HfA$5$a)i(B{VcKA(#FUFMT4$$K(Z$3 z`>8RxfLmW%{|b(Tf*n1lnrIXZUDBpo&*_qeOCidmGi91~RztLOJ3lX4X1P+kVmVj+ zSpf28?Q)hEu2^Xrz)5(y%pVIQ($NQ9eB4pAFhNpE>dLm}V#f1Q6=M?+mhx}b0ckfe zN8&=j`V3)K=_vmdYST&RkvLVB<6kWFp>4@`A82y$c@hhac7$sWA(Jmm3s6npPrMNm zx?0e|!~?ai${(*`;s0KjVk=Cx`|9rvKEcuqs}KOEY{2g1 z^P^bQ)^vq<42O2OJ0v`zV1_|>DOpQih%V+v;FAx($YSH(u*UK$IqrkPdag=H9?8Y5 zKuxG<=Jg!m>2d4d(~f$IFOZR&>&2z2gInc4JtCLfyEK12CRjl(v)q3 zLuv&fnB-M?+G0%pGdp8m7Ng{_);y9Rr2W2<#<4%xF`9vy&7*nl=ffl3fDdY6T2LB& z%AlnHL;Lp39!TF*FF(rd_L6s+hrcsKzyGM#&u^a@th+G&lJ#$JC--$by8@}fT6Y@l z{a<&--pt7a3;k-oW6f&{wMVP4 z$N*OQ<}ZHFUS)c1hJYf#$x!>%_ZPy2L zn~eG%r(zPlSo?8!v~smhN@!4FuJRc=lF={lQ*c*9DwCSNM1$XN_CtNr>-mXz-Hyi-ThXRJdgON8O0b7O=?bF+im}Q zbhG)dquT>sB9cRZkq`h&0eStE$Z786t)Pmosj z$LnoddU9V`f706t?N{mU1Zj_Dw&~9;NHf`aCKxGSp zf35`CmnMi*w^=`1xu=vZA&K$i#@ion8HfHOlmP454o8~=`SYBm&@NCNgG|f)azi){G{v`8J$U!rOO0UH~!+%|nmvdh$ zNioQu8E(u8Y8EjZ6lSM$He*Pn!pKP&Fa5QsIaR# zE>a1?sOT`yUvGk=37`FB!M`rPu{#kVrk@UkyK93TT;WoC>mLBZ1)@!uJ$XL?JMU7U zSrh5~w>Gt@@2C2wVuE@rkOPBMJ0G&o$nc4G_gCMw9kL#!E1@M0@rmZQgwQaT(%_+- z!l!oho!QZXz0o|jMEs5S+S09m{LHLKj$v(|)xU)$%gQvYb;T@V4oMTu+%;tMW1nE_ux;*V&;Cb<2 zyII~~u#e3`fS+qpwPTw+`$fp_0pIsxVdat}Sitcssl(nmwNO)|v0AYegp~s^Z(B2Z zlWkVOWLPG9(qvMXD073M9((jV;x}5+V_{!ookEl8s>M@Jh(&HiUpc0e6qzd_en~og zTk$QMwwe7uBFfO3uC&=Lm90O@6Sb2G;qWi=2ZTSB&2ZitS2s6&ma<0sjIt(E@N0+4 z@}G}|8yF?^xcZ$A{^Lad|7{I*u0~Lq*QlTRGT2O1&_uI)Ert+7W&Pdtir~lTe?GgVz9cm7^~8*cihC^lU~0V;d}o*b>a$nb8-e(LjIeip zyAuMs(=q+ppxP4&lp~vA#iOvNkiYF1#<|}>WU`%P`T3q=f+zq-sf%bi*S_6+F>`0i z>$CXSX*h;4v7tDZSXfrS0l~U!M~qn7)*TU7tS)m4a5mN# zr!gE6aCb7vMP9A`6BC$)=~m9g%>+j6jrd^By99vtpoOi;P1)7|;xR|pVci$=V>``f z&7Ew-%3d@bqxgLfKY)M2TZJ$hnV6Bze)&)W^)`n2J1@^Gn8A0rB7x|PyHKc}-Aw4m#Gn3BX#uLKs z7NOzX(#46}PxIXB!fa^dk!%+_Ubk>=Z(ki0bYa}fZF>2{^4)Arq}FZAVC%gR?Ak&W zS+!$c!+K_R&cI~HEc9p*NJmKvNNV-&l?gXmg4e3$$Gn*45XivKp4*Z`CH|%M4782s9Tk7D+wK_(CUQD(dN8)J^W3sK zw;vGN@CSZ*qGtL?_|tdfPo?jd>RvAy@lbl+Gz7c^eZkq#&pXo6vHv4qtUyR$Lo^tZ zyU!Ez(<_x1VKGh&EWL(fN>#4jehWfxGyK-}`@Aj1dy1pQl$RAJ(aUyq-{Ug3r|#wm zmp0O;7eq}cESOq0b0&H9F{af+7q#>V^2NQiQbO({3NrJ5HJ3LV=1vA`<1jw>q*Vc? zCH>2B9RA03aEqh=KNX#xN{&Rl25;6yEdlGqlN9mayFYJa~Ud%amLS4njr}<2SS#fcvuc+1; zn1JYCJpwm{)<*M$k2*wdsjod2fy9T{6)3l zaUJ^m>05)!tF@nxX0MlvihA8juB>pqj%A{)$F->R%M;p$2O<*+69i|1eMBy#Ygz4# zb78~clkB;8FqK6OEx2$2x|%Fbmd3_K$&cg;$v$_$Hxg zT?Q{39k#pcQ^q2^!+h35Ey1uC^`U%5YAkL}wyL-FCzC@e0oz)|jfPk?HC8rE%*VGU ziZIgJMs}%s126^8yjY!(bx8xyFTDvyw1_kr0C1vH0hM;Xr0wR;8Td}(1J}O2KS*A6 zv$;Gx4+1xG$`THm(APWW{3wsqYIUn=#|)igd{s_$%jm8=Krv)ctwL!!<3-~$sXBcX z-RFNxl=X>_^%C%zoT!(6>%pW&SZHyRpZfP@+i)AJSF2`Z*0*Ix2!=_-!!_f_FGh!w z2U#ts8-smAF99Tal6}{&4bNtwU%d|kwhXEE7I447SU8-lTU#4O5aLL;ZXD*itoW%! zHKuMckA(Uu<;#5mI;r%)7XE?!4wpGkt}uXyqHL9)`A=KuQ`txjN#Bq9@Dk+Nl%rnm zngTE3bygZG?VRND$?{dF6&7c`F(nbikn6jJ$(MM;of-S1fz#st9^)9aNg{FAaCx75 zgO{9;S$%0fOx=fD!bWIuE(*M$KhvdQYASyM0#S)~ZfTjVxr;9UvN`*(%d(t|oHKP- zn_mvgM5?2JhfShc&SiW&d_N|CSUj{@=*Zl*)AMoGY0I>+BlninO*%krubjC9_)OjB zKN5AFg4;j=Kbq}oMuWd|rnR)}^GXCKdSTIr(=(0>tMt4Pd{fkuAmjg_{FIXa%TSZ0 z{nb>Qo$k~EK!K;5l#6T&ePfLM6&|Y<6OsaPxvT7v0K@}yJke5L5RHn`WQ| z)wv9xM){n!4W9K`Emw((2CU9erh;>d%MEU6-m=2Q)BRZgrW6#U}Qqj>fZfZ z10>sNbGgM0=R820KWK-Xf$cLg2^QA^m>^R?ZpPKJf6@PrJ{z+`tEe1;g5K(gZSuqt zLfg*(WmUJ-HUk|Xy@y{o)qI}|*koM7TA2=-)9p@yIDE)+FBVlI5QgtECu1xZ+WFp zt^kYe(2|E#bhet#scFHH4=bCwAN2F}(16K%xi;#56O`(BY7JV+90n+rs}lZ^TYxf4 z^wM>sW;WMK_{aF9i}(M|bZ;!&J1#kt0PWo4vg8Jh3t;frlQ#x0b9@@V?ZJ$0P0Nn@ zHqS>whDBtSrn5)=HO*0bo8yVWU+=kydFzL?#ir9du%CIAHTy6cWemKvNjabb;TKB1@SRbNsrrctKnL**Z7&63&rn@@)eq#J~aIJf#` z3XRr0BeISCw*FR9BAOZff37ELu()_XhkMg_IK3c?muQNz?&`ISB)2s?_ozXyJ+Kw% z7F2FF5ELp}9d2&2<6m$Yb6Kc4zhLrr=3X7Lf%s*N3J*q4mQ1{uq5mM;D~eG0DDmrp z76(E+DfSiwXZY*#%?z;tC?lH!hYC108N}#4WZ&zrYyN`?BxYUh9QQ^tu;^9Ls9g)4 zxmb-$s?G1;WU#1ik@TtBv@JG%6Ab6 zdDO1v%utUB&7_TEy#cCRxzLU=2zNm~m`bHol5f4Xun|fRzj1QbNzJQs4w6?XjwI`yvgoWc+o;YA=ruA$f`)byW z%7OMZrbbF^m&+4zmqkk%Zklk3wJAHg&v(c$?A=1SEhK*Hr}?eu1##&$?Fb1e76{E4dp7U@Eggf>45ry| zU%-ih0n7l9&KK7f&cM7wyB-A38#ljYhh0o)as>pB0V1Nx`u00VntRE;k+hLe0M%5P zglkEGPSp;J@&K4U8M(DFb^%>0+@-w2Vl*d?p_e(vc8^a`%{x;lmv&z3C`Bp;bJq-X z2a7$6GA(S*v~&2%%7Rz|q6uLN!mXvI^!`%&21OvAtT1ZvGH*zCG&>h4wt?4ctX}~; z%SqQ#=V39p!V5YNd;SMmQGG{){->i}yav~y<3Ysl>VCoJWfLp}RcAKgu6&`{g2d%t4A_IZk&>ARoK@{)2-9}>wk}i>Q?IR-` zT`-UFOH5CDv5jJ{6&YgYqCjVQ=Otf7V+u1W_MWK)?G9{%bT(*i$~a26J15w~V3Oob zXL98G3jS>fXs&CmDo&Hz*GlM5V(NK@Y$e)8WWM1_66R1LQ>cg(-`EGCTkJj4(sxIB zeeY8f-*``ElYA>QHtn6p>afO1ugLvi*;r+1LOp8KmzX_z6HQWnr?mSS>vU+~bgcwM zT%VX7|J+kXiCkYS#p))i{hYHtbDEt^Urv)NJXN{MSL0tB*UJ<0bs)YbqpG3Vow-Pf z(q=Rw8K-J@E||xE;Xz~F;m=wL`;nU0tXth4F57#8d3+6h8QG(GnuW6uY^D3xmbG{b z3e-JOa1?p)7>$Ca^*v_Gi@^Q^hBryeT`q5PFfWB(ZmnyQRj^* zPtfvjIuTs_*3y6*O%d}!XkEAs@+2>UfthkVYT2!=tC@b1R+E11;eyaFPOsG*GwX5e zgSgB{))yLY<~npd<^RxvKms_9P>gt-F(Ns;XvXt6v@@qHN(j#NOXZ%u)?^tytd%y{j-*{eEsSp;oddXeYiA~-Vy&%jrf~5X`^<6>l@-13$s(*(dO2ua z5AA2Ck6>dXD`_6LN*VEl6!e@NmEJZfpD&yB?q<6L{O&>zY$#!3r0@v*5%^{gHlEJp zUjqq%zK^dqf#>sctk29qR(Op0@93yiZrGa;aQBYs=m1Fb8I5k_7=e-T9hAo44BxMm zD9^5t*UE8>HWP=g!_+nPt#-@~Rwo8nRwq1MUX(vU^B7sdY(OGz9*ns~p){iRGwPnv zvlG$gx&?aWt^U6Iv?va6!+b)}g4Ugn6TzQGmQ0Z||Nj zTcqc?VsfBz)q+wAK^!#IA_vTM(sQ`~v6U-ZqX%yu?5?#>%G#IIi5#|VjLmpjT`J|~ zJYu`9SVPqEU}uT!lwbut3?y>tf*xT!iP=?BVOlGiK6s?Gvq$=TC}Uu7CWe6N+>mck!8H_8v}cXP+lq}FOhEPFE)F?VX!32S6$Ef*$MWN zQ^~m1v166cXo#MTG+8ylr^92 z9UJ>!!XY=%A7-h6Mr`{|`z)=P6gspC6-S|FPvexRN0j1k^h>R&cKB8F?t$6Ag+_Gw z^nV>p7e%C*JZ-Hp*T&L@ZCbfs&&cJ{(}L2ZQ*ixtz+A@PLBA=$7BEn>_;6>DLFEgT3Vd>f)(hIzab6QDlJv*y9qLOt+mX&nHS zOq42^xKyjXE(ZzywR6QRfb#Fs-u{iO9x;E!Dx+Y+n0{j{&=sbPamCc6-UhN12%RDV z?(~R;HsgvwCfr3BkFOA}SaIr@#_N@VQ0}ZLg+mBFU9hTFnetq-zm&>A;{}DTJYq)B z@En%6NW1@IOTQ##*~WSJz6_m9M2=4P=g2KQNF1i=uu%rw^z@oGfnvAV5>X%qDDhW! z1mKonfP*?05-pVHZ9*YKmT8gfdy*)W>JGfJ_8q>a!e`p%;A`ohs*rX16_EGxCswtV z4bYX|X292kD(Z^S9G$Yx+1wr4G)`>V&lZ{4<|YIsw%oaJuxl2|NlX)icVX1~3PI%o z2YDWPF^G#uJVyG?igAC%+0zsehzQ8Lt?+lAkB=c`n_c{^Tg`GKCpiN(wGcnRO{hY#qSl0p}fxhcNG zF!D=SJAXT&DCGeo`D{?vM1J^7?H5w^&UD*K?WboHstcJwO54hGJ>#Qx8OX+??R*7- z`Fv2{@NdV^O`B1T5-t7kYV>mese4N~Dd2>BkY*?7P3?Wv4X>8c%l6v}2haaSp8L1& zDM8VJ+B`9w{dWdwHDzd&^`Y^wAsD_v)rxk_uv)(6>2JjChJeCp<-t zT^qLhDE$^D>3PCJ^!v{H5^-xTiqAmN3{1d~D@OyG8}Dbfn)K%gn*tW5Jfw-lW01^@OrIx03I@fo z4MFrFpLimOyPUHxwuYP^hek}!$?-gPYV}yP26e8f$Ha0(_FlBpY}X2XIFtP)xqp7KA~7p(rerJ%*`;y9UPXI; zaI5JRh5e5q=}I&^vfha5{Oevq=?srWo|@RM|1Oq5pd;y5+{j0jsY-KUgO;=7G^~tV zk;#L>UqkSqaKug2ha#2821Q0M#-b;BUa))qZCk3>*tnt_>D;EfdU%?y-!&C{+dt09 zI`50=2Ni%@G9t{Lpt3( zjfHQ$?7YI-^NCe{fAxa)0=sSf6_HbeLZdC4lE4VQJS`)HB)ytbEIeqVZ+fI`i*i)P zHvspbRDEHGDqmZkn^fo8%kivao-f{^bVi*X_R6yQt}&&4xTiCn+K#PLKBfNnUiJf+ z#G0(1UF0hH_tQ7O{^T4q1frLC?Gj|?(XDZ<8%(s)9PjWt{u}wyCfZ!rY?%oFTE zfv$;*|D}4I~2f z6^8d~OR1Svh0>K?{}{yZ*Bgac2z748ZmiCJ?e%<%Mu74l;5KEOa`1i{6r{I|P2oJZ zFx8>P#Ekg|@v$NB@5~P&?cdO-JAJzZ}bX|mZqSn z&gb%>%K4-qT0vT#gc*)v1xiQ7Qi80Roz-`OA&)B7d1y`sB>6(Ah0B5-B%6CZ_mRrm zUHa$E%tP=>fs&RR^DasV{-plt^L>1{r6m?vygf+m8Yq|MGtGhQ==kfb+91XVXHW6&qecGI<^Djj!K&@eR+^QQ0n#3w&Y|gpg@Twznk=s z=sfd+NBaVNRo~SsoS-bY24e*Z%kjS+fu0{nGcg!u|FIx$Y+et&tfbD>BoG=bl|Fk0|&i`vnDv-5DhM+sr)9m1I+OVjY5!&eq+N?rBKvQeq92FxnlD!h8t0a*{ zdk;NsCD;+y@vOqJVt-S%=>|SB#k1oYpn{0wiOUrmqDr1o9GSE+TrCI51S(}$U*JHY z>Nxl-S0z51#|pA{6zC(tu(q;OJwhW}FIYI8g~&ZTV)AEX!hA0kfkbLlvhz1OJoZM0 zwJL2l`eum-Bx9UJlv|*TrR?>hvKJGQFaV*zo=VE=lFia2Pmbzz3M%-&$B+V|4u0;A zDIN-1qdslSwWn3WE!kD_b`E+{LcE>Qp2su_coEJky^g}7ASG3pLi!s+rq`B$Tr@g1 zFwSoh|5br#;kB~HS4SdxN)a&3D2o3Cue<97OjBi;* zc=xE%wBkyHRXunWY$H%ICoZk5ALI3Qgx1RXk6j=5!GzkqTx@?y;+n#YQ99<0Lm(~B z`|gI&RR*3PyhDnxKlni-!i0?aN(SxeV})BnH(^g*aneZ_%ZmvPxJ)HG(58RO`#73o z8k(?e{A(fYb86&xS={5Z7hIn+!RT~yM2Z*4_td^1^N6{;9`ZM|de0TlA$SQ%`XT@I zUZ3@m1@?^utmf>C@mOp~GhV?pKyrfS7(;1iU^&h(zWmbw^IOb9Xjnnk57oGG{;Oi5 zfWtk~D-_KIq^>#UL8wlqWL(`{yUezRo!?Qh&Uy%*gLdtJ7Vcj1*jMfCd>dtX^wn(O(OWt-{?Sj)?{mqt?Wb%`|GPt2_K zv5A*!BJAtj{OqdLUh1tjSfTJ73p(DrDkKlgVFrhm?Z#%*Blr9bDk%Y#zfBx#Jj!dd z3iaDpG@8q|9PFCHO8~&A*OsW)#!j0Rqy&&tdc&(sdG zZ&a1l*&nYKZakdY<5T0)y^Lw;%2&BdIx@=%DWZt&@$C1J8oytfI@|EP~2S~&I?Hlun z=KP5$>QUkd6bdzKP!&YaSEC;8P-Xxp3!(LErbI7Gk#RuFT<3#qMSz9|Q*TL3 z!PT825g+Uj~?KXzjA%qKl`+qs<2-rP8tw<=Vg_`xT69O{2Fz2Yz0rQRo~sOu}B=nel;%PnE!DU99=Ub0MBOUg|a z*}skDONumUh}x{{JcSxxS-}(aIprZ=o`bHzTb$bdHY#zf{GD z_=NX%6TkZv7KzcKg(ba{AJ&N7dGv^f0v~qzLpm5HSCkdt z8E6+REvp<~=VYZDuQ?rF3-4z5(o9bZc+x9XQgm$Ix0joS&SX)(p?^9d`4GN!rVXLW z;f-RpJ}DOT+i6yTE^1`|YBlEGBhv#7!ILpAb7TBy6)LR2H7m5XD+wiZ>O~s5Z-uqU zS)8&qJRozXp$wE^#zz*m>O5{GlKI{}aAAxhwC(isgHeg#`7F7Qj#Pt%&qB}M_F%7z zXEi&y?TDN|QLwFw4!IkLfb`}BM#5J*ei?##;K47JJK91It|_d%&9p0lf8W>Nh0BWb z{KA%?AI+0F^Rwja4~@z2zu2RQgT$os%8^Wp#3j;4;M|3^;i1l%L7?kWM^YCPLWjjn z^lJ~Y|7Se=zh#L&hMkFqi9Qi35(kQdFhSxN^%5$_8QiDtJkfHHznsh^`9jxHnc;7ZqXK9MA2|ZaJ*QM=NZRdF4!mg)`*%B=XDmni3 zFpHg~+?SaG3kwTIx~hd#pUF;mE~4JUrj0KutL&tz5%@`~#@Um>-}{Kh03c0Yic&2f z)@FK<&dL}xKk$!3HWbFJY`6Sbf*ga7|NdRj}*8PRE0sPQqc`{JKY~!PqeTv zpK@_2tKj|s`CLaAAra!DF#7<&G5L*DxyDMfDt)+4Z)N>8s=1j{j;hydOw@Dm2GiK2 zg0d=cuEs^6Bv9>m#!sUlMEa62rlZn4$JksgWagsrC<=Tg4=c%Z6~Dn_KO4^1!o35w zdQ{(5gtg4oRK-+vOx&9~c{Kt7z!UlOpOH0US}j_@UuM6H+*fn}%enp1%o6C0cD8Sl zn~Xje3E_8l+A4vYIJvqOt3Kx7viF93C#Fug)5$gPN=73lF)R>CZX~y5S)I6D_ z^MJGxHN2%beKAhj5tuJVyph?8ErM~DpBbR92iFEi8)-!OUs!naD0wptLc&-_9}DH_ z;2F@JIwoM~1(u{jLxgTnUwlsR^AeuKVQ0dr!()07KI@3vryhpyXr242e0?rP4J3Mz z=iJ$AvW%i7fTYvqDUSzZCr9!RSN}m-bcrdVnq2d3`p&yPSLc6iQ?oozqI#>AOC=UgtGNxQtp@v|Ml=56H|{k5SyxL1r!oSB+0zG8TGPcKef_ONF9qJK=$AB8gLItLVZC|t||Kv$03-1 zv=)DWzng&0j&ysZ)e&uul+GI9?sSype>a4ki{bfvL@hgihcTB7*R_Q>Ij|UT$tE`L zv6ciK+YlaJfbhQzvq<#B_&^}6PAg_%GY(J)lx9|XEj)a{=4m-}FFLJMWb#n4l|wd+ zl8xTbAn-y!h?D$O2@IA#)(+TeH0dc~;AsDY21Q2}^b<`0%dE1?4S(dVs#|`~YDh?_ zIee~0TDk?eip>C(bc97eRwF)59s7ui4U3&raDla3wWNJGSIh8|dRrlv3B)GX5deKS zL}SXpLz(Jf6&@Tbmf4LPb%~?{-Dr5~nl!iVeig%VJTikZHVX$KXsa5KEcQ{ZFs9r; z{XEKaA<4IE<_^Za(c|NzmuK9)IH8eSZ|%N!1FV80B-2twgM)MCmW%DVnvNC&XS!yA z+xnQQKq97MjYf4ts7ce6u4p}H#%OZpHI1swE+=rac$zqJ=%hJQj$(x7)1x-xCbNMA zk1LR`jcaj4hrn3dllmbL%_#8SH;2>jHQ3Dtymg6$@a(VzY`U~?|4aI6nUy!OJlmmW z^i-y33E&BB5d4#*5xOqX)-d9a!Tg(^{%D2Ox2=leqBq9aSZ>2UPDeYR2-h-V8sg#& zC?x7F1!T#`RVi=JV)v=uElCUrHN^`)dSx@ufu@~t+ zDILXLDMwg2lplp7(8=G8 zPU;)j4d2IL3zt3(d+dz|g!BwPuTbvibKIMAi2C(?tK*R3!O@x|)yNB}^iKMhhQ*}! z$`<26FT4{`CZT#09SS6qPJys6Vuw!R$%xFKB@HSKJ`0nq2z1`N#@Xqv$Al2Ocv@$r z=$NUq_M9K?{GjdARo#iAMfi9En%a8eN-elPa*7m(<{qKl+6S>RP0DAzdgZve^oC7M zv?t&S$^(<(#d0U~X`dVON;n%$VWt1GPW-=n8jPK*cALId&}1gO)#I`!*eVGYcb@6x zaYanbqn{ASzDP6PN|jk`7XR>j0K1-XB@^g)(IwBxo3m%(Gn0VJ_cdz{h<#j}Sa1mP znxyZt$@nQ$#T-;yZ}t!OIZ#S{9pKvlM6~nglHg~3*J|)^dw%i9<+WS><1D=%vj-Mh zt~jnF27R2jssF0th8-RHq$3tQ%gJ*_%tmg9o-F;+4g1$s35beoJy`VYap&?;qb9CQ z{#U)g$2*;0^;|%V3UXzqHAD1r&?R&eb2(?(j~$TYU0P@d%dwUiPr#?1JR=dg7UQRb z*xgIzo_db-C)pQruaD3uVVV$?$L*LVk8S>>e^y+jgbWUqbDz}Eh}#N7C7aDo2rE*h z!fm6}G#(SDMnAR0@Ijmg9ZHwAanr+U9Jq*KCfUkH*TMIyq*QTVpVj4#NK`%cl%<``QAXhlHYC>eR`(%^(#%I;4Kj6dm@)~61m?x2QUHW8^r5r^$oYI4vqM`hx zJnze)i>7wYpXoyEUU|BBn;w)+e5(v7DBiBf-lBkCHshDS9qo&0KJwkc8#fv(mQ?QD z!rrrjvCgP7v3Sw%vpTZE43wNQNq$vfbuSUZI4mJoRnG4BbJoDuN%rvO1$?;WSXX0n z_cWN|b;h5n!R(gO;pU0w(QD4w%Orf4w@(Y{6Tn-(TdN2Noio+U6a}3U&+09P85=gY)ukutfKT0g&S!BpRf`fz_T;2HJ~{wY z9j#;$c+h@-8Y5(Zk|%mdai5K8U4p6IfIG0=_QF?|?lsB(29Q16$kzA6YO<^ZBQmY!&^m4rYnH%!8` zbBcAH@r>tuXzw5IFVFU$hAhTMFrJgSfJ{QKFs06hwBeX8dMc@D!?D3~5kv$05@s{X zQCu!Ykin;Pj|bew*UD~x3$gRGK(C)MLP^^SSFzy1f-V>~Ny{m%XNnoJo}!^T3W7|k zF5(8Y;fGwr-`(mF6uo73S9y$9y~8ez2)+ku;-@sm#?BJ(Ni{rt4Qp{$km)%~e;jrh zv5A+Yz0eNLwN*c`g{-_U)vbULukd&LISufXVrog`q$^6ZX~XY#LHyl~i4OA& zgh<~q3M-haSADO_p$&w{9$~H6ENM<<#AFn|sjl$9?^&4ydd|0nTf$VIQz#~2)=8xS zA#*HDe+J!N!!4YKjwNb+__+>{PQq+4d@9IRD)iroyhNyyo>6StGR z_hU=(j|gK5&y7)?vS{${v@;p+l|jwKmsO_3jpoGpfjhq3y*Zq0Jx@}?iG6nfVWRu% zv^JRvMfL$6jzZKInLh`tX4nvPyw+h^bQ2tLv#Zpr_{W##v94mmC;!d4<@C|~v)`F| zQ3ioc-dZOivZiGRUC0US#JWRiDen6@{E+e0C+_}dz}wkw{H&Oh&x`CrX-Om`=`96D~eM7JqdW z4}qbYB4M7Nzn5h6VYlqzvi{l&D{}+?4_SX64)x#uapUh<7_yBN%32i3nu=^Qw9rSP zMU-VMAuX2d>kN%3Ysr>9$(ns1%-Bm~C%X~Z#=bLV`OWqH+{f>_?&JR3KMvzH=XpNQ z$Mbnwqjr1Ni;cJLqZm^`i%AF>xTAJ2`Sf zo$%LA2V(>L3Gy^fvsiK07S-amLb$=UNz&HZo&4L{I>FtPq$-Qo9JqKLDz(#%>?#2H z_YMQrR^#%q1L&lEYhBQl-ZG2T+_D|%Py2cYTlo}ugQ-#UhtYGE5Dutc=| z=1-M|YvO+nL9g$3Y0mUky<0dYuR@wQ2Wqe$gg=) zs$b{ndSpg#XE`T293~~H8zoqx+se~hUeC9^+8fkz=q7$IS9;yp$kF*11&rJ^h1C4^ z#F7TD33rbu4~LnJ-4=@;IGera9P8QI?(R8Opl8c;Z|D>KaX-`m7qUUbuq0xDrKU34pOlg8rJ5)X0sqCNK{)s!aP`NWP=Nmw@?hl= z`NSE_O;ehS1So6jHfA#*j+sDxZm)OqrLL7r1lV@P_*L9be1ZMY{!N76ls< zr5ol2+2BO9wi`(5$TTMvh%ql5_-J3v)U_Z~mlb<$!p9P%TKS}`xarKRoMX*C)yUM= z?wSa?IO`)OLub(@8pHk+A}JCQbeGU@PUV%Tbx=)pD%{j&ZXjndTL~9x@iS9a-*vfo z?5;VcwnD;+gY9l{03Tjs-sy;q=|%-q@>40~Vw^Rm$Q#s3xnQg*XghU6DXNZ;!NI-K zk1(5^dG{HW0*`T!;+}w|4X~sasYX7=(Sw$E+H>~VL<_H70nkt=5=no(g$w|xjuwcy zf#FG0UYF=quGnK#Wj?E31$LOHD-@PxnQv}k1ysc8zWN#!eO7#=tr5|lUlTvUW3xIo z)ZHGfyHjg1k=q`pOJT1_(df%LutQMvLi+Ik0UX&VD#l0LB~^mJ%IUKKCSoewgN|Yl zZ=h@L8(OGfMSigQyxX69*D`iKCchSu3^Nkj0{t-I4i3f~Src#?159W#K;UA+#dZJX z$n?_WM%C#CI(b~Tcs;pb#$NUmWT$!YjVs4dH>kMwnvyckYu+%RPpGGz0cSfgu;3TL z&eFWsCAcciTbdIEOET)g7qG6>W;k+QG4$Z1MuV^D_~ zi=KJ^G{1Ea-!U3K;9qrM{l72hvjm62&O)Uk62xFonQ&mDx_3_+fe_rLBl)z+THE?V zzkn!+QvG2v)${5*l?*1waKojyi4JExmfiKwkS$_(r<2g|duq0CEK zu+aVA!7Da$-xTrY%aR^rEb~FlY>D#nyP*ly-G(HvU4^DE~H*BDUlXmWCDZCsK+x+ z0*rQ24d>;N_HhG2EQkwLsD^soA{xSKE?>)XA~C5Uq|U`Uho$Zmvac&ONU+ar2fbP~ zzGs=M=3h1TUh(H`a1Q5)*WQ8B6%#(t4Hqn!c|Lc|NCBg?wU* zwm^_ z4vmfb!ADk;oHpAzR_~z_a!jA^p9$IHR6u}+ZuPQgh zUVOM&dStWvc%74tfm~7;RQZg~u|wAi9!7UDHj4-GYgG(uslYtC&(Ib8)UPsLX{n&? z9xD1bzM;x4q3g;IyykYwTkj7(73r7$pX!3EIL7fGF)i*<-TaScC^G#fX7bLD+d&3J zw9@4;MIelkRp~NqqKZq5Y3t~5-jT*I?(j<_qTTme-~Aa*X6M(00w78`fxYb|Z(PXT zD6=fKi+>9gd{-_7FvjCUAb+BV!Oj}O^?x2qTP;jUw3Rn3hs76(A4@L?p(VX{PIRUg zl@Od-&sl@`odsC23VyhZ{>Z7@Zx&Pey&L({-Z&pJe;#+8_q1?4&qYPHbwrH$;rgC| zlKVEXhqO1j9F`*EqSxlOB97AbS2WG+XgWh&89?Gd&>M?-Ch!*l_22OJ z@Jc?l0jB{clZ9BhU-BKd!a$;YfV1j?z3>JN--m+ULZGIP8Gt%Ve;1Y&DLFkLE17tz zm%sAOqb=kli>QJt6=G=v8wrOKOzZAQ8`Vo9O^3t=9-k2g)56#x!> zu~1VStM^nJ#@G=u5-lUUSXfVJ*D%$<6*y-szl;vDLo&`)11Z;(FhdV^wwFMgMj=^b z*dQC+-1t*q0-qvzf}J%(w80nlo)7-C@S2C!aHB8H`|!vtJFTG9b?NWV21Db|RQQP- zf{KKWt?Mi!AjZh{{!&>Ete@L0PpqhfdQMoAb@1nPB0y1i*l626A0+zCt-oXD$#GWU zc=j8LG54=kCLbjAm^9GrN*@?JB=wHIvY%~dZydEuKlAeQYILWMLX(OqqMwvv(8~y# z9!p9s&Hm1Wd`e+XhkXW=v^^^Y)Y7u@a;W|u&NQVjnWyaxVld(!ZaUJ#ad}@;Lv)X$ z@Xox7?_2~e&|LkXztnd2A-DLHV83(!{*pT1=Y;@}?Ty4w*F{GzCa;IwJ*n_}e{79f z16t!7mQNel3+VECGI2N`rGz3fqddii4hB@_9yAWZi~}P+M4a?Y1dzTv6FcmiVJLjY zbKP}|TnX9li!{Ic$|^|(ji$Rt$lb1^{OBlj%(06II%>Cx8hu0>f?*iSb7GVa6x5D_ zylDQ$%$9-y5Ywf>psSNc8R$I{LyZ2{aBo06Jzrx7J)a`Ue@l2-o#p=q{_+3auZDa+ zx+5nldl_8U(;OVbg3TiGpX9&GdqSKeA+Rh%K?A=1GW2*mI2?D=0LwDI6*RLK{R{8H zf8|}e8UHQjsWi*u@aZ0sOUp?U?$My%UEa5ifDw15xtj@@8hL0p*)sX87%O|n8*CV{ z0{=O+FY@A6VzkDL40g`907x3;pEqLxUa8)^$HHn2hVV!hjGx=@7S+%~aV#>OjBZ?g z;Y?C?UoV?CMx3)gaW&pFJ;RfE2SY1L$Vi-CU8?l=n0%oE*>6NgID=i7jesauswj5e zQ+~0%xT>>5Z)wX{kveA1tNm=Na@7T*=Zw|Qv|d0u+~Eu;#s=ujPAAC_kRM0a z6eqN=5FYMeG{Ma8W^mg|FBErwr=taCU9Tz4Y&}D2?&^z2;3>Hf!thb z(>10anAu=l2p-6!!beHLB5GN z>d$-N=O822KP(_Bj~EM2UhX6!?y*?FVc}14Yri#b>=vyk(P%^09lglI zdt#@wGO}&_@rY9~e)j=Oe?;KC{;sB~$*XUqLsr&A!}Q2&h3UMCC)#e!+O`pp5FSM z=_+88LNjX;eLpdKY4W%)$X% zRFAgfvCHT{+FU{hzU(eDQjq5NV07+AkxT!f)ZBR{I7Hj}57N5b=o&hT_c!2TQ{nTX z_kKM3cR@q?AK%kW{$u!TKf?^4?!Rf3uCIba8dDW)2r&FXue zsy+|9z&~`Byq@2?9C}16TlV?q^vXojSn-+TJY{U=$B$cuk39x3nx+B`1?ZJKsVra=Uz$8(%Fw^D{=`t{1`HGdC1Y zU(&UYUinvo-)vZm>g@$;7fFz#h0v=zOAP{Jl{fyw79?RH`Y)UCPZ4hTx(p7^W&)ZP z!;J5x2zBe2iCy6~n%F_(Ko$@H3Y=hFLD>Ma9|IO(q|K-X{h=rf$2=^*VRc5+jJEuu zy1`R~cej?MiIAY;Wc^C4VV_e2%q5=6!s;_E7<>L|0 zfuluGQ_WH8<62ju+h@Y2lUL?^e2NT^#zI7(WV;eW*u_t)uaOf`d)MsX@sFZy?bSQt zhS(w7S1?5=edrC`GG!TNdSDv)A@qf4*|w;nu$AbxLymhj$2JEwe6*USWQtZ(l$E^t zg%v)(Ia~0@0t|6h)Qg=SOx+UIXLV=)M*{JTBm8pwND4NW%Q+o0>PYpJ-y|W#m%isUIQ%4kRxf z@am%3)0MXtT;CY(xDDNWTHELZ5kA@5FX>mEBVa%{wC_%GDm~&5e)6n@Eev zLMIWA+zg=}yvH@}lde2(Ov2hykM*Rgbev?BRq!@?TV+PuA`wN1rjtf$A5J%I!e??2FOW6CVww zB;YEJw+=GyAR`~^ZIFJSeYKRI$vi~=OQM}A4j7)ift)tgG&a}Q32suEQWX{1xdmvJ z{JlTw6-3acK0QpxVdDgV!H$atOfAd82+;6lYGn%L;V~K8oMX{-31tqI9R-vBJni&aJ;yU1!53>uM8YtbJheIAa(0?Z7>fJkm zXF4pc;4f-=ZL3MP9rESsvXB{Yvj<_!5yN~pLaZAW)+n08J09N=LDdtQNF{N*1&osq z^qTM)ZDjAt6Z~mzRS!6y;Mc~la(HC^;P~8F`KkwW2wO++3&j#Dl2WCAF#pIcpd#n~_hOi{gcwV6D*T^;jvgYW`P@;`+$e2h z{$o!Zx!ZHwg1`V#O=xg=Ks@dZ?r>hJQ%=2jRBWy_xF*o5rO5lZR8x@Z-(}mlZ>sDU zfifs3l-qR{MI*URdSu;gG+N!6x`cS*_F=u?_2xhb_sB#}+HSGy72_cZmoE)FulQx^PRpxIHFPp8A}JaSjt8^)jS9 zsGZ?4f(T)7G3txfA}|DeD1%$dhMIf?JO7YC*QO@0{fcG;221+>i9w4qwhtY&UCsVa zO>| zm!1$z^=bz!%|UMJy!@u{IbTWLDhb(=XUjUlJ%cmujjx{x@c~R+W{NTziOEQp8S!Ab zXTYa%FA!iL>mLicn2H|eQ`NiI*Bm*n+cSX{_;F@N8D_JwmcP?P;#gwZL;24kf;H-5-&rs_ClXT11W;VOUX@4I~f|~B5t>+XU-A^A^UFQX+^2p%D zs=GkuS{CW|T9G3AGoGib;#%ipe&8V19&&i40AJ<15I4JnI4Ibkbqw^Ns`1#ywCZ zb1tx+=VJ@CCS;c+JU1WfTfYH4I<=^x`$O3p!^hbvFSgRY6m)+w&%k*N{&q@uVD_2} z-&tZXbeeH|TS`-hbywOM%D$DwvpBp0YRYqXPF8*8eJVjrrdKsb)vu6%7-;kHz{m(F* z@*9D@w5dE#EYrtryLk=0E1}#mz)Od|em!fLo>8XmwlV_$+sE`usvkZRCjX-2zs734 zjSE6KN?QCG3i8hrI1KAeHzFXmt1W#UTW|9$?)QX)_E)HH4tlH>P_xm?C<(@u396ff zCp{pZPC7zIs1Ax~V^wjC#fAs-42OTkv^W2qe(rt1#jswDwcne^hD7yn>x?n%Vq!xN%mnsX!Rd) zQnr8Ahwl{Zm^5FS-_gHeMG&4wpWkc1FEh4IH9@vwtSDPrm`ad@{k)T~$C+Rir8+TA z=}fSigEi>B*Bi zK{mkf$-TQsxYpuBZHKv^1~iR_{=K(@lZyAA22sq)P%~_-6(RNDOtr*3(K%8*9A`1X za)sQ0`y=XQTGyu#vME?f`BcqK4xL+{v9I2LSsd8b#{#V68B`L%kY>P2%$grCm`a>I zFYkC$5R?HqkK-mTNve-J?~9# z7rzaPZU?*UgvuC_RXuRwbGqYw$pX6}qdh`xTN3GHXU660OLHXl&u6UicjB(&Qi|2| z8NWLy##ZCrjw`a8)>t0gNPUH*y zMAb14Cu&g!uyCWv_T;`SP;)xo83$wMV&lXx#-S|gwfvPP7ZtrTn`a#^PIfD#sa+`& z)U)s=m`-}^9n8(nNdXycbvJ9;>a^_o3ej@+D6w?)eL0S$#~4h1v<}5W%5if*;OA0k zSVLgQh+JF8q+o`jsO;DWt&3XX#u)DBP+;GLLFPGSyE@)wogp)HJ4nHVrVvEiH<`ST z-fDf931;AqwC{|#7*>Y+vu1!V!KCA>M^JK*k}oheoLcylZAZBkq4I1f)87q(>RreYs`HR6QZ$$O@wbrx7q zyMW7((6LE|JgYaPQE8fYMDA6_SAV5nIm`xaJ%{(JfaZM9g)k>CK~XEe(k*>4yCM_(lj8K0)+JtW{R=P)Oq@3yDDuC)ak%b_TCB`0fX?^d^oDJv2!AYHlFA^LpyR zc7&JgrTx0Pg(V7oSIOnXT2AnMskh+ooZSEl8@PG?{U|rb_Rsqkj2ncn@+nvQoGetk zrqGdfAeU&*$(`tu0uNDHMD!3oh7pZ9u(qqqXYg;1icprpDH;4?yxA?zr2P#~5@Qrlr}YOt&GV2@vjaodsi(~- zFPlB>9k$=reC6|_H)LNT*X)cYPNPG}q$UK|FK{tcui~%`4?Aj9I%BOvR{`&Nq0cb- zsS5}nIzxLRC1z!_=wCOU;{UW|ooCy=oZ(1daskTXozWq0+rry8t#+E8D30;&y2$;Q z2$8unqd&27VCT>`lP|uP$|mUROTFnG<2SwJr!{(8LcJbg7Oozy=`8D?{}725IHqc2 zAZ-QvX5lb(&We?aFgx6rM^e*XQ8xU)V9?VCqwn85A4Z^=XFIMoBbWeMr!Xen0!BqC zg!jaqeTZECs7P>Hb)u7(24X0n)zbJIB4N$yC<^SQ&eFWxp{oVFbvT6x*y-PLjP1X z%=127o|U>Nu(j>7nN5~LuV;x(`W-OM?9RWv!GfS1%mC&j<}R$HC?4X;1LTsif#XZT zZ7N*(+|Bwq$5t9WvfOK(l>mCVfkZblcSc)U#`iZd zxPwxe^^Y{7fhnvcY_yPZ+&TW-t7* zqjV>|c=JYy;#gI47rm-fb#A!EL7K? zXo$rPGr-36`eY16yuyL>m_p9r;QGP?*&Hg+5+N|2n?9jjC-$Fvxfuxdb1YAA2;4NE z>TdqF_DKl7y6LmMy@(qk$q(%-&)U5k(%~YE3*= zbw2aVZMQ!JYE8TId4cSA&WWOI-0t_j_QjhH@{wKP&o@3AZW0XxK$1!emT4=!ZkKR~ z@|cn@;sMi+ z(6<#{83v?z0z*;fGjeW*gxp#)tQ-NRAIN>G0bLjI<41{}=4KZwi5qLO05&u$e{?r@ z=&*UX#9R6*-;PDE&6NKr#Z;PBsBUAF&H#UaOkijU^c;iE=vS^JxDO#$)R-cB`*pWduXiie!;2F;*0QVV}ougy}^UY z04vxmd@g*|45li3O|P&5DZSY{J*p)l)L>_5Zj z#}wJ88n&xRT4YNR@2u8?OTX2uc708gAM`vL8#JFSl@xTj+57T8F>O-XL2BTw#e{h< zot?dIgDJ~{8oAuEJsKa*w;W?{c1&(5sWK}=gbl%_qd%*GbAP>9QG`c`com9*13l27 zef4l2!q94Kf~udO+dl-o-EZ9Nu!H4UpA|)U?jHy@1L+NAD0Hr;dsY5fViMXUFqe5+ zZlz*>6Tdgyeno5LZzM7#u34_(>(2H+h*o2NX)ZmU+IIH~~Ibw^?F?Jd-pEZ_t1|Zd-nzl_DzM3IsyjAg}%0 zRegoUz2`S+6Eoka6R)3ul*cc8=XR^)+L&DPnBI~q5dEvXn_~&-x6Q~^OAcX49m?K| zx<+7V7X}R7u2vQ^>hQRo{p}85WxtxoiDQaQRwb>?km2>B3XQifiuwd1JAi)5O26tv zJG-)5`_-8_^*_@rl8ssal%33ER4sJL6jMa(~ zD_ZXrjLk-`{QY@vs>kFIfwFx>~`G~YopY<<~8g} z1T4OL9twLwJc<{RIuy{R3;hSanMDV|#TjJ}J-6}i*Gm)+O_l}?Av@@2ONXKM3#hh~ z-^Ic=XFh#fzG3oz>sK|k|0#iG8zm4@l*FfyV@AC;??%~y>B2UwZVV(Cd>=A6i{9(k zpFOw)4)Y{4%jDEaw$1H}Cqs7t-7S7he=tM*A1(8{?#%N;0jmMQ%}PI1$rR{F6G{9z{K*Ob3sjl0xgGRDC4&w(2Z)L;Uc!KxJfODm`K@@)(d*i-P^>+gPmLgbWpH zm`}1mt#!cbr+`yS3QPub&wsS`^CDC0dyAtVDvKQurW69VV*L>NebL;zXEO~;FI|Aq z4^NYL9;w;^?*UiLgZA%qR%W2o_cwx=W#}Cu=z~KO0CfJ0PdT39b+V`Jwfc$~3-;>F zn&-@b1L*c3=0@mTONxANBl*S8R{}2_fJbE30)>44*|n-jrehem?)qHC%4EM9Y891Q z+a^{}t4h}$%a)Iv?PfPjua*8oytf^9(=~khOS&wfr6{TN5Dw2Jx%;_t0i`ox1e?L@ zZQn&P@dm=cA@KsC-rVGbXvXGSk{4|kf)TT=ByapV4a+M2l)8T6jIhh+jd--@1S~<5 z_1kezPDOXv3yD<)S&Xx%7t6;23l{-#tOFpFF+5oNr6272iQLQ1HMoqplcRr{-J5$WetUUC))Y~Ik@FrrDYW#M^GSXouk z4fJASSvvFX-rwK)J>Kkbhy0N_wO!0_931}`I5CS?3SIp+jQ+dHk?pWx_Gc~7!q-gmU6YwKCyWm{zX_c@alP*{z3fMG~6Yfj3c8! zbBx)9W%Xqg)33lN2@Rz=dwpi)&}{#vk1*~No3nDyII1gE{)^TP{l7*wR?e@{*Kk!9 zd9gR&v;6vXHy04*68wee?TwNQ=j9OL(5D!|05b>$Ht{rO>u8eg9#^G0jwnowP=pxPq*cj}>VOcP=^umyt*-EQyuVa~S z=*l?OAMZef?;$%M#dKJ5IM%+0uf23)kYX$S}o^`^~#{c$c;*$21#EZQF@i zH*?mBw2E9lf%4)IuVo4ho)MO(s_s$D^-#Ul{lmT^JGM@g@D2v|mz|5&{iNRdUhd6w zt?}FGH^*kou2dx|v*z-?t*PTsRaWkWinB(983C%Giuc!;x8Gg9QARncCoUCzv|+Wm zCBE@=_lyY-uOOB|57nyJH`LnAYe;9bO6>*CONgD4I<|2!o%(l*v78X-h+iS=)D8xO zS)Ou*mF%2B3S_V%TjYHMDj-&v&zP1}c4!K>ODACsJ?qCW&RJ9%AZQ)5)25ER;uGBwdvh)LtPGtQ9uu`QH}_ua-U>N} zuDHiHWEfE@Mo(KGJxXpH<2n#%Vty<&Za2Fu+S-NH31ZW`eKJy*Q8Q7h<^$Uf)ysIt zf^OtJQuC-N1X-%8PKbs)%6}1H@7Y25c9=f48dNaJX|;;HV*OMFg2L67!{%4{VO8Bu z&DI{%mxIdsAz9hKs8h?uB$9Sfn)>v_;{e%FTgPm!I&q{J3(^axIBohw-)So!@t$Wq z)xaZP#^j$ixk8krSOa&-B@X5BS-<>Z*-?GBpIXeLJo*%-uvGuIbx2jt)W_V$Ekw)v zw};-9o@A5Agpg5F+QW;!j{e2CegzSoskrmHbTX9AJC|raU0_?w1m~4WIL?E7o>i@E?7O1q zB2Ot1DFtP6&tz|;R?dB72H-vzZ=VQZA-8ppC$?Z^$|vQu7Q2E2>%^NOzJ#o+Hdl+f z*iY?Ggl2rG%X7eJX|o!ugCIizV|V?waHOaXRxy8zq+Xvwy*^1`w~Ij)RShf9rnlLpPouNhYt}tG!4o<1?7YqMf!iQOH%~~!@k@PDQGsUxD^X3>d40dC zW$Ul!x)bA;T24m$bb8znIXH=E0yMpl6?LDYm8A?g{cs)3uogF!b(>ch2t8S)>?nXu zMkd`g`LVapx+ma9ZWuyi;{@y?nUP2V_WY-7ob*PVLMwY-3N*c+r1gKEY#}>o{S3kz z(ME0yidVYc_Vz$;hEQ0E;Nb4|Lf0HarZ)eJBM4IuxB8JV0A46a?f#7prRELPFh{~7 zo*z9c-wf&=CyiLIz6EWYie~ZnjlankWe>KH_(@8lI9-U|m~Ub83)-DOy$vdNub7)P z7WFtMza4-0J}vbi;@Wogwcy7|gRwq|y-dM*i@-F(hdww16`$$Yj~Cme^!29~RC(LD z?G7$pY&&#LVxXuT3k*4i$lyz2=6?FG0D8htJll{Xp6aj>epXtqUV0cik2uGWc=zI8 zIkO<^zcvjfbk5J?dG)ad0AXjxNb>VM9;sQFELz7 zWJLXypbDxk8s=SCH=*)h#R{di(qP4nYDHRSH>USX&73EXat^GCU(>v~-%qM8nS2+4|L=0MmGs52>9pL9Bi9qxm!0onsf(u+=#=YivRl zjz1W}FSKbKcaREL$!Mz#!Kuz!;3E~UQ=w0Ylp-w-3|r!Hd)U`sl{bJJzYKwNzP~sdnEs3CEV!5$ z%ZlZnyX zABwwUS>Mg(${KEo-zAB7TEI(M$+^ju7fx=xC|rV3?(Xx&M`=9BE@-%~vg4*o|0?iE zcTB;S1-JDa(>upK{ks~B?MZRYc3zKuG|`@Bv0UW$dMqT_VtrGf(a0@uCGH-zzmFL& z>w;x*Fi0I!e?WSVdtpx8UEy7pT0YVtv1rcprEQ7fy2;mlYHjU$4U}OO>8o))RDDCM z{K&uKrsY1(KlPnvPQvhp54GartgzE}EHsVWx+Zr6exTnelAA^x68zaE)<)hvFh9In zI^5lNByicDh;A>tx-cAPHRhIrl&SVV>Z6L>Y>aKpI^5qt^)eLv^|yNnh7b3elg1aX z@6he2=vK?RnH>cQIyF{b=>HPPzVA?;{Z9m0NCy?8I6b<1L1eIc@rTX%>AVvDa{-~H zEbm=J#8)|zEI9b~8>B?UYi=f0{LN9wZM}GR53o7RS#Y}d_t;rU1tfZ%g&2%!DG80n zSy^crV-gHb`qP;1^c;}dhS(l=^Tzg2%KY&q3BjM&i^q-d&3cnh+?S&#ivua^joYce`X#K6c#=yf zFL!biRG5|x(Ol$tE0z*Tuizf>2M*EhFRt@A@PXm{MxpS`!Ayny#dQ2~k?W)p6q3Ns z-n>7B+aE|?4rAl+4aky5F3tMABk~Gv;GtT}*B?%QSK{gIbDq@#ieHCY5ezovr3t)H zBIgNySc5C@lADe6*g|2{)(52F7<$gDupxdW&hDp{ti`LE<*qk_5H!p}N>)uoXVNB7FyS=;iua=VCr&tV?EdNVaCo$YwV(TbJ<=jHMN34%J( zT;M9U>uyoh?5!WS&Y7yA_9jwK@a1d}%pBL;<}B1hK~w4SLmoGn4v+QNE9p190a@4x z6%KDlfDRQ zG`;bA=r3bW0@sTIn`MjE6sQoP?g{;o3=Ofu*I|BaBAueYIIQtXLY^Us>lQ@NCTNm! zhIYIIg?X_l6|wceqS7{E3qt%x{w46D8y3M)OoL$>l}M=7K*LDh0GU;#VOLXH1nwaG zFnj%#uBsvj3wY1gE+##(Wow{oYiczy(qU63^zx8$c_}gab#_E!7IA*?Q<4}x)yVe_ zT0uE#Lws$D{iC7d+Ym#NPk!Tf@{sq#1!#1;Qd3a%BgbdYWs z<08$FW=~%K&WL##v-EVEhf&^uhPys(;o3jMHU58xI*D*tct&H1l>kQJQyWJ$5F+}R z1GB!P{o{)yN31O7I6AtV&uZM`lJuWd!H%8nX4qrd$J4v8IJrPdQK7T3Hvv7Rpeh@! z9(<7~E4;{=_?d+T%BL@Nta%*E;!{$Ses+8)fOcK^P;WXBM z@~*x(4aJK4!d6oAw<>b?L!;5!<%H@76JKNsZeG&XmLkxF5on4H>eGM%yA*iKZ9PEW zdpDJ3KZSK)OTHrdV9vyxy@NB19Wqik>hT2NAg}`bMolkuFC(!QP|*0n5)*#Hyji#(mdrD+|!Y28dIvoe)oEP&EWwP%=(nVE#!BdW6gx72ReaBllr4>-uZfyG+Shv9Ml$PnoY< zcGQcNkp2Cw%QSPfp6;{mx1Xl&@qFE;OMhfsuxG-5`^EM{rD<~u$f5-#M|nxQYVV2LmgptgRiL8EDp>XiY11!hyst z&rA_I0GrAOQw`iza1_MP4}5Jaet_D{;i`z;x{+AkI_5U`pe;|he~3MT^K|;BiWr+j-adSI|JZYe=Sj-_FvLR=E(nco>JOEAU2#%CM{r z`ODnH0vqs++`$&b=>iVc6~c;rJ(}g-VO!4-ICe~%o|J%P;Xf+3Sa6GLXO3bnMKBLc znH3RSpfZJbyPAMnVt(#9&h@o>(}sa6L${o%FDnI^_Y z3&OvRJy^;hy>SKGL_`c3@c(c|G?hXx%SLXVyPrV58PGL+Lh~L?)0c1`3xl$5PwxGB ztVci)-ic;Fr<;&Viw>;cc=*RFiL z!loPn+V(d%Rr5BoH;8~7?@%}|3`_@nmGO>G7wq7Vp zn3C5}bo#=huOD#VHsJy5mXJ2mVUzKrJ$is;Fhv^9j}#S8LSi0^v~!o-xtr=vH?O?A z?`Ikxp3mlyPEXBqTo)0|?pIQ?aNLM}JgJ~ir{>CE3 zO-#>;N=bJ)?oe1k{}f-}4UQ92EfP)tzJ9FNG63q*BP`Q!kH^lzpXF1|@w5`#_+e}t zIY@?wT>(WYEWL=H5oi0VBIU9la9QQ}Q$2*o1;h-TRlTj%a$+lH=e6<2nw^fpmfYA* zg@#g11B>703xiVH#ShZ@&tZP4Jh99s;aBM={kLh!o?Buc*K-+m6nZphXZ>&TPs1sZ z4Z}pVournK&-@Fmfa+Jzky}maFCzc7SNYEVPvgf+;PxIC5aGYV1PQ%~;`yoL{PGTl zDT4NE0j}5)7L7_cC8VqQmIl&HeIQqJigA#GR$I}*A2Hus!<(4?$`_3a6(3EWf`(>q zOv!tf@W*@7aH7v{t150^pF{I=6E(0bmENrao>y03W}(EPm@O@nd?ofr|HmR}o|y z&7Z-a=(_Oxwpn%{_Az*c^enKfv+^mvb*)w_OifQSR;|}rZI=%3ml|1qqmNX1ax4^} z;w=Lf(Tr}dTfX|26(-89P+RE(Y>s%NA_>Y2Gi=XD2_E)&ve0(nFJl+S40m{U@rJ#2 zP(c{wc5pWoIwhUa!~SNJCvYw{UAQ@zvCi1TM^bm|_g;jlCBZz|xgyqU4Y2q2F)1Lj z|N14DSKTh}Gf=lLr^^6~8{;8R!I*(AWoLC)Mdg@RKj|48W1BA{!`)OSD;66gaV68z zcWP{OS3jDWG9H)lAW+-tXFz)~#e5H#z5qo@Ny03)>3emQ*QK+HE@QyRtsev0v=WPE zgEpfeCog+(};7VIKs<>q7({> z(Wi88Jtdm|Ip1JIGk)T!2Ps(3Q+uBwUT8p6Ags$v#|$qXW=4rDwt+ql@uGLgR%~)I zX*IUZA+Db@N3DU1y0BB?q{#&DVaMQCEAJE8u6#YiAdZE*h(`;Dw)KeQXf5sD#St4E znhNVN9y(yRvP)_Kwnb+Yfk!Wrm5Sq%7$EP2wC6?d2>^x!q9=8+P@Yxm`vd+$+&jj9 zvUN>$73V*JtoiW}s?(ocSU&ZZB1kW%PVFDFej%}$lL)VAweqTAh4R>R^((~an!L{T zHUGH>s+8PQZtS7#hbgl6(VcKazlu~~DLF|9A3dBRVW_FKdo%8;`k|oPol@Uu%*}?y z@lHatmk@TFW`y1up<4TITrc^1&(Ru-uGqR%1iI*F0-wXa{DBT)ypd-^9&*?5>yfs& zh$``B3z5EZf$LU#5zhX~2a&JI~+B%9-8XV2`t=P?e>IgWF_ z=ly%%zt4UD59f8R>w1pIv+CW(T1X6zuXi^~_#z86v*CcaoTdafhqIc8+H;*BKbz?F zY5?kN9#&7g-cScNaVAfdT=_DQz(CE5Lz|OK<@J?v5qc+6s6Ev3kJINXXiG+wTq$k0a=bjTdvk8DZ@#3wpZJHiGB~71lKqH-*VYT)S5Xl ziSPWfePG%c0rYD@C9i`OKL8B?7vRh?OXAeZh_D2H3X7z0%v0tl>zW-KL1xLpVCptp zX5Z1he;!Q~f*EBjwh5=Y0_#USOlv?X~pl+~ZU%JG~T@JIKm<&j1Dap@c1eC6GFE z2Hdxy!$Ggo3D9JKlXr|g+y_1*CD77|6qOI#y+ONu8LSo~{&|or?}pnt?#0?qJ9ZC= zFKo3O>>dMw72wNo3A5&d;SeC8ZJj>Gz{TA&P2B5~;XWN|*V2&xmqH_1kOc=Y+86HW z0c>7Z2ko&jT-j3#0uv$vti2D@Uz~JZQ4dtnO?Zz6?=PUXhqj~VUu{IBn%7J%X%u5vZ)To8+aN-EutQp1TOl}$D)ta?HPV5=zY5m`Fq70)n$T`ZYPc#eFyN3X@I!Wq zeaV`S_ymqLD6b>g^;tKxsZEKj6PQeMLdL}Nd;7ym<^eV?hfFAH&nPrQCaK7e%@EJWt?=!Yly8`Lev zD=hi_YHN>FUYtsni|)>m%{KcI_xVM$Ns;o3_Dngul#7b#VGOoFh9txbeBGX@lFG#} znXd6U$|ak*HD$llL^bz&z%nKL%T|vbF`6`J(??~kCQ}4su-RB&3VCJjLO3>aq^TX7 z*yPwx?Z~e|)3Bv7@|W>kT`&YiGgmvn&j@*#pkGB6{7+!(=zp(;CBjS>nNp}pUHWsF zD?hy~xaKRcVw{Qf_aD-$#VYrSBAi%e2f8H7UUbLR}9Z>+f zy6Y6qATbo`!&mI)9$tSY|A?HMO3IprK}GdSW;U&cXMxMg^R)PN>+@;An}8n&1^eQ# zV@vQdC6pe zXAbW=4X^NxdAfJ0)Wgf*)|BM_Xb=Hz2!A@(-Q8y7IN{qcxqRbJ*mY(Ua@>=_`h`eg zQ_7kGld%#muH=eOzi&I$|4q!u61Wp2tv$wiHWI3KYqd#AqUMATJ6>O^*c_BEvhZ8* zw&&!=oVvdXKmU)aUpWS;%mA0Tjx=rtc7QWGU4@{5SKVTCrmFV_)&((+0VZ0D%dy)-<%W-x$D=Pyv=3d7!10%z-;I?_lH4 zRYwTfmJ%?GuRAByN%UQIAjui)X4Z9a57K?wQ%+q#V4Dq(ORY+1qAy1DJvWOKfSV}Z z&VoD)WxWq==Ubyfoak(wzlCpL_-9F+#CIifS zF64=9XBV-%3>RB&P7t~34csb}gj`r#ha&EhgR2df$eZF1nTqpI#Tw*Cq%I?Al7M@j zj6k_j}|AoatUm27~I9B?VwL z;9@zT9MU0fETt6^hzbqgnXee%3Ig$3pnUyu=%wyA^;d@BZtTme1FQF6+$o%yt!JE3 zksCOPtMsD#oJ&d{nKRbEAwc*%^|K~Z=f4#GG zD@{26*)4x;+4Ae&rUG)RGtm&Uo6{b0^MyyqO8eaTW@zs~pzL{r4Qmu5hfaRaoEPQv zg#0_2)T!19%j6G>F@G4wx(j-L7DwAg*@ezs_U<0vvI42S1q=MT+{E`w@qFP)Ew(rZ z0HY3amFdy;z#J%B>=mOB^E619C^({bSv*tO1sUSRgjL=xN&S_Y3Omr*pz>LSRs z)Gw{cb)C8=_hBH5>D*pKzP6e5@rU1IT~TIkTo!;ppv;%q@F1#m*gryARsN>^s0qJ8 zoh4yFqWqMuqJZ%gF(_!+UW0f21XHP#VtJd1@%CtDd93VRmT4w<7}(Dab_{s98oI^9 z23w#PGsUPm#~@Ee*qQGMm_OEl$z`RVdnR8Ukt4Uaj~3%{&M-7?CvBI?m8tmMZa}RZ`SDJ;?S~&*uAvmdu_M1Lbx*V$WH^H|4xB zO-Kp3BsyJsv<5r?E{jY>9ZydXgz1Gc4NV@3SO=J-Uxyv24oN{Dv)o`AZ;I?yYVKwq z-9FPy-D`bAL^fpwMM`V`n<7j+F!xI?ha zM~YR556A1lVpv?(v5R|=-R(4UdzY87b8yPUr1WxTJM5DlBifhnt< z#mc!%%qH=yoNlLX7;VGD0J5FrtMzg| z3Joo8*Q!#Wd?38O?c5P0(Fi_cXpWf)5{VyXe!$%fV#=n@lGO?+Dz0}Wr%7SB<1O7KOxJ?&V1#**`58ib5jucUGt_6Y@PS2Nizr(*8jZ0+gUk6!%7!|+|QqDOr@~M zNAra0R@VoM%7sq_LA5(W#;D#mhpbX*2kjt2YYVMECSJa+DD;4 zUzqZZ5{8LH&L#Tvw*xlpvj(xAmNx-5icXw>y>^p1o|r{{YX9)rJXs4u!2?bxr_llL zAnP4-Z!i=EPX?yF{(xmcU)U&V36>E|>;HZCntOqx%{)aw*Ji4@K=9~%P5G7rhIkRI zm$aS4jjwo(WSyGfQ^ge4H=4@BfTO67@G`)uehaEnAAx)c#5h__w&KjwlgJs?+h~Co~xz12UT+$esY>m)66f+ zyv{No;cYz@k*vqSIKlLlzE;ZGYx?8x4=Kj!EXO8196T4s*Y>nQ@=i(I68*`KGAu zvG-`xa%f%arUxB4aACU)S9y0DH!NkKXtdO#@gX^IgXY5KN5iRlA1&k63;AC@OB0QE z1o<{x<37~gdXZ9V;j&lkxDl!4&5oF!Ztl-elzq0pSBmKECTWgmnaLcsJT6PvW7JwP zBjPr-UZUw~*s+bfbz^YKCjI7pzsVH1c4LKH(hd66;}o%z_0pA92lj;t9`IpPkW&(J z+OOqc?xWw`+KDu{qQH0Lo4MN*&>2N?A1|HVF$hg~7_%pSq@DUMH!@E|O{k%PsQI5S zM>_hyL|CEwGJDZ>`wL{fOZ9+L&YPXhtxI;P3U#&Sek@Kf2&F_7U#UZ&{Lml-R~Yz5+iC1&ok|2Xq@i!O?U z4$F8*8PxX8e9)v6MsE3*nO)$<_pMawspnP}`~hjw+K9aJRMG!Ra_s&$X&MaR8Bhs$ z8Tagb+UeUPk$S%g%ChfV{mIsaaLO=$D|^C_Q+^b(nq&rdH(_6ns`nwW~7f zkN$R3t>K9&$EnjHPIX{F_H;c#YgE4u4#@PS7Ix6Ojx2wTH-0bW+pBqf9X}GAnbSvP z@J0)>ODRS!5U;su1_Kc1YfA3(0kFSfA?hJ}n(%)}gQ)JlULg{Cb6-@?$X%(s9q$AX$BIokd z%P~F+RQ;Y_{Or1?d--d~aiew<@(%e)MxIt_#6e-Z9}G6<9kMF_xUA z&u`Z>bf0%Hbd>flB_&TJa$-&jk*dr187I9X&a$0*8fzDtb~9G{EkCWt;nGuc_%A=! zjC=4H`EOjNJVR?@*HB1)g=1!Q8UP#J8#DKdhdrXj<=C!!n>}5^QI4J^=?FJHD5;s5V)Y@3-NY?i1$y8jg40p9+e$KqXw6@&51s39Z_?< znO9RaNzifgyBwjv8au8^rXmvMW&i)1+W%0-a#7zo1%WDpw-~52a(02T_dgFoA`w^X z^HAqHUEb7(RG>h_r)^2JI&(kH%TRKtja{Z27N5CVDW9`Yjqg6sIV_iusi4%#`Gz~@ z=41AfH!VFr3qDCF`dB8i=C6855p7927+NURKv`8Ot z4zt7qAJhhW+Vvx)6y5B%SPRTC%Q@NAqC>y+6u z50uk${Q-i(qHv+JLb({mth=h`BJBT=W&FOi!?Lf%BpRv#OebF-`(C0O0anM02vB%_ z*SfBE2ZNsI%qwS`1cA22zBZj?vs^gq=gcf5pDa35n+Ve|_~wVe7YB7!zibn)=3ijY zNFq%QJ~`t2l-?g)hCzy)n`W5{p-GlmAjFA;QimjMxm;;z0VXH`RT-XPdmabAUCd3C z>@gw?7y%6HnH1O@pD{jeek0;Sln03AS)_q<-F{*`byR?fgm~*l%V{EdeiSdrVwb+f9<@Q0!NuPDPMHH;sPu7eig%$ZgoMJN$+y zIDy0No;~gTL5z{vtwA2+HWnbocU=Y!xqLw%P~xBlb`IRx774JJl2Xu9H}1^ zf`24M1}7SaACE|dxv&ZdMGxsS-?@KBF-V=Tq<;nOPZY7=_4zgVjMNj(qNRDcV3EC4 zDc;OuQqQOV?WC^R@LC?v-;QDAG9h-UBQ#@P$4Kmb!_&j`9AXvi_e=`ZZ_1_%nMzR| zyO8ZL_k^M_H;G@EQy572bOudB3eMRa#*pw%6UUT_e+^w8t^bn#KNG2|HR%8x5HIog zr$Bb~4fQDiJmQMy(o|)XYcuAK$h2R}Hki}s7nM*d_J=mAdS#pH8GAh$S z=*-Xn4lqB-(u@}56@Z8Fv*JdfyWBow>}=Nntkwe*85Jfbm9O;X2~JS$SRY~pj1cz& z+B_n@D7}-X7XM_Xf&W^tfP?{v$kL5^f8Do%$%{p_Ll^q3|7nh9{iNSRa{-nOr}Xi> zCXdO)H7T6IxzP9(0aqg2=!;P+8<@IDUq{ugHH z+LzwV9ytR0d}-OZNee;};~p1ciNlas*;JRQ@Y8A2#b?KWt0{WaHeGXJN6pF?DY)*M z%FBmyfhX^|oqthpZ%p*}z9tEyQp8xce|A@fDxC-W0qlT;Sq8dhRkvc`1{zhffS#^-^`aA`(Ljggc+^uV)-7> zuR9oT!4_BaxvduZcC+-rDeTT%px~9eb->!Zg^xlTWj5B*6te;qvQEh5!zUAYnP3Y& z>$5a7F}fa&IYZLs1prf-6&H%TV#`AM*_kF}RZ|rZyfVz4a%O%+|1J?mu*!e?C%TmPnDI49)wA{3GfP>no$4NAzfD)4ezR~aIm9wU zo69SAyz=49?&6=g9LGE^b#PSH9o4PW?H=&Gtu$3_7fa1f5q=*LWd`~htB zzu&6dtk7S@DS1pP?o3bc?p_gNiOerOfOvXj-WWYfM%y5kiJS|5O$X82O(Q2#b8W1! zX}=Rj^kB)>+1tPS+BZr9evZH%kX36MbzM>fbLT=B|21;YR{r;>V%{{IH+am>Y0znq z>|D*t*lDxCUdCB-`BVopS^#VeVe~rHmS+-jso)B2yD%RQ*)Y;E^fP>BHONsGGdX-= zp8v!IXJ5Iu85C4z;#P9~YZLavSP2i&RkD?lp~1!cMC>+}4|V`%aE?$Mz@kf9Nu@Lmi=7q>ii(}l{pU?5IzyBKTUt+OgjK} z1>XF}uK{Qn3m#}01%tFin41q%>1gO0NyK6``8XGaDe)FvU$)>I_B8a3QLQ=Y>DT5( zEP;ddU%UT+e9U{Lla#Vp%oz$Ux!Jh?j0k+7bxglcN|qhy?$evU9MxC_baZd3Po6`O z{<-$0T?sRvFV5FyA^XTyD4feEs$G`}0+EJSup;6T7Qfx7E0$*?CY~n3H!wqKa}v%c zP<8ccCiZKroa2crWds*+33v8e>M=%pk$K{`PrM}s9w*} z@s((D8og2RlfJPN&8BvY-99^j_1QfDCW95Q1s&{{ki;~Rgs}&Jy%%dkXOBmt^)4K| znLeLY^Xy0<6CJ{br+v!~C@_+kU59p86LpwHK-Bhz*ldqUGGs|3ZIj&@f}958riL&i zHC=xV#_AiyFY$9qc^AShdK1W$^N%+KZ?re#N!=!9} z21$nDTtS4T)PA@YpCau-?0)Ny?ZwEZy~FAmdBm&m4wXIw8>RCjmC7f8?3 zeJE*6MHWNpN>xccsm!k$u^t-jj}*1~1b8r$_QU%jX*;(=>Wm(`u!j3YqRJXll<#P5 z3Yn_!j?}8XMfX=1#vx5T&<@E;9<#>>rCZ2O1)Vf>Ir@Zj^Hk~}RS|D$-Tw7_iQU=%P18Q)gcza>;>Sf36wU=4t|XlRn^0s<>2k2waj}zx&rdw# zglq!75QRb4EY95tx4Rl5;qg;WtQoY*T+pT2*(W}-Qx*HpT3sD~Sc!L&jM4n0D$KK> zzE;d}$-Fs;OC?61N!dM{f0W~eJc0hh2VEz6Hdg)GAxAc~FqnJdG4#Bl7idMr$B)?w zKxvTycE7dRM;A+MC}`y(_T*0-^a1X=#}1&7+Wwv_Pi%L(Zbzeb-zAuw((hP3fv&uC zW6c=lF8m$1DuCV`Yz{tudEQ7?=fWQF{J9&=yz@&GDss)|GCtZfT{#(|&`w!QookSQ zxj}hvt>PZKzafd4P0B6t$l43KOOyHYWop0ztI+^SOj^z!;Hxm*dC3V#0#LgocHfz( z`x0I`;TRst1)s@jkVTK%s^*Q{MRG&1XU6vypPDZcm2-w!vPUWjNEt(C2Q6oCAcwu~gD1D(zhBtq%nj zJLuewp#je5=K;ZE!V?>xB4KtOr`>XZl=NZ4hg#!QZoPUrQ)LJ!^M+60+2!xhuc9`0SCgbYFh(wZ*=Y6Yam%Co0`nswWTqba&bnr+c*=u=9xSMqas6L*YFy=P8+T5M$gGjT@cN^7b1iLm19A}DB z_;4aU2Ok1!jxu+J)$}{_m~CF@H)d>P7MI&a<&UXtitn&p4SZK%02{H{2w|6QtW|F~ zz)0{fFhJtXnjY~^2fH8K=k|xIdW&2Q$dy!iJ{`_=$m35M=uYw(OlphBdos#30z+;Z z`gL7KWz@@$pluZhmtH9P+v8Raq_K;mvo>~pdKyQz+u{0nT>U=!PWi1*wzfTUP|8b6 z75Ta!lBgg`(I4@fBO)EqzUVxHG%MGuCZXUHCpKS-G(rBA&-QXUmZ~vYOu;(-<)R_I z|7$f_GjgAtR&o>m$&fR#LQf^{5Sv>-A+TLem7XxZS6n)Sm3OmIL5Qmc#^J-w!V4Fj z=vhuxOaI(8^9lhiYdpzFyy5-rC94Mz0Q~JeKTO^8%sDngZs<9neLlgs^A@FxLxUcRu1QtTIHc!i-MtvW#?% z-UVoi(S=c8BQzEQn)Jf~jy@w^W4G@~BS}m8^ zjPCh;F<<3Eq+g-_RV=MFb_WHfFw&I`)AT#h(2nGJGNsWa?^qu*xZ*sR^h{v5)?S6^ zy))ozqRVsbqn%TGepS80LNtq4I{=ntjGIihu^A%pWyT?xbn05%)kooC6qY|whvH+8SdEHs0iP~zYB4D z@@U)D6+W}Bhe8t0DMD9wBFV2tQzyyAHd+Og)YL0w{Un zK1(h~J`PpN?=0eX!r$8RTx1)#NO~Z6_}r#`W_06iKXQ^|Z%bL6*b}lTZ@rR@^`opV zGpL@FdCQ-L8+wm22)#$OF!U@17;ympk8vA%Mbyl9=VCm-u4Bkojk`LoBO$47v9ze(yxP2{{L zny|ptZA8Q4#c=1*b0o1sC5rfl@WOL5^~{7SM0EB?C#E0#fi-PJFAj+i#-wXjlm#8R zilcC{)+(!nE?9OPx}>o(iL}nMDeS*O#p^8*43DO&Lg7HY5)R%tIexamc(81}q zz_hPv6n1=XdmR!kq>9YY|B8DO?lS$&EqCmu zng!?0Fe>%mb|dTmF;=lu##M(!k##i_?IN`b}k0Es50mxhR7EFW^0MPwF) ze6Rl-t5Ti5& z%5`2q&3zpJFN67qQC}QN68@qml!JS@F{qC!OQh3SSC8W9lwJ?;u|t_MkaG!LK> zmG?_eK81f`aRl&eY}A7<`S86(=YXP^7YUo$eSq)VA8A3L{_$S2hb+pMj>6JCblO#@ zSK273QzZUAqj4p%G4m8d-);ovzfJa;SeZdp*sS46KiAn*0Z&Qwyf02bYa4X6!g6(Rk}9giT{ zK(`VB5ZzDkto5fddJo+s1Ij=~MI+T;2#fOud>v(m8<^+eLflo8@zf;G{4BwDtNy^N zk{*SO&)yECz->UknT~qr=iIdb2#GlolXi_H78t${I1-`T>zbSR7(Lfvhfp(`QygpT zw;l_KVZDhgsnKGb{=crDDop!aD6a32$chQNVT>iL!#-(F6?lw&2#ZqAH;d_quR8d=-{Xrh5Xa4G^qAjIOqytt{ z@S#aUb%fvPLGOX2>&w5Mz14%&l9Z}xXEddx&q#S;yeSavbVkwiBb4q4T_EhSh&B=U z|5NSA%>3^ccFWKYATFsaVMjz1#)L%N*P=hUCb51?`kM}Yv1C{pe;Mkh%-5f(En)Pm zmv!p(;CJ=w{OT7kM*Bs)M@!cvc0Pxmjlj7X-X~2T2U0v6?HSnks~=ofym6+OqH}CQ zEdYNNa4#mK&NnjO?YgDM8GiVxoV~gUKMb2mu8O;rS1zQelVlig7me`l!1&VGFtc)| zrBAQj|NidU`ORhJVq9s<=dI#I64XjIf6BJd$#c_R#9#JxT2@}wmxn4F(e*dnr6kGq zWdZ=`Ue_oul}NZsIi9oyXLVczYoe|K_*SK4@bz(ffPO4Tu%HBd6Gv^cU$)Wm_X>~K zx{TNV+xN!EL?bML*vVnCsn^JTiUXEYK{VgocL4!5^E*^MKk9HjP!ChFt0ouoBQ3zY2iNfmQNRcCL5YTVL)Yue8^d8_(l-XZXe{*wZU^rM;?LuuY$x_ed+Ar7#f zQxtWk1{|9VEDEAWdATiqFQtly?UmSvSquNF(IG(1R$Pmy$moZl?LbTYra|_gnlFq4 z4$Pxe000ubdYR<_G_*tPlk&A}HvoS5nX1je0BJ1$%3lwK-z4JVQW($Ys+T&vVtLJs zvLgYnuh5S(GDOA*1_2~kJXGE2lfUhN8@kLq-ney0PkT(+2c()P2GI!I9^k_Jp*LTe z3`Ag=M)TL>gzJM@oW&hbV(OvFm-2@h4tVCd=x=0D6${<;y&Sc1tCGp~1Bb_HrQ|HB zQNB}`YuSr=BCG>ZlNQbiPfWnaqYAJt4=4Zkl@^PCkp<1K{A0QhUnXxk8cZUD7(y$- z3*orDoVT0BOib|!cGa-wGhJHKrSnCW-j{YEl=n!PV2z%_yLMe!CO&*-!ncaNt}(DO z&r4Ali&eB1H25DqPh_~l5I+*iPREw)veZu(F(^_@8j8&~&b+l)B9jBF9A-{uWa^1+ z?$ldM%$Jo;^dzH2O>AzcbQQWR@aSt2-ep>A$bCVZ~r}2$VkVgAO*;WNa4qn_SI9{_l&AY zN&(s5Vedboz9!!PLNRQA;>+;m_Oht;$DHbLrvNbi_&&==B_@8Cm-93Y9P|n<<5$~v zJk9*wkynKrh%xD=%~X2sA|h>Dhf{xMw`}>@ZwXfCpn12-GC$X!9a=%CluRl|&6HjK zEe(D2Ka17>}C0YCuudC2NGR#k|5O}XD&aM{s_ z6tUb&F>>O&0}wEv0kQG+Ja(Q}zM9WaCj+S93ZT?wr_7zsHs*^-7O{ian9~ZCwy`*g{luIx4kmK|q-ZdaRV=JvL= zX?t3BJP82BWE9F1hl=YS-aG3aw3Ln0b2 zr3P1dp%$dM-)-M)en^kePu48v2QE`Zm|9V;zmWRN_L=J|Q=WHc0ac6h0oCc{f#Iv**AP{ca|UumgTBMHt{3$;2@T25YB(sMNs5`=S-zF~DN6&E~uOr&WQ!;*747ko%gnR0U001ah zTM&)I0}iKE)r~#rrh|Bo{C>Qy^>LR*n@v&XH>nWMyr<2qLbeLazDpyo(bWha(BYxO zU9={f!HH8`SyK%mnw>K|wCv+VwN?%3kQjROW0P``w061zy)olwAF{NXd-p-ZrX&T7 z4kX>@F8^0kM=JfdSbzBXD#)usFPy&~)b_RYRa+3F(KJoj>B>uI_pU|Jh%XZDI`pm+ zU=zxyLX#4w?V^>4W5l}%fe5%hqHIpXP~y*t^fS}AzZRWAj+_j}1#RE$L(x8K=}8l? zqurb){k?uOZ!2UhfkIZGST{`Vg{Imk8~4+A?GPg8QkW-|grjoeeZNWAxn1bHXxKpA zCm2V}IR;d5ZVl3(|Es^M!12>ycC?BGcBA z7%)y*4x0q zj-hm6FCV#lntQop`JZ~T9<{l0ybOkzD{?MGPQ@)px(5wB8e8PDjG2pDlYf!fu{fW)G8Ez?b_Q)U5 zm$DKlb1nM*R_ZiCuOoPSvUsf6sT=aQDLGOyn5KkHmvUw%GO|={fPGq)yc2FFNjInxWTW6yzleHyru;RBfeB#Ze>J~hv*YWn*B0UN zgLj^$8!{-D?@tX=r!)$t9`I_7sheCV#4bC8FIT```R(sGL704@ppe6EpZ`N}&qv{Ggw8*1|O(o|P z$*H&hg80k8e$yuI4h;ZLPzG-zP^=^bAM#LfPmc-9VJ`C0<0uqCqMd&bFpAaX^Ss&r zx`a(?qY&mI;BpUg)u@M5|KeKK*wYCwGb-9GF=;#Sl^k_{93yT1_btnGPC$_&W?F)K zorK$8I=vIbaL)DPyf}&yIrAa_>siX(Y*x2Z)!kz@%fM2nGq2lr=GSXK!>k#z=iKYd z24Fp3gXnbh#In^8SKH!5PG(v##&O=%a1Exj__kW*%M#Ej~o8@40JhPqc8=ZX)+^MEV7&c`rc3|XK4~!pw2z;x*50KJ= zWMeptS7bc9PS%-H8$N1Jv}!x)SG$}|T$zKvSRxH}@eIhC2hh+b>jc@&a)>k%lKIEG zBm!)K&#|KX7TwwSPnHYV44jn1AW{|}?c>199?Y8v`HL>|5F}@X( zFZs=zk7|-3!)keAsibkyl7O1p#3wVd(Z^zmoM)D!u$5TU2bqUTc(AcA&-*Fx=&TZL zs|l%DPZqXq^5^yUi<~u&KA!7IqF)h_$V$@wURu;YVoxPz_js~(epyPsyQ-`I*RT9w zg{PR;z-$1$NDVV}BjHow%DP?#%GH96qu^l`?N4nX;XJ6&>4#gMWafI!l z?u`~yeS!-tpC%wp=M25OkX2=9+mU5$*dGcD@;_eJnEHRc;|vKOfD<3@CpG9-i2{DF zHE5{X2v-eNFeDktyxcQbHefB+CI!=Rx^TWAy;gU$Nud4Q79&HYHcd+&$JFdgp*+Ha zqv4pP_Pa9-j1q{YDxpgTudtjXQ%R{O8K-Shw`2h#!nM0GU-i%g085C|yH z=`GtO(oVGB>+*&|X{(2jbWtk?1J@XUc3QZ;-=>*=2f`S4z<%}4W|ArQ*{+?}*q!^acZZ88ZfQ{_5q>D1F z7ZslX7`6|)dpv5v@6*%5F#vGHXrVmtm)Z+kKpk}aiacGNl7N+s!%FUl8GJA(_!=S{ zKncVFbiVr=Gs!bC1Owk3h&#=`16qTid22)=eG1TJ#c;O6_D7e3&gHOfQ&@w}(K!Lm z7irBRQb*UBeF){yR5el{_2d*NrDkXrG5d0<2{8ZRhW&|1!6TYodf_YCb4ms%`O6rPV1oAMUp=lGYKt!6>t+&!?AO(~0cpp$=T$IxyaO(%EcU z6I#TVd{lT^l#v%%$#nwxE9`%{*Btv zfiO7cTFRA*^n?)+`-KJ}?&OJBq}Bb+-<1#2)2^5|NosFehR18x)_^-IDwNG7{gJnl zo35`q@kAi4z1uh&pB-I>+SVVQyc$iYhGgjID@@CHSTx}?PCm8$2&t^8l%+Ubx(-2> zv)vJ$lAm1p`_Mb-#tB2diH&Z_ZlbGQ&Pb}t?zM%Z@c57~YS&cEza=e=QN!C8Wayk- zx%ub2C@b~Nw3sV&^=KTp)EN0lfkOo{CP-`zrO>#Qq}8rSuQ ztXE5!t_IY$^T=!zyzMyttV*XMHGy3Oe5p6!c{7$wk1-V6yWJcpCF6WwCzuAoqT=2y zS(*+QX8+aMFF#Nu|w+IMu< z><6A`3lgyBVtq#^l`JBp0G1!Q=@!d-{ODM1a-&4U~Q= zKpj%7C^G;V_;Ue29cVPK23x#-p4Eni@htZ@A2mkYZZi3dSLuG%cTB*BmcF9(yrhCl zID~bpd=rRDQVIYaMB9fIIZ}a$Xv?nB9vb$=Se77$pnZJH!L>66;UU<*-l+Ttw6xyQ zFK0AGafQ~o$B&!S3I3XpF(aoCsq$i)^hm*B^%A4{)76`A)!s#;`HtJoNxDn)0=>*J zyHck$D|43Cwz@}!6FcH8mNM+L5 zK2$y6b7@ONs}ik8L&!7QP7hAsuOLw0F97if!&Z}kgxjkrl{4>;_^9_q<;6!+1=36R zXCvi~?4op~$xGX-3Lc>KZZ68EkVS1$6x@yfcJVV_N#1~9&J~<6XN!&(H}>0zVW{a^(K}7lQm{9y;gr!o;dTw;@Bdh z1OeDek;s*BZM6!G58(j@wmsu~FqGpK}Xt>GhfbD+)Af(Wc{CQ@mY|G zYL}Ulp7&%zDWW+i?baVC9e@__{`irP7!0{R4ydWEr+c9KMthZtH~P}7Y5t1&-AcUQUQPo^ zqTE$Cj|aMs*N-h}*o@e`XVU$?E=ynDn**6C-D`-54IyrntA(zfGOT;p!TGNV?Kzhd zV~JDAkq55$FWw@))>K z8zqUv1fqPgCC`<#z8HuFL-#87)@UqmiJ>0ml>w)b=Kkgs=d7mZa4G;0 zv+ufZ#9fr?5TWc|gs6H7p#G-_2_B6w#+3B!yiqw9uGwJtovz?Hot+}nWKFM7+D|p( zqns#|*Y+>%eov8R!F_j`z!X!TuDj83naQ!Zp}&*ShKe3Q8dH`$r>owA1zAP*$28y} ztpJZfb?*hKT?ByH9Y@8a`54xYzE2OmyRH`ipbB?c&uIXmR!aq`A(WKf=l2ec=xkZ; zoOh3{dx-YoFHLMMoRxF@C8*nv%7GN#^!NyKA6nymcRQbHWaX`Aa&c%>7tpi?(?1SA zLUnp*=((-L=+UfcVK1o%(`a&BVx{JB?mM+-y>W zi6zcc4gVWRgjFmNvr`z)pUi)ANX3LFNQat3NN(i&i$P#SExj`>X4cC%+$B*4$^vjttk&SP^p_Z{pn;B(R>_YE=Z_^y+f z0!o6_0KF`d4_Ys@2+;WAQJOT>QS=>P;nLc~*Nq)$mM58#AKJgyo{tJ;z2{dI84_ydp70b@ac`d_lxLN ziGbQ}L5!jAw3+uXV%kI&7xHu1y5u})zWoXJLYw_`q=%H8FeWaE6V}0r zXUr>aHn((_;d63Atexo~UD!edJ|9K~Q~fr!)67XW4DR<% z$gjD&@yC90BX#wBH)V9)W~G@m*#6n#acU?bu7wrH*+%0E9bN}YrmsVL-HX&( zlYAD;)NGJborrq@CZz)W4xg4i5x!i8+fIVsMs`jDVJ08iBhtf4M4vi-XD(L(z6HGL zvf2iGAAv&WDJ=f|C+Fw8xKmP~6u1UP3~EkQZaOtTpyna|RCqMyjD@nNXdyF}qCC*S zDD^Ad^@hkm@YLu)+J~Fr`i2|5OmI0L+gwRKNO}zz9o4*==J-MZQ|0J+=|vK%>UwpV z_l4rq?MXTv@FsuV!Uva+^8~&8_5?WuyO%k>h=#VUgq=D=`HqhKk3Q(qJbyC~ZYhvg z^MT-xZA1HZW$3R+7w8Fa z+d$FbJ3p|Mlp6)*85^X&?wn5EGa4}LE}J#6ay6<9ibES~KVMOxT;Cjb#4qdnl7_!T zAMP-wgnySHI0y1}J+LrF zKC_5rrz2$GzpWy3;%>3r9b$`CG#1U<8F@18m$NKRSkNcnpYrEJYPzEp5BLs|x&92a z@wa){%@%Jf@L6kmB3HvCx4hnv_zIf z*v|o)Pauedvt%pOh-6}+&oos&>}FZjS&iR(U2a{jlzA;CGiABst2`(u?f+5rmT^tM zZU5+Cq_ilgv~-s`nh^?!lt@X7h)9f((G5}(N=pk!Dcubc(n?4(Y9KIbY`_NF&hGQv z|NnE&n|=0XFZTQV;<~=qHzc?j?|{vi8STv6sT_>TY4_CwI<$ik$YK?RMQfGRfJE?p z8d&6XFt3hs+>Xea6~^?K*cdZxeL!k z(6MFL5p0}o&WmD>35v5Nr1StNDlE_KkEZKmRmDcMII9Qt1a-KE6KyLSXH${Bo9-9F zzIHSXrxe;L5DX1EU``;45+Gig*Gn=M<`ktk#IhcH_bq08ZzfO`rq4R=4Mu)^?v(ct zh}qWS@I9MLski=q`t3Wkt&**mt>L`*9c#ZV#Jm>hMZQe~I}3)j_-^dvT;x|Hm0vr# zO~{T;h%0_LU62m>Nf(%@pTE-KHzw|&Pr6OYFPXsL5sX-fJ>C#jIXzJYx5#h}^lFI! z(0{&o?--M1{RVLN@X;=e90wn-(NJ2cMe#EF;RoV^ai(ijH)@&5jS3_mNlI92qz!-k zDX;e%6IVI4SS`z#f3Marrxwh0!Evg0CoCkIWE6OGI8M1V69|b0a0}A)gH6Ei`lFme zm!7e&N(8B8i&|q(0j_YJAS6Gb*XoT!>ZpW6stwlmdn-CF?DEoTk!j$ghhuYKE&)~Q z89gpANd;K&DI(1fbRJ|cl=s(BWi1P!XjD{tGPM?@mYz}D|5#PlmK0hSkN-DUH#!bq;ft$)o)N4;nz~CFWidtl{H+y&C1fwGX546mG%ZA<)7zExKoI z_tW!j)u}e9Dbq$kBg>Rz(wKZK3-l&eOXR;$%nnFPVN`AI4bMg?uiN>irZY^x|HEZ! z0c`bh_giSZR-WM^ljbooZ>XH#e}^ z4!5HMzbooV+_dd6+{r>Gw$X>2m1aIs@D4h=|5D|WMrf79`y5e1`L^sGh?Xoi6d-#- zoJi!3L-(M+ZEY~eb~>B8EV4EVj{Q?slLIkP4KAwKS>1i=GZ)a;2dOdEK1t67g;jeK z?I;&YYk=vb`O436ipiV_if)BT&kK-66BXkXkN{_Kw39nhmr>YiA3Fu|rn*V_v^})7 zA~3+7cvMT3h5`^3u{oIaTG}Yf|MXVPq(gx2H5vKPvk46<*=lc0XeY%-QV_`yxN(Na zRa@hjw{G$EZTgA%VjFe^#cUBVjOpGZ{9~exbdRrvl$19sS*xk`%he;9H7e@-PW0a{ zn)J*XcYT)iGvd71KHTex(23?mf&M+>`2BVn^}UN3;PQgs1Bvj4ZXRoG#-v(+OH43h zPyh1c2?jM;wZ78*0|Qge3!Lj6?POqkLjvI_CU9I9))RN3*>o(oXcz*w&YDCzuVgEd zv?0P;IYsH$4T4)Y*C{S{GP^D(O%!@V9n9r|89h{c39sH=$D|kR2kOk3RqX5M+8^zw zS_$4=zI`?{?4bL+;@*M|n8y@@75{VpjKxlo*2_=QEJl+Rqqh_{s zgOGF1c=~Tia6La_cu9nN1Q#CHfL;49ERW5H_T_=|B)W>;zB(m#i2or^}@ z1Z(VwQF%-Ddl?mV)adM4^<>tfZ*N$h5{cUOLr(%$wC3YA+Amoh@Q^ziYvK-06qNwz zRP%q>$ayv&>HChlptZV;H?I@Sw?bh9J+kUb#ZqAxEr#BE1IY%|S z6L_j1<$vPF`-p*j2Fwz!DBVsz;?vZ;%yP(ki%K@O?$`OKg$X;^VR7I?`F-H;HvQ$}4$|1<14S_Oy!d#?Mn@X`Xl%v=$fs&P`X07ZP= z3`G?CDt*H6#W0S5)HUz5B_p$U|8q4&R|MXJPjrwVC2cwHb3z9iz0fnqH)$LtAcrkm5cAqQfh%{*)zD?0mJdx## z67(;uXHJsR%ntAFwRgDdk%#HK1i`W>Cw8IfIb4YQAYYRGL`gW(Pc}RbOD766HJHU0 zoH)!SUpgI^fPH@s)hHObmo?r`N$IX~pN(w9QQn;=t3u{>PKkAohwmr_V9YX-O%$Tq z!d!3`xGxOw!(zvb$w1h7vnTF117zt5CtA`U6!zR{V@c#{EShDIGkrtx_D37+ye;(O8a$pq?%&q0<^ zpR~5I%E!Q1-L`a3OQB$Lr%we{X&3A`QqVy$99Vgf)$ z%LhkIcLoXLVF2d|#U6EwUq;l_2$qta2jO{v zJ>9}NUc!Xw$y4iF;RDm^v!~bkEL(3WQklFFVlo67?YlruL*pa;)6|2{mqzsP27tai zk>adMyC=yqqgyh*c~dehf)jYNB(JIgrGa~ZnVJ7OOlh=ls(?&Y5u-a5S+*D2C=qt0 zWL`i+9Zdy%bPDiyp6fen=>;PNIs9+@&PeoP?@_1P(5S?oGnC8 zh^|o=La!#t7b_KDyc!f$7u9JU2OhM& zdd!JINy+-e?S@A4Pj=i#zFP^He-hAR<~&xc0AO#pn)8~GOn=OkZiYF7yw2D4FW=Ej z-X!f^+z8wKe@%A?FA>+a7zSQ#PaI=WShoa+<8M3?jwAEYJ-Oc#^$gLrOfJc_W95lm z`+XIfD%qc`kKDNxDb)=``Wqy&!gVZ=IBDOU8cezqEaggsVe?{(4~}6Xk28l z_7@(X&&Tp4jLM1|=@xQ(=TiTj?auwLrYa{%?3Ea{zP$8hg@xNk0>Wltw z?8#oV$fE+ z=h2V$;j>z;Q;y~$PTCe;?;KhARjwmc^L@xd#yWArh`NPWaY6$x~To z)qbifo9FKDP*@JI5STRHl1mp+LN4^#fZJgI-UP-WfB6lo4onWj!aJUt6mSsH&;NXq zs*hgRTe*04=FwAS(Op1B{Dh)*7q_E6PUmNCZQ=wu0L0Cuw)yj+suWPR4ftHTcf#tY zif`EQW)vIvb#z_ei%xH>eMCfg@3d?w^dxjyICA)1$dZ6mZ|@&b1jtS<F6Wgw9c=GXr?rRVFujlBxZVRm2_xxMVxxsC*EibNJ&HhdDyu49BvIOU@UHJK8hOb zS=o5s?%xI#Ers0#q)khRkzx|s;8#v2mTVG0#zu0rxEyRy!+!K_Ua*wJgEEO(Koh{2 zq4kc8-Cof0m1=isjtaJ@rOT~6>}{pOx6!KOom67Pyr)M6cC2fT5M&S&_6J=Eu4mQZ;PEOg*4w1UA;`UzAc%MsQaZP5>fhdhO=y!bJ214a0p9uhE$SZ9 zN#E?rAw1wAbVT&T+WgHpT}~>R$N8*SQglqK5=Z6PnCMlh;rKAQ!uWg%9Gsw$@7etj z^R00F$F$bYt3qXx4~?x?1-xXxl-xq*O#91$5mZFVn$`*~hfmoagHDw87335&x0V%F z@!8=@g>9Q;{VqQi$!SlM^t>$K1|W`ml8Dt=G%5@0a=PlRorYl7k-Wp5#a1!KeTey#Ug z%f*IrmDrLp`p=*pRNqg-C8GeA0|2l?!$B}#3>%o=JQp2O!)drg5l6{=KNl(O&~a}L z-Fz*Om*4zgwy1vpqI_4&YW4f^zcR{Cd0zqCKEJ6K$e*Rz3^mEP@~)2`@c4rm#%F!~ zzIAVF1qeg-n~cF(VQ(m2oxtv(X&2qUR7S zTSSpDGYo9|T;PZdsQ+z1weN;coc9;-7p8YXMg0L}xhcBVBWJs#ho_Ye$A-UX6z4Z- zTV5$H7aOeFsY{Bek=W}X28-wt^)SzJ*a$n;Wgl8qy@+!Ez}K$8zee5SWYHKd>Qg8D zp?9scIEOzkJD;{8Wbm3pE+Zvs0}3v@*{tCmuyV^Z*di+1T`4o-L4BOCC_)f-fTqktfO(K*36QhS@sDu z{X=;%C=elC1lc`s_;DB5ghxo_X*gcj&9Zv4C=E^S{G4bFEl!QECTzEg-;TD{JV#sAf8jC7+wIVENYTfIvXv#< z?A;Ka<7qggI>C*PKDd;q?hv$%Nz}@(*Yy%`%elV!#c)t>4g${!v0PkrN+kVV%W8m~ zQ!CN``V@o~*TX4#qFP(Yv$Ax8(JH@=xn2~I@I@o@HMHeF)k58FL^i_-wP=+qW>|Br zwP9Eq52nzppgdAXw(b~!y9pE}>Du|oe^CXe5@{Y}QzPND^Q(Zms~UPQJH#*of|~mc z!+$pPuDe!CzUw8-Nfix#Ru*^`Ts}==RUjE^uu5!S26Nn(uBJy)9VAQy!b(?u1mvcYN0BGL2tb7ylZLO1bPphzO%$v> zep{?j)4j?#regHMC5HfAlM6bv0N)+YIj~apeM2^1HVbWEb({{TtFx(MOCB`xn-rWL z0^^aX%)rgg4y1;VT1|+QFFdunJ=ud>M0K|I8k_%45nq9L^S6eYdAn%&ioVQU+P*J( zUyw++9P89h?2r*IYYeuumi#;HQ{eI{W`UU{i>4jspMBoJ>>017meImf{&jAnUsTw)IE0}Ta{YsFFmY$a#5f;jd)WOpqI8P}EFtN&6z2)VWV1HWzC zT^gPysxC;%xzS4g-S%tA?hTC%MbA`UXWn<$yf99m`$vri`x&Z;ZS|!*%P46w@-CbI z%Gay@*MbGaZ}A&I+pw^o(1TEFC@g;2JCPRsmvCy?^N>ZC6}^?BYb78b5fG1in~ z^OMAuUey3Lx@cP!AyDMg` znTihnLQUx6)G3_pIo{0|%}XNQ{9P)( zAM$k2{j!TV{%P3r<1^BZ`93wYr=hhD@99B;cishZ=4`3}DQr2KcU5^f`MQRIBjdUL z=>>{(CsuN0WWiFTAg>w_ABvyWz4GMxaR1rwCmevWtODoBsb~A;nOe#X8oI%XfZLxT zx$lkXou8Q3isNjnJDm`co;x?ULPv1#79NV~o-eFSlat>m)bY8=10~`+OUvXPm#McW zmnj;0dvR;J0D^rMpf`@36cALj5Gc<1v9$gygOo^*YYe>98g*5n7+<;z3l9xbC}b+s zC%~HB*9_vm? zO+{q3WS(5z#bupCaZkB%u+hqpl>zXy<{9!?Es3_1V2HoWyr>o;OZnY6{ndG_v86E0 zZ<~;9Rl)u=k}=AgtSl<%b=A=x%Fp!S5mia8!ZlDpnE@L6;rw|^id4}+y{bp zVqlobF3A^5(!hrUIzFykh3iMQo^4M_&A(h*=1wN)yRW^C_t_&c+ru-y| zOcyT&P>vv7_eNR&XFU1>y>=K4yutOvT&i{2N4;>F=|-o=vRj~mX3-7_jB zf42KKnrwOyy9rp(HF**t4tpwy`2dRtzRkB@)7Mrq4fcu>RzogqJh9mQ%v{5JM{|*WcKGv5O~dvsKV^pfSAbjAb%NQCmz% zoNxD=8ecE8_=n3uzm3#9c3=rbjZS`-$il=0R+HTb zyX(zra!VQhZ4zHUAUIGm%Pketc_Tu8=L1s)o zk0hs{8&s5lPG7Sx(p4?i-|0AiG`^a24>-4`s!gDl&Tl;(>KcaOj_mQo-0my)?uSQx zf`uo+B%jYDe^3EYB(SGu0>R(+V~M^pB#1psDJimxr?4ho%W_CLT6VfrN|Ha7=?R>F`OEwqeRmXbY6`j;c30LyNxU0yn|8e(Di z(bi!;=q)?j?%Bc=n_BQ>nnXkG8Ay0T)>h7%JJ^gtxPzHxTtmp%?E+8i%hQaN`pL>O zST@Le7dstUl?+#|_e6NZunadWJw-xyoKLe1;F9AAl0(W$o4xRp(S5Sm2`W4Yux~^i zgBCvPoY7cpqhIf-8Cq^*7W@EEC?osO^Ntlp*Uz@4agEILddx78X@<}H?(rNfm)1V3 zg&FbHwtjttU&Ve1bb6|^5=}i;0O`{%GhZay`6?kt_3_)vp4(S^ACcdV=1jCXqljc^ zTNzk1D!W>1`o@UHu`k}=EjDG?t>g##C(I9?{-^A@YTmX|MslW*&;t2>86&?xLuLd`zBc-mEJF=6&tfeTO7MaoC#)^nzNLOf$1l0u z|1w2)>T6E>1dJHF7rb{EUpB7?v3$)`!0{Q||D3&Fs0O=CLG@k=Fk+jm8?dw|lyGMA zB&`!tY%`f6g`{}!l|j4yM|Z0*??X4SplbmGL@Tq@`=|1W{2^PC?#r=U9WOh;YG07l z*E*pF%7Ut0w8*?iX(2-Pnc7*_m>U%x`5-SeH*4Ko>{ zh*Vb*9PpysZ!6JkA&%kl_+?h^eX5I?q`EfR@_T2K2eJ3ek5OSRI{AJV9Wjerhzk=x z@5Kf|gQKgCd-*l@ydD~XI@)9R`81=*M|Fr5B8gbxU*|{~Na)pVb%5FC33G$O!IAj_ z@lY(vJ2Fb)q`uRYgI(R+@-v}eqKQ#qcFGopS&)KzQeSCH^Kp9kT6Ms>g4%m*7%GaN z&rsDo@0Wo-=`R`r$;BW;RyPrC?eB|F6W>n1U4~1a;WOFYJ%4_by1hknks^z ziilB_e$dw4ayR;~pkqfo4;3*gd#nICEC$hTP4T3gonrsovCaf?xKnpV;Q4V0&&PaL zWX#I(k6N_iclY^jop!}MxTEC%JCkZjX}|io{$k?RBXtYs?JLNnF)P@0qp9J+cAQin zHJ!6}Cabse<$R^PQYAYH+5Pvo>3>Vm+1p55@mnAmphu+S!{!>x*9nh&z z%=P~KBH!mrjg?>*1X|Gfj7qBP1hItl$N&I$Ez8BW>i?bQ3DZdPA8I2k#r z{SC*v(Y}x4Y@J@MeVqHa^RW=_vm#I5PtaOx=y214fI`-1FTsM*I6`It0W$_I75~)! zv@7T`u-l0kX)@{i!3Ki}Fq4b}C73<1Jx;}1-tT}JGDzxQV0YYYH+CN*>?>Lf%F7-a z8)y-zNc8bvN5_?EF!Tc2T35auzjN2v=}$FaxXHqSM=#%Ld2-Bl>m*cK2?s9eF1xs- z;Uy;jIZaN-`!nE{h~B)zlj5)WF8gz$q+ z+hrGrvl~{&{S%IRf;1@#3REe3Wi%OUx1iqfem+D`yLZCqVi*Nxr}KIRvqG_=hJo(yyJ ziqJze{b&iNm8@?1Z^5?(znK|yTcD?M zPqq{|-em{>r0Vo)%4qlgtlqQpB$huI+U?E6X(vd1d4PBwo_8q?>}^QsnsO65`{e1+ zd6WGYuc-j+1ty+Dt^M={Eh`rbXal&O&ld8Z>4S(`1tj)Z;7k(IuWM!=2C~CX9#pfP zBYP8XXoGy?mMbXLvy$ESe=W--o8E(Nj45)%uDyNtx+b`f!(7l3^xhZ4j}BiS$oqKhN?RE*=C{?=+&9$mfKqp=# zr}{O8w=T#gNTRDGS{r`u1ch)`stDL%9%|udUI9QY*|{Zlk}CFT%6$5m6NAslbBwh= zwQEK!8)3;%Nq4qqceMUcF+N}o^O*Wrk2F}%Vm77|SyLdDU}iI&u>g{X!5IUCpLT3t zEslwW5dBStP836chlVVXzrMz|VNX^9ZQ5-;;}mf&-{_^p{xml#0%{XmU4YJ#gZ5?)km4gJcg2$YS5q~0 zq`jY#R`Yx5&_f2vE|X6CugvhwL{dsMe(gX9wznnYHYm~Is<=1YKVTacgkcO#c8QA` zYt=&K?X*1(obtR;^{mV0&1Wva#-m3C?`6T&ISfBZKKz8j+g-YWgas?+t5TQPof(R& zc_udib`s!}oHyi3Z`m&Jc4v5Os(5fs2B0m8*}L8wHA6+Q&Qjg*AR|Z8@S)#?bF9>H z3EsE|#Ggu;DXofsPikMx<*+9KESd=Sy8A$HopaLJ<=I#o!WUZ#3%KQIMFnrm9e0rQ zI!#vNae0KnZpGPC@Fu3!!S#C1?*Gpe(D!K0_+y2E)@67&Y#7 z+pmOl?(3+gc6S_N?qcIJZRh#rEx12kdvy3Ax7U(QI00Y74yb5Ox#mDq<}?c&j~+EB z+T?eQaR-05LW<-{LzLnZ@F1f2V_ba5bEg-dIB^Xi6U_DWp=VU}biCfRDROwpIDiQ>=#r%9J0yJ6IeH}QtjR|Xd&8P%2^CRMpG^W z{d2jgq^c!k3dVMykqwXXad`f#*|*K3VtX~OvsRMm_GlvszDgLSB@&KOSuvS4hWmkR z!n#6^x3!k;N3aLLH&~tqi!*_6&+|VQp!9B~Tk9MBHv;JJe^W~I^enE;*B8Sx29-wd zHyX3JvN#A8+ENngg$@!_X^avy!v-aq4?M$oU{_s0FwsaC*)jm&pm}FEglU0r&VTm{ zlLV-~Nzn0E8x>3*QT*Mxo83kJsytJgO!JUNS5xxH)*l0}D>vcVpP+xrJ^Z}uLp_yg zPn0BybKtd^E|QD!2`7MZ8k3om=Y_lr0EaaEYd$e^T8Oa9i;oOF%CcQ2`wbNO%3inY zOL0$q(=ZgdlNP~zr_CYM@=jxw%JUf6k$E+~9%0e_!{jUsb?J4HjcLf7Bjk8{*?pWC z_?cH15zyI>l7R*@Fz-9=umV+3Jnksvf-ZO8xd!MT!ExqmlKlV`r_ULUf!VtXR!SEkv?0)g*C2PwGsPU;_UzueoaE842LK2qPLUaq1$h$)g+81*ujaiW1;cFa5Ji^W zbOWkl%$&JBr$a@d*vnJVmAV=7WVg+uh=>G7)iq$be5xI{2)A;7gq7B;y!Q`(KPXL3 zOmT8;SnZb^2vb|Fjbt-+z@i4xu7pl27Al_-rjeW=Y@td3qCrZnxw(DTMQjRQ;MfGLHio= z?OgT?d%D=4&8=oH|HDFThyGt-KkAzRjWQ~n*!`^7F0*RtCKQXwh<_BXH?;NpDt76# z38CJm{I@+DM(%`Q5ETOS173s~_XGU^v@e2A^Nv>nu?uw@6tkXM?xU-$jlxqmNzC7D zswOxkjEFrl=F;IMz3V)f>~US8gWpsdpAW1_}t6?U9CVlTt9baLFqA;bRMr-V2p~D!|mK&Porm5xOS8I$y zYzgcNT(<2k91K5Wbnd+-2DbutJ`$ZfNiv`xhH1aA@(WSvdXKCf?UtSZZ~)ZhqIey%`q>VU@H5IQ>7B?X>+m%lUR zzK|}zAE5%d6(yN3=Xv*EPePsm;1||ZtS#pZZkDtAzE=&AQ}_D#>i!g^Gzlr=>OzJj zDG83!{LpB5Dw9o0^@xl_A0Ra*+W>iWjTpAv+Z|9N+d^q*KYv3SUsiQQwL;B@(l~YS z#AH}~?{*x|Vi-4ohB_hGI)?niaP%^=T6WwMwelaq#JIh+t`=*r^ou+KjJs)8Tm89i zBAL4SugPaJI_z9hDw{wp?w>$7s3!yczNwV%&bI}kE4wa=fsG|sfz}6=l_m!sH6~T>j{>u#*B4A>^y=O93r0G)46Hg#XPA@JZ}8zmx06TIP9$213X89LI+L8LT}Dk<8g;bW zd;i?;YCPXHuhX(Dxn08`!F~}5yXbVXkm_*{Kt7(=BV<6QL` zW*_LybapyBsm(mlJBt?pmA5&MCuZjG+iM2w-AAN&gSkx|SFQeJOyBhKYRJm5JG2KCtxfC_&JrQt4bs|p=%bS3 zABhyp#CIX*A8aLhKUVk}mlFb=Q+W+Lv#(lPJpECUtaSL#Z#l_&^w#hWiWgDSeEiP4 z^qcHA!>iDt1wx16-|CQOmd0;}{Q3LUGt#Bq+zgtGm5Rj983j?rAbnIr^Kzz2xqon& z%*RKyT{|>Mb!TT9W0!(tCeuAbUBdm)Pg{wLFKCyL(WP{OGDR$Vv zP|Ob*5IG83$#f9$>q$14U$h1|wxO39zNPXiz=xuB@}*5TMP@K{RM40lb!ZA!*Te>Je-C@V~fbj^1hnDZkU{wP(Fa>k*CxN zu9ri_@7b9`U_ry-XBxNxXM??j-DkeR7!2HZ6%v8AO7#*?i$`QKQBR3Dg4 zI&Z45m84HjtIPxENgRjujrU?(3UG!!goj8G5C%ThH06`Yk&^G`YH$~;p%ge<@dK-4 zvB?w|(Oj9zy9!F|lrHYIWV`8U5O zp9wlEpU)GV_w@_5eIMSDb&b=*K2;T^-0ULpDtFVHc`z}S3}qqiE1GS>_2Uz_ zSAyE&?vZPQ?A`f>gWVff0Lh?FZEE}<+NJsJ#-j*Pa*VMqTisDgo;sa8ommpR{kOEj z1ppBYC2PR}(o2NuH z8ZL{G*{K2@SUOh1m{Z93obhPP*>E6!cbRog0GFzwd0XG`!ma4L!jXq|_s5=vrpE(c z?`{rDC)I_%Th{wOglB;Ie5Utwfd2t@UT1NU+V|)GQb}f7FC)xsyjVuwW1$k z0@@yVUK3vqEz5Y@iSD{&R~CMkh(+h?GinB6hj#U83q-rGmFN=Nz&$4Y5hhvQXN+cV zcj$C^Kp9>Uv-#j;C$f9#2Ii4kE+B?tcu;1OV9MP;waL-JD&mngzWKL>%e^PKX>P$$ zQZS;hi|ggN=c_wC{*hskdEVZU1t*DW3d~SBA680sho{Jp}TR4#yUM4tzq9#9BZ2V zEc+rG|Fc{d<^^bdvs?q4b+lcgH@>$gc(vK7y@>n=LY<+*(lQo}K>=ro^tARy{9!RB(GuhX}@NP?kMcAi1NcL7PT{a!l9??Nq2=aJ6-|H{cWXtVJIY)H}|y| z_f`MfG1{%FZ){g~2~@_GwWUj@e+bSH?Uy(cw_icyOdU_s9OA2(9PXdjJ!Y%AbjYpy zsS>e#X|KI^sP#iJxTy*OXzN5uF!h^y5-=}5IkBj+k z`7JbWk^np~v0o_AR!Coy-+L;)w;hICu_vB4sn+C{;bcU(z1``Go?6ovqooC=>-N=% zs`1=nBWIru34FJr0}Om~+OU4bluO2bBbTbG*v`W1E%UM7-p{t9YrgkSq6A+k)|6bJ zR6k{D^xk?LVq2Q|_l|FVKx*G}o4s5!c|zV8+5R;JRg|}8Y?I`xS{HV&JkLC+LvUVHJ|nh#`({S=1HNm}6pskb$)%*vDNVRhvq`o2{;_iczI1DF&E* z<^mTE*Ik9Ic9m9Ck8@C3_IWvtri*@VfyGb@Zov1d)HnmZB;kYM(7r19WRO><(W6)$ zbsS_M@ULu9gYCEAUJlcFt)6NK{2Ehy%*n+Cokj8-N;D3)yhiBpyx>gN`5L~WpXF?tw0G-L4D_5HsP*t8Aa(T1W-<-efz;zU9z7W5dDYaF+Kij6D z-5ko92=JD0Yxd^ddGi*dck2I;EG|PN%%;)ITTe#NY+@-xp=Qcc?t3 z9WDI_SRy3Ys)WX#^yvlE9)2_KXq-!|%vr;}&c(+s06?3t^}nWK`!Uxpp4&Nj>RT~L|LO_1zdt26eD$4!eYJ*Cl7+xAeUq-&b7 z*Xi)bi;hT@>R{5n$~>RY(ehojL45Y_lptpYX_0NKPX^^s1%W00>hs5wf0Q2TqH>Jf zbO^6Sc(-O3=#!**JT!@}*aL~f)8LKW3# z(J6=!*HiO;u0_Jr?#?{rlIwL4vhiojF)!(@Xs46#*n7=}U_rX%FE=ZmsiH3HaXDjN z?*V)R7Tm7#G*nA-ccp0doDPzb_n@(hx#XJ1M(ehZ(fmJJsJ{n}Ijn?!?p^Gg+^20t z+%n%U7=*}Ed}Qb`YY4s~ExQy8pUoN?=!cV{O@C(_KREv{XYM2XEv>D;5KkjcNb||O?)%KtFHnYo%VYw8S6WPppeHoR(!m>&kh+H-l}`tWwaKJJ*cDE zeEtEAW$8DEB0Cn7yOyeZ-hlQRuo1x~X%z>SC7pFOB17BeH4a9wEGl`12(Mv<=Kaw- zcgYh==6wxTd|?XnzQ4K^hHh#NFy%T7>6Jr@YC#4UNwd;9j~HJ~*C5J=O)Z+-(B_s? zr+0_#qYC3a#c@RrEc;x;toMZyKhEE4){52l5Wl-4#~E>s(>T*TuJ ziX-i4^T%0Hp=&}XFODfQgH0A#JN4ETjut*%}taYp7;n0eSPp z=0$X>!d-9M+8^1x;}q{@cL1kEG4PWv4wt4e8;Vq0yvCKUCUdO>PA%jXCC>yRm@rF z_rE_Gdc%_)SZkmNXQn!^&~i2GmXT{o+af&Yl+xxJalno3PI2KDZk5T8v6@I*QY(BqE0L0V#3jsBxwWvc9yJ-qTsAsP!OYw&i% z0<4dSsk44Xu>)Cvwp<+37_y3WkBDDwo|~%HIAIJn)GM zpI^-fc%#_IT(R|D^IO9&1;7t4YeW|K{z`fa@L&4grih_;GTMzr$b2GQh z@4+NIa2}k0TknnIj$Wo7!U%O-mIZ&$P1SCnGSF4aTAngU&KJEr`kSVC^^F(%+v`Wp zAlE$=C{bhg+$?c7w)`vMj+H9;LH;DyMWDw0gN|-n!^oB!AxP}Oe2WrF57+7$oCB^^ zJ&@Eq>G*oRe`npUdbwYY{Ez8L;2=hMx#c!g{@y0Ll=~*T_6gIQ<{f9x-K;Z@gD;Ak zojfufcn{5+*?FP1f!Mtk(ML~mr)wLihkavo?7ZbtlOS-MGq00#_0(mXaoOLpeLc2; zxRmzZYSkVOdmKw|k4?t@tc|~M0pa1n3jZ-` z^t?-ZXLaa#!|*gjLfS?d5$5MS6Vog^_qrOLfk>Nwt{TgBSjE>RJ@=k@nnVQG~aDDJ@$Y4|2rl`9g>_boGp94M_;NM8P^L#M0|Hj6* zA$}##-8{3wIp_FJ6FVLD+%AiCYIo4u00n5vLKjuRGSUq3sly)$MxWW@*i`j)qIYr1AgxK$~&f}6Lp#RD`_3ZLexep|tlpEjdf-F`ik=hGv zL&$q9Msp8yqOs6$={{jY4&ac6&rQC|ytHAA-8fB1ptppaq!+zupZ`Fcd5!F(n!hy- z)$W0p@I3mNe6?Ej?qncFPQuu!`fSuAnDZcA1>N>Wr-mrh%DS(o46~_bp56{fL5dGD z4Ouf-9WR`1&0G7n(fR*WYf~dGVgbx=e#5qNFvFH&)9QH4`DE*~!}KvqLe zc}IWAJyXD)9joH@dfA*(d--HR7B`C;!Y5)3s zb0sZ$MVkV&=00m@>weFLbJ>%27W}J)Z_VH9p?c5Br+F1cC-1~%)>u0WK{<=cpNZ$R zpepy5iwbLij*$sENdEdW+t=3jKnLIa{SGROGgZ^fAxWir1onPE+uXI!!MR%K8p&acEQov8HQoSE(kc1#5=E-V&C3nbH?g}l#_7i z4~~>z@eRJI?51v=lna#f1G9#U9FsATP>q5Q{Rs>q#H@#7#y)G?7kdF&8wRu67U?7E zXx^b@^2;ZHJ8pKlXQ{=aJ6_RibRTh0ugjZOoW|bKpg-YaaM<0*SA>+$K3*O;+Pn}6 zm%}1V2J>9n&D@V?-e^Pdl6zbQn1+2>7`OLXjQ*_N*4e}Na({k{_w&=Mu&YOrU-H?N zBoU0YfGp|wGgd2HvjXi>f7^eF;1v{Phbm@63EW8tL%bAE%uc%Y6kwtJtiFJ9-19k5 zA1DWJY7UYjdS>WS#B{6W3{hd&;d0-cUGI>Y5P_d{-`}2*m927Z>+ZT?ua07yAMsq7%)mQR{fQ4eTm%j)%TE>1Kl;|fKl5+z zNXEJFQ_&Mk^-2x1p$DBqbzvpQ-rs^)7SiEdUC=~-@t*EpDLKOWTiuVQa2bY0YHkhu?p}>XXVM;^b~L2> z_IkEQKKaI4OrMIS4tYdt<-%e~Ql#XRs*~~hZ~*2()c;zhNNvpr+Is18F+d@>5Xn~) ze+eyiTNK#QXk!%6y&$4vUu6HX8g^8nagj6L$Ou+o6ALde9m7D+5FBSOHoBvZqyj`B$6`>%V+qTsD zd5e#Zrzbs1I@;OSY-EetURT*tuT7>WO9~lKtTczPRd?=*fQ>iA{88BFFdFjVk2u97 zpDh0-^fd}MoMdqVMB7U?w70De0CE*zZGn=Rce6V4QT+79=G5a0f@+lV=FPTm>I%$G z!yJblRXg5PG@_mft&`x4molAW+&cfA$4xh=MOrR;PA8a?(I{AmxTK)4q!rB8R4$>={6NiB-uRY%p5#Qo)kU@93p*FF~2rnuO`~; zE06i(;EgiJLPcpA9pBQ9R;}}3Q73!DzS$Xm93?vB1+n_l?{I3mY`Z^>H<(fZrk7D| ze0kEzsZ+fNIw@h#Rj>P0isOPx_Nm>kSj$6~T4^`h`IfC+1{jjfkZom;&2!Gz$$hqp zT(@$XC}s7Oaua&;CMdxc9lYG7<4=zI9$H_XP$idu@gkq^yizsrcHncnIxoO49Xo!f zN!T?j6|Gat4`4rjSCQNz;_fm-=`m@okvs9dD#s7=S6|{q(&oEGFz2M>uYb(vxqw>H zD<|!z+qx*=vw&~L+wHT@7heXq+?e9DeRZ}=WH^ZZnU>?~%ghw31hGo?*)PNHmy+=i z%zayK@zCm;0HOuMw?Cl1>bpP8$ibW)iE^p8sLCpIGCv$wuO2TJs{%_W{U~(6pMf!Q z*p|*!(R*QZL6_OlJk;7rJ|v>Hi`VM+h5>It!%SpEZ{*cdHy04>U2VyvefB#s{~hrp z7oJ-T{FC0j168FU>lVUC6ywONsava~FByfMU^c@)OOn0)Q;oGW$C(K6Grgu!A1A$O z>3+YwOKo|r>(y4eDeq+EwljL&O}cg8+6&!}5QZgje+83zM2-#*cYU?1bRVBH8Fn}| zrLaTj7~nBx^8vO%r94Ait(L*4lG!fqosurS9LZ=YC~VGiv^kt5m* zOy1b9xZZ0-!*3bNCi;lAMIQSSKs6TI6mpbu{4uM*-g$~h!YR899a|9pHO*t{=#$EgxjE- z8vcc|xq)^?ZsE_cCo9)P+_3sWO{Ci6hzvAG)hQ_`AZl&slZw9%0tuLC)&C%H65Md5 zyNY9dSc0w{YBd(+(O4{DWr`HNzbx|k8d8wJ>;Ci8 zBb>VND)d(n7yrnJvg+gS9@%Y;{FQNa=yM=rCiK#Kt2LM(W~x@_Rtj4RJ*LL<-KPpR z5t8a;$A>RW83DPkB&Z03USfC_{&`o((n>aw` zs9;p5*c}czYQRCTosn%jk9MV?HsQ5Zj)Yr_m@5#FK(B?mGICVj$o=l7-Gc?fuN<4+ z7yi^ViN3VArMV;JmsmB_DxMrV@$~r(c_H{PXMSgg5)%t1o*JRp_>)ljWqMId{gl0S z(p9B}o}F0CW?MvgaAu8O=)SQ>A1%m z{7+>)+;Wn0=+LJ#B|6Z({0t~bqkb3Z-XpP+ZmxEEqCEH&vgz2}6f{!Es_%%ZgCr2c zKRd5{(CuPM5@{B6?bb%(tNfz&hdvcX?d}biH4J7~u=u?`?(Nz9q*SzPR}?z6zSRi< zb5h7J)!Nl_&g&G(RNU-Mm|6XdQ?gY(WJ@_^99kCISaPt*ILg-z(O`yqrw_1No`VrK zB+-sUhin&lnyKwikc+S`XlD716eX7p_$u~0n`Co^lqGv|JSlk4G)hf9uEkpczdYqb$hz-zKAz2n%%ye)71?U@!LOxG7GmV?}zdwDOf-(wSmAU8+X zjda%tj@R{>(}?rK5|v;rT?M(EV%V;e@Xca>QnLU37)jEdOTR zrWAQ?Gld{5XG=2uK0CQ&xSBCLKCEMo8B)6w#ythn-6*)ozEd?(<@Kz$m!}$RUTK=E z-krqa#7!=TeSsBT;=g>%1$y6Kh)*Q`ygaesP|ksQow ziX>d)I88~ZXX!qGNQruSw`yD*@z37v&w3UR%ZMgx4r1138B6r?76zdrYRT~gv6^6K z{#0FJApC+h%in7`zIXV~_v-Au_h_FxBI@noJ2&OLlf%;wJ3m?F4D)m6yOPb30P?8( zjFV+X$le1W@V@mg-W&zmc)S0-`{Nswy=P06*Wy{$QTApFZ6vFc@TH5-Y!Gq&6 zp;sr9eW^DBAGX1mgdDJ*q=;dC7`%SGB!4HQVCP3;+ws9$>_LWoM6E?*@t;zRlX|12 zeR>-DUJ$?9W3+pIN^K_^elNs2YIcdy41?N!_G7$9v2^(K6U$g#%~FlrU>juiU+V;X z%4PUB(`%xUQ{lGD5;KWDpJw^L!65;2=*rWoh`)~D+L^s@MD;}~;^2<>LU99pTJ77Z z-NCrPGiO)8(mf1a)eohRX2skYwdPJ-2(WNy;e6fe^8wcH()jML;afr>tshCXVj?dk z6_lDMUWUi>t)7$;N-qC+F)myI&zsQxb_F=)mxfmY&d0rNdu`pyMjn{FTH9U_sgJxH zceG;fKW=ah@#-dRD62%VXI2ko#)-m`jzd`&LM8YwI*qTE{+u{0uo_#@N*aFg)fexO ze?tWUxtGr_;h;_&m#(;>mXJ6pNFCuzy$Etkv=XQhQH4A(itJZ^D#>xJ^JO~M_~2Lq zVI0M34*40jefY`E{w#!P)J(XcEwmsqa{lx%cH*Y-Di48EM+ahRdb-{Gw@Ea>SEB&$ zFf=gF70DQOMgG9++nw=z2Hfmd3}kMy|6_BXM~ZL24%Zw(l3lGV{_omlDRamBExOlD z<@2HQ>kUy?#_;dVB3ZKE#|L*Du%nIO9>*4rWR8RK!J&2Lq=@6JD!hz2A~=z7uaxN4 zDn}221IGZB_Dn!7>Ui+Eh&<(3Yl;_av3Y;dfrk?I0FsHAV zoKGn01DAsQb4GkqgXmY{m&bCc#kzMh(7Lrb=T0z@q3WtT@7sQIQPx$ob0Syg1HHxm zxM|?@(FfSG-myDH&|Ht?+TQRW^~~B^ttfk%)8aJB;}HM0p?oe1QBCjvZct?s>6#-r zYq{r@5(+u7s?1EB?6WLr5qIVq9ketzjoSuFz^=Ycl2sll%PT4?I%%?+D1N}~hgEqm zTP!(r0q=OC++&|CTg1ISEa>y@#t{x23EJR-{42)YhyT&-6VWBRLFd?jZv&>i7K{Tk z^+ei{4#3F9&RD)%R7Pf_Yoc785{NXt5535EA1OUFcqz!skFj|sB7)ZQnJJm?QI1R8{unyZZ^@ zIdyMBZ?v|cUm5zD^5)5Pf4$>rwl=;0h}>_Z7r*~Bf_n)w_XL$6CVkW@c22gDC_}~gwk;H`~R-8}j7h4qU__EH?rLETv`qg^b1QVpYDAKIRRIt*5c}X3j!?f(8EMNuIo;Nw@w~0WknBbvAFG3NMJINW#j$ zOlutl?5yE?_|u;1_hwqbgx}*0L0Fe>POXbol}TiK6r08#{pb4O#I-5(XV`mKC+pvY(0#d1@8^on*6i6`xYpABf{*GM+3y^>rn6p{~+l4gjd;09jj@Ph2@}N|vo=JBnSPkd|oP;mR5@@eGe!~L2CK|keL=?Z? zq0;G}ZsS@5n&hLi9P8D2SIKsvJL?nDXr>>ILil?;0_Tc(deaS5{M2a`IO!3_NdrP) z76%j-@gt)P6P8kcVa#`Zn_?&Y7WsA=P|*$-7{1>D=x<))+Lt9re)f5?g|vPFhd`&Q zuBgQ)#K59==Sr?NYuTK9^3=k1g?DbogZeF58B|}}cK3grJ1{%#s+RMg!Ti473S>?f z$4)&}vFIIsCPMr^reYe|H5neT`Az*IF@QVOB{?S!8@#9ijM>R0I)x;dX8Ojq_{3@C z?0>^$oa{?!%|8tDjKHgh=x}|+)C3m06$GcV4u>$upUkCbRfH-+$z)e2nzy*@) zp6UC!oq(R$21-jON_~T%}dyfXS;N-vxiS zUp!S|f4E9sc1VfqxW5qs(nK?GC`&c|DF^lh{H=R;=A(-rcP8JVOg=N-jq?7nz?T#h zt5qV=OdC=qjrQd;KKti-Q9{~uWm&{}GY2f=W+7}Tb_{%IT}VjVuDw;4tXE`Z>;>s; zxX)G<(_phvFIVviUV%A%fjG{4FW4uM!#*Z3oWti=6`;k4CMDmbSU53`qosS2bsZ@g z!V=mZdu59Q&$pdfn!D55c-Q!BP$w2n50y0&f+1r+j(Zw|?GxBSiX+#$;Xfcfe8M!_ zB-BKgwptFC;Mh`)BLP@1nA_IV2H;sQYWG}t@Z*Wz<5ucsyJ*1En@42reg5MzVEf^h zm3TOnRG}M=3u-Nc2uZJjemXHIpFK^{n*;o<_;vuv0W!tD4{+N$rUMH_KJr0UGY%R> zVM<@0+B2S-=W`x$8K*{F0y|;Fz+MAnaas-(?cQfk_i^>NC0nB(b?abVZM9YN4R%GTZrMKITh590sJ2l% zvi8wS;8(&4SkC3azOueR90yRkk<)jC=8IM5Jpy-^&)=W5#-*yK5Y7loIdVSW%G9eZ z17CS`t#JBrS%pp*qbkRlZa$Z7g2h+0714(V*#-ee!RK0;sTjV)_V)&8u9$s*@Vvbfr$BY%Ac==>!y4PISi_Zu26cIlh2DHoVydrk{^0%7TBhfK=l97s4Q(2rFJ3L z7i(@ie>ek?n-uIJnT4xf6eI0(u9mNi^PW{VB}96a&^jIeY0e%BHZ&z~gSIaJ9q&qGy`9_FFFfkE{$d;WYSzz{+k_6e)VGY5RUfGq++krLvVQ_R!G(YCNS& z03+p3(`u4<#Gr!y7yw8wFZ?L|)n4w+ok5ByQG0K~%!U}6a5ov&J7S5*FG-kKX8{m} znnl?;l^7u1iIJO*J1vR7;C(f=N1?Z;hG*}`>zcX8unml<+4e|g)_myJ&F^rWE2Sv5 zSt{>M(VTd{<1!j(B8@g>fY9I=y4Rmwh}S&%+ac2u)o4s{*apwS_C39y13AV!e!Ej~ z83*|G)048DzY#UhgY_mTm^z@)O?YH!A4GUO;z`TJLjX&Xf7huY0`&NB(KC{#8L|DS zzXLkd5bP4W`(*7LW>6*YV&%lWu(5oHB+nW7S@3)C)z8SZmb{2DZ{qx=m0HXpayQ~p z3+jMnr+L-+3n_F`7iWZH1C1O?o{F>wn`#`EX-{BDMvdd6cAkg1nPbrBX+NCIhNg(u zQt|9~mAU7&gH?-LTU4(I+$n-%vG@*dW;MP%>Rs-tNK1AQX3xK)Pou+D?5%QwE?<|k zGFp;wbGmEX`rATtJX5tOQG_l=sY@CFiMF6x+Z!Fpj;AyYN7aEX3PtiNA3ce^iikI@ z0j0E!U*t%UnecQpBv)xZ9K1qKKGsNzv8MX;b1kT_&Tlczt2;czvoVu!puP+ZRv-l2kaYt2xp@&=O zJXSL~Pwiw@Z`R@9*W31Db+awVRQW;N`3tct@hAJV8R@8aN@E6-Wzh+&bW|PmI(3FN zX#_6jSw}68pPh4JLdEDX$DGF8gAmp9MF3-(#6-(Xfh zKR#+nbyh||RcY6JPCAi;+P*FLYdG|t=Z={-OjS^d@?7lxNxL(=LiU-*ZEeqslS^tp zYovvmpVd7Rnw)>;Z!geo0Kf3TWo7M}8!zEq1smq{d^Y?>k(B@!&U31??B5VX-TJSf z2BX7k*188RghjeoJ}As;VFL_ia*7jLT!c|?_l&L?gnQx=1C8i_#d%5Bzj8D)`o~r< zUR&q)FJI(ze^;1TH}FpCZsoI#fUkw3851z}GePq!cxn_qbD`RjAe z;@wU`GUJ#=>*2PD6+oXFqcKsBTC8)+$GHIlro64x{ILRATr~c^$E8W>(+rEHO5+)MHV;W#ttxZgByL5JmKW}#UxGqm@=zw!&*UII z<8#SO(!}XOb9-}v3rJTKqTVgkMj9i%f6kYm%6QQg+~*f$IRg}g5Ft7qc>h{D{hz} zR=m8nnLvm9=hl$t*t7yiofw#sg*3UpG_*_K14M7&n}~UR)Vzi@6x57J!5ib+X_ z%uzoHSAkDfU`X+2&Bg$*2zs#JGX5Gye~zcujljmz+Xo$Yn7M|WSI$#s?%v)!`uwfU z{VNaO?6s}2ZW(^wfwHnM}H8YvGKi;&5Wg}+cZ%j412BMl&Zxh2)$eZ6A zd2{ly&DS#9$hw_Vx6uWG4uyq(YDGiUml~|EenJ@WN%5+5YEOXKPW7GaNl(@LU9Ol}9SHwtQE9pS z|0-nKD1yQhATcA{w89TAGUQI2Nf_hXl{y)SCERhlck2?cN!cX&V0zuSf8o*`qXI)T z+Zpi0PYGycT=3cE*w?Sa7m%+xF_3k&J&6acKDM7>UT%}6*r?!>qx+t3aCwgTf{2~` zO$%MVk$eJ;jTmzi<8{jjn|vnimL$UOy;7^6L&N#PPN2C5-?NlLY^ZXCYP4Yv`4!bp z9f(fRfxW99C5CcvYyg(t*cMlp_Ze-Avp{Aw)-JBvw54AuElwXZdNPvn zG(AA<*)(L2V=bmo&!I$AW3C+W+e|o=PkK$~x^IvA2P=!jt}D@>t>OpCc3Wq|!I!!m z+0UK=@q5L6Yc(nLms)PkmB&I(MMQ)YlL8-L77t#YEgHz$**>5Y-#r-OERk2cu;Z~N zMc!oj4!nq_1N>&3LSxHaetJKVvl`cA%@NeO{Pn8~E)@6NX6t3}Q?EF+PPjp9wac>? zd%og0wv}C^=0m)kvx&jbSQC7nvX+cPJ*vf%#K=G0D*RDClS+Kbqz5g7V@FrYqtzI8}iPhnXWL&XF;D_>`FL!hteJ;Q?Jfm4o6Ri5WKersq(Zl#QO+H8$_9+%S) zkA_e;Ky^Z_5>op;F*5g}PfHb!Ed?xbrLs;#mGzcpS(>k|!0j5wKSww;ivaU~@6X_9ZoWWLT_!72w0jOekq(@avBfQdXee@sGS ztpKH-ock1w+YUdvSwVVVEUM#qy}UlMg?DSv^?0>TZaW7-)#-KoP2>fZI^l7_QV9?! zvLRcMGbcZZ23AXioL(KOgd%boPY%lKU9bFL!WVM6U(ph=^y`azgE^*u*oSZ3Y`dS6 zoZ@z_s#$|0gn^8m_x%j!aj@S^dp6ss!Ga3BJPoJ*-fUg5$YeNm%u;9S?$F=*c~>V+ zKQ_v$6?Y>}t16%5xK%~USBE}v!3kv;9l2@1!l9uF^Ke8hKmF?M9H7RN_b?IMi}u#1 zJ^~nm1Lswbo8u^))_gdY12jIw1J&uLKY{(Js_`z_Mzq~@t=85gj;l_#un`kN0RBH9K{>4>C+3232`p#4c(EEE+%L$`6C(p*0OZzVd;LJtd`PJ(+ z)6ca2uS)LxS0xM`iA4YfvCAWTptY`-Eq~<`8>XKZ$eEmNSGou=I&X{3ipgd-aJbjD z68b?95zQ9{Y>X9yoG#z5cyQ}YJQGLyP9kEO(P<1Vj5y`V*9t&QhO@~F_Z=K)_gZg2<{o6`$UV$?_LJrdEz;`&uru` znq*v)>zBuI1eA+9mUJ*exXzN=>vVQ9&!?qpN|mhJ%+EE|UArxQJ(=y1d0`~<;tk-s zhP`dxQH|oOg-nT&oe3&-Dxf)Xy@;!*sv@sFC&tJVqmzVqmZJj;n;B83`>nY~zb|zX zaX0e#q=S=j-e{^R>QWxfLlG{!>k`vtGH&I7H*(16&4XEot${Eqk}B5UURP?6Fw@;*!r_7P zJNE6KxO2L}G6p!L|H?$lj@D>EJJO9#b4ts_b+{b(6Z7zHt`MwNyVCK5ajsN%W9(|| zk(5#8Y2%0f+FRNjfwLjI1HR4*n|pRbcKTw+QH(}!fP!}bFilWvOCp2`1!f&gBeupT)_YQ%X>>?I!uOhbkv!PQL ze0(QJJpFBoqOx(WL%f^Kv9)T!aJ!G`?F7n zJugJN<2~a#%j;2eWF1TgkLVb#~8l_}>x*JA4szyLCWjtr3_5SY~Z+UPTUI}qB zn5O~V8-G{>1w#Ta^J~nod&g*jB8vqsc4sI)`s(MAU$yF-f_5$Q2g7XRxc>eEUJ`te zG%BOh*-$=J%=A8&%ZTjqxEZfPyx%G~rqiQxy*tUU)>we-W%%nP@9ki5#GSaams^@oEPA^^JcGW@=8D;^4n9=+R8PB{h9e-;es~V9DiwyG6=>w4JNo^kZZGgwQ#!(Zn12KL#L1S<^?x zjPZfOt?n1Of#m@Kiz4*M$qw6Jy?4eQ>n>2!_rREuE z$Hj2}k%~z_r;{p{`A?}P*5vU`d0_3JL;Pn@&Z>0Z>!(-@W6VmhL1x?S@MD1K<}3eW z*`qxY&P~THMhg-At1*jE+LFp&@f(%O2{bOD7^#XxzY$z91W77PxONoi>HwTgPyw~O8g`BDmb``dUb6ofb%|fP=HOaFW>cc` zzSKH@sxh*AZ}Pstn7#&$vD|zOAEyBpYCKn}c1{F=gxJ;7mF`m=tAZzoBA* za%6%EDQaPUZKE((ip{SPR!_4cYaZgDkA--h{3>$<3`3Gb?gjY`U!CysJ!ZMdnodBf z@Y9d&=40R_zKWfC(EqHasN(-q{&z*^&W|O2PVonRYcxY&XN}*_=%Bh%CrK~KQAacQ z@|E(4yVK6!hnhNBV#7Q~kzqdZm*%CR)a1;abYH9&>47)1$hV=8_40V37sc5fq7{6> zG=X9A1)~6yQCd^0JiDQ+_B$bcVJmgxWyC@D8AT=Zi^rAb3Pbkau22B5OaLI}fCJ+K zBUkAz)@WmDMd2aN3nF%WZ1DmWmuq!F-^Y{nZq8feFoqAkOyCa70nn=uq%f0vt{mx7 zy@5GJ1EJHmuobrjz^i?VvHsLG2X~NB`4cwetHs!PH3s?u=?e&Vq#^BTAv4MPufrTn z04NXpn)h~_+Z>@|0-mttgl1!Ee|CDDnafHK_unf1cF?Uq`Q(@bd{w41E?D>5pUSRe zO9UkRW31Lj)X*Hu^JFf)}RFtpu+WuD!bx()c95- z0kHb13}bs5`o=Kc<(-SapxJ{(DocOp<-J6jEw-50^d8@qfPo#mw};aLPJjXb496BV z`Trehyop7QOo!r-&cL2xoyx()D!{`5s!S{3kBs+x9p8R>=5avvi!PIXo9n7v7bf6*9I5paZ@?dH~U@Csx>&Ahx(foqdREWs2Z}ZEvhIWLCY6*J>ymC5dUg7)DL{)UxwQu9Ah9ty?8xMBZh7 z?WsGqIUc#XdtIYS3w-%{DDru{zu9#_@tb) zv90rXJu&*4eJ;ZgG4Xl5Y>1kd6JB!ss@g?k#uijv4z?TXcjTWMTwK{zW)}<-N@O0=RCDq=W}(G6--|Qqgm)~j+N;k+AdsDD6!Fr6 z4aU;*KjbE5xA?5Bx6`MKpX$`!pMX0p{g|NkF{~frGPBDfoe=r~kO}wYyqV#@)yO zbRzJO8hgnz&hS?9g3Zd65lQB0i*GK$WlPYp_qweR~Yb4bj*2ywaKtf}RB0N#uMiiSI(9u;Z-PQoZoLy|> z)=+T*uX++c5Hus=xp2gNx41z~2(j~}@Jx5Juzd48&(?^lzN-1QQ4pe*6q`-U#UO1u z^?rs7dfqN@{JGEkBy_$%TY6SwoLlVzd>7S>3gWr`*jJ~!Uqp1UB6~NAY2^*$ZjIiD zlb^ZIEceA*j`wP8&uuWz%5AyCU)x9Xfwd@yd;txjSmhXiu)*pbDST+CCu)wmtt|)d6SsO@k_9>-r)w3jXKYwN2TAql^hb>hN~2 z67^wUn=i-0pX9ar~A6gxVJrw4chOgBi-47WP!m6Fa zZkTIN2;Sln8csK!SVgb_$^agh&!lsUK6;+z6LDEgsuU0R^v?Bfj%UeOr=^E0)l7?X zay%$9*X1zn244E$Ru)=TF|NO0syUjbk=jO%?y5Q^i@2?$$R&{>aL*h2W#*N$&WWHs zGBV%+rU<0JY@%&^F#L&4zzHKn`>m@$z6omQjU5Dsa4+mG>9NeOp}|}ULh6=VXBQL$^1shn$I(ScUWqcDV?QX5 z_}kcPma?^wt-Q7a+-wPkJ;Xmd8~OMkpO%`|lu)DRw!&rrYcm%J}u?oe{{MsGS%GgGeoxFE6DN~dqq-sAGI$%0w_3;uSO&x1gLBB*6pv%Xt1YDvRo z>VM|_0cNZJkmH3|#L zPDtuaeV4{V`v7jbCmK`)6xv7q6iiG4RY=S~r<_amd=tMzF*sCld*Q^XS>{scv>m+-A%|lz&+FX~3fDi%?q-&ACa-(pLk~|K`o4f8x zdw!=~J(M4}N;?TvdwQv;6f@c|{SA_k0xWPX_!Mj%wrV=jdrv6BpR2E^UM}?g`@~tg z&z8^2JJjb&sn_-ovX#s9bTrP>BPcw8(>q~D6|!gDy#d| z-m=*yokQ<41)|YQhfe3v>Wn8pNI0QZ(o4Riliy{o(7m?iP1h2-omgE(9noV-G*O)W zk9Sh+wOM69Fhf`!#)$>JYaAW^PJSGPH|7zbn|;kb=;7{!S92W$fepG3E)gE_7dBdc zYnYFpy#G=$^V5z2Jgr+%2d>xPiqCZ`RQ_-tR1?4_k7a&zq-jt8$Ss4vO}S+Al0Qd| zFI^mBce^uUvz7LuoGiibdTkVmma-5P@#h*0{gZSmgO@PI& zXoV!2>?4zS73w|x=*}yyyLRhk#68C5)?0c;D9h)H?BBh?e2lRULi~aP=Zsb-kQa0= zYP~+_6(WSZa1jD7T^bL%-KDEOLs%MCky2_~k_6xG z=1V@o*|c_I%IX$`-mugWrXYki{d*_|9ZCZjN`zg!FIoO?YPVt>8_<^b_(%s)*CSMp}4(1Ln7aul^r5;PdCD&&J!4mFj&(l+Vw?^t!eXI5|u!IC{i^jE;WxQh5bLsC^ep zDy)wssWGTAG5$rr>VsT9>P-Zqj*Hv`?2jeb;ZYBn!0OP|>h{tOi7iHQcX#@h5- z9dsdQpZ*}PnyOvdBfayty>Q4^Oqh9dtXrS3=H~D%Gh?IOxz|~@w}qbg zGKe#1n&J3!g6s%ykPD)v+q2gz3YGs43k+MXqjparyiuMNw$;p*>udt`-W&K_b>Xv=V%M*r|oM(58ta{(dE;HBj>njwPH9o;~S_Q>sU#a~b9ervr_3V!I_ zwYvA|ggUX<`%NBGq3LtL(9;iW=b{8QoPx?|fYOHZR5`>5{bs$Bf_72_b(!Qa<} z-Wwmv3k#nciaa{99|4kI+$0^Lb$xU{wsRl+*0SHfdaQdA@Lfe>Sl!I66ytFnBV#IEWYyi$o0KLT(hVtqp-J3)CJUt? z!*GlY>+k=yZ&$(p+BZsM`k>hiz;E>UD$(miyCRGhqeI*9n;T&4hN6NWu;MP@zhdn1 zZ{oLrSLIRL#Uwo=1cy&ZCsvBi$BlmMgGC;C+I}oPNb3e`nALkXO(rdhN&YE5pEBav zDba7l4skkGG@Kaf^KK2>?tu_weol$}v~7TX`P)@bc7BN9D~IHWq*c)>t*VCtI~)V?vq{Auyyn zUTwG-?AG+O1**bPDfU4K0jY4d%z6!xado#xMYq@10+*dk3H(7D75`D^pSIT`ZvH$hl_w~ePJIkm$*rlB z_oT;**(C4CYV%m{8%9#3poL_&%Jyz2p?>W)L^ABJ z1EZbYs+lAI`C@62UtD%;d<^vaUz4MMYQ3=v4P`1krx(@^*=)_M$3rNq$pXw>0p?bN z$pt4LqYdYPe;YvDqw3n|-tfmv#icz{=MXxdv2^|ri&D|hq%wFvra%CMvpW8Y-w1A1 zlz403@-$C^s1SNY%j~1I-9Y|@??0IM`3cAi>oxqt68yAN_7w0{cF?|yX6<6xRk@Zq zTvlZBchc;51uhi&Lm!mO(&+U7mq~G&l~s!~HqqzrC4_ws;{)hxTcyjF<0UX-+dsp+ znK1S#s>Cnux_rtyG*9^_oSeszw$bDhpM=rv62B4Eh4D&#m&0<~dic9I*&aU48r0WX z&3jW{OIpQHV&pO>mm8anZ>#^wGsR(H!~ZvF8;wQIB#55jh}QF<2p|&q_H9fVyRLpS z;`R^?61B3h-|m1zIYnu_lX*-il73Q%&^>|DeW+fUcE~ z(?wFG4R-yY51b!7-1ffYt>Q=cihs?U=RC-q;od)z@eNi*6$st!rU2ZW?AhS?K{AuF zcl2B{eLHmtSg|H_ubZ>`rbx2n?Z zQGM(0nwdMw-Q719jaTEwTrMP*aQJI3Ogi*T-KUu7$!fwrpS~*}JZ23n-Y{s&xzNj( z%Rq8A%KJ8mbmTvmBwpf#trrFl$mi?OyebE67N|`hzWJL!>%-|GPPho_M$OIHqEQK< zizw(fNUhs(DH2B5?j_?gLe4`-2c^n5WL4g4*wD&3ALRe~DC>V$QNb((W8DHB(dV~{ zg!R~4{Y-d74A_m!^w@1a!g(A8MU9MDSAN_-`$=@80i2(u5(6{(^sJp+SC*xJN&InX z#N`e0N0%<4uotpLV#}fL)nHX`CdU|6K!+3gCt#FI0uVHP`2Usl-tknw|NnT2?42mb z4jI{TtRo|oaY&NvBoT3}tmD`Y;i!ycmaOb~B&*UnMaVuVWM(@D2j@6^pN-e2_wV*| zJOB8@&3RtW>$)D}J|0hN(zgndRq^e_=cDCrNt_eCTC+oYHJ)(g*eCo~fX)K8iFNr@ zcJYAq;(5nB@vkE5oX^T|vTV<>O`V(+S29OqHVr-NBw=-z1vxX@hJDbwldxvTa$=A% zQyFP?m{k?>-I8n&_wLJ;lxgM@0$K}#pHvvznzniS!O$k%qXk_+&b9zn&CQmc0X?L6 zxMgtyeAnRhZ!U{bDBBNsk=p>D`r5P-TdKI;fosTj{ts0$@YhLWl`N6egDk@}m+Sld z@7@{pyE`0zty?{HgIipW4^3J{aq}vM?Ubd+=lZ(qo#~~wh_vkVJ*80-J=ZYz3T8WJ z-UcaYx3f7%DenmrfFGS$E?JAD$SM2qkIJ9&a7BE?ITonlyxwvcT=m!UjrDl3j(chB zIoMaJi)jsX4%duVxv>K)y5|1ph{^mH^k8(ysUtG)vC|1qryzHyS_5HRjC6wO(KI@5 zif_}iMbqLxTh(|mLVt{GEB2pz6>8)gn}zruI*n*beN5Cd6MEpHM(@HQHSgSwTkl9l zULRMjyKL{}#Ac%pyC(n}s21_O5!>vs;U41a`J;)Q{X&vFxbot;WV&Ts@@)^ykB8~L z-H`b+c_SBMz^4`XpJIbMb;ukW%#jXn@MEapBiX9p;UQJ;d((FW!F|MGGXSF&ykirr z1A%3;Sy#PKW6IUYwf~gGtVfaDL;V1(VOopE=Fb^UgQn+@1sx9=Lal@&n|vQX?SOrP zb)wVnzi^fSj08q?uyN1SXP&WHBObibzaoV?m|3~VI`ev~1Do|wl>sAxoIHH)s&&UU zN=+9-t5FK6-MEz=R??e#X1q{lR(AFxMf9iC;I*Lf$(@k3l|s~z!`2;-#cvF6?29yq zU<*3y#rn+03i?CZ=b%|wKR4%3JS8|&kh=TPRaus<&%vVYx(&9;Q3oRsKj5Oz z;h&xGc$@4p{t86dSYw7^)YJiyV*1;zUj^p#B31goYVC|;)Z8rLk2Af0l-dN&XtME8 zLlurjP!wE$hOF&Pnv*X-aQAAG@qKa$q9T@TkD+pWv7-I@VG&3tvaeB2=c$Qd`}b_T zlAUZg+NFvzi!&sl$e~*su&|W|Y3LkeRQxclK!ft}b4p`9&(;72=EvkKgG;`2-(w$Q zFcOdP&lbV9CrhkI+>eF#$_K^6+3O2c(h|1tk0&0elS)^r9AdWUNJUhysSwN;?U+H# zMQ=0L%ACYV4qWR%<7n0u@I}e2{Q0Yrtnv--83>&1sMqV4y<4QcFt|2{B(2H<77B9< zoV~=8Lo?1U{%%zSQ^PfdSjcQ>lPj`BQ6QMOFR$1&K-?042)5P^&nHC*qH4>&4;XF)BGLR=0vbSK{26FyR87o!>7+o; zPi^}*93<3x^r-TBEIvH92Y}6)iqt#v+O}Q7B?h!Q8R-sdO zG!RP%`#T?IiBg03$9K!tepe7meHnjK6eBvF59e>H(q-CF91Fs`K6NPbvURCqP}JLgBMW&YQ38l3k! zORa2#uS-0#(8)UddGpz08Ey5QD1UP8)RVgC4t)(_J;{kS^Ly_0BybVtYNw{NVYWOE zzNcpQRXtuVA)Ni{(;E=ypKPhT*JNL$6inx}k%r5>jWy8ca;+lTPeRA~W*)-J@?$eM zwHWi77IO>4C-*S^l-j}R5u4HC4pp&SjgWvO8@}V+PXv3FEtqN${!AeCW93$~;mQel zs%Hr45$Mx1V6*iQuVy#@Xvv9F2F~rMnbMU==VvR%olZ+WJ@NUx*<_sm_p|2wSZL+L zMiZJ3FvkOLkT=V9*NA*paLP5;%hr`H=~VA{#JFoA`?72u z^OVvFE~}3QwWe-W?vK><1&aGU+KT;9?(oXr1I&0W*}34`GEYjSa1x~`bf)tw>o5_Z zv_6s~__CEabAvv08E5H^D~ULtAfX|YJ~6TZIV$+IGX#7%?wTl}IA85m@2ST-)v#T< zU3u9i;5Rrl*uwK4L>xIs9~#NQF8tm)y13KQTo|gvAxr(9Q|O+4G%wjCO{ZQk|5-Ol zOW=_{HQQ~Z8je$2*QwhR;vLmckk2WoRFx>6u+w*V;d zM-y*1#$y56H)Lmh)j6AO2UBw@@kOVR$m;vBSu_4#C92A;$8=wuF5SC$TA*cTjP+Qb z-r-q{3M-Oe;{{4|;-auJv0iZTVQSeZ%DSO_vvp=_3y7g!^5>F7~udI>-SKP3bUff?&l=mC@c&}B~Ej@(;P8&690@qIWoo-yTkzdBo zwU(w$wu7wJ#zr54`0}(4?eOH6prCC_?{C@MxouM%%Tk2VDWSCrY*^Wv>QQ8Um*G*& z_7c)7d&n<2=de2Z&;XOZlHl(-pLk{Bg}t*)-bA~L@9&m<&!fM_s0*Sj+MO!L0p+XE zZLIMSU0GAzD>8sffJw8WdEx|m&Q2qjBwxusGj5m^G`I`Y%L;e3f{ClQP`;90JgW?-$$$y2i6SNr_ir}@zhci+b7}0a z+c1EryXNIKPj^VK@nFz&nCYJI@(|va>k|ywG$fNFn2-K}f8sJMGVplOHyD7mOOiCf zECqsgs13-q-P1L+m~Vh+{#Mo78Q+TQd4({EScn(A#}LwO%js!T#GJnTy_p}y zQzl`Bi)))_azeKZvtYZ`hBnY~9l7A8rz7$;puD1^@%^n8pYE`ozA$wCi*!Y2jrHX| z`7@=XkttqR!4E(wpT%<;UE2eRi)-h2PAuQnii?pb_b3ym{9bsIt*HM{a)pTLOC{pv zY+`gQ>?*<-I`%uOj~s8r)K!b#K=wggx`8HLN!(3mx3fufl;z&6V|vn&?K=sfUGtr0 zD5aV5`%*$;`$T#j6AM`G9S|>cQc^D2BczLWhgS%5zEMw)=P9PF<{sabtkCze-vVcE zvBL15)i-Q+ISuBW7$eA!-)`hGQ0O}kn&CfB>Ajb6jX9GL~1PtDel0ZZW{+fi5kIYS3I9rz{c}AZd-;=xr|h0DytysS zzO0aYL@Cy4#a!OjqyFqDJ?bmAq%fH@F}9z7kZl1|`{cZ8@NFSKMP{B{vW5)+Gil7{ z`EUIYQ1CZ@|5JMUm|PDVtzHthvF9DPnxRV?RSGSMaZijzfya}#UHBJ63Lx88-ou9xb>uQg^Q6}9z{?-E( zXd}&Hu3W1*doT8Wky2Mrg99SoXzJdS4EE#`nMAnqwTUWEfAy7dEYWzUP;&-s+!-{e z-g8`|SOdTaC4(tFB#Zn)obZ>PR?Q1)=%$It+<2mh0 z;^xUavjyDZ-;COGExH3RAtgbzGA3=0k9l#2-d7b^L(9&KYI^i_9?E;4{xb70hK@vi zq+2AaaB)ETaMUyp61<6fA;+i~r_G$rezXV}fBEJ8Lg}!r_;R_8;Nz6}g7*UwN%M+!I5^9TrjJ$X?rXib1zq0p$+e!|)+-G|213AP*u7b13dW55N7 zb-=*RJV#OQDAbi6Mt9yI+m9qQ1OXt(t2rbsXQOd>gxpCJt~rsZU-XQgJmOwXU7{x` z-S^m12!8zIjkV9P-?qU;Z_@wTzqIHG#d4@AAeyH?n^Lj-`0$icgcN)kI2*o)9|pAT z;2B!;-c*T!kP{JRIzMZ!_ohz|D2*}{`F{qBuATv=+0RaZlO5?NdTAnG`0G)Zv+>f$ zYM-58r^zwMECcllxMibwF83J#vm+#Hrm!(}>mO?Ur?j0uw;RntLj)Z@ue9fY$*zGXdg|C(wBNp_T<=)M zmR=a3&Sh+1sqW)tAK(~u(o8g5FpHbc&XF&QBcxiA zudB5qBJ5zwU{k#?tXXbF7)m!^7d>y#1DdA zjt>Ic=HnHeBDA-@_E0dF@`v*p6UlokvxS1EBzHM?C*MBMRl|S251*6G4GWeeweK!u zjjEiuOLpHhce>r?7$UZe`VsYEf*Qo+A95OeDwHWG5#bT18~$M$kgV8qImA$qwbVEe zV{a6rQTwu1B33U<$dm_LpMW0_-!N`6$qv<6SP9 zfI-M~ssH5sU0bkzsn*1}@-@%LR+$CURSB7Wu__UEQLU>_?OV8bCLxIT#UT`LFW z-%Di6_&0Y0nol2fIz?nSwv8|7Xec>^M!z$sI~T5hr~Vs6%z3{l{UNlqo}al z9a?-N192b;%RpH6?H=E-1ds04sc|gs-PNGBSpMP|6{?!M97`hf#Nar2pEM@)k7X!Z zhKP9gjoX}=xT79aUuxRG<$;2^eL&XY9xSzN!a+K!;^73Wk7SqeTipr+2i(G!tg-9n z8TIUVUr1JM$+d3tHs4y}3k75Bbu9h%Ll5V=;Os$(?wh9^9V!gkhXQ_iGnfq8uKZhq z%N8_lTT`5OMIw{+_C&7RpbU9ZIoXwj#heBPM~F#OMF#_m^nur%nsmTP(?_2?(Iz=G zAnG>x>Xia)TxhXl_KkZ)Oh?;v5|zcyosb1N$3-5%oR)6(owB^u+4tp;SjbR&o%7vW z*`Pkq)5kTrDKL5d#r~jUZi)dNrlvFjx2mv~hqqjF^{a?dD8+>7M4acDw*m4-1*QUD zD~HquQEB5h+=if9to-hYDAJkgv5P ze+t%wq?l%lzG&xA{VH!z7rN%$U1gFSAJ9!aZ z6=bwodRR^Q5_(+1(}Rr=+i{aSq`pqgctBvl8B{02nx|SPlVepRt3xu7e|J!v?<2Wp>>#Uk z2-oLM$b)aMaCh4tAgA3BMYrhLFFUp88^3GzVGVlZDD@@!fO?RpX9j*g=(N^JFO4rV zF{B@J*yJ3VE=tD*GzcAFI-Vps#}N+rgT_pf^g_Azqhnxuc`cK8F@6$;xeovmJ)WBe4lZN zT0o}KzXt>x9%(IK8z#Z{8>J8}CXl3OS< zVI#y>+fWm9l65M0r9Ur6{oxzd_|68c9T%>k_=O*=dBN^Ex9)ZhZjmfgAkeBs+=Iun z%*tRH*tt*Lcb&Dfea0GhUWFxBQ3~oh@PobMm1cu?ZL2Tao#AZUZMaNn5Rf8BcJGzX z-xS#DJgGyn>dSK&)$M&WcJuq|3BSwHM+t31+zqWf-NRna*&3vqHkiZfy{=*`PrKT} zep|m61&RKJ?tv$jVB--n;}jRUeG5A>IL)s1g6Xz*Nsz`nW47e#E9K=>fjEvALRF~F zV6|4Y<1JifXji9B2P-{ zkn+6%4+R2kfsE_Gz=cwSFN-cY!IMYS1pd;tzYl$-WuR+|chUMR;*$ z$TR5{a#7ZZo2T&=kx-a5>Y34{ar- zmA>K+O3ZszLG{ps@1w_1%}W7&z$9yK@qFpQ{6L(<)V1~`XW1{9QLw)1D?xi}IhS-V zm-C4GiIGW>el_$EHhZ*G(1~JVMPrufXE3x4jBotvI*_=wRQg-#Rpb`%7bF7SY33#G zbGJAGS1hJyE&46<#T>8NeEdq6?+m$JM3_HQ>_Ts;#9Uz5JTGV1v)%L?(WoyB(c5Q3)n~W? z`ua~mAYNg?7C%^|k!j!muyb|XA-TI8YVd^Hqb}Fei0m4vqMjI+$nB;G!HEChtFxoy&bPTN)Rb=gLN1eU8EVyeNY;I4S1~J2smdinM z$@8g8U?c3Amq)&p)UefOKX^hb!RGbaq?%u2Ux3eo`@a{>%f?TiM2(~Sq=%LKrf&xL ziGkstz|cEZPD)FWKHA2;B*WZ=$}e3)r;T`BJ8n!f34ZkzWLqnHcJ$)}h(_-)vp~Dm z**3B?evp}Ms_1lkHx(uzgzpL)L3(%6C^JeS2 zd;kAWtuAuu$Ros zDL0M+m)l0HKW=xtDV%ETVm)J%Z3AM-HdSm9%9jpEnw3ZH)+0bJFN&&&2lxRr>7L)K zy<-Xn3_hy{+jg3?PIeCW$mQ*SV72Fze_@z-2`qL=j7^@tF-Yxs;FZn_HcbQJ^c&bq z)c2rmA%x&p2^DXn*XfGW<3fKnF_1wgy|mz@pSnhEyKAts8Uf_Bj8Xc-SzdZpK6QF9 z`v{sY-BELpRn-0xwG&*YdL++AxTY46$CgCJ0CEa z%AcAQIJ6jt&8L%2&U>E({L6B|C*9>}9v^ZDD-}bfcRtI&CLuu$*5RQusg|f1VDz3| z=wuA#3hT;S>Rq#LlMrFYzHEWN3q{! zpN)c3X-_^W5X2=jrx*03fw*^W9+kxx{7^Jf9j~;dRG0OwStKtdwADx3`Tyw>{~whY z$TNHef0vfRvQC_OyGuGxcw4~WxcIxDJcfY>07DzMfczQ_me z6?Q7R90jjksh}a#t!jT0(A*i~!rtXxK82j>O33fKfv5Jyk5#VK@n;zv{>XGq9z7KA zB*O!S8_zokEKS^k@;OXOS68iP$Wk)=KsH?w^+c`U3D1>A$lVMy-L>Sck6DTht;Ed9 zpNvKVh2PB9O!r|WuO|N<*qGu!)cM~J9Bnl7Mk1E(d9=B3k=g$G$4A)veb;DASNwY^ zbgv6Gjcj{VSP7{+H~SKi8-l$Y_+3>-mi?xhl+x&OvRn=_&}DI+wWFe%##HxntVps^nSg#hEYT{K^{jz0E$lf@9z+Rla+x1nK$OL|sQGn_nSHicCw#;U zRdY`YmSTkrImrqSURg}agn9`%ze-q@aMmC1>?LVNw*SJG+AKh~*f&>rwl9RIdgg7M z!sS7%?v7_TTlTY#caBtLtE1I2%8l+zcy(1*u)u%k!X|?Un}7Q;z-i0|IB5}?pRP=o zzuZ9sq3iMuvZSS9<%~P^fTVXHPxnL&q0D3ze<32X&T)!1iN=)5>%^XSZD=-YdV9ze z+yI~nk93=cTL*4}*VL19mT!)7 zfg#m|wa%4(^L&k^&f+iqlWbW}!nh?EN{N?{`#x0QCT0-%VKnsOvNq5mdxwxjx5PGWO{p;el znlF-&h3v>#!)Gsyb)=44HQ&OX&ef}`?vHz9;2Obt7S((FU8=55o33E5k1aQto!^@D z0+S?U!A74}?=li5u*+PK!Y_VF)XhC~a{FtT4!YD2xEhjJc(9UQXK+|$7yYlm_}AMX z)V;jfW04*&+vCk zeY_2rf6fPPVIZDlqQZjfl-=Juv+}~fgrJYzV(_37FzlL9s@cuz<^U#&Xgt0!`6R`C zf6O^9(#@Ui$8acKgutNv9N86(Lyp?8P`gPs!hIv^!l$)-Pd&3bTq}lFbtB0T$Lt-r zP;ZR*ddrs2x3{R-XxQ^2oaXph_k;5zeYvJq_G^#m7OdMs+!%S0IMU}g~+g|=0)&hLTRV&jmk69%`7^VU+-AD!8&Eiw9t9#HgGv}{n8NA{p+q7!=E)Ojm zo1<0a63y`gyv~G9dBN}Hva6%$0k7fTj4q%>k@YVW=F)Z!p>x$5tn_*Z*QsybmX%LC zFC`#;tbbfB;$q|~U5&EE`!C36jPpmsc#SPCw-)&hC&z?*Fun1`&c}|;FX+ho`7q`p z#j~^SW|gH$3Y3&hA|dC5j?ZQF81ojENtqIWhYgH%(3}T`q_E+3BGk59(b_Y%@!?f{ z*VZA#Lg$s$5SnGEeE`kMSUOsbYep$$G)we~im&@CffzZp^Fvz1I)${wf=&=M#tl=b zeBDN>fxpBk8`k14{Wr4T&-zznZbchDU-A^L<$${ClogND*HQz+#goFNp?V%<`X<0M zzU6^cgl#CnOWQlyJEypHc&+ESK+Zgf4TGjdQtDI~h^;R9->|*es=)_EaV&Q1)_0iFcH z((*V?;zGL05&2hbw-}vawTX8W_UX~p6RYi(Y7M4QelGbFTlIGRXI{&)r4`*i{Up<; zhs>sD`9Y1X4JrP~QD>adhzS8|*)NBM0q&4&s>^=jcf(+g;ydG`h0i#qLf8 zOyEb-^g8=sj9m%UT5Ul!F$W-#@iTZxGIh0XrpK_sz>xe)Eo19DcDa4Bv+tYnFO8jt z8qxN1+;cxbn*p&ZeC|_!x@AhT@PCI*R#0zj3##e=(c*iWWFn_c4=1!^H~L}pw+lke zFLT-b+kn2QEMv!1Gr+A$Yxf393jGtupE*bJw1j2vuZ~^hV;@seqJ|4dRZ<=C5KVMb zr|-BWpCUCp%&uj(|R6jx8Jg^i}jUP33skoQK7^5SNQp8L?pCWqS@i9x^LK5 zrN}cN^@#$Lwn8~!6HFKK(7QbCr!j+!>Hen>z+?*S+)vNS=!j14;CUL(BXvfjC z-9x)vLTu0KSa4bRiTtp=rdaHQb_$`HReTgqznteJnGe4w@Zv4eZCv{1u5wHO$xJTp zcpOq9pdPKpNK|Fe-+lz)=c64?&rbpx=aUywGksJu^DhXwNQ|alp9McwSsT^&w{{O9 zVeo0aV4kV!XMCJ4OYNz@J;{E}X8jkHTIkrE=B_$zqjQH%Q7z&VxY5Ca>}opCWByY-pfuhdWj+Fgf4T-j^@~3V++bsU_Y=chNJd{Xnz?@G&67j((LKB4dn}hd z9qgv!eEKfzE85rILC?CCRsjD+t`R_@sFpd3p{X=Ro{RSk+s~h{=B_dhs`#4?R{dwK z2D|`Sj_6U6UWnfKW4f*@M(5Jgzm_G^&5l*-F`=Rag<)*m{h3IQTW1XyufSnl+4NJ| z-@DH69g9RWLjr(eja0exh`?^U6E^?t&9MB-Z-~H!%$+R8nYG1pj!%_~J=2crapjtw zoSKRCmx8^up^d{P!e@U$5d{y553h^Q3Rx)KiZLhz1+ii{2s^ z9qYddc_}Lt$oO)@!J(x|(ZozF;*d2Xr8d52=E6t%t~*t%l8eshffC(K9$%rv;ZnZ=E0HdR;cFyymZx@xWyu;b?W}Hth$AO@ zpx6oaeALW|)1Tw^$}}51XE)F`KU6w=dW8%eF3b(YI9B_;7}kV$uA#4SM|XS}NN0f0 z|9<&{V}jI+@vxT{YH~}AT13xrhJG{%Pp&rNIXc{JLqkMma>G4d^8yyWxoSrfMj0a% zJtyt93-9tuJWUZg%}e)RS()m&1$fFc9DYXc@I{?%{K{|2l>DSVYr01Uem6vaX6)Se zLG-Ejz7guj9hbQkmQl$NRS z0n?RpYVN4dE))X@|5m8eQa7%BSoY5$Hc|YmP6VE2>qO);@;aalq;V3i+TV(A&b@>B znI-=I!U?BmDaOw#@m!`67g94y-SVY(;_Fx&*@c4j2ZRHv&rl;gvs4*ycJYRX#YX&a z!oG_{@>lrzWt4YiB0Kzx{EP{60ONqQekwFu;R%Msw6ou+<1r7|f9f?MR+v?6haWbM zl~xs+KU_7Pia83!&-9}+!tG3X1MX_QZKLc|RS7)&1May!U)24VGSkwT|H3lcq(=<& z#6Y7<{*GM&Gd})opSYdcg?qj@33_(ApYI#G$R?gAzEA&^y^8)@!B0=b-bxh$-jmft zw`%Rf!Zuh|cS#e`G6ckbZLa>uo-9#dDDLVP?kbrzPUuhWwjk*zQqWsFM!Qx zQq=l)vA1;o^%D1mw9g|J@mM%L&{Yt8&Dj*+BUs<3=R~FWqe*9*|FPB*@=MnfZkWy; zx8Q<~+^e8dge|kdIR(<5yn#ObZTTx zcQxmQDU@sl@n22d+i^Cy+`#A@v@H5XeC;0g^nm*#LTz*-9m&{wU~GYj!_^LC5GPTT zGHX{FFunnLC@jQ9U7cZb-9QlGa}F;sdk2GnB?B% z@h39EVI|N;*Bsq~aUP+`YtuhBqg#D6ejFW6csVQ*SZ8ADzc&ZZSL`H}D83Af@wQ(Z z3G1brHzly$u6^3CJ}e@-t2{6m>m9?RMaR{+%ke0qyY9p+CWf z0wHV$(F(ZKTDl4L`m~JV`6y4S)+R=y5NZ0UUk&Jam6Nqh9_F;-k%T(CZZ0oGPxncG z`u4!tq>MqVeb6h{VlOG`c@1u1g6@7pw)+Ybc`$ASI|~}B>AN!Y-?uvV?_1qJ78$VV zcjypCSy>5&-w&TQ(VG;WY4u|tZdWqykCLpAi~@8?L%U8vp9#dQ zr#d4>TI~c8T$D8Y(@_V+<*Z$EK3c+9?>@Xo>-&`P6LAq2o=y(#4Ga|%Ty@%;+`XbVkYt_B zoQUzs#Yi9e&DGn!T?xK|I)`6`ZoB8Ds9YeL^U-X|&z@P@Dz7uh5u)7cPj`3zuPn^} zx3g>kw>tVBy-n6{pW%jO1xs%+KUAcqyiE$~ zm?u0mGN;5o-kWbR%5y&1#Y$dFIJC{*(S{`1TQEWqNZ)CH69{W?Tli_VVH~w<*o9Y#KB@&C@VFU2Hv_vKsvo@fnu9^m99uVGIW`7qzu<8>QOdTuiut*NswE| zpTYYy8##X8#>H(k4wxZWyleiTA!M%32=0-{nV)_I$?dR$MwGRHUGDZKjEg&^vkZ*5 zJzL%t11oaeb@>BoEB$|$#grOven-r>9SDh*tCi4Z6m;DethXmVVg+VR)#4o3s)q>s zSs4qxl5v^HQ0pw+LM1p0d+yD=@m*1HQ)R>DNj$xjD6qoN)ju-Mtw>9=cnMy2tO2Dz z=WO7w*13@22S^_zGTIQUfu;9~HOScl|6Q0L{?fsIg(r@1oJPV_#Cb17Zi#pxDl#D2 z-No=}@zPNUdy|2DmY{%no}dHG0j{9DQ~UzmTw~!CRj2^M;9WDCy%7ZT+9Wr-GgL%g zSHM7>=4_b5*Tf#=mb2g4>ln4|t#Vr!Nk3%b%5SAM5Z6!rJ0~rjJRjX=l#v^jU&I0* zJ)I;~0e)E9`&vx|kLI;jkWyQTQsjM3*#_CQd|C?=uv?caYT{Z_zd@ zCTVx^@|{x@YHxgq0U+DAtJ6HCF8fV{J+b4we2h*GntvbHx8h%X2#VKEtc1>Et&a)F z9S#Z)Ss}+dy=T;pLtsv)erRv^K0G<6m}HiliZT><{jB%ol*FZqsKIXd_8@jGXjbPy$n!TK@N4I#{o8p) zY?1qMzqCT7@i_l3zQ`tV!pbQ~$&AXY{iF1jAYLb<)x%XhZQRtut)2`%n!5T`#|%P% zrnRgWFzM=3Txp!dyo>4-Dn7(DMZzUpNJIc^fR>C z`ES1&{T;FlEJcqI4|JS!aAkr<@Qwivg|ja{$#CTZ>=I9&=8L0>N8G5%ph1(29M*!t z2%M};kY?IORQuaaczE@^wBti+#9DlmwjDchuu+Y2&2Zwq&`#n{#kHe_Cm0(po25Va z^z(&6(|?JCD9exR@Lngm5O>Jjl|2m?R+uF)$itTbX^~s2%8@FYTrFd=e1-=81;ipk zVB1P7Ycc@>r4GSd;P8_v{mY~DX(^A|rxv-h7S8dw}zw8Xdqg|ul zT30^y#;4+L!&kD=N-mG%)&X8SWwHOBX({xP z(BD|LxxYg)Xbu z=#BvO_!eWtvvuZUP|DGJPjrPayhuikKB%^xfoNm+;k19Ouvlv4 z5a)>5cSHJaRXY`K@qeG9=wFm-nL&1}e-53CKX7QnV+yoFf%2{%ZIak$aimB`*&$P9 z(>SO;Tn}7vch5`%({og{jaeKKjGl^$hx?7RR}Y0a)llqIrdr0&-OH>0d)^0E|Mj=G z7-By4ns5GgJ^@f6d!YlAhbrsL&G4m1nBv{SzEg&Zw8v77a7U|8@-(LoNTXIZsbs6} z=B8gb{fJ*<>;C3vV0u&zC**-gd+@mY-p^ig0{u}}s{NTZH#WROOK9T}5#T2-=l8P<1=>U~r+0Z4U-}!u eTfTz$C`Zie$*o401wI@Dey&_L)vMHTjQoFbWp7#l literal 0 HcmV?d00001 diff --git a/doc/images/modeling/coil.png b/doc/images/modeling/coil.png new file mode 100644 index 0000000000000000000000000000000000000000..9fd9f233cbe26114b90f65c030ec1ab918af7f42 GIT binary patch literal 589603 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

c51c)D10YA~yeWl~^1hskZR+L@ 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

L0)Qnzu!vl>$+MY+wFK?7P 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μ>*9{J83*icA*3548-EWb_xs+ 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

`25-p9O}T)48HL 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

`jCH)4+M{o}Va%I8w|kmKIZE-{ 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

)B1 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≫thD5 z>@!t3y&`}wj*PztEKk&btCjR;N+0P2d3b-nLv9~S!V#|dNC#hsI$_=!99 za@R1If;1vR_ISwU$`Ds$jXWgdRgCAf{z-(q>__E_Za|f#X^>09E(;Q;J0npcvNu15 zLWHwj><{}@z20U?9SAoD9z`1ySB6;~E(+ntBhP&tn;TENpEelH39c@e6nn76)lfzY zv^ENRIU!U?j==ul+z9184?#Ub{Wu!s#sVc7ultM=K@-l;?~`#zA1w8A$`-(qS$>VA z)%-z!wru>OopRAITd2{V<&z#Wq!jYx1?WUlwyxep!ApgOHhVlN3TqO4tk`EgD3F&7 zv#~EOG$VI<&WL%N-0-V^=CE9z)y7;{QtSzpcc5pW<(6@EPiHW}>9L8tt$9*|&`+ti zbi)6ZDQL`Il*+^VV87DZisF)>n03YVoP7HO$nivZ^;mq7xHj_0wuY9V;*Sgl#i%f+SCwUMnnDvyo7xQ%k1W;PI(XIeasf-a^npp-|D-meU-fTLmzr=MwBGd1v-f|GYUF6dKV+hh3{Ga z{=uwNbw1B@Qq7F_Oy$asJ&_n3^SByGf(Fr-Sb=eA`fFT!d9cwCRBcHW_>dwjP59Yy!}hLNy2W@ zhWaXnq?rO-&Jh)mWk+yGQOru&lS|}I~BB|JNc7dLph}PCrqU| zsi@+Q2Ag@b^5iC~<79S-veiivNptmTTe~{wz9QiqT}%AyS6))d>oU?Z#m&U1NOKJaC{_wj z8@dbsue2x{&PbcCvl7??zE z_Lmd7NL(7EA||y=_~&3H1dI<_GGZqTW)^fYH98~oCg7C|T9Y2Q$zu?;*YX=qB(fja zi0;w6rf@MoqyO-rb2zB9_}Xtpk>|EgQ8xgK@&|1=-6)zsxI=VUD`r`fvbHW>Qr)(yt zLwvG{R&D}>{!LHj&b&L~f4_6X20L9h+PKe7gQMaN7f8jdQ%M_NG(hw3Y#%9fyXzGe ziBFhqxch1QG;ZejD+K4?^_g{DYauQ6VQsp8$m_y$FWd| z?B&$0u4D}<3o8|Yn*n+o$8VpS${1kxHEU}~Q@*6Sk)pZ#Fl0iFHjKUB8-gp#6q?4ej`WKHU zGJSU|J6i+bMn)|OSA*tjr~=LwDZh^{kNo70{}-%&y&%47)8xXQ{3agpXkE~)&FE#i9b8QB=b^pi$}`4Mx=9fiw<)`Jh{M^+iHltq7;ef&B7!8Z859TX#NbXwtJci!^H z&6Ee^G~&efSuvfI;6qEa-Ma$D^I>2qYN3}Ee$D{Z7W4rE`bj#EQ zBT|`!(s77*AMbRb@O1U8KX2ETbuFszNUYMPD|gVoluqvX<1)Whx5C`9k2l#1!1#)w zC<%u$&~aLqf(KTELaTtO6f}9qD3MUB!~YZx$zEH_GkM*iv)mXurP;6kz@+oF;mO^R zrG~?t2pU24R-r(ngZ$RXjwngepv7M!&uLiB$(cH-qZnQ!RcxeS2_}`Q4n&Y3@7}=I zELZxITb_L00u#9G`x^J<0*I0vTZDBy*4I9SKv##NUK|9KXG=P@sLdt4Xa8?yMvFfpom#Z)g(3L*CpSITaPBV4>h8FY3QN~DH7f}T# zp^7dh_U|a_j}Pgn=5OT@a}6e~qW>fzU<$QSCQY%J(u~)wNBMLcYnGA8lBogBqheO* zok8=`se48Ir7yEynxY=>@85{Zqq8h}!Eo^Gh5u%U9YdKxpS7T_Yqo8eC|z3xtmAUX z{-%gx?CVKuihchF{gCxH+gX!5dWh`0La>Cuc8tY_(~z5L;zs)+_uIe+;*Rh zM^4ZiT~y&8<^027_~H@kr&-37GzX5a2&yV`Dd;4<-8l_DC&P=-uxiNrV{9i#mGj@TE?l0! z@l~&DXKjtc1wOy+gPt`vFQ+twA;cYXm!q~tV|^)o%h1?F%F-9fesjB40@`Z9wW+S zVO~ZPdfvxVRU0*`(-Ip>74%m|0ShwiA9DzKg9t|e3`Si!%h&!h$+4wJ*3trgx?n^k z^Std4w!_qU54>`lQl*OX~_(8pG9RivC~)|6-mg>_^YNbkU&8QQ{SW zg4u${t+itQRLcSz<%WT5m_hTZ36z6Px;x}_c-(TEF{$k8l|1{lsSK!bxymMlcU zQiCmEGP|zLOoaJn%K73dWsr(F6he4bV)UiM%46OA%@Yf(uC#SS&VBh5(G6bY8OckN znF3a^`G>0&QA%Pl`%m1H>CK{Oel1ZCwf#-I<*`oO&q%gF7%eV^Xy(TX*hHho^K%lM zeFYbTK_^r>r*=pq{yAz&@(&7)0MXr;!QJp2q0{aZ8G(1s#VoVJF3o%(>E9 zwRR8D%k<>-`9$+vfI3wQaVHh4$zX|22@w?PQhuIFr+pu1dddDKJOCrH-po||1p`;8 zFVR}uA~F==y47kZoza?0{wCw-g?ugAr^baig3(UQn^^H7ARWmhx{KK*i);NMRmmw2 z>11?Ie~s5Kn;XfS;I760X}RENs{A{{DqA+YO2RJ4@nPdLwQIBYs)6^$UtSohv-9_F z12L|VA0;nMcW7@u`ux?G_~&ogwHC}}scy#0LHQ%=^GYyQk)-mhlUAW$DYluyDD-~G z>RQKdhsW^|Hc^LT2zJWu5r+XBLy*APNA z{*WqHA5e>c3|T*H1my4qUhUSdOON~{%_{H}=Pm3UR!SlxYj4ll2Tx_Q#xQ&DPE~J; zX88aZJk_MYv{@yTBL&;0?_=_)+*Zv$)U>xV5H^OKc1iMnlJ-;riwpXo1s{^8-Hpc$ z=4A%pu!kAa8U>ut<~0B7;#Trkn>_zrOjVBs@eNV=o=_iQW?-0)W5yIoJ~eO1`5ubB zu|9BVs#_ZO_T?q?wc=C(i_kH}48t>~CB_E=P~Si=aa}YPSyguR50$`)lzG}#n`}3X64*c2b37%MX*reUDJ-@5DKwLe8vic1=@S`aIu+T(n zT9_d*`-(F%JWs%P>CA0)Q`BKR^jAvrMSEZRju?4(ua>%%T1W$hDfjL?trxlkXR~{Q zRo$vAExwkXQFTG$Yd$@@VA+>2XZzli79g_e(+K!k>^wo9HkXY($M9q3J4v0LVhG$W z6*ufv*vG=uOLc#AHoSk!UHtT;0g`la^|E(ln#iYT4pR6w!xb_^X9I3jmQBiDk{dQ< zY~Fi_(`Y`L8PSp>i*MvSnQ*S;vb zVQU~5?nJ4G*ZNGic~i!Xu|f~FhnoCgQ>ipfxKo05eEB4awLH(o;ZGC?WZ3~B(oMcN zbIqhf7((3ZvR@)ujZQTX zCtA_8i@lmAqa_8CE7V%OdL-kr;x!*oW^Td5>`?fk=f1j6X0J1q>s%gvkfLtw- zDlgXHck}tC-Ntqwy&oI9>0gEK;KryCK<4x`4s@gJZ4fr;HyF`7c@RQdD&A;5Qj66q!G)R0e)-1-Wr5smDq8_m%mMLt> z@gc!pGtY~+&8im{9`ShzvHHxl=`29;PgR}G=E1Psc6raGy)o$plM~V3G^!GiX{U{p zmQ%RjC}RdmR%`5X%JtK;)VTr9duAEr3m+ZTH}so?baj&5)pwX6f-kS9tk zsr=#Wcv@zIpP~K-SLhkFAgN}q@H_ab?tNb)v9s^irl}m2+Q_MI6;edU=jn$cb(ycP z(XJW=CX$z8>0=df{(C{5MeY9yk;EPa!MFwBs-$zQZ60vBb~EX#E@-`@!X?Fy7fCr2 z3r;VRp#-1vhu;dN^7@+~_pREa*!jFA(wl<}=F-(@S5y&E>cOa;6>s!NiC~5u zJf7-#Nbe^y@`H7!+iio)Y0zD&v-rHqeZ$>yPXAc=YW(qaOFJM95EXSQ0rrDQaW2I| z%MXy^Vf&v7x9uUl^X(gDxr`G|FQxq}m{uCgyq`8qF~s3& zr+ZE3TIY3xz7Lt-DhlnHG8m^IjDp7u2YtWZkiVO+E-w~J(!ld4&}B7Ag*>|uH1f$zkjgctYcaQmT&-VJ@WGl zh&@A?cD7fSvNJQJx-n-q#W?nrZWUq}t_V0WjD+i=ZAr;@hv(cP6i!Gq>LgQN2Di}G z4;ma!zw%)Q;pEC{6nxZ400zuvGJCB|s=q%%Y%k|bK~I`V%x<_zrx~&qFDEt~Ln52+ za;kcBjxSafcqKRKtk;qNKLy{c3Vv@Eyz8; zWfKrjDBN$;Z-PyHDz;bnT+=?f?6E7ul(s}H&!8ox|H{F(+13rJ0FxWvH|-vGWN%c~ zkodnw3+&ZiM= z&eP@xPvB+#_sZMViI1I~eI?T4ex-y7v_6`_3Rnq3%c+Ws{wJX`B4A5*vFX;hS6{Ij zPo+ofbn`#(B|mrqs?u6oLlgi-VulfdVqw1pR)F49$fw3vi4roAAGQ$zi6VS-tF&gw zfpF>@>FI8kuc9LKY?o{{rJRtO8zuS&4(Ad_l~6AvF_^TEMed$A6je%mk+r?QP( zV~Vk=xp>svaNk1&A~j@KyO?TeUFag;aLb+RYWh7iL}j3_RQ!`t?LR+N5}!9S53k<* z><;CS$Xd9^RJM4ze$xWxX@vt47HA8y!Ehn$)ap-tSKUbAe;-pr5cb#I-)OSZaY_=t zSSq{s3_xLM0e9<$bR1{76OGVpbtcJ6_K&5hKRWa`zWbG;8(8PH+=|vh$-!#0*|4ns zy$G1g2=pO&!UPp;)nr)w{eb1`5X4n`*aYftvb;)^+=1J99-EUYtDJWK)c!xMP<;VW z#+jb?^R2?R*ivTsyow&PiPqC@?4cZU={AlQJuc8|&NO3GZM)P@(@){ApVaWcnxdQp zyEQ+Jy|KJNF@vox-l!Ltp8P2LoiFmAmx+UXo$WB)&<2CKlUyqK8!XwVew1KKqC((@ z)Cc@&w}tK~_-nT7QB0}Qn(AdpjJ_hZsKgus10*uFE>AMAgKk~(KQn_NKe+QjEn3+v ziv#8vR`ci;t2V?7agj>zAbob(qS|6kTMM z#!kj}`9|0bh*z(x`?U1kmGx~~79yMDP!XNvU_Y_Sw;I`z7MW)mK8r3-tGQy1(|w&& z++n+BnN;BV@V5=R*?*@o~|(UZoO=YStURNO_h zlc2kdBl+1v9j(Npi0`q=ov1$g;mE`tudB!Uj7%Y)j!X1D^H#L4zc6*3$ zTvu#utZR~?#yXVoUK!B{WiI`nwtXpuy))4IRzn5J*4!078o(&u*gJ%<1VR}qNro;S zmY1}>&r_laWUcO{Ztf&uI0UjcV!o4a;w0mJEMHeeQ4WpOS_FC_#lb_Umg%$zOWs|5 z2!=m%hIpAbGr8pEFm>SA2aL;gbbaBW8TgthLzX{-M#eKw*b3L=XbgB&C4q>Yzfc zzUH{X3z}%%FE*jBJ_9h=K+%WIEY-JKdup3#ypJ~k%tJFgLI1QueuOB|5O;OQ-;PH% z&0@O8M-lP05e>bjvn*zNX=#8DO;)3RRQLg{Dc8SN9^KZr5hm5`Zh0OVgau593M{5J zn2cz|emR8RJ*oKNZJ*^xF@HKB04q~v!37(;kvOmrO@2@QW;waoTVdQ?e&4?p4Yucj zvWSTx9fC=;heg594FZ4}eMoiV z=L~f-crU5CA%yRovCdKQP3irlhUBxDkds3+LY-a54ebl?Dso0LmLR0NMiPCPB8=Z6Z; zU@wzzo621OPvqiFzR&Yqx`j=_Up}=MwlaPOx%d*54-9MS0@fklbYvKnss+Hmou`U@ zt%Wp2@!p#2jO`TdcUv89#`7X}EoYIaQ_C0`dj_iT!6lU@)iXcEjm0KmTY>rIxMB znGiTn3aIQm*B|(CDl|l&XQHY$lZ-#_>7^rJ6#i~(-pxktSBkBf*VXVYbV zmzDP6HfGOsN49^nju3O105v8CA@)i^3@uHUR4nP0NHru@V?kO3I~{L0#Or3Nv>u-c z~t586?^-16CIqtpGYaEYwf7toO&+GNd;+BJ|dN5FX|P4y0Tp5mH5WTFI@vdqFtV zPWX*k!N6jG1J!K@86$ka0>5hsy~8ZnEaspnv)aXbkRIB+e87{FS7zjN~h=5JE!OH^rgp<3Y>B7zuqP__;3YI-b zCFx$sWUQIzi6f`_e=S>O`a4dEF}Yzg8nj*~Uo>(xnXAz> z_a4X>9dQ6IAa1eW`|LMa{rK_bQD8=KAR3%ECr)3q;q3B zc`^O&b+zLTC?J2?D>*w^6JuWHGug{8k5>(pBLVnvyIX?uEU*2&@bo4sT(o)*gRqKS z@0Ne0qUtkZ0e>gx%xo%)HSrhYcHYdN@`Gen@JM}818tSSv<;!JqWOHgm~5c5Uy8bf zYf(tk#=chrb(|)N%!*5+-Cy38>LklNhu6$(DHS|7p>Xg3VG*g|pl|InbLg41GI3|I z!ySdPR|5)9H?`U4F!pY$Vy(h$ClITg$|O#F&aV&ol)#a$DC-`8cOHDA4#NL2kIJi} z35ZQU!d}q8HTnMaPkSnhPi?wH0@RXsP6=(Ek-bzlx6{j#DbI*-_hsCJMRqTnrX7C_ zm#3=Q{8RvK5_DwT`YprZhyO95@e|x>eyp)(nmTB5=#aQ`3O%X*WEne3VGCfg+uw*T z19hi<0167a5RG+wx1kr|YkXti0b}&c1B(s2U4Rs7%mZ{3?qR<_Ooq{#%E`M}L-_iU zFQu=3UOf*G;Qi3D22nd?I~g1e7F|ESr$4+RbzTZjsZWP@t2L zhce&Z!sQ0pPMb-S?Yb7)brL3BT-vmN4^<|@|9(xAOpv6961MX(9a4^j4X>?I4%vy3 ztXR?2WL^5+M$ASM9yd_&45IHR>8_3r%50|`$W4e$=o@Ag&r)R3J24U2?O;NVLo;c-C*h9*Io_luin{z1bxOe{Te=n=ydTKV@%VFsweuXA)r_LZ(%8tnTunrAc0m*U z3xJdF7B&+`>$TU>g~Gn2c8T|p36Zd?ZoY=$wIi3Udqm*&;db^yoz5*+Md;Th0itfc zW?zuw6JnhKJ+mqxCcNeLK-!6{b&odi!XIdSt(=I+YmCN$K@?@NdFvy~N-X70t&7!z`Q6nq0Lkt+~)2B*V4eO+v*V z4-qtt9|e_qbIDW#L%+vMf>;_Edr=YH_NNuENIO_En=>4HRw8DyJ%^@i*1*N!c0Whr zK=J+b`d&dnmcaSH)N#^e1#X1v+{O9kCK<^Li!3*NwfdnNARIJv>My4{U8CQFH}`JJ z{XLEA^Ltar3hMJMY#bGvzCV5NdF-}bG2DKjbL|~Q9WTCilJzeBA?S=EPCPn8(lBv^ zUi$%SK$kX%0mtf(xsR+ec^R2|)@%Js*R~jFnNt+O0r8Ue zdVwQ0kE^h_KDbvUQGLG29&D?g(|#|w;;YShZRah;(+bD;Pdx0p219MmMirZjc&qT?)P~M zLv(T4nO^>c0BI3}p+&&u`A-BBIPa4qtSbV6*O{m<-~ghouJy9#P<72| z(yRo;9VlqV5;PG|Zz(Yzp)L=)Kf}cHN9GElR}~9vN(t+~TP`+uVI2mvTXo6_{@5{0Z{Po> zD+O!X8PX(iT`ccKgh$4w`(fTJv!z_>07EhR9rYR!8Xb(i)-7|SD8_G>C`lag#sV8; zuTSU9M5gMKn5}P+VW*T+(w5?mOpB=bvo-8DTHy3XqJT+43fV6Te{cY z(o~uzlOHq`RoM8;VBvSSn9f40?kYAQ`cXIU23U6qtoYV>=t)D7B3-gG_*JjeNs*c! z{lEW-;r<)Bn1PW?JtoZa@N3$^#+|0hR;R-9A2zxwS$o{Ydjz}O3C$7Sv$*3MZT^WM z#qE__)#$E~DiavDvG0-g0wONh=)`A&>!g*Cc0GJcaAM$d|CpfgNrq3~l)Q#(<~2aE z=|m20v2?jte4~7jAss1ABcFRSHK$h>0df@k2ou_HA?=vDOCquB&%8%6%1Z@{H=i~v zy1fttQ{Ws_ZLyR<_{TK!Q78n{P`x=o)h^=Hf1w&{7N?Ttb*arGx|(@?t9|I{-Li`L zWp%FT0ids#T~Njy!p`3ynOtW(oz41(x|uqn10#*2E4zQVxsT*;{wu_q>d`0#w@dG% z*PC+)@rQ1#h%csBev~}*;BGFEWJG+_UUBF)6aC}?imQWQ#&qlm9o{yANl&Y_;ne-H zUt44sABwbIFPDv_QSFg^2;88qUb7+|x(+tX9M3XQS-1uas%0zzKIc0Zq3N*i&GmEq zU=rmv*(Wnt&Z=K2+*Eqw#-X;`!pHYisT)O(ciurm$-Hw4dAhk!(ZBdm+^H-$Sq-C-*zO z!KU0$PyT***9s+01R(*Eb>&ViF$Ykc*9&)eiMJOmxcpX8%Af(MPU z*xzv88nmC<5!cAL(N&wYP?Y$WlqJ2BNrso){qnUW@9qWE*>-i|r)6kk_I+sCDo%m< zh!=cCV1M432N8n_Mrbf^87A8aHl3K(di(gOl$QLrdPQ}{pfhbHP1@r|qI)_3ZJD}r zDj?&^Vch7}Q;nt%^SFct9Ijq@L=a83eBj(6=^vwva{DB_f5qsOu3D9Ot;f*hEryRq zM3Wo~N^!ii!Kh_kwjIC;Rol}&RXaBNHmMG%tswrC(Nxg1S zA^CdAoae-2M$sT?_ZbdNIm0&s3tQQg)W*+e`g#LHd}`bD+#eJNp61_A`FO9GsO1K; zDg0_Cs1z5bK>pD?0Z=GXHWKO7DF(33C3G_9r+`Mm6?bmGWKn4B0=K`aYKVt)taVHf zpudL|kdM>Vs$T9|nL-7KNtd-tc_`noWWr{)evmYe^>h(53qXD~CNoTg(Kwv3t9SaU zEusm0`4Nl0Xt@h}rr_vU zs0Ff3B2@Kh>WzC={p3UUHRg0RrC9|1oomny=1jE9j{mL^Zt``?xQ$dBOy?Lx%;kBY zZ-Bu;@JxE2o{=lfY~D|RPe{o$HJi1gO=4nveew!;2`;a1Br;&C8VyG4YyIaZauy)B z-&MH36TUS_&3Q5IT(4VP$A-@a6vZdTK0Npt0f1%F`I2;HS~VeXGpc=RWoagl6~s7m z8k2zHO&LjDY$6n-t`-*$nG~P`ku-wU<4Odx;Do!=pAGzqq%UG#<5xuJs2c|*lO^ws z{rM0m!P(S5R9L@EqCmiQUMTzs;^Kp>gsVrc z_ODSd6L+_e8S4`F^QKqxl$K)wwRyx{giMwfRkyAOW(U87li9n8S#yklZ4x`vk2~&t z1+CxFPJO8*r#=cg0-a5!uLT-hgn`b)_IPC#yh+#mb~z&mO#$5zX|A>mCnGK}wDqF1 zU_@T_{P>Wy_hI=DHsg&$S zkIVgN5tUD^do-9N^P;BV$>QsyOX#*E5>>7#lBWc+oV7J#@Us459l&t)-w~`Ny7!vX zEqd!a(72)mWKv6wn)4&Rsg2#h2>}x)XLxiq+Xq1*bt`uTmmM^sH6?d0dXBP%o~R9ux#!H4nNi7)7QfKkD>nr-vD+xlm2I&qI{#Y)2KT}Uwr3qTRS ze$qq}zibBJ8al3l70`7vObqL^v#CuL0 z9_?*@AmOBD*q86(0`qT4M#H#4XZs;q-~h0xYjf{%dY~jDbx?YuUn=VzL__^$%poRE zUM*miaUoVt8mql=_^0gccc4Pp#}M5E**QDOPQEH|r0P*KRf#=6Xa^65Czmrj*@?uX zwBoY#LN^grufPD%$#hE zXT~!=+DRiI(hdpehJF%4qjIw=uvZkii5R~I@65fj(~>^p&gI4rGl})*y|Y!x#L;`) z3D0J?XeA_se(a*mN(EYd0h_2pmp~;K1N^>MnS9a5fK-kkBQYmwq%UM0cUEKh>R_04UwN-mx2b`DZ@h{b)%B=NL&wR)*=l$uM!} zw`PRswt@(iTcx{u^k-lNgcYo#&*!tJULekFgkzp_)=7DFU+(^x^yR;H6?niP*Q6O& z>!!-e_pezEUl!9K*bK9C|JU<*uicr5%mmUrtUIn*qnK3X4=zPn=?{HMjkx4ojD}<| zt#EL|>36{`{s;(TFawEpQpLJm!9P;3x7&o{Z95ew z>enE{guRS{0tq!J54#5DY1IbJyeDVBxT7RlDFKArF z0wd&|S1R0&BNo#B!vt@K&6E?Z7jC&N2zv_6E!-bZQJcm#meVg}GnEKA^mB3j@Jp)1 z#`M+E=t;sy%-L7Ae!i@#_y6R$C9IU<|GP#{`iqAQ2LG+e<1#qnow#$=a1!64O?*mI zXp_$-PclWrOH)nu^6L7ed?$*yOsP02x{$+`E%PVbcD}juqc0p)%`9X}_51z8iuMSK z^6x6N&?=E{(~~nLGpHBjG6yUz^KRtbpr`XdOOh3vQeEVcZpU93`N3pfdUlf(iU`HO z=%kiS|&+dV5^`}LgCJ%y{Wg~0h1vtk~ zG?{N5+?4i{FUW=FD@0f^PD8ac3UZfb&9|4E+ek_OCRN=Z#Mob5cG??w8H6C@fH1XH zfKadN*#C$6iQd+I>`VhRD&p%2nEzb-ieCo-Ejb$IW-H~k6k#Qh-J?Ov(o*6%5 zry6MH`i!*UHHE^(PwJ1&Fgq!}Ee*S{ozvPh6?^elrcnZmdIPK$fwTZ`p*k z*oXg$xg$2uoOFWB3Fd;KCb=~KP;P2wPME_fa)w1YhBmao%j|j0JNH7^2m~Z1-TmLn zCPlve4|XzU57cMGY!nLvbAp*Wa8kAiwjiaAU|3i&B_XCmGcWALBtH^Yv%vttD3RvU z-(z7oqSOy`pNKnwE%X=I2ojDEHZbm&RvKXJUuw>PIq`Fk2_XFQo{!#%*;%5_b(sQN zX3~)5<nl}_`~Z*boej@j0U+RluT+)5ty*sG1b+S; zNKJVhQT+Q=bDIU`$je)e?&$NF&j@gxH7G@_l8K(MRozh;Y^BTOpRgCE5<&q2|I*(IGDt)TxzdYoEf2wwkHW&0c z2Ee+(u2$@}Ul=g)Z}(?MEGYEoKNd8lmEaJ(YGFff!0o$Q-IgqDIt8XJ-*-GRN9-0u zJOy5w1|0v*jxh_u2Ah>)%9;1iZ|RJK8&&cPqDUSABQUW~P{7=MTl${!UD(lXq;HwTMw*rM_8 zU8&41w!a9!o3tzTSgLe8-w(<^F=Do;&AKuL|Ge0kvp!01^l448Dbg+lL89G)^)Ube6KR$Ftu}su1vX9kt1{t znbqnFoII1(GbwfBnTdDrD@5Zf&KV+Vw78VYBa5ohN+!RUHQ2Y@s|yp+k+m~#*KBvD zc5CC#j|+$rP_yYXz`S9RTpA;LmOXscE;wZDoyEAY;5zeim-(*laP&gAA}#vjO~Xa%jXOS`9E|yw;P879@2>}_+zn$ z0XC1oriFjJEblH1RTP`McG7wH6}>QO*H70L;^eSLlHR0o3dB+)c$J=8-|}1ldm?U; zuKMAu80D~48#w1vbpxcT{{9PQoz}6nEV-i>lJ*axT2^P=Ot+ep_#EY5nd${JRKly1 zz-M^3wN+>s5zsm$RVAZDtH?3-lxY)24vUYnd;-sH9f^k+PYX|C1NZaqHn)_JzgcT; zYw8Vp4)UBQW!Rv8$@AnL@er<*+~MpY`rx#3J*n!?n(-tmEn?)bs~|snFXb-*M*CVr z&T~rc;Jvhu<138){H4};d>a!%Q<{HSQq>eZQk;wZ?7#+PaABePUyn&w}ZoG*S@tD{L^&dFrv?vit>Ry2iRX@)`N*XaLIOW{NP7nEaW z5^E?2+v$p5DO(#e>>ba<@A(rG#S!jJ;k>W7nv{>moW3^V&A2y9o%> zmX7fE8FRO~MyG(Y*o}S@-^X~@nnd}4{1W@!q1vLfPe&xk%w~sy_Qe*$ z`9M1R0S;}D5lJWS&FM`54>%z3r9pc1hB~{V)cfZ5&}+9p(HV1)oGD27GET&U;~zQKF1P=^jc*{lR=S=8N(u z#{M*EdruJKKW}R0njua*L|i?dS78E9rikuzyP1d$ofo#sd45Ha1%Pc9ivk^|g7_2On~8i~)w4@AD4)Oqxk*hC2oMOLr9`$w`^)g# zsgVV&+9o*xytedX$|C)1A+P70wY9*1jeh^RCtXs*c$n2wSCf3I7nW=((<0pIy?xvx z4zZmYc;GqI_vNv7UP;Kf;fVcJ*g&Pd8%i>rI{mhpG>O;`$}iW_gQO%4!G=Moz3 z@p>%ds%A4Y;?PG{SHikgf=&zvn=JoxiGCs)w;SN-AJfXW9sNoc!b%$Xp<-xs~$w#0^UMeorRBMWa2@_&FI+g2Y}El%7o1qOlg91bKz%GICLH?fQQ_ zy;VRQT@x*e1P>nEo#5^c!QEW~1a}Aw3=llHLvZ)t7Tn$4-5mxU^v?I6d(K-w^i%KN zwQ8-ZTGcVJ^5lbr`jQj(l}JQ=>g4VAg7-t{tvkA8F3cVAJWQoSvIwWSgj$Slh4QiT zNHkvABh<27`iQrtY2K0+W?@UTR7BeUzLU7~xg4?oub!~6JJeNNh8+B0BviCVdgay^ zq^-s8^7r>dt2g&>4$@Hu6(n7l&~CgHEf11ZO@VE6E{!1M4p~z>nr{58PQS0w=1s+% zO*TH`vlGn^Ef*29FMh*BjJZ&tw%wCdY5Ss2_=I%mv1|9cE1a`2UE8ZS&-KMPkr9>l zvR{3=X;i((4n?|QZ4`@brKgRdpw~k#Gp0ndCw-q|?~bO>28l4Lk&4O)re3jPzL9r) z>TY}ZrqR#qSVg1aMS9E4K?+pO7=qf*fC5;n_t+5$;>^zbIXOO0$DnKQC>gUZofQfv z9XO0+e8VgYdxh^G6H8hGAhMRad#hdPZSg%IVGUQdw?Ef-$|cbwkUzUO7~_s1l>gE#^wSPV7w9omb* z|4%)15?RwD(N*rVL}V94+pNtyxcjdvNM@2&D``sRJ2!W-M}=Of64OxyiF<`2%~S(i zcyb2wPz`(Ff1EUHim&%Og#u*A=n%5jIIs5h4js{Xil-FuBW)`7*?mq+4Gz(*wm71u zwYFEp*!}`?o0{tG)9|Nbj?6VQ1pR&tK_&w{o3q(G*T+IWwas}W)@Ky;Lxx9nVa5pm z&MmQ)s6o7BMLeXgDi)s42#GkRHz1hRHHgp(92=$O^3^S-pQiWLW0<09DVJk zcnzw(sW+SIMg!4K_6lBGC;~Lv;BcR4&YI06MJ3UPj0|Bp#r%4?t}`PsLg z|7N=XXNmeFtsWZ6$!6kgW4@4pEvLte*AjcX9X6%UdnrU)NQ~;L*(bdo6CG$+%%0QN z?#5thEGGM>UT@s)sx1wYRtzpoJ}OjzOExoS{k_k=rvn}6voefib6(Rwq-gMXF|cwq z>=S*a#$rnn3nc4^SXDO{?Ilm%rc4@Pje2&@)eRUNyn3fEawy%GS%&ay{MK_N%{t&V z7QK)$Vi^}LI^o?Wyxu_=%mC{)$atqqklkmHwUI#dXXP&e|H%k~jL^?VS!+vk%h8M+ zMsBiuSnMffH9F|fzA~ykn0>lg9p#*q zpRbJie9Ur!CDubuTN=xi+^C0)9?kM@8y5-M8^`??goFe}o{Ja5*TU7p@qRhcSr`$; zKXKfUCxLJCrtOa<433dago?cN9HT?U;{nc(SJurlW~_onXx=u1?!o!b9_#k^7~u=JsRh~UwmlQ;kseZ=yQi(JOxPi z#9KoLgd-o{y(r&}=9SD0j)8)}72W;NvIyvP+W^OZ3kLyCy6y%EYP6<I;^!-(9(R2rw9VK{cQ;@evP<-D^agg;A@i3dH-#DL|X=gN^>&YIeM${?6d1p z$%y`+2{9k)8d5iit3VhDcslOt0s0y>bIE6{8?Z6>dxkie_nJd-R{se;en`9jX<8l$8F_o<&U{9G_-Qt7 zjF)FU^b%l?d&^r@*GIf!5fC9(&z<(FTOS{zEp)~#^7}?79H_hM+qAb(GvSV?`Dg%X z7jca5&iqTIxHS)5&0)aFF~7n*!Ek{O8Ec%&)P@3!pI{VaouxpT|EF8EbUuxz-GLaZ z3oYLbwRK#4v|uc0_z+c6YQulNmYxq`Zz^4Gr+#pCJgw)X3D06)99ri%oVqF$ba0ED z5b>@hg)jMT{Y#thyihhYXK-5VH_vD~uh+}aDUOF#D5h}&XnHZC6SXRuKTuX8HH3X7 z^cFpt;KAS_H}->o(#{u86(rL`)LR_u;i-u^s{hFw%ScFfc9Zbr8PVBbWTI)7{mdui z2>>(*9^zlQ&uY=?FhK-W-QND<#R;lH%7vH^LGjB?ko)4ML*Fr^KH}P#O@=;?L+Ybn z760k21il?)q;x*v%~!c-{W{@WeUs6#n(Yz*wcIgQM-^>#d}ImU=*nj)AswfkC;33S z!v2)Ax80mliQevV-(!p3hILA)6apy0-jfpBn7LY?yj6yAWf#^{8pyaz1jxxw|ERj!lKx4X z30lXT>28A_+GZejjsyO^LX}Y!+=>qn4D_Gmnz&!HjCqDEjWHL)P5}&cQ zxwoxrhmB^{-ET0A)ZJn9Vu16ZsVVdS-_$S*Lgnkz{NGIEPY#P3oS(zFD001(eT09V zMyJ=?*iGJ=;a7TfJA;GwZ2M8A@CbK)1;b`k1l$fsU09zXR|00z4E||Gj}p~Ak~tZp zg&i1qi6L`6kmAPLj90k0m7fny8Y*~Zf5<-P#E7Pd+zoq{3?!mQ6#R2YhC=rUGqN5s z=k=3cz4?(XeF5??=+i-uI-Ff{#(dO$GpIbXO?bBUsT^1>2doGv30*$U#^{s?-R&AirGjoIIDH zK}1F?k=x|ERl8K;IM&r0*hQR6kpR@?iKN3HNKx*C;}#Re%eQOPWq!Bdp*gsKn}XF5 z0{m*ZPvlT*mphbF)%M0{|6oITS=g_kr>)^x=JhY3P~ivdWR7y%#X<*Y=0F^CT%$xp zLOi~~(5n-4RW%VcbqC-s|3@xkXLnUW5#YbJU8=y z$dDQm(@60AJVcE{*a9!j6-@!TCc3<7CpvygUoj)h0X)sDHaCr6X09NK8|vo zv6Fik)IC+w9Bf?m_zHccO{??*f!Iu;Ryv3Qom}(dOyNo&mP=~icMvYNn5-ZXo*11^ z1z*Wq$y^x zV!X=OJ#`bGe4(uA8g(~9V_Js5y4DXn=^@>-w{=tZdmJivH%Gsv)Y(p_?1c@Z zjIIHnt8wO^k?we@V{9s{#XsU9T|r+vC01Y|#TEYYKEt6|Mm!TGD;7g8w#{?hpXf2d z&ecA9xT8TUL{m4Lo;{4ER2NT}Mi)yn9k-4&Lkj*km=4Dl{+dq1`fcTYM$agkMCcw` z-gZUba9nOlzBEsy@vXmp)<1<#Xfv@JY=due+AMscSM`%pN4oHW-P4MBvH$E#B}=r7 z(YmGhh)Qt)+wZT%U*o~pHlEGg#-T@r3UE7B`5#X@Z~v5%f;*Q#`E#4bUH(?^a$)K< zJ};(OBxCG6*73yK1V#x>vuDlR||Dp32O>1LPU7`V^iAl z#!o_$04m8-+hGzuJ?OOk7PipSI;r>;EOs(_L;;-YYnz4!q}9$Ss4)HPf%JTa1yO9A z->L|wzqf@=75f8riRM&iq*B~@Rw$l~_8tE-{3L;l9Ssf1T(IeI?du7??NSZRzGQd( zcpF}HSu8nrYq{Eg(Y^Rt?qSra(0d>V+Wl{04y2@?Mjoz<+L#7zdK?Ctg)aUjcgA1$nLmZ<7FVWQUjxYmZN_cl$I5%=Rt z)Tk8GtN-{D5=2eK_KotpngOS|Qhn(nWo|Onlg-=tO^kp+&GA1@7Oh!}lx;T^vJOX8 zJl2VdUYrwFRZHNUr~!mzp2-zGI*mOrE=19;-VIal&tH)plR|{_EswZ1VQEX@S%D5< zK)|4a0Z8c^_uv#ZmYKDerq2|T@0~+$&ZJFOyqq7EY#F1WqxygqKOvY9Nz3?*SBnWD z9WXo}arE=|;str*F#mVq3KirYyQ-)ZG(1%Y;w2KpB=PHsEK{W`<= zwn=Qc!!?qo+aq0N$0DtGLum~WHT!`%&RpJKw0=3<;E7u+#R5>4KD*x6>~lbe?k2TG zY!X8$l+Oo5JA3%^3E#8?&0{uP()?s(j&;mpLaUyrtN%BHV;Idg_6!o`6L zR_o?`IzC&DMX<<7Y)RJ@s;W-vHKMMW!-CBF*-8m&$9wWPPf1r=m=@DW!_u4xR9Hw?n!8azD3mO5rDZ*B|fkejQwZI)WYnBX$?3F1jEnMT4PE zg8DAw>a+TX+7nG`{6wD*`e3e_VHE-mG;8ceUVQGLRzdQSFE4i}Q^mZ%1BDajD{rUg zVVxESu@D0yJag3G3nZLgawXHMfDs)MFXVq z*KU)WmV6rP8k~`h<#MY0Qqf;Tqwl0^Z0%|mc%}V5bl5%M@-wZmN3{4+jjem^0^l_Y zNm|_Lv)V&`0_8QHVYsUv7Z9clJzj3|zbQnSh-wEX+j(x4R-(<@>k~g1AFdl#B%xEr=X&0D9?`{?_l-e;P}T+@cw;IQF$u*;CuR%pVwi3APPItgX8IiK7%CTP2xhKoZy> z`$$^gMLT~tj*Y~R@K!cz$lh$n&H*mJGi*l8UX(=+)cxbrcB?s}mC%?w0iVdClE*Uk zt(zD*=3j&@bYl^vZe5W9N}g5r@Y44Q%&9F$70ak=$khMV&N*vHQ=*esczicFhms-3Tv$kF!zBgbu?oPw4#Tut3ECaxvKa3$j3H zEL`51K-1+=vtM77bekwv>-s15KU;aXR`|3sa56GJ3Ug9&zWE-tzidYS9WNgr#*4q9 zoUHT)JYKZ1ZgxES9A!nCP`(uS%0JICB@Z0W&DNgMqn{OpKhGH!!}F9Z0EgE!AK_+e z8H9Awj8MnS&G4Jul1J{w@!udHZGgsB+~q@A4zDDN!QOk^4xAD=qvkMSY5S({wth%W zk~ks`sYKsT4YK<^9KXaU+ev9>p5qC#m6MM@v#$LeeE|`Hw*O=!T08KuW`}# zj#EOq%!bVgfM%zFZGpcU3}CaD8ZAKtOSzKXegUZtd~OS5s$o|dG>Zc+v5hB|HzJuum$$_H}E_6sQ|r@y>ZcL z1gF=6lCq`)_weV5)@v28=^Uo9DBJlFGI9oji4o_8PS^@(O)EH)Cn$9h&tmHIp+C=W z59cMN<2v|rErR+{!+XbP`BI9QQIaW@M;Px7OkY#c3~NPitp99Us!>TgHJ0;5i4fvq zVQOpRx5vY}xR>#wnWMeVQ9qe~P#I{1sdFo$bm!bxzuJKr&rFg}@;HW{0$<0XVZnH3 zFY#hQk6~CRq7&8z7H6l%=DE#_S z5<#i~f}YfXF(mLzCNKYWMTeZEtJ7@u#^`SPg4()-S#j04OB>QV zO*aM^Ve|Hoc0P9djrP;47~Wsj^Q+)o?=qGny=o~)qp4+@UqJ8WBLk%qq?jAhxJL1N zC2qO#18_;d2Z`1ZWRB);mbNcT0Ege4Iv@QCuB2tJGj>VDvNdWzwgEE`vt^5klk!DQ|HdDGctPXQf;NOjg;OOJE zV5dsw3FlVqbm5B}EBEp)Wr@TW&q&j78|$sNwt{v zH_$}{WnOCaL38&XHFH0ugu9zxux;=L3WZXs%A9n-310;(Qmt)_3*Sb<-^ngU1ajO2 z_NEq!`M$bX8OO2BMu9_KAb;Z%qI&*L-O|d@rw7{*SC?A@Re_S7ph02L)}@3S!@kDV<#J;G9ETG>!KbO_AW&3MMMa zcx1gYcm{mHtx@mQ(n@|8CPG9Cau>S&ya|-dt_t;~SJ?IN!*-mwJ@OJc7_bG3_}fuf z&3j8b+j+Pvu$*Zg>(?YM3X@?Cb&$)?wKIvZlr9lFoO{(W;2bAx8JomEn-!+8Ydozk zKPaxHshM>wZ!jKfC=Tav%UN<6W-%5Ak+4hbNG+-QdylH{%JdP$p+(iX-Ar5LhnQu4 ziCK;gK2=5_XG-{}{r*QZLWNGDE$zDH-YThk)vfMVp_L22vye_`6FKF_Uv3uz+0*7HI|%)bBGAS3d!)a+tG4#pf|Tl=T74pmX|*)-b|Czq=P;`s~)l zDLi>Fi%_yqSRiPWaIgJY z35_l+dNx~=X0FW`c?$krO$AG{-jXH=Po##R&|6$byeK2PfzX{iGWTM~gNfK4$SJ*#WIWr=CM2Gc?9MvpA-Axy}@ecdeQxgNj;J z5Ti{WS|g;PhvcXhG*46nU{NU*iiq`BS#@y;SR@z}p$w&F?RKnq2W<{mtn_r2A%x^+E;MimhO8UY0- z`OZ}PY4G4$+uk2GhULrl)z2-+UHCeNd*8 zb^<=%#V>6T;y~yC5f1$?y4Q061T`=8thg2+1kn7UlunHiuLk>-@lee!KC zg#)_#PkHx!#>O}T+ME(8c{oqe+@3MD=yL}>cl2UozxG2VfBPNrMCojJo zQG@!{n;v!v$qicvCGB-H)C4v=wHsJ@H=pymC^@&D@%Cf89?X&uXlNsU7lKgQmh*w> zopt~}LEr!{zJJ*TbnNZ)^m5d>lhf!Ri1={mVcu;3>SxvS1FF{1vvXbXozzU;TEU%z z)1)=$ZtKqPjhX(%d1Wcr8w*-FIsZS`x?*mMNkUCb&~v7zLfo~7qL@WyOhGZF93C8s zN|}_Ox@i-T(gpAaH?5IlUTs5^N&vgA?&UvpHS}5F3J4{h>9cpF(WIbLxGZFfOE2lW zxaVd;PKHt54L@;hcFNjQroQJhaAl?V?^0mn;3UK3z)SUus}~4o;)k&{9wW!lC;m_h zDdR+L*q%3Ws}oCt)l4TOTnOaSmI+iS&0M(%7?FB58Ov9=wZ>1m4#{6n_f>G*?4-I9 z)k`939@V86_d}h%QB1w-sVgDtb*YrKx}P;uc7s#N@KMfx>Q3Nbc1aSc`WkK(r)^PGa`yWS$+G|AH%z{IL#*6P zlqPmF`;#PL;{^5=ybG~g8XYx?nszDJUO1z_pT*(x4ST`Q*CBajK!GM+vjmuR3hsMQHtYCP)Ep8R3+B z-dhd+;v^JT5HAOI2B0kI#Mf!SquQs2UzR+rOjmge7&#JAjI}Zjd{^^YAo7T_^pLH| zzsZy_IPOc+n~d_(b25&*fm35;T-YNCcqQ*{WQnQn_g)(AxZQe!UAh{DX2H5m&f+e+ zaO^*|S6mXJo>W^ufjoUvic4X&5hzwN`aI{XP@#VNRYF8*QbS6*XfK}hV-MW;>t0}v z#N6@Fy}O>NbTHKBdys&hXwdg8 z-*X>5fQ*@CgfThc^DZg=Aij?C4GIRb`X@A)&1DtdRF8ead0+X|zK-O-_x8ReXKaPd z+$Pla0WV5RmNk9P$~1fNEdjx_OlD`jjg`!4BqS*_@f3Pn>od=iMkQQ(FyiNOJTykR zvmz>|e>~set;r5UzRTH~&((!hJ3M&ua9--atY*1L)-zV6wvBhf%?%DYo;3R(<>+z$ z{gk?ZGm$r^sVtDo?lOVWdTiEJqJ%Fi$|bs4Zu?dlb@}N<3Uo z?rf+@rRDR~TA>x{Fe(YlR=)*cXD7sn&+`L5-hIKxE^6=FjIsOZUC*d1Yl2V&u^}^G zPi>XI9wtfOt4}Z7@xANi`~unPyX9kc>^e~W*%{do&@3D5X=(1D5Hui~Elt!{9%wWc zSKv1RfWnrCamWc`tq@p~Bn0t2cG0g)>@4qiL2f~V0M!d@N5^5=?lrpcA4C)?jZnCF zzrExIXfp)Xo^Cn_&uC^aMoR?ao(FuK6bPh*Q15|lE}!b8at&D&iqw0Y?qp9r)=mBq z0LYA!UhO)R%E-Q-g?K5;ehH{glaa(O|PX-`Y~z-*7{y#uRrZKkMMP_W)l*nOjMExiw2k|T2ax&%DY-m;s+8x z>}M)nwxQ)gjq_w{nKT@={7Y(K= z`Az1_=~6$!tF!x{;ATzTeB zOiswO$d{*jnTSt}m?1p5W+Zg8kyc$PFD^{yT* zMe@YU@ky4AI7q6j(-l3>kvQOiyn9Qm4EZgceE)3v0x0Y2R2%M(;UfDJ?d8H!Cp&c? z@s0(CdM}dvfYokv23Utu2EO=KT9+q4gb_+J&O236pI0bw$o{G+7l-f$IxQAOrjwhj z*%vU%iuRis0YsnNtmi2lti|id0ff9GRLu*dgb!`y#m<1yEkr9^Cdd9rSa)AK34VEr z9;uMNmwO+?Lk&Qi{xe0{0&6|vp81-=({L$_~a=ggE(04L#vY42a$%dgKTKLlD^ zaQCw0x{%GJny^5>_uh)__^I~=nE!5}v3WwA{lHdGHrK%TVvw2@t)+R~Rr1Sw?B`2p#Q|+24b=;QqI9#; z$@Q0$9o4Y47%@_eZHcpa z=qiY8m~+M6{^T$^=Xfo2g6G9PX|lEqE+qbwZt)I#FJ1TwuxdFpI)mFdAh=m6J^t8+ zLs)jW;?iXImr%RxVactw8t+{3n9XNNVN}FKd1@Sg%Wc4bZ-7{%dWvmPxdo7fp?KBq z4sU6bq1|03cL+nZ4zm!LQaqh6kRdkAyYiU5fHITCDPzRh7^d|eWXZ&?=Eq&jGH@cH+QHXdllB@i53l~WVaTMMUYUD?pw6th)kaF|H9U@8z$t8%>?FMva zC{w61>l7JQ4!>_w+zsD)VEUu#5x#U->gA^%Al_laWOhUpVQDTUiBVd-1is{-+RMfb zsoy@?FrGyBAO^qMB-~O< zVu9m!-u>VNqOTstA*gwrA}&dPicoF9(>(HHAJg4!AeqLc{h(Td-yU<(h~vBCIVPFQ zN$fxzj!+`oPkWQ%4Q}Yi`%BnAua?u%zHENA03H)v!EJsq^qkq&o_Pt|y!!@|?O9ZH zqux|`|L4Q~#LL=eE&*43c#4&2xOuac3VW}ht`1s)^d9uMcGdg+RSD~?lihb|2N=b4 z6h{H!xm$XvmC4`UI;_?}BE(N3=dQr1nkz15q4mr--s4v%Wla3;{MVkh7gsVYP*RME zuD;eAkcA{?4*LGbBQ;EB2H}gK{Ae?mh7ndWnTT-`YTV6hLs||WLRlFtN4Cc?{J8#b zH2zwpx?0riKiRC$>*B3hHzV-O|1NGV6MyomXJ>F>-AE6Hx&NsDOse?v*Ao@-@@U_q zA!Rn~Zt)zVCOJhlgI$wnVGpllT3U_z#9uMiVa#KLPqKp=9!iVBK&U&)Q+s67kw{im zE6F;|aKN~mdty?dZ3Y%7PLrD>dtb-|DCwFVY{~V(fP@aITAAk$@K;^y`D!X^Q1cUg zCS(5#E1ncn((p=Q<2_z+SP~5;yD2vyMdBmd+5$4=kdh^t2zKJiyS6D{JdO7RzIs{e z6_0+S*|i&OH-}p&G7yqsMl4p|fofcW5k-Ack}rVZ{i-zng!HW6BPwc4k+)r5TeH+kZUK&QvvC z*jU98zoC1DBmsT>c{Ts!ZFDwSEf3pAp7ycuLJz+qxJ?e#V}qdCn%%;?kB5JcPfmWf z)Jgzb*?Et4urIct ztN&#`6`Q%JAYgVo<;s(QmUFpsS5Gj?x4f>J9hF}P^;w7A1YlyskfBM><%K~jqeCSO zviws8lcBe1WhgzFVeO+CyGLZy`$0m%aerXU z^q`4sdxkL}4uqIn$X-OOB0t7C1vRQxhhqcpboC4wm z*T*ke`ZyEUI#v+|OmXAxJ87mKEXb>cvg=Cz3m1unHN3ElksCPkEi#Y3>Fdj@MB< z_4PM$Osx{IwlKtCw(}LTtzBd4rK(R4-O&eXUwlk*k5heZB`$h^?zwHM^}tup*e8_H zUll9Nl&>YzEHh3N79ai6@6$ghf3_E~%dMQ`p(%0_bcyVeB{wy9Io!M#!7FC>Pp-jY zu<8i+8(EAtH+F9RpFP<4`f(B|VbE)Y0UMc6iBBU8 z8onhy2Q=yiLc%j~Ks_co#nc%6P>O%4m5#Igc*y(;`G?J^{gcJEkYSIZS8(&54EaRt z_R*^%$xS9+nMG(lo6old(b6J0$eYZEn&s6qY}A@>Ad6)ceCLa2xV3J~QvI4Las6!8 zF$8+%*!JSES6xRQ9!vL=G0=0R9@rx_MKr*|szcQ4PV>D06tP~KQW*M@U+(0ET$}CX zEjNfDd_!w(rVc`k3HNGBe{b0F9f%A)6G?b#zhWZCxTQ74T=Z@*r$GMK!n5zqf@tE* zjORXNApYvZRKdtdet>83utUVb%}zO`&3or})M4f6mC)*e=Y!wabuS@w6oTPA&iY9w zm9DrcWR+fX$=+!CH3B5C^ly9B!1Mqh-r zp9>rcHA{R={|@rlfBA+x9Ly{CVxAymrXhI;ejjM$bGDN6ofCnBG{e;|pLE#kC3l6# zc6~TR2A)^ep7kw!!b(0OGfXh<>I9XLW*-}JaJDCsh6E)RLJozNn*lp=UpriN!`f*!Y2)zP3=)BbmRSSXNjI{U)$ zX|^F45PfS;{_h@+@ApuH08vv)rAWU8WbcjaCzZWd zzZ#;STyOd@*GP7mw;wq)SF|Uo*1l9KW=>19_ro<4`Fe`aq>sTYAXLj`O~LCx;?Op~FLfU>xnc}d64 zRNKVAGGKjLb{fjzswWY^+eLrS79cw(lZM!g(Vs3|eJ78>on zr{oDF-$~<-2n^sdUWMZpw0Ex`0GQUo3BghZH zXMIVomZ7Kir~iK9k;z$FDcO>9%3}x~WsXI9@A4nPdGKT+$dxB77g_*m>L8L3^+}nG z@l>FMKGkmJXXN!ig+ebA{xz{^6w$G;#y#Vd&mprQYqZl)MJ}xJ1|eGaeJ(k>hLYdX z$=hAN|7iBcXqi8VSeUosU+gTLjNX5GXuSh1Rf@$2(ZA>Dz)*Z>n3&8|GxY9MG8hKb z?snv)#Fgaeu-WkT-5G~d0&=F~qLzF@v*}^4Fa`PqqMIroy;%1o)*;}gm%C9gPt^t0 z$jy5-IePb0Bh<6B&h&x**rZ+cmGwnNq1~P$y9*ofN!1AJ-~me3*v8r(Ssip%SKm2K z*GIDk(0_Pncxy;+rTvTE2BbI-M~}h=g$8|0V8XO}RvTsXm{rx+b^4OKO=;H@_tYVy z(5yNVL(Am)VDSCDst5)eEb>^n-?EP6+dGLaMvKZpi*V9^8&FBKxnun>?HHg*HEMcA zwrF>l73-!_=QWotqL#R>aIk>owGlS~*1%$_dAQ zPD}t54-O7{WhBZq1x2BM5*}4G0{uz#s0t1AqB$jqA;>oSruYo^yHkTXMi~SZX@jiK ziUg+0noIum4ZaG!djub>kS{XJ{Ne4Ok{z{mid*VaN1}m11R4v9wZt-^kAn5|ThX0X zVG6ABs`q$h8-(oJx-ndvkRj{rx#hB8?6SieH4J03 z*>LYhq^Xf~ELUHmSaieQ-f^UN4i5Y@B+8PwSKz%#aOKp&EE!T_brCrYl#IJtd>lai z8KA6P-p4@G)m+aKcCVZ{?HVw6z+d*EXe{8ZJlyq#Qf1l!vGmd_?j|YjBe8mF1hm@3 zJiMZ6B;{cc*&!Sw_Ccvy;x44Q=zdxP?i-4%_UGnS?dc zk|5nWD@Ow#5sqp#5<$qrG5jZbn(9{V7;yPN!SS*AmE$oRws`q&a}J??s*pPAxERj-7 zA;INxV+J+>e{}BYb)kT_mznEZ{dk_!%pVyn%w($LVLT(vBLD(jx4p-~uYh=vyHNm?{}ivWuhz)ZKysz7 zfU&59L+osI)p0X#FXk{6jNxcp)Yg!tLEgi|?!=x0I8r7Ov=tO`MB%br|IJ50gkK%r z*s*(jIbrPg;}00)a2TdxF0_*}*z5?Q-k!gwL)i?n^6^o;THHyw`D;9YJYvW5Qr^vx zr(Ydw8^OOwk0T_F&iJO2b?onkTz7fD$h7uhI)AEy36Ll&R0oCK&pX{S5V}fdm6X-* zWa?>s7pByePO ztd=4`Wr3F3#T?T*^rlxo5Bj@i(f-L0@dP+C%rT)*hx@BFLeYUvPCKLj#o@2l(V5Tc zts^i2SASWDxBg0W33N^p=8Yo8-Q@UtE_AAQd)?R}8&mJ`10kH!M3|DEr$>pXuN05! zE+EF3r-%a4zVVky*}kF)uc&X&I9L{q#Fn#*67^y1vMDahDPpxRs^20j0b%(zh>~9c0`?C%_D=!IUborK4Gb}cEYe9RN+{+<(|Y+^b0Ghly#pd{~$b$RC=!t3SKUDE7P7~aN2msNNC zUBCG`cBiuhheZ=OtlhcQ=hzQNVaWc5rrL!iaI%pUafB%=AB?7&&O-bJWY8(puPk*J zLISMU{SO`$F!6s;lNIe_6V@pZ5ppw@*6R&P85q1nweHCQB|s#%u5rP<>R;UGcIo9* z7C3=9WV6?Cx(WM3HDKWEtMd)U@^zrF>~zH>nD(AK^N~V0)}vPrw#ukz@9Wnop3;7y zb-3|2RQWNg>~u}V?``A;kym4}>kK2+tqreo^iu~PQ-oI|p1aqJM9KM`*SQhmpQAQM zO`caH} z@>Hd)^Fhd~4n?<#r8(L2o@ece_1JgXlgkU#V^0VB6WXdM5~Aj{rue;aGKbClZ%}KN zI?K~x6Zn1LKvv4xox?$)2RkqFL+r9AvC)hOLek6RLUxYL(H)Aa1)a-Ueuy$$CHYGf zU4BT10cQn{V5_jM_)Px{)%DXe2{gu7T+CEZ@asrCVLyat*}2`s69@fq+TOuN^9W({ z`KyynEp%imUw&)47#A9BL$Lohp)|8mu9Yg=R;e^Q^!8r@Xt=si2;Wx;Hla(5n`fER zSybGEdtGGNyBqNhI!O|5M7#Viftaz8O0Hp}8gw|Iij|)ELwLv})%O_v<0zR(cIQwC z5x8?44=iq_TN;xdOocjBfuNY!ma+FQKe|bJ)uLUqx!4cyTGCd?O0pS=`3X_BBvRaY8w^VA*#!w*1dRE{KZB#QPx|&_4~w}cIZa#KKWrg zvT63s#1(>+bW6ZWu(#hhao;PdA_INqcx1tAVt)o!Mt}Hc$#+z7Sv1t8_>=Z*4 zr|~JKHeUGGrB`{SO-TzxF$K;&m{aZDel?0 zL;3FbVS6S<`C${=zgk)~9G(U$ZXQh)3=>_xX`|qYNGbM(<>|x7caERqNt0y38K-uo zqd$JzWQ*%})+8;N9qYCYJ@5uwydF`GJYkyZ=4%SEbnfTcri%^2E<%Jjzp4wbnNMrL zhtyjw;I~8_@;$kRvk+&aEf)v)W@G0weRP}BbXr8c;1@_NO!3>aEAE6p(cOkqESQ1% zDoQsLhFV%lu<)KY7B1J8sOoty03&iq5as+p4hpF(t4iy+rF{Vr-BS?_b?xpGQI+nsZiuO0YT&g(D+#+h0Tb4=4cg`%sQcMYM{*Rn9!T^%v zRQ5*j7Q+5D<-r_UpZE$-HzLR2X10`Q|_55JEDkqEpn*b_3|^XCt(^>4{J9itGCk%z{MuuB%?vF1W#i z%a!hU8>pX((RudCP=!<2NO5<~Z&(rxw> zZcu#g!>{J%FXpo0$QCz@R8trJ`zAZc8NC{Bu;lDaL@?!%StKXxjk4CShZx98#bPmC z16Nv^7RCY|8L|6M;ZU$Mu%3rYdvnv0Pnv!rPJeC6G;RK0y5a2Qwy>{mDQi1T*9BpV zXC5Hs|COn>gMmKI_v#rK|JL(=MRJsvrwy1@p+F*$$>-S{UB}>L9Sz^h|G>XO>Q~p( z;CqVvaI>Ap_2EsE{bUDS(DJ}e=3g)DC8gkUUT==!Kf+pCbSRJp?#rsb|e*E zO05XwpXpKPv+CvL@M-2FUnk5xYDh)wA891%;&}kt<7IfS&^&yIL;$NK&kgQ}GnDW&S zR%jWb^%DF~>n-MfCW}`gV;YW4O|?KiB2i_?M%V{A3~qs+>*NOzM!c#vUm#CHDbS5TL{rxuDDRC!7F!Tf z%(dd2c0&Yxen-51d;EPjc#B69^WHhdV?+R78BNe{a=peC-X<{?Gq0?e3|vE`?+hqbm?%_RyFL7 z2rTic>UASN=je+2&D&`3k<6Igwx`4r*3_-2nJFsU7|yj?@%+u)W3^$DhXY>j4^@?g@^Od>}J{3l||QZ>zhN zx*C&R#-C7}K9bV9$ zaiIF=6(MFy( zn;M)(p8Wc8Gdrm3L?+dC;vENca@{{ilVb(*fn|i(tk`v7C`67V%x&QZZJKvP#CbMH zl7fAw+SD@;=Wiijj3#9@Ileaqv$l)J|APu4#0m_EZjP*}@#5oT1TyK&_JoAJsF|Cp zXW(akvi$*x_>uk}7oXKB{W{qh5HvV-`=!;yye-iwg!~j&BzaqEYEcD3yaPW;(!S;O z1|zT_t5QwpeJp|=NlZ(A_vy>w-; z6XlFSdONa^g1`xRv`*>|)30A=@&V2i>G>bvweFfriWX*K=}r~nVO~juMa5FWUYLQ# z*Yya}PyWv;JFVTHAuZSOC-J?9-hQj+=BDj#PP4D9ncG%6nz$=aXwG=_;-bnD?_Q$E zYrO3@GBOgS5L6o$EM|0wz#dzh8tX}5)s%mp=t1tsBJ68)-?@ydnegy&^QzYnAy7{U zA&>FmafU5^&-xHaC+4B2lq`GUKFniuavdZ1f^?Ww^LZ0{k`O#8`G={kQtEHJtQZaw z^)y-ddouHln4lC$VA&m4{cDP8XYmeF4I68%1GL=Ml+cE==YcI{ca}$m<7YF+xv$F7 zwi1nZgjMto zJLq_PczJA#+JuF~FSQTZAibm6tYPPz5lDzR8R{o;c1W<_xF43|Iyxtc+imI>Mz^kR zG@xIj2z6^hsVb*wE3iq*3fP$MQ2;vE1+o#h-yO&_(|!?C}b{O>!f?O^5ETzM(W<*V-8boIdiT z&kPI#Dhr!`@^~8sm@vMYjSA=}@x{37zfjltZ*(!?e46Sys7p}2WR7L#|Ilq{4^wT zC;fFgP^jsR6ahcq4B-uC}D<~L)$O{ov9R<+E{D|-(=nGtVkHY{do9pe8CFBr>y zCk96?bo3~cXyjQ<4_QA3ewLIIOXJwYByFA*_oi6a>?yng08R^)Vwtco1!4Zi1ovhl z8BEKxr8QbG3!?b;i)x5xg-i1JK2>>H&-E4n-PM$S{^8-aHaFMr_6iM4N97AcWV`6* z=K_hOH<^2q>;8@E{+W5a>P+{2@8LPNKNTmKMr##CyPYsFO%et#MLek<1Zfy5n)-hW zblwW8%|J4whXU-jBc2GB-?X&y&_8Wlk|S8b1)H26lA7MHEoz_4cR%1-Gw%~d(rk3L z3@Uhep^19Z5QEcLIUBt{5-d;an8uz-7I1Z&S7QR@VH=5|g_LV#V&pcBiIRm`)=>>k zWZj0<)w4J_7Hv_WW=RX>- zDQpx?OZi=HbU&>tvYp9n_<@YMzDxRD`_g$54>DiGvn)}JuX&R$HEQbT;6cj$f@soG z=O0c*dyvmrmR*sy0>728_sx+tD$;m)eG;EN(^xg~SDGQj%hh}*6Wv)97j=P5~uK$P;Bsy?RoR)GG`o$MmTNB#jUZP;|L}WKl@?ippu)ZE+k#qtrkq$wO%5S z!9D3#X@+w(>Rn04q_F(T`*H?*y9NUrejWrilBV6jX8U#PK4y1uxx>$97VLLE8X0j8!GA=o?CzYd3EL`Z)3zF z|5GaDQE^F~$hLuL6q~2;y6irpF9Hsxuqg`Ec)gXO*30O;myl3ct36vA6qRB%+qE4v z{zbeC1DW!UUEt5G0RxCXafo9rRKf`hZUC={ZTsI?m{d zXvMa#eLVE~>_1{pv7h=y;h{TB4k0Ev_++z18akYX@aryw|C}=Z?bod(VGG8sHsl&g+Lk%_^<98C&)ghO zTsWe{JK@KS>J>(3l|gFd)JIF^aD#2m;%mIVOG1h8dMv3TD{t(Nd)KGqw0KAT+^kCK zKP|Xb3CHb^ID;OCMi-+Nl7j+{G79HY5om5Vu{OvI0`JlmVj(glzV8?h{McN5Y+LRI zE{qGCeFCvvLuXW-hJz2S${K!mdU?LM(3r8Bwmd)D?9oF-lK)(&L&!kgZpJ|FvoWQv z#_erpD3SS&#lqCF^VOH{h@;GgMf_be)O|o=Um2Fy8Fo1w9c=fxKNS9otiXf!GX{ogA;4njUOA0@_nIRywdh3MG^|KhL6wDB8uxX)21~K_CgkI`O z0#eZ$BDQN>tZC(yna}QS@jZRMv0JNVoYIAgzz zo!NZ@vsdwz&p-MI_Z|$sLWL)W66{LaIE#)@M=PIVBH36+o4POl?!`8f+)c|yJAM`D z;C212Ru}3OF?WkHael?- zfrlYMci}s8D8pZ-kWsuxQhF^)L-oCc>;PlTbW9TEXUn0PtCLW_Qjx`!s|4!lt6y4w<sp9;KK%-IIA?*N1qb<~@?k}qyW7HXJ?>}qkJH*QA>4GZ|Y*rx$~q{ntMk zL^Qq0^X@r*Opr_dj1T3!{4_2*K&`z|nGE^cq`)Ihy6xeCi2hBn)~{`2O}j-bKgHgt z8iZqocah+Xd%G3DO)5Q_hDBOZ^?|eBb-%uFIAY)8Ms4}+j|1bPN(ANRAbcn1krupN z7){Zy$I3cbswUa{6Rh?spy86FogYG+#osaobB%-NWxR;jT|gqxiOqNEd)}eQ&?`zJ zl5GZ%L%e~1M?c75%kCyef@%nv_gE?8E8lOYq8kU+wg@y{d9c}OiR-pzed02l0aVyi zU-go*6tYrdZFiej$!+THrKZbiSJcp>rS2VGuxtK438$4PWWm6~P=r;lw)EF;-e6V+ z;6*6T9bw<`vj*#>FKX=PG6(R@IrH>UezK@m0960uVOK%Qh8WOj0p20;rmGDeh0VK& zLHG*GQIV*|?lEF#XF9W0YgS*yKkA8qfiXTioYP~LKshcvYvdd-t8J3|VW~|gNWm&f zDG)8!eG4a`3vA>dWvOs4X_!M~$f@!@(SJ*7EgT8t(4zlG*l*vwBV}Q&Joc6(u3l~E zg!lB4C{LQ}Cb8mU^!uFyzjDw{WQ4rwIGy!*NcY;Xe7NZK-U%J_q&Sxb$_+k$+5n){tVl1%ctkXDMO|l z$2ZBbv{VugyDnE85d-Zo<#|5I_JxS#Ku1pa5_}JvD539@^A{+L+PNFCKI9M+er&HOl5B;Lz%ncCNB^O2Pr&#zkM=G7Q0zh=9bkVVz%K&+0*HfWeigQ zJMHGRb2dkru8qUizxgILQ>AJfkAs}ftk7J|(8?;^Igkj*9X=09Lqgo%PF`C1~p zbKmk5Ip1DO(ek`Yr`=DzkGvSsynL$;yU$At%ikk-n5WHZGq#XiF&Ic%+L2WAHp1iNE?T%${DKH z)Otem)EV5MnL@ezcvW=lR-2Y6#&0!BQEk@cX|`TmvL~eOya@t|I1DOy?-R%2w7*OV z!rV$KauRrT_X9fUs02_2Xtxn+ko+wlyQdgn^$yuP*7@zRuP@?lbt-}w87QY%)#MTC zO_qnA(GbZ~Z~Pv?vMAFJS^CIRY<*w#{#OGLx*g{*eNf)WoCSBWli9 z0`3hcG}D={GLqv)>mQI3wP(G?oRXpKrx~Hd3v$~aMUuoXa zfaKjoiWGN-;qf;|mH5-;!qv7>wn^5Si!%#FN5P>a=U@V~0Y_{09!<+=^0L?T{eZ4$ z14Ph?UA0+JVAF!0GuoFLN{AYs01cTZ;d~PS*^05XV&RY5*s@veP{(W150;u%wtvKn z!1SuZ)xy+)D zRp}7a+ZN%^j9W-ZVukoJFlfZ|RZJ@dKDnr0Z$7RWB8G0V@8{2^WCqW9vsfp;7{A0I zi55c5&RNTjSVzcVi)1T}PQBo3nODTY`>6qCa&vve=0}`!_3aNw zmn0(*zAxaWZxZK*Tug8%Vj+qh>(*CmzlMgilLc<}F{*#pl}7w>HBO>&O8#fwBS!Yr zR2F`$Y|GLZY|OcfDqOgALl|ROT}rhD=umJ5ERLnTe7#h^SGs!c${8)lN`*(ctEun; zUiRqjj!AqHK|QtvDhg~NfVXLYse#9}mf)_QQ%Tuf!RH*WUrP8&u+k`#u7#ito#+QM zk)WHWqw?RYQi=3C{X$N_z}akyJ)>EYB9l1#NPW}QaqhDo#rUWz&(zWkL9=i_fh-dvPs#j z6kfT@9#c~&2ZbBmT5_%68LQpuR((YtGsc!G0}@9yIo}Xx5RX*v3z6tR0=VtLk8uS~ zxRNx#WOKZysVCGOY~*=gXBawTFWF`I5dPl#LlwW9M4kv>M}I(8omR9O&S<_iA~Co4 zCd{w(db#Alue~Maz0qe5=BsRA?ME+>lN-gAc!6xD$T?N;+M`Mk(rj=b z&6NSY&KgZz`H>KvmErZa25e&N?It%h6}UH@zfs}o+JY3_A%njvoR^v7ct5txor!gy z-1_;%-|R&*kGFU^DUXrzH;Q3ETUDDO&3fo?4O0&m{H+|z=m0!=HYc5M2TNfl(?W%+JiMpv*bV18yK_uMDtuBlsgh zvmi97qM3=xM?05TB%x7aN`a=r+8P{?sBY#)yH)%lllH6kX?vWe@iljcT2!hwb`(0flJ$G(s{0SW6BNcpxXG6Pl zxnAa)<$C&!(E|$P{TuI%X{|TiFLF{cYW`}Jl+B?RbMo;sCQ55uf%n}hE1#;ULgkR` zWU-@Vu`O~Q2aWq(4p?VgMwfIzs8j5BJfzh%Dd}FbZC|d=mR7oTc3S4>gKK8Z)UzDh zBbxgawxoJvqN4`m3rnk8n=7#2>%=TX4_>tGvPXBTi{Y4H3z&IF&lnYjZ!sx3_{ z&bLcE$H9{s`A9i# z@5w;i9>fZst_Y8m$eL~cPotYBp*ZCJ_#r)8Vr=mOg3KIk5i#eE*CFG~pam)IHso4$ zB4JhL5i2!Wc$D#*y2zobZj_Q@X5ae@@luc&bCy>3o(fQZxJVvX9nM$6~jxy+my zXTjXaUg3gXHtPF#%_*0e1m729KMgm>7Bal6AxXpjM&5)eik*|gOcWB zL|@G2L?YjBT^4B^R8!IQcHPahZ*9%tV&TycN!#1wjQ zDb8u}9W%2~%)P(o=5Wlw%e>8<*E6*^qBu*^Lk>t%lRY{qubt2KSyQN2%1n2(4uvA- zSTJ3{CZo78V9i=shL%nB;2I?A-0@7V9+vENmhYrPZBh%WNx!oe8-gZ-L$;76rxGwi zHv4}TR)>hu$$hPL`bDK13tTj{fzQHjet~P&mXBCvar)c8a%NnlduXvG|9JC*UDCh~ z&a?>1*2=V|T@|^(|87`P zfi$Q0oC8-}?e#JN6G#ki*{l_=?eSI#yx#b1I@5hS@kQST;-s~muKhF{lDLF~kdXM8 zDo`r00bpU7M6hv_c86M^Bmc!}ypzP1UnISqAY0}U6+)gZoa5nTb#7JrzG|^+uCRXw z-7yE*HlW)#Qv29qu62VFrfDcZh-(rzk!i63!IpbTUp(v_e+fNUJN@b}O; z1*HIHm~nUBiqNvo;%^Cyhn zg2VSt^v<}c$8x+ckm3Om026`1_7vH)p{`2M_2oO6!#@x;b_6R zt&Qz1Py&RxUH%ovk4+ay|427)aY?Ybxjz=^{F*ZPhNMWExx6ddx_ZA3@B0^UPAYFT zdr~tsFPzy&^!?oCPSbY-x$Y<>Zfk30(&hnww}mRhNYeZ%-VJseyD61qVU#F;dpJKS z8-T~VY+d)QBvSfkUcVa}>I}ZW9W(r`%P{Z~gwPC+q~DOg{8S=L;SAYOlf!v!&PucK zSN%Q)cKtn{=38xe?#_{14k9S-B|K z{^U{ln+=4fDN^A5{e8M@R21w}`Rub3I)|=>mo5eh1wlHESA!-nmxH;x*B)cv>Ic`C zJP5S>D z5Kd<^&iUR|g4|D=+O`rbOcBy#V*dW`B*D!8O}!@p~*2bkm)~kg3VW zlGH)So?A1pC93ME3Jsi03&A$rk1=MB$p0AzyrO-jU@mh>^Gc&u{(BxdF(@T>Ji zdC?}_|8sbCsEU;;)?(kH5x2l_!%QDm@Yl;9Hq$inIDRhx0*o!M@&HH$W zbIO-2`CZ!|0YY+P%Q%HmNRM|~XHusEM@$QFdc0DTdjWGTkBWqHe#?B^q1nKP**Zsh zt&9ESc>MbHBeBBsP$q{Tf~XI%q-!(>hG92vd9SD);BkM(KeWc3Nv6?l%n0^U>NH0X zG!Oo&s1Qj81{VB9Rzh*V5~8<@P4oEQRxuB7x~g;c<5;fV)4j6N-ave^bvRmPwEV#? z*3Irhai-$?Wzuj|R`OlX0)iJ=yJc9|zah(UdVEyoaUkT$iq^T;znuGt!!aNxz{G(l6oxLfVf3sJEyGFS0}68JT|$ zn@volWT=f*ZTQSdKS_OFw~V3ziU%HQ?S4WG$dw-_aS{zvK^Z6>dDE4-_x5-66nNrW zk1$)x%2jNnx-x~q;t~2Q4zak2cL7g|iulHG%F6*2&Bst1I`ejJCaSelvI6A_MlLtw`_YYd)l^!2VA@8}k8R{~K_sFPx#6@mt8zsCk(p46| zb7`eJ*HuZgaub4vhK2yyS!Ax8Ggl$IWE)yaPo&khm5aSBDUp4G|6NfBr~DTVXHB}H zn@&EEG{0sny>24+i-u$a0LnOO9~wim*`Ea1cgg&;A%e=u+?z|vP5Q6OEibpMTC=D>1*26ZqcZt%ZB@XI401^|Vh%jLMK4$aNX4z# zNT&gcF6Rx5O!lS9e(az*d?e03 z{x1Dlsuu;LL;}sp$Sob6)h-3E zKgL00Oy&-=FXP;akP?9lV$W3)=5rZPSR$a?9Dx=eE_-3S(rWQe*P-t;+)g{cJmPLs)-3jfFr{~*ul0OLYW{MAVFill)v08z* zwIi^K(y7z{#eP@(v)KINqu@7PwOL4(bOiOOFa7WvzA)Q)6JcV|&p`eGuHdgvD;Nw< z$ra$iYmV2O4bq&swWeBG0-iKkWrqVyye+SWJc6)Ui%Jn)JcE!20OJy((5wJAf}B+R z*&k&yl>hAl&_qciQ0r;?8#p~a{b)vXCy%_mF4goRCeV`;NYFL~r3|E=vWZyb6_U&J zQs>;_XO8p{Qr~_DFJTekJ6p--rhn}D6V>~tdF<$Iq|G7xVXe2N7 zXi6u5rA(NQ!hy?UAt*fA;{$4Sa|ENvPvx{9ok$g=u6sa-9ar;}-g8cc3^Zgyn$3?M zaMQoetklV%=ddVsJ+-}?sUt7RKGxC;l;(98bry_C(xpNWnL(`Gv!%16*?Swq7n-f# zv>7nfo7Xv9FQWzN@vDn_wS@9I5k0MFZlr6+-DM?YvGS>UiQ>n2w(^Ioeeq#5U%ZL)#`=nC|!a z2|U+4G`TTK@6|?M?xEL|?^|bc1QVQNRNcN0{ov;crr|oTdhYQ>#0poZOjH%ep`xZl_d;@Vww(B9krMxGP5iQi`KhYBgKNpy&SS?c z$ecFqv?!k;8?OW|46UQhEw%w0yLJJcxUrj+%GuU~;qHh0w0O`aWyXJ(c>K+80Up$w z@oEk%9ry-m_3vt^PA4mKag0rHx(j*Di5dFG6!{eTqlt0%AJn$qs5c&Nl1pce+jh`{ zb$GDx^efU6&i`mB3{+eQu}@{gL=y1IUX{*9H!@xI&_r~5p{lL4B9HkM8@XS(pf3Sj zHAB&cD|Y4;%6gP7s-~bXMzeBqOWGin;&!qfkSLHV;`&@%5L}{=scs;`&H?eOvQ)Z! zTUlI_PDz^bvZ1&Nb6<5b8q)}`Up8XL28D(_(pw9WD^{WyP{QLYcZgz(R(?fqg-3z|>YlNAdmHG|^@Rux zfJ0U%2)l{m4`mC2jA!1l_T%poA2ftf~!~OJe90ApcBVv{Gx!!iWBR)GK_Tf3VZ8}K>z87`pXe) zXVfMXKekD2AR4dNC-Z(E>hdqY&nP>wLTnxCarXA8+|9nXcI=(xvcwnlU)$3 zFjz~HR-4Cr{b_YW?GoE6F}Tp2M6wA3(=9Q)k1@nxHAYP{vl`?WZ$xh(2hT7@6H(^X zAg=oLM{#TD15-c|`NGxC)y|fZfht9^_@}?^XitP8UyOf!P54lGoDfOr8=fk0=Y-hm zOT+(dV*Gf0#IGGOYiQkz|KGIVs=b43o&yi8TBEk+ zIa7D6fWY>x9@pjf2Nf->GNpb)-F%^93IF6+7zXm9_VjfFm72#`5;}Mz-kh)Muyz~) zG3#mB#CNEk{m4&gk#8~zxP6$B6Ya%HAX~-2GM?7`}v1W(r$u>(z2+s^V|BTR~&h@0J#)Tq=0Gr zNR4T8fPXhwCt2;8v&rrC+H`Hm*jPz8(;%VrF_{ztzQ0d7_}3x}${Ah1Wg{#%{PLm) z91vQeRGX=McB8-s{3|q{c}a{(sXG1D2hk$woa=k&VoOlyYI+(K7dy(SWCxd%WpyWZAj7$ZIXP9-`R2{LZTDY;%j6Q-ruba5`Aw;Z zU%ET*a6~8=qK|=-FY8?A$SyI%)yh)jiYuVk6!zL$5Q*wdiyqF}X^h zl~QdATDt?6J%=!F6fwSqo=N?z z7$az=!j>NL+a4?$7i`29=7z-@EB@iL3)h>Uw;OBGm>HpYoMCj^*-`^}p*#y$%ylK6 z&Yp_a`f_S0-MUI2Tty*+$!+!aO>M3TfrrCJo~mL+VVBj+Ieg|DU@O{PkvN2-p?29_+?$Z_UI(fTws;YDkv(ld)YW1e`%pmY#&ceBD^H@5HJIn;P2^%-4h3dW23e2Yl@9+g90Tcl{y6=wW8AYM91PRjeXrmlp3)ArvH2zM6(K1rBpDL1$|M&C6PJ1Ak z)5`Dc3Oqk>c(Ck>Pln%`;Al&?z4)o_ zmv?`B)L?`i5^_vIj;Xe&bTq_o+2o?2eMb|6Ur&h-D>z9vLz__&mBv`-u8w`JksD!6 z-8E54NxLPLM-8=jO>p?@PD{KLK5Z+eo0CccJZ9Y)Ny^V8pwgu)sN} zA2p8$lb;7E!_UQxTK3!(V$WdllAWZ)6$Ga=^Y{|)0xo#KW;mOGQ9UvO=DObMe9pWF zRMhATXt@`dTbR%V8@qcBo%;OMi&i%QW-FV8n$N4r|7L4@C7+E=4T=LOkXH&Zl6H7I zhNw4HG?Z^TA%GJ{))CrqAk&dQDPkgk@)w4sGwsf`|GHm(3uoi*-P|sJ(OS6o;EJ@2 zRs1lD?TUDQcM;ruwk3f=sA!V5Y>Z!;=_%3=Z)9ht*w4JjJKpUG9!{0 z=R1oHd%zD7co?bPREAfviXkSddAxzsYoCz_$r} zpg`t4RW{OhMP|Rs{ZPjqF`C&AoPG)Ofa>29ZLBIDIGqmzv&Kf>q0OO>8nuP=NtL$3) ze;JuVbsg0hB<+-0s)YiznrFXsznPThbt+7v)=Un@U}jOQodOxgN|BW~_4n zoeE~!jf#0|7x)25`8)5OVdD9Ya0fxLFsZLCCi z#L*daAf)7~kN@OXv(Gk<9%J@1e1-)eBL{jMKWK%OjW!ZhmfYRPpxXGLt?auW#lUeq z67r20m&84e)#O`37(v_n-CgGo^8T zbtJqaEhz&IYKdx2YU+;K?E6EQY7ImOiVNO!gwm*!W_<8Zn{2>ec&<tOyoVi4Ya1kZ}r%dt5U4t&w7nO7%kJ{XHIH;a#<^QI?GPNcpm*Fk0{g0?_RkP4!c@<9|#d3)~(puQbB1 z?jHu6bvR3o7?xz5P@6FP7%>rSPB2Pg;mm~a|9;C%$Y}RTI>L|p;uZfw9|E8P26*8gTQHX6p@3KX-=(U=LM)NO_$k7tiul`q9I-6Spw_+G%G(&}eN0eW)|mj%U@$gWN%+ zaAtAtf(rXnMP4M!aog~$x_`L({2-{v@%~-@2IWA!X{j?e?`u$#_!ycA>-F;8Ht2#5 z8Do;NeL+_^^PE<$a@b{H1?U~69YymG20j+@cenADH-f@#&+5>V^k* za5x8EhZhC5e<#Ze1^3E0Ai+t4%s;#I;n!SbfONlJKT^e#-+E&Gn>4DS7HoN#DQ+>L zBx-?a0kGfyIu!Y1aJ(m7JJ-kfU%SyJf!|LNvRlx@Szlj*mU-5iHbN&pKnaa_G~E+5 z=pd5id(=&h=h(7$rcx_Fhmnh9e|;;Bwr~EHTp^MDzk#>{f;#6Xw4{|vWV=3;|58{= zBCi~5ZcOmS_${l(p=$Pmg?39wluDt%=GAZ2sh#&;Zku!N1E*pDH{26q^Z-)S%laK%f8gT9fHBM(d(D@jU{v zXA604!8wtlH@K5z_ot3>1p{a)C^b84r%#SU}%r7d24xic$POl#(Igt02o;%VHMXTfXKyBd6hW zbrVNh7sr>zU#sk(zPZj7()C$_hChV5$I4Z?84^_*v=KJe|kRDeOj9N-{rQ zYQ>e1rc~#H7z{yA&HKMse!{Of!fPk2qdfa5efC>WAu-1us3nOdswJ_3_c_1{`GB+b z>;e_=7xrJmT>eTXNzmono>V|os;|95hs&^ntIqfKFdf`wM+W=gn1J3 z;*XD?aE^)1M#$6640g)d2Lll&NPoZo2V@AImKhJ=zOTc%&QUO0aHmHQ9wTHOgV$8& zbWYVBEC+2eFcLs-5x9f0t*-GjL|k$DNeC6$&t@I=`f_+$d)x(22A@f>_RP&7|jKH zOI3LZlxtbyq7^8YOO(%)RDZEjJnE-rcKzjN9zw3wXr0F=R^Yrjf4iu$yd&W&;QAQ41f;V>3{|SzYp6VU(sU*Y+RP;hAL!DdC#5_U4;ig)=LJLS zkQq}8t*VmLtC@ZFf1w5*{A?pn`pKzEaDK++7h^#d93l6BRA;>=eOBPy3ZqKGfS4hY zBTOZRx1aJq_R|IxJzJ#Bw_9h)krG*i^EhmEUdNRtMCL@oeGw2V{{r%(J`=Hm0L?;i zFZz@9`q-DuvUA4Eo(;U?i?uSn+;Ec3hKNECG|QA_V-H{%o-3pQ|Norc^ctA)%*++2 zyae$-)W7k)nVnER3A1*kUJKBhn*7dBy%n%|KfT&`2*fUs=r{c2ziq#MZDegAZ&IME zqyu*toz8_3R{kP8Bow93&+1DAeow{k&p!dbC#tP`kppqxUzqx`Orr~Sc`{)zlcBl2u)dqul$2@6GG@G&!~O5SFZs4K&{OP+1ZNlOlE{AaXMWHbl{-if-^jCS z6QkJ~>*ULRv46sfsW=plHa5oo8* zRxygd3qhWw(hL4{G(8ggNpJwL9+3InQ!94(l?N%)K9TR8Q2;e}9p4N?;^5gJHE9a3 z?OTy0eVle5cgbavVwh7=DHXB8n>K&3xVTeE;=FaUk6HT>>S@M55_nt8iLy9$=r#m@Z}$dM z9BPvO8W_oJn+{XXmmu=R=w40WL~SrJ)%?pTOT zVc{7DsM0W0zYxfV&2m$IiFwi&&NzfXO^_hn@P#m7V_8K8ksTfha(f>je`ZPk#K(}| zK)9zoiltDvW*9=4-~2C9)&X=llo~SxB-kh#59d57XG*|CfR93@2t@Ugp`$$=YT4>- z9~=lnT2hxC_vKdtYPrC!4>BLS;mp)(zlGS@$B6Zi4s>yhcwx?Qr}?mG+70{yVH`r* z4JFDFwOk$A^(pc$WmMiSz!>TGergi>U7eJvJkV7E0urC#PDF_HJHD_Em5ZXSGvZyyihJ ze4`lBL_)DU&)@)mad194=#~(#@k4>3wP%?2@t`+`;OpYpQ+D>U}<2)aOXj{ot43xDvQ{Z~YQhNJ)})D(7jorK+C}m;P~x z;VsHNNaessLcV(hn*Y@LU3*o8GdcQQn%{7K5h6?iiglz7mICRDAR?BAv|=t}_!ZWx z=6SbfG%e&q1IbuIte%P*-Rwk|4}!htcU6=UyD)5kj z#g21`PwRz%o6kSXn|3ox3}KS7@lS{GT0ZO&mm&OJ0@VFxD0F3I@2f>URq-8Pyhyzd zm!bV13i*xFS?HHsIkQ=Z-R+kYHC7YSOO|4J)MBGPJQ5OJQ4r1`zy#+l<{RjVcFuX( zH=`5c*}javd_n4<8ThM`(D~yH|PWY>)IST8ZuF zm#=77e@80;W2blRmcG%zA>~DqTx|f)svtYN_Elg6uJoTiBhQx-;~5Oa^txfLa>+$$ z290qCAO+afPQP0mT*x0lNC~095|2hJ*-QDEm@;@r`|1Udg!Zhbnb@Fa1fY1G1-WB7o8m*r~v(&UOoM7W(iw5%YlS~WTy1J<=3aouad<=jA4P5S} z#@K(uNiibK?X5u}BFxX>nfad~VDZfu*KFbgZb>Po;KS9tb<0aBR`88v&X-A{A?*O8 zMe6SNw_PR|K)zMZlItcCmEWn-zN$Ow4QG&PN_SaZO)l>uK8z1}YCk(+fVOys)L!-r zP&@^AK1h)=Kve8FY?&d=P5ofxr>ipcEt@5>_XPElDzELz?RgM9gH^-GXw|6$yt(hM(tc%r!(4*rpTI18xq|ob; zlmfO==?UF%v4dy8>EplBF_53*uBCY~c)&r8ckbq(D@0=Z~eh9>`vCCzZeFW5Q1FOFf>9J;$0h z6uT7x1kAmku&G>E?VM?3Wwe%st6SdoDljwE5b*G4V@O>^%qog@+Zi)7M&*0WL`#(FW%ZTT5=ovsd+kA!6BjR5MKS ze)_gOUcj>=&2BI5D>wXEif*a}pX!A;PiLDMzTAgl+pyM%)sf9sSYwnIH`T25`b4kY zMDJ_?)tL|K?Vk1$xqitN>h_lQThFETIJJSBFGUU}Ty@?Gxb)LIItWS*jZ&mmv&eOq z*W);A&r`^(>yzC(99h4B^}Dw31+>2V7B1MY9b>!5v*tRk2(09R8i^V;lmQyEM_J?J z)uWRRJ(VzB)+tLE!39BhENFC}7RPm6YvQM2=btXy~zE9)wpwQ zQD}!D&=9Ds5SU0V$>of(8aD*T+Za##9(i^b968HHS6Qk32+D7W^AT%!$P0<0%3>NjTScT9lfkA z-e?OOACmj&fDl z&l3rI%}_;j+YaMyoZ@G`+3fTqZ`^h4b9l;Fiiw>ly$|)maFYR=XOyq3A1RqAC)I_l z8woBGIdSrH`@a`xoPUTiVEv8C$+MPaEm56^n)7@dg$^?@Dn%FrlqzA#>v=B}l1 z5Gx6s=W-4^&Q9&dQv{_y!S`cjBFti^nmVGO4EA(RW77`|K+I;D;zPxDs)ln@&MkW!~km^poM0h%YQ$V=RhX zL%;+%^wsD`U)VARwQ<`R_8*qgq6wMEYZI;@ngoc*KL6erU|+N$o|+a3Ugd?+{{g7! zY7`PpCSQu}J(-Yo)P9l+Is=CPLn|DEA+sRw%wc2{OZmE)^nSnuczwnArOm&EUxn76 zIQTn=8hO62mLa;9xZ4X)z67;B2*z0rSK%`h*zS?eH788+-14n#A+yW~?Ocrvb9@>O z;Vpe@^iIk=sovut;_qXh9?kd3)|D3T&$_yC^@z-!JFqY@$m%3CTDxZE7UMasUbPL3 zWz9Rk?l})4G>H_q=E*Eyc)X#X&QWunJ2bPiERPI?b_gck)}247dxxfNY;X&*li&^u zv9nH*BzK?c)llL-UQ$nRmWM+5C&D^F?I2V=AR3xEJJ2J~x$pFoBjurlh|Sf3rVsoVMxNcQrlttjH=YtF|mEnXtX_= zcjuuWf%9=w7JLa|q0koG&8vK(pXW)b5GIE1mU3)aY&b~b@o{1~-@fo&Zi504v=bl* z*x~cK;uQag)&JWkB>kgKm{WAGfJ!Mw?CY3W_GqY&;#O}1E{`8)n3Zm*TWBou?(6;~ zF)72nk6@~FN^VENUF=WQfw1A-Za6c^xzeIAcaC|S7Ci}WuJKb4+AdAUWZNOu)jK_y zW55oA!m;fOgeoe}h~mEWPQ@;9-OS(qn|;0jRxtk0Pq#Pa>1^>BEEwRmx)u@^g0>fS z=yCK}mD8|2JVf7dOeOynxBmx)1a$RzqU>pw}(>h~S`xV}p}=cvInYBzJ^GyZx>M z6e@!_H`SiO>swC51L==Loe^|HNeadIs-dgrCqEk_CP5YFs2HVe*;xX4ihv4slqjH- zk%3>vsMEa3s$9LS*p?W6;ZvjR$kY9)vVHRlpxzNzY$8M2{ml{S%(V7BcaAMs+-V7nY(INhWuS`u$^W*nPQBoQb z2=E0B%|Cl%DYL92U##(nDo#@CeNMg>&@+!R;OambeuA4j^0!ylzApBEvE2-c_;%Wv zR-V7?;(L;y#PmApkkR>l!)p2$lP0Nsi(q+$YCCoNSgATjp0_)n`lv8eG&T|tn{LH` zvF2pllC*5D)FaQ4XfUB&{(@b^JMuyfjC|^~TE?F0*@2DN{id~B@SWd_@EKgLobAS;NQg z<5ZGt*8a25TL5N>28hj}&xitYoUzcheDRn7s)z$D@o1Y1*QRb)=canV)a(}bMxUOu zXh+_~?XVClS~R$OWnud!pC#aS{&OHK5oTAW?F-vtoNudW^ZRRlBi_LY^*$kpwFP1RXYl3jOt=S(-nxg*ZuG$AFTE;s; ziel&Oh=>mT09?+H|Bl!U^{vzG=tfDQVb@+dT=|Px{hwaw@gFo|;uygcev!%Swb7rk zSkJ}*uc$Lk2c;+ma8k)^o~BdSaD9G+`r~W|5N7`68$h*pE%@(uQKf(@QP#t$d6ee@ zduS&8Q1Y;kz^tVEqhQ4?G$H@?lPXYWxIiz$Dj~&))F?Fo8?7;>B!L&R-m^6?@JKXB z{GU-*fZ<1U7Xzs)e)$RxE3O>7YYsb!CHi&-CDV;X7N5+mo!MnNly&EsUwM%WCk1#> zCB^N*XF5D(jAA?2h_wD|tL2P$YdyV!rz>h4w0(3nj8Ao8)2@YzD61~Li>kX`8ojtB zNa8qsZ5j_&_}+T@e4JE@7Sbkn%xcVTd(7JO2{YbE+}5G}O#?{U%8yRn9<3-#fRHzNQ1Vn7nmPCSooArpME z5oD?V=C?5EV%*x97;VpFG;uIsJ;C=gyq)3GHrc3x2kg&lBAKn3+n=Tf#VIB}YpWj% zqw?AZKD->kshvruPqQ2*r6-=E>R2L5fW0URxD7-^vZ>Ioe&fo6pt z0V_maxVj_F&Yx14M@@fq(__D3l9H2xTcLes>+!Uyn7bSmE>y`6QuReSlyWn%EFMfR zRS%>(qJf+T`mklfiKfwF=c1-UYP|RDNlEW4Ucfmy%^@Mk>Dk$d>)G~iU47mSx{|J} zoW$}fdkw92ED<8P{1Qr% zZJbAj$wmw^%`0rJF4(%9Pf}V9R*$R|NE#PtNl2VAaK9p8Mv6L5efAoSC5Lc^-MQ=8 zY>6I9imdO_`hfsYV5503pN{>_6M>qdSGPXe34(XlA>eX2|Pon_gT&X^MGaoAvK`j|BEap`vSI z%kf>3b;qRLKyJ<)5Om(|d(wfQK#>uJZiX?b38IOFl$? zO5Imy%du@F%J3FUOk#l^#GM(O(_h&68zL5%kFB^?_qa_o|J_6MSGz71^}kPa8V5;r z@?4|&yDxntwFv&)`{9>w+?4TDVhJE!S(<7HZ@n(Ig|)pzpGsgG>)4-2lcuN>!UCbu z5a>1H&x4nixQtS|?#pA%OuTok2AhlCFQGVFCpw0uLdF>&kWT%z6Fs)FvH@&E0tul) z&}It^6W1RK4wB`J6 zke5U&e7imi*M(S{niyqYN|W1gSKWBy*G9SwA^$Zc^S=TMXk1Jy1&ONfCBIQ(Pc?3C zmfV=2|MI%mt@2y18|8FW<>0wCLpft>YxRab$IVu@k`l)KqbrCBXLIUx@t+UUhNXq) z*k1V`q6wB=pp>EA*s7|b#@wsN?;MV!hya7WkWLOB4^G#xE?qU%1B$lz2*4{;ShS&ls~`8}Xg1Gvt#Fh!4Ti)QgdISh(BDHhP- zXv40k%DL3vNtuV~a19R*Y2FWiL7(s5W&Et}nfC-@)YQl!*CQIQ!>K)#_{#c%^d#wh ztG|)KJnVZ&4Nmkl1ctB#sRz2P*l9&DI7<3+%T71>7}Mjai1}H&03CaxAZ=$C-I+gZ z%mEIB;i~K-hkV}Y!HiHDT$_PB5jO*3aFnzn1@%km6iqeCPJB_`+qwH~+G2u6=CVBN zpH#V{8d;qD$uki>%SYAcHG!stlqu{Va<^F;ONB+pU|!w%UMyhj+&p-Z$(Z zDl+4aWGTeM|L`{OGBVq+gPB(RmX19b^NtW}PBwjPLESj|yeaGN*_{p(QiDqSDy zDF!}24>D!o&Y;lL5ICGfOaa}W#F~5ioh*yx^dNu$;|qGo>HSClwrXrH6U*-C4Rk@M zgX<`&X16!sP(>rB4L$VrCniEzI%(!{`0Tp>nR^VmxiaMKBs6+1$@47^p+jP3 zT=uDeH=QUOwQ}cK#6@RnH$)yB9g@g*6h(A9W>aU8M|Mtr!oZDAP%5-?oxd($v027o zbQ=iOm}SEIrvcarz$>=)YWBrB2$;vgmU1*unx>97`sU}AQG$5BPrYn@x+>=%SjnOB z$)$Yb0ON{>Zl?{VMV=@iW4)>R>?Mv9&XlW{O@V6MK2z}uWk<@XyL~09NkHoZ9hLdl zjLVcaDElLa0KckpGy<;|s9{c@ z+k|bZ<8b=Xr43|b;oO0DkjKBn)6Ws2VPIkVNLyU2yMlgoaa|O@F_>F&b2+@{q|$$l z!eZz6<EcA6Bg~|S6z&?eyJ*cZN8ADtxuwzDLq5~H5H-nfCIgp z0C>2CGPRFDVph`Lc54*iGc^+4Bs}J~=2fK>;{17tV}fBe7O09xPMNk?CpA&VZ?MJC zMzzP6tOSBW#T2#`|FI`_KOyaeDaP*mew2sn-fHe&6LSSgA-cBY6n2~dHsUd#(i3pQ zdeed;xRGEBO28+}ol|VfT{~1^erY#JiL#T5)PMLodH67k$TZSgxk@Ken)f2Rw&2gEaR|LK-W=xy$~G|BprUPcyt zQKbEMh;9eL{|+0@grlWK5?WQG?7nVB!<|zA?3Pgm__A|sqVNgqHE3p3#@-9kNWmp@ zjpC>~g*gL+ebj&Na;+zKudZffRJM2?=47R3#0|MBirmUB{uHA9$Wwew;<+6-pW~?? z)PQYO-RQ6{QAND|Q%G<>#|x?7f}RyS|0tvO^s27mq2k?Dkc2{>^d>&;@SXE3wESaz zL8d#0&G?ZrYj5h+%ahD!0ZSfq-YffS0+RO_Ns-IQ)D)Y`Fo}7mzA&>U>?*E#|SC zc||?4euV}*{jQkOW7GjceGgSF8g){_Dt@;DD8K$V+{I-$iP+@?2i@O7jGk4H3J>5BKv z7j~Jt%BE(hGf&gY^oOV!%s+=OA6g<%m92RC7qHP<{pnZnlwq~V8U+ED{WZLC2h zswRyV=AQ-jrc_jiVKT^$ZLrXy-RL>ur90H?A4?t8NiGh~aleOGAN_F@qARi7`IF;o zkLqg}x`H-W#2JYr@g4ny*(UDFe?>4u^Kw8A8|^Gj#-jcnG&Ph)u_JT;mE@>~Ky#}h z;xF7SjwZxu{RnIAHiO{Pti!Cv_JO!!h&XX7Vmg?RMqppLPh7{t#-*E(l(O)X!aGc6 z<`8%1f2Xv|wzMQRBUfRVs|`#mNLRj!v3o=~TzXSVJcWo1fJ_tgNrd6;a@-VQTo|SI z|GEI(IKW{}nyC14G6Eu6NbWWOTuSn_vgaz3;^h`c-?M^qB9YAo4wt;G*cJg?$U8SF z-K|o7V-~hVY827f>H}!(jLkXIX(% zJFHYs++V4x>ZVF%xim^pwUoK?#vmImnbugwCcb}MO<4@n$UH@Ycg7gDv*l)`CHZ=u z4_k?_xnjB2HPjQIqdqSFuYhL{+A;h$u~2h)Vp%2UaF*G4^r8JrBcqzpVPncxo4q4; z)}c&rpa>UKv)xC&8pEtixN!NUuWFeJEwRj|iDu{T$O%ogZUGO4h#J)o{4`0)yPUs9 zK8lTE%trCmxcz!S>*ZKgsWA&*;;_~;Ux>s;;l3WRD8_rH#ASi1Rw)~4e|`hyYaSZB zfAxsO0DwSIWwz$%77$gYq>j3xK>tCu%oFoqHrXX&O!_%rVs~psuiykCwyp3D<_
4H_5Aw##Di#g$49!Lrd)DRNpuA9!2tNC8KOZqwSVJu##93|mN-&QiuE@{Q z)X9#!st6?l%MJvpj~%=19ddy;V5G~d#4WUO${XAIDq0*I>}`ag39q@o`#6>IWB%{c zS&lu$WT)^FKx?B(=K9BBZBzMQzV$u1TdIZm1I2-lm)cp|E1V&fBUJ7n>}&@wq!?EY z;b81-baXNceeJMt!tYF~W<8}Qw_ma3X7OvXUS*ckTk{W7cvUogQKgDHi_=aiKr3

XGj9;0oJ8K}_Cnr4z)~2KeAU4) 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 mQvZJsdKk2MF>VroiV5 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 literal 0 HcmV?d00001 diff --git a/doc/modeling.rst b/doc/modeling.rst index 20718400..8a4d5d0e 100644 --- a/doc/modeling.rst +++ b/doc/modeling.rst @@ -1069,6 +1069,14 @@ has 1000 bodies (each with a geom), 3000 degrees of freedom and around 1000 acti takes around 1 ms on a single core of a modern processor. As with most other MuJoCo models, the soft constraints allow simulation at much larger timesteps (this model is stable at 30 ms timestep and even higher). +Particles are also compatible with the passive forces 2D and 3D plugins, discussed in the :ref:`deformable +` section. However, collisions are limited to the particle themselves and not to the whole boundary of the +skin that encloses them. This makes contacts very fast but does not guarantee that all penetrations can be avoided. For +a more complete treatment, see again the :ref:`deformable ` section, which outlines how to use +:ref:`flexcomp` to create such an object. It is easy to port models create with composite particles to +flex, see the folder `elasticity/ `__ for +several examples. + **1D grid**. |image6| |image7| @@ -1111,59 +1119,51 @@ coordinates. The plot on the right shows a cloth pinned to the world body at the capsule probe. The skin on the right is subdivided using bi-cubic interpolation, which increases visual quality in the absence of textures. When textures are present (left) the benefits of subdivision are less visible. -**Rope and loop**. +**Cable**. -|image10| |image11| +|coil| .. code-block:: xml - - - - - - - + + + -The remaining composite object types create kinematic trees of element bodies, and the parent body becomes the root of -the tree. This is why :el:`composite` appears inside a moving body, and not inside the world body as in particle and -grid objects. If it appeared inside the world body, the root of the composite object would not move. Unlike grids and -particles, the orientation of the element bodies here can change. The kinematic tree is constructed using (mostly) -hinge joints. In the case of rope and loop objects illustrated here, the tree is a chain. Note the naming of the -parent body. This name must correspond to one of the automatically-generated names of the element bodies. This -mechanism is used to specify where the composite object should attach to the parent. Compared to 1D grids, the rope -and loop are less jittery and can use capsule and ellipsoid geoms in addition to spheres (thus filling the gaps for -collision detection). However this comes at a price. Because we have long kinematic chains, the resulting differential -equations become stiff and can no longer be integrated at large timesteps. The examples we provide illustrate -comfortable timesteps where the models are stable. The rope can be easily tied into a knot using mouse perturbations, -as shown in the left plot. Using a larger number of smaller elements makes knots and other manipulations even easier. -The loop is similar to a rope but the first and last element bodies are connected with an equality constraint. + + + + + + + + + + + + + +The cable simulates an inextensible elastic 1D object having twist and bending stiffness. It is discretized using a +sequence of capsules or boxes. Its stiffness and inertia properties are computed directly from the given parameters and +the shape of the cross section, which allows for anisotropic behaviors, which can be found in e.g. belts or computer +cables. It is a single kinematic tree, so it is exactly inextensible without the use of additional constraints, enabling +the use of large time steps. The elastic model is geometrically exact and based on computing the Bishop or twist-free +frame of the centerline, i.e., the line passing through the center of the cross section. The orientations of the geoms +are expressed with respect to this frame and then decomposed into twist and bending components, hence different +stiffnesses can be set independently. Moreover, it is possible to specify if the stress-free configuration is flat or +curve, such as in the case of coil springs. The cable requires using a first-party :ref:`engine plugin`, which +may be integrated directly into the engine in the future. + +**Rope and loop**. + +The rope and loop are deprecated. It is recommended to use the cable for simulating inextensible elastic rods that are +bent and twisted and 1D flex :ref:`deformable objects ` for extensible strings in a tensile loading +scenario (e.g. a stretched rubber band). **Cloth**. -|image12| |image13| - -.. code-block:: xml - - - - - - - - - - -The cloth type is an alternative to a 2D grid, and has somewhat different properties. Similar to rope vs. 1D grid, the -cloth is less jittery than a 2D grid and can also fill collision holes better. This is done by using capsules or -ellipsoids, and arranging them in the pattern shown on the right. The geom capsules are shown in red, the kinematic -tree in thick blue, the equality-constrained tendons holding the cloth together in thin gray, and the joints in cyan. -The element body corresponding to the parent body has a floating joint rendered as a cube, while the rest of the tree -is constructed using pairs of hinge joints that form universal joints. Note the naming of the parent body: similar to -rope, it must coincide with one of the automatically-generated element body names in the composite object. Explicit -pinning is not possible. However if the parent is a static body, the cloth is essentially pinned but only at one -point. Similar to rope, the cloth object involves long kinematic chains that require relatively small timesteps and -some damping for stable integration. The parameters can be found in the XML model files in the software distribution. +The cloth is deprecated. It is recommended to use 2D flex :ref:`deformable objects ` for simulating thin +elastic structures. **Box**. @@ -1222,6 +1222,94 @@ of the system making it softer or harder, damped or springy, etc. Note that box, involve long kinematic chains, and can be simulated at large timesteps - similar to particle and grid, and unlike rope and cloth. +.. _CDeformable: + +Deformable objects +~~~~~~~~~~~~~~~~~~ + +The :ref:`composite objects ` described earlier were intended to emulate soft bodies in what is effectively +a rigid-body simulator. This was possible because MuJoCo constraints are soft, but nevertheless it was limited in +functionality and modeling power. In MuJoCo 3.0 we have introduced true deformable objects involving new model elements. +The :ref:`skin` described earlier was actually one such element, but it is merely used for +visualization. We now have a related element :ref:`flex` which generates contact forces, constraint +forces and passive forces as needed to model a wide range of deformable entities. Both skins and flexes are now defined +within a new grouping element in the XML called :ref:`deformable`. A flex is a low-level element that +specifies everything needed at runtime, but is difficult to design at modeling time. To aid with modeling, we have +further introduced the element :ref:`flexcomp` which automates the creation of the low-level flex, +similar to how :ref:`composite` automates the creation of (collections of) MuJoCo objects needed to +emulate a soft body. Flexes may eventually supersede composites, but for now both are useful for somewhat different +purposes. + +A flex is a collection of MuJoCo bodies that are connected with massless stretchable elements. These elements can be +capsules (1D flex), triangles (2D flex), or tetrahedra (3D flex). In all cases we allow a radius, which makes the +elements smooth and also volumetric in 1D and 2D. The primitive elements are illustrated below: + +|flexelem| + +Thus far these look like geoms. But the key difference is that they deform: as the bodies (vertices) move independently +of each other, the shape of the elements changes in real time. Collisions and contact forces are now generalized to +handle these deformable geometric elements. Note that when two such elements collide, the contact no longer involves +just two bodies, but can involve up to 8 bodies (if both elements are tetrahedra). Contact forces are computed as +before, given the contact frame and relevant quantities expressed in that frame. But then the contact force is +distributed among all interacting bodies. The notion of contact Jacobian is complicated because the contact point cannot +be considered fixed in any body frame. Instead we use a weighting scheme to "assign" each contact point to multiple +bodies. It is also possible to create a rigid flex, by assigning all vertices to the same body. This is a way to +re-purpose the new flex collision machinery to implement rigid non-convex mesh collisions (unlike mesh geoms which are +convexified for collision purposes). + +**Deformation model**. + +In order to preserve the shape of the flex (in a soft sense), we need to generate passive or constraint forces. Prior to +MuJoCo 3.0 this would involve a large number of tendons plus constraints on tendons and joints. This is still possible +here, but inefficient both in terms of modeling and in terms of simulation when the flex is large. Instead, the design +philosophy is to use a single set of parameters and provide two modeling choices: a new (soft) equality constraint type +that applies to all edges of a given flex, which permits large time steps, or a discretized continuum representation, +where each element is in a constant stress state, which is equivalent to piecewise linear finite elements and achieves +improved realism and accuracy. The edge-based model could be seen as a "lumped" stiffness model, where the correct +coupling of deformation modes (e.g. shear and volumetric) is averaged in a single quantity. The continuum model enables +instead to specify shear and volumetic stiffnesses separately using the `Poisson's ratio +`__ of the material. For more details, see the `Saint Venant-Kirchhoff +`__ hyperelastic model. This +functionality is currently based on first-party :ref:`engine plugins` as of MuJoCo 3.0 but may be integrated +into the engine in future releases. + +**Creation and visualization**. + +.. code-block:: xml + + + + + + + + + + + + + + + + + +Using the :ref:`flexcomp` element, we can create flexes from meshes, including tetrahedral meshes, and +automatically generate all the bodies/vertices and connect them with suitable elements. We can also create grids and +other topologies automatically. This machinery makes it easy to create very large flexes, involving thousands or even +tens of thousands of bodies, elements and edges. Obviously such simulations will not be fast. Even for medium-sized +flexes, pruning of collision pairs and essential. This is why we have developed elaborate methods for pruning +self-collisions; see XML reference. + +In case of 3D flexes made of tetrahedra, it may be useful to examine how the flex is "triangulated" internally. We have +a special visualization mode that peels off the outer layers. Below is an example with the Stanford Bunny. Note how it +has smaller tetrahedra on the outside and larger ones on the inside. This mesh design makes sense, because we want the +collision surface to be accurate, but on the inside we just need soft material properties - which require less spatial +resolution. + +|bunny1| |bunny2| + + .. _CInclude: Including files @@ -1562,3 +1650,11 @@ in a visible way, and the energy fluctuates around the initial value instead of :height: 250px .. |particle| image:: images/models/particle.gif :width: 270px +.. |flexelem| image:: images/modeling/flexelem.png + :width: 400px +.. |bunny1| image:: images/modeling/bunny1.png + :width: 300px +.. |bunny2| image:: images/modeling/bunny2.png + :width: 300px +.. |coil| image:: images/modeling/coil.png + :width: 300px diff --git a/doc/overview.rst b/doc/overview.rst index bb89671e..83fdfde1 100644 --- a/doc/overview.rst +++ b/doc/overview.rst @@ -588,6 +588,14 @@ available equality constraint types are: connect two bodies at a point (creating tree); weld two bodies together; make two surfaces slide on each other; fix the position of a joint or tendon; couple the positions of two joints or two tendons via a cubic polynomial. +Deformable +^^^^^^^^^^ + +These are collections of massless stretchable geometric elements (capsules, triangles or tetrahedra) connecting vertices +that are defined within different moving body frames. These stretchable elements support collisions and contact forces, +which are then distributed to all the interconnected bodies. Flexes also generate passive and constraint forces as +needed to simulate deformable entities with the desired material properties. + Contact pair ^^^^^^^^^^^^ diff --git a/doc/programming/extension.rst b/doc/programming/extension.rst index 9b9dba15..5d8167e3 100644 --- a/doc/programming/extension.rst +++ b/doc/programming/extension.rst @@ -256,6 +256,7 @@ Currently, there are three directories of first-party plugins: bending strains. The 3D solid is a `Saint Venant-Kirchhoff `__ model discretized with piecewise linear finite elements, which is suitable for large deformations with small strains. + See also :ref:`composite ` and :ref:`deformable ` objects. * **sensor:** The plugins in the `sensor/ `__ directory implement custom sensors. Currently the sole sensor plugin is the touch grid sensor, see the `README `__ for details. diff --git a/model/plugin/elasticity/mannequin.xml b/model/plugin/elasticity/mannequin.xml index ad036287..9237b943 100644 --- a/model/plugin/elasticity/mannequin.xml +++ b/model/plugin/elasticity/mannequin.xml @@ -38,7 +38,7 @@ - + @@ -116,6 +116,9 @@ + + + diff --git a/model/plugin/elasticity/poncho_flex.xml b/model/plugin/elasticity/poncho_flex.xml index d51df2f9..72783d7e 100644 --- a/model/plugin/elasticity/poncho_flex.xml +++ b/model/plugin/elasticity/poncho_flex.xml @@ -30,11 +30,15 @@ + + + + + From 317d6d9ebedf8f280750b5d4b31fdb5abefba3c1 Mon Sep 17 00:00:00 2001 From: Alessio Quaglino Date: Tue, 17 Oct 2023 10:27:55 -0700 Subject: [PATCH 08/26] Move edge creation after element reordering in mjCFlex. PiperOrigin-RevId: 574193046 Change-Id: If2fb01b3494d637d4b220d03e7d7d84e4a9f7a2d --- src/user/user_mesh.cc | 60 +++++++++++++++++++++---------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/src/user/user_mesh.cc b/src/user/user_mesh.cc index 18d18cba..b0e1175a 100644 --- a/src/user/user_mesh.cc +++ b/src/user/user_mesh.cc @@ -2302,36 +2302,6 @@ void mjCFlex::Compile(const mjVFS* vfs) { } } - // create edges - std::vector edgeidx(elem.size()*kNumEdges[dim-1]); - - // map from edge vertices to their index in `edges` vector - std::unordered_map, int, PairHash> edge_indices; - - // insert local edges into global vector - for (int f = 0; f < (int)elem.size()/(dim+1); f++) { - int* v = elem.data() + f*(dim+1); - for (int e = 0; e < kNumEdges[dim-1]; e++) { - auto pair = std::pair( - std::min(v[eledge[dim-1][e][0]], v[eledge[dim-1][e][1]]), - std::max(v[eledge[dim-1][e][0]], v[eledge[dim-1][e][1]]) - ); - - // if edge is already present in the vector only store its index - auto [it, inserted] = edge_indices.insert({pair, nedge}); - - if (inserted) { - edge.push_back(pair); - edgeidx[f*kNumEdges[dim-1]+e] = nedge++; - } else { - edgeidx[f*kNumEdges[dim-1]+e] = it->second; - } - } - } - - // set size - nedge = (int)edge.size(); - // determine rigid if not already set if (!rigid) { rigid = true; @@ -2394,6 +2364,36 @@ void mjCFlex::Compile(const mjVFS* vfs) { } } + // create edges + std::vector edgeidx(elem.size()*kNumEdges[dim-1]); + + // map from edge vertices to their index in `edges` vector + std::unordered_map, int, PairHash> edge_indices; + + // insert local edges into global vector + for (int f = 0; f < (int)elem.size()/(dim+1); f++) { + int* v = elem.data() + f*(dim+1); + for (int e = 0; e < kNumEdges[dim-1]; e++) { + auto pair = std::pair( + std::min(v[eledge[dim-1][e][0]], v[eledge[dim-1][e][1]]), + std::max(v[eledge[dim-1][e][0]], v[eledge[dim-1][e][1]]) + ); + + // if edge is already present in the vector only store its index + auto [it, inserted] = edge_indices.insert({pair, nedge}); + + if (inserted) { + edge.push_back(pair); + edgeidx[f*kNumEdges[dim-1]+e] = nedge++; + } else { + edgeidx[f*kNumEdges[dim-1]+e] = it->second; + } + } + } + + // set size + nedge = (int)edge.size(); + // add plugins std::string userface, useredge; mjXUtil::Vector2String(userface, elem); From 65e66d0fc9285de40eb70366434d7598d08b2140 Mon Sep 17 00:00:00 2001 From: Google DeepMind Date: Tue, 17 Oct 2023 10:34:24 -0700 Subject: [PATCH 09/26] Fluid force documentation: Rename `d` to `r`, update description of passive viscous forces. PiperOrigin-RevId: 574195315 Change-Id: Ic045a2d1606c85a7d87b0000f505c792b6477917 --- doc/computation/fluid.rst | 161 +++++++++++++++++++++----------------- 1 file changed, 90 insertions(+), 71 deletions(-) diff --git a/doc/computation/fluid.rst b/doc/computation/fluid.rst index 0497b921..4dbf211b 100644 --- a/doc/computation/fluid.rst +++ b/doc/computation/fluid.rst @@ -27,35 +27,54 @@ Inertia model ------------- In this model, the shape of each body, for fluid dynamics purposes, is assumed to be the *equivalent inertia box*, -which can also be visualized. Each forward-facing (relative to the linear velocity) face of the box experiences force -along its normal direction. All faces also experience torque due to the angular velocity; this torque is obtained by -integrating the force resulting from the rotation over the surface area. In this sub-section, let :math:`v` and -:math:`\omega` denote the linear and angular body velocity in the body local frame (aligned with the equivalent -inertia box), and :math:`s` the 3D vector of box sizes. When the contributions from all faces are added, the resulting -force and torque applied to the body by a fluid of density :math:`\rho`, in local body coordinates, have the -:math:`i`-th component +which can also be visualized. For a body with mass :math:`\mathcal{M}` and inertia matrix :math:`\mathcal{I}`, the +half-dimensions (i.e. half-width, half-depth and half-height) of the equivalent inertia box are + +.. math:: + \begin{align*} + r_x = \sqrt{\frac{3}{2 \mathcal{M}} \left(\mathcal{I}_{yy} + \mathcal{I}_{zz} - \mathcal{I}_{xx} \right)} \\ + r_y = \sqrt{\frac{3}{2 \mathcal{M}} \left(\mathcal{I}_{zz} + \mathcal{I}_{xx} - \mathcal{I}_{yy} \right)} \\ + r_z = \sqrt{\frac{3}{2 \mathcal{M}} \left(\mathcal{I}_{xx} + \mathcal{I}_{yy} - \mathcal{I}_{zz} \right)}. + \end{align*} + +Let :math:`\mathbf{v}` and :math:`\boldsymbol{\omega}` denote the linear and angular body velocity of the body in +the body-local frame (aligned with the equivalent inertia box). The force :math:`\mathbf{f}_{\text{inertia}}` and +torque :math:`\mathbf{g}_{\text{inertia}}` exerted by the fluid onto the solid are the sum of of the terms + +.. math:: + \begin{align*} + \mathbf{f}_{\text{inertia}} &= \mathbf{f}_D + \mathbf{f}_V \\ + \mathbf{g}_{\text{inertia}} &= \mathbf{g}_D + \mathbf{g}_V. + \end{align*} + +Here subscripts :math:`D` and :math:`V` denote quadratic Drag and Viscous resistance. + +The quadratic drag terms depend on the density :math:`\rho` of the fluid, scale quadratically with the velocity +of the body, and are a valid approximation of the fluid forces at high Reynolds numbers. +The torque is obtained by integrating the force resulting from the rotation over the surface area. +The :math:`i`-th component of the force and torque can be written as .. math:: \begin{aligned} - \text{density force} : \quad &- {1 \over 2} \rho s_j s_k |v_i| v_i \\ - \text{density torque} : \quad &- {1 \over 64} \rho s_i \left(s_j^4 + s_k^4 \right) |\omega_i| \omega_i \\ + f_{D, i} = \quad &- 2 \rho r_j r_k |v_i| v_i \\ + g_{D, i} = \quad &- {1 \over 2} \rho r_i \left(r_j^4 + r_k^4 \right) |\omega_i| \omega_i \\ \end{aligned} -This model implicitly assumes high Reynolds numbers, with lift-to-drag ratio equal to the tangent of the angle of -attack. One can also specify a non-zero :ref:`wind`, which is a 3D vector subtracted from the body linear -velocity in the fluid dynamics computation. - -Each body also experiences a force and a torque proportional to the viscosity :math:`\beta` and opposite to its linear and -angular velocity. Note that viscosity can be used independent of density, to make the simulation more damped. We use the -formulas for a sphere at low Reynolds numbers, with diameter :math:`d` equal to the average of the equivalent inertia -box sizes. The resulting 3D force and torque in local body coordinates are +The viscous resistance terms depend on the fluid viscosity :math:`\beta`, scale linearly with the body velocity, and +approximate the fluid forces at low Reynolds numbers. Note that viscosity can be used independent of density to make +the simulation more damped. We use the formulas for the equivalent sphere with radius +:math:`r_{eq} = (r_x + r_y + r_z) / 3` at low Reynolds numbers. The resulting 3D force and torque in local +body coordinates are .. math:: \begin{aligned} - \text{viscosity force} : \quad &- 3 \beta \pi d v \\ - \text{viscosity torque} : \quad &- \beta \pi d^3 \omega \\ + f_{V, i} = \quad &- 6 \beta \pi r_{eq} v_i \\ + g_{V, i} = \quad &- 8 \beta \pi r_{eq}^3 \omega_i \\ \end{aligned} +One can also affect these forces by specifing a non-zero :ref:`wind`, which is a 3D vector subtracted +from the body linear velocity in the fluid dynamics computation. + .. _flEllipsoid: Ellipsoid model @@ -116,35 +135,36 @@ also disables the inertia-based model for the parent body. The - 1.0 Elements of the model are a generalization of :cite:t:`andersen2005b` to 3 dimensions. -The force :math:`\mathbf{f}_{\text{fluid}\rightarrow \text{solid}}` and torque -:math:`\mathbf{g}_{\text{fluid} \rightarrow \text{solid}}` exerted by the fluid onto the solid are +The force :math:`\mathbf{f}_{\text{ellipsoid}}` and torque +:math:`\mathbf{g}_{\text{ellipsoid}}` exerted by the fluid onto the solid are the sum of of the terms .. math:: \begin{align*} - \mathbf{f}_{\text{fluid} \rightarrow \text{solid}} &= \mathbf{f}_A + \mathbf{f}_D + \mathbf{f}_M + \mathbf{f}_K \\ - \mathbf{g}_{\text{fluid} \rightarrow \text{solid}} &= \mathbf{g}_A + \mathbf{g}_D + \mathbf{f}_{\text{ellipsoid}} &= \mathbf{f}_A + \mathbf{f}_D + \mathbf{f}_M + \mathbf{f}_K + \mathbf{f}_V \\ + \mathbf{g}_{\text{ellipsoid}} &= \mathbf{g}_A + \mathbf{g}_D + \mathbf{g}_V \end{align*} -Where subscripts :math:`A`, :math:`D`, :math:`M` and :math:`K`, denote Added mass, viscous Drag, Magnus lift and -Kutta lift, respectively. The :math:`D`, :math:`M` and :math:`K` terms are scaled by the respective -:math:`C_D`, :math:`C_M` and :math:`C_K` coefficients above, while the added mass term cannot be scaled. +Where subscripts :math:`A`, :math:`D`, :math:`M`, :math:`K` and :math:`V` denote Added mass, viscous Drag, Magnus lift, +Kutta lift and Viscous resistance, respectively. The :math:`D`, :math:`M` and :math:`K` terms are scaled by the respective +:math:`C_D`, :math:`C_M` and :math:`C_K` coefficients above, the viscous resistance scales with the fluid viscosity +:math:`\beta`, while the added mass term cannot be scaled. Notation ~~~~~~~~ We describe the motion of the object in an inviscid, incompressible quiescent fluid of density :math:`\rho`. The arbitrarily-shaped object is described in the model as the equivalent ellipsoid of semi-axes -:math:`\mathbf{d} = \{d_x, d_y, d_z\}`. +:math:`\mathbf{r} = \{r_x, r_y, r_z\}`. The problem is described in a reference frame aligned with the sides of the ellipsoid and moving with it. The body has velocity :math:`\mathbf{v} = \{v_x, v_y, v_z\}` and angular velocity :math:`\boldsymbol{\omega} = \{\omega_x, \omega_y, \omega_z\}`. We will also use .. math:: \begin{align*} - d_\text{max} &= \max(d_x, d_y, d_z) \\ - d_\text{min} &= \min(d_x, d_y, d_z) \\ - d_\text{mid} &= d_x + d_y + d_z - d_\text{max} - d_\text{min} + r_\text{max} &= \max(r_x, r_y, r_z) \\ + r_\text{min} &= \min(r_x, r_y, r_z) \\ + r_\text{mid} &= r_x + r_y + r_z - r_\text{max} - r_\text{min} \end{align*} The Reynolds number is the ratio between inertial and viscous forces within a flow and is defined as :math:`Re=u~l/\beta`, where @@ -178,12 +198,12 @@ We present the following result. .. admonition:: Lemma :class: note - Given an ellipsoid with semi-axes :math:`(d_x, d_y, d_z)` aligned with the coordinate axes :math:`(x, y, z)`, and a + Given an ellipsoid with semi-axes :math:`(r_x, r_y, r_z)` aligned with the coordinate axes :math:`(x, y, z)`, and a unit vector :math:`\mathbf{u} = (u_x, u_y, u_z)`, the area projected by the ellipsoid onto the plane normal to :math:`\mathbf{u}` is .. math:: - A^{\mathrm{proj}}_{\mathbf{u}} = \pi \sqrt{\frac{d_y^4 d_z^4 u_x^2 + d_z^4 d_x^4 u_y^2 + d_x^4 d_y^4 u_z^2}{d_y^2 d_z^2 u_x^2 + d_z^2 d_x^2 u_y^2 + d_x^2 d_y^2 u_z^2}} + A^{\mathrm{proj}}_{\mathbf{u}} = \pi \sqrt{\frac{r_y^4 r_z^4 u_x^2 + r_z^4 r_x^4 u_y^2 + r_x^4 r_y^4 u_z^2}{r_y^2 r_z^2 u_x^2 + r_z^2 r_x^2 u_y^2 + r_x^2 r_y^2 u_z^2}} .. collapse:: Expand for derivation @@ -202,10 +222,10 @@ We present the following result. **Ellipsoid cross-section** We begin by computing the area of the ellipse formed by intersecting an ellipsoid centered at the origin with the plane :math:`\Pi_{\mathbf{n}}` through the origin with unit normal :math:`\mathbf{n} = (n_x, n_y, n_z)`. Let - :math:`(d_x, d_y, d_z)` be the semi-axis lengths of the ellipsoid. Without loss of generality, it is sufficient to + :math:`(r_x, r_y, r_z)` be the semi-axis lengths of the ellipsoid. Without loss of generality, it is sufficient to assume that the axes of the ellipsoid are aligned with the coordinate axes. The ellipsoid can then be described as :math:`\mathbf{x}^T Q \mathbf{x} = 1`, where - :math:`Q = \textrm{diag}\mathopen{}\left( \left. 1 \middle/ d_x^2 \right., \left. 1 \middle/ d_y^2 \right., \left. 1 \middle/ d_z^2 \right. \right)\mathclose{}` + :math:`Q = \textrm{diag}\mathopen{}\left( \left. 1 \middle/ r_x^2 \right., \left. 1 \middle/ r_y^2 \right., \left. 1 \middle/ r_z^2 \right. \right)\mathclose{}` and :math:`\mathbf{x} = (x, y, z)` are the points on the ellipsoid. We proceed by rotating the plane :math:`\Pi_{\mathbf{n}}` together with the ellipsoid so that the normal of the @@ -266,9 +286,9 @@ We present the following result. .. math:: \begin{align*} - Q'_{xx} &= \frac{1}{d_x^2} R_{xx}^2 + \frac{1}{d_y^2} R_{yx}^2 + \frac{1}{d_z^2} R_{zx}^2 , \\ - Q'_{yy} &= \frac{1}{d_x^2} R_{xy}^2 + \frac{1}{d_y^2} R_{yy}^2 + \frac{1}{d_z^2} R_{zy}^2 , \\ - Q'_{xy} &= \frac{1}{d_x^2} R_{xx} R_{xy} + \frac{1}{d_y^2} R_{yx} R_{yy} + \frac{1}{d_z^2} R_{zx} R_{zy} , + Q'_{xx} &= \frac{1}{r_x^2} R_{xx}^2 + \frac{1}{r_y^2} R_{yx}^2 + \frac{1}{r_z^2} R_{zx}^2 , \\ + Q'_{yy} &= \frac{1}{r_x^2} R_{xy}^2 + \frac{1}{r_y^2} R_{yy}^2 + \frac{1}{r_z^2} R_{zy}^2 , \\ + Q'_{xy} &= \frac{1}{r_x^2} R_{xx} R_{xy} + \frac{1}{r_y^2} R_{yx} R_{yy} + \frac{1}{r_z^2} R_{zx} R_{zy} , \end{align*} and the desired area is given by @@ -277,7 +297,7 @@ We present the following result. A^{\cap}_{\mathbf{n}} = \frac{\pi}{\sqrt{\vphantom{Q'^2_{xy}} \det Q'}} = \frac{\pi}{\sqrt{Q'_{xx} Q'_{yy} - Q'^2_{xy}}} - = \frac{\pi d_x d_y d_z}{\sqrt{d_x^2 n_x^2 + d_y^2 n_y^2 + d_z^2 n_z^2}}, + = \frac{\pi r_x r_y r_z}{\sqrt{r_x^2 n_x^2 + r_y^2 n_y^2 + r_z^2 n_z^2}}, where the superscript :math:`\cap` denotes that the area pertains to the ellipse at the *intersection* with :math:`\Pi_{\mathbf{n}}`. @@ -293,9 +313,9 @@ We present the following result. tangent to the ellipsoid :math:`\mathcal{E}` at every point on :math:`\mathcal{E}^{\mathrm{proj}}_{\mathbf{u}}`. We can regard :math:`\mathcal{E}` as the image of the unit sphere :math:`\mathcal{S}` under a stretching - transformation :math:`T = \mathrm{diag}(d_x, d_y, d_z)`. Furthermore, if :math:`\mathbf{\tilde{u}}` is a vector + transformation :math:`T = \mathrm{diag}(r_x, r_y, r_z)`. Furthermore, if :math:`\mathbf{\tilde{u}}` is a vector tangent to :math:`\mathcal{S}`, then its image - :math:`\mathbf{u}=T\mathbf{\tilde{u}}=(d_x \tilde{u}_x, d_y \tilde{u}_y, d_z \tilde{u}_z)` is tangent to the + :math:`\mathbf{u}=T\mathbf{\tilde{u}}=(r_x \tilde{u}_x, r_y \tilde{u}_y, r_z \tilde{u}_z)` is tangent to the ellipsoid. The ellipse :math:`\mathcal{E}^{\mathrm{proj}}_{\mathbf{u}}` is therefore the image under :math:`T` of the circle :math:`\mathcal{C}^{\cap}_{\mathbf{\tilde{u}}}` at the intersection between :math:`\mathcal{S}` and :math:`\Pi_{\mathbf{\tilde{u}}}` (for spheres :math:`\mathcal{C}^{\cap}` and @@ -303,15 +323,15 @@ We present the following result. Let :math:`\mathbf{\tilde{v}}` and :math:`\mathbf{\tilde{w}}` be some orthogonal pair of vectors in the plane :math:`\Pi_{\mathbf{\tilde{u}}}`, then :math:`\mathbf{\tilde{u}} = \mathbf{\tilde{v}} \times \mathbf{\tilde{w}}`. - Their images under :math:`T` are :math:`\mathbf{v} = (d_x \tilde{v}_x, d_y \tilde{v}_y, d_z \tilde {v}_z)` and - :math:`\mathbf{w} = (d_x \tilde{w}_x, d_y \tilde{w}_y, d_z \tilde {w}_z)` respectively, and they remain orthogonal + Their images under :math:`T` are :math:`\mathbf{v} = (r_x \tilde{v}_x, r_y \tilde{v}_y, r_z \tilde {v}_z)` and + :math:`\mathbf{w} = (r_x \tilde{w}_x, r_y \tilde{w}_y, r_z \tilde {w}_z)` respectively, and they remain orthogonal vectors in the plane of :math:`\mathcal{E}^{\mathrm{proj}}_{\mathbf{u}}`. A (non-unit) normal to the ellipse :math:`\mathcal{E}^{\mathrm{proj}}_{\mathbf{u}}` is therefore given by .. math:: \mathbf{N} = \mathbf{v} \times \mathbf{w} - = (d_y d_z \tilde{u}_x, d_z d_x \tilde{u}_y, d_x d_y \tilde{u}_z) - = \left( \frac{d_y d_z}{d_x} u_x, \frac{d_z d_x}{d_y} u_y, \frac{d_x d_y}{d_z} u_z \right). + = (r_y r_z \tilde{u}_x, r_z r_x \tilde{u}_y, r_x r_y \tilde{u}_z) + = \left( \frac{r_y r_z}{r_x} u_x, \frac{r_z r_x}{r_y} u_y, \frac{r_x r_y}{r_z} u_z \right). This shows that :math:`\mathcal{E}^{\mathrm{proj}}_{\mathbf{u}} = \mathcal{E}^{\cap}_{\mathbf{n}}`, where :math:`\mathbf{n} = \mathbf{N} / \left\Vert\mathbf{N}\right\Vert`. Its area is given by the formula derived in the @@ -359,11 +379,11 @@ Here :math:`\circ` denotes an element-wise product, :math:`\dot{\mathbf{v}}` is :math:`\dot{\boldsymbol{\omega}}` is the angular acceleration. :math:`\mathbf{m}_A \circ \mathbf{v}` and :math:`\mathbf{I}_A \circ \boldsymbol{\omega}` are the virtual linear and angular momentum respectively. -For an ellipsoid of semi-axis :math:`\mathbf{d} = \{d_x, d_y, d_z\}` and volume :math:`V = 4 \pi d_x d_y d_z / 3`, the +For an ellipsoid of semi-axis :math:`\mathbf{r} = \{r_x, r_y, r_z\}` and volume :math:`V = 4 \pi r_x r_y r_z / 3`, the virtual inertia coefficients were derived by :cite:t:`tuckerman1925`. Let: .. math:: - \kappa_i = \int_0^\infty \frac{d_i d_j d_k}{\sqrt{(d_i^2 + \lambda)^3 (d_j^2 + \lambda) (d_k^2 + \lambda)}} \textrm{d} \lambda + \kappa_i = \int_0^\infty \frac{r_i r_j r_k}{\sqrt{(r_i^2 + \lambda)^3 (r_j^2 + \lambda) (r_k^2 + \lambda)}} \textrm{d} \lambda It should be noted that these coefficients are non-dimensional (i.e. if all semi-axes are multiplied by the same scalar @@ -375,7 +395,7 @@ the coefficients remain the same). The virtual masses of the ellipsoid are: And the virtual moments of inertia are: .. math:: - I_{A, i} = \frac{\rho V}{5} \frac{(d_j^2 - d_k^2)^2 (\kappa_k-\kappa_j)}{2(d_j^2 - d_k^2) + (d_j^2 + d_k^2) (\kappa_j-\kappa_k)} + I_{A, i} = \frac{\rho V}{5} \frac{(r_j^2 - r_k^2)^2 (\kappa_k-\kappa_j)}{2(r_j^2 - r_k^2) + (r_j^2 + r_k^2) (\kappa_j-\kappa_k)} Viscous drag ~~~~~~~~~~~~ @@ -411,7 +431,7 @@ bagheri2016`. See screen capture of the We derive a formula for :math:`\mathbf{f}_\text{D}` based on two surfaces :math:`A^\text{proj}_\mathbf{v}` and :math:`A_\text{max}`. The first, :math:`A^\text{proj}_\mathbf{v}`, is the cylindrical projection of the body onto a plane normal to the velocity :math:`\mathbf{v}`. The second is the maximum projected surface -:math:`A_\text{max} = 4 \pi d_{max} d_{min}`. +:math:`A_\text{max} = 4 \pi r_{max} r_{min}`. .. math:: \mathbf{f}_\text{D} = - \rho~ \big[ C_{D, \text{blunt}} ~ A^\text{proj}_\mathbf{v} ~ + @@ -424,7 +444,7 @@ maximum swept ellipsoid obtained by the rotation of the body around the axis. Th moment of inertia are: .. math:: - \mathbf{I}_{D,ii} = \frac{8\pi}{15} ~d_i ~\max(d_j, ~d_k)^4 . + \mathbf{I}_{D,ii} = \frac{8\pi}{15} ~r_i ~\max(r_j, ~r_k)^4 . Given this reference moment of inertia, the angular drag torque is computed as: @@ -435,22 +455,21 @@ Given this reference moment of inertia, the angular drag torque is computed as: Here :math:`\mathbf{I}_\text{max}` is a vector with each entry equal to the maximal component of :math:`\mathbf{I}_D`. -The viscosity :math:`\beta` -For Reynolds numbers around or below :math:`O(10)`, the drag is best approximated as linear in the flow velocity -(e.g. Stokes' law). For example, for a sphere the drag force :cite:p:`stokes1850` and torque :cite:p:`lamb1932` are: +Finally, the viscous resistance terms, also known as linear drag, well approvimate the fluid forces for Reynolds +numbers around or below :math:`O(10)`. These are computed for the equivalent sphere with Stokes' law +:cite:p:`stokes1850,lamb1932`: .. math:: \begin{align*} - \mathbf{f}_\text{S} &= - 6 \pi r_D \rho ~ \beta \mathbf{v}\\ - \mathbf{g}_\text{S} &= - 8 \pi r_D^3 \rho ~ \beta \boldsymbol{\omega} + \mathbf{f}_\text{V} &= - 6 \pi r_D \beta \mathbf{v}\\ + \mathbf{g}_\text{V} &= - 8 \pi r_D^3 \beta \boldsymbol{\omega} \end{align*} -Here, :math:`r_D` is the radius of the sphere and :math:`\beta` is the kinematic viscosity of the medium (e.g. -:math:`1.48~\times 10^{-5}~m^2/s` for ambient-temperature air and :math:`0.89 \times 10^{-4}~m^2/s` for water). Here, -for simplicity, we estimate the radius of the equivalent sphere as :math:`r_D = (d_x + d_y + d_z)/3`. To make a -quantitative example, Stokes' law become accurate for room-temperature air if -:math:`u\cdot l \lesssim 2 \times 10^{-4}~m^2/s`, where :math:`u` is the speed and :math:`l` a characteristic length of -the body. +Here, :math:`r_D = (r_x + r_y + r_z)/3` is the radius of the equivalent sphere and :math:`\beta` is the kinematic +viscosity of the medium (e.g. :math:`1.48~\times 10^{-5}~m^2/s` for ambient-temperature air and +:math:`0.89 \times 10^{-4}~m^2/s` for water). To make a quantitative example, Stokes' law become accurate for +room-temperature air if :math:`u\cdot l \lesssim 2 \times 10^{-4}~m^2/s`, where :math:`u` is the speed and +:math:`l` a characteristic length of the body. Viscous lift ~~~~~~~~~~~~ @@ -487,7 +506,7 @@ It's worth making an example. To reduce the number of variables, suppose a body sum of the force due to added mass and the force due to the Magnus effect along, for example, :math:`x` is: .. math:: - \frac{f}{\pi \rho d_z} = v_y \omega_z \left(2 d_x \min\{d_x, d_z\} - (d_x + d_z)^2\right) + \frac{f}{\pi \rho r_z} = v_y \omega_z \left(2 r_x \min\{r_x, r_z\} - (r_x + r_z)^2\right) Note that the two terms have opposite signs. @@ -512,13 +531,13 @@ as slender bodies or the trailing edges of airfoils. upward force acting on the plate. For a two-dimensional flow sketched in the figure above, the circulation due to the Kutta condition can be estimated as: -:math:`\Gamma_\text{K} = C_K ~ d_x ~ \| \mathbf{v}\| ~ \sin(2\alpha)`, +:math:`\Gamma_\text{K} = C_K ~ r_x ~ \| \mathbf{v}\| ~ \sin(2\alpha)`, where :math:`C_K` is a lift coefficient, and :math:`\alpha` is the angle between the velocity vector and its projection onto the surface. The lift force per unit length can be computed with the Kutta–Joukowski theorem as :math:`\mathbf{f}_K / L = \rho \Gamma_\text{K} \times \mathbf{v}`. In order to extend the lift force equation to three-dimensional motions, we consider the normal -:math:`\mathbf{n}_{s, \mathbf{v}} = \{\frac{d_y d_z}{d_x}v_x, \frac{d_z d_x}{d_y}v_y, \frac{d_x d_x}{d_z}v_z\}` +:math:`\mathbf{n}_{s, \mathbf{v}} = \{\frac{r_y r_z}{r_x}v_x, \frac{r_z r_x}{r_y}v_y, \frac{r_x r_x}{r_z}v_z\}` to the cross-section of the body which generates the body's projection :math:`A^\text{proj}_\mathbf{v}` onto a plane normal to the velocity given in the :ref:`lemma` above and the corresponding unit vector :math:`\hat{\mathbf{n}}_{s, \mathbf{v}}`. @@ -539,25 +558,25 @@ Here, :math:`\hat{\mathbf{v}}` is the unit-normal along :math:`\mathbf{v}`. Note example, for spherical bodies :math:`\hat{\mathbf{n}}_{s, \mathbf{v}} \equiv \hat{\mathbf{v}}` and by construction :math:`\mathbf{f}_\text{K} = 0`. -Let's unpack the relation with an example. Suppose a body with :math:`d_x = d_y` and :math:`d_z \ll d_x`. Note that the vector +Let's unpack the relation with an example. Suppose a body with :math:`r_x = r_y` and :math:`r_z \ll r_x`. Note that the vector :math:`\hat{\mathbf{n}}_{s, \mathbf{v}} \times \hat{\mathbf{v}}` gives the direction of the circulation induced by the -deflection of the flow by the solid body. Along :math:`z`, the circulation will be proportional to :math:`\frac{d_y d_z}{d_x}v_x v_y -- \frac{d_z d_x}{d_y}v_x v_y = 0` (due to :math:`d_x = d_y`). Therefore, on the plane where the solid is blunt, the motion +deflection of the flow by the solid body. Along :math:`z`, the circulation will be proportional to :math:`\frac{r_y r_z}{r_x}v_x v_y +- \frac{r_z r_x}{r_y}v_x v_y = 0` (due to :math:`r_x = r_y`). Therefore, on the plane where the solid is blunt, the motion produces no circulation. Now, for simplicity, let :math:`v_x = 0`. In this case also the circulation along :math:`y`, proportional -to :math:`\frac{d_y d_z}{d_x}v_x v_z - \frac{d_y d_x}{d_y}v_x v_z`, is zero. The only non-zero component of the circulation -will be along :math:`x` and be proportional to :math:`\left(\frac{d_x d_z}{d_y} - \frac{d_x d_y}{d_z}\right) v_y v_z \approx -\frac{d_x^2}{d_z} v_y v_z`. +to :math:`\frac{r_y r_z}{r_x}v_x v_z - \frac{r_y r_x}{r_y}v_x v_z`, is zero. The only non-zero component of the circulation +will be along :math:`x` and be proportional to :math:`\left(\frac{r_x r_z}{r_y} - \frac{r_x r_y}{r_z}\right) v_y v_z \approx +\frac{r_x^2}{r_z} v_y v_z`. We would have :math:`\mathbf{v}_\parallel = \{v_x, 0, v_z\}` and -:math:`\Gamma \propto \{d_z v_y v_z, ~ 0,~ - d_x v_x v_y \} / \|\mathbf{v}\|`. +:math:`\Gamma \propto \{r_z v_y v_z, ~ 0,~ - r_x v_x v_y \} / \|\mathbf{v}\|`. The motion produces no circulation on the plane where the solid is blunt, and on the other two planes the circulation is :math:`\Gamma \propto r_\Gamma ~ \|\mathbf{v}\|~ \sin(2 \alpha) ~ = ~2 r_\Gamma ~\|\mathbf{v}\| ~\sin(\alpha)~\cos(\alpha)` with :math:`\alpha` the angle between the velocity and its projection on the body on the plane (e.g. on the plane orthogonal to :math:`x` we have :math:`\sin(\alpha) = v_y/\|\mathbf{v}\|` and -:math:`\cos(\alpha) = v_z/\|\mathbf{v}\|`), and :math:`r_\Gamma`, the lift surface on the plane (e.g. :math:`d_z` for +:math:`\cos(\alpha) = v_z/\|\mathbf{v}\|`), and :math:`r_\Gamma`, the lift surface on the plane (e.g. :math:`r_z` for the plane orthogonal to :math:`x`). Furthermore, the direction of the circulation is given by the cross product (because the solid boundary "rotates" the incoming flow velocity towards its projection on the body). From 50b4f0277de965a14be337986b333c262ddd6707 Mon Sep 17 00:00:00 2001 From: Alessio Quaglino Date: Tue, 17 Oct 2023 10:35:03 -0700 Subject: [PATCH 10/26] Add elasticity plugin README. PiperOrigin-RevId: 574195554 Change-Id: Ib57614aaef66cdb26e3667c66df2426e63dacac4 --- plugin/elasticity/README.md | 56 +++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 plugin/elasticity/README.md diff --git a/plugin/elasticity/README.md b/plugin/elasticity/README.md new file mode 100644 index 00000000..eba2440b --- /dev/null +++ b/plugin/elasticity/README.md @@ -0,0 +1,56 @@ +

+ MuJoCo +

+ +## Elasticity plugins + +These are first-party plugins that implement passive forces based on discretized continuum mechanics models. They can be applied to **flexes** and **bodies** (via the **composite** functionality). Sample models can be found in [this folder](../../model/plugin/elasticity/). + +### Cable + +Implemented in [cable.cc](cable.cc). + +The cable plugin discretizes an inextensible 1D continuum. It is intended to simulate the twist and bending of rods where the stretching in negligible compared to the other deformation modes. + +Parameters: + + - `twist` [Pa]: twisting stiffness. + - `bend` [Pa]: bending stiffness. + - `flat` [bool]: if true, the stress-equilibrium configuration is that of a straight cable; if true, it is the configuration defined in the XML. + - `vmax` [N/m^2]: If greater than zero, the cable is colored using mechanical stresses; the value represent the maximum stress in the color scale. + +### Shell + +Implemented in [shell.cc](shell.cc). + +The shell plugin discretizes an inextensible 2D continuum. It is intended to simulate the bending of plates where the stretching is negligible compared to other deformation modes. + +Parameters: + + - `young` [Pa]: Young's modulus. + - `poisson` [Pa]: Poisson's ratio; if 0, then the material only opposed shear deformations; if near 0.5, then the material is nearly incompressible (rubber-like). + - `thickness` [m]: shell thickness, used to scale the bending stiffness. + +### Membrane + +Implemented in [membrane.cc](membrane.cc). + +The membrane plugin discretized an extensible 2D continuum. It is intended to simulate the stretching of membranes subjected to tensile stresses, where the bending is negligible. + +Parameters: + + - `young` [Pa]: Young's modulus. + - `poisson` [Pa]: Poisson's ratio; if 0, then the material only opposed shear deformations; if near 0.5, then the material is nearly incompressible (rubber-like). + - `thickness` [m]: shell thickness, used to scale the stretching stiffness. + +### Solid + +Implemented in [solid.cc](solid.cc). + +The membrane plugin discretized an extensible 3D continuum. It is Saint Venant–Kirchhoff model intended to simulate the compression or elongation of hyperelastic materials subjected to large displacements (finite rotations) and small strains, since it uses a nonlinear strain-displacement but a linear stress-strain relationship. + +Parameters: + + - `young` [Pa]: Young's modulus. + - `poisson` [Pa]: Poisson's ratio; if 0, then the material only opposed shear deformations; if near 0.5, then the material is nearly incompressible (rubber-like). + - `damping` [Ns/m^2]: damping coefficient for Rayleigh damping. From 18e4e10142d3d2ab62f3641de264eec246e3cb3f Mon Sep 17 00:00:00 2001 From: Yuval Tassa Date: Tue, 17 Oct 2023 11:07:51 -0700 Subject: [PATCH 11/26] Mention fluid force documentation in the changelog. PiperOrigin-RevId: 574206986 Change-Id: Ia5246f369070c463c10a2d63cf2ae29b40317724 --- doc/changelog.rst | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/doc/changelog.rst b/doc/changelog.rst index aee18a76..04edfb6d 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -177,13 +177,24 @@ Simulate 30. The ``LOADING...`` label is now shown correctly. Contribution :github:pull:`1070` by `Levi Burner `__. +Documentation +^^^^^^^^^^^^^ + +.. youtube:: nljr0X79vI0 + :align: right + :width: 240px + +31. Added :doc:`detailed documentation ` of fluid force modeling, and an illustrative example model + showing `tumbling cards `__ using the + ellipsoid-based fluid model. + Bug fixes ^^^^^^^^^ -31. Fixed a bug that was causing :ref:`geom margin` to be ignored during the construction of +32. Fixed a bug that was causing :ref:`geom margin` to be ignored during the construction of midphase collision trees. -32. Fixed a bug that was generating incorrect values in ``efc_diagApprox`` for weld equality constraints. +33. Fixed a bug that was generating incorrect values in ``efc_diagApprox`` for weld equality constraints. Version 2.3.7 (July 20, 2023) From d0bdb78207468a3750065e6b7ba3bca90aea04a7 Mon Sep 17 00:00:00 2001 From: Yuval Tassa Date: Tue, 17 Oct 2023 13:16:36 -0700 Subject: [PATCH 12/26] Disable island discovery for models with flexes. PiperOrigin-RevId: 574244981 Change-Id: I7c08b23cf5f29338a04ec684ad7a0d4d8a0397df --- doc/changelog.rst | 2 +- src/engine/engine_forward.c | 1 + src/engine/engine_island.c | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/doc/changelog.rst b/doc/changelog.rst index 04edfb6d..d80ab46f 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -46,7 +46,7 @@ New features and degrees-of-freedom that do not interact. The only solver which currently supports islands is :ref:`CG`. Island discovery can be activated using a new :ref:`enable flag`. If island discovery is enabled, geoms, contacts and tendons will be colored according to the corresponding island, - see video. + see video. Island discovery is currently disabled for models that have deformable objects (see prevous item). 4. Added :ref:`mjThreadPool` and :ref:`mjTask` which allow for multi-threaded operations within the MuJoCo engine pipeline. If engine-internal threading is enabled, the following operations will be multi-threaded: diff --git a/src/engine/engine_forward.c b/src/engine/engine_forward.c index 98fa76ed..dd5fdd8b 100644 --- a/src/engine/engine_forward.c +++ b/src/engine/engine_forward.c @@ -619,6 +619,7 @@ void mj_fwdConstraint(const mjModel* m, mjData* d) { // check if islands are supported int islands_supported = mjENABLED(mjENBL_ISLAND) && + d->nisland > 0 && m->opt.solver == mjSOL_CG && m->opt.noslip_iterations == 0; diff --git a/src/engine/engine_island.c b/src/engine/engine_island.c index efa2edea..7a11735f 100644 --- a/src/engine/engine_island.c +++ b/src/engine/engine_island.c @@ -407,7 +407,7 @@ void mj_island(const mjModel* m, mjData* d) { int nv = m->nv, nefc = d->nefc, ntree=m->ntree; // no constraints: quick return - if (!nefc) { + if (!nefc || m->nflex) { // TODO: add flex support to island discovery d->nisland = 0; return; } From 3f3d5a3b49547bb125f6b2c2fdea4eba039875e7 Mon Sep 17 00:00:00 2001 From: Alessio Quaglino Date: Tue, 17 Oct 2023 15:04:38 -0700 Subject: [PATCH 13/26] Fix `contactcompare` swapping condition. PiperOrigin-RevId: 574276137 Change-Id: Iafbb6a99c1fb57907d3cb1d0796b6ad718e549d2 --- src/engine/engine_collision_driver.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/engine/engine_collision_driver.c b/src/engine/engine_collision_driver.c index 590f5852..11433b0c 100644 --- a/src/engine/engine_collision_driver.c +++ b/src/engine/engine_collision_driver.c @@ -238,7 +238,8 @@ quicksortfunc(contactcompare, context, el1, el2) { // for geom:geom, reproduce the order of contacts without mj_collideTree // normally sorted by (g1, g2), but in mj_collideGeoms, g1 and g2 are swapped based on geom_type // here we undo this swapping for the purpose of sorting - needs to be done for each mjContact - if (c1->geom[0] >= 0 && c1->geom[1] && c2->geom[0] >= 0 && c2->geom[1]) { + if (c1->geom[0] >= 0 && c1->geom[1] >= 0 && + c2->geom[0] >= 0 && c2->geom[1] >= 0) { if (m->geom_type[con1_obj1] > m->geom_type[con1_obj2]) { int tmp = con1_obj1; con1_obj1 = con1_obj2; From 8f9c690c8593df7531597aa1a3589febb731ff0a Mon Sep 17 00:00:00 2001 From: Erik Frey Date: Wed, 18 Oct 2023 03:09:54 +0100 Subject: [PATCH 14/26] Add MJX and bump version number to 3.0.0. Co-authored-by: Baruch Tabanpour PiperOrigin-RevId: 574327508 Change-Id: Ia9b62fbc929c6869dfcec87636b2e10d405a1060 --- CMakeLists.txt | 2 +- dist/mujoco.rc | 8 +- dist/simulate.rc | 8 +- doc/APIreference/APIglobals.rst | 2 +- doc/changelog.rst | 101 +- doc/images/mjx/mujoco_vs_mjx_large_scene.png | Bin 0 -> 26229 bytes doc/index.rst | 1 + doc/mjx.rst | 312 + doc/unity.rst | 4 +- include/mujoco/mujoco.h | 2 +- mjx/MANIFEST.in | 2 + mjx/README.md | 54 + mjx/cuda_requirements.txt | 17 + mjx/mujoco/mjx/__init__.py | 34 + mjx/mujoco/mjx/_src/__init__.py | 14 + mjx/mujoco/mjx/_src/collision_base.py | 64 + mjx/mujoco/mjx/_src/collision_convex.py | 724 + mjx/mujoco/mjx/_src/collision_driver.py | 373 + mjx/mujoco/mjx/_src/collision_driver_test.py | 499 + mjx/mujoco/mjx/_src/collision_primitive.py | 126 + mjx/mujoco/mjx/_src/constraint.py | 340 + mjx/mujoco/mjx/_src/constraint_test.py | 144 + mjx/mujoco/mjx/_src/dataclasses.py | 151 + mjx/mujoco/mjx/_src/device.py | 282 + mjx/mujoco/mjx/_src/device_test.py | 184 + mjx/mujoco/mjx/_src/forward.py | 356 + mjx/mujoco/mjx/_src/forward_test.py | 125 + mjx/mujoco/mjx/_src/io.py | 105 + mjx/mujoco/mjx/_src/io_test.py | 42 + mjx/mujoco/mjx/_src/math.py | 356 + mjx/mujoco/mjx/_src/math_test.py | 202 + mjx/mujoco/mjx/_src/mesh.py | 232 + mjx/mujoco/mjx/_src/mesh_test.py | 119 + mjx/mujoco/mjx/_src/passive.py | 141 + mjx/mujoco/mjx/_src/passive_test.py | 114 + mjx/mujoco/mjx/_src/scan.py | 432 + mjx/mujoco/mjx/_src/scan_test.py | 227 + mjx/mujoco/mjx/_src/smooth.py | 466 + mjx/mujoco/mjx/_src/smooth_test.py | 166 + mjx/mujoco/mjx/_src/solver.py | 356 + mjx/mujoco/mjx/_src/solver_test.py | 130 + mjx/mujoco/mjx/_src/support.py | 81 + mjx/mujoco/mjx/_src/support_test.py | 81 + mjx/mujoco/mjx/_src/test_util.py | 340 + mjx/mujoco/mjx/_src/test_util_test.py | 38 + mjx/mujoco/mjx/_src/types.py | 660 + mjx/mujoco/mjx/benchmark/__init__.py | 14 + mjx/mujoco/mjx/benchmark/benchmark.py | 116 + .../mjx/benchmark/model/barkour_v0/README.md | 35 + .../model/barkour_v0/assets/abduction.stl | Bin 0 -> 429334 bytes .../barkour_v0/assets/barkour_v0_mjx.xml | 243 + .../model/barkour_v0/assets/body.stl | Bin 0 -> 1169584 bytes .../model/barkour_v0/assets/foot.stl | Bin 0 -> 23384 bytes .../model/barkour_v0/assets/handle.stl | Bin 0 -> 739084 bytes .../model/barkour_v0/assets/head.stl | Bin 0 -> 267584 bytes .../model/barkour_v0/assets/head_mount.stl | Bin 0 -> 163984 bytes .../model/barkour_v0/assets/joystick.gif | Bin 0 -> 4161040 bytes .../barkour_v0/assets/lower_leg_1to1.stl | Bin 0 -> 523084 bytes .../model/barkour_v0/assets/powercable.stl | Bin 0 -> 1199984 bytes .../model/barkour_v0/assets/upper_left_1.stl | Bin 0 -> 530834 bytes .../model/barkour_v0/assets/upper_left_2.stl | Bin 0 -> 628484 bytes .../model/barkour_v0/assets/upper_left_3.stl | Bin 0 -> 1500284 bytes .../model/barkour_v0/assets/upper_right_1.stl | Bin 0 -> 1106034 bytes .../model/barkour_v0/assets/upper_right_2.stl | Bin 0 -> 670284 bytes .../model/barkour_v0/assets/upper_right_3.stl | Bin 0 -> 1521284 bytes .../mjx/benchmark/model/humanoid/README.md | 26 + .../mjx/benchmark/model/humanoid/humanoid.png | Bin 0 -> 397686 bytes .../mjx/benchmark/model/humanoid/humanoid.xml | 256 + .../mjx/benchmark/model/shadow_hand/README.md | 28 + .../model/shadow_hand/assets/f_distal_pst.obj | 10772 +++++ .../model/shadow_hand/assets/f_knuckle.obj | 1200 + .../model/shadow_hand/assets/f_middle.obj | 908 + .../model/shadow_hand/assets/f_proximal.obj | 2206 + .../model/shadow_hand/assets/forearm_0.obj | 2220 + .../model/shadow_hand/assets/forearm_1.obj | 37554 ++++++++++++++++ .../shadow_hand/assets/forearm_collision.obj | 924 + .../shadow_hand/assets/lf_metacarpal.obj | 2996 ++ .../shadow_hand/assets/mounting_plate.obj | 3936 ++ .../model/shadow_hand/assets/palm.obj | 23598 ++++++++++ .../shadow_hand/assets/th_distal_pst.obj | 9528 ++++ .../model/shadow_hand/assets/th_middle.obj | 2544 ++ .../model/shadow_hand/assets/th_proximal.obj | 840 + .../model/shadow_hand/assets/wrist.obj | 3708 ++ .../model/shadow_hand/right_hand.xml | 327 + .../model/shadow_hand/scene_right.xml | 31 + .../model/shadow_hand/shadow_hand.png | Bin 0 -> 1315458 bytes .../integration_test/collision_driver_test.py | 91 + .../mjx/integration_test/forward_test.py | 71 + .../mjx/integration_test/smooth_test.py | 74 + mjx/mujoco/mjx/test_data/ant.xml | 82 + mjx/mujoco/mjx/test_data/ball_pendulum.xml | 23 + mjx/mujoco/mjx/test_data/cherry_pendulum.xml | 20 + mjx/mujoco/mjx/test_data/convex.xml | 46 + mjx/mujoco/mjx/test_data/humanoid.xml | 109 + .../mjx/test_data/meshes/dodecahedron.stl | Bin 0 -> 1884 bytes mjx/mujoco/mjx/test_data/meshes/pyramid.stl | Bin 0 -> 384 bytes .../mjx/test_data/meshes/tetrahedron.stl | Bin 0 -> 284 bytes .../mjx/test_data/mixed_joint_pendulum.xml | 23 + mjx/mujoco/mjx/test_data/single_pendulum.xml | 9 + mjx/mujoco/mjx/test_data/slide_pendulum.xml | 20 + mjx/mujoco/mjx/test_data/triple_pendulum.xml | 21 + .../mjx/test_data/triple_pendulum_free.xml | 24 + mjx/mujoco/mjx/test_data/weld.xml | 58 + mjx/mujoco/mjx/viewer.py | 84 + mjx/pyproject.toml | 43 + mjx/requirements.txt | 161 + mjx/tutorial.ipynb | 1271 + python/build_requirements.txt | 20 +- python/mujoco/CMakeLists.txt | 4 +- python/mujoco/mjpython/Info.plist | 8 +- python/pyproject.toml | 6 +- sample/CMakeLists.txt | 2 +- simulate/CMakeLists.txt | 2 +- src/engine/engine_support.c | 4 +- .../Editor/Bindings/MujocoBinaryRetriever.cs | 4 +- unity/Runtime/Bindings/MjBindings.cs | 2 +- unity/package.json | 2 +- 117 files changed, 114430 insertions(+), 81 deletions(-) create mode 100644 doc/images/mjx/mujoco_vs_mjx_large_scene.png create mode 100644 doc/mjx.rst create mode 100644 mjx/MANIFEST.in create mode 100644 mjx/README.md create mode 100644 mjx/cuda_requirements.txt create mode 100644 mjx/mujoco/mjx/__init__.py create mode 100644 mjx/mujoco/mjx/_src/__init__.py create mode 100644 mjx/mujoco/mjx/_src/collision_base.py create mode 100644 mjx/mujoco/mjx/_src/collision_convex.py create mode 100644 mjx/mujoco/mjx/_src/collision_driver.py create mode 100644 mjx/mujoco/mjx/_src/collision_driver_test.py create mode 100644 mjx/mujoco/mjx/_src/collision_primitive.py create mode 100644 mjx/mujoco/mjx/_src/constraint.py create mode 100644 mjx/mujoco/mjx/_src/constraint_test.py create mode 100644 mjx/mujoco/mjx/_src/dataclasses.py create mode 100644 mjx/mujoco/mjx/_src/device.py create mode 100644 mjx/mujoco/mjx/_src/device_test.py create mode 100644 mjx/mujoco/mjx/_src/forward.py create mode 100644 mjx/mujoco/mjx/_src/forward_test.py create mode 100644 mjx/mujoco/mjx/_src/io.py create mode 100644 mjx/mujoco/mjx/_src/io_test.py create mode 100644 mjx/mujoco/mjx/_src/math.py create mode 100644 mjx/mujoco/mjx/_src/math_test.py create mode 100644 mjx/mujoco/mjx/_src/mesh.py create mode 100644 mjx/mujoco/mjx/_src/mesh_test.py create mode 100644 mjx/mujoco/mjx/_src/passive.py create mode 100644 mjx/mujoco/mjx/_src/passive_test.py create mode 100644 mjx/mujoco/mjx/_src/scan.py create mode 100644 mjx/mujoco/mjx/_src/scan_test.py create mode 100644 mjx/mujoco/mjx/_src/smooth.py create mode 100644 mjx/mujoco/mjx/_src/smooth_test.py create mode 100644 mjx/mujoco/mjx/_src/solver.py create mode 100644 mjx/mujoco/mjx/_src/solver_test.py create mode 100644 mjx/mujoco/mjx/_src/support.py create mode 100644 mjx/mujoco/mjx/_src/support_test.py create mode 100644 mjx/mujoco/mjx/_src/test_util.py create mode 100644 mjx/mujoco/mjx/_src/test_util_test.py create mode 100644 mjx/mujoco/mjx/_src/types.py create mode 100644 mjx/mujoco/mjx/benchmark/__init__.py create mode 100644 mjx/mujoco/mjx/benchmark/benchmark.py create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/README.md create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/abduction.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/barkour_v0_mjx.xml create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/body.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/foot.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/handle.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/head.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/head_mount.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/joystick.gif create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/lower_leg_1to1.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/powercable.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/upper_left_1.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/upper_left_2.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/upper_left_3.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/upper_right_1.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/upper_right_2.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/barkour_v0/assets/upper_right_3.stl create mode 100644 mjx/mujoco/mjx/benchmark/model/humanoid/README.md create mode 100644 mjx/mujoco/mjx/benchmark/model/humanoid/humanoid.png create mode 100644 mjx/mujoco/mjx/benchmark/model/humanoid/humanoid.xml create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/README.md create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/f_distal_pst.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/f_knuckle.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/f_middle.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/f_proximal.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/forearm_0.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/forearm_1.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/forearm_collision.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/lf_metacarpal.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/mounting_plate.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/palm.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/th_distal_pst.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/th_middle.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/th_proximal.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/assets/wrist.obj create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/right_hand.xml create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/scene_right.xml create mode 100644 mjx/mujoco/mjx/benchmark/model/shadow_hand/shadow_hand.png create mode 100644 mjx/mujoco/mjx/integration_test/collision_driver_test.py create mode 100644 mjx/mujoco/mjx/integration_test/forward_test.py create mode 100644 mjx/mujoco/mjx/integration_test/smooth_test.py create mode 100644 mjx/mujoco/mjx/test_data/ant.xml create mode 100644 mjx/mujoco/mjx/test_data/ball_pendulum.xml create mode 100644 mjx/mujoco/mjx/test_data/cherry_pendulum.xml create mode 100644 mjx/mujoco/mjx/test_data/convex.xml create mode 100644 mjx/mujoco/mjx/test_data/humanoid.xml create mode 100644 mjx/mujoco/mjx/test_data/meshes/dodecahedron.stl create mode 100644 mjx/mujoco/mjx/test_data/meshes/pyramid.stl create mode 100644 mjx/mujoco/mjx/test_data/meshes/tetrahedron.stl create mode 100644 mjx/mujoco/mjx/test_data/mixed_joint_pendulum.xml create mode 100644 mjx/mujoco/mjx/test_data/single_pendulum.xml create mode 100644 mjx/mujoco/mjx/test_data/slide_pendulum.xml create mode 100644 mjx/mujoco/mjx/test_data/triple_pendulum.xml create mode 100644 mjx/mujoco/mjx/test_data/triple_pendulum_free.xml create mode 100644 mjx/mujoco/mjx/test_data/weld.xml create mode 100644 mjx/mujoco/mjx/viewer.py create mode 100644 mjx/pyproject.toml create mode 100644 mjx/requirements.txt create mode 100644 mjx/tutorial.ipynb diff --git a/CMakeLists.txt b/CMakeLists.txt index bc6c5126..285250b6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -28,7 +28,7 @@ set(MSVC_INCREMENTAL_DEFAULT ON) project( mujoco - VERSION 2.3.8 + VERSION 3.0.0 DESCRIPTION "MuJoCo Physics Simulator" HOMEPAGE_URL "https://mujoco.org" ) diff --git a/dist/mujoco.rc b/dist/mujoco.rc index 6804238a..2f472f99 100644 --- a/dist/mujoco.rc +++ b/dist/mujoco.rc @@ -1,6 +1,6 @@ 1 VERSIONINFO -FILEVERSION 2,3,8,0 -PRODUCTVERSION 2,3,8,0 +FILEVERSION 3,0,0,0 +PRODUCTVERSION 3,0,0,0 FILEOS 0x4 FILETYPE 0x1 { @@ -9,9 +9,9 @@ FILETYPE 0x1 BLOCK "040904b0" { VALUE "ProductName", "MuJoCo" - VALUE "ProductVersion", "2.3.8" + VALUE "ProductVersion", "3.0.0" VALUE "FileDescription", "MuJoCo" - VALUE "FileVersion", "2.3.8" + VALUE "FileVersion", "3.0.0" VALUE "InternalName", "mujoco.dll" VALUE "OriginalFilename", "mujoco.dll" VALUE "CompanyName", "Google DeepMind" diff --git a/dist/simulate.rc b/dist/simulate.rc index a7a8ed35..7cfeae8c 100644 --- a/dist/simulate.rc +++ b/dist/simulate.rc @@ -1,8 +1,8 @@ MUJOCO ICON "mujoco.ico" 1 VERSIONINFO -FILEVERSION 2,3,8,0 -PRODUCTVERSION 2,3,8,0 +FILEVERSION 3,0,0,0 +PRODUCTVERSION 3,0,0,0 FILEOS 0x4 FILETYPE 0x1 { @@ -11,9 +11,9 @@ FILETYPE 0x1 BLOCK "040904b0" { VALUE "ProductName", "MuJoCo" - VALUE "ProductVersion", "2.3.8" + VALUE "ProductVersion", "3.0.0" VALUE "FileDescription", "MuJoCo" - VALUE "FileVersion", "2.3.8" + VALUE "FileVersion", "3.0.0" VALUE "InternalName", "simulate.exe" VALUE "OriginalFilename", "simulate.exe" VALUE "CompanyName", "Google DeepMind" diff --git a/doc/APIreference/APIglobals.rst b/doc/APIreference/APIglobals.rst index 8a6502d1..f307715f 100644 --- a/doc/APIreference/APIglobals.rst +++ b/doc/APIreference/APIglobals.rst @@ -522,7 +522,7 @@ shown in the table below. Their names are in the format ``mjKEY_XXX``. They corr - Maximum number of UI rectangles. Defined in `mjui.h `_. * - ``mjVERSION_HEADER`` - - 238 + - 300 - The version of the MuJoCo headers; changes with every release. This is an integer equal to 100x the software version, so 210 corresponds to version 2.1. Defined in mujoco.h. The API function :ref:`mj_version` returns a number with the same meaning but for the compiled library. diff --git a/doc/changelog.rst b/doc/changelog.rst index d80ab46f..183dc496 100644 --- a/doc/changelog.rst +++ b/doc/changelog.rst @@ -2,17 +2,28 @@ Changelog ========= -Upcoming version (not yet released) ------------------------------------ +Version 3.0.0 (October 18, 2023) +-------------------------------- New features ^^^^^^^^^^^^ +1. Added simulation on GPU and TPU via the new :doc:`mjx` (MJX) Python module. Python users can now + natively run MuJoCo simulations at millions of steps per second on Google TPU or their own accelerator hardware. + + - MJX is designed to work with on-device reinforcement learning algorithms. This Colab notebook demonstrates using + MJX along with reinforcement learning to train humanoid and quadruped robots to locomote: |colab| + - The MJX API is compatible with MuJoCo but is missing some features in this release. See the outline of + :ref:`MJX feature parity ` for more details. + +.. |colab| image:: https://colab.research.google.com/assets/colab-badge.svg + :target: https://colab.research.google.com/github/google-deepmind/mujoco/blob/main/mjx/tutorial.ipynb + .. youtube:: QewlEqIZi1o :align: right :width: 240px -1. Added new signed distance field (SDF) collision primitive. SDFs can take any shape and are not constrained to be +2. Added new signed distance field (SDF) collision primitive. SDFs can take any shape and are not constrained to be convex. Collision points are found by minimizing the maximum of the two colliding SDFs via gradient descent. - Added new SDF plugin for defining implicit geometries. The plugin must define methods computing an SDF and its @@ -22,7 +33,7 @@ New features :align: right :width: 240px -2. Added new low-level model element called ``flex``, used to define deformable objects. These +3. Added new low-level model element called ``flex``, used to define deformable objects. These `simplicial complexes `__ can be of dimension 1, 2 or 3, corresponding to stretchable lines, triangles or tetrahedra. Two new MJCF elements are used to define flexes. The top-level :ref:`deformable` section contains the low-level flex definition. @@ -36,19 +47,19 @@ New features functionality is currently available both via :ref:`deformable` and :ref:`composite`, and both are modifiable by the first-party `elasticity plugins `__. We expect some of - this functionallity to be unified in the future. + this functionality to be unified in the future. .. youtube:: Vc1tq0fFvQA :align: right :width: 240px -3. Added constraint island discovery with :ref:`mj_island`. Constraint islands are disjoint sets of constraints +4. Added constraint island discovery with :ref:`mj_island`. Constraint islands are disjoint sets of constraints and degrees-of-freedom that do not interact. The only solver which currently supports islands is :ref:`CG`. Island discovery can be activated using a new :ref:`enable flag`. If island discovery is enabled, geoms, contacts and tendons will be colored according to the corresponding island, - see video. Island discovery is currently disabled for models that have deformable objects (see prevous item). + see video. Island discovery is currently disabled for models that have deformable objects (see previous item). -4. Added :ref:`mjThreadPool` and :ref:`mjTask` which allow for multi-threaded operations within the MuJoCo engine +5. Added :ref:`mjThreadPool` and :ref:`mjTask` which allow for multi-threaded operations within the MuJoCo engine pipeline. If engine-internal threading is enabled, the following operations will be multi-threaded: - Island constraint resolution, if island discovery is :ref:`enabled` and the @@ -60,7 +71,7 @@ New features Engine-internal threading is a work in progress and currently only available in first-party code via the :ref:`testspeed` utility, exposed with the ``npoolthread`` flag. -5. Added capability to initialize :ref:`composite` particles from OBJ files. Fixes :github:issue:`642` +6. Added capability to initialize :ref:`composite` particles from OBJ files. Fixes :github:issue:`642` and :github:issue:`674`. General @@ -69,32 +80,32 @@ General .. admonition:: Breaking API changes :class: attention - 6. Removed the macros ``mjMARKSTACK`` and ``mjFREESTACK``. + 7. Removed the macros ``mjMARKSTACK`` and ``mjFREESTACK``. **Migration:** These macros have been replaced by new functions :ref:`mj_markStack` and :ref:`mj_freeStack`. These functions manage the :ref:`mjData stack` in a fully encapsulated way (i.e., without introducing a local variable at the call site). - 7. Renamed ``mj_stackAlloc`` to :ref:`mj_stackAllocNum`. The new function :ref:`mj_stackAllocByte` allocates an + 8. Renamed ``mj_stackAlloc`` to :ref:`mj_stackAllocNum`. The new function :ref:`mj_stackAllocByte` allocates an arbitrary number of bytes and has an additional argument for specifying the alignment of the returned pointer. **Migration:** The functionality for allocating ``mjtNum`` arrays is now available via :ref:`mj_stackAllocNum`. - 8. Renamed the ``nstack`` field in :ref:`mjModel` and :ref:`mjData` to ``narena``. Changed ``narena``, ``pstack``, + 9. Renamed the ``nstack`` field in :ref:`mjModel` and :ref:`mjData` to ``narena``. Changed ``narena``, ``pstack``, and ``maxuse_stack`` to count number of bytes rather than number of :ref:`mjtNum` |-| s. - 9. Changed :ref:`mjData.solver`, the array used to collect solver diagnostic information. - This array of :ref:`mjSolverStat` structs is now of length ``mjNISLAND * mjNSOLVER``, interpreted as as a matrix. - Each row of length ``mjNSOLVER`` contains separate solver statistics for each constraint island. - If the solver does not use islands, only row 0 is filled. + 10. Changed :ref:`mjData.solver`, the array used to collect solver diagnostic information. + This array of :ref:`mjSolverStat` structs is now of length ``mjNISLAND * mjNSOLVER``, interpreted as as a matrix. + Each row of length ``mjNSOLVER`` contains separate solver statistics for each constraint island. + If the solver does not use islands, only row 0 is filled. - - The new constant :ref:`mjNISLAND` was set to 20. - - :ref:`mjNSOLVER` was reduced from 1000 to 200. - - Added :ref:`mjData.solver_nisland`: the number of islands for which the solver ran. - - Renamed ``mjData.solver_iter`` to ``solver_niter``. Both this member and ``mjData.solver_nnz`` are now integer - vectors of length ``mjNISLAND``. + - The new constant :ref:`mjNISLAND` was set to 20. + - :ref:`mjNSOLVER` was reduced from 1000 to 200. + - Added :ref:`mjData.solver_nisland`: the number of islands for which the solver ran. + - Renamed ``mjData.solver_iter`` to ``solver_niter``. Both this member and ``mjData.solver_nnz`` are now integer + vectors of length ``mjNISLAND``. - 10. Removed ``mjOption.collision`` and the associated ``option/collision`` attribute. + 11. Removed ``mjOption.collision`` and the associated ``option/collision`` attribute. **Migration:** @@ -105,39 +116,39 @@ General :ref:`conaffinity` attributes in the model and then setting them globally to ``0`` using |br| `` ``. - 11. Removed the :at:`rope` and :at:`cloth` composite objects. + 12. Removed the :at:`rope` and :at:`cloth` composite objects. **Migration:** Users should use the :at:`cable` and :at:`shell` elasticity plugins. - 12. Added :ref:`mjData.eq_active` user input variable, for enabling/disabling the state of equality + 13. Added :ref:`mjData.eq_active` user input variable, for enabling/disabling the state of equality constraints. Renamed ``mjModel.eq_active`` to :ref:`mjModel.eq_active0`, which now has the semantic of "initial value of ``mjData.eq_active``". Fixes :github:issue:`876`. **Migration:** Replace uses of ``mjModel.eq_active`` with ``mjData.eq_active``. - 13. Changed the default of :ref:`autolimits` from "false" to "true". This is a minor breaking + 14. Changed the default of :ref:`autolimits` from "false" to "true". This is a minor breaking change. The potential breakage applies to models which have elements with "range" defined and "limited" not set. Such models cannot be loaded since version 2.2.2 (July 2022). -14. Added a new :ref:`dyntype`, ``filterexact``, which updates first-order filter states with +15. Added a new :ref:`dyntype`, ``filterexact``, which updates first-order filter states with the exact formula rather than with Euler integration. -15. Added an actuator attribute, :ref:`actearly`, which uses semi-implicit integration for +16. Added an actuator attribute, :ref:`actearly`, which uses semi-implicit integration for actuator forces: using the next step's actuator state to compute the current actuator forces. -16. Renamed ``actuatorforcerange`` and ``actuatorforcelimited``, introduced in the previous version to +17. Renamed ``actuatorforcerange`` and ``actuatorforcelimited``, introduced in the previous version to :ref:`actuatorfrcrange` and :ref:`actuatorfrclimited`, respectively. -17. Added the flag :ref:`eulerdamp`, which disables implicit integration of joint damping in the +18. Added the flag :ref:`eulerdamp`, which disables implicit integration of joint damping in the Euler integrator. See the :ref:`Numerical Integration` section for more details. -18. Added the flag :ref:`invdiscrete`, which enables discrete-time inverse dynamics for all +19. Added the flag :ref:`invdiscrete`, which enables discrete-time inverse dynamics for all :ref:`integrators` other than ``RK4``. See the flag documentation for more details. -19. Added :ref:`ls_iterations` and :ref:`ls_tolerance` options for adjusting +20. Added :ref:`ls_iterations` and :ref:`ls_tolerance` options for adjusting linesearch stopping criteria in CG and Newton solvers. These can be useful for performance tuning. -20. Added ``mesh_pos`` and ``mesh_quat`` fields to :ref:`mjModel` to store the normalizing transformation applied to +21. Added ``mesh_pos`` and ``mesh_quat`` fields to :ref:`mjModel` to store the normalizing transformation applied to mesh assets. Fixes :github:issue:`409`. -21. Added camera :ref:`resolution` attribute and :ref:`camprojection` +22. Added camera :ref:`resolution` attribute and :ref:`camprojection` sensor. If camera resolution is set to positive values, the camera projection sensor will report the location of a target site, projected onto the camera image, in pixel coordinates. -22. Added :ref:`camera` calibration attributes: +23. Added :ref:`camera` calibration attributes: - The new attributes are :ref:`resolution`, :ref:`focal`, :ref:`focalpixel`, :ref:`principal`, @@ -146,21 +157,21 @@ General attributes are specified. See the following `example model `__. - Note that these attributes only take effect for offline rendering and do not affect interactive visualisation. -23. Implemented reversed Z rendering for better depth precision. An enum :ref:`mjtDepthMap` was added with values +24. Implemented reversed Z rendering for better depth precision. An enum :ref:`mjtDepthMap` was added with values ``mjDEPTH_ZERONEAR`` and ``mjDEPTH_ZEROFAR``, which can be used to set the new ``readDepthMap`` attribute in :ref:`mjrContext` to control how the depth returned by :ref:`mjr_readPixels` is mapped from ``znear`` to ``zfar``. Contribution :github:pull:`978` by `Levi Burner `__. -24. Deleted the code sample ``testxml``. The functionality provided by this utility is implemented in the +25. Deleted the code sample ``testxml``. The functionality provided by this utility is implemented in the `WriteReadCompare `__ test. -25. Deleted the code sample ``derivative``. Functionality provided by :ref:`mjd_transitionFD`. +26. Deleted the code sample ``derivative``. Functionality provided by :ref:`mjd_transitionFD`. Python bindings ^^^^^^^^^^^^^^^ -26. Fixed :github:issue:`870` where calling ``update_scene`` with an invalid camera name used the default camera. -27. Added ``user_scn`` to the :ref:`passive viewer` handle, which allows users to add custom +27. Fixed :github:issue:`870` where calling ``update_scene`` with an invalid camera name used the default camera. +28. Added ``user_scn`` to the :ref:`passive viewer` handle, which allows users to add custom visualization geoms (:github:issue:`1023`). -28. Added optional boolean keyword arguments ``show_left_ui`` and ``show_right_ui`` to the functions ``viewer.launch`` +29. Added optional boolean keyword arguments ``show_left_ui`` and ``show_right_ui`` to the functions ``viewer.launch`` and ``viewer.launch_passive``, which allow users to launch a viewer with UI panels hidden. Simulate @@ -170,11 +181,11 @@ Simulate :align: right :width: 240px -29. Added **state history** mechanism to :ref:`simulate` and the managed +30. Added **state history** mechanism to :ref:`simulate` and the managed :ref:`Python viewer`. State history can be viewed by scrubbing the History slider and (more precisely) with the left and right arrow keys. See screen capture: -30. The ``LOADING...`` label is now shown correctly. Contribution :github:pull:`1070` by +31. The ``LOADING...`` label is now shown correctly. Contribution :github:pull:`1070` by `Levi Burner `__. Documentation @@ -184,17 +195,17 @@ Documentation :align: right :width: 240px -31. Added :doc:`detailed documentation ` of fluid force modeling, and an illustrative example model +32. Added :doc:`detailed documentation ` of fluid force modeling, and an illustrative example model showing `tumbling cards `__ using the ellipsoid-based fluid model. Bug fixes ^^^^^^^^^ -32. Fixed a bug that was causing :ref:`geom margin` to be ignored during the construction of +33. Fixed a bug that was causing :ref:`geom margin` to be ignored during the construction of midphase collision trees. -33. Fixed a bug that was generating incorrect values in ``efc_diagApprox`` for weld equality constraints. +34. Fixed a bug that was generating incorrect values in ``efc_diagApprox`` for weld equality constraints. Version 2.3.7 (July 20, 2023) diff --git a/doc/images/mjx/mujoco_vs_mjx_large_scene.png b/doc/images/mjx/mujoco_vs_mjx_large_scene.png new file mode 100644 index 0000000000000000000000000000000000000000..d9ef4b543143031b196c8fb9a8eb21fccc4010af GIT binary patch literal 26229 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 Wd|77b<4O4P5!4}busoWciTEEyMfDH> literal 0 HcmV?d00001 diff --git a/doc/index.rst b/doc/index.rst index b9556e9f..0aba3e4c 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -14,6 +14,7 @@ programming/index.rst APIreference/index.rst python + MJX unity models changelog diff --git a/doc/mjx.rst b/doc/mjx.rst new file mode 100644 index 00000000..f0fc1532 --- /dev/null +++ b/doc/mjx.rst @@ -0,0 +1,312 @@ +========== +MuJoCo XLA +========== + +Starting with version 3.0.0, MuJoCo includes MuJoCo XLA (MJX) under the +`mjx `__ directory. MJX allows MuJoCo to run on compute +hardware supported by the `XLA `__ compiler via the +`JAX `__ framework. MJX runs on a +`all platforms supported by JAX `__: Nvidia +and AMD GPUs, Apple Silicon, and `Google Cloud TPUs `__. + +The MJX API is consistent with the main simulation functions in the MuJoCo API, although it is currently missing some +features. While the :ref:`API documentation ` is applicable to both libraries, we indicate features +unsupported by MJX in the :ref:`notes ` below. + +MJX is distributed as a separate package called ``mujoco-mjx`` on `PyPI `__. +Although it depends on the main ``mujoco`` package for model compilation and visualization, it is a re-implementation of +MuJoCo that uses the same algorithms as the MuJoCo implementation. However, in order to properly leverage JAX, MJX +deliberately diverges from the MuJoCo API in a few places, see below. + +MJX is a successor to the `generalized physics pipeline `__ +in Google's `Brax `__ physics and reinforcement learning library. MJX was built +by core contributors to both MuJoCo and Brax, who will together continue to support both Brax (for its reinforcement +learning algorithms and included environments) and MJX (for its physics algorithms). A future version of Brax will +depend on the ``mujoco-mjx`` package, and Brax's existing +`generalized pipeline `__ will be deprecated. This change +will be largely transparent to users of Brax. + +.. _MjxNotebook: + +Tutorial notebook +================= + +The following IPython notebook demonstrates the use of MJX along with reinforcement learning to train humanoid and +quadruped robots to locomote: |colab|. + +.. |colab| image:: https://colab.research.google.com/assets/colab-badge.svg + :target: https://colab.research.google.com/github/google-deepmind/mujoco/blob/main/mjx/tutorial.ipynb + +.. _MjxInstallation: + +Installation +============ + +The recommended way to install this package is via `PyPI `__: + +.. code-block:: shell + + pip install mujoco-mjx + +A copy of the MuJoCo library is provided as part of this package's depdendencies and does **not** need to be downloaded +or installed separately. + +.. _MjxUsage: + +Basic usage +=========== + +Once installed, the package can be imported via ``from mujoco import mjx``. Structs, functions, and enums are available +directly from the top-level ``mjx`` module. + +.. _MjxStructs: + +Structs +------- + +Before running MJX functions on an accelerator device, structs must be copied onto the device via the ``mjx.device_put`` +function. Placing an :ref:`mjModel` on device yields an ``mjx.Model``. Placing an :ref:`mjData` on device yields +an ``mjx.Data``: + +.. code-block:: python + + model = mujoco.MjModel.from_xml_string("...") + data = mujoco.MjData(model) + mjx_model = mjx.device_put(model) + mjx_data = mjx.device_put(data) + +These MJX variants mirror their MuJoCo counterparts but have three key differences: + +#. Fields in ``mjx.Model`` and ``mjx.Data`` are JAX arrays copied onto device, instead of numpy arrays. +#. Some fields are missing from ``mjx.Model`` and ``mjx.Data`` for features that are + :ref:`unsupported ` in MJX. +#. Arrays in ``mjx.Model`` and ``mjx.Data`` support adding batch dimensions. Batch dimensions are a natural way to + express domain randomization (in the case of ``mjx.Model``) or high-throughput simulation for reinforcement learning + (in the case of ``mjx.Data``). + + +Neither ``mjx.Model`` nor ``mjx.Data`` are meant to be constructed manually. An ``mjx.Data`` may be created by calling +``mjx.make_data``, which mirrors the :ref:`mj_makeData` function in MuJoCo: + +.. code-block:: python + + model = mujoco.MjModel.from_xml_string("...") + mjx_model = mjx.device_put(model) + mjx_data = mjx.make_data(model) + +Using ``mx.make_data`` may be preferable when constructing batched ``mjx.Data`` structures inside of a ``vmap``. + +.. _MjxFunctions: + +Functions +--------- + +MuJoCo functions are exposed as MJX functions of the same name, but following +`PEP 8 `__-compliant names. Most of the :ref:`main simulation ` and +some of the :ref:`sub-components ` for forward simulation are available from the top-level ``mjx`` module. + +MJX functions are not `JIT compiled `__ by default -- we +leave it to the user to JIT MJX functions, or JIT their own functions that reference MJX functions. See the +:ref:`minimal example ` below. + +.. _MjxEnums: + +Enums and constants +------------------- + +MJX enums are available as ``mjx.EnumType.ENUM_VALUE``, for example ``mjx.JointType.FREE``. Enums for unsupported MJX +features are omitted from the MJX enum declaration. MJX declares no constants but references MuJoCo constants directly. + +.. _MjxExample: + +Minimal example +--------------- + +.. code-block:: python + + # Throw a ball at 100 different velocities. + + import jax + import mujoco + from mujoco import mjx + + XML=r""" + + + + + + + + + """ + + model = mujoco.MjModel.from_xml_string(XML) + mjx_model = mjx.device_put(model) + + @jax.vmap + def batched_step(vel): + mjx_data = mjx.make_data(mjx_model) + qvel = mjx_data.qvel.at[0].set(vel) + mjx_data = mjx_data.replace(qvel=qvel) + pos = mjx.step(mjx_model, mjx_data).qpos[0] + return pos + + vel = jax.numpy.arange(0.0, 1.0, 0.01) + pos = jax.jit(batched_step)(vel) + print(pos) + +.. _MjxFeatureParity: + +Feature Parity +============== + +MJX supports most of the main simulation features of MuJoCo, with a few exceptions. MJX will raise an exception if +asked to copy to device an :ref:`mjModel` with field values referencing unsupported features. + +The following features are **fully supported** in MJX: + +.. list-table:: + :width: 90% + :align: left + :widths: 1 5 + :header-rows: 1 + + * - Category + - Feature + * - Dynamics + - :ref:`Forward ` + * - :ref:`Joint ` + - ``FREE``, ``BALL``, ``SLIDE``, ``HINGE`` + * - :ref:`Transmission ` + - ``TRN_JOINT`` + * - :ref:`Actuation ` + - ``DYN_NONE``, ``DYN_INTEGRATOR``, ``DYN_FILTER``, ``GAIN_FIXED``, ``GAIN_AFFINE``, ``BIAS_NONE``, + ``BIAS_AFFINE`` + * - :ref:`Geom ` + - ``PLANE``, ``SPHERE``, ``CAPSULE``, ``BOX``, ``MESH`` + * - :ref:`Constraint ` + - ``EQUALITY``, ``FRICTION_DOF``, ``LIMIT_JOINT``, ``CONTACT_PYRAMIDAL`` + * - :ref:`Integrator ` + - ``EULER``, ``RK4`` + * - :ref:`Cone ` + - ``PYRAMIDAL`` + * - :ref:`Condim ` + - 3 + * - :ref:`Solver ` + - ``CG`` + * - Fluid Model + - :ref:`flInertia` + +The following features are **in development** and coming soon: + +.. list-table:: + :width: 90% + :align: left + :widths: 1 5 + :header-rows: 1 + + * - Category + - Feature + * - Dynamics + - :ref:`Inverse ` + * - :ref:`Transmission ` + - ``TRN_TENDON`` + * - :ref:`Geom ` + - ``HFIELD``, ``ELLIPSOID``, ``CYLINDER``, ``SDF`` + * - :ref:`Integrator ` + - ``IMPLICIT``, ``IMPLICITFAST`` + * - :ref:`Cone ` + - ``ELLIPTIC`` + * - :ref:`Condim ` + - 1, 4, 6 + * - :ref:`Solver ` + - ``NEWTON`` + * - Fluid Model + - :ref:`flEllipsoid` + * - :ref:`Tendons ` + - :ref:`Spatial `, :ref:`Fixed ` + +The following features are **unsupported**: + +.. list-table:: + :width: 90% + :align: left + :widths: 1 5 + :header-rows: 1 + + * - Category + - Feature + * - :ref:`Transmission ` + - ``TRN_JOINTINPARENT``, ``TRN_SLIDERCRANK``, ``TRN_SITE``, ``TRN_BODY``, ``MUSCLE`` + * - :ref:`Solver ` + - ``PGS`` + * - :ref:`Callbacks ` + - ``mjDYN_USER``, ``mjGAIN_USER``, ``mjBIAS_USER``, ``mjSENS_USER`` + +.. _MjxSharpBits: + +🔪 MJX - The Sharp Bits 🔪 +========================== + +GPUs and TPUs have unique performance tradeoffs that MJX is subject to. MJX specializes in simulating big batches of +parallel identical physics scenes using algorithms that can be efficiently vectorized on +`SIMD hardware `__. This specialization is useful +for machine learning workloads such as `reinforcement learning `__ +that require massive data throughput. + +There are certain workflows that MJX is ill-suited for: + +Single scene simulation + Simulating a single scene (1 instance of :ref:`mjData`), MJX can be **10x** slower than MuJoCo, which has been + carefully optimized for CPU. MJX works best when simulating thousands or tens of thousands of scenes in parallel. + +Large, complex scenes with many contacts + Accelerators exhibit poor performance for + `branching code `__. + Branching is used in broad-phase collision detection, when identifying potential collisions between large numbers of + bodies in a scene. MJX ships with a simple branchless broad-phase algorithm (see performance tuning) but it is not as + powerful as the one in MuJoCo. + + To see how this affects simulation, let us consider a physics scene with increasing numbers of physics bodies. We + simulate a scene with a variable number of humanoids (from 1 to 10) and then compare MJX's performance on an Nvidia + A100 GPU to MuJoCo on a 12-core workstation: + + .. figure:: images/mjx/mujoco_vs_mjx_large_scene.png + :width: 658px + :align: center + + Notice that as we increase the number of humanoids (which increases the number of potential contacts in a scene), MJX + performance degrades more rapidly than MuJoCo. At the limit, for such a large scene, MuJoCo performance nearly + matches MJX. + +Scenes with collisions between meshes with many vertices + MJX supports mesh geometries and can determine if two meshes are colliding using branchless versions of + `mesh collision algorithms `__. + These algorithms work well for smaller meshes (with hundreds of vertices) but suffer with large meshes. With careful + tuning, MJX can simulate scenes with mesh collisions well -- see the MJX + `shadow hand `__ + config for an example. + +.. _MjxPerformance: + +Performance tuning +================== + +For MJX to perform well, some configuration parameters should be adjusted from their default MuJoCo values: + +:ref:`option` element + For now, solver must be set to ``CG`` (but Newton is on its way!). The ``iterations`` and ``ls_iterations`` + attributes---which control solver and linesearch iterations, respectively---should be brought down to just low enough + that the simulation remains stable. Accurate solver forces are not so important in reinforcement learning in which + domain randomization is often used to add noise to physics for sim2real. + +:ref:`contact-pair` element + Consider explicitly marking geoms for collision detection to reduce the number of contacts that MJX must consider + during each step. Enabling only an explicit list of valid contacts can have a dramatic effect on simulation + performance in MJX. Doing this well often requires an understanding of the task -- for example, the + `OpenAI Gym Humanoid `__ task resets when + the humanoid starts to fall, so full contact with the floor is not needed. + +:ref:`option-flag` element + Disabling ``eulerdamp`` can help performance and is often not needed for stability. diff --git a/doc/unity.rst b/doc/unity.rst index 9fe13ef9..2c756da0 100644 --- a/doc/unity.rst +++ b/doc/unity.rst @@ -30,14 +30,14 @@ _____ The MuJoCo app needs to be run at least once before the native library can be used, in order to register the library as a trusted binary. Then, copy the dynamic library file from -``/Applications/MuJoCo.app/Contents/Frameworks/mujoco.framework/Versions/Current/libmujoco.2.3.8.dylib`` (it can be +``/Applications/MuJoCo.app/Contents/Frameworks/mujoco.framework/Versions/Current/libmujoco.3.0.0.dylib`` (it can be found by browsing the contents of ``MuJoCo.app``) and rename it as ``mujoco.dylib``. Linux _____ Expand the ``tar.gz`` archive to ``~/.mujoco``. Then copy the dynamic library from -``~/.mujoco/mujoco-2.3.8/lib/libmujoco.so.2.3.8`` and rename it as ``libmujoco.so``. +``~/.mujoco/mujoco-3.0.0/lib/libmujoco.so.3.0.0`` and rename it as ``libmujoco.so``. Windows _______ diff --git a/include/mujoco/mujoco.h b/include/mujoco/mujoco.h index 61d63325..1f98efca 100644 --- a/include/mujoco/mujoco.h +++ b/include/mujoco/mujoco.h @@ -24,7 +24,7 @@ extern "C" { #endif // header version; should match the library version as returned by mj_version() -#define mjVERSION_HEADER 238 +#define mjVERSION_HEADER 300 // needed to define size_t, fabs and log10 #include diff --git a/mjx/MANIFEST.in b/mjx/MANIFEST.in new file mode 100644 index 00000000..b963ce6e --- /dev/null +++ b/mjx/MANIFEST.in @@ -0,0 +1,2 @@ +recursive-include mujoco/mjx/test_data * +recursive-include mujoco/mjx/benchmark *.obj *.stl *.xml diff --git a/mjx/README.md b/mjx/README.md new file mode 100644 index 00000000..516271fc --- /dev/null +++ b/mjx/README.md @@ -0,0 +1,54 @@ +# MuJoCo XLA (MJX) + +[![PyPI Python Version][pypi-versions-badge]][pypi] +[![PyPI version][pypi-badge]][pypi] + +[pypi-versions-badge]: https://img.shields.io/pypi/pyversions/mujoco-mjx +[pypi-badge]: https://badge.fury.io/py/mujoco-mjx.svg +[pypi]: https://pypi.org/project/mujoco-mjx/ + +This package is a re-implementation of the +[MuJoCo physics engine](https://github.com/google-deepmind/mujoco) in +[JAX](https://github.com/google/jax). This library is developed and maintained +by Google DeepMind, and is kept up-to-date with the latest developments in +MuJoCo itself. + +The `mujoco-mjx` package is API-compatible with MuJoCo, but is missing some +features found in MuJoCo. See our +[documentation](https://mujoco.readthedocs.io/en/stable/mjx.html) for more +details concerning feature parity. + +## Installation + +The recommended way to install this package is via [PyPI](https://pypi.org/project/mujoco-mjx/): + +```sh +pip install mujoco-mjx +``` + +## Usage + +Once installed, the package can be imported via `from mujoco import mjx`. Please +consult our [documentation](https://mujoco.readthedocs.io/en/stable/mjx.html) +for further detail on the package's API. + +We recommend going through the tutorial notebook which covers the basics of +MuJoCo using Python: +[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/google-deepmind/mujoco/blob/main/mjx/tutorial.ipynb) + +## Versioning + +The `major.minor.micro` portion of the version number matches the version of +MuJoCo that this library provides. Optionally, if we release updates to MJX that +target the same version of MuJoCo, a `.postN` suffix is added, for example +`3.0.1.post2` represents the second update to MJX for MuJoCo 3.0.1. + +## License and Disclaimer + +Copyright 2023 DeepMind Technologies Limited + +MuJoCo and its libraries are licensed under the Apache License, +Version 2.0. You may obtain a copy of the License at +https://www.apache.org/licenses/LICENSE-2.0. + +This is not an officially supported Google product. diff --git a/mjx/cuda_requirements.txt b/mjx/cuda_requirements.txt new file mode 100644 index 00000000..3898472f --- /dev/null +++ b/mjx/cuda_requirements.txt @@ -0,0 +1,17 @@ +-f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html + +jax[cuda12_local]==0.4.13; python_version == '3.8' \ + --hash=sha256:03bfe6749dfe647f16f15f6616638adae6c4a7ca7167c75c21961ecfd3a3baaa +jax[cuda12_local]==0.4.18; python_version >= '3.9' \ + --hash=sha256:c3ab72ea2f1c5d8ccf2561e79f6562fb2964629f3e55b3ac1c11c48b64c20336 +jaxlib==0.4.13+cuda12.cudnn89; python_version == '3.8' \ + --hash=sha256:31372f41dc28ecb11a5cc5573ae632e8ee9cfb63788edc8ad8a77e8d3279f569 +jaxlib==0.4.18+cuda12.cudnn89; python_version >= '3.9' \ + --hash=sha256:14f74ff081882ea091c121e355051b35932e39cb7ff7242b88a87f3690f3ca90 \ + --hash=sha256:7c87dc2d68257b02e83c04be88a3c447373ee7077d65f43545bcbda5bfe2231d \ + --hash=sha256:4d16e9c7592e1aaca0b3d28d2c8beba415a2721bb7001f2947728247951a250d \ + --hash=sha256:759c08c69f4a5b1e6b39c3e4eff908a04ce3b2b483bb594ed624407c7d12d110 \ + --hash=sha256:a7a04dbe1851cd50d07691282116aee49a2f0be7838e55b76d7ada86db06be62 \ + --hash=sha256:2bf842db3d58c8c6c52fbc8ed3fabefd7b91a21746cd59d3eaf3522eea229b53 \ + --hash=sha256:35d265ef9bb3835a14580cbaa9402060f117e46056f80e0996405fff3964667a \ + --hash=sha256:0e4352f24d629e912965e6435e140c1b06086243a098651f2d01b75f3738b51c diff --git a/mjx/mujoco/mjx/__init__.py b/mjx/mujoco/mjx/__init__.py new file mode 100644 index 00000000..3ec6312a --- /dev/null +++ b/mjx/mujoco/mjx/__init__.py @@ -0,0 +1,34 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Public API for MJX.""" + +# pylint:disable=g-importing-member +from mujoco.mjx._src.collision_driver import collision +from mujoco.mjx._src.constraint import make_constraint +from mujoco.mjx._src.device import device_get_into +from mujoco.mjx._src.device import device_put +from mujoco.mjx._src.forward import forward +from mujoco.mjx._src.forward import step +from mujoco.mjx._src.io import make_data +from mujoco.mjx._src.passive import passive +from mujoco.mjx._src.smooth import com_pos +from mujoco.mjx._src.smooth import com_vel +from mujoco.mjx._src.smooth import crb +from mujoco.mjx._src.smooth import factor_m +from mujoco.mjx._src.smooth import kinematics +from mujoco.mjx._src.smooth import mul_m +from mujoco.mjx._src.smooth import rne +from mujoco.mjx._src.smooth import transmission +from mujoco.mjx._src.types import * diff --git a/mjx/mujoco/mjx/_src/__init__.py b/mjx/mujoco/mjx/_src/__init__.py new file mode 100644 index 00000000..4ad51d69 --- /dev/null +++ b/mjx/mujoco/mjx/_src/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== diff --git a/mjx/mujoco/mjx/_src/collision_base.py b/mjx/mujoco/mjx/_src/collision_base.py new file mode 100644 index 00000000..c843dceb --- /dev/null +++ b/mjx/mujoco/mjx/_src/collision_base.py @@ -0,0 +1,64 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Collision base.""" + +import dataclasses +from typing import Dict, List, Optional, Tuple + +import jax +# pylint: disable=g-importing-member +from mujoco.mjx._src.dataclasses import PyTreeNode +from mujoco.mjx._src.types import GeomType +# pylint: enable=g-importing-member + +Contact = Tuple[jax.Array, jax.Array, jax.Array] + + +@dataclasses.dataclass +class Candidate: + geom1: int + geom2: int + ipair: int + geomp: int # priority geom + dim: int + + +CandidateSet = Dict[ + Tuple[GeomType, GeomType, Tuple[int, ...], Tuple[int, ...]], + List[Candidate], +] + + +class GeomInfo(PyTreeNode): + """Collision info for a geom.""" + + pos: jax.Array + mat: jax.Array + size: jax.Array + face: Optional[jax.Array] = None + vert: Optional[jax.Array] = None + edge: Optional[jax.Array] = None + facenorm: Optional[jax.Array] = None + + +class SolverParams(PyTreeNode): + """Contact solver params.""" + + friction: jax.Array + solref: jax.Array + solreffriction: jax.Array + solimp: jax.Array + margin: jax.Array + gap: jax.Array diff --git a/mjx/mujoco/mjx/_src/collision_convex.py b/mjx/mujoco/mjx/_src/collision_convex.py new file mode 100644 index 00000000..62d357f9 --- /dev/null +++ b/mjx/mujoco/mjx/_src/collision_convex.py @@ -0,0 +1,724 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Convex collisions.""" + +from typing import Tuple + +import jax +from jax import numpy as jp +from mujoco.mjx._src import math +# pylint: disable=g-importing-member +from mujoco.mjx._src.collision_base import Contact +from mujoco.mjx._src.collision_base import GeomInfo +# pylint: enable=g-importing-member + + +def _closest_segment_point_plane( + a: jax.Array, b: jax.Array, p0: jax.Array, plane_normal: jax.Array +) -> jax.Array: + """Gets the closest point between a line segment and a plane. + + Args: + a: first line segment point + b: second line segment point + p0: point on plane + plane_normal: plane normal + + Returns: + closest point between the line segment and the plane + """ + # Parametrize a line segment as S(t) = a + t * (b - a), plug it into the plane + # equation dot(n, S(t)) - d = 0, then solve for t to get the line-plane + # intersection. We then clip t to be in [0, 1] to be on the line segment. + n = plane_normal + d = jp.sum(p0 * n) # shortest distance from origin to plane + denom = jp.sum(n * (b - a)) + t = (d - jp.sum(n * a)) / (denom + 1e-6 * (denom == 0.0)) + t = jp.clip(t, 0, 1) + segment_point = a + t * (b - a) + + return segment_point + + +def _closest_triangle_point( + p0: jax.Array, p1: jax.Array, p2: jax.Array, pt: jax.Array +) -> jax.Array: + """Gets the closest point between a triangle and a point in space. + + Args: + p0: triangle point + p1: triangle point + p2: triangle point + pt: point to test + + Returns: + closest point on the triangle w.r.t point pt + """ + # Parametrize the triangle s.t. a point inside the triangle is + # Q = p0 + u * e0 + v * e1, when 0 <= u <= 1, 0 <= v <= 1, and + # 0 <= u + v <= 1. Let e0 = (p1 - p0) and e1 = (p2 - p0). + # We analytically minimize the distance between the point pt and Q. + e0 = p1 - p0 + e1 = p2 - p0 + a = e0.dot(e0) + b = e0.dot(e1) + c = e1.dot(e1) + d = pt - p0 + # The determinant is 0 only if the angle between e1 and e0 is 0 + # (i.e. the triangle has overlapping lines). + det = a * c - b * b + u = (c * e0.dot(d) - b * e1.dot(d)) / det + v = (-b * e0.dot(d) + a * e1.dot(d)) / det + inside = (0 <= u) & (u <= 1) & (0 <= v) & (v <= 1) & (u + v <= 1) + closest_p = p0 + u * e0 + v * e1 + d0 = (closest_p - pt).dot(closest_p - pt) + + # If the closest point is outside the triangle, it must be on an edge, so we + # check each triangle edge for a closest point to the point pt. + closest_p1, d1 = math.closest_segment_point_and_dist(p0, p1, pt) + closest_p = jp.where((d0 < d1) & inside, closest_p, closest_p1) + min_d = jp.where((d0 < d1) & inside, d0, d1) + + closest_p2, d2 = math.closest_segment_point_and_dist(p1, p2, pt) + closest_p = jp.where(d2 < min_d, closest_p2, closest_p) + min_d = jp.minimum(min_d, d2) + + closest_p3, d3 = math.closest_segment_point_and_dist(p2, p0, pt) + closest_p = jp.where(d3 < min_d, closest_p3, closest_p) + + return closest_p + + +def _closest_segment_triangle_points( + a: jax.Array, + b: jax.Array, + p0: jax.Array, + p1: jax.Array, + p2: jax.Array, + triangle_normal: jax.Array, +) -> Tuple[jax.Array, jax.Array]: + """Gets the closest points between a line segment and triangle. + + Args: + a: first line segment point + b: second line segment point + p0: triangle point + p1: triangle point + p2: triangle point + triangle_normal: normal of triangle + + Returns: + closest point on the triangle w.r.t the line segment + """ + # The closest triangle point is either on the edge or within the triangle. + # First check triangle edges for the closest point. + # TODO(robotics-simulation): consider vmapping over closest point functions + seg_pt1, tri_pt1 = math.closest_segment_to_segment_points(a, b, p0, p1) + d1 = (seg_pt1 - tri_pt1).dot(seg_pt1 - tri_pt1) + seg_pt2, tri_pt2 = math.closest_segment_to_segment_points(a, b, p1, p2) + d2 = (seg_pt2 - tri_pt2).dot(seg_pt2 - tri_pt2) + seg_pt3, tri_pt3 = math.closest_segment_to_segment_points(a, b, p0, p2) + d3 = (seg_pt3 - tri_pt3).dot(seg_pt3 - tri_pt3) + + # Next, handle the case where the closest triangle point is inside the + # triangle. Either the line segment intersects the triangle or a segment + # endpoint is closest to a point inside the triangle. + seg_pt4 = _closest_segment_point_plane(a, b, p0, triangle_normal) + tri_pt4 = _closest_triangle_point(p0, p1, p2, seg_pt4) + d4 = (seg_pt4 - tri_pt4).dot(seg_pt4 - tri_pt4) + + # Get the point with minimum distance from the line segment point to the + # triangle point. + distance = jp.array([[d1, d2, d3, d4]]) + min_dist = jp.amin(distance) + mask = (distance == min_dist).T + seg_pt = jp.array([seg_pt1, seg_pt2, seg_pt3, seg_pt4]) * mask + tri_pt = jp.array([tri_pt1, tri_pt2, tri_pt3, tri_pt4]) * mask + seg_pt = jp.sum(seg_pt, axis=0) / jp.sum(mask) + tri_pt = jp.sum(tri_pt, axis=0) / jp.sum(mask) + + return seg_pt, tri_pt + + +def _manifold_points( + poly: jax.Array, poly_mask: jax.Array, poly_norm: jax.Array +) -> jax.Array: + """Chooses four points on the polygon with approximately maximal area.""" + dist_mask = jp.where(poly_mask, 0.0, -1e6) + a_idx = jp.argmax(dist_mask) + a = poly[a_idx] + # choose point b furthest from a + b_idx = (((a - poly) ** 2).sum(axis=1) + dist_mask).argmax() + b = poly[b_idx] + # choose point c furthest along the axis orthogonal to (a-b) + ab = jp.cross(poly_norm, a - b) + ap = a - poly + c_idx = (jp.abs(ap.dot(ab)) + dist_mask).argmax() + c = poly[c_idx] + # choose point d furthest from the other two triangle edges + ac = jp.cross(poly_norm, a - c) + bc = jp.cross(poly_norm, b - c) + bp = b - poly + dist_bp = jp.abs(bp.dot(bc)) + dist_mask + dist_ap = jp.abs(ap.dot(ac)) + dist_mask + d_idx = jp.concatenate([dist_bp, dist_ap]).argmax() % poly.shape[0] + return jp.array([a_idx, b_idx, c_idx, d_idx]) + + +def _project_pt_onto_plane( + pt: jax.Array, plane_pt: jax.Array, plane_normal: jax.Array +) -> jax.Array: + """Projects a point onto a plane along the plane normal.""" + dist = (pt - plane_pt).dot(plane_normal) + return pt - dist * plane_normal + + +def _project_poly_onto_plane( + poly: jax.Array, plane_pt: jax.Array, plane_normal: jax.Array +) -> jax.Array: + """Projects a polygon onto a plane using the plane normal.""" + return jax.vmap(_project_pt_onto_plane, in_axes=[0, None, None])( + poly, plane_pt, math.normalize(plane_normal) + ) + + +def _project_poly_onto_poly_plane( + poly1: jax.Array, norm1: jax.Array, poly2: jax.Array, norm2: jax.Array +) -> jax.Array: + """Projects poly1 onto the poly2 plane along poly1's normal.""" + d = poly2[0].dot(norm2) + denom = norm1.dot(norm2) + t = (d - poly1.dot(norm2)) / (denom + 1e-6 * (denom == 0.0)) + new_poly = poly1 + t.reshape(-1, 1) * norm1 + return new_poly + + +def _point_in_front_of_plane( + plane_pt: jax.Array, plane_normal: jax.Array, pt: jax.Array +) -> jax.Array: + """Checks if a point is strictly in front of a plane.""" + return (pt - plane_pt).dot(plane_normal) > 1e-6 + + +def _clip_edge_to_planes( + edge_p0: jax.Array, + edge_p1: jax.Array, + plane_pts: jax.Array, + plane_normals: jax.Array, +) -> Tuple[jax.Array, jax.Array]: + """Clips an edge against side planes. + + We return two clipped points, and a mask to include the new edge or not. + + Args: + edge_p0: the first point on the edge + edge_p1: the second point on the edge + plane_pts: side plane points + plane_normals: side plane normals + + Returns: + new_ps: new edge points that are clipped against side planes + mask: a boolean mask, True if an edge point is a valid clipped point and + False otherwise + """ + p0, p1 = edge_p0, edge_p1 + p0_in_front = jax.vmap(jp.dot)(p0 - plane_pts, plane_normals) > 1e-6 + p1_in_front = jax.vmap(jp.dot)(p1 - plane_pts, plane_normals) > 1e-6 + + # Get candidate clipped points along line segment (p0, p1) by clipping against + # all clipping planes. + candidate_clipped_ps = jax.vmap( + _closest_segment_point_plane, in_axes=[None, None, 0, 0] + )(p0, p1, plane_pts, plane_normals) + + def clip_edge_point(p0, p1, p0_in_front, clipped_ps): + @jax.vmap + def choose_edge_point(in_front, clipped_p): + return jp.where(in_front, clipped_p, p0) + + # Pick the clipped point if p0 is in front of the clipping plane. Otherwise + # keep p0 as the edge point. + new_edge_ps = choose_edge_point(p0_in_front, clipped_ps) + + # Pick the clipped point that is most along the edge direction. + # This degenerates to picking the original point p0 if p0 is *not* in front + # of any clipping planes. + dists = jp.dot(new_edge_ps - p0, p1 - p0) + new_edge_p = new_edge_ps[jp.argmax(dists)] + return new_edge_p + + # Clip each edge point. + new_p0 = clip_edge_point(p0, p1, p0_in_front, candidate_clipped_ps) + new_p1 = clip_edge_point(p1, p0, p1_in_front, candidate_clipped_ps) + clipped_pts = jp.array([new_p0, new_p1]) + + # Keep the original points if both points are in front of any of the clipping + # planes, rather than creating a new clipped edge. If the entire subject edge + # is in front of any clipping plane, we need to grab an edge from the clipping + # polygon instead. + both_in_front = p0_in_front & p1_in_front + mask = ~jp.any(both_in_front) + new_ps = jp.where(mask, clipped_pts, jp.array([p0, p1])) + # Mask out crossing clipped edge points. + mask = jp.where((p0 - p1).dot(new_ps[0] - new_ps[1]) < 0, False, mask) + return new_ps, jp.array([mask, mask]) + + +def _clip( + clipping_poly: jax.Array, + subject_poly: jax.Array, + clipping_normal: jax.Array, + subject_normal: jax.Array, +) -> Tuple[jax.Array, jax.Array]: + """Clips a subject polygon against a clipping polygon. + + A parallelized clipping algorithm for convex polygons. The result is a set of + vertices on the clipped subject polygon in the subject polygon plane. + + Args: + clipping_poly: the polygon that we use to clip the subject polygon against + subject_poly: the polygon that gets clipped + clipping_normal: normal of the clipping polygon + subject_normal: normal of the subject polygon + + Returns: + clipped_pts: points on the clipped polygon + mask: True if a point is in the clipping polygon, False otherwise + """ + # Get clipping edge points, edge planes, and edge normals. + clipping_p0 = jp.roll(clipping_poly, 1, axis=0) + clipping_plane_pts = clipping_p0 + clipping_p1 = clipping_poly + clipping_plane_normals = jax.vmap(jp.cross, in_axes=[0, None])( + clipping_p1 - clipping_p0, + clipping_normal, + ) + + # Get subject edge points, edge planes, and edge normals. + subject_edge_p0 = jp.roll(subject_poly, 1, axis=0) + subject_plane_pts = subject_edge_p0 + subject_edge_p1 = subject_poly + subject_plane_normals = jax.vmap(jp.cross, in_axes=[0, None])( + subject_edge_p1 - subject_edge_p0, + subject_normal, + ) + + # Clip all edges of the subject poly against clipping side planes. + clipped_edges0, masks0 = jax.vmap( + _clip_edge_to_planes, in_axes=[0, 0, None, None] + )( + subject_edge_p0, + subject_edge_p1, + clipping_plane_pts, + clipping_plane_normals, + ) + + # Project the clipping poly onto the subject plane. + clipping_p0_s = _project_poly_onto_poly_plane( + clipping_p0, clipping_normal, subject_poly, subject_normal + ) + clipping_p1_s = _project_poly_onto_poly_plane( + clipping_p1, clipping_normal, subject_poly, subject_normal + ) + + # Clip all edges of the clipping poly against subject planes. + clipped_edges1, masks1 = jax.vmap( + _clip_edge_to_planes, in_axes=[0, 0, None, None] + )(clipping_p0_s, clipping_p1_s, subject_plane_pts, subject_plane_normals) + + # Merge the points and reshape. + clipped_edges = jp.concatenate([clipped_edges0, clipped_edges1]) + masks = jp.concatenate([masks0, masks1]) + clipped_points = clipped_edges.reshape((-1, 3)) + mask = masks.reshape(-1) + + return clipped_points, mask + + +def _create_contact_manifold( + clipping_poly: jax.Array, + subject_poly: jax.Array, + clipping_norm: jax.Array, + subject_norm: jax.Array, + sep_axis: jax.Array, +) -> Tuple[jax.Array, jax.Array, jax.Array]: + """Creates a contact manifold between two convex polygons. + + The polygon faces are expected to have a counter clockwise winding order so + that clipping plane normals point away from the polygon center. + + Args: + clipping_poly: the reference polygon to clip the contact against. + subject_poly: the subject polygon to clip contacts onto. + clipping_norm: the clipping polygon normal. + subject_norm: the subject polygon normal. + sep_axis: the separating axis + + Returns: + tuple of dist, pos, and normal + """ + # Clip the subject (incident) face onto the clipping (reference) face. + # The incident points are clipped points on the subject polygon. + poly_incident, mask = _clip( + clipping_poly, subject_poly, clipping_norm, subject_norm + ) + # The reference points are clipped points on the clipping polygon. + poly_ref = _project_poly_onto_plane( + poly_incident, clipping_poly[0], clipping_norm + ) + behind_clipping_plane = _point_in_front_of_plane( + clipping_poly[0], -clipping_norm, poly_incident + ) + mask = mask & behind_clipping_plane + + # Choose four contact points. + best = _manifold_points(poly_ref, mask, clipping_norm) + contact_pts = jp.take(poly_ref, best, axis=0) + mask_pts = jp.take(mask, best, axis=0) + penetration_dir = jp.take(poly_incident, best, axis=0) - contact_pts + penetration = penetration_dir.dot(-clipping_norm) + + dist = jp.where(mask_pts, -penetration, jp.ones_like(penetration)) + pos = contact_pts + normal = -jp.stack([sep_axis] * 4, 0) + return dist, pos, normal + + +def _sat_hull_hull( + faces_a: jax.Array, + faces_b: jax.Array, + vertices_a: jax.Array, + vertices_b: jax.Array, + normals_a: jax.Array, + normals_b: jax.Array, + unique_edges_a: jax.Array, + unique_edges_b: jax.Array, +) -> Tuple[jax.Array, jax.Array, jax.Array]: + """Runs the Separating Axis Test for a pair of hulls. + + Given two convex hulls, the Separating Axis Test finds a separating axis + between all edge pairs and face pairs. Edge pairs create a single contact + point and face pairs create a contact manifold (up to four contact points). + We return both the edge and face contacts. Valid contacts can be checked with + dist < 0. Resulting edge contacts should be preferred over face contacts. + + Args: + faces_a: An ndarray of hull A's polygon faces. + faces_b: An ndarray of hull B's polygon faces. + vertices_a: Vertices for hull A. + vertices_b: Vertices for hull B. + normals_a: Normal vectors for hull A's polygon faces. + normals_b: Normal vectors for hull B's polygon faces. + unique_edges_a: Unique edges for hull A. + unique_edges_b: Unique edges for hull B. + + Returns: + tuple of dist, pos, and normal + """ + # get the separating axes + edge_dir_a = unique_edges_a[:, 0] - unique_edges_a[:, 1] + edge_dir_b = unique_edges_b[:, 0] - unique_edges_b[:, 1] + edge_dir_a_r = jp.tile(edge_dir_a, reps=(unique_edges_b.shape[0], 1)) + edge_dir_b_r = jp.repeat(edge_dir_b, repeats=unique_edges_a.shape[0], axis=0) + edge_edge_axes = jax.vmap(jp.cross)(edge_dir_a_r, edge_dir_b_r) + edge_edge_axes = jax.vmap(lambda x: math.normalize(x, axis=0))( + edge_edge_axes + ) + + axes = jp.concatenate([normals_a, normals_b, edge_edge_axes]) + + # for each separating axis, get the support + @jax.vmap + def get_support(axis): + support_a = jax.vmap(jp.dot, in_axes=[None, 0])(axis, vertices_a) + support_b = jax.vmap(jp.dot, in_axes=[None, 0])(axis, vertices_b) + dist1 = support_a.max() - support_b.min() + dist2 = support_b.max() - support_a.min() + sign = jp.where(dist1 > dist2, -1, 1) + dist = jp.minimum(dist1, dist2) + dist = jp.where(~jp.all(axis == 0.0), dist, 1e6) # degenerate axis + return dist, sign + + support, sign = get_support(axes) + + # choose the best separating axis + best_idx = jp.argmin(support) + best_sign = sign[best_idx] + best_axis = axes[best_idx] + is_edge_contact = best_idx >= (normals_a.shape[0] + normals_b.shape[0]) + + # get the (reference) face most aligned with the separating axis + dist_a = jax.vmap(jp.dot, in_axes=[None, 0])(best_axis, normals_a) + dist_b = jax.vmap(jp.dot, in_axes=[None, 0])(best_axis, normals_b) + a_max = dist_a.argmax() + b_max = dist_b.argmax() + a_min = dist_a.argmin() + b_min = dist_b.argmin() + + ref_face = jp.where(best_sign > 0, faces_a[a_max], faces_b[b_max]) + ref_face_norm = jp.where(best_sign > 0, normals_a[a_max], normals_b[b_max]) + incident_face = jp.where(best_sign > 0, faces_b[b_min], faces_a[a_min]) + incident_face_norm = jp.where( + best_sign > 0, normals_b[b_min], normals_a[a_min] + ) + + dist, pos, normal = _create_contact_manifold( + ref_face, + incident_face, + ref_face_norm, + incident_face_norm, + -best_sign * best_axis, + ) + + # For edge contacts, we use the clipped face point, mainly for performance + # reasons. For small penetration, the clipped face point is roughly the edge + # contact point. + idx = dist.argmin() + dist = jp.where( + is_edge_contact, + jp.array([dist[idx], 1, 1, 1]), + dist, + ) + pos = jp.where(is_edge_contact, jp.tile(pos[idx], (4, 1)), pos) + + return dist, pos, normal + + +def plane_convex(plane: GeomInfo, convex: GeomInfo) -> Contact: + """Calculates contacts between a plane and a convex object.""" + vert = convex.vert + + # get points in the convex frame + plane_pos = convex.mat.T @ (plane.pos - convex.pos) + n = convex.mat.T @ plane.mat[:, 2] + support = (plane_pos - vert) @ n + idx = _manifold_points(vert, support > 0, n) + pos = vert[idx] + + # convert to world frame + pos = convex.pos + pos @ convex.mat.T + n = plane.mat[:, 2] + + frame = jp.stack([math.make_frame(n)] * 4, axis=0) + unique = jp.tril(idx == idx[:, None]).sum(axis=1) == 1 + dist = jp.where(unique, -support[idx], 1) + return dist, pos, frame + + +def sphere_convex(sphere: GeomInfo, convex: GeomInfo) -> Contact: + """Calculates contact between a sphere and a convex object.""" + faces = jp.take(convex.vert, convex.face, axis=0) + normals = convex.facenorm + + # Put sphere in convex frame. + sphere_pos = convex.mat.T @ (sphere.pos - convex.pos) + + # Get support from face normals. + @jax.vmap + def get_support(faces, normal): + pos = sphere_pos - normal * sphere.size[0] + return jp.dot(pos - faces[0], normal) + + support = get_support(faces, normals) + + # Pick the face with minimal penetration as long as it has support. + support = jp.where(support >= 0, -1e12, support) + best_idx = support.argmax() + face = faces[best_idx] + normal = normals[best_idx] + + # Get closest point between the polygon face and the sphere center point. + # Project the sphere center point onto poly plane. If it's inside polygon + # edge normals, then we're done. + pt = _project_pt_onto_plane(sphere_pos, face[0], normal) + edge_p0 = jp.roll(face, 1, axis=0) + edge_p1 = face + edge_normals = jax.vmap(jp.cross, in_axes=[0, None])( + edge_p1 - edge_p0, + normal, + ) + edge_dist = jax.vmap( + lambda plane_pt, plane_norm: (pt - plane_pt).dot(plane_norm) + )(edge_p0, edge_normals) + inside = jp.all(edge_dist <= 0) # lte to handle degenerate edges + + # If the point is outside edge normals, project onto the closest edge plane + # that the point is in front of. + degenerate_edge = jp.all(edge_normals == 0, axis=1) + behind = edge_dist < 0.0 + edge_dist = jp.where(degenerate_edge | behind, 1e12, edge_dist) + idx = edge_dist.argmin() + edge_pt = math.closest_segment_point(edge_p0[idx], edge_p1[idx], pt) + + pt = jp.where(inside, pt, edge_pt) + + # Get the normal, dist, and contact position. + n, d = math.normalize_with_norm(pt - sphere_pos) + spt = sphere_pos + n * sphere.size[0] + dist = d - sphere.size[0] + pos = (pt + spt) * 0.5 + + # Go back to world frame. + n = convex.mat @ n + pos = convex.mat @ pos + convex.pos + + return jax.tree_map( + lambda x: jp.expand_dims(x, axis=0), (dist, pos, math.make_frame(n)) + ) + + +def capsule_convex(cap: GeomInfo, convex: GeomInfo) -> Contact: + """Calculates contacts between a capsule and a convex object.""" + # Get convex transformed normals, faces, and vertices. + faces = jp.take(convex.vert, convex.face, axis=0) + normals = convex.facenorm + + # Put capsule in convex frame. + cap_pos = convex.mat.T @ (cap.pos - convex.pos) + axis, length = cap.mat[:, 2], cap.size[1] + axis = convex.mat.T @ axis + seg = axis * length + cap_pts = jp.array([ + cap_pos - seg, + cap_pos + seg, + ]) + + # Get support from face normals. + @jax.vmap + def get_support(face, normal): + pts = cap_pts - normal * cap.size[0] + sup = jax.vmap(lambda x: jp.dot(x - face[0], normal))(pts) + return sup.min() + + support = get_support(faces, normals) + has_support = jp.all(support < 0) + + # Pick the face with minimal penetration as long as it has support. + support = jp.where(support >= 0, -1e12, support) + best_idx = support.argmax() + face = faces[best_idx] + normal = normals[best_idx] + + # Clip the edge against side planes and create two contact points against the + # face. + edge_p0 = jp.roll(face, 1, axis=0) + edge_p1 = face + edge_normals = jax.vmap(jp.cross, in_axes=[0, None])( + edge_p1 - edge_p0, + normal, + ) + cap_pts_clipped, mask = _clip_edge_to_planes( + cap_pts[0], cap_pts[1], edge_p0, edge_normals + ) + cap_pts_clipped = cap_pts_clipped - normal * cap.size[0] + face_pts = jax.vmap(_project_pt_onto_plane, in_axes=[0, None, None])( + cap_pts_clipped, face[0], normal + ) + # Create variables for the face contact. + pos = (cap_pts_clipped + face_pts) * 0.5 + norm = jp.stack([normal] * 2, 0) + penetration = jp.where( + mask & has_support, jp.dot(face_pts - cap_pts_clipped, normal), -1 + ) + + # Get a potential edge contact. + edge_closest, cap_closest = jax.vmap( + math.closest_segment_to_segment_points, in_axes=[0, 0, None, None] + )(edge_p0, edge_p1, cap_pts[0], cap_pts[1]) + e_idx = ((edge_closest - cap_closest) ** 2).sum(axis=1).argmin() + cap_closest_pt, edge_closest_pt = cap_closest[e_idx], edge_closest[e_idx] + edge_axis = cap_closest_pt - edge_closest_pt + edge_axis, edge_dist = math.normalize_with_norm(edge_axis) + edge_pos = ( + edge_closest_pt + (cap_closest_pt - edge_axis * cap.size[0]) + ) * 0.5 + edge_norm = edge_axis + edge_penetration = cap.size[0] - edge_dist + has_edge_contact = edge_penetration > 0 + + # Get the contact info. + pos = jp.where(has_edge_contact, pos.at[0].set(edge_pos), pos) + n = -jp.where(has_edge_contact, norm.at[0].set(edge_norm), norm) + + # Go back to world frame. + pos = convex.pos + pos @ convex.mat.T + n = n @ convex.mat.T + + dist = -jp.where( + has_edge_contact, penetration.at[0].set(edge_penetration), penetration + ) + frame = jax.vmap(math.make_frame)(n) + return dist, pos, frame + + +def convex_convex(c1: GeomInfo, c2: GeomInfo) -> Contact: + """Calculates contacts between two convex objects.""" + if c1.face is None or c2.face is None or c1.vert is None or c2.vert is None: + raise AssertionError('Mesh info missing.') + # pad face vertices so that we can broadcast between geom1 and geom2 + s1, s2 = c1.face.shape[-1], c2.face.shape[-1] + if s1 < s2: + face = jp.pad(c1.face, ((0, 0), (0, s2 - s1)), 'edge') + c1 = c1.replace(face=face) + elif s2 < s1: + face = jp.pad(c2.face, ((0, 0), (0, s1 - s2)), 'edge') + c2 = c2.replace(face=face) + + # ensure that the first object has fewer verts + swapped = c1.vert.shape[0] > c2.vert.shape[0] + if swapped: + c1, c2 = c2, c1 + + faces1 = jp.take(c1.vert, c1.face, axis=0) + faces2 = jp.take(c2.vert, c2.face, axis=0) + + to_local_pos = c2.mat.T @ (c1.pos - c2.pos) + to_local_mat = c2.mat.T @ c1.mat + + faces1 = to_local_pos + faces1 @ to_local_mat.T + normals1 = c1.facenorm @ to_local_mat.T + normals2 = c2.facenorm + + vertices1 = to_local_pos + c1.vert @ to_local_mat.T + vertices2 = c2.vert + + unique_edges1 = jp.take(vertices1, c1.edge, axis=0) + unique_edges2 = jp.take(vertices2, c2.edge, axis=0) + + dist, pos, normal = _sat_hull_hull( + faces1, + faces2, + vertices1, + vertices2, + normals1, + normals2, + unique_edges1, + unique_edges2, + ) + + # Go back to world frame. + pos = c2.pos + pos @ c2.mat.T + normal = normal @ c2.mat.T + normal = -normal if swapped else normal + + frame = jax.vmap(math.make_frame)(normal) + return dist, pos, frame + + +# store ncon as function attributes +plane_convex.ncon = 4 +sphere_convex.ncon = 1 +capsule_convex.ncon = 2 +convex_convex.ncon = 4 diff --git a/mjx/mujoco/mjx/_src/collision_driver.py b/mjx/mujoco/mjx/_src/collision_driver.py new file mode 100644 index 00000000..b5f58130 --- /dev/null +++ b/mjx/mujoco/mjx/_src/collision_driver.py @@ -0,0 +1,373 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Collide geometries.""" + +from typing import Callable, Dict, Optional, Sequence, Tuple, Union + +import jax +from jax import numpy as jp +import mujoco +from mujoco.mjx._src import collision_base +# pylint: disable=g-importing-member +from mujoco.mjx._src.collision_base import Candidate +from mujoco.mjx._src.collision_base import CandidateSet +from mujoco.mjx._src.collision_base import GeomInfo +from mujoco.mjx._src.collision_base import SolverParams +from mujoco.mjx._src.collision_convex import capsule_convex +from mujoco.mjx._src.collision_convex import convex_convex +from mujoco.mjx._src.collision_convex import plane_convex +from mujoco.mjx._src.collision_convex import sphere_convex +from mujoco.mjx._src.collision_primitive import capsule_capsule +from mujoco.mjx._src.collision_primitive import plane_capsule +from mujoco.mjx._src.collision_primitive import plane_sphere +from mujoco.mjx._src.collision_primitive import sphere_capsule +from mujoco.mjx._src.collision_primitive import sphere_sphere +from mujoco.mjx._src.types import Contact +from mujoco.mjx._src.types import Data +from mujoco.mjx._src.types import DisableBit +from mujoco.mjx._src.types import GeomType +from mujoco.mjx._src.types import Model +# pylint: enable=g-importing-member +import numpy as np + + +# pair-wise collision functions +_COLLISION_FUNC = { + (GeomType.PLANE, GeomType.SPHERE): plane_sphere, + (GeomType.PLANE, GeomType.CAPSULE): plane_capsule, + (GeomType.PLANE, GeomType.BOX): plane_convex, + (GeomType.PLANE, GeomType.MESH): plane_convex, + (GeomType.SPHERE, GeomType.SPHERE): sphere_sphere, + (GeomType.SPHERE, GeomType.CAPSULE): sphere_capsule, + (GeomType.SPHERE, GeomType.BOX): sphere_convex, + (GeomType.SPHERE, GeomType.MESH): sphere_convex, + (GeomType.CAPSULE, GeomType.CAPSULE): capsule_capsule, + (GeomType.CAPSULE, GeomType.BOX): capsule_convex, + (GeomType.CAPSULE, GeomType.MESH): capsule_convex, + (GeomType.BOX, GeomType.BOX): convex_convex, + (GeomType.BOX, GeomType.MESH): convex_convex, + (GeomType.MESH, GeomType.MESH): convex_convex, +} + + +def get_collision_fn( + key: Tuple[Union[GeomType, mujoco.mjtGeom], Union[GeomType, mujoco.mjtGeom]] +) -> Optional[Callable[[GeomInfo, GeomInfo], collision_base.Contact]]: + """Returns a collision function given a pair of geom types.""" + return _COLLISION_FUNC.get(key, None) + + +def _add_candidate( + result: CandidateSet, + m: Union[Model, mujoco.MjModel], + g1: int, + g2: int, + ipair: int = -1, +): + """Adds a candidate to test for collision.""" + t1, t2 = m.geom_type[g1], m.geom_type[g2] + if t1 > t2: + t1, t2, g1, g2 = t2, t1, g2, g1 + + def mesh_key(i): + convex_data = [[None] * m.ngeom] * 3 + if isinstance(m, Model): + convex_data = [m.geom_convex_face, m.geom_convex_vert, m.geom_convex_edge] + key = tuple((-1,) if v[i] is None else v[i].shape for v in convex_data) + return key + + k1, k2 = mesh_key(g1), mesh_key(g2) + + candidates = {(c.geom1, c.geom2) for c in result.get((t1, t2, k1, k2), [])} + if (g1, g2) in candidates: + return + + if ipair > -1: + candidate = Candidate(g1, g2, ipair, -1, m.pair_dim[ipair]) + elif m.geom_priority[g1] != m.geom_priority[g2]: + gp = g1 if m.geom_priority[g1] > m.geom_priority[g2] else g2 + candidate = Candidate(g1, g2, -1, gp, m.geom_condim[gp]) + else: + dim = max(m.geom_condim[g1], m.geom_condim[g2]) + candidate = Candidate(g1, g2, -1, -1, dim) + + result.setdefault((t1, t2, k1, k2), []).append(candidate) + + +def _pair_params( + m: Model, + candidates: Sequence[Candidate], +) -> SolverParams: + """Gets solver params for pair geoms.""" + ipair = jp.array([c.ipair for c in candidates]) + friction = jp.clip(m.pair_friction[ipair], a_min=mujoco.mjMINMU) + solref = m.pair_solref[ipair] + solreffriction = m.pair_solreffriction[ipair] + solimp = m.pair_solimp[ipair] + margin = m.pair_margin[ipair] + gap = m.pair_gap[ipair] + + return SolverParams(friction, solref, solreffriction, solimp, margin, gap) + + +def _priority_params( + m: Model, + candidates: Sequence[Candidate], +) -> SolverParams: + """Gets solver params from priority geoms.""" + geomp = jp.array([c.geomp for c in candidates]) + friction = m.geom_friction[geomp][:, jp.array([0, 0, 1, 2, 2])] + solref = m.geom_solref[geomp] + solreffriction = jp.zeros(geomp.shape + (mujoco.mjNREF,)) + solimp = m.geom_solimp[geomp] + g = jp.array([(c.geom1, c.geom2) for c in candidates]) + margin = jp.amax(m.geom_margin[g.T], axis=0) + gap = jp.amax(m.geom_gap[g.T], axis=0) + + return SolverParams(friction, solref, solreffriction, solimp, margin, gap) + + +def _dynamic_params( + m: Model, + candidates: Sequence[Candidate], +) -> SolverParams: + """Gets solver params for dynamic geoms.""" + g1 = jp.array([c.geom1 for c in candidates]) + g2 = jp.array([c.geom2 for c in candidates]) + + friction = jp.maximum(m.geom_friction[g1], m.geom_friction[g2]) + # copy friction terms for the full geom pair + friction = friction[:, jp.array([0, 0, 1, 2, 2])] + + minval = jp.array(mujoco.mjMINVAL) + solmix1, solmix2 = m.geom_solmix[g1], m.geom_solmix[g2] + mix = solmix1 / (solmix1 + solmix2) + mix = jp.where((solmix1 < minval) & (solmix2 < minval), 0.5, mix) + mix = jp.where((solmix1 < minval) & (solmix2 >= minval), 0.0, mix) + mix_fn = jax.vmap(lambda a, b, m: m * a + (1 - m) * b) + + solref1, solref2 = m.geom_solref[g1], m.geom_solref[g2] + solref = jp.minimum(solref1, solref2) + s_mix = mix_fn(solref1, solref2, mix) + solref = jp.where((solref1[0] > 0) & (solref2[0] > 0), s_mix, solref) + solreffriction = jp.zeros(g1.shape + (mujoco.mjNREF,)) + solimp = mix_fn(m.geom_solimp[g1], m.geom_solimp[g2], mix) + margin = jp.maximum(m.geom_margin[g1], m.geom_margin[g2]) + gap = jp.maximum(m.geom_gap[g1], m.geom_gap[g2]) + + return SolverParams(friction, solref, solreffriction, solimp, margin, gap) + + +def _pair_info( + m: Model, d: Data, geom1: Sequence[int], geom2: Sequence[int] +) -> Tuple[GeomInfo, GeomInfo, Sequence[Dict[str, Optional[int]]]]: + """Returns geom pair info for calculating collision.""" + g1, g2 = jp.array(geom1), jp.array(geom2) + info1 = GeomInfo( + d.geom_xpos[g1], + d.geom_xmat[g1], + m.geom_size[g1], + ) + info2 = GeomInfo( + d.geom_xpos[g2], + d.geom_xmat[g2], + m.geom_size[g2], + ) + in_axes1 = in_axes2 = jax.tree_map(lambda x: 0, info1) + if m.geom_convex_face[geom1[0]] is not None: + info1 = info1.replace( + face=jp.stack([m.geom_convex_face[i] for i in geom1]), + vert=jp.stack([m.geom_convex_vert[i] for i in geom1]), + edge=jp.stack([m.geom_convex_edge[i] for i in geom1]), + facenorm=jp.stack([m.geom_convex_facenormal[i] for i in geom1]), + ) + in_axes1 = in_axes1.replace(face=0, vert=0, edge=0, facenorm=0) + if m.geom_convex_face[geom2[0]] is not None: + info2 = info2.replace( + face=jp.stack([m.geom_convex_face[i] for i in geom2]), + vert=jp.stack([m.geom_convex_vert[i] for i in geom2]), + edge=jp.stack([m.geom_convex_edge[i] for i in geom2]), + facenorm=jp.stack([m.geom_convex_facenormal[i] for i in geom2]), + ) + in_axes2 = in_axes2.replace(face=0, vert=0, edge=0, facenorm=0) + return info1, info2, [in_axes1, in_axes2] + + +def _body_pair_filter( + m: Union[Model, mujoco.MjModel], b1: int, b2: int +) -> bool: + """Filters body pairs for collision.""" + dsbl_filterparent = m.opt.disableflags & DisableBit.FILTERPARENT + weld1 = m.body_weldid[b1] + weld2 = m.body_weldid[b2] + parent_weld1 = m.body_weldid[m.body_parentid[weld1]] + parent_weld2 = m.body_weldid[m.body_parentid[weld2]] + + if weld1 == weld2: + # filter out self-collisions + return True + + if ( + not dsbl_filterparent + and weld1 != 0 + and weld2 != 0 + and (weld1 == parent_weld2 or weld2 == parent_weld1) + ): + # filter out parent-child collisions + return True + + return False + + +def _collide_geoms( + m: Model, + d: Data, + geom_types: Tuple[GeomType, GeomType], + candidates: Sequence[Candidate], +) -> Contact: + """Collides a geom pair.""" + fn = get_collision_fn(geom_types) + if not fn: + return Contact.zero() + + # group sol params by different candidate types + typ_cands = {} + for c in candidates: + typ = (c.ipair > -1, c.geomp > -1) + typ_cands.setdefault(typ, []).append(c) + + geom1, geom2, params = [], [], [] + for (pair, priority), candidates in typ_cands.items(): + geom1.extend([c.geom1 for c in candidates]) + geom2.extend([c.geom2 for c in candidates]) + if pair: + params.append(_pair_params(m, candidates)) + elif priority: + params.append(_priority_params(m, candidates)) + else: + params.append(_dynamic_params(m, candidates)) + + # call contact function + g1, g2, in_axes = _pair_info(m, d, geom1, geom2) + res = jax.vmap(fn, in_axes=in_axes)(g1, g2) + dist, pos, frame = jax.tree_map(jp.concatenate, res) + + params = jax.tree_map(lambda *x: jp.concatenate(x), *params) + geom1, geom2 = jp.array(geom1), jp.array(geom2) + # repeat params by the number of contacts per geom pair + n_repeat = dist.shape[-1] // geom1.shape[0] + geom1, geom2, params = jax.tree_map( + lambda x: jp.repeat(x, n_repeat, axis=0), + (geom1, geom2, params), + ) + + con = Contact( + dist=dist, + pos=pos, + frame=frame, + includemargin=params.margin - params.gap, + friction=params.friction, + solref=params.solref, + solreffriction=params.solreffriction, + solimp=params.solimp, + geom1=geom1, + geom2=geom2, + dim=np.array([]), + efc_address=np.array([]), + ) + return con + + +def _max_contact_points(m: Model) -> int: + """Returns the maximum number of contact points when set as a numeric.""" + for i in range(m.nnumeric): + name = m.names[m.name_numericadr[i] :].decode('utf-8').split('\x00', 1)[0] + if name == 'max_contact_points': + return int(m.numeric_data[m.numeric_adr[i]]) + + return -1 + + +def collision_candidates(m: Union[Model, mujoco.MjModel]) -> CandidateSet: + """Returns candidates for collision checking.""" + candidate_set = {} + + for ipair in range(m.npair): + g1, g2 = m.pair_geom1[ipair], m.pair_geom2[ipair] + _add_candidate(candidate_set, m, g1, g2, ipair) + + body_pairs = [] + exclude_signature = set(m.exclude_signature) + for b1 in range(m.nbody): + for b2 in range(b1, m.nbody): + signature = (b1 << 16) + (b2) + if signature in exclude_signature: + continue + if _body_pair_filter(m, b1, b2): + continue + body_pairs.append((b1, b2)) + + for b1, b2 in body_pairs: + start1 = m.body_geomadr[b1] + end1 = m.body_geomadr[b1] + m.body_geomnum[b1] + for g1 in range(start1, end1): + start2 = m.body_geomadr[b2] + end2 = m.body_geomadr[b2] + m.body_geomnum[b2] + for g2 in range(start2, end2): + mask = m.geom_contype[g1] & m.geom_conaffinity[g2] + mask |= m.geom_contype[g2] & m.geom_conaffinity[g1] + if mask != 0: + _add_candidate(candidate_set, m, g1, g2) + + return candidate_set + + +def ncon(m: Model) -> int: + """Returns the number of contacts computed in MJX given a model.""" + candidates = collision_candidates(m) + max_count = _max_contact_points(m) + count = sum([ + len(v) * get_collision_fn(k[0:2]).ncon for k, v in candidates.items() # pytype: disable=attribute-error + ]) + return min(max_count, count) if max_count > -1 else count + + +def collision(m: Model, d: Data) -> Data: + """Collides geometries.""" + candidate_set = collision_candidates(m) + + contacts = [] + for key, candidates in candidate_set.items(): + geom_types = key[0:2] + contacts.append(_collide_geoms(m, d, geom_types, candidates)) + + if not contacts: + return d.replace(contact=Contact.zero(), ncon=0) + + contact = jax.tree_map(lambda *x: jp.concatenate(x), *contacts) + + max_contact_points = _max_contact_points(m) + if max_contact_points > -1 and contact.dist.shape[0] > max_contact_points: + # get top-k contacts + _, idx = jax.lax.top_k(-contact.dist, k=max_contact_points) + contact = jax.tree_map(lambda x, idx=idx: jp.take(x, idx, axis=0), contact) + + ncon_ = contact.dist.shape[0] + ns = d.ne + d.nf + d.nl + # TODO(robotics-simulation): add support for other friction dimensions + contact = contact.replace(efc_address=np.arange(ns, ns + d.ncon * 4, 4)) + contact = contact.replace(dim=3 * np.ones(ncon_, dtype=np.int32)) + + return d.replace(contact=contact, ncon=ncon_) diff --git a/mjx/mujoco/mjx/_src/collision_driver_test.py b/mjx/mujoco/mjx/_src/collision_driver_test.py new file mode 100644 index 00000000..14e14fb7 --- /dev/null +++ b/mjx/mujoco/mjx/_src/collision_driver_test.py @@ -0,0 +1,499 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests the collision driver.""" + +import dataclasses +from typing import Dict, Optional, Tuple + +from absl.testing import absltest +from absl.testing import parameterized +from etils import epath +import jax +import jax.numpy as jp +import mujoco +from mujoco import mjx +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import Contact +from mujoco.mjx._src.types import Data +from mujoco.mjx._src.types import Model +# pylint: emable=g-importing-member +import numpy as np + + +def _assert_attr_eq(mjx_d, mj_d, attr, name, atol): + if attr == 'efc_address': + # we do not test efc_address since it gets set in constraint logic + return + err_msg = f'mismatch: {attr} in run: {name}' + mjx_d, mj_d = getattr(mjx_d, attr), getattr(mj_d, attr) + if attr == 'frame': + mj_d = mj_d.reshape((-1, 3, 3)) + if mjx_d.shape != mj_d.shape: + raise AssertionError(f'{attr} shape mismatch: {mjx_d.shape}, {mj_d.shape}') + np.testing.assert_allclose(mjx_d, mj_d, err_msg=err_msg, atol=atol) + + +def _collide( + mjcf: str, assets: Optional[Dict[str, str]] = None +) -> Tuple[mujoco.MjModel, mujoco.MjData, Model, Data]: + m = mujoco.MjModel.from_xml_string(mjcf, assets or {}) + mx = mjx.device_put(m) + d = mujoco.MjData(m) + dx = mjx.device_put(d) + + mujoco.mj_step(m, d) + collision_jit_fn = jax.jit(mjx.collision) + kinematics_jit_fn = jax.jit(mjx.kinematics) + dx = kinematics_jit_fn(mx, dx) + dx = collision_jit_fn(mx, dx) + return d, dx + + +class SphereCollisionTest(parameterized.TestCase): + _SPHERE_PLANE = """ + + + + + + + + + + """ + + _SPHERE_SPHERE = """ + + + + + + + + + + + + + """ + + _SPHERE_CAP = """ + + + + + + + + + + + + + """ + + @parameterized.parameters( + ('sphere_plane', _SPHERE_PLANE), + ('sphere_sphere', _SPHERE_SPHERE), + ('sphere_cap', _SPHERE_CAP), + ) + def test_sphere(self, name, mjcf): + d, dx = _collide(mjcf) + for field in dataclasses.fields(Contact): + _assert_attr_eq(dx.contact, d.contact, field.name, name, 1e-5) + + _SPHERE_CONVEX = """ + + + + + + + + + + + + + """ + + def test_sphere_convex(self): + d, dx = _collide(self._SPHERE_CONVEX) + + for field in dataclasses.fields(Contact): + _assert_attr_eq(dx.contact, d.contact, field.name, 'sphere_convex', 1e-4) + + +class CapsuleCollisionTest(parameterized.TestCase): + _CAP_PLANE = """ + + + + + + + + + + """ + + _CAP_CAP = """ + + + + + + + + + + + + + """ + + @parameterized.parameters( + ('capsule_plane', _CAP_PLANE), + ('capsule_capsule', _CAP_CAP), + ) + def test_capsule(self, name, mjcf): + d, dx = _collide(mjcf) + for field in dataclasses.fields(Contact): + _assert_attr_eq(dx.contact, d.contact, field.name, name, 1e-4) + + _PARALLEL_CAP = """ + + + + + + + + + + + + + """ + + def test_parallel_capsules(self): + """Tests that two parallel capsules are colliding at the midpoint.""" + _, dx = _collide(self._PARALLEL_CAP) + + np.testing.assert_allclose(dx.contact.dist, -0.05) + np.testing.assert_allclose( + dx.contact.pos[0], + np.array([0.0, 0.1, (0.15 + 0.2) / 2.0]), + atol=1e-5, + ) + np.testing.assert_allclose( + dx.contact.frame[0, 0, :], np.array([0, 0.0, -1.0]), atol=1e-5 + ) + + _CAP_BOX = """ + + + + + + + + + + + + + """ + + def test_capsule_convex(self): + """Tests a capsule-convex collision for a face contact.""" + d, dx = _collide(self._CAP_BOX) + + for field in dataclasses.fields(Contact): + _assert_attr_eq(dx.contact, d.contact, field.name, 'capsule_convex', 1e-4) + + _CAP_EDGE_BOX = """ + + + + + + + + + + + + + """ + + def test_capsule_convex_edge(self): + """Tests a capsule-convex collision for an edge contact.""" + d, dx = _collide(self._CAP_EDGE_BOX) + + c = dx.contact + self.assertEqual(c.pos.shape[0], 2) + self.assertGreater(c.dist[1], 0) + # extract the contact point with penetration + c = jax.tree_map(lambda x: jp.take(x, 0, axis=0)[None], dx.contact) + c = c.replace(dim=c.dim[np.array([0])]) + for field in dataclasses.fields(Contact): + _assert_attr_eq(c, d.contact, field.name, 'capsule_convex_edge', 1e-4) + + +class ConvexTest(absltest.TestCase): + """Tests the convex contact functions.""" + + _BOX_PLANE = """ + + + + + + + + + + """ + + def test_box_plane(self): + """Tests box collision with a plane.""" + d, dx = _collide(self._BOX_PLANE) + + np.testing.assert_array_less(dx.contact.dist[:2], 0) + np.testing.assert_array_less(-dx.contact.dist[2:], 0) + # extract the contact points with penetration + c = jax.tree_map(lambda x: jp.take(x, jp.array([0, 1]), axis=0), dx.contact) + c = c.replace(dim=c.dim[np.array([0, 1])]) + for field in dataclasses.fields(Contact): + _assert_attr_eq(c, d.contact, field.name, 'box_plane', 1e-2) + + _BOX_BOX = """ + + + + + + + + + + + + + """ + + def test_box_box(self): + """Tests a face contact for a box-box collision.""" + d, dx = _collide(self._BOX_BOX) + c = dx.contact + + self.assertEqual(c.pos.shape[0], 4) + self.assertTrue((c.dist < 0).all()) + np.testing.assert_array_almost_equal(c.pos[:, 2], np.array([0.39] * 4), 2) + np.testing.assert_array_almost_equal( + c.frame[:, 0, :], np.array([[0.0, 0.0, 1.0]] * 4) + ) + np.testing.assert_array_almost_equal( + c.frame.reshape((-1, 9)), d.contact.frame[:4, :] + ) + + _BOX_BOX_EDGE = """ + + + + + + + + + + + + + """ + + def test_box_box_edge(self): + """Tests an edge contact for a box-box collision.""" + d, dx = _collide(self._BOX_BOX_EDGE) + + # Only one contact point. + np.testing.assert_array_less(dx.contact.dist[:1], 0) + np.testing.assert_array_less(-dx.contact.dist[1:], 0) + # extract the contact point with penetration + c = jax.tree_map(lambda x: jp.take(x, 0, axis=0)[None], dx.contact) + c = c.replace(dim=c.dim[np.array([0])]) + for field in dataclasses.fields(Contact): + _assert_attr_eq(c, d.contact, field.name, 'box_box_edge', 1e-2) + + _CONVEX_CONVEX = """ + + + + + + + + + + + + + + + + + """ + + def test_convex_convex(self): + """Tests generic convex-convex collision.""" + directory = epath.resource_path('mujoco.mjx') + assets = { + 'meshes/tetrahedron.stl': ( + directory / 'test_data' / 'meshes/tetrahedron.stl' + ).read_bytes(), + 'meshes/dodecahedron.stl': ( + directory / 'test_data' / 'meshes/dodecahedron.stl' + ).read_bytes(), + } + _, dx = _collide(self._CONVEX_CONVEX, assets=assets) + c = dx.contact + + # Only one contact point for an edge contact. + self.assertLess(c.dist[0], 0) + self.assertTrue((c.dist[1:] > 0).all()) + np.testing.assert_array_almost_equal(c.frame[0, 0], np.array([0, 0, 1])) + + +class BodyPairFilterTest(absltest.TestCase): + """Tests that certain body pairs get filtered.""" + + _SELF_COLLISION = """ + + + + + + + + + + """ + + def test_filter_self_collision(self): + """Tests that self collisions get filtered.""" + d, dx = _collide(self._SELF_COLLISION) + self.assertEqual(dx.contact.pos.shape[0], d.contact.pos.shape[0]) + self.assertEqual(dx.contact.pos.shape[0], 0) + + _PARENT_CHILD = """ + + + + + + + + + + + + + """ + + def test_filter_parent_child(self): + """Tests that parent-child collisions get filtered.""" + m = mujoco.MjModel.from_xml_string(self._PARENT_CHILD) + mx = mjx.device_put(m) + d = mujoco.MjData(m) + dx = mjx.device_put(d) + + mujoco.mj_step(m, d) + collision_jit_fn = jax.jit(mjx.collision) + kinematics_jit_fn = jax.jit(mjx.kinematics) + dx = kinematics_jit_fn(mx, dx) + dx = collision_jit_fn(mx, dx) + + self.assertEqual(dx.contact.pos.shape[0], d.contact.pos.shape[0]) + self.assertEqual(dx.contact.pos.shape[0], 0) + + def test_disable_filter_parent_child(self): + """Tests that filterparent flag disables parent-child filtering.""" + m = mujoco.MjModel.from_xml_string(self._PARENT_CHILD) + m.opt.disableflags |= mujoco.mjtDisableBit.mjDSBL_FILTERPARENT + mx = mjx.device_put(m) + d = mujoco.MjData(m) + dx = mjx.device_put(d) + + mujoco.mj_step(m, d) + collision_jit_fn = jax.jit(mjx.collision) + kinematics_jit_fn = jax.jit(mjx.kinematics) + dx = kinematics_jit_fn(mx, dx) + dx = collision_jit_fn(mx, dx) + + # one collision between parent-child spheres + self.assertEqual(dx.contact.pos.shape[0], d.contact.pos.shape[0]) + self.assertEqual(dx.contact.pos.shape[0], 1) + + +class TopKContactTest(absltest.TestCase): + """Tests top-k contacts.""" + + _CAPSULES = """ + + + + + + + + + + + + + + + + + + + + """ + + def test_top_k_contacts(self): + m = mujoco.MjModel.from_xml_string(self._CAPSULES) + mx_top_k = mjx.device_put(m) + mx_all = mx_top_k.replace( + nnumeric=0, name_numericadr=np.array([]), numeric_data=np.array([]) + ) + d = mujoco.MjData(m) + dx = mjx.device_put(d) + + collision_jit_fn = jax.jit(mjx.collision) + kinematics_jit_fn = jax.jit(mjx.kinematics) + dx = kinematics_jit_fn(mx_all, dx) + + dx_all = collision_jit_fn(mx_all, dx) + dx_top_k = collision_jit_fn(mx_top_k, dx) + + self.assertEqual(dx_all.ncon, 3) + self.assertEqual(dx_top_k.ncon, 2) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/collision_primitive.py b/mjx/mujoco/mjx/_src/collision_primitive.py new file mode 100644 index 00000000..8c2dd529 --- /dev/null +++ b/mjx/mujoco/mjx/_src/collision_primitive.py @@ -0,0 +1,126 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Collision primitives.""" + +from typing import Tuple + +import jax +from jax import numpy as jp +from mujoco.mjx._src import math +# pylint: disable=g-importing-member +from mujoco.mjx._src.collision_base import Contact +from mujoco.mjx._src.collision_base import GeomInfo +# pylint: enable=g-importing-member + + +def _plane_sphere( + plane_normal: jax.Array, + plane_pos: jax.Array, + sphere_pos: jax.Array, + radius: jax.Array, +) -> Tuple[jax.Array, jax.Array]: + """Returns the penetration and contact point between a plane and sphere.""" + cdist = jp.dot(sphere_pos - plane_pos, plane_normal) + dist = cdist - radius + pos = sphere_pos - plane_normal * (radius + 0.5 * dist) + return dist, pos + + +def plane_sphere(plane: GeomInfo, sphere: GeomInfo) -> Contact: + """Calculates contact between a plane and a sphere.""" + n = plane.mat[:, 2] + dist, pos = _plane_sphere(n, plane.pos, sphere.pos, sphere.size[0]) + return jax.tree_map( + lambda x: jp.expand_dims(x, axis=0), (dist, pos, math.make_frame(n)) + ) + + +def plane_capsule(plane: GeomInfo, cap: GeomInfo) -> Contact: + """Calculates two contacts between a capsule and a plane.""" + n, axis = plane.mat[:, 2], cap.mat[:, 2] + # align contact frames with capsule axis + b, b_norm = math.normalize_with_norm(axis - n * jp.dot(n, axis)) + y, z = jp.array([0.0, 1.0, 0.0]), jp.array([0.0, 0.0, 1.0]) + b = jp.where(b_norm < 0.5, jp.where((-0.5 < n[1]) & (n[1] < 0.5), y, z), b) + frame = jp.array([[n, b, jp.cross(n, b)]]) + segment = axis * cap.size[1] + contacts = [] + for offset in [segment, -segment]: + dist, pos = _plane_sphere(n, plane.pos, cap.pos + offset, cap.size[0]) + dist = jp.expand_dims(dist, axis=0) + pos = jp.expand_dims(pos, axis=0) + contacts.append((dist, pos, frame)) + return jax.tree_map(lambda *x: jp.concatenate(x), *contacts) + + +def _sphere_sphere( + pos1: jax.Array, radius1: jax.Array, pos2: jax.Array, radius2: jax.Array +) -> Contact: + """Returns the penetration, contact point, and normal between two spheres.""" + n, dist = math.normalize_with_norm(pos2 - pos1) + n = jp.where(dist == 0.0, jp.array([1.0, 0.0, 0.0]), n) + dist = dist - (radius1 + radius2) + pos = pos1 + n * (radius1 + dist * 0.5) + return dist, pos, n + + +def sphere_sphere(s1: GeomInfo, s2: GeomInfo) -> Contact: + """Calculates contact between two spheres.""" + dist, pos, n = _sphere_sphere(s1.pos, s1.size[0], s2.pos, s2.size[0]) + return jax.tree_map( + lambda x: jp.expand_dims(x, axis=0), (dist, pos, math.make_frame(n)) + ) + + +def sphere_capsule(sphere: GeomInfo, cap: GeomInfo) -> Contact: + """Calculates one contact between a sphere and a capsule.""" + axis, length = cap.mat[:, 2], cap.size[1] + segment = axis * length + pt = math.closest_segment_point( + cap.pos - segment, cap.pos + segment, sphere.pos + ) + dist, pos, n = _sphere_sphere(sphere.pos, sphere.size[0], pt, cap.size[0]) + return jax.tree_map( + lambda x: jp.expand_dims(x, axis=0), (dist, pos, math.make_frame(n)) + ) + + +def capsule_capsule(cap1: GeomInfo, cap2: GeomInfo) -> Contact: + """Calculates one contact between two capsules.""" + axis1, length1, axis2, length2 = ( + cap1.mat[:, 2], + cap1.size[1], + cap2.mat[:, 2], + cap2.size[1], + ) + seg1, seg2 = axis1 * length1, axis2 * length2 + pt1, pt2 = math.closest_segment_to_segment_points( + cap1.pos - seg1, + cap1.pos + seg1, + cap2.pos - seg2, + cap2.pos + seg2, + ) + radius1, radius2 = cap1.size[0], cap2.size[0] + dist, pos, n = _sphere_sphere(pt1, radius1, pt2, radius2) + return jax.tree_map( + lambda x: jp.expand_dims(x, axis=0), (dist, pos, math.make_frame(n)) + ) + +# store ncon as function attributes +plane_sphere.ncon = 1 +plane_capsule.ncon = 2 +sphere_sphere.ncon = 1 +sphere_capsule.ncon = 1 +capsule_capsule.ncon = 1 diff --git a/mjx/mujoco/mjx/_src/constraint.py b/mjx/mujoco/mjx/_src/constraint.py new file mode 100644 index 00000000..bd0bbaa6 --- /dev/null +++ b/mjx/mujoco/mjx/_src/constraint.py @@ -0,0 +1,340 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Core non-smooth constraint functions.""" + +from typing import Tuple + +import jax +from jax import numpy as jp +import mujoco +from mujoco.mjx._src import math +from mujoco.mjx._src import scan +from mujoco.mjx._src import support +# pylint: disable=g-importing-member +from mujoco.mjx._src.dataclasses import PyTreeNode +from mujoco.mjx._src.types import Contact +from mujoco.mjx._src.types import Data +from mujoco.mjx._src.types import DisableBit +from mujoco.mjx._src.types import EqType +from mujoco.mjx._src.types import JointType +from mujoco.mjx._src.types import Model +# pylint: enable=g-importing-member +import numpy as np + + +class _Efc(PyTreeNode): + J: jax.Array + R: jax.Array + aref: jax.Array + frictionloss: jax.Array + + @classmethod + def zero(cls, m: Model) -> '_Efc': + z = jp.empty((0,)) + return _Efc(J=jp.empty((0, m.nv)), R=z, aref=z, frictionloss=z) + + +def _kbi( + m: Model, + solref: jax.Array, + solimp: jax.Array, + pos: jax.Array, +) -> Tuple[jax.Array, jax.Array, jax.Array]: + """Calculates stiffness, damping, and impedance of a constraint.""" + timeconst, dampratio = solref + + if not m.opt.disableflags & DisableBit.REFSAFE: + timeconst = jp.maximum(timeconst, 2 * m.opt.timestep) * (timeconst > 0) + + dmin, dmax, width, mid, power = solimp + + dmin = jp.clip(dmin, mujoco.mjMINIMP, mujoco.mjMAXIMP) + dmax = jp.clip(dmax, mujoco.mjMINIMP, mujoco.mjMAXIMP) + width = jp.maximum(0, width) + mid = jp.clip(mid, mujoco.mjMINIMP, mujoco.mjMAXIMP) + power = jp.maximum(1, power) + + # See https://mujoco.readthedocs.io/en/latest/modeling.html#solver-parameters + k = 1 / (dmax * dmax * timeconst * timeconst * dampratio * dampratio) + b = 2 / (dmax * timeconst) + # TODO(robotics-simulation): check various solparam settings in model gen test + k = jp.where(dampratio <= 0, -dampratio / (dmax * dmax), k) + b = jp.where(timeconst <= 0, -timeconst / dmax, b) + + imp_x = jp.abs(pos) / width + imp_a = (1.0 / jp.power(mid, power - 1)) * jp.power(imp_x, power) + imp_b = 1 - (1.0 / jp.power(1 - mid, power - 1)) * jp.power(1 - imp_x, power) + imp_y = jp.where(imp_x < mid, imp_a, imp_b) + imp = dmin + imp_y * (dmax - dmin) + imp = jp.clip(imp, dmin, dmax) + imp = jp.where(imp_x > 1.0, dmax, imp) + + return k, b, imp # corresponds to K, B, I of efc_KBIP + + +def _instantiate_connect(m: Model, d: Data) -> _Efc: + """Returns jacobians and supporting data for connect equality constraints.""" + + if (m.opt.disableflags & DisableBit.EQUALITY) or m.neq == 0: + return _Efc.zero(m) + + connect_id = np.nonzero(m.eq_type == EqType.CONNECT)[0] + + if connect_id.size == 0: + return _Efc.zero(m) + + body1id, body2id = m.eq_obj1id[connect_id], m.eq_obj2id[connect_id] + data = m.eq_data[connect_id] + solref, solimp = m.eq_solref[connect_id], m.eq_solimp[connect_id] + + def fn(data, id1, id2, solref, solimp): + anchor1, anchor2 = data[0:3], data[3:6] + # find global points + pos1 = d.xmat[id1] @ anchor1 + d.xpos[id1] + pos2 = d.xmat[id2] @ anchor2 + d.xpos[id2] + + # compute position error + cpos = pos1 - pos2 + + # compute Jacobian difference (opposite of contact: 0 - 1) + jacp1, _ = support.jac(m, d, pos1, id1) + jacp2, _ = support.jac(m, d, pos2, id2) + j = (jacp1 - jacp2).T + + # impedance, inverse constraint mass, reference acceleration + k, b, imp = _kbi(m, solref, solimp, math.norm(cpos)) + invweight = m.body_invweight0[id1, 0] + m.body_invweight0[id2, 0] + r = jp.maximum(invweight * (1 - imp) / imp, mujoco.mjMINVAL).repeat(3) + aref = -b * (j @ d.qvel) - k * imp * cpos + + return _Efc(J=j, R=r, aref=aref, frictionloss=jp.zeros_like(r)) + + efcs = jax.vmap(fn)(data, body1id, body2id, solref, solimp) + + return jax.tree_map(jp.concatenate, efcs) + + +def _instantiate_weld(m: Model, d: Data) -> _Efc: + """Returns jacobians and supporting data for connect weld constraints.""" + + if (m.opt.disableflags & DisableBit.EQUALITY) or m.neq == 0: + return _Efc.zero(m) + + weld_id = np.nonzero(m.eq_type == EqType.WELD)[0] + + if weld_id.size == 0: + return _Efc.zero(m) + + body1id, body2id = m.eq_obj1id[weld_id], m.eq_obj2id[weld_id] + data = m.eq_data[weld_id] + solref, solimp = m.eq_solref[weld_id], m.eq_solimp[weld_id] + + def fn(data, id1, id2, solref, solimp): + anchor1, anchor2 = data[0:3], data[3:6] + relpose, torquescale = data[6:10], data[10] + + # find global points + pos1 = d.xmat[id1] @ anchor2 + d.xpos[id1] + pos2 = d.xmat[id2] @ anchor1 + d.xpos[id2] + + # compute position error + cpos = pos1 - pos2 + + # compute Jacobian difference (opposite of contact: 0 - 1) + jacp1, jacr1 = support.jac(m, d, pos1, id1) + jacp2, jacr2 = support.jac(m, d, pos2, id2) + jacdifp = jacp1 - jacp2 + jacdifr = (jacr1 - jacr2) * torquescale + + # compute orientation error: neg(q1) * q0 * relpose (axis components only) + quat = math.quat_mul(d.xquat[id1], relpose) + quat1 = math.quat_inv(d.xquat[id2]) + crot = math.quat_mul(quat1, quat)[1:] # copy axis components + + # correct rotation Jacobian: 0.5 * neg(q1) * (jac0-jac1) * q0 * relpose + jac_fn = lambda j: math.quat_mul(math.quat_mul_axis(quat1, j), quat)[1:] + jacdifr = 0.5 * jax.vmap(jac_fn)(jacdifr) + + j = jp.concatenate((jacdifp.T, jacdifr.T)) + pos = jp.concatenate((cpos, crot)) + + # impedance, inverse constraint mass, reference acceleration + k, b, imp = _kbi(m, solref, solimp, math.norm(pos.at[3:].mul(torquescale))) + invweight = m.body_invweight0[id1] + m.body_invweight0[id2] + r = jp.maximum(invweight * (1 - imp) / imp, mujoco.mjMINVAL).repeat(3) + aref = -b * (j @ d.qvel) - k * imp * pos + + return _Efc(J=j, R=r, aref=aref, frictionloss=jp.zeros_like(r)) + + efcs = jax.vmap(fn)(data, body1id, body2id, solref, solimp) + + return jax.tree_map(jp.concatenate, efcs) + + +def _instantiate_friction(m: Model, d: Data) -> _Efc: + # TODO(robotics-team): implement _instantiate_friction + del d + return _Efc.zero(m) + + +def _instantiate_limit(m: Model, d: Data) -> _Efc: + """Returns jacobians and supporting data for joint limits.""" + + if (m.opt.disableflags & DisableBit.LIMIT) or not m.jnt_limited.any(): + return _Efc.zero(m) + + def fn(jnt_typs, jnt_range, solref, solimp, margin, qpos, dofs, invweight0): + js, rs, arefs = [], [], [] + qpos_i, dof_i = 0, 0 + + for i in range(len(jnt_typs)): + jnt_typ = JointType(jnt_typs[i]) + + if jnt_typ == JointType.FREE: + return None # omit constraint rows for free joints + elif jnt_typ == JointType.BALL: + axis, angle = math.quat_to_axis_angle(qpos[qpos_i : qpos_i + 4]) + dist = jp.amax(jnt_range[i]) - angle + j = jp.sum( + jax.vmap(jp.multiply)(dofs[dof_i : dof_i + 3], -axis), axis=0 + ) + elif jnt_typ in (JointType.HINGE, JointType.SLIDE): + dist_min = qpos[qpos_i] - jnt_range[i, 0] + dist_max = jnt_range[i, 1] - qpos[qpos_i] + dist = jp.minimum(dist_min, dist_max) + j = dofs[dof_i] * ((dist_min < dist_max) * 2 - 1) + else: + raise RuntimeError(f'unrecognized joint type: {jnt_typ}') + + dist = dist - margin[i] + k, b, imp = _kbi(m, solref[i], solimp[i], dist) + r = jp.maximum(invweight0[dof_i] * (1 - imp) / imp, mujoco.mjMINVAL) + aref = -b * (j @ d.qvel) - k * imp * dist + j, aref = j * (dist < 0), aref * (dist < 0) + js, rs, arefs = js + [j], rs + [r], arefs + [aref] + dof_i, qpos_i = dof_i + jnt_typ.dof_width(), qpos_i + jnt_typ.qpos_width() + + return jp.stack(js), jp.stack(rs), jp.stack(arefs) + + j, r, aref = scan.flat( + m, + fn, + 'jjjjjqvv', + 'jjj', + m.jnt_type, + m.jnt_range, + m.jnt_solref, + m.jnt_solimp, + m.jnt_margin, + d.qpos, + jp.eye(m.nv), + m.dof_invweight0, + ) + + return _Efc(J=j, R=r, aref=aref, frictionloss=jp.zeros_like(r)) + + +def _instantiate_contact(m: Model, d: Data) -> _Efc: + """Returns jacobians and supporitng data for contacts.""" + + if (m.opt.disableflags & DisableBit.CONTACT) or d.ncon == 0: + return _Efc.zero(m) + + def fn(contact: Contact): + dist = contact.dist - contact.includemargin + k, b, imp = _kbi(m, contact.solref, contact.solimp, dist) + + geom_bodyid = jp.array(m.geom_bodyid) + body1, body2 = geom_bodyid[contact.geom1], geom_bodyid[contact.geom2] + diff = support.jac_dif_pair(m, d, contact.pos, body1, body2) + t = m.body_invweight0[body1, 0] + m.body_invweight0[body2, 0] + + # rotate Jacobian differences to contact frame + diff_con = contact.frame @ diff.T + + # TODO(robotics-simulation): add support for other friction dimensions + # 4 pyramidal friction directions + js, rs = [], [] + for diff_tan, friction in zip(diff_con[1:], contact.friction[:2]): + for f in (friction, -friction): + js.append(diff_con[0] + diff_tan * f) + rs.append((t + f * f * t) * 2 * f * f * (1 - imp) / imp) + + j, r = jp.stack(js), jp.stack(rs) + r = jp.maximum(r, mujoco.mjMINVAL) + aref = -b * (j @ d.qvel) - k * imp * dist + mask_fn = jax.vmap(lambda x, mask=(dist < 0): x * mask) + j, aref = jax.tree_map(mask_fn, (j, aref)) + + return _Efc(J=j, R=r, aref=aref, frictionloss=jp.zeros_like(r)) + + return jax.tree_map(jp.concatenate, jax.vmap(fn)(d.contact)) + + +def count_constraints(m: Model, d: Data) -> Tuple[int, int, int, int]: + """Returns equality, friction, limit, and contact constraint counts.""" + if m.opt.disableflags & DisableBit.CONSTRAINT: + return 0, 0, 0, 0 + + if m.opt.disableflags & DisableBit.EQUALITY: + ne = 0 + else: + ne_weld = (m.eq_type == EqType.WELD).sum() + ne_connect = (m.eq_type == EqType.CONNECT).sum() + ne = ne_weld * 6 + ne_connect * 3 + + nf = 0 + + if (m.opt.disableflags & DisableBit.LIMIT) or not m.jnt_limited.any(): + nl = 0 + else: + nl = (m.jnt_type != JointType.FREE).sum() + + if (m.opt.disableflags & DisableBit.CONTACT): + nc = 0 + else: + nc = d.ncon * 4 + + return ne, nf, nl, nc + + +def make_constraint(m: Model, d: Data) -> Data: + """Creates constraint jacobians and other supporting data.""" + + ns = sum(count_constraints(m, d)[:-1]) + # TODO(robotics-simulation): make device_put set nefc/efc_address instead + d = d.tree_replace({'contact.efc_address': np.arange(ns, ns + d.ncon * 4, 4)}) + + if m.opt.disableflags & DisableBit.CONSTRAINT: + efc = _Efc.zero(m) + else: + efcs = ( + _instantiate_connect(m, d), + _instantiate_weld(m, d), + _instantiate_friction(m, d), + _instantiate_limit(m, d), + _instantiate_contact(m, d), + ) + efc = jax.tree_map(lambda *x: jp.concatenate(x), *efcs) + + d = d.replace( + efc_J=efc.J, + efc_D=1 / efc.R, + efc_aref=efc.aref, + efc_frictionloss=efc.frictionloss, + nefc=efc.aref.shape[0], + ) + + return d diff --git a/mjx/mujoco/mjx/_src/constraint_test.py b/mjx/mujoco/mjx/_src/constraint_test.py new file mode 100644 index 00000000..ce289df7 --- /dev/null +++ b/mjx/mujoco/mjx/_src/constraint_test.py @@ -0,0 +1,144 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for constraint functions.""" + +from absl.testing import absltest +from absl.testing import parameterized +import jax +from jax import numpy as jp +import mujoco +from mujoco import mjx +from mujoco.mjx._src import constraint +from mujoco.mjx._src import test_util +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import DisableBit +# pylint: enable=g-importing-member +import numpy as np + + +def _assert_eq(a, b, name, step, fname, atol=1e-3, rtol=1e-3): + err_msg = f'mismatch: {name} at step {step} in {fname}' + np.testing.assert_allclose(a, b, err_msg=err_msg, atol=atol, rtol=rtol) + + +class ConstraintTest(parameterized.TestCase): + + @parameterized.parameters(enumerate(test_util.TEST_FILES)) + def testconstraints(self, seed, fname): + """Test constraints.""" + np.random.seed(seed) + + # exclude convex.xml since convex contacts are not exactly equivalent + if fname == 'convex.xml': + return + + m = test_util.load_test_file(fname) + d = mujoco.MjData(m) + mx = mjx.device_put(m) + dx = mjx.make_data(mx) + + forward_jit_fn = jax.jit(mjx.forward) + + # give the system a little kick to ensure we have non-identity rotations + d.qvel = np.random.random(m.nv) + for i in range(100): + dx = dx.replace(qpos=jax.device_put(d.qpos), qvel=jax.device_put(d.qvel)) + mujoco.mj_step(m, d) + dx = forward_jit_fn(mx, dx) + + nnz_filter = dx.efc_J.any(axis=1) + + mj_efc_j = d.efc_J.reshape((-1, m.nv)) + mjx_efc_j = dx.efc_J[nnz_filter] + _assert_eq(mj_efc_j, mjx_efc_j, 'efc_J', i, fname) + + mjx_efc_d = dx.efc_D[nnz_filter] + _assert_eq(d.efc_D, mjx_efc_d, 'efc_D', i, fname) + + mjx_efc_aref = dx.efc_aref[nnz_filter] + _assert_eq(d.efc_aref, mjx_efc_aref, 'efc_aref', i, fname) + + mjx_efc_frictionloss = dx.efc_frictionloss[nnz_filter] + _assert_eq( + d.efc_frictionloss, + mjx_efc_frictionloss, + 'efc_frictionloss', + i, + fname, + ) + + def test_disable_refsafe(self): + m = test_util.load_test_file('ant.xml') + + timeconst = m.opt.timestep / 4.0 # timeconst < 2 * timestep + solimp = jp.array([timeconst, 1.0]) + solref = jp.array([0.8, 0.99, 0.001, 0.2, 2]) + pos = jp.ones(3) + + m.opt.disableflags = m.opt.disableflags | DisableBit.REFSAFE + mx = mjx.device_put(m) + k, *_ = constraint._kbi(mx, solimp, solref, pos) + self.assertEqual(k, 1 / (0.99**2 * timeconst**2)) + + m.opt.disableflags = m.opt.disableflags & ~DisableBit.REFSAFE + mx = mjx.device_put(m) + k, *_ = constraint._kbi(mx, solimp, solref, pos) + self.assertEqual(k, 1 / (0.99**2 * (2 * m.opt.timestep) ** 2)) + + def test_disableconstraint(self): + m = test_util.load_test_file('ant.xml') + d = mujoco.MjData(m) + + m.opt.disableflags = m.opt.disableflags & ~DisableBit.CONSTRAINT + mx, dx = mjx.device_put(m), mjx.device_put(d) + dx = constraint.make_constraint(mx, dx) + self.assertGreater(dx.efc_J.shape[0], 1) + + m.opt.disableflags = m.opt.disableflags | DisableBit.CONSTRAINT + mx = mjx.device_put(m) + dx = constraint.make_constraint(mx, dx) + self.assertEqual(dx.efc_J.shape[0], 0) + + def test_disable_equality(self): + m = test_util.load_test_file('weld.xml') + d = mujoco.MjData(m) + + m.opt.disableflags = m.opt.disableflags | DisableBit.EQUALITY + mx, dx = mjx.device_put(m), mjx.device_put(d) + dx = constraint.make_constraint(mx, dx) + self.assertEqual(dx.efc_J.shape[0], 0) + + def test_disable_contact(self): + m = test_util.load_test_file('ant.xml') + d = mujoco.MjData(m) + d.qpos[2] = 0.0 + mujoco.mj_forward(m, d) + + m.opt.disableflags = m.opt.disableflags & ~DisableBit.CONTACT + mx, dx = mjx.device_put(m), mjx.device_put(d) + dx = dx.tree_replace( + {'contact.frame': dx.contact.frame.reshape((-1, 3, 3))} + ) + efc = constraint._instantiate_contact(mx, dx) + self.assertIsNotNone(efc) + + m.opt.disableflags = m.opt.disableflags | DisableBit.CONTACT + mx, dx = mjx.device_put(m), mjx.device_put(d) + efc = constraint._instantiate_contact(mx, dx) + self.assertEqual(efc.J.shape[0], 0) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/dataclasses.py b/mjx/mujoco/mjx/_src/dataclasses.py new file mode 100644 index 00000000..0936bec6 --- /dev/null +++ b/mjx/mujoco/mjx/_src/dataclasses.py @@ -0,0 +1,151 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Wrapper that automatically registers dataclass as a Jax PyTree.""" + +import copy +import dataclasses + +import typing +from typing import Dict, Optional, Sequence, TypeVar +import jax +import numpy as np + +_T = TypeVar('_T') + + +def dataclass(clz: _T) -> _T: + """Wraps a dataclass with metadata for which fields are pytrees. + + This is based off flax.struct.dataclass, but instead of using field + descriptors to specify which fields are pytrees, we follow a simple rule: + a leaf field is a pytree node if and only if it's a jax.Array + + Args: + clz: the class to register as a dataclass + + Returns: + the resulting dataclass, registered with Jax + """ + data_clz = dataclasses.dataclass(frozen=True)(clz) + meta_fields, data_fields = [], [] + for field in dataclasses.fields(data_clz): + if any(( + field.type is jax.Array, + dataclasses.is_dataclass(field.type), + jax.Array in typing.get_args(field.type), + )): + data_fields.append(field) + else: + meta_fields.append(field) + + def replace(self, **updates): + """"Returns a new object replacing the specified fields with new values.""" + return dataclasses.replace(self, **updates) + + data_clz.replace = replace + + def iterate_clz_with_keys(x): + # numpy arrays are not hashable, so convert them to tuples for jit cache + to_tup = lambda x: tuple(x) if len(x.shape) == 1 else tuple(map(to_tup, x)) + + def to_meta(field, obj): + val = getattr(obj, field.name) + return to_tup(val) if isinstance(val, np.ndarray) else val + + def to_data(field, obj): + return (jax.tree_util.GetAttrKey(field.name), getattr(obj, field.name)) + + data = tuple(to_data(f, x) for f in data_fields) + meta = tuple(to_meta(f, x) for f in meta_fields) + return data, meta + + def clz_from_iterable(meta, data): + + def from_meta(field, meta): + if field.type is np.ndarray: + return (field.name, np.array(meta)) + else: + return (field.name, meta) + + from_data = lambda field, meta: (field.name, meta) + + meta_args = tuple(from_meta(f, m) for f, m in zip(meta_fields, meta)) + data_args = tuple(from_data(f, m) for f, m in zip(data_fields, data)) + + return data_clz(**dict(meta_args + data_args)) + + jax.tree_util.register_pytree_with_keys( + data_clz, iterate_clz_with_keys, clz_from_iterable + ) + + return data_clz + + +TNode = TypeVar('TNode', bound='PyTreeNode') + + +class PyTreeNode: + """Base class for dataclasses that should act like a JAX pytree node. + + This base class additionally avoids type checking errors when using PyType. + """ + + def __init_subclass__(cls): + dataclass(cls) + + def __init__(self, *args, **kwargs): + # stub for pytype + raise NotImplementedError + + def replace(self: TNode, **overrides) -> TNode: + # stub for pytype + raise NotImplementedError + + def tree_replace( + self, params: Dict[str, Optional[jax.typing.ArrayLike]] + ) -> 'PyTreeNode': + new = self + for k, v in params.items(): + new = _tree_replace(new, k.split('.'), v) + return new + + +def _tree_replace( + base: PyTreeNode, + attr: Sequence[str], + val: Optional[jax.typing.ArrayLike], +) -> PyTreeNode: + """Sets attributes in a struct.dataclass with values.""" + if not attr: + return base + + # special case for List attribute + if len(attr) > 1 and isinstance(getattr(base, attr[0]), list): + lst = copy.deepcopy(getattr(base, attr[0])) + + for i, g in enumerate(lst): + if not hasattr(g, attr[1]): + continue + v = val if not hasattr(val, '__iter__') else val[i] + lst[i] = _tree_replace(g, attr[1:], v) + + return base.replace(**{attr[0]: lst}) + + if len(attr) == 1: + return base.replace(**{attr[0]: val}) + + return base.replace( + **{attr[0]: _tree_replace(getattr(base, attr[0]), attr[1:], val)} + ) diff --git a/mjx/mujoco/mjx/_src/device.py b/mjx/mujoco/mjx/_src/device.py new file mode 100644 index 00000000..3c3c213f --- /dev/null +++ b/mjx/mujoco/mjx/_src/device.py @@ -0,0 +1,282 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Get and put mujoco data on/off device.""" + +import copy +import dataclasses +from typing import Any, Dict, Iterable, List, Union, overload +import warnings + +import jax +from jax import numpy as jp +import mujoco +from mujoco.mjx._src import collision_driver +from mujoco.mjx._src import mesh +from mujoco.mjx._src import types + +_MJ_TYPE_ATTR = { + mujoco.mjtBias: (mujoco.MjModel.actuator_biastype,), + mujoco.mjtDyn: (mujoco.MjModel.actuator_dyntype,), + mujoco.mjtEq: (mujoco.MjModel.eq_type,), + mujoco.mjtGain: (mujoco.MjModel.actuator_gaintype,), + mujoco.mjtTrn: (mujoco.MjModel.actuator_trntype,), + mujoco.mjtCone: ( + mujoco.MjModel.opt, + mujoco.MjOption.cone, + ), + mujoco.mjtIntegrator: ( + mujoco.MjModel.opt, + mujoco.MjOption.integrator, + ), +} + +_TYPE_MAP = { + mujoco._structs._MjContactList: types.Contact, # pylint: disable=protected-access + mujoco.MjData: types.Data, + mujoco.MjModel: types.Model, + mujoco.MjOption: types.Option, + mujoco.MjStatistic: types.Statistic, + mujoco.mjtBias: types.BiasType, + mujoco.mjtCone: types.ConeType, + mujoco.mjtDisableBit: types.DisableBit, + mujoco.mjtDyn: types.DynType, + mujoco.mjtEq: types.EqType, + mujoco.mjtGain: types.GainType, + mujoco.mjtIntegrator: types.IntegratorType, + mujoco.mjtSolver: types.SolverType, + mujoco.mjtTrn: types.TrnType, +} + +_TRANSFORMS = { + (types.Data, 'ximat'): lambda x: x.reshape(x.shape[:-1] + (3, 3)), + (types.Data, 'xmat'): lambda x: x.reshape(x.shape[:-1] + (3, 3)), + (types.Data, 'geom_xmat'): lambda x: x.reshape(x.shape[:-1] + (3, 3)), + (types.Model, 'actuator_trnid'): lambda x: x[:, 0], + (types.Contact, 'frame'): ( + lambda x: x.reshape(x.shape[:-1] + (3, 3)) # pylint: disable=g-long-lambda + if x is not None and x.shape[0] else jp.zeros((0, 3, 3)) + ), +} + +_INVERSE_TRANSFORMS = { + (types.Data, 'ximat'): lambda x: x.reshape(x.shape[:-2] + (9,)), + (types.Data, 'xmat'): lambda x: x.reshape(x.shape[:-2] + (9,)), + (types.Data, 'geom_xmat'): lambda x: x.reshape(x.shape[:-2] + (9,)), + (types.Contact, 'frame'): ( + lambda x: x.reshape(x.shape[:-2] + (9,)) # pylint: disable=g-long-lambda + if x is not None and x.shape[0] else jp.zeros((0, 9)) + ), +} + +_DERIVED = mesh.DERIVED.union( + # efc_J is dense in MJX, sparse in MJ. ignore for now. + {(types.Data, 'efc_J'), (types.Option, 'has_fluid_params')} +) + + +def _model_derived(value: mujoco.MjModel) -> Dict[str, Any]: + return {k: jax.device_put(v) for k, v in mesh.get(value).items()} + + +def _data_derived(value: mujoco.MjData) -> Dict[str, Any]: + return {'efc_J': jax.device_put(value.efc_J)} + + +def _option_derived(value: types.Option) -> Dict[str, Any]: + has_fluid = ( + value.density > 0 or value.viscosity > 0 or (value.wind != 0.0).any() + ) + return {'has_fluid_params': has_fluid} + + +def _validate(m: mujoco.MjModel): + """Validates that an mjModel is compatible with MJX.""" + if m.opt.solver not in set(types.SolverType): + name = mujoco.mjtSolver(m.opt.solver).name + warnings.warn(f'Solver {name} is not supported, reverting to CG.') + m.opt.solver = mujoco.mjtSolver.mjSOL_CG.value + + # check enum types + for mj_type, attrs in _MJ_TYPE_ATTR.items(): + val = m + for attr in attrs: + val = attr.fget(val) # pytype: disable=attribute-error + + typs = set(val) if isinstance(val, Iterable) else {val} + unsupported_typs = typs - set(_TYPE_MAP[mj_type]) + if unsupported_typs: + raise NotImplementedError(f'{unsupported_typs} not implemented.') + + # check condim + if any(dim != 3 for dim in m.geom_condim) or any( + dim != 3 for dim in m.pair_dim + ): + raise NotImplementedError('Only condim=3 is supported.') + + # check collision geom types + candidate_set = collision_driver.collision_candidates(m) + for g1, g2, *_ in candidate_set: + g1, g2 = mujoco.mjtGeom(g1), mujoco.mjtGeom(g2) + if g1 == mujoco.mjtGeom.mjGEOM_PLANE and g2 in ( + mujoco.mjtGeom.mjGEOM_PLANE, + mujoco.mjtGeom.mjGEOM_HFIELD, + ): + # MuJoCo does not collide planes with other planes or hfields + continue + if collision_driver.get_collision_fn((g1, g2)) is None: + raise NotImplementedError(f'({g1}, {g2}) collisions not implemented.') + + # TODO(erikfrey): warn for high solver iterations, nefc, etc. + + # mjNDISABLE is not a DisableBit flag, so must be explicitly ignored + disablebit_members = set(mujoco.mjtDisableBit.__members__.values()) - { + mujoco.mjtDisableBit.mjNDISABLE} + unsupported_disable = disablebit_members - { + mujoco.mjtDisableBit(t.value) for t in types.DisableBit + } + for f in unsupported_disable: + if f & m.opt.disableflags: + warnings.warn(f'Ignoring disable flag {f.name}.') + + # mjNENABLE is not an EnableBit flag, so must be explicitly ignored + unsupported_enable = set(mujoco.mjtEnableBit.__members__.values()) - { + mujoco.mjtEnableBit.mjNENABLE + } + for f in unsupported_enable: + if f & m.opt.enableflags: + warnings.warn(f'Ignoring enable flag {f.name}.') + + +@overload +def device_put(value: mujoco.MjData) -> types.Data: + ... + + +@overload +def device_put(value: mujoco.MjModel) -> types.Model: + ... + + +def device_put(value): + """Places mujoco data onto a device. + + Args: + value: a mujoco struct to transfer + + Returns: + on-device MJX struct reflecting the input value + """ + clz = _TYPE_MAP.get(type(value)) + if clz is None: + raise NotImplementedError(f'{type(value)} is not supported for device_put.') + + if isinstance(value, mujoco.MjModel): + _validate(value) # type: ignore + + init_kwargs = {} + for f in dataclasses.fields(clz): # type: ignore + if (clz, f.name) in _DERIVED: + continue + + field_value = getattr(value, f.name) + if (clz, f.name) in _TRANSFORMS: + field_value = _TRANSFORMS[(clz, f.name)](field_value) + + if f.type is jax.Array: + field_value = jax.device_put(field_value) + elif type(field_value) in _TYPE_MAP.keys(): + field_value = device_put(field_value) + + init_kwargs[f.name] = copy.copy(field_value) + + derived_kwargs = {} + if isinstance(value, mujoco.MjModel): + derived_kwargs = _model_derived(value) + elif isinstance(value, mujoco.MjData): + derived_kwargs = _data_derived(value) + elif isinstance(value, mujoco.MjOption): + derived_kwargs = _option_derived(value) + + return clz(**init_kwargs, **derived_kwargs) # type: ignore + + +@overload +def device_get_into( + result: Union[mujoco.MjData, List[mujoco.MjData]], value: types.Data +): + ... + + +def device_get_into(result, value): + """Transfers data off device into a mujoco MjData. + + Data on device often has a batch dimension which adds (N,) to the beginning + of each array shape where N = batch size. + + If result is a single MjData, arrays are copied over with the batch dimension + intact. If result is a list, the list must be length N and will be populated + with distinct MjData structs where the batch dimension is stripped. + + Args: + result: struct (or list of structs) to transfer into + value: device value to transfer + + Raises: + RuntimeError: if result length doesn't match data batch size + """ + + value = jax.device_get(value) + + if isinstance(result, list): + array_shapes = [s.shape for s in jax.tree_util.tree_flatten(value)[0]] + + if any(len(s) < 1 or s[0] != array_shapes[0][0] for s in array_shapes): + raise ValueError('unrecognizable batch dimension in value') + + batch_size = array_shapes[0][0] + + if len(result) != batch_size: + raise ValueError( + f"result length ({len(result)}) doesn't match value batch size" + f' ({batch_size})' + ) + + for i in range(batch_size): + value_i = jax.tree_map(lambda x, i=i: x[i], value) + device_get_into(result[i], value_i) + + else: + if isinstance(result, mujoco.MjData): + mujoco._functions._realloc_con_efc( # pylint: disable=protected-access + result, ncon=value.ncon, nefc=value.nefc + ) + + for f in dataclasses.fields(value): # type: ignore + if (type(value), f.name) in _DERIVED: + continue + + field_value = getattr(value, f.name) + + if (type(value), f.name) in _INVERSE_TRANSFORMS: + field_value = _INVERSE_TRANSFORMS[(type(value), f.name)](field_value) + + if type(field_value) in _TYPE_MAP.values(): + device_get_into(getattr(result, f.name), field_value) + continue + + try: + setattr(result, f.name, field_value) + except AttributeError: + getattr(result, f.name)[:] = field_value diff --git a/mjx/mujoco/mjx/_src/device_test.py b/mjx/mujoco/mjx/_src/device_test.py new file mode 100644 index 00000000..bdc4e2d4 --- /dev/null +++ b/mjx/mujoco/mjx/_src/device_test.py @@ -0,0 +1,184 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for moving mujoco structs on and off device.""" + +import dataclasses + +from absl.testing import absltest +from absl.testing import parameterized +import jax +from jax import numpy as jp +import mujoco +from mujoco import mjx +from mujoco.mjx._src import device +from mujoco.mjx._src import test_util +from mujoco.mjx._src import types +# pylint: disable=g-importing-member +from mujoco.mjx._src.dataclasses import PyTreeNode +# pylint: enable=g-importing-member +import numpy as np + + +def _assert_eq(testcase, a, b, attr=None, name=None): + if (type(a), attr) in device._DERIVED: + return + + if attr: + a, b = getattr(a, attr), getattr(b, attr) + + if isinstance(a, PyTreeNode): + for field in dataclasses.fields(a): + _assert_eq(testcase, a, b, field.name, type(a).__name__) + return + + typ = {'Model': types.Model, 'Data': types.Data, + 'Contact': types.Contact}.get(name) + if (typ, attr) in device._TRANSFORMS: + b = device._TRANSFORMS[(typ, attr)](b) + + err_msg = f'mismatch: {attr} in {name}' + if not hasattr(b, 'shape') or not b.shape: + testcase.assertEqual(a, b, err_msg) + return + + a, b = np.array(a), np.array(b) + np.testing.assert_allclose(a, b, err_msg=err_msg, atol=1e-8) + + +class DeviceTest(parameterized.TestCase): + + @parameterized.parameters(test_util.TEST_FILES) + def testdevice_put(self, fname): + """Test putting MjData and MjModel on device.""" + m = test_util.load_test_file(fname) + # advance state to ensure non-zero fields + d = mujoco.MjData(m) + for _ in range(10): + mujoco.mj_step(m, d) + + _assert_eq(self, mjx.device_put(d), d) + _assert_eq(self, mjx.device_put(m), m) + + @parameterized.parameters(test_util.TEST_FILES) + def testdevice_get(self, fname): + """Test getting MjData from a device.""" + m = test_util.load_test_file(fname) + mx = device.device_put(m) + dx = mjx.make_data(mx) + d = mujoco.MjData(m) + device.device_get_into(d, dx) + _assert_eq(self, dx, d) + + @parameterized.parameters(set(test_util.TEST_FILES) - {'convex.xml'}) + def testdevice_get_batched(self, fname): + """Test getting MjData from a device.""" + m = test_util.load_test_file(fname) + mx = device.device_put(m) + batch_size = 32 + + # create mjx_data and batch it + dx = mjx.make_data(mx) + dx = jax.tree_map( + lambda x: jp.repeat(x, batch_size).reshape((batch_size,) + x.shape), + dx, + ) + ds = [mujoco.MjData(m) for _ in range(batch_size - 1)] + + with self.assertRaises(ValueError): + device.device_get_into(ds, dx) + + ds = [mujoco.MjData(m) for _ in range(batch_size)] + device.device_get_into(ds, dx) + dx = jax.device_get(dx) # faster indexing for testing + for i in range(batch_size): + _assert_eq(self, jax.tree_map(lambda x, i=i: x[i], dx), ds[i]) + + +class ValidateInputTest(absltest.TestCase): + + def test_solver(self): + m = mujoco.MjModel.from_xml_string( + '' + ) + with self.assertWarns(UserWarning): + mx = mjx.device_put(m) + self.assertEqual(mx.opt.solver, mujoco.mjtSolver.mjSOL_CG) + + def test_integrator(self): + m = mujoco.MjModel.from_xml_string( + '' + ) + with self.assertRaises(NotImplementedError): + _ = mjx.device_put(m) + + def test_cone(self): + m = mujoco.MjModel.from_xml_string( + '' + ) + with self.assertRaises(NotImplementedError): + _ = mjx.device_put(m) + + def test_trn(self): + m = test_util.load_test_file('ant.xml') + m.actuator_trntype[0] = mujoco.mjtTrn.mjTRN_SITE + with self.assertRaises(NotImplementedError): + _ = mjx.device_put(m) + + def test_dyn(self): + m = test_util.load_test_file('ant.xml') + m.actuator_dyntype[0] = mujoco.mjtDyn.mjDYN_MUSCLE + with self.assertRaises(NotImplementedError): + _ = mjx.device_put(m) + + def test_gain(self): + m = test_util.load_test_file('ant.xml') + m.actuator_gaintype[0] = mujoco.mjtGain.mjGAIN_MUSCLE + with self.assertRaises(NotImplementedError): + _ = mjx.device_put(m) + + def test_bias(self): + m = test_util.load_test_file('ant.xml') + m.actuator_gaintype[0] = mujoco.mjtGain.mjGAIN_MUSCLE + with self.assertRaises(NotImplementedError): + _ = mjx.device_put(m) + + def test_condim(self): + m = test_util.load_test_file('ant.xml') + for i in [1, 4, 6]: + m.geom_condim[0] = i + with self.assertRaises(NotImplementedError): + _ = mjx.device_put(m) + + def test_geoms(self): + m = mujoco.MjModel.from_xml_string(""" + + + + + + + + + + + + + """) + with self.assertRaises(NotImplementedError): + _ = mjx.device_put(m) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/forward.py b/mjx/mujoco/mjx/_src/forward.py new file mode 100644 index 00000000..42faeca2 --- /dev/null +++ b/mjx/mujoco/mjx/_src/forward.py @@ -0,0 +1,356 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Forward step functions.""" + +import functools +from typing import Optional, Sequence + +import jax +from jax import numpy as jp +import mujoco +from mujoco.mjx._src import collision_driver +from mujoco.mjx._src import constraint +from mujoco.mjx._src import math +from mujoco.mjx._src import passive +from mujoco.mjx._src import scan +from mujoco.mjx._src import smooth +from mujoco.mjx._src import solver +from mujoco.mjx._src import support +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import BiasType +from mujoco.mjx._src.types import Data +from mujoco.mjx._src.types import DisableBit +from mujoco.mjx._src.types import DynType +from mujoco.mjx._src.types import GainType +from mujoco.mjx._src.types import IntegratorType +from mujoco.mjx._src.types import JointType +from mujoco.mjx._src.types import Model +from mujoco.mjx._src.types import SolverType +# pylint: enable=g-importing-member +import numpy as np + +# RK4 tableau +_RK4_A = np.array([ + [0.5, 0.0, 0.0], + [0.0, 0.5, 0.0], + [0.0, 0.0, 1.0], +]) +_RK4_B = np.array([1.0 / 6.0, 1.0 / 3.0, 1.0 / 3.0, 1.0 / 6.0]) + + +def named_scope(fn, name: str = ''): + @functools.wraps(fn) + def wrapper(*args, **kwargs): + with jax.named_scope(name or getattr(fn, '__name__')): + res = fn(*args, **kwargs) + return res + + return wrapper + + +@named_scope +def _position(m: Model, d: Data) -> Data: + """Position-dependent computations.""" + # TODO(robotics-simulation): tendon + d = smooth.kinematics(m, d) + d = smooth.com_pos(m, d) + d = smooth.crb(m, d) + d = smooth.factor_m(m, d, d.qM) + d = collision_driver.collision(m, d) + d = constraint.make_constraint(m, d) + d = smooth.transmission(m, d) + return d + + +@named_scope +def _velocity(m: Model, d: Data) -> Data: + """Velocity-dependent computations.""" + d = d.replace(actuator_velocity=d.actuator_moment @ d.qvel) + d = smooth.com_vel(m, d) + d = passive.passive(m, d) + d = smooth.rne(m, d) + return d + + +@named_scope +def _actuation(m: Model, d: Data) -> Data: + """Actuation-dependent computations.""" + if not m.nu or m.opt.disableflags & DisableBit.ACTUATION: + return d.replace( + act_dot=jp.zeros((m.na,)), + qfrc_actuator=jp.zeros((m.nv,)), + ) + + ctrl = d.ctrl + if not m.opt.disableflags & DisableBit.CLAMPCTRL: + ctrlrange = jp.where( + m.actuator_ctrllimited[:, None], + m.actuator_ctrlrange, + jp.array([-jp.inf, jp.inf]), + ) + ctrl = jp.clip(ctrl, ctrlrange[:, 0], ctrlrange[:, 1]) + + # act_dot for stateful actuators + def get_act_dot(dyn_typ, dyn_prm, ctrl, act): + if dyn_typ == DynType.NONE: + act_dot = jp.array(0.0) + elif dyn_typ == DynType.INTEGRATOR: + act_dot = ctrl + elif dyn_typ == DynType.FILTER: + act_dot = (ctrl - act) / jp.clip(dyn_prm[0], mujoco.mjMINVAL) + else: + raise NotImplementedError(f'dyntype {dyn_typ.name} not implemented.') + return act_dot + + act_dot = jp.zeros((m.na,)) + if m.na: + act_dot = scan.flat( + m, + get_act_dot, + 'uuua', + 'a', + m.actuator_dyntype, + m.actuator_dynprm, + ctrl, + d.act, + group_by='u', + ) + + ctrl_act = ctrl + if m.na: + act_last_dim = d.act[m.actuator_actadr + m.actuator_actnum - 1] + ctrl_act = jp.where(m.actuator_actadr == -1, ctrl, act_last_dim) + + def get_force(*args): + gain_t, gain_p, bias_t, bias_p, len_, vel, ctrl_act = args + + typ, prm = GainType(gain_t), gain_p + if typ == GainType.FIXED: + gain = prm[0] + elif typ == GainType.AFFINE: + gain = prm[0] + prm[1] * len_ + prm[2] * vel + else: + raise RuntimeError(f'unrecognized gaintype {typ.name}.') + + typ, prm = BiasType(bias_t), bias_p + bias = jp.array(0.0) + if typ == BiasType.AFFINE: + bias = prm[0] + prm[1] * len_ + prm[2] * vel + + return gain * ctrl_act + bias + + force = scan.flat( + m, + get_force, + 'uuuuuuu', + 'u', + m.actuator_gaintype, + m.actuator_gainprm, + m.actuator_biastype, + m.actuator_biasprm, + d.actuator_length, + d.actuator_velocity, + ctrl_act, + group_by='u', + ) + forcerange = jp.where( + m.actuator_forcelimited[:, None], + m.actuator_forcerange, + jp.array([-jp.inf, jp.inf]), + ) + force = jp.clip(force, forcerange[:, 0], forcerange[:, 1]) + + qfrc_actuator = d.actuator_moment.T @ force + + # clamp qfrc_actuator + actfrcrange = jp.where( + m.jnt_actfrclimited[:, None], + m.jnt_actfrcrange, + jp.array([-jp.inf, jp.inf]), + ) + ids = sum( + ([i] * JointType(j).dof_width() for i, j in enumerate(m.jnt_type)), [] + ) + actfrcrange = jp.take(actfrcrange, jp.array(ids), axis=0) + qfrc_actuator = jp.clip(qfrc_actuator, actfrcrange[:, 0], actfrcrange[:, 1]) + + d = d.replace(act_dot=act_dot, qfrc_actuator=qfrc_actuator) + return d + + +@named_scope +def _acceleration(m: Model, d: Data) -> Data: + """Add up all non-constraint forces, compute qacc_smooth.""" + qfrc_applied = d.qfrc_applied + support.xfrc_accumulate(m, d) + qfrc_smooth = d.qfrc_passive - d.qfrc_bias + d.qfrc_actuator + qfrc_applied + qacc_smooth = smooth.solve_m(m, d, qfrc_smooth) + d = d.replace(qfrc_smooth=qfrc_smooth, qacc_smooth=qacc_smooth) + return d + + +@named_scope +def _integrate_pos( + jnt_typs: Sequence[str], qpos: jax.Array, qvel: jax.Array, dt: jax.Array +) -> jax.Array: + """Integrate position given velocity.""" + qs, qi, vi = [], 0, 0 + + for jnt_typ in jnt_typs: + if jnt_typ == JointType.FREE: + pos = qpos[qi : qi + 3] + dt * qvel[vi : vi + 3] + quat = math.quat_integrate( + qpos[qi + 3 : qi + 7], qvel[vi + 3 : vi + 6], dt + ) + qs.append(jp.concatenate([pos, quat])) + qi, vi = qi + 7, vi + 6 + elif jnt_typ == JointType.BALL: + quat = math.quat_integrate(qpos[qi : qi + 4], qvel[vi : vi + 3], dt) + qs.append(quat) + qi, vi = qi + 4, vi + 3 + elif jnt_typ in (JointType.HINGE, JointType.SLIDE): + pos = qpos[qi] + dt * qvel[vi] + qs.append(pos[None]) + qi, vi = qi + 1, vi + 1 + else: + raise RuntimeError(f'unrecognized joint type: {jnt_typ}') + + return jp.concatenate(qs) if qs else jp.empty((0,)) + + +@named_scope +def _advance( + m: Model, + d: Data, + act_dot: jax.Array, + qacc: jax.Array, + qvel: Optional[jax.Array] = None, +) -> Data: + """Advance state and time given activation derivatives and acceleration.""" + act = d.act + if m.na: + act = d.act + act_dot * m.opt.timestep + actrange = jp.where( + m.actuator_actlimited[:, None], + m.actuator_actrange, + jp.array([-jp.inf, jp.inf]), + ) + fn = lambda act, actrange: jp.clip(act, actrange[0], actrange[1]) + act = scan.flat(m, fn, 'au', 'a', act, actrange, group_by='u') + + # advance velocities + d = d.replace(qvel=d.qvel + qacc * m.opt.timestep) + + # advance positions with qvel if given, d.qvel otherwise (semi-implicit) + qvel = d.qvel if qvel is None else qvel + integrate_fn = lambda *args: _integrate_pos(*args, dt=m.opt.timestep) + qpos = scan.flat(m, integrate_fn, 'jqv', 'q', m.jnt_type, d.qpos, qvel) + + # advance time + time = d.time + m.opt.timestep + + return d.replace(act=act, qpos=qpos, time=time) + + +@named_scope +def _euler(m: Model, d: Data) -> Data: + """Euler integrator, semi-implicit in velocity.""" + # integrate damping implicitly + qacc = d.qacc + if not m.opt.disableflags & DisableBit.EULERDAMP: + # TODO(robotics-simulation): can this be done with a smaller perf hit + mh = d.qM.at[m.dof_Madr].add(m.opt.timestep * m.dof_damping) + dh = smooth.factor_m(m, d, mh) + qfrc = d.qfrc_smooth + d.qfrc_constraint + qacc = smooth.solve_m(m, dh, qfrc) + return _advance(m, d, d.act_dot, qacc) + + +@named_scope +def _rungekutta4(m: Model, d: Data) -> Data: + """Runge-Kutta explicit order 4 integrator.""" + d_t0 = d + # pylint: disable=invalid-name + A, B = _RK4_A, _RK4_B + C = jp.tril(A).sum(axis=0) # C(i) = sum_j A(i,j) + T = d.time + C * m.opt.timestep + # pylint: enable=invalid-name + + kqvel = d.qvel # intermediate RK solution + # RK solutions sum + qvel, qacc, act_dot = jax.tree_map( + lambda k: B[0] * k, (kqvel, d.qacc, d.act_dot) + ) + integrate_fn = lambda *args: _integrate_pos(*args, dt=m.opt.timestep) + + def f(carry, x): + qvel, qacc, act_dot, kqvel, d = carry + a, b, t = x # tableau numbers + dqvel, dqacc, dact_dot = jax.tree_map( + lambda k: a * k, (kqvel, d.qacc, d.act_dot) + ) + # get intermediate RK solutions + kqpos = scan.flat(m, integrate_fn, 'jqv', 'q', m.jnt_type, d_t0.qpos, dqvel) + kact = d_t0.act + dact_dot * m.opt.timestep + kqvel = d_t0.qvel + dqacc * m.opt.timestep + d = d.replace(qpos=kqpos, qvel=kqvel, act=kact, time=t) + d = forward(m, d) + + qvel += b * kqvel + qacc += b * d.qacc + act_dot += b * d.act_dot + + return (qvel, qacc, act_dot, kqvel, d), None + + abt = jp.vstack([jp.diag(A), B[1:4], T]).T + out, _ = jax.lax.scan(f, (qvel, qacc, act_dot, kqvel, d), abt, unroll=3) + qvel, qacc, act_dot, *_ = out + + d = _advance(m, d_t0, act_dot, qacc, qvel) + return d + + +@named_scope +def forward(m: Model, d: Data) -> Data: + """Forward dynamics.""" + d = _position(m, d) + d = _velocity(m, d) + d = _actuation(m, d) + d = _acceleration(m, d) + + if d.efc_J.size == 0: + d = d.replace(qacc=d.qacc_smooth) + return d + + if m.opt.solver == SolverType.CG: + d = named_scope(solver.cg_solve)(m, d) + else: + raise NotImplementedError(f'solver {m.opt.solver} not implemented.') + + return d + + +@named_scope +def step(m: Model, d: Data) -> Data: + """Advance simulation.""" + d = forward(m, d) + + if m.opt.integrator == IntegratorType.EULER: + d = _euler(m, d) + elif m.opt.integrator == IntegratorType.RK4: + d = _rungekutta4(m, d) + else: + raise NotImplementedError(f'integrator {m.opt.integrator} not implemented.') + + return d diff --git a/mjx/mujoco/mjx/_src/forward_test.py b/mjx/mujoco/mjx/_src/forward_test.py new file mode 100644 index 00000000..0857db2f --- /dev/null +++ b/mjx/mujoco/mjx/_src/forward_test.py @@ -0,0 +1,125 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for forward functions.""" + +import itertools + +from absl.testing import absltest +from absl.testing import parameterized +import jax +from jax import numpy as jp +import mujoco +from mujoco import mjx +from mujoco.mjx._src import forward +from mujoco.mjx._src import test_util +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import DisableBit +# pylint: enable=g-importing-member +import numpy as np + + +def _assert_attr_eq(a, b, attr, step, fname, atol=1e-3, rtol=1e-3): + err_msg = f'mismatch: {attr} at step {step} in {fname}' + a, b = getattr(a, attr), getattr(b, attr) + np.testing.assert_allclose(a, b, err_msg=err_msg, atol=atol, rtol=rtol) + + +class ForwardTest(parameterized.TestCase): + + @parameterized.parameters(enumerate(test_util.TEST_FILES)) + def test_forward(self, seed, fname): + """Test mujoco mj forward function matches mujoco_mjx forward function.""" + if fname in ('weld.xml',): + return + + np.random.seed(seed) + + m = test_util.load_test_file(fname) + d = mujoco.MjData(m) + mx = mjx.device_put(m) + dx = mjx.make_data(mx) + forward_jit_fn = jax.jit(mjx.forward) + + # give the system a little kick to ensure we have non-identity rotations + d.qvel = np.random.random(m.nv) * 0.05 + for i in range(100): + qpos, qvel = d.qpos.copy(), d.qvel.copy() + mujoco.mj_step(m, d) + dx = forward_jit_fn(mx, dx.replace(qpos=qpos, qvel=qvel)) + + _assert_attr_eq(d, dx, 'qfrc_smooth', i, fname) + _assert_attr_eq(d, dx, 'qacc_smooth', i, fname) + + @parameterized.parameters(itertools.product(test_util.TEST_FILES, (0, 1))) + def test_step(self, fname, integrator_type): + """Test mujoco mj step matches mujoco_mjx step.""" + if fname in ( + 'mixed_joint_pendulum.xml', + 'ball_pendulum.xml', + 'convex.xml', + 'humanoid.xml', + 'triple_pendulum.xml', # TODO(b/301485081) + 'weld.xml', + ): + # skip models with big constraint violations at step 0 or too slow to run + return + + np.random.seed(integrator_type) + m = test_util.load_test_file(fname) + step_jit_fn = jax.jit(forward.step) + + m.opt.integrator = integrator_type + int_typ = 'euler' if integrator_type == 0 else 'rk4' + test_name = f'{fname} - {int_typ}' + steps = 100 if int_typ == 'euler' else 30 + dt = m.opt.timestep + m.opt.timestep = dt if int_typ == 'euler' else dt * 3 + + mx = mjx.device_put(m) + d = mujoco.MjData(m) + # give the system a little kick to ensure we have non-identity rotations + d.qvel = np.random.normal(m.nv) * 0.05 + for i in range(steps): + # in order to avoid re-jitting, reuse the same mj_data shape + qpos, qvel = d.qpos, d.qvel + d = mujoco.MjData(m) + d.qpos, d.qvel = qpos, qvel + dx = mjx.device_put(d) + + mujoco.mj_step(m, d) + dx = step_jit_fn(mx, dx) + + _assert_attr_eq(d, dx, 'qpos', i, test_name, atol=1e-2) + _assert_attr_eq(d, dx, 'qvel', i, test_name, atol=1e-2) + _assert_attr_eq(d, dx, 'act', i, test_name) + _assert_attr_eq(d, dx, 'time', i, test_name) + + def test_disable_eulerdamp(self): + m = test_util.load_test_file('ant.xml') + m.opt.disableflags = m.opt.disableflags | DisableBit.EULERDAMP + + d = mujoco.MjData(m) + mx = mjx.device_put(m) + self.assertTrue((mx.dof_damping > 0).any()) + dx = mjx.device_put(d) + dx = jax.jit(forward.forward)(mx, dx) + + dx = dx.replace(qvel=jp.ones_like(dx.qvel), qacc=jp.ones_like(dx.qacc)) + dx = jax.jit(forward._euler)(mx, dx) + np.testing.assert_allclose(dx.qvel, 1 + m.opt.timestep) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/io.py b/mjx/mujoco/mjx/_src/io.py new file mode 100644 index 00000000..67e50a7e --- /dev/null +++ b/mjx/mujoco/mjx/_src/io.py @@ -0,0 +1,105 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Functions to initialize, load, or save data.""" + +from jax import numpy as jp +from mujoco.mjx._src import collision_driver +from mujoco.mjx._src import constraint +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import Contact +from mujoco.mjx._src.types import Data +from mujoco.mjx._src.types import Model +# pylint: enable=g-importing-member +import numpy as np + + +def make_data(m: Model) -> Data: + """Allocate and initialize Data.""" + + # create first d to get num contacts and nc + d = Data( + solver_niter=jp.array(0, dtype=jp.int32), + ne=0, + nf=0, + nl=0, + nefc=0, + ncon=0, + time=jp.zeros((), dtype=jp.float32), + qpos=m.qpos0, + qvel=jp.zeros(m.nv, dtype=jp.float32), + act=jp.zeros(m.na, dtype=jp.float32), + qacc_warmstart=jp.zeros(m.nv, dtype=jp.float32), + ctrl=jp.zeros(m.nu, dtype=jp.float32), + qfrc_applied=jp.zeros(m.nv, dtype=jp.float32), + xfrc_applied=jp.zeros((m.nbody, 6), dtype=jp.float32), + eq_active=jp.zeros(m.neq, dtype=jp.int32), + qacc=jp.zeros(m.nv, dtype=jp.float32), + act_dot=jp.zeros(m.na, dtype=jp.float32), + xpos=jp.zeros((m.nbody, 3), dtype=jp.float32), + xquat=jp.zeros((m.nbody, 4), dtype=jp.float32), + xmat=jp.zeros((m.nbody, 3, 3), dtype=jp.float32), + xipos=jp.zeros((m.nbody, 3), dtype=jp.float32), + ximat=jp.zeros((m.nbody, 3, 3), dtype=jp.float32), + xanchor=jp.zeros((m.njnt, 3), dtype=jp.float32), + xaxis=jp.zeros((m.njnt, 3), dtype=jp.float32), + geom_xpos=jp.zeros((m.ngeom, 3), dtype=jp.float32), + geom_xmat=jp.zeros((m.ngeom, 3, 3), dtype=jp.float32), + subtree_com=jp.zeros((m.nbody, 3), dtype=jp.float32), + cdof=jp.zeros((m.nv, 6), dtype=jp.float32), + cinert=jp.zeros((m.nbody, 10), dtype=jp.float32), + actuator_length=jp.zeros(m.nu, dtype=jp.float32), + actuator_moment=jp.zeros((m.nu, m.nv), dtype=jp.float32), + crb=jp.zeros((m.nbody, 10), dtype=jp.float32), + qM=jp.zeros(m.nM, dtype=jp.float32), + qLD=jp.zeros(m.nM, dtype=jp.float32), + qLDiagInv=jp.zeros(m.nv, dtype=jp.float32), + qLDiagSqrtInv=jp.zeros(m.nv, dtype=jp.float32), + contact=Contact.zero(), + efc_J=jp.zeros((), dtype=jp.float32), + efc_frictionloss=jp.zeros((), dtype=jp.float32), + efc_D=jp.zeros((), dtype=jp.float32), + actuator_velocity=jp.zeros(m.nu, dtype=jp.float32), + cvel=jp.zeros((m.nbody, 6), dtype=jp.float32), + cdof_dot=jp.zeros((m.nv, 6), dtype=jp.float32), + qfrc_bias=jp.zeros(m.nv, dtype=jp.float32), + qfrc_passive=jp.zeros(m.nv, dtype=jp.float32), + efc_aref=jp.zeros((), dtype=jp.float32), + actuator_force=jp.zeros(m.nu, dtype=jp.float32), + qfrc_actuator=jp.zeros(m.nv, dtype=jp.float32), + qfrc_smooth=jp.zeros(m.nv, dtype=jp.float32), + qacc_smooth=jp.zeros(m.nv, dtype=jp.float32), + qfrc_constraint=jp.zeros(m.nv, dtype=jp.float32), + qfrc_inverse=jp.zeros(m.nv, dtype=jp.float32), + efc_force=jp.zeros((), dtype=jp.float32), + ) + + # get contact data with correct shapes + ncon = collision_driver.ncon(m) + d = d.replace(contact=Contact.zero((ncon,)), ncon=ncon) + d = d.tree_replace({'contact.dim': 3 * np.ones(ncon)}) + + ne, nf, nl, nc = constraint.count_constraints(m, d) + d = d.replace(ne=ne, nf=nf, nl=nl, nefc=ne + nf + nl + nc) + ns = ne + nf + nl + d = d.tree_replace({'contact.efc_address': np.arange(ns, ns + ncon * 4, 4)}) + d = d.replace( + efc_J=jp.zeros((d.nefc, m.nv), dtype=jp.float32), + efc_frictionloss=jp.zeros(d.nefc, dtype=jp.float32), + efc_D=jp.zeros(d.nefc, dtype=jp.float32), + efc_aref=jp.zeros(d.nefc, dtype=jp.float32), + efc_force=jp.zeros(d.nefc, dtype=jp.float32), + ) + + return d diff --git a/mjx/mujoco/mjx/_src/io_test.py b/mjx/mujoco/mjx/_src/io_test.py new file mode 100644 index 00000000..269509a8 --- /dev/null +++ b/mjx/mujoco/mjx/_src/io_test.py @@ -0,0 +1,42 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for io functions.""" + +from absl.testing import absltest +from absl.testing import parameterized +import jax +from mujoco import mjx +from mujoco.mjx._src import test_util + + +class IoTest(parameterized.TestCase): + + @parameterized.parameters(test_util.TEST_FILES) + def test_make_data(self, fname): + """Test that data created by make_data matches data returned by step.""" + + m = test_util.load_test_file(fname) + mx = mjx.device_put(m) + dx = mjx.make_data(mx) + dx_step = mjx.step(mx, dx) + + _, dx_treedef = jax.tree_util.tree_flatten(dx) + _, dx_step_treedef = jax.tree_util.tree_flatten(dx_step) + + self.assertEqual(dx_treedef, dx_step_treedef) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/math.py b/mjx/mujoco/mjx/_src/math.py new file mode 100644 index 00000000..e96e6ee0 --- /dev/null +++ b/mjx/mujoco/mjx/_src/math.py @@ -0,0 +1,356 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Some useful math functions.""" + +from typing import Optional, Tuple, Union + +import jax +from jax import numpy as jp + + +def norm( + x: jax.Array, axis: Optional[Union[Tuple[int, ...], int]] = None +) -> jax.Array: + """Calculates a linalg.norm(x) that's safe for gradients at x=0. + + Avoids a poorly defined gradient for jnp.linal.norm(0) see + https://github.com/google/jax/issues/3058 for details + Args: + x: A jnp.array + axis: The axis along which to compute the norm + + Returns: + Norm of the array x. + """ + + is_zero = jp.allclose(x, 0.0) + # temporarily swap x with ones if is_zero, then swap back + x = jp.where(is_zero, jp.ones_like(x), x) + n = jp.linalg.norm(x, axis=axis) + n = jp.where(is_zero, 0.0, n) + return n + + +def normalize_with_norm( + x: jax.Array, axis: Optional[Union[Tuple[int, ...], int]] = None +) -> Tuple[jax.Array, jax.Array]: + """Normalizes an array. + + Args: + x: A jnp.array + axis: The axis along which to compute the norm + + Returns: + A tuple of (normalized array x, the norm). + """ + n = norm(x, axis=axis) + x = x / (n + 1e-6 * (n == 0.0)) + return x, n + + +def normalize( + x: jax.Array, axis: Optional[Union[Tuple[int, ...], int]] = None +) -> jax.Array: + """Normalizes an array. + + Args: + x: A jnp.array + axis: The axis along which to compute the norm + + Returns: + normalized array x + """ + return normalize_with_norm(x, axis=axis)[0] + + +def rotate(vec: jax.Array, quat: jax.Array) -> jax.Array: + """Rotates a vector vec by a unit quaternion quat. + + Args: + vec: (3,) a vector + quat: (4,) a quaternion + + Returns: + ndarray(3) containing vec rotated by quat. + """ + if len(vec.shape) != 1: + raise ValueError('vec must have no batch dimensions.') + s, u = quat[0], quat[1:] + r = 2 * (jp.dot(u, vec) * u) + (s * s - jp.dot(u, u)) * vec + r = r + 2 * s * jp.cross(u, vec) + return r + + +def quat_inv(q: jp.ndarray) -> jp.ndarray: + """Calculates the inverse of quaternion q. + + Args: + q: (4,) quaternion [w, x, y, z] + + Returns: + The inverse of q, where qmult(q, inv_quat(q)) = [1, 0, 0, 0]. + """ + return q * jp.array([1, -1, -1, -1]) + + +def quat_sub(u: jax.Array, v: jax.Array) -> jax.Array: + """Subtracts two quaternions (u - v) as a 3D velocity.""" + q = quat_mul(quat_inv(v), u) + axis, angle = quat_to_axis_angle(q) + return axis * angle + + +def quat_mul(u: jax.Array, v: jax.Array) -> jax.Array: + """Multiplies two quaternions. + + Args: + u: (4,) quaternion (w,x,y,z) + v: (4,) quaternion (w,x,y,z) + + Returns: + A quaternion u * v. + """ + return jp.array([ + u[0] * v[0] - u[1] * v[1] - u[2] * v[2] - u[3] * v[3], + u[0] * v[1] + u[1] * v[0] + u[2] * v[3] - u[3] * v[2], + u[0] * v[2] - u[1] * v[3] + u[2] * v[0] + u[3] * v[1], + u[0] * v[3] + u[1] * v[2] - u[2] * v[1] + u[3] * v[0], + ]) + + +def quat_mul_axis(q: jax.Array, axis: jax.Array) -> jax.Array: + """Multiplies a quaternion and an axis. + + Args: + q: (4,) quaternion (w,x,y,z) + axis: (3,) axis (x,y,z) + + Returns: + A quaternion q * axis + """ + return jp.array([ + -q[1] * axis[0] - q[2] * axis[1] - q[3] * axis[2], + q[0] * axis[0] + q[2] * axis[2] - q[3] * axis[1], + q[0] * axis[1] + q[3] * axis[0] - q[1] * axis[2], + q[0] * axis[2] + q[1] * axis[1] - q[2] * axis[0], + ]) + + +# TODO(erikfrey): benchmark this against brax's quat_to_3x3 +def quat_to_mat(q: jax.Array) -> jax.Array: + """Converts a quaternion into a 9-dimensional rotation matrix.""" + q = jp.outer(q, q) + + return jp.array([ + [ + q[0, 0] + q[1, 1] - q[2, 2] - q[3, 3], + 2 * (q[1, 2] - q[0, 3]), + 2 * (q[1, 3] + q[0, 2]), + ], + [ + 2 * (q[1, 2] + q[0, 3]), + q[0, 0] - q[1, 1] + q[2, 2] - q[3, 3], + 2 * (q[2, 3] - q[0, 1]), + ], + [ + 2 * (q[1, 3] - q[0, 2]), + 2 * (q[2, 3] + q[0, 1]), + q[0, 0] - q[1, 1] - q[2, 2] + q[3, 3], + ], + ]) + + +def quat_to_axis_angle(q: jax.Array) -> Tuple[jax.Array, jax.Array]: + """Converts a quaternion into axis and angle.""" + axis, sin_a_2 = normalize_with_norm(q[1:]) + angle = 2 * jp.arctan2(sin_a_2, q[0]) + angle = jp.where(angle > jp.pi, angle - 2 * jp.pi, angle) + + return axis, angle + + +def axis_angle_to_quat(axis: jax.Array, angle: jax.Array) -> jax.Array: + """Provides a quaternion that describes rotating around axis by angle. + + Args: + axis: (3,) axis (x,y,z) + angle: () float angle to rotate by + + Returns: + A quaternion that rotates around axis by angle + """ + s, c = jp.sin(angle * 0.5), jp.cos(angle * 0.5) + return jp.insert(axis * s, 0, c) + + +def quat_integrate(q: jax.Array, v: jax.Array, dt: jax.Array) -> jax.Array: + """Integrates a quaternion given angular velocity and dt.""" + v, norm_ = normalize_with_norm(v) + angle = dt * norm_ + q_res = axis_angle_to_quat(v, angle) + q_res = quat_mul(q, q_res) + return normalize(q_res) + + +def inert_mul(i: jax.Array, v: jax.Array) -> jax.Array: + """Multiply inertia by motion, producing force. + + Args: + i: (10,) inertia (inertia matrix, position, mass) + v: (6,) spatial motion + + Returns: + resultant force + """ + tri_id = jp.array([[0, 3, 4], [3, 1, 5], [4, 5, 2]]) # cinert inr order + inr, pos, mass = i[tri_id], i[6:9], i[9] + ang = jp.dot(inr, v[:3]) + jp.cross(pos, v[3:]) + vel = mass * v[3:] - jp.cross(pos, v[:3]) + return jp.concatenate((ang, vel)) + + +def transform_motion(vel: jax.Array, offset: jax.Array, rotmat: jax.Array): + """Transform spatial motion. + + Args: + vel: (6,) spatial motion (3 angular, 3 linear) + offset: (3,) translation + rotmat: (3, 3) rotation + + Returns: + 6d spatial velocity + """ + # TODO(robotics-simulation): are quaternions faster here + ang, vel = vel[:3], vel[3:] + vel = rotmat.T @ (vel - jp.cross(offset, ang)) + ang = rotmat.T @ ang + return jp.concatenate([ang, vel]) + + +def motion_cross(u, v): + """Cross product of two motions. + + Args: + u: (6,) spatial motion + v: (6,) spatial motion + + Returns: + resultant spatial motion + """ + ang = jp.cross(u[:3], v[:3]) + vel = jp.cross(u[3:], v[:3]) + jp.cross(u[:3], v[3:]) + return jp.concatenate((ang, vel)) + + +def motion_cross_force(v, f): + """Cross product of a motion and force. + + Args: + v: (6,) spatial motion + f: (6,) force + + Returns: + resultant force + """ + ang = jp.cross(v[:3], f[:3]) + jp.cross(v[3:], f[3:]) + vel = jp.cross(v[:3], f[3:]) + return jp.concatenate((ang, vel)) + + +def orthogonals(a: jax.Array) -> Tuple[jax.Array, jax.Array]: + """Returns orthogonal vectors `b` and `c`, given a vector `a`.""" + y, z = jp.array([0, 1, 0]), jp.array([0, 0, 1]) + b = jp.where((-0.5 < a[1]) & (a[1] < 0.5), y, z) + b = b - a * a.dot(b) + # normalize b. however if a is a zero vector, zero b as well. + b = normalize(b) * jp.any(a) + return b, jp.cross(a, b) + + +def make_frame(a: jax.Array) -> jax.Array: + """Makes a right-handed 3D frame given a direction.""" + a = normalize(a) + b, c = orthogonals(a) + return jp.array([a, b, c]) + + +# Geometry. + + +def closest_segment_point( + a: jax.Array, b: jax.Array, pt: jax.Array +) -> jax.Array: + """Returns the closest point on the a-b line segment to a point pt.""" + ab = b - a + t = jp.dot(pt - a, ab) / (jp.dot(ab, ab) + 1e-6) + return a + jp.clip(t, 0.0, 1.0) * ab + + +def closest_segment_point_and_dist( + a: jax.Array, b: jax.Array, pt: jax.Array +) -> Tuple[jax.Array, jax.Array]: + """Returns closest point on the line segment and the distance squared.""" + closest = closest_segment_point(a, b, pt) + dist = (pt - closest).dot(pt - closest) + return closest, dist + + +def closest_segment_to_segment_points( + a0: jax.Array, a1: jax.Array, b0: jax.Array, b1: jax.Array +) -> Tuple[jax.Array, jax.Array]: + """Returns closest points between two line segments.""" + # Gets the closest segment points by first finding the closest points + # between two lines. Points are then clipped to be on the line segments + # and edge cases with clipping are handled. + dir_a, len_a = normalize_with_norm(a1 - a0) + dir_b, len_b = normalize_with_norm(b1 - b0) + + # Segment mid-points. + half_len_a = len_a * 0.5 + half_len_b = len_b * 0.5 + a_mid = a0 + dir_a * half_len_a + b_mid = b0 + dir_b * half_len_b + + # Translation between two segment mid-points. + trans = a_mid - b_mid + + # Parametrize points on each line as follows: + # point_on_a = a_mid + t_a * dir_a + # point_on_b = b_mid + t_b * dir_b + # and analytically minimize the distance between the two points. + dira_dot_dirb = dir_a.dot(dir_b) + dira_dot_trans = dir_a.dot(trans) + dirb_dot_trans = dir_b.dot(trans) + denom = 1 - dira_dot_dirb * dira_dot_dirb + + orig_t_a = (-dira_dot_trans + dira_dot_dirb * dirb_dot_trans) / (denom + 1e-6) + orig_t_b = dirb_dot_trans + orig_t_a * dira_dot_dirb + t_a = jp.clip(orig_t_a, -half_len_a, half_len_a) + t_b = jp.clip(orig_t_b, -half_len_b, half_len_b) + + best_a = a_mid + dir_a * t_a + best_b = b_mid + dir_b * t_b + + # Resolve edge cases where both closest points are clipped to the segment + # endpoints by recalculating the closest segment points for the current + # clipped points, and then picking the pair of points with smallest + # distance. An example of this edge case is when lines intersect but line + # segments don't. + new_a, d1 = closest_segment_point_and_dist(a0, a1, best_b) + new_b, d2 = closest_segment_point_and_dist(b0, b1, best_a) + best_a = jp.where(d1 < d2, new_a, best_a) + best_b = jp.where(d1 < d2, best_b, new_b) + + return best_a, best_b diff --git a/mjx/mujoco/mjx/_src/math_test.py b/mjx/mujoco/mjx/_src/math_test.py new file mode 100644 index 00000000..c2678321 --- /dev/null +++ b/mjx/mujoco/mjx/_src/math_test.py @@ -0,0 +1,202 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for math.""" + +from absl.testing import absltest +from absl.testing import parameterized +import jax.numpy as jp +from mujoco.mjx._src import math +import numpy as np + + +def _get_rand_point(seed=None): + if seed is not None: + np.random.seed(seed) + verts = np.random.randn(1, 3) + return verts[0, :] + + +def _get_rand_line_segment(seed=None): + if seed is not None: + np.random.seed(seed) + verts = np.random.randn(2, 3) + return verts[0, :], verts[1, :] + + +def _get_rand_unit(seed: int): + np.random.seed(seed) + theta = np.random.random(1) * 2 * np.pi + a = (np.random.random(1) - 0.5) * 2.0 + phi = np.arccos(a) + x = np.sin(phi) * np.cos(theta) + y = np.sin(phi) * np.sin(theta) + z = np.cos(phi) + return jp.array([x, y, z]).squeeze() + + +class OrthoganalsTest(parameterized.TestCase): + """Tests the orthogonals function.""" + + @parameterized.parameters(range(30)) + def test_orthogonals(self, i): + a = _get_rand_unit(i) + b, c = math.orthogonals(a) + np.testing.assert_almost_equal(jp.linalg.norm(a), 1) + np.testing.assert_almost_equal(jp.linalg.norm(b), 1) + np.testing.assert_almost_equal(jp.linalg.norm(c), 1) + self.assertAlmostEqual(np.abs(a.dot(b)), 0, 6) + self.assertAlmostEqual(np.abs(b.dot(c)), 0, 6) + self.assertAlmostEqual(np.abs(a.dot(c)), 0, 6) + + +def _minimize(fn, sample_fn, lb, ub, tol, max_iter=20, seed=42): + """Minimize a function using the cross-entropy method.""" + assert lb.shape == ub.shape, "bounds need to have the same shape" + np.random.seed(seed) + + i, n = 0, 1_000 + mu = (ub + lb) * 0.5 + sigma = (ub - lb) * 0.5 + size = lb.shape[0] + val, prev_val = fn(mu), None + + while prev_val is None or np.abs(val - prev_val) > tol: + params = sample_fn(mu, sigma, n, size, lb, ub) + vals = np.array([fn(p) for p in params]) + if val < vals.min(): # early exit + return mu + idx = vals.argsort() + best_idx = idx[: int(n * 0.05)] + mu = params[best_idx].mean(axis=0) + sigma = params[best_idx].std(axis=0) + 1e-10 + + prev_val = val + val = fn(mu) + + i += 1 + if i == max_iter: + break + + return mu + + +def _closest_segment_to_segment_points(a0, a1, b0, b1): + dir_a = a1 - a0 + len_a = np.sqrt(dir_a.dot(dir_a)) + half_len_a = len_a / 2 + dir_a = dir_a / len_a + + dir_b = b1 - b0 + len_b = np.sqrt(dir_b.dot(dir_b)) + half_len_b = len_b / 2 + dir_b = dir_b / len_b + + a_mid = a0 + dir_a * half_len_a + b_mid = b0 + dir_b * half_len_b + + # Parametrize both line segments. + def fn(t): + best_a = a_mid + dir_a * t[0] + best_b = b_mid + dir_b * t[1] + return (best_a - best_b).dot(best_a - best_b) + + def sample_fn(mu, sigma, n, size, lb, ub): + params = np.random.normal(mu, sigma, size=(n, size)) + params = np.clip(params, lb, ub) + return params + + lb = np.array([-half_len_a, -half_len_b]) + ub = np.array([half_len_a, half_len_b]) + ta, tb = _minimize(fn, sample_fn, lb, ub, tol=1e-4) + best_a = a_mid + dir_a * ta + best_b = b_mid + dir_b * tb + return best_a, best_b + + +class ClosestSegmentSegmentPointsTest(parameterized.TestCase): + """Tests for closest segment-to-segment points.""" + + def test_closest_segments_points(self): + a0 = jp.array([0.73432405, 0.12372768, 0.20272314]) + a1 = jp.array([1.10600128, 0.88555209, 0.65209485]) + b0 = jp.array([0.85599262, 0.61736299, 0.9843583]) + b1 = jp.array([1.84270939, 0.92891793, 1.36343326]) + best_a, best_b = math.closest_segment_to_segment_points(a0, a1, b0, b1) + self.assertSequenceAlmostEqual(best_a, [1.09063, 0.85404, 0.63351], 5) + self.assertSequenceAlmostEqual(best_b, [0.99596, 0.66156, 1.03813], 5) + + def test_intersecting_segments(self): + """Tests segments that intersect.""" + a0, a1 = jp.array([0.0, 0.0, -1.0]), jp.array([0.0, 0.0, 1.0]) + b0, b1 = jp.array([-1.0, 0.0, 0.0]), jp.array([1.0, 0.0, 0.0]) + best_a, best_b = math.closest_segment_to_segment_points(a0, a1, b0, b1) + self.assertSequenceAlmostEqual(best_a, [0.0, 0.0, 0.0], 5) + self.assertSequenceAlmostEqual(best_b, [0.0, 0.0, 0.0], 5) + + def test_intersecting_lines(self): + """Tests that intersecting lines get clipped.""" + a0, a1 = jp.array([0.2, 0.2, 0.0]), jp.array([1.0, 1.0, 0.0]) + b0, b1 = jp.array([0.2, 0.4, 0.0]), jp.array([1.0, 2.0, 0.0]) + best_a, best_b = math.closest_segment_to_segment_points(a0, a1, b0, b1) + self.assertSequenceAlmostEqual(best_a, [0.3, 0.3, 0.0], 2) + self.assertSequenceAlmostEqual(best_b, [0.2, 0.4, 0.0], 2) + + def test_parallel_segments(self): + """Tests that parallel segments have closest points at the midpoint.""" + a0, a1 = jp.array([0.0, 0.0, -1.0]), jp.array([0.0, 0.0, 1.0]) + b0, b1 = jp.array([1.0, 0.0, -1.0]), jp.array([1.0, 0.0, 1.0]) + best_a, best_b = math.closest_segment_to_segment_points(a0, a1, b0, b1) + self.assertSequenceAlmostEqual(best_a, [0.0, 0.0, 0.0], 5) + self.assertSequenceAlmostEqual(best_b, [1.0, 0.0, 0.0], 5) + + def test_parallel_offset_segments(self): + """Tests that offset parallel segments are close at segment endpoints.""" + a0, a1 = jp.array([0.0, 0.0, -1.0]), jp.array([0.0, 0.0, 1.0]) + b0, b1 = jp.array([1.0, 0.0, 1.0]), jp.array([1.0, 0.0, 3.0]) + best_a, best_b = math.closest_segment_to_segment_points(a0, a1, b0, b1) + self.assertSequenceAlmostEqual(best_a, [0.0, 0.0, 1.0], 5) + self.assertSequenceAlmostEqual(best_b, [1.0, 0.0, 1.0], 5) + + def test_zero_length_segments(self): + """Test that zero length segments don't return NaNs.""" + a0, a1 = jp.array([0.0, 0.0, -1.0]), jp.array([0.0, 0.0, -1.0]) + b0, b1 = jp.array([1.0, 0.0, 0.1]), jp.array([1.0, 0.0, 0.1]) + best_a, best_b = math.closest_segment_to_segment_points(a0, a1, b0, b1) + self.assertSequenceAlmostEqual(best_a, [0.0, 0.0, -1.0], 5) + self.assertSequenceAlmostEqual(best_b, [1.0, 0.0, 0.1], 5) + + def test_overlapping_segments(self): + """Tests that perfectly overlapping segments intersect at the midpoints.""" + a0, a1 = jp.array([0.0, 0.0, -1.0]), jp.array([0.0, 0.0, 1.0]) + b0, b1 = jp.array([0.0, 0.0, -1.0]), jp.array([0.0, 0.0, 1.0]) + best_a, best_b = math.closest_segment_to_segment_points(a0, a1, b0, b1) + self.assertSequenceAlmostEqual(best_a, [0.0, 0.0, 0.0], 5) + self.assertSequenceAlmostEqual(best_b, [0.0, 0.0, 0.0], 5) + + params = list(zip(np.repeat(np.arange(10), 10), np.tile(np.arange(10), 10))) + + @parameterized.parameters(*params) + def test_closest_segment_to_segment_points(self, i, j): + a0, a1 = _get_rand_line_segment(i) + b0, b1 = _get_rand_line_segment(j) + expected = _closest_segment_to_segment_points(a0, a1, b0, b1) + ans = math.closest_segment_to_segment_points(a0, a1, b0, b1) + expected_dist = (expected[0] - expected[1]).dot(expected[0] - expected[1]) + test_dist = (ans[0] - ans[1]).dot(ans[0] - ans[1]) + self.assertAlmostEqual(expected_dist, test_dist, 4) + + +if __name__ == "__main__": + absltest.main() diff --git a/mjx/mujoco/mjx/_src/mesh.py b/mjx/mujoco/mjx/_src/mesh.py new file mode 100644 index 00000000..eaa5d3bf --- /dev/null +++ b/mjx/mujoco/mjx/_src/mesh.py @@ -0,0 +1,232 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Mesh processing.""" + +import itertools +from typing import Dict, Optional, Sequence, Tuple + +import mujoco +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import GeomType +from mujoco.mjx._src.types import Model +# pylint: enable=g-importing-member +import numpy as np +from scipy import spatial +import trimesh + + +_BOX_CORNERS = list(itertools.product((-1, 1), (-1, 1), (-1, 1))) +# pyformat: disable +# Rectangular box faces using a counter-clockwise winding order convention. +_BOX_FACES = [ + 0, 4, 5, 1, # left + 0, 2, 6, 4, # bottom + 6, 7, 5, 4, # front + 2, 3, 7, 6, # right + 1, 5, 7, 3, # top + 0, 1, 3, 2, # back +] +# pyformat: enable +_MAX_HULL_FACE_VERTICES = 20 +_CONVEX_CACHE: Dict[Tuple[int, int], Dict[str, np.ndarray]] = {} +_DERIVED_ARGS = [ + 'geom_convex_face', + 'geom_convex_vert', + 'geom_convex_edge', + 'geom_convex_facenormal', +] +DERIVED = {(Model, d) for d in _DERIVED_ARGS} + + +def _box(size: np.ndarray): + """Creates a mesh for a box with rectangular faces.""" + box_corners = np.array(_BOX_CORNERS) + vert = box_corners * size.reshape(-1, 3) + face = np.array([_BOX_FACES]).reshape(-1, 4) + return vert, face + + +def _get_face_norm(vert: np.ndarray, face: np.ndarray) -> np.ndarray: + """Calculates face normals given vertices and face indexes.""" + assert len(vert.shape) == 2 and len(face.shape) == 2, ( + f'vert and face should have dim of 2, got {len(vert.shape)} and ' + f'{len(face.shape)}' + ) + face_vert = vert[face, :] + # use CCW winding order convention + edge0 = face_vert[:, 1, :] - face_vert[:, 0, :] + edge1 = face_vert[:, -1, :] - face_vert[:, 0, :] + face_norm = np.cross(edge0, edge1) + face_norm = face_norm / np.linalg.norm(face_norm, axis=1).reshape((-1, 1)) + return face_norm + + +def _get_unique_edges(vert: np.ndarray, face: np.ndarray) -> np.ndarray: + """Returns unique edges. + + Args: + vert: (n_vert, 3) vertices + face: (n_face, n_vert) face index array + + Returns: + edges: tuples of vertex indexes for each edge + """ + r_face = np.roll(face, 1, axis=1) + edges = np.concatenate(np.array([face, r_face]).T) + + # do a first pass to remove duplicates + edges.sort(axis=1) + edges = np.unique(edges, axis=0) + edges = edges[edges[:, 0] != edges[:, 1]] # get rid of edges from padded face + + # get normalized edge directions + edge_vert = vert.take(edges, axis=0) + edge_dir = edge_vert[:, 0] - edge_vert[:, 1] + norms = np.sqrt(np.sum(edge_dir**2, axis=1)) + edge_dir = edge_dir / norms.reshape((-1, 1)) + + # get the first unique edge for all pairwise comparisons + diff1 = edge_dir[:, None, :] - edge_dir[None, :, :] + diff2 = edge_dir[:, None, :] + edge_dir[None, :, :] + matches = (np.linalg.norm(diff1, axis=-1) < 1e-6) | ( + np.linalg.norm(diff2, axis=-1) < 1e-6 + ) + matches = np.tril(matches).sum(axis=-1) + unique_edge_idx = np.where(matches == 1)[0] + + return edges[unique_edge_idx] + + +def _convex_hull_2d(points: np.ndarray, normal: np.ndarray) -> np.ndarray: + """Calculates the convex hull for a set of points on a plane.""" + # project points onto the closest axis plane + best_axis = np.abs(np.eye(3).dot(normal)).argmax() + axis = np.eye(3)[best_axis] + d = points.dot(axis).reshape((-1, 1)) + axis_points = points - d * axis + axis_points = axis_points[:, list({0, 1, 2} - {best_axis})] + + # get the polygon face, and make the points ccw wrt the face normal + c = spatial.ConvexHull(axis_points) + order_ = np.where(axis.dot(normal) > 0, 1, -1) + order_ *= np.where(best_axis == 1, -1, 1) + hull_point_idx = c.vertices[::order_] + assert (axis_points - c.points).sum() == 0 + + return hull_point_idx + + +def _merge_coplanar(tm: trimesh.Trimesh) -> np.ndarray: + """Merges coplanar facets.""" + if not tm.facets: + return tm.faces.copy() # no facets + if not tm.faces.shape[0]: + raise ValueError('Mesh has no faces.') + + # Get faces. + face_idx = set(range(tm.faces.shape[0])) - set(np.concatenate(tm.facets)) + face_idx = np.array(list(face_idx)) + faces = tm.faces[face_idx] if face_idx.shape[0] > 0 else np.array([]) + + # Get facets. + facets = [] + for i, facet in enumerate(tm.facets): + point_idx = np.unique(tm.faces[facet]) + points = tm.vertices[point_idx] + normal = tm.facets_normal[i] + + # convert triangulated facet to a polygon + hull_point_idx = _convex_hull_2d(points, normal) + face = point_idx[hull_point_idx] + + # resize faces that exceed max polygon vertices + every = face.shape[0] // _MAX_HULL_FACE_VERTICES + 1 + face = face[::every] + facets.append(face) + + # Pad facets so that they can be stacked. + max_len = max(f.shape[0] for f in facets) if facets else faces.shape[1] + assert max_len <= _MAX_HULL_FACE_VERTICES + for i, f in enumerate(facets): + if f.shape[0] < max_len: + f = np.pad(f, (0, max_len - f.shape[0]), 'edge') + facets[i] = f + + if not faces.shape[0]: + assert facets + return np.array(facets) # no faces, return facets + + # Merge faces and facets. + faces = np.pad(faces, ((0, 0), (0, max_len - faces.shape[1])), 'edge') + return np.concatenate([faces, facets]) + + +def _get_faces_verts( + m: mujoco.MjModel, +) -> Tuple[Sequence[np.ndarray], Sequence[np.ndarray]]: + """Extracts mesh faces and vertices from MjModel.""" + verts, faces = [], [] + for i in range(m.nmesh): + last = (i + 1) >= m.nmesh + face_start = m.mesh_faceadr[i] + face_end = m.mesh_faceadr[i + 1] if not last else m.mesh_face.shape[0] + face = m.mesh_face[face_start:face_end] + faces.append(face) + + vert_start = m.mesh_vertadr[i] + vert_end = m.mesh_vertadr[i + 1] if not last else m.mesh_vert.shape[0] + vert = m.mesh_vert[vert_start:vert_end] + verts.append(vert) + return verts, faces + + +def _geom_mesh_kwargs( + vert: np.ndarray, face: np.ndarray +) -> Dict[str, np.ndarray]: + """Generates convex mesh attributes for mjx.Model.""" + tm = trimesh.Trimesh(vertices=vert, faces=face) + tm_convex = trimesh.convex.convex_hull(tm) + vert = np.array(tm_convex.vertices) + face = _merge_coplanar(tm_convex) + return { + 'geom_convex_face': face, + 'geom_convex_vert': vert, + 'geom_convex_edge': _get_unique_edges(vert, face), + 'geom_convex_facenormal': _get_face_norm(vert, face), + } + + +def get(m: mujoco.MjModel) -> Dict[str, Sequence[Optional[np.ndarray]]]: + """Derives geom mesh attributes for mjx.Model from MjModel.""" + kwargs = {k: [] for k in _DERIVED_ARGS} + verts, faces = _get_faces_verts(m) + for geomid in range(m.ngeom): + dataid = m.geom_dataid[geomid] + typ = m.geom_type[geomid] + if typ == GeomType.BOX: + vert, face = _box(m.geom_size[geomid]) + elif dataid >= 0: + vert, face = verts[dataid], faces[dataid] + else: + kwargs = {k: kwargs[k] + [None] for k in _DERIVED_ARGS} + continue + + key = (hash(vert.data.tobytes()), hash(face.data.tobytes())) + if key not in _CONVEX_CACHE: + _CONVEX_CACHE[key] = _geom_mesh_kwargs(vert, face) + + kwargs = {k: kwargs[k] + [_CONVEX_CACHE[key][k]] for k in _DERIVED_ARGS} + + return kwargs diff --git a/mjx/mujoco/mjx/_src/mesh_test.py b/mjx/mujoco/mjx/_src/mesh_test.py new file mode 100644 index 00000000..7be8197a --- /dev/null +++ b/mjx/mujoco/mjx/_src/mesh_test.py @@ -0,0 +1,119 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for mesh.py.""" + +from absl.testing import absltest +from mujoco.mjx._src import mesh +import numpy as np + + +class GeomMeshKwargsTest(absltest.TestCase): + + def test_pyramid(self): + """Tests that a triangulated pyramid converts to merged coplanar faces.""" + vert = np.array([ + [-0.025, 0.05, 0.05], + [-0.025, -0.05, -0.05], + [-0.025, -0.05, 0.05], + [-0.025, 0.05, -0.05], + [0.075, 0.0, 0.0], + ]) + face = np.array( + [[0, 1, 2], [0, 3, 1], [0, 4, 3], [0, 2, 4], [2, 1, 4], [1, 3, 4]] + ) + h = mesh._geom_mesh_kwargs(vert, face) + + # get index of vertices in h['geom_convex_vert'] for vertices in vert + dist = np.repeat(vert, vert.shape[0], axis=0) - np.tile( + h['geom_convex_vert'], (vert.shape[0], 1) + ) + dist = (dist**2).sum(axis=1).reshape((vert.shape[0], -1)) + vidx = np.argmin(dist, axis=0) + + # check verts + np.testing.assert_array_equal(h['geom_convex_vert'], vert[vidx]) + + # check face vertices + map_ = {v: k for k, v in enumerate(vidx)} + h_face = np.vectorize(map_.get)(h['geom_convex_face']) + face_verts = sorted([tuple(sorted(set(s))) for s in h_face.tolist()]) + expected_face_verts = sorted([ + (0, 3, 4), (1, 3, 4), (0, 2, 4), (0, 1, 2, 3), (1, 2, 4)]) + self.assertSequenceEqual( + face_verts, + expected_face_verts, + ) + + # check edges + unique_edge = np.vectorize(map_.get)(h['geom_convex_edge']) + unique_edge = np.array(sorted(unique_edge.tolist())) + np.testing.assert_array_equal( + unique_edge, + np.array([[0, 2], [0, 3], [0, 4], [1, 4], [2, 4], [3, 4]]), + ) + + # face normals + self.assertEqual(h['geom_convex_facenormal'].shape, (5, 3)) + + +class ConvexHull2DTest(absltest.TestCase): + + def test_convex_hull_2d_axis1(self): + """Tests for the correct winding order of a polgyon with +y normal.""" + pts = np.array([ + [-0.04634297, -0.06652775, 0.05853534], + [-0.01877651, -0.08309858, -0.05236476], + [0.02362804, -0.08010745, 0.05499557], + [0.04066505, -0.09034877, -0.01354446], + [-0.07255043, -0.06837638, -0.00781699], + ]) + normal = np.array([-0.18467607, -0.97768016, 0.10018111]) + idx = mesh._convex_hull_2d(pts, normal) + expected = np.cross(pts[idx][1] - pts[idx][0], pts[idx][2] - pts[idx][0]) + expected /= np.linalg.norm(expected) + np.testing.assert_array_almost_equal(normal, expected) + + def test_convex_hull_2d_axis2(self): + """Tests for the correct winding order for a polgyon with +z normal.""" + pts = np.array([ + [0.08607829, -0.03881998, -0.03291714], + [-0.01877651, -0.08309858, -0.05236476], + [0.05470364, 0.00027677, -0.08371042], + [-0.01010019, -0.02708892, -0.0957297], + [0.04066505, -0.09034877, -0.01354446], + ]) + normal = np.array([0.3839915, -0.60171936, -0.70034587]) + idx = mesh._convex_hull_2d(pts, normal) + expected = np.cross(pts[idx][1] - pts[idx][0], pts[idx][2] - pts[idx][0]) + expected /= np.linalg.norm(expected) + np.testing.assert_array_almost_equal(normal, expected) + + +class UniqueEdgesTest(absltest.TestCase): + + def test_tetrahedron_edges(self): + """Tests unique edges for a tetrahedron.""" + vert = np.array( + [[-0.1, 0.0, -0.1], [0.0, 0.1, 0.1], [0.1, 0.0, -0.1], [0.0, -0.1, 0.1]] + ) + face = np.array([[0, 1, 2], [0, 2, 3], [0, 3, 1], [2, 1, 3]]) + idx = mesh._get_unique_edges(vert, face) + np.testing.assert_array_equal( + idx, np.array([[0, 1], [0, 2], [0, 3], [1, 2], [1, 3], [2, 3]]) + ) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/passive.py b/mjx/mujoco/mjx/_src/passive.py new file mode 100644 index 00000000..9b0b41f0 --- /dev/null +++ b/mjx/mujoco/mjx/_src/passive.py @@ -0,0 +1,141 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Passive forces.""" + +from typing import Tuple + +import jax +from jax import numpy as jp +from mujoco.mjx._src import math +from mujoco.mjx._src import scan +from mujoco.mjx._src import support +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import Data +from mujoco.mjx._src.types import DisableBit +from mujoco.mjx._src.types import JointType +from mujoco.mjx._src.types import Model +# pylint: enable=g-importing-member + + +def _inertia_box_fluid_model( + m: Model, + inertia: jax.Array, + mass: jax.Array, + root_com: jax.Array, + xipos: jax.Array, + ximat: jax.Array, + cvel: jax.Array, +) -> Tuple[jax.Array, jax.Array]: + """Fluid forces based on inertia-box approximation.""" + box = jp.repeat(inertia[None, :], 3, axis=0) + box *= jp.ones((3, 3)) - 2 * jp.eye(3) + box = 6.0 * jp.clip(jp.sum(box, axis=-1), a_min=1e-12) + box = jp.sqrt(box / jp.maximum(mass, 1e-12)) * (mass > 0.0) + + # transform to local coordinate frame + offset = xipos - root_com + lvel = math.transform_motion(cvel, offset, ximat) + lwind = ximat.T @ m.opt.wind + lvel = lvel.at[3:].add(-lwind) + + # set viscous force and torque + diam = jp.mean(box, axis=-1) + lfrc_ang = lvel[:3] * -jp.pi * diam**3 * m.opt.viscosity + lfrc_vel = lvel[3:] * -3.0 * jp.pi * diam * m.opt.viscosity + + # add lift and drag force and torque + scale_vel = jp.array([box[1] * box[2], box[0] * box[2], box[0] * box[1]]) + scale_ang = jp.array([ + box[0] * (box[1] ** 4 + box[2] ** 4), + box[1] * (box[0] ** 4 + box[2] ** 4), + box[2] * (box[0] ** 4 + box[1] ** 4), + ]) + lfrc_vel -= 0.5 * m.opt.density * scale_vel * jp.abs(lvel[3:]) * lvel[3:] + lfrc_ang -= ( + 1.0 * m.opt.density * scale_ang * jp.abs(lvel[:3]) * lvel[:3] / 64.0 + ) + + # rotate to global orientation: lfrc -> bfrc + force, torque = ximat @ lfrc_vel, ximat @ lfrc_ang + + return force, torque + + +def passive(m: Model, d: Data) -> Data: + """Adds all passive forces.""" + if m.opt.disableflags & DisableBit.PASSIVE: + return d + + # joint-level springs + def fn(jnt_typs, stiffness, qpos_spring, qpos): + qpos_i = 0 + qfrcs = [] + for i in range(len(jnt_typs)): + jnt_typ = JointType(jnt_typs[i]) + q = qpos[qpos_i : qpos_i + jnt_typ.qpos_width()] + qs = qpos_spring[qpos_i : qpos_i + jnt_typ.qpos_width()] + qfrc = jp.zeros(jnt_typ.dof_width()) + if jnt_typ == JointType.FREE: + qfrc = qfrc.at[:3].set(-stiffness[i] * (q[:3] - qs[:3])) + qfrc = qfrc.at[3:6].set(-stiffness[i] * math.quat_sub(q[3:7], qs[3:7])) + elif jnt_typ == JointType.BALL: + qfrc = -stiffness[i] * math.quat_sub(q, qs) + elif jnt_typ in ( + JointType.SLIDE, + JointType.HINGE, + ): + qfrc = -stiffness[i] * (q - qs) + else: + raise RuntimeError(f'unrecognized joint type: {jnt_typ}') + qfrcs.append(qfrc) + qpos_i += jnt_typ.qpos_width() + return jp.concatenate(qfrcs) + + qfrc_passive = scan.flat( + m, + fn, + 'jjqq', + 'v', + m.jnt_type, + m.jnt_stiffness, + m.qpos_spring, + d.qpos, + ) + + # dof-level dampers + qfrc_passive -= m.dof_damping * d.qvel + + # TODO(robotics-simulation): body-level gravity compensation + + # body-level viscosity, lift and drag + if m.opt.has_fluid_params: + force, torque = jax.vmap( + _inertia_box_fluid_model, in_axes=(None, 0, 0, 0, 0, 0, 0) + )( + m, + m.body_inertia, + m.body_mass, + d.subtree_com[jp.array(m.body_rootid)], + d.xipos, + d.ximat, + d.cvel, + ) + qfrc_target = jax.vmap(support.apply_ft, in_axes=(None, None, 0, 0, 0, 0))( + m, d, force, torque, d.xipos, jp.arange(m.nbody) + ) + qfrc_passive += jp.sum(qfrc_target, axis=0) + + d = d.replace(qfrc_passive=qfrc_passive) + return d diff --git a/mjx/mujoco/mjx/_src/passive_test.py b/mjx/mujoco/mjx/_src/passive_test.py new file mode 100644 index 00000000..49264014 --- /dev/null +++ b/mjx/mujoco/mjx/_src/passive_test.py @@ -0,0 +1,114 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests passive forces.""" + +import itertools + +from absl.testing import absltest +from absl.testing import parameterized +from etils import epath +import jax +import jax.numpy as jp +import mujoco +from mujoco import mjx +import numpy as np + + +def _assert_attr_eq(a, b, attr, step, fname, atol=1e-5, rtol=1e-5): + err_msg = f'mismatch: {attr} at step {step} in {fname}' + a, b = getattr(a, attr), getattr(b, attr) + np.testing.assert_allclose(a, b, err_msg=err_msg, atol=atol, rtol=rtol) + + +class PassiveTest(parameterized.TestCase): + + @parameterized.parameters(enumerate(('ant.xml', 'mixed_joint_pendulum.xml'))) + def test_stiffness_damping(self, seed, fname): + """Tests stiffness and damping on Ant.""" + np.random.seed(seed) + path = epath.resource_path('mujoco.mjx') / 'test_data' + path /= fname + m = mujoco.MjModel.from_xml_string(path.read_text()) + + # set stiffness/damping + m.jnt_stiffness = np.random.uniform(size=m.njnt) + m.dof_damping = np.random.uniform(size=m.nv) + d = mujoco.MjData(m) + d.qvel = np.random.random(m.nv) # random kick + + mx = mjx.device_put(m) + dx = mjx.make_data(mx) + + passive_jit_fn = jax.jit(mjx.passive) + + for i in range(100): + qpos, qvel = d.qpos.copy(), d.qvel.copy() + mujoco.mj_step(m, d) + dx = passive_jit_fn(mx, dx.replace(qpos=qpos, qvel=qvel)) + _assert_attr_eq(d, dx, 'qfrc_passive', i, fname) + + @parameterized.parameters( + itertools.product(range(3), ('triple_pendulum.xml',)) + ) + def test_fluid(self, seed, fname): + np.random.seed(seed) + path = epath.resource_path('mujoco.mjx') / 'test_data' + path /= fname + m = mujoco.MjModel.from_xml_string(path.read_text()) + + # set density/viscosity/wind + m.opt.density = np.random.uniform() + m.opt.viscosity = np.random.uniform() + m.opt.wind = np.random.uniform() + + passive_jit_fn = jax.jit(mjx.passive) + + mx = mjx.device_put(m) + d = mujoco.MjData(m) + d.qvel = np.random.random(m.nv) # random kick + + for i in range(100): + mujoco.mj_step(m, d) + dx = mjx.device_put(d) + mujoco.mj_passive(m, d) + dx = passive_jit_fn(mx, dx) + _assert_attr_eq(d, dx, 'qfrc_passive', i, fname) + + def test_disable_passive(self): + m = mujoco.MjModel.from_xml_string(""" + + + + + + + + + + """) + mx = mjx.device_put(m) + d = mujoco.MjData(m) + dx = mjx.device_put(d) + dx = dx.replace(qvel=jp.ones(mx.nv)) + + passive_jit_fn = jax.jit(mjx.passive) + dx = passive_jit_fn(mx, dx) + np.testing.assert_equal(dx.qfrc_passive, np.zeros(mx.nv)) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/scan.py b/mjx/mujoco/mjx/_src/scan.py new file mode 100644 index 00000000..b54655c0 --- /dev/null +++ b/mjx/mujoco/mjx/_src/scan.py @@ -0,0 +1,432 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Scan across data ordered by body joint types and kinematic tree order.""" + +from typing import Any, Callable, TypeVar + +import jax +from jax import numpy as jp +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import JointType +from mujoco.mjx._src.types import Model +from mujoco.mjx._src.types import TrnType +# pylint: enable=g-importing-member +import numpy as np + + +Y = TypeVar('Y') + + +# TODO(erikfrey): re-check if this really helps perf +def _take(obj: Y, idx: np.ndarray) -> Y: + """Takes idxs on any pytree given to it. + + XLA executes x[jp.array([1, 2, 3])] slower than x[1:4], so we detect when + take indices are contiguous, and convert them to slices. + + Args: + obj: an input pytree + idx: indices to take + + Returns: + obj pytree with leaves taken by idxs + """ + + if isinstance(obj, np.ndarray): + return obj[idx] + + def take(x): + # TODO(erikfrey): if this helps perf, add support for striding too + if ( + len(idx.shape) == 1 + and idx.size > 0 + and (idx == np.arange(idx[0], idx[0] + idx.size)).all() + and (idx > 0).all() + ): + x = x[idx[0] : idx[-1] + 1] + else: + x = x.take(jp.array(idx), axis=0, mode='wrap') + return x + + return jax.tree_map(take, obj) + + +def _q_bodyid(m: Model) -> np.ndarray: + """Returns the bodyid for each qpos adress.""" + q_bodyids = [np.array([], dtype=np.int32)] + for jnt_type, jnt_bodyid in zip(m.jnt_type, m.jnt_bodyid): + width = {JointType.FREE: 7, JointType.BALL: 4}.get(jnt_type, 1) + q_bodyids.append(np.repeat(jnt_bodyid, width)) + return np.concatenate(q_bodyids) + + +def _q_jointid(m: Model) -> np.ndarray: + """Returns the jointid for each qpos adress.""" + q_jointid = [np.array([], dtype=np.int32)] + for i, jnt_type in enumerate(m.jnt_type): + width = {JointType.FREE: 7, JointType.BALL: 4}.get(jnt_type, 1) + q_jointid.append(np.repeat(i, width)) + return np.concatenate(q_jointid) + + +def _index(haystack: np.ndarray, needle: np.ndarray) -> np.ndarray: + """Returns indexes in haystack for elements in needle.""" + idx = np.argsort(haystack) + sorted_haystack = haystack[idx] + sorted_idx = np.searchsorted(sorted_haystack, needle) + idx = np.take(idx, sorted_idx, mode='clip') + idx[haystack[idx] != needle] = -1 + + return idx + + +def _nvmap(f: Callable[..., Y], *args) -> Y: + """A vmap that accepts numpy arrays. + + Numpy arrays are statically vmapped, and the elements are passed to f as + static arguments. The implication is that all the elements of numpy array + arguments must be the same. + + Args: + f: function to be mapped over + *args: args to be mapped along, passed to f + + Returns: + the result of vmapping f over args + + Raises: + RuntimeError: if numpy arg elements do not match + """ + for arg in args: + if isinstance(arg, np.ndarray) and not np.all(arg == arg[0]): + raise RuntimeError(f'numpy arg elements do not match: {arg}') + + np_args = [a[0] if isinstance(a, np.ndarray) else None for a in args] + args = [a if n is None else None for n, a in zip(np_args, args)] + in_axes = [None if a is None else 0 for a in args] + + def outer_f(*args, np_args=np_args): + args = [a if n is None else n for n, a in zip(args, np_args)] + return f(*args) + + return jax.vmap(outer_f, in_axes=in_axes)(*args) + + +def _check_input(m: Model, args: Any, in_types: str) -> None: + """Checks that scan input has the right shape.""" + size = {'b': m.nbody, 'j': m.njnt, 'q': m.nq, 'v': m.nv, 'u': m.nu, 'a': m.na} + for idx, (a, typ) in enumerate(zip(args, in_types)): + if len(a) != size[typ]: + raise IndexError( + ( + f'f argument "{idx}" with type "{typ}" has length "{len(a)}"' + f' which does not match the in_types[{idx}] expected length of ' + f'"{size[typ]}".' + ) + ) + + +def _check_output( + y: jax.Array, take_ids: np.ndarray, typ: str, idx: int +) -> None: + """Checks that scan output has the right shape.""" + if y.shape[0] != take_ids.shape[0]: + raise IndexError( + ( + f'f output "{idx}" with type "{typ}" has shape "{y.shape[0]}" ' + f'which does not match the out_types[{idx}] expected size of' + f' "{take_ids.shape[0]}".' + ) + ) + + +def flat( + m: Model, + f: Callable[..., Y], + in_types: str, + out_types: str, + *args, + group_by: str = 'j', +) -> Y: + r"""Scan a function across bodies or actuators. + + Scan group data according to type and batch shape then calls vmap(f) on it.\ + + Args: + m: an mjx model + f: a function to be scanned with the following type signature: + def f(key, *args) -> y + where + ``key`` gives grouping key for this function instance + ``*args`` are input arguments with types matching ``in_types`` + ``y`` is an output arguments with types matching ``out_type`` + in_types: string specifying the type of each input arg: + 'b': split according to bodies + 'j': split according to joint types + 'q': split according to generalized coordinates (len(qpos)) + 'v': split according to degrees of freedom (len(qvel)) + 'u': split according to actuators + 'a': split according to actuator activations + out_types: string specifying the types the output dimension matches + *args: the input arguments corresponding to ``in_types`` + group_by: the type to group by, either joints or actuators + + Returns: + The stacked outputs of ``f`` matching the model's order. + + Raises: + IndexError: if function output shape does not match out_types shape + """ + _check_input(m, args, in_types) + + if group_by not in {'j', 'u'}: + raise NotImplementedError(f'group by type "{group_by}" not implemented.') + + def key_j(ids): + if any(t in 'jqv' for t in in_types + out_types): + return tuple(m.jnt_type[ids]) + return () + + def key_u(ids_u, ids_j): + return ( + m.actuator_biastype[ids_u], + m.actuator_gaintype[ids_u], + m.actuator_dyntype[ids_u], + m.actuator_trntype[ids_u], + m.jnt_type[ids_j], + ) + + def type_ids_j(m, i): + return { + 'b': i, + 'j': np.nonzero(m.jnt_bodyid == i)[0], + 'v': np.nonzero(m.dof_bodyid == i)[0], + 'q': np.nonzero(_q_bodyid(m) == i)[0], + } + + def type_ids_u(m, i): + typ_ids = { + 'u': i, + 'a': m.actuator_actadr[i], + 'j': ( + m.actuator_trnid[i] + if m.actuator_trntype[i] == TrnType.JOINT + else np.array(-1) + ), + } + # v/q associated with joint transmissions + typ_ids.update({ + 'v': np.nonzero(m.dof_jntid == typ_ids['j'])[0], + 'q': np.nonzero(_q_jointid(m) == typ_ids['j'])[0], + }) + return typ_ids + + # build up a grouping of type take-ids in body/actuator order + key_typ_ids, order = {}, [] + all_types = set(in_types + out_types) + n_items = {'j': m.nbody, 'u': m.nu}[group_by] + for i in np.arange(n_items, dtype=np.int32): + typ_ids = type_ids_j(m, i) if group_by == 'j' else type_ids_u(m, i) + + # create grouping key + key = ( + key_j(typ_ids['j']) + if group_by == 'j' + else key_u(typ_ids['u'], typ_ids['j']) + ) + order.append((key, typ_ids)) + + # add ids per type to the corresponding group + for t in all_types: + out = key_typ_ids.setdefault(key, {}) + val = np.expand_dims(typ_ids[t], axis=0) + out[t] = np.concatenate((out[t], val)) if t in out else val + + key_typ_ids = list(sorted(key_typ_ids.items())) + + # use this grouping to take the right data subsets and call vmap(f) + ys = [] + for _, typ_ids in key_typ_ids: + # only execute f if we would actually take something from the result + if any(typ_ids[v].size > 0 for v in out_types): + f_args = [_take(arg, typ_ids[typ]) for arg, typ in zip(args, in_types)] + y = _nvmap(f, *f_args) + ys.append(y) + else: + ys.append(None) + + # remove None results from the final output + key_typ_ids = [v for y, v in zip(ys, key_typ_ids) if y is not None] + ys = [y for y in ys if y is not None] + ys_keys = set([k for k, *_ in key_typ_ids]) + order = [o for k, o in order if k in ys_keys] + + # get the original input order + order = [[o[t] for o in order] for t in all_types] + order = [ + np.concatenate(o) if isinstance(o[0], np.ndarray) else np.array(o) + for o in order + ] + order = dict(zip(all_types, order)) + + # concatenate back to a single tree and drop the grouping dimension + f_ret_is_seq = isinstance(ys[0], (list, tuple)) + ys = ys if f_ret_is_seq else [[y] for y in ys] + flat_ = {'j': 'b', 'u': 'uaj'}[group_by] + ys = [ + [v if typ in flat_ else jp.concatenate(v) for v, typ in zip(y, out_types)] + for y in ys + ] + ys = jax.tree_map(lambda *x: jp.concatenate(x), *ys) + + # put concatenated results back in order + reordered_ys = [] + for i, (y, typ) in enumerate(zip(ys, out_types)): + _check_output(y, order[typ], typ, i) + ids = np.concatenate([np.hstack(v[typ]) for _, v in key_typ_ids]) + input_order = order[typ][np.where(order[typ] != -1)] + reordered_ys.append(_take(y, _index(ids, input_order))) + y = reordered_ys if f_ret_is_seq else reordered_ys[0] + + return y + + +def body_tree( + m: Model, + f: Callable[..., Y], + in_types: str, + out_types: str, + *args, + reverse: bool = False, +) -> Y: + r"""Scan ``f`` across bodies in tree order, carrying results up/down the tree. + + This function groups bodies according to level and attached joints, then calls + vmap(f) on them.\ + + Args: + m: an mjx mjmodel + f: a function to be scanned with the following type signature: + def f(y, *args) -> y + where + ``y`` is the carry value and return value + ``*args`` are input arguments with types matching ``in_types`` + in_types: string specifying the type of each input arg: + 'b': split according to bodies + 'j': split according to joint types + 'q': split according to generalized coordinates (len(qpos)) + 'v': split according to degrees of freedom (len(qvel)) + out_types: string specifying the types the output dimension matches + *args: the input arguments corresponding to ``in_types`` + reverse: if True, scans up the body tree from leaves to root, otherwise + root to leaves + + Returns: + The stacked outputs of ``f`` matching the model's body order. + + Raises: + IndexError: if function output shape does not match out_types shape + """ + _check_input(m, args, in_types) + depth_fn = lambda i, p=m.body_parentid: int(i > 0) and 1 + depth_fn(p[i]) + typ_body_id = { + 'j': m.jnt_bodyid, + 'v': m.dof_bodyid, + 'q': _q_bodyid(m), + } + key_parents = {} + + # build up groupings of bodies and type ids using (level, (jnt_type,)) keys + key_typ_ids, key_body_ids = {}, {} + for body_id in np.arange(m.nbody, dtype=np.int32): + depth = depth_fn(body_id) + + # create grouping key + if any(t in 'jqv' for t in in_types + out_types): + jnts = np.nonzero(typ_body_id['j'] == body_id)[0] + jnts_p = np.nonzero(typ_body_id['j'] == m.body_parentid[body_id])[0] + key = depth, tuple(m.jnt_type[jnts]) + parent_key = depth - 1, tuple(m.jnt_type[jnts_p]) + else: + key, parent_key = (depth, ()), (depth - 1, ()) + + key_parents[key] = parent_key + body_ids = key_body_ids.get(key, np.array([], dtype=np.int32)) + key_body_ids[key] = np.append(body_ids, body_id) + + # add ids per type + for t in set(in_types + out_types): + out = key_typ_ids.setdefault(key, {}) + id_ = body_id if t == 'b' else np.nonzero(typ_body_id[t] == body_id)[0] + id_ = np.expand_dims(id_, axis=0) + out[t] = np.concatenate((out[t], id_)) if t in out else id_ + + key_typ_ids = list(sorted(key_typ_ids.items(), reverse=reverse)) + + # use this grouping to take the right data subsets and call vmap(f) + key_y = {} + for key, typ_ids in key_typ_ids: + carry = None + + if reverse: + child_keys = [k for k, v in key_parents.items() if v == key] + + for child_key in child_keys: + y = key_y[child_key] + body_ids = key_body_ids[key] + parent_ids = m.body_parentid[key_body_ids[child_key]] + id_map = _index(body_ids, parent_ids) + + def index_sum(x, i=id_map, s=body_ids.size): + return jax.ops.segment_sum(x, i, s) + + y = jax.tree_map(index_sum, y) + carry = y if carry is None else jax.tree_map(jp.add, carry, y) + else: + parent_key = key_parents[key] + y = key_y.get(parent_key) + + if y is not None: + body_ids = key_body_ids[parent_key] + parent_ids = m.body_parentid[key_body_ids[key]] + take_fn = lambda x, i=_index(body_ids, parent_ids): _take(x, i) + carry = jax.tree_map(take_fn, y) + + f_args = [_take(arg, typ_ids[typ]) for arg, typ in zip(args, in_types)] + key_y[key] = _nvmap(f, carry, *f_args) + + # slice None results from the final output + key_typ_ids = [(k, v) for k, v in key_typ_ids if key_y[k] is not None] + + # concatenate back to a single tree and drop the grouping dimension + ys = [key_y[key] for key, _ in key_typ_ids] + f_ret_is_seq = isinstance(ys[0], (list, tuple)) + ys = ys if f_ret_is_seq else [[y] for y in ys] + ys = [ + [v if typ == 'b' else jp.concatenate(v) for v, typ in zip(y, out_types)] + for y in ys + ] + ys = jax.tree_map(lambda *x: jp.concatenate(x), *ys) + + # put concatenated results back into body order + reordered_ys = [] + for i, (y, typ) in enumerate(zip(ys, out_types)): + ids = np.concatenate([np.hstack(v[typ]) for _, v in key_typ_ids]) + take_ids = _index(ids, np.sort(ids)) + _check_output(y, take_ids, typ, i) + reordered_ys.append(_take(y, take_ids)) + y = reordered_ys if f_ret_is_seq else reordered_ys[0] + + return y diff --git a/mjx/mujoco/mjx/_src/scan_test.py b/mjx/mujoco/mjx/_src/scan_test.py new file mode 100644 index 00000000..9b845de1 --- /dev/null +++ b/mjx/mujoco/mjx/_src/scan_test.py @@ -0,0 +1,227 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for scan functions.""" + +from absl.testing import absltest +from jax import numpy as jp +import mujoco +from mujoco import mjx +# pylint: disable=g-importing-member +from mujoco.mjx._src import scan +from mujoco.mjx._src.types import JointType +# pylint: enable=g-importing-member +import numpy as np + + +class ScanTest(absltest.TestCase): + + _MULTI_DOF_XML = """ + + + + + + + + + + + + + + + + + + + """ + + def test_flat_empty(self): + """Test scanning over just world body.""" + m = mujoco.MjModel.from_xml_string(""" + + + + """) + m = mjx.device_put(m) + + def fn(body_id): + return body_id + 1 + + b_in = jp.array([1]) + b_expect = jp.array([2]) + b_out = scan.flat(m, fn, 'b', 'b', b_in) + + np.testing.assert_equal(np.array(b_out), np.array(b_expect)) + + def test_flat_joints(self): + """Tests scanning over bodies with joints of different types.""" + m = mujoco.MjModel.from_xml_string(self._MULTI_DOF_XML) + m = mjx.device_put(m) + + # we will test two functions: + # 1) j_fn receives jnt_types as a jp array + # 2) s_fn receives jnt_types as a static np array and can switch on it + j_fn = lambda jnt_pos, val: val + jp.sum(jnt_pos) + s_fn = lambda jnt_types, val: val + sum(jnt_types) + + b_in = jp.array([[0, 0], [1, 1], [2, 2], [3, 3]]) + b_expect = jp.array([[0, 0], [1, 1], [3, 3], [8, 8]]) + b_out = scan.flat(m, j_fn, 'jb', 'b', m.jnt_pos, b_in) + np.testing.assert_equal(np.array(b_out), np.array(b_expect)) + + b_out = scan.flat(m, s_fn, 'jb', 'b', m.jnt_type, b_in) + np.testing.assert_equal(np.array(b_out), np.array(b_expect)) + + # None should be omitted from the results + def no_free(jnt_types, val): + if tuple(jnt_types) == (JointType.FREE,): + return None + return val + sum(jnt_types) + b_expect = jp.array([[0, 0], [3, 3], [8, 8]]) + b_out = scan.flat(m, no_free, 'jb', 'b', m.jnt_type, b_in) + np.testing.assert_equal(np.array(b_out), np.array(b_expect)) + + # we should not call functions for which we know we will discard the results + def no_world(jnt_types, val): + if jnt_types.size == 0: + self.fail('world has no dofs, should not be called') + return val + sum(jnt_types) + v_in = jp.ones((m.nv, 1)) + scan.flat(m, no_world, 'jv', 'v', m.jnt_type, v_in) + + def test_body_tree(self): + """Tests tree scanning over bodies with different joint counts.""" + m = mujoco.MjModel.from_xml_string(self._MULTI_DOF_XML) + m = mjx.device_put(m) + + # we will test two functions: + # 1) j_fn receives jnt_pos which is a jp array + # 2) s_fn receives jnt_types which is a static np array + def j_fn(carry, jnt_pos, val): + carry = jp.zeros_like(val) if carry is None else carry + return carry + val + jp.sum(jnt_pos) + + def s_fn(carry, jnt_types, val): + carry = jp.zeros_like(val) if carry is None else carry + return carry + val + sum(jnt_types) + + b_in = jp.array([[0, 0], [1, 1], [2, 2], [3, 3]]) + b_expect = jp.array([[0, 0], [1, 1], [4, 4], [9, 9]]) + + b_out = scan.body_tree(m, j_fn, 'jb', 'b', m.jnt_pos, b_in) + np.testing.assert_equal(np.array(b_out), np.array(b_expect)) + + b_out = scan.body_tree(m, s_fn, 'jb', 'b', m.jnt_type, b_in) + np.testing.assert_equal(np.array(b_out), np.array(b_expect)) + + # and reverse too: + b_expect = jp.array([[12, 12], [12, 12], [3, 3], [8, 8]]) + b_out = scan.body_tree(m, j_fn, 'jb', 'b', m.jnt_pos, b_in, reverse=True) + np.testing.assert_equal(np.array(b_out), np.array(b_expect)) + + b_out = scan.body_tree(m, s_fn, 'jb', 'b', m.jnt_type, b_in, reverse=True) + np.testing.assert_equal(np.array(b_out), np.array(b_expect)) + + # None should be omitted from the results + def no_free(carry, jnt_types, val): + if tuple(jnt_types) == (JointType.FREE,): + return None + carry = jp.zeros_like(val) if carry is None else carry + return carry + val + sum(jnt_types) + b_expect = jp.array([[0, 0], [3, 3], [8, 8]]) + b_out = scan.body_tree(m, no_free, 'jb', 'b', m.jnt_type, b_in) + np.testing.assert_equal(np.array(b_out), np.array(b_expect)) + + _MULTI_ACT_XML = """ + + + """ + + def testscan_actuators(self): + """Tests scanning over actuators.""" + m = mujoco.MjModel.from_xml_string(self._MULTI_ACT_XML) + m = mjx.device_put(m) + + fn = lambda *args: args + args = ( + m.actuator_gear, + m.jnt_type, + jp.arange(m.nq), + jp.arange(m.nv), + jp.array([1.4, 1.1]), + ) + gear, jnt_typ, qadr, vadr, act = scan.flat( + m, fn, 'ujqva', 'ujqva', *args, group_by='u' + ) + + np.testing.assert_array_equal(gear, m.actuator_gear) + np.testing.assert_array_equal(jnt_typ, m.jnt_type[m.actuator_trnid]) + np.testing.assert_array_equal(act, jp.array([1.4, 1.1])) + expected_vadr = np.concatenate( + [np.nonzero(m.dof_jntid == trnid)[0] for trnid in m.actuator_trnid] + ) + np.testing.assert_array_equal(vadr, expected_vadr) + expected_qadr = np.concatenate( + [np.nonzero(scan._q_jointid(m) == i)[0] for i in m.actuator_trnid] + ) + np.testing.assert_array_equal(qadr, expected_qadr) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/smooth.py b/mjx/mujoco/mjx/_src/smooth.py new file mode 100644 index 00000000..1193a1f8 --- /dev/null +++ b/mjx/mujoco/mjx/_src/smooth.py @@ -0,0 +1,466 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Core smooth dynamics functions.""" + +import jax +from jax import numpy as jp +import mujoco +from mujoco.mjx._src import math +from mujoco.mjx._src import scan +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import Data +from mujoco.mjx._src.types import DisableBit +from mujoco.mjx._src.types import JointType +from mujoco.mjx._src.types import Model +# pylint: enable=g-importing-member + + +def kinematics(m: Model, d: Data) -> Data: + """Converts position/velocity from generalized coordinates to maximal.""" + + def fn(carry, jnt_typs, jnt_pos, jnt_axis, qpos, qpos0, pos, quat): + # calculate joint anchors, axes, body pos and quat in global frame + # also normalize qpos while we're at it + + if carry is not None: + _, _, _, parent_pos, parent_quat, _ = carry + pos = parent_pos + math.rotate(pos, parent_quat) + quat = math.quat_mul(parent_quat, quat) + + anchors, axes = [], [] + + qpos_i = 0 + for i, jnt_typ in enumerate(jnt_typs): + if jnt_typ == JointType.FREE: + anchor, axis = qpos[qpos_i : qpos_i + 3], jp.array([0.0, 0.0, 1.0]) + else: + anchor = math.rotate(jnt_pos[i], quat) + pos + axis = math.rotate(jnt_axis[i], quat) + anchors, axes = anchors + [anchor], axes + [axis] + + if jnt_typ == JointType.FREE: + pos = qpos[qpos_i : qpos_i + 3] + quat = math.normalize(qpos[qpos_i + 3 : qpos_i + 7]) + qpos = qpos.at[qpos_i + 3 : qpos_i + 7].set(quat) + qpos_i += 7 + elif jnt_typ == JointType.BALL: + qloc = math.normalize(qpos[qpos_i : qpos_i + 4]) + qpos = qpos.at[qpos_i : qpos_i + 4].set(qloc) + quat = math.quat_mul(quat, qloc) + pos = anchor - math.rotate(jnt_pos[i], quat) # off-center rotation + qpos_i += 4 + elif jnt_typ == JointType.HINGE: + angle = qpos[qpos_i] - qpos0[qpos_i] + qloc = math.axis_angle_to_quat(jnt_axis[i], angle) + quat = math.quat_mul(quat, qloc) + pos = anchor - math.rotate(jnt_pos[i], quat) # off-center rotation + qpos_i += 1 + elif jnt_typ == JointType.SLIDE: + pos += axis * (qpos[qpos_i] - qpos0[qpos_i]) + qpos_i += 1 + else: + raise RuntimeError(f'unrecognized joint type: {jnt_typ}') + + anchor = jp.stack(anchors) if anchors else jp.empty((0, 3)) + axis = jp.stack(axes) if axes else jp.empty((0, 3)) + mat = math.quat_to_mat(quat) + + return qpos, anchor, axis, pos, quat, mat + + qpos, xanchor, xaxis, xpos, xquat, xmat = scan.body_tree( + m, + fn, + 'jjjqqbb', + 'qjjbbb', + m.jnt_type, + m.jnt_pos, + m.jnt_axis, + d.qpos, + m.qpos0, + m.body_pos, + m.body_quat, + ) + + @jax.vmap + def local_to_global(pos1, quat1, pos2, quat2): + pos = pos1 + math.rotate(pos2, quat1) + mat = math.quat_to_mat(math.quat_mul(quat1, quat2)) + return pos, mat + + # TODO(erikfrey): confirm that quats are more performant for mjx than mats + xipos, ximat = local_to_global(xpos, xquat, m.body_ipos, m.body_iquat) + geom_xpos, geom_xmat = local_to_global( + xpos[m.geom_bodyid], xquat[m.geom_bodyid], m.geom_pos, m.geom_quat + ) + + d = d.replace(qpos=qpos, xanchor=xanchor, xaxis=xaxis, xpos=xpos) + d = d.replace(xquat=xquat, xmat=xmat, xipos=xipos, ximat=ximat) + d = d.replace(geom_xpos=geom_xpos, geom_xmat=geom_xmat) + + return d + + +def com_pos(m: Model, d: Data) -> Data: + """Maps inertias and motion dofs to global frame centered at subtree-CoM.""" + + # calculate center of mass of each subtree + def subtree_sum(carry, xipos, body_mass): + pos, mass = xipos * body_mass, body_mass + if carry is not None: + subtree_pos, subtree_mass = carry + pos, mass = pos + subtree_pos, mass + subtree_mass + return pos, mass + + pos, mass = scan.body_tree( + m, subtree_sum, 'bb', 'bb', d.xipos, m.body_mass, reverse=True + ) + cond = jp.tile(mass < jp.array(mujoco.mjMINVAL), (3, 1)).T + subtree_com = jp.where(cond, d.xipos, jax.vmap(jp.divide)(pos, mass)) + d = d.replace(subtree_com=subtree_com) + + # map inertias to frame centered at subtree_com + @jax.vmap + def inert_com(inert, ximat, off, mass): + h = jp.cross(off, -jp.eye(3)) + inert = ximat @ jp.diag(inert) @ ximat.T + h @ h.T * mass + # cinert is triu(inert), mass * off, mass + inert = inert[(jp.array([0, 1, 2, 0, 0, 1]), jp.array([0, 1, 2, 1, 2, 2]))] + return jp.concatenate([inert, off * mass, jp.expand_dims(mass, 0)]) + + root_com = subtree_com[jp.array(m.body_rootid)] + offset = d.xipos - root_com + cinert = inert_com(m.body_inertia, d.ximat, offset, m.body_mass) + d = d.replace(cinert=cinert) + + # map motion dofs to global frame centered at subtree_com + def cdof_fn(jnt_typs, root_com, xmat, xanchor, xaxis): + cdofs = [] + + dof_com_fn = lambda a, o: jp.concatenate([a, jp.cross(a, o)]) + + for i, jnt_typ in enumerate(jnt_typs): + offset = root_com - xanchor[i] + if jnt_typ == JointType.FREE: + cdofs.append(jp.eye(3, 6, 3)) # free translation + cdofs.append(jax.vmap(dof_com_fn, in_axes=(0, None))(xmat.T, offset)) + elif jnt_typ == JointType.BALL: + cdofs.append(jax.vmap(dof_com_fn, in_axes=(0, None))(xmat.T, offset)) + elif jnt_typ == JointType.HINGE: + cdof = dof_com_fn(xaxis[i], offset) + cdofs.append(jp.expand_dims(cdof, 0)) + elif jnt_typ == JointType.SLIDE: + cdof = jp.concatenate((jp.zeros((3,)), xaxis[i])) + cdofs.append(jp.expand_dims(cdof, 0)) + else: + raise RuntimeError(f'unrecognized joint type: {jnt_typ}') + + cdof = jp.concatenate(cdofs) if cdofs else jp.empty((0, 6)) + + return cdof + + cdof = scan.flat( + m, + cdof_fn, + 'jbbjj', + 'v', + m.jnt_type, + root_com, + d.xmat, + d.xanchor, + d.xaxis, + ) + d = d.replace(cdof=cdof) + + return d + + +def crb(m: Model, d: Data) -> Data: + """Runs composite rigid body inertia algorithm.""" + + def crb_fn(crb_child, crb_body): + if crb_child is not None: + crb_body += crb_child + return crb_body + + crb_body = scan.body_tree(m, crb_fn, 'b', 'b', d.cinert, reverse=True) + crb_body = crb_body.at[0].set(0.0) + d = d.replace(crb=crb_body) + + # TODO(erikfrey): do centralized take fn? + crb_dof = jp.take(crb_body, jp.array(m.dof_bodyid), axis=0) + crb_cdof = jax.vmap(math.inert_mul)(crb_dof, d.cdof) + + dof_i, dof_j, diag = [], [], [] + for i in range(m.nv): + diag.append(len(dof_i)) + j = i + while j > -1: + dof_i, dof_j = dof_i + [i], dof_j + [j] + j = m.dof_parentid[j] + + crb_codf_i = jp.take(crb_cdof, jp.array(dof_i), axis=0) + cdof_j = jp.take(d.cdof, jp.array(dof_j), axis=0) + qm = jax.vmap(jp.dot)(crb_codf_i, cdof_j) + + # add armature to diagonal + qm = qm.at[jp.array(diag)].add(m.dof_armature) + + d = d.replace(qM=qm) + + return d + + +def factor_m( + m: Model, + d: Data, + qM: jax.Array, # pylint:disable=invalid-name +) -> Data: + """Gets sparse L'*D*L factorizaton of inertia-like matrix M, assumed spd.""" + + # build up indices for where we will do backwards updates over qLD + # TODO(erikfrey): do fewer updates by combining non-overlapping ranges + dof_madr = jp.array(m.dof_Madr) + updates = {} + madr_ds = [] + for i in range(m.nv): + madr_d = madr_ij = m.dof_Madr[i] + j = i + while True: + madr_ds.append(madr_d) + madr_ij, j = madr_ij + 1, m.dof_parentid[j] + if j == -1: + break + madr_j_range = tuple(m.dof_Madr[j : j + 2]) + updates.setdefault(madr_j_range, []).append((madr_d, madr_ij)) + + qld = qM + + for (out_beg, out_end), vals in sorted(updates.items(), reverse=True): + madr_d, madr_ij = jp.array(vals).T + + @jax.vmap + def off_diag_fn(madr_d, madr_ij, qld=qld, width=out_end - out_beg): + qld_row = jax.lax.dynamic_slice(qld, (madr_ij,), (width,)) + return -(qld_row[0] / qld[madr_d]) * qld_row + + qld_update = jp.sum(off_diag_fn(madr_d, madr_ij), axis=0) + qld = qld.at[out_beg:out_end].add(qld_update) + # TODO(erikfrey): determine if this minimum value guarding is necessary: + # qld = qld.at[dof_madr].set(jp.maximum(qld[dof_madr], _MJ_MINVAL)) + + qld_diag = qld[dof_madr] + qld = (qld / qld[jp.array(madr_ds)]).at[dof_madr].set(qld_diag) + + d = d.replace(qLD=qld, qLDiagInv=1 / qld_diag) + + return d + + +def solve_m(m: Model, d: Data, x: jax.Array) -> jax.Array: + """Computes sparse backsubstitution: x = inv(L'*D*L)*y .""" + + updates_i, updates_j = {}, {} + for i in range(m.nv): + madr_ij, j = m.dof_Madr[i], i + while True: + madr_ij, j = madr_ij + 1, m.dof_parentid[j] + if j == -1: + break + updates_i.setdefault(i, []).append((madr_ij, j)) + updates_j.setdefault(j, []).append((madr_ij, i)) + + # x <- inv(L') * x + for j, vals in sorted(updates_j.items(), reverse=True): + madr_ij, i = jp.array(vals).T + x = x.at[j].add(-jp.sum(d.qLD[madr_ij] * x[i])) + + # x <- inv(D) * x + x = x * d.qLDiagInv + + # x <- inv(L) * x + for i, vals in sorted(updates_i.items()): + madr_ij, j = jp.array(vals).T + x = x.at[i].add(-jp.sum(d.qLD[madr_ij] * x[j])) + + return x + + +def dense_m(m: Model, d: Data) -> jax.Array: + """Reconstitute dense mass matrix from qM.""" + + is_, js, madr_ijs = [], [], [] + for i in range(m.nv): + madr_ij, j = m.dof_Madr[i], i + + while True: + madr_ij, j = madr_ij + 1, m.dof_parentid[j] + if j == -1: + break + is_, js, madr_ijs = is_ + [i], js + [j], madr_ijs + [madr_ij] + + i, j, madr_ij = (jp.array(x, dtype=jp.int32) for x in (is_, js, madr_ijs)) + + mat = jp.zeros((m.nv, m.nv)).at[(i, j)].set(d.qM[madr_ij]) + + # diagonal, upper triangular, lower triangular + mat = jp.diag(d.qM[jp.array(m.dof_Madr)]) + mat + mat.T + + return mat + + +def mul_m(m: Model, d: Data, vec: jax.Array) -> jax.Array: + """Multiply vector by inertia matrix.""" + + diag_mul = d.qM[jp.array(m.dof_Madr)] * vec + + is_, js, madr_ijs = [], [], [] + for i in range(m.nv): + madr_ij, j = m.dof_Madr[i], i + + while True: + madr_ij, j = madr_ij + 1, m.dof_parentid[j] + if j == -1: + break + is_, js, madr_ijs = is_ + [i], js + [j], madr_ijs + [madr_ij] + + i, j, madr_ij = (jp.array(x, dtype=jp.int32) for x in (is_, js, madr_ijs)) + + out = diag_mul.at[i].add(d.qM[madr_ij] * vec[j]) + out = out.at[j].add(d.qM[madr_ij] * vec[i]) + + return out + + +def com_vel(m: Model, d: Data) -> Data: + """Computes cvel, cdof_dot.""" + + # forward scan down tree: accumulate link center of mass velocity + def fn(parent, jnt_typs, cdof, qvel): + cvel = jp.zeros((6,)) if parent is None else parent[0] + + cross_fn = jax.vmap(math.motion_cross, in_axes=(None, 0)) + cdof_x_qvel = jax.vmap(jp.multiply)(cdof, qvel) + + dof_beg = 0 + cdof_dots = [] + for jnt_typ in jnt_typs: + dof_end = dof_beg + JointType(jnt_typ).dof_width() + if jnt_typ == JointType.FREE: + cvel += jp.sum(cdof_x_qvel[:3], axis=0) + cdof_ang_dot = cross_fn(cvel, cdof[3:]) + cvel += jp.sum(cdof_x_qvel[3:], axis=0) + cdof_dots.append(jp.concatenate((jp.zeros((3, 6)), cdof_ang_dot))) + else: + cdof_dots.append(cross_fn(cvel, cdof[dof_beg:dof_end])) + cvel += jp.sum(cdof_x_qvel[dof_beg:dof_end], axis=0) + dof_beg = dof_end + + cdof_dot = jp.concatenate(cdof_dots) if cdof_dots else jp.empty((0, 6)) + return cvel, cdof_dot + + cvel, cdof_dot = scan.body_tree( + m, + fn, + 'jvv', + 'bv', + m.jnt_type, + d.cdof, + d.qvel, + ) + + d = d.replace(cvel=cvel, cdof_dot=cdof_dot) + + return d + + +def rne(m: Model, d: Data) -> Data: + """Computes inverse dynamics using the recursive Newton-Euler algorithm.""" + # forward scan over tree: accumulate link center of mass acceleration + def cacc_fn(cacc, cdof_dot, qvel): + if cacc is None: + if m.opt.disableflags & DisableBit.GRAVITY: + cacc = jp.zeros((6,)) + else: + cacc = jp.concatenate((jp.zeros((3,)), -m.opt.gravity)) + + cacc += jp.sum(jax.vmap(jp.multiply)(cdof_dot, qvel), axis=0) + + return cacc + + cacc = scan.body_tree(m, cacc_fn, 'vv', 'b', d.cdof_dot, d.qvel) + + def frc(cinert, cacc, cvel): + frc = math.inert_mul(cinert, cacc) + frc += math.motion_cross_force(cvel, math.inert_mul(cinert, cvel)) + + return frc + + loc_cfrc = jax.vmap(frc)(d.cinert, cacc, d.cvel) + + # backward scan up tree: accumulate body forces + def cfrc_fn(cfrc_child, cfrc): + if cfrc_child is not None: + cfrc += cfrc_child + return cfrc + + cfrc = scan.body_tree(m, cfrc_fn, 'b', 'b', loc_cfrc, reverse=True) + qfrc_bias = jax.vmap(jp.dot)(d.cdof, cfrc[jp.array(m.dof_bodyid)]) + + d = d.replace(qfrc_bias=qfrc_bias) + + return d + + +def transmission(m: Model, d: Data) -> Data: + """Computes actuator/transmission lengths and moments.""" + if not m.nu: + return d + + def fn(gear, jnt_typ, m_i, m_j, qpos): + # handles joint transmissions only + if jnt_typ == JointType.FREE: + length = jp.zeros(1) + moment = gear + m_i = jp.repeat(m_i, 6) + m_j = m_j + jp.arange(6) + elif jnt_typ == JointType.BALL: + axis, _ = math.quat_to_axis_angle(qpos) + length = jp.dot(axis, gear[:3])[None] + moment = gear[:3] + m_i = jp.repeat(m_i, 3) + m_j = m_j + jp.arange(3) + elif jnt_typ in (JointType.SLIDE, JointType.HINGE): + length = qpos * gear[0] + moment = gear[:1] + m_i, m_j = m_i[None], m_j[None] + else: + raise RuntimeError(f'unrecognized joint type: {jnt_typ}') + return length, moment, m_i, m_j + + length, m_val, m_i, m_j = scan.flat( + m, + fn, + 'ujujq', + 'uvvv', + m.actuator_gear, + m.jnt_type, + jp.arange(m.nu), + jp.array(m.jnt_dofadr), + d.qpos, + group_by='u', + ) + moment = jp.zeros((m.nu, m.nv)).at[m_i, m_j].set(m_val) + d = d.replace(actuator_length=length.squeeze(), actuator_moment=moment) + return d diff --git a/mjx/mujoco/mjx/_src/smooth_test.py b/mjx/mujoco/mjx/_src/smooth_test.py new file mode 100644 index 00000000..4cdfc6ce --- /dev/null +++ b/mjx/mujoco/mjx/_src/smooth_test.py @@ -0,0 +1,166 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for smooth dynamics functions.""" + +from absl.testing import absltest +from absl.testing import parameterized +import jax +from jax import numpy as jp +import mujoco +from mujoco import mjx +from mujoco.mjx._src import test_util +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import DisableBit +# pylint: enable=g-importing-member +import numpy as np + + +def _assert_eq(a, b, name, step, fname, atol=1e-5, rtol=1e-5): + err_msg = f'mismatch: {name} at step {step} in {fname}' + np.testing.assert_allclose(a, b, err_msg=err_msg, atol=atol, rtol=rtol) + + +def _assert_attr_eq(a, b, attr, step, fname, atol=1e-5, rtol=1e-5): + err_msg = f'mismatch: {attr} at step {step} in {fname}' + a, b = getattr(a, attr), getattr(b, attr) + np.testing.assert_allclose(a, b, err_msg=err_msg, atol=atol, rtol=rtol) + + +class SmoothTest(parameterized.TestCase): + + @parameterized.parameters(enumerate(test_util.TEST_FILES)) + def test_smooth(self, seed, fname): + """Tests mujoco mj smooth functions match mujoco_mjx smooth functions.""" + if fname in ('convex.xml', 'weld.xml'): + return + + np.random.seed(seed) + + m = test_util.load_test_file(fname) + d = mujoco.MjData(m) + + kinematics_jit_fn = jax.jit(mjx.kinematics) + com_pos_jit_fn = jax.jit(mjx.com_pos) + crb_jit_fn = jax.jit(mjx.crb) + factor_m_fn = jax.jit(mjx.factor_m) + com_vel_jit_fn = jax.jit(mjx.com_vel) + rne_jit_fn = jax.jit(mjx.rne) + mul_m_jit_fn = jax.jit(mjx.mul_m) + transmission_jit_fn = jax.jit(mjx.transmission) + + mx = mjx.device_put(m) + dx = mjx.make_data(mx) + + # give the system a little kick to ensure we have non-identity rotations + d.qvel = np.random.random(m.nv) + for i in range(100): + qpos, qvel = d.qpos.copy(), d.qvel.copy() + mujoco.mj_step(m, d) + + # kinematics + dx = kinematics_jit_fn(mx, dx.replace(qpos=qpos, qvel=qvel)) + _assert_attr_eq(d, dx, 'xanchor', i, fname) + _assert_attr_eq(d, dx, 'xaxis', i, fname) + _assert_attr_eq(d, dx, 'xpos', i, fname) + _assert_attr_eq(d, dx, 'xquat', i, fname) + _assert_eq(d.xmat.reshape((-1, 3, 3)), dx.xmat, 'xmat', i, fname) + _assert_attr_eq(d, dx, 'xipos', i, fname) + _assert_eq(d.ximat.reshape((-1, 3, 3)), dx.ximat, 'ximat', i, fname) + _assert_attr_eq(d, dx, 'geom_xpos', i, fname) + _assert_eq( + d.geom_xmat.reshape((-1, 3, 3)), + dx.geom_xmat, + 'geom_xmat', + i, + fname, + ) + + # com_pos + dx = com_pos_jit_fn(mx, dx) + _assert_attr_eq(d, dx, 'subtree_com', i, fname) + _assert_attr_eq(d, dx, 'cinert', i, fname) + _assert_attr_eq(d, dx, 'cdof', i, fname) + + # crb + dx = crb_jit_fn(mx, dx) + _assert_attr_eq(d, dx, 'crb', i, fname) + _assert_attr_eq(d, dx, 'qM', i, fname) + + # factor_m + dx = factor_m_fn(mx, dx, dx.qM) + _assert_attr_eq(d, dx, 'qLD', i, fname, atol=1e-3) + _assert_attr_eq(d, dx, 'qLDiagInv', i, fname, atol=1e-3, rtol=1e-4) + + # com_vel + dx = com_vel_jit_fn(mx, dx) + _assert_attr_eq(d, dx, 'cvel', i, fname) + _assert_attr_eq(d, dx, 'cdof_dot', i, fname) + + # rne + dx = rne_jit_fn(mx, dx) + _assert_attr_eq(d, dx, 'qfrc_bias', i, fname, atol=1e-4) + + # mul_m (auxilliary function, not part of smooth step) + vec = np.random.random(m.nv) + mjx_vec = mul_m_jit_fn(mx, dx, jp.array(vec)) + mj_vec = np.zeros(m.nv) + mujoco.mj_mulM(m, d, mj_vec, vec) + _assert_eq(mj_vec, mjx_vec, 'mul_m', i, fname, atol=1e-4) + + # transmission + dx = transmission_jit_fn(mx, dx) + _assert_attr_eq(d, dx, 'actuator_length', i, fname) + _assert_attr_eq(d, dx, 'actuator_moment', i, fname) + + +class DisableGravityTest(absltest.TestCase): + + def test_disabled(self): + m = mujoco.MjModel.from_xml_string(""" + + + """) + mx = mjx.device_put(m) + d = mujoco.MjData(m) + dx = mjx.device_put(d) + + # test with gravity + step_jit_fn = jax.jit(mjx.step) + dx = step_jit_fn(mx, dx) + np.testing.assert_array_almost_equal( + dx.qpos, np.array([0.0, 0.0, -9.81e-4, 1.0, 0.0, 0.0, 0.0]), decimal=7 + ) + + # test with gravity disabled + mx = mx.tree_replace( + {'opt.disableflags': mx.opt.disableflags | DisableBit.GRAVITY} + ) + dx = mjx.device_put(d) + step_jit_fn = jax.jit(mjx.step) + dx = step_jit_fn(mx, dx) + np.testing.assert_equal( + dx.qpos, np.array([0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0]) + ) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/solver.py b/mjx/mujoco/mjx/_src/solver.py new file mode 100644 index 00000000..0aefd027 --- /dev/null +++ b/mjx/mujoco/mjx/_src/solver.py @@ -0,0 +1,356 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""CG and Newton solvers.""" + +from typing import Optional + +import jax +from jax import numpy as jp +import mujoco +from mujoco.mjx._src import math +from mujoco.mjx._src import smooth +# pylint: disable=g-importing-member +from mujoco.mjx._src.dataclasses import PyTreeNode +from mujoco.mjx._src.types import Data +from mujoco.mjx._src.types import DisableBit +from mujoco.mjx._src.types import Model +# pylint: enable=g-importing-member + + +class _CGContext(PyTreeNode): + """Data updated during each cg solver iteration. + + Attributes: + qacc: acceleration (from Data) (nv,) + qfrc_constraint: constraint force (from Data) (nv,) + Jaref: Jac*qacc - aref (nefc,) + efc_force: constraint force in constraint space (nefc,) + M: dense mass matrix, populated for nv < 100 (nv, nv) + Ma: M*qacc (nv,) + grad: gradient of master cost (nv,) + Mgrad: M / grad (nv,) + search: linesearch vector (nv,) + gauss: gauss Cost + cost: constraint + Gauss cost + prev_cost: cost from previous cg iter + solver_niter: number of solver iterations + """ + + qacc: jax.Array + qfrc_constraint: jax.Array + Jaref: jax.Array # pylint: disable=invalid-name + efc_force: jax.Array + M: Optional[jax.Array] + Ma: jax.Array # pylint: disable=invalid-name + grad: jax.Array + Mgrad: jax.Array # pylint: disable=invalid-name + search: jax.Array + gauss: jax.Array + cost: jax.Array + prev_cost: jax.Array + solver_niter: jax.Array + + @classmethod + def create(cls, m: Model, d: Data, grad: bool = True) -> '_CGContext': + jaref = d.efc_J @ d.qacc - d.efc_aref + # TODO(robotics-team): determine nv at which sparse mul is faster + M = smooth.dense_m(m, d) if m.nv < 100 else None # pylint: disable=invalid-name + ma = smooth.mul_m(m, d, d.qacc) if M is None else M @ d.qacc + nv_0 = jp.zeros((m.nv,)) + ctx = _CGContext( + qacc=d.qacc, + qfrc_constraint=d.qfrc_constraint, + Jaref=jaref, + efc_force=-jaref * d.efc_D, + M=M, + Ma=ma, + grad=nv_0, + Mgrad=nv_0, + search=nv_0, + gauss=0.0, + cost=jp.inf, + prev_cost=0.0, + solver_niter=0, + ) + ctx = _cg_update_constraint(m, d, ctx) + if grad: + ctx = _cg_update_gradient(m, d, ctx) + ctx = ctx.replace(search=-ctx.Mgrad) # start with preconditioned gradient + + return ctx + + +class _LSPoint(PyTreeNode): + """Line search evaluation point. + + Attributes: + alpha: step size that reduces f(x + alpha * p) given search direction p + cost: line search cost + deriv_0: first derivative of quadratic + deriv_1: second derivative of quadratic + """ + + alpha: jax.Array + cost: jax.Array + deriv_0: jax.Array + deriv_1: jax.Array + + @classmethod + def create( + cls, + ctx: _CGContext, + alpha: jax.Array, + jv: jax.Array, + quad: jax.Array, + quad_gauss: jax.Array, + ) -> '_LSPoint': + """Creates a linesearch point with first and second derivatives.""" + # roughly corresponds to CGEval in mujoco/src/engine/engine_solver.c + + # TODO(robotics-team): change this to support equality, friction constraints + active = (ctx.Jaref + alpha * jv) < 0 + quad = jax.vmap(jp.multiply)(quad, active) # only active + quad_total = quad_gauss + jp.sum(quad, axis=0) + + cost = alpha * alpha * quad_total[2] + alpha * quad_total[1] + quad_total[0] + deriv_0 = 2 * alpha * quad_total[2] + quad_total[1] + deriv_1 = 2 * quad_total[2] + return _LSPoint(alpha=alpha, cost=cost, deriv_0=deriv_0, deriv_1=deriv_1) + + +class _LSContext(PyTreeNode): + """Data updated during each cg line search iteration. + + Attributes: + lo: low point bounding the line search interval + hi: high point bounding the line search interval + swap: True if low or hi was swapped in the line search iteration + ls_iter: number of linesearch iterations + """ + + lo: _LSPoint + hi: _LSPoint + swap: jax.Array + ls_iter: jax.Array + + +def _while_loop_scan(cond_fun, body_fun, init_val, max_iter): + """Scan-based implementation (jit ok, reverse-mode autodiff ok).""" + def _iter(val): + next_val = body_fun(val) + next_cond = cond_fun(next_val) + return next_val, next_cond + + def _fun(tup, it): + val, cond = tup + # When cond is met, we start doing no-ops. + return jax.lax.cond(cond, _iter, lambda x: (x, False), val), it + + init = (init_val, cond_fun(init_val)) + return jax.lax.scan(_fun, init, None, length=max_iter)[0][0] + + +def _cg_update_constraint(m: Model, d: Data, ctx: _CGContext) -> _CGContext: + """Updates constraint force and resulting cost given latst CG iteration. + + Corresponds to CGupdateConstraint in mujoco/src/engine/engine_solver.c + + Args: + m: model defining constraints + d: data which contains latest qacc and smooth terms + ctx: current CG context + + Returns: + context with new constraint force and costs + """ + del m + + # TODO(robotics-team): add equality, friction constraints + # also consider moving to _constraint.py to match mujoco layout + + jaref = ctx.Jaref * (ctx.Jaref < 0) # non-negative constraints + efc_force = -jaref * d.efc_D + qfrc_constraint = d.efc_J.T @ efc_force + gauss = 0.5 * jp.dot(ctx.Ma - d.qfrc_smooth, ctx.qacc - d.qacc_smooth) + cost = 0.5 * jp.sum(jaref * jaref * d.efc_D) + gauss + + ctx = ctx.replace( + qfrc_constraint=qfrc_constraint, + gauss=gauss, + cost=cost, + prev_cost=ctx.cost, + efc_force=efc_force, + ) + + return ctx + + +def _cg_update_gradient(m: Model, d: Data, ctx: _CGContext) -> _CGContext: + """Updates grad and M / grad given latest CG iteration. + + Corresponds to CGupdateGradient in mujoco/src/engine/engine_solver.c + + Args: + m: model defining constraints + d: data which contains latest smooth terms + ctx: current CG contet + + Returns: + context with new grad and M / grad + """ + + grad = ctx.Ma - d.qfrc_smooth - ctx.qfrc_constraint + mgrad = smooth.solve_m(m, d, grad) + + ctx = ctx.replace(grad=grad, Mgrad=mgrad) + + return ctx + + +def _rescale(m: Model, value: jax.Array) -> jax.Array: + return value / (m.stat.meaninertia * max(1, m.nv)) + + +def _cg_search(m: Model, d: Data, ctx: _CGContext) -> _CGContext: + """Performs a zoom linesearch to find optimal search step size. + + Args: + m: model defining search options and other needed terms + d: data with inertia matrix and other needed terms + ctx: current CG context + + Returns: + updated context with new qacc, Ma, Jaref + """ + smag = math.norm(ctx.search) * m.stat.meaninertia * max(1, m.nv) + gtol = m.opt.tolerance * m.opt.ls_tolerance * smag + + # compute Mv, Jv + mv = smooth.mul_m(m, d, ctx.search) if ctx.M is None else ctx.M @ ctx.search + jv = d.efc_J @ ctx.search + + # prepare quadratics + quad_gauss = jp.stack(( + ctx.gauss, + jp.dot(ctx.search, ctx.Ma) - jp.dot(ctx.search, d.qfrc_smooth), + 0.5 * jp.dot(ctx.search, mv), + )) + quad = jp.stack((0.5 * ctx.Jaref * ctx.Jaref, jv * ctx.Jaref, 0.5 * jv * jv)) + quad = (quad * d.efc_D).T + + point_fn = lambda alpha: _LSPoint.create(ctx, alpha, jv, quad, quad_gauss) + + def cond(ctx: _LSContext) -> jax.Array: + done = ctx.ls_iter >= m.opt.ls_iterations + done |= ~ctx.swap # if we did not adjust the interval + done |= (ctx.lo.deriv_0 < 0) & (ctx.lo.deriv_0 > -gtol) + done |= (ctx.hi.deriv_0 > 0) & (ctx.hi.deriv_0 < gtol) + + return ~done + + def body(ctx: _LSContext) -> _LSContext: + # always compute new bracket boundaries and a midpoint + lo, hi = ctx.lo, ctx.hi + lo_next = point_fn(lo.alpha - lo.deriv_0 / lo.deriv_1) + hi_next = point_fn(hi.alpha - hi.deriv_0 / hi.deriv_1) + mid = point_fn(0.5 * (lo.alpha + hi.alpha)) + + # we swap lo/hi if: + # 1) they are not correctly at a bracket boundary (e.g. lo.deriv_0 > 0), OR + # 2) if moving to next or mid narrows the bracket + swap_lo_next = (lo.deriv_0 > 0) | (lo.deriv_0 < lo_next.deriv_0) + lo = jax.tree_map(lambda x, y: jp.where(swap_lo_next, y, x), lo, lo_next) + swap_lo_mid = (mid.deriv_0 < 0) & (lo.deriv_0 < mid.deriv_0) + lo = jax.tree_map(lambda x, y: jp.where(swap_lo_mid, y, x), lo, mid) + + swap_hi_next = (hi.deriv_0 < 0) | (hi.deriv_0 > hi_next.deriv_0) + hi = jax.tree_map(lambda x, y: jp.where(swap_hi_next, y, x), hi, hi_next) + swap_hi_mid = (mid.deriv_0 > 0) & (hi.deriv_0 > mid.deriv_0) + hi = jax.tree_map(lambda x, y: jp.where(swap_hi_mid, y, x), hi, mid) + + swap = swap_lo_next | swap_lo_mid | swap_hi_next | swap_hi_mid + + ctx = ctx.replace(lo=lo, hi=hi, swap=swap, ls_iter=ctx.ls_iter + 1) + + return ctx + + # initialize interval + p0 = point_fn(jp.array(0.0)) + lo = point_fn(p0.alpha - p0.deriv_0 / p0.deriv_1) + lesser_fn = lambda x, y: jp.where(lo.deriv_0 < p0.deriv_0, x, y) + hi = jax.tree_map(lesser_fn, p0, lo) + lo = jax.tree_map(lesser_fn, lo, p0) + ls_ctx = _LSContext(lo=lo, hi=hi, swap=jp.array(True), ls_iter=0) + ls_ctx = _while_loop_scan(cond, body, ls_ctx, m.opt.ls_iterations) + + # move to new solution if improved + lo, hi = ls_ctx.lo, ls_ctx.hi + improved = (lo.cost < p0.cost) | (hi.cost < p0.cost) + alpha = jp.where(lo.cost < hi.cost, lo.alpha, hi.alpha) + qacc = ctx.qacc + improved * ctx.search * alpha + ma = ctx.Ma + improved * mv * alpha + jaref = ctx.Jaref + improved * jv * alpha + + ctx = ctx.replace(qacc=qacc, Ma=ma, Jaref=jaref) + + return ctx + + +def cg_solve(m: Model, d: Data) -> Data: + """Finds forces that satisfy constraints using conjugate gradient descent.""" + + def cond(ctx: _CGContext) -> jax.Array: + improvement = _rescale(m, ctx.prev_cost - ctx.cost) + gradient = _rescale(m, math.norm(ctx.grad)) + + done = ctx.solver_niter >= m.opt.iterations + done |= improvement < m.opt.tolerance + done |= gradient < m.opt.tolerance + + return ~done + + def body(ctx: _CGContext) -> _CGContext: + ctx = _cg_search(m, d, ctx) + prev_grad, prev_Mgrad = ctx.grad, ctx.Mgrad # pylint: disable=invalid-name + ctx = _cg_update_constraint(m, d, ctx) + ctx = _cg_update_gradient(m, d, ctx) + + # polak-ribiere: + beta = jp.dot(ctx.grad, ctx.Mgrad - prev_Mgrad) + beta = beta / jp.maximum(mujoco.mjMINVAL, jp.dot(prev_grad, prev_Mgrad)) + beta = jp.maximum(0, beta) + search = -ctx.Mgrad + beta * ctx.search + ctx = ctx.replace(search=search, solver_niter=ctx.solver_niter + 1) + + return ctx + + # warmstart: + qacc = d.qacc_smooth + if not m.opt.disableflags & DisableBit.WARMSTART: + warm = _CGContext.create(m, d.replace(qacc=d.qacc_warmstart), grad=False) + smth = _CGContext.create(m, d.replace(qacc=d.qacc_smooth), grad=False) + qacc = jp.where(warm.cost < smth.cost, d.qacc_warmstart, d.qacc_smooth) + d = d.replace(qacc=qacc) + + ctx = jax.lax.while_loop(cond, body, _CGContext.create(m, d)) + + d = d.replace( + qacc_warmstart=ctx.qacc, + qacc=ctx.qacc, + qfrc_constraint=ctx.qfrc_constraint, + efc_force=ctx.efc_force, + ) + + return d diff --git a/mjx/mujoco/mjx/_src/solver_test.py b/mjx/mujoco/mjx/_src/solver_test.py new file mode 100644 index 00000000..6a4f7792 --- /dev/null +++ b/mjx/mujoco/mjx/_src/solver_test.py @@ -0,0 +1,130 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for forward functions.""" + +from absl.testing import absltest +from absl.testing import parameterized +from etils import epath +import jax +import mujoco +from mujoco import mjx +import numpy as np + + +def _assert_attr_eq(a, b, attr, step, fname, atol=1e-2, rtol=1e-2): + err_msg = f'mismatch: {attr} at step {step} in {fname}' + a, b = getattr(a, attr), getattr(b, attr) + np.testing.assert_allclose(a, b, err_msg=err_msg, atol=atol, rtol=rtol) + + +class Solver64Test(parameterized.TestCase): + """Tests solvers at 64 bit precision.""" + + def setUp(self): + super().setUp() + jax.config.update('jax_enable_x64', True) + + def tearDown(self): + super().tearDown() + jax.config.update('jax_enable_x64', False) + + @parameterized.parameters(enumerate(('ant.xml', 'humanoid.xml'))) + def test_cg(self, seed, fname): + """Test mjx cg solver matches mujoco cg solver at 64 bit precision.""" + f = epath.resource_path('mujoco.mjx') / 'test_data' / fname + m = mujoco.MjModel.from_xml_string(f.read_text()) + d = mujoco.MjData(m) + mx = mjx.device_put(m) + + jax.config.update('jax_enable_x64', True) + forward_jit_fn = jax.jit(mjx.forward) + + # give the system a little kick to ensure we have non-identity rotations + np.random.seed(seed) + d.qvel = 0.01 * np.random.random(m.nv) + + for i in range(100): + # in order to avoid re-jitting, reuse the same mj_data shape + save = d.qpos, d.qvel, d.time, d.qacc_warmstart, d.qacc_smooth + d = mujoco.MjData(m) + d.qpos, d.qvel, d.time, d.qacc_warmstart, d.qacc_smooth = save + dx = mjx.device_put(d) + + mujoco.mj_step(m, d) + dx = forward_jit_fn(mx, dx) + + # at 64 bits the solutions returned by the two solvers are quite close + self.assertLessEqual(dx.solver_niter[0], d.solver_niter[0]) + _assert_attr_eq(d, dx, 'qfrc_constraint', i, fname) + _assert_attr_eq(d, dx, 'qacc', i, fname) + + +class SolverTest(parameterized.TestCase): + + @parameterized.parameters(enumerate(('ant.xml', 'humanoid.xml'))) + def test_cg(self, seed, fname): + """Test mjx cg solver is close to mj at 32 bit precision. + + Args: + seed: int + fname: file to test + + At lower float resolution there's wiggle room in valid forces that satisfy + constraints. So instead let's mainly validate that mjx is finding solutions + with as good cost as mujoco, even if the resulting forces/accelerations + are not quite the same. + """ + f = epath.resource_path('mujoco.mjx') / 'test_data' / fname + m = mujoco.MjModel.from_xml_string(f.read_text()) + d = mujoco.MjData(m) + mx = mjx.device_put(m) + + forward_jit_fn = jax.jit(mjx.forward) + + # give the system a little kick to ensure we have non-identity rotations + np.random.seed(seed) + d.qvel = 0.01 * np.random.random(m.nv) + + for i in range(100): + # in order to avoid re-jitting, reuse the same mj_data shape + save = d.qpos, d.qvel, d.time, d.qacc_warmstart, d.qacc_smooth + d = mujoco.MjData(m) + d.qpos, d.qvel, d.time, d.qacc_warmstart, d.qacc_smooth = save + dx = mjx.device_put(d) + + mujoco.mj_step(m, d) + dx = forward_jit_fn(mx, dx) + + def cost(qacc): + jaref = np.zeros(d.nefc) + mujoco.mj_mulJacVec(m, d, jaref, qacc) + jaref -= d.efc_aref + cost = np.array([0.0]) + mujoco.mj_constraintUpdate(m, d, jaref, cost, 0) + return cost[0] + + cost_mj, cost_mjx = cost(d.qacc), cost(dx.qacc) + + self.assertLessEqual( + cost_mjx, + cost_mj * 1.01, + msg=f'mismatch: {fname} at step {i}, cost too high', + ) + _assert_attr_eq(d, dx, 'qfrc_constraint', i, fname, atol=1e-1, rtol=1e-1) + _assert_attr_eq(d, dx, 'qacc', i, fname, atol=1e-1, rtol=1e-1) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/support.py b/mjx/mujoco/mjx/_src/support.py new file mode 100644 index 00000000..cfbdfadf --- /dev/null +++ b/mjx/mujoco/mjx/_src/support.py @@ -0,0 +1,81 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Engine support functions.""" + +from typing import Tuple + +import jax +from jax import numpy as jp +from mujoco.mjx._src import scan +# pylint: disable=g-importing-member +from mujoco.mjx._src.types import Data +from mujoco.mjx._src.types import Model +# pylint: enable=g-importing-member + + +def jac( + m: Model, d: Data, point: jax.Array, body_id: jax.Array +) -> Tuple[jax.Array, jax.Array]: + """Compute pair of (NV, 3) Jacobians of global point attached to body.""" + fn = lambda carry, b: b if carry is None else b + carry + mask = (jp.arange(m.nbody) == body_id) * 1 + mask = scan.body_tree(m, fn, 'b', 'b', mask, reverse=True) + mask = mask[jp.array(m.dof_bodyid)] > 0 + + offset = point - d.subtree_com[jp.array(m.body_rootid)[body_id]] + jacp = jax.vmap(lambda a, b=offset: a[3:] + jp.cross(a[:3], b))(d.cdof) + jacp = jax.vmap(jp.multiply)(jacp, mask) + jacr = jax.vmap(jp.multiply)(d.cdof[:, :3], mask) + + return jacp, jacr + + +def jac_dif_pair( + m: Model, + d: Data, + pos: jax.Array, + body_1: jax.Array, + body_2: jax.Array, +) -> jax.Array: + """Compute Jacobian difference for two body points.""" + jacp2, _ = jac(m, d, pos, body_2) + jacp1, _ = jac(m, d, pos, body_1) + return jacp2 - jacp1 + + +def apply_ft( + m: Model, + d: Data, + force: jax.Array, + torque: jax.Array, + point: jax.Array, + body_id: jax.Array, +) -> jax.Array: + """Apply Cartesian force and torque.""" + jacp, jacr = jac(m, d, point, body_id) + return jacp @ force + jacr @ torque + + +def xfrc_accumulate(m: Model, d: Data) -> jax.Array: + """Accumulate xfrc_applied into a qfrc.""" + qfrc = jax.vmap(apply_ft, in_axes=(None, None, 0, 0, 0, 0))( + m, + d, + d.xfrc_applied[:, :3], + d.xfrc_applied[:, 3:], + d.xipos, + jp.arange(m.nbody), + ) + return jp.sum(qfrc, axis=0) diff --git a/mjx/mujoco/mjx/_src/support_test.py b/mjx/mujoco/mjx/_src/support_test.py new file mode 100644 index 00000000..fe88fc84 --- /dev/null +++ b/mjx/mujoco/mjx/_src/support_test.py @@ -0,0 +1,81 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for support.""" + +from absl.testing import absltest +from absl.testing import parameterized +import jax +from jax import numpy as jp +import mujoco +from mujoco import mjx +from mujoco.mjx._src import support +from mujoco.mjx._src import test_util +import numpy as np + + +class SupportTest(parameterized.TestCase): + + @parameterized.parameters(set(test_util.TEST_FILES) - {'convex.xml'}) + def test_jac(self, fname): + np.random.seed(0) + + m = test_util.load_test_file(fname) + d = mujoco.MjData(m) + mujoco.mj_step(m, d) + mx = mjx.device_put(m) + dx = mjx.device_put(d) + point = np.random.randn(3) + body = np.random.choice(m.nbody) + jacp, jacr = jax.jit(support.jac)(mx, dx, point, body) + + jacp_expected, jacr_expected = np.zeros((3, m.nv)), np.zeros((3, m.nv)) + mujoco.mj_jac(m, d, jacp_expected, jacr_expected, point, body) + np.testing.assert_almost_equal(jacp, jacp_expected.T, 6) + np.testing.assert_almost_equal(jacr, jacr_expected.T, 6) + + def test_xfrc_accumulate(self): + """Tests that xfrc_accumulate ouput matches mj_xfrcAccumulate.""" + np.random.seed(0) + + m = test_util.load_test_file('ant.xml') + d = mujoco.MjData(m) + mujoco.mj_step(m, d) + mx = mjx.device_put(m) + dx = mjx.device_put(d) + self.assertFalse((dx.xipos == 0.0).all()) + + xfrc = np.random.rand(*dx.xfrc_applied.shape) + + d.xfrc_applied[:] = xfrc + dx = dx.replace(xfrc_applied=jp.array(xfrc)) + + qfrc = jax.jit(support.xfrc_accumulate)(mx, dx) + qfrc_expected = np.zeros(m.nv) + for i in range(1, m.nbody): + mujoco.mj_applyFT( + m, + d, + d.xfrc_applied[i, :3], + d.xfrc_applied[i, 3:], + d.xipos[i], + i, + qfrc_expected, + ) + + np.testing.assert_almost_equal(qfrc, qfrc_expected, 6) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/test_util.py b/mjx/mujoco/mjx/_src/test_util.py new file mode 100644 index 00000000..5ac50816 --- /dev/null +++ b/mjx/mujoco/mjx/_src/test_util.py @@ -0,0 +1,340 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Utilities for testing.""" + +import sys +from typing import Dict, List, Tuple +from xml.etree import ElementTree as ET + +from etils import epath +import mujoco +import numpy as np + +TEST_FILES: List[str] = [ + 'ant.xml', + 'ball_pendulum.xml', + 'cherry_pendulum.xml', + 'convex.xml', + 'humanoid.xml', + 'mixed_joint_pendulum.xml', + 'single_pendulum.xml', + 'slide_pendulum.xml', + 'triple_pendulum.xml', + 'triple_pendulum_free.xml', + 'weld.xml', +] + +_ACTUATOR_TYPES = ['motor', 'velocity', 'position', 'general', 'intvelocity'] +_JOINT_TYPES = ['free', 'hinge', 'slide', 'ball'] +_JOINT_AXES = ['1 0 0', '0 1 0', '0 0 1'] +_FRICTIONS = ['1.2 0.003 0.0002', '0.2 0.0001 0.0005'] +_KP_POS = ['1', '2'] +_KP_INTVEL = ['10000', '2000'] +_KV_VEL = ['123', '1'] +_PAIR_FRICTIONS = ['1.2 0.9 0.003 0.0002 0.0001'] +_SOLREFS = ['0.04 1.01', '0.05 1.02', '0.03 1.1', '0.015 1.0'] +_SOLIMPS = [ + '0.75 0.94 0.002 0.2 2', + '0.8 0.99 0.001 0.3 6', + '0.6 0.9 0.003 0.1 1', +] +_DIMS = ['3'] +_MARGINS = ['0.0', '0.01', '0.02'] +_GAPS = ['0.0', '0.005'] +_GEARS = ['20', '50', '100'] + + +def p(pct: int) -> bool: + assert 0 <= pct <= 100 + return np.random.uniform(low=0, high=100) < pct + + +def _make_joint(joint_type: str, name: str) -> Dict[str, str]: + """Returns attributes for a joint.""" + joint_attr = {'type': joint_type, 'name': name} + + if joint_type not in ('free', 'ball'): + joint_attr['axis'] = np.random.choice(_JOINT_AXES) + lb, ub = -np.random.uniform() * 90, np.random.uniform() * 90 + joint_attr['range'] = f'{lb:.2f} {ub:.2f}' + elif joint_type == 'ball': + joint_attr['axis'] = '1 0 0' + ub = np.random.uniform() * 90 + joint_attr['range'] = f'0.0 {ub:.2f}' + + if p(50) and joint_type != 'free': + lb, ub = -np.random.uniform(), np.random.uniform() + joint_attr['actuatorfrcrange'] = f'{lb:.2f} {ub:.2f}' + + if joint_type not in ('free',): + joint_attr['damping'] = '{:.2f}'.format(np.random.uniform() * 20) + joint_attr['stiffness'] = '{:.2f}'.format(np.random.uniform() * 20) + + return joint_attr + + +def _geom_solparams( + pair: bool = False, enable_contact: bool = True +) -> Dict[str, str]: + """Returns geom solver parameters.""" + params = { + 'contype': np.random.choice(['0', '1']) if enable_contact else '0', + 'conaffinity': np.random.choice(['0', '1']) if enable_contact else '0', + 'priority': np.random.choice(['-1', '2']), + 'solmix': np.random.choice(['0.0', '1.6']), + 'friction': np.random.choice(_FRICTIONS), + 'condim': np.random.choice(_DIMS), + } + pair_params = { + 'solreffriction': np.random.choice(_SOLREFS), + 'friction': np.random.choice(_PAIR_FRICTIONS), + 'condim': np.random.choice(_DIMS), + } + params = pair_params if pair else params + params.update({ + 'solimp': np.random.choice(_SOLIMPS), + 'solref': np.random.choice(_SOLREFS), + 'margin': np.random.choice(_MARGINS), + 'gap': np.random.choice(_GAPS), + }) + + return params + + +def _make_geom( + pos: str, size: float, name: str, enable_contact: bool = True +) -> Dict[str, str]: + """Returns attributes for a sphere geom.""" + attr = { + 'pos': pos, + 'type': 'sphere', + 'name': name, + 'size': f'{size:.2f}', + 'mass': '1', + } + attr.update(_geom_solparams(pair=False, enable_contact=enable_contact)) + + return attr + + +def _make_actuator(actuator_type: str, joint: str) -> Dict[str, str]: + """Returns attributes for an actuator.""" + attr = {'joint': joint} + if actuator_type == 'motor': + attr['gear'] = np.random.choice(_GEARS) + elif actuator_type == 'position': + attr['kp'] = np.random.choice(_KP_POS) + elif actuator_type == 'general': + attr['biastype'] = 'affine' + attr['gainprm'] = '35 0 0' + attr['biasprm'] = '0 -35 -0.65' + elif actuator_type == 'intvelocity': + attr['kp'] = np.random.choice(_KP_INTVEL) + lb, ub = -np.random.uniform(), np.random.uniform() + attr['actrange'] = f'{lb:.2f} {ub:.2f}' + elif actuator_type == 'velocity': + attr['kv'] = np.random.choice(_KV_VEL) + + if p(50) and actuator_type != 'intvelocity': + lb, ub = -np.random.uniform(), np.random.uniform() + attr['ctrlrange'] = f'{lb:.2f} {ub:.2f}' + + if p(50): + lb, ub = -np.random.uniform(), np.random.uniform() + attr['forcerange'] = f'{lb*10:.2f} {ub*10:.2f}' + + return attr + + +def create_mjcf( + seed: int, + min_trees: int = 1, + max_trees: int = 1, + max_tree_depth: int = 5, + body_pos: Tuple[float, float, float] = (0.0, 0.0, -0.5), + geom_pos: Tuple[float, float, float] = (0.0, 0.0, 0.0), + max_stacked_joints=4, + max_geoms_per_body=2, + max_contact_excludes=1, + max_contact_pairs=4, + disable_actuation_pct: int = 0, + add_actuators: bool = False, + root_always_free: bool = False, + enable_contact: bool = True, +) -> str: + """Creates a random MJCF for testing. + + Args: + seed: seed for rng + min_trees: minimum number of kinematic trees to generate + max_trees: maximum number of kinematic trees to generate + max_tree_depth: the maximum tree depth + body_pos: the default body position relative to the parent + geom_pos: the default geom position in the body frame + max_stacked_joints: maximum number of joints to stack for each body + max_geoms_per_body: maximum number of geoms per body + max_contact_excludes: maximum number of bodies to exlude from contact + max_contact_pairs: maximum number of explicit geom contact pairs in the xml + disable_actuation_pct: the percentage of time to disable actuation via the + disable flag + add_actuators: whether to add actuators + root_always_free: if True, the root body of each kinematic tree has a free + joint with the world + enable_contact: if False, disables all contacts via contype/conaffinity + + Returns: + an XML string for the MuJoCo config + Raises: + AssertionError when args are not in the correct ranges + """ + np.random.seed(seed) + + assert min_trees <= max_trees + assert max_tree_depth >= 1 + assert 0 <= disable_actuation_pct <= 100 + assert max_stacked_joints >= 1 + assert max_geoms_per_body >= 1 + assert max_contact_excludes >= 1 + assert max_contact_pairs >= 1 + + mjcf = ET.Element('mujoco') + opt = ET.SubElement(mjcf, 'option', {'timestep': '0.005', 'solver': 'CG'}) + world = ET.SubElement(mjcf, 'worldbody') + ET.SubElement(mjcf, 'compiler', {'autolimits': 'true'}) + + # disable flags + if p(disable_actuation_pct): + ET.SubElement(opt, 'flag', {'actuation': 'disable'}) + + ET.SubElement( + world, + 'geom', + { + 'name': 'plane', + 'type': 'plane', + 'contype': '1' if enable_contact else '0', + 'conaffinity': '1' if enable_contact else '0', + 'size': '40 40 40', + }, + ) + + # kinematic trees + tree_depth = np.random.randint(1, max_tree_depth + 1) + + def make_tree(body: ET.Element, depth: int) -> None: + if depth >= tree_depth: + return + + z_pos = np.random.uniform(low=-1, high=1) * 0.01 # small jitter + pos = f'{body_pos[0]:.3f} {body_pos[1]:.3f} {body_pos[2] + z_pos:.3f}' + n_bodies = len(list(mjcf.iter('body'))) + child = ET.SubElement(body, 'body', {'pos': pos, 'name': f'body{n_bodies}'}) + + n_joints = len(list(mjcf.iter('joint'))) + for nj in range(np.random.randint(1, max_stacked_joints + 1)): + joint_type = np.random.choice(_JOINT_TYPES) + if nj == 0 and depth == 0 and root_always_free: + joint_type = 'free' + + # free joint only allowed at top level + while joint_type == 'free' and (depth > 0 or nj > 0): + joint_type = np.random.choice(_JOINT_TYPES) + + joint_attr = _make_joint(joint_type, name=f'joint{n_joints + nj}') + ET.SubElement(child, 'joint', joint_attr) + + prev_joints = child.findall('joint') + had_ball_or_free = any( + [j.get('type') in ('ball', 'free') for j in prev_joints] + ) + if had_ball_or_free: + break # do not stack more joints + + n_geoms = len(list(mjcf.iter('geom'))) + for _ in range(np.random.randint(1, max_geoms_per_body + 1)): + pos = ('{:.2f} ' * 3).format(*geom_pos).strip() + size = 0.2 + np.random.uniform(low=-1, high=1) * 0.02 + geom_attr = _make_geom( + pos, size, name=f'geom{n_geoms}', enable_contact=enable_contact + ) + ET.SubElement(child, 'geom', geom_attr) + n_geoms += 1 + + make_tree(child, depth + 1) + + num_trees = np.random.randint(min_trees, max_trees + 1) + for _ in range(num_trees): + make_tree(world, 0) + + # actuators + if add_actuators: + actuator = ET.SubElement(mjcf, 'actuator') + n_joints = len(list(mjcf.iter('joint'))) + nu = np.random.randint(1, n_joints + 1) + actuators = [] + for i in range(nu): + actuator_type = np.random.choice(_ACTUATOR_TYPES) + attr = _make_actuator(actuator_type, joint=f'joint{i}') + actuators.append((actuator_type, attr)) + + np.random.shuffle(actuators) + for typ, attr in actuators: + ET.SubElement(actuator, typ, attr) + + # contact pairs + contact = ET.SubElement(mjcf, 'contact') + geoms = list(mjcf.iter('geom')) + geom_names = [geom.get('name') for geom in geoms] + n_geoms = len(geoms) + pairs = set() + for _ in range(min(max_contact_pairs, n_geoms * (n_geoms - 1) // 2)): + if p(80): + continue + + geom1, geom2 = np.random.choice(geom_names, replace=False, size=2) + if geom1 > geom2: + geom1, geom2 = geom2, geom1 + + if (geom1, geom2) in pairs: + continue + + pairs.add((geom1, geom2)) + attr = {'geom1': geom1, 'geom2': geom2} + attr.update(_geom_solparams(pair=True)) + ET.SubElement(contact, 'pair', attr) + + # exclude contacts + bodies = list(mjcf.iter('body')) + body_names = [b.get('name') for b in bodies] + n_bodies = len(bodies) + for _ in range(min(max_contact_excludes, (n_bodies * (n_bodies - 1) // 2))): + if p(50): + continue + + body1, body2 = np.random.choice(body_names, replace=False, size=2) + ET.SubElement(contact, 'exclude', {'body1': body1, 'body2': body2}) + + # ElementTree.indent is not available before Python 3.9 + if sys.version_info.minor >= 9: + ET.indent(mjcf) + + return ET.tostring(mjcf).decode('utf-8') + + +def load_test_file(name: str) -> mujoco.MjModel: + """Loads a mujoco.MjModel based on the file name.""" + path = epath.resource_path('mujoco.mjx') / 'test_data' / name + m = mujoco.MjModel.from_xml_path(path.as_posix()) + return m diff --git a/mjx/mujoco/mjx/_src/test_util_test.py b/mjx/mujoco/mjx/_src/test_util_test.py new file mode 100644 index 00000000..e8d32dab --- /dev/null +++ b/mjx/mujoco/mjx/_src/test_util_test.py @@ -0,0 +1,38 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Tests for the test_util.""" + +from absl.testing import absltest +from etils import epath +from mujoco.mjx._src import test_util + + +class TestUtilTest(absltest.TestCase): + + def test_files_in_test_data_match(self): + directory = epath.resource_path('mujoco.mjx') / 'test_data' + files = set([f.name for f in directory.glob('*.xml')]) + self.assertSetEqual( + files, + set(test_util.TEST_FILES), + msg=( + '`_test_util.TEST_FILES` must match the files in the ' + 'test_data/*.xml directory' + ), + ) + + +if __name__ == '__main__': + absltest.main() diff --git a/mjx/mujoco/mjx/_src/types.py b/mjx/mujoco/mjx/_src/types.py new file mode 100644 index 00000000..bd3f9fe1 --- /dev/null +++ b/mjx/mujoco/mjx/_src/types.py @@ -0,0 +1,660 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Base types used in MJX.""" + +import enum +from typing import Sequence + +import jax +import jax.numpy as jp +import mujoco +# pylint: disable=g-importing-member +from mujoco.mjx._src.dataclasses import PyTreeNode +# pylint: enable=g-importing-member +import numpy as np + + +class DisableBit(enum.IntFlag): + """Disable default feature bitflags. + + Attributes: + CONSTRAINT: entire constraint solver + EQUALITY: equality constraints + FRICTIONLOSS: joint and tendon frictionloss constraints + LIMIT: joint and tendon limit constraints + CONTACT: contact constraints + PASSIVE: passive forces + GRAVITY: gravitational forces + CLAMPCTRL: clamp control to specified range + WARMSTART: warmstart constraint solver + ACTUATION: apply actuation forces + REFSAFE: integrator safety: make ref[0]>=2*timestep + """ + CONSTRAINT = mujoco.mjtDisableBit.mjDSBL_CONSTRAINT + EQUALITY = mujoco.mjtDisableBit.mjDSBL_EQUALITY + LIMIT = mujoco.mjtDisableBit.mjDSBL_LIMIT + CONTACT = mujoco.mjtDisableBit.mjDSBL_CONTACT + PASSIVE = mujoco.mjtDisableBit.mjDSBL_PASSIVE + GRAVITY = mujoco.mjtDisableBit.mjDSBL_GRAVITY + CLAMPCTRL = mujoco.mjtDisableBit.mjDSBL_CLAMPCTRL + WARMSTART = mujoco.mjtDisableBit.mjDSBL_WARMSTART + ACTUATION = mujoco.mjtDisableBit.mjDSBL_ACTUATION + REFSAFE = mujoco.mjtDisableBit.mjDSBL_REFSAFE + EULERDAMP = mujoco.mjtDisableBit.mjDSBL_EULERDAMP + FILTERPARENT = mujoco.mjtDisableBit.mjDSBL_FILTERPARENT + # unsupported: FRICTIONLOSS, SENSOR, MIDPHASE + + +class JointType(enum.IntEnum): + """Type of degree of freedom. + + Attributes: + FREE: global position and orientation (quat) (7,) + BALL: orientation (quat) relative to parent (4,) + SLIDE: sliding distance along body-fixed axis (1,) + HINGE: rotation angle (rad) around body-fixed axis (1,) + """ + FREE = mujoco.mjtJoint.mjJNT_FREE + BALL = mujoco.mjtJoint.mjJNT_BALL + SLIDE = mujoco.mjtJoint.mjJNT_SLIDE + HINGE = mujoco.mjtJoint.mjJNT_HINGE + + def dof_width(self) -> int: + return {0: 6, 1: 3, 2: 1, 3: 1}[self.value] + + def qpos_width(self) -> int: + return {0: 7, 1: 4, 2: 1, 3: 1}[self.value] + + +class IntegratorType(enum.IntEnum): + """Integrator mode. + + Attributes: + EULER: semi-implicit Euler + RK4: 4th-order Runge Kutta + """ + EULER = mujoco.mjtIntegrator.mjINT_EULER + RK4 = mujoco.mjtIntegrator.mjINT_RK4 + # unsupported: IMPLICIT, IMPLICITFAST + + +class GeomType(enum.IntEnum): + """Type of geometry. + + Attributes: + PLANE: plane + HFIELD: height field + SPHERE: sphere + CAPSULE: capsule + ELLIPSOID: ellipsoid + CYLINDER: cylinder + BOX: box + MESH: mesh + """ + + PLANE = mujoco.mjtGeom.mjGEOM_PLANE + HFIELD = mujoco.mjtGeom.mjGEOM_HFIELD + SPHERE = mujoco.mjtGeom.mjGEOM_SPHERE + CAPSULE = mujoco.mjtGeom.mjGEOM_CAPSULE + ELLIPSOID = mujoco.mjtGeom.mjGEOM_ELLIPSOID + CYLINDER = mujoco.mjtGeom.mjGEOM_CYLINDER + BOX = mujoco.mjtGeom.mjGEOM_BOX + MESH = mujoco.mjtGeom.mjGEOM_MESH + # unsupported: NGEOMTYPES, ARROW*, LINE, SKIN, LABEL, NONE + + +class ConeType(enum.IntEnum): + """Type of friction cone. + + Attributes: + PYRAMIDAL: pyramidal + """ + PYRAMIDAL = mujoco.mjtCone.mjCONE_PYRAMIDAL + # unsupported: ELLIPTIC + + +class SolverType(enum.IntEnum): + """Constraint solver algorithm. + + Attributes: + CG: Conjugate gradient (primal) + """ + # unsupported: PGS, NEWTON + CG = mujoco.mjtSolver.mjSOL_CG + + +class EqType(enum.IntEnum): + """Type of equality constraint. + + Attributes: + CONNECT: connect two bodies at a point (ball joint) + WELD: fix relative position and orientation of two bodies + JOINT: couple the values of two scalar joints with cubic + """ + CONNECT = mujoco.mjtEq.mjEQ_CONNECT + WELD = mujoco.mjtEq.mjEQ_WELD + # unsupported: JOINT, TENDON, DISTANCE + + +class TrnType(enum.IntEnum): + """Type of actuator transmission. + + Attributes: + JOINT: force on joint + """ + JOINT = mujoco.mjtTrn.mjTRN_JOINT + # unsupported: JOINTINPARENT, SLIDERCRANK, TENDON, SITE, BODY + + +class DynType(enum.IntEnum): + """Type of actuator dynamics. + + Attributes: + NONE: no internal dynamics; ctrl specifies force + INTEGRATOR: integrator: da/dt = u + """ + NONE = mujoco.mjtDyn.mjDYN_NONE + INTEGRATOR = mujoco.mjtDyn.mjDYN_INTEGRATOR + FILTER = mujoco.mjtDyn.mjDYN_FILTER + # unsupported: FILTEREXACT, MUSCLE, USER + + +class GainType(enum.IntEnum): + """Type of actuator gain. + + Attributes: + FIXED: fixed gain + AFFINE: const + kp*length + kv*velocity + """ + FIXED = mujoco.mjtGain.mjGAIN_FIXED + AFFINE = mujoco.mjtGain.mjGAIN_AFFINE + # unsupported: MUSCLE, USER + + +class BiasType(enum.IntEnum): + """Type of actuator bias. + + Attributes: + NONE: no bias + AFFINE: const + kp*length + kv*velocity + """ + NONE = mujoco.mjtBias.mjBIAS_NONE + AFFINE = mujoco.mjtBias.mjBIAS_AFFINE + # unsupported: MUSCLE, USER + + +class Option(PyTreeNode): + """Physics options. + + Attributes: + timestep: timestep + tolerance: main solver tolerance + ls_tolerance: CG/Newton linesearch tolerance + gravity: gravitational acceleration (3,) + wind: wind (for lift, drag and viscosity) + density: density of medium + viscosity: viscosity of medium + has_fluid_params: automatically set by mjx if wind/density/viscosity are + nonzero. Not used by mj + integrator: integration mode + cone: type of friction cone + solver: solver algorithm + integrator: integration mode + iterations: number of main solver iterations + ls_iterations: maximum number of CG/Newton linesearch iterations + disableflags: bit flags for disabling standard features + """ + timestep: jax.Array + tolerance: jax.Array + ls_tolerance: jax.Array + # unsupported: apirate, impratio, noslip_tolerance, mpr_tolerance + gravity: jax.Array + wind: jax.Array + density: jax.Array + viscosity: jax.Array + has_fluid_params: bool + # unsupported: magnetic, o_margin, o_solref, o_solimp + integrator: IntegratorType + cone: ConeType + # unsupported: jacobian + solver: SolverType + iterations: int + ls_iterations: int + # unsupported: noslip_iterations, mpr_iterations + disableflags: DisableBit + # unsupported: enableflags + + +class Statistic(PyTreeNode): + """Model statistics (in qpos0). + + Attributes: + meaninertia: mean diagonal inertia + """ + meaninertia: jax.Array + # unsupported: meanmass, meansize, extent, center + + +class Model(PyTreeNode): + """Static model of the scene that remains unchanged with each physics step. + + Attributes: + nq: number of generalized coordinates = dim(qpos) + nv: number of degrees of freedom = dim(qvel) + nu: number of actuators/controls = dim(ctrl) + na: number of activation states = dim(act) + nbody: number of bodies + njnt: number of joints + ngeom: number of geoms + nmesh: number of meshes + npair: number of predefined geom pairs + nexclude: number of excluded geom pairs + neq: number of equality constraints + nnumeric: number of numeric custom fields + nM: number of non-zeros in sparse inertia matrix + opt: physics options + stat: model statistics + qpos0: qpos values at default pose (nq,) + qpos_spring: reference pose for springs (nq,) + body_parentid: id of body's parent (nbody,) + body_rootid: id of root above body (nbody,) + body_weldid: id of body that this body is welded to (nbody,) + body_jntnum: number of joints for this body (nbody,) + body_jntadr: start addr of joints; -1: no joints (nbody,) + body_dofnum: number of motion degrees of freedom (nbody,) + body_dofadr: start addr of dofs; -1: no dofs (nbody,) + body_geomnum: number of geoms (nbody,) + body_geomadr: start addr of geoms; -1: no geoms (nbody,) + body_pos: position offset rel. to parent body (nbody, 3) + body_quat: orientation offset rel. to parent body (nbody, 4) + body_ipos: local position of center of mass (nbody, 3) + body_iquat: local orientation of inertia ellipsoid (nbody, 4) + body_mass: mass (nbody,) + body_subtreemass: mass of subtree starting at this body (nbody,) + body_inertia: diagonal inertia in ipos/iquat frame (nbody, 3) + body_invweight0: mean inv inert in qpos0 (trn, rot) (nbody, 2) + jnt_type: type of joint (mjtJoint) (njnt,) + jnt_qposadr: start addr in 'qpos' for joint's data (njnt,) + jnt_dofadr: start addr in 'qvel' for joint's data (njnt,) + jnt_bodyid: id of joint's body (njnt,) + jnt_group: group for visibility (njnt,) + jnt_limited: does joint have limits (njnt,) + jnt_solref: constraint solver reference: limit (njnt, mjNREF) + jnt_solimp: constraint solver impedance: limit (njnt, mjNIMP) + jnt_pos: local anchor position (njnt, 3) + jnt_axis: local joint axis (njnt, 3) + jnt_stiffness: stiffness coefficient (njnt,) + jnt_range: joint limits (njnt, 2) + jnt_actfrcrange: range of total actuator force (njnt, 2) + jnt_margin: min distance for limit detection (njnt,) + dof_bodyid: id of dof's body (nv,) + dof_jntid: id of dof's joint (nv,) + dof_parentid: id of dof's parent; -1: none (nv,) + dof_Madr: dof address in M-diagonal (nv,) + dof_solref: constraint solver reference:frictionloss (nv, mjNREF) + dof_solimp: constraint solver impedance:frictionloss (nv, mjNIMP) + dof_frictionloss: dof friction loss (nv,) + dof_armature: dof armature inertia/mass (nv,) + dof_damping: damping coefficient (nv,) + dof_invweight0: diag. inverse inertia in qpos0 (nv,) + dof_M0: diag. inertia in qpos0 (nv,) + geom_type: geometric type (mjtGeom) (ngeom,) + geom_contype: geom contact type (ngeom,) + geom_conaffinity: geom contact affinity (ngeom,) + geom_condim: contact dimensionality (1, 3, 4, 6) (ngeom,) + geom_bodyid: id of geom's body (ngeom,) + geom_priority: geom contact priority (ngeom,) + geom_solmix: mixing coef for solref/imp in geom pair (ngeom,) + geom_solref: constraint solver reference: contact (ngeom, mjNREF) + geom_solimp: constraint solver impedance: contact (ngeom, mjNIMP) + geom_size: geom-specific size parameters (ngeom, 3) + geom_pos: local position offset rel. to body (ngeom, 3) + geom_quat: local orientation offset rel. to body (ngeom, 4) + geom_friction: friction for (slide, spin, roll) (ngeom, 3) + geom_margin: include in solver if dist 'Contact': + """Returns a contact filled with zeros.""" + return Contact( + dist=jp.zeros(shape), + pos=jp.zeros(shape + (3,)), + frame=jp.zeros(shape + (3, 3)), + includemargin=jp.zeros(shape), + friction=jp.zeros(shape + (5,)), + solref=jp.zeros(shape + (mujoco.mjNREF,)), + solreffriction=jp.zeros(shape + (mujoco.mjNREF,)), + solimp=jp.zeros(shape + (mujoco.mjNIMP,)), + dim=np.zeros(shape, dtype=np.int32), + geom1=jp.zeros(shape, dtype=jp.int32), + geom2=jp.zeros(shape, dtype=jp.int32), + efc_address=np.zeros(shape, dtype=np.int32), + ) + + +class Data(PyTreeNode): + """Dynamic state that updates each step. + + Attributes: + solver_niter: number of solver iterations, per island (mjNISLAND,) + ne: number of equality constraints + nf: number of friction constraints + nl: number of limit constraints + nefc: number of constraints + ncon: nubmer of contacts + time: simulation time + qpos: position (nq,) + qvel: velocity (nv,) + act: actuator activation (na,) + qacc_warmstart: acceleration used for warmstart (nv,) + ctrl: control (nu,) + qfrc_applied: applied generalized force (nv,) + xfrc_applied: applied Cartesian force/torque (nbody, 6) + eq_active: enable/disable constraints (neq,) + qacc: acceleration (nv,) + act_dot: time-derivative of actuator activation (na,) + xpos: Cartesian position of body frame (nbody, 3) + xquat: Cartesian orientation of body frame (nbody, 4) + xmat: Cartesian orientation of body frame (nbody, 3, 3) + xipos: Cartesian position of body com (nbody, 3) + ximat: Cartesian orientation of body inertia (nbody, 3, 3) + xanchor: Cartesian position of joint anchor (njnt, 3) + xaxis: Cartesian joint axis (njnt, 3) + geom_xpos: Cartesian geom position (ngeom, 3) + geom_xmat: Cartesian geom orientation (ngeom, 3, 3) + subtree_com: center of mass of each subtree (nbody, 3) + cdof: com-based motion axis of each dof (nv, 6) + cinert: com-based body inertia and mass (nbody, 10) + actuator_length: actuator lengths (nu,) + actuator_moment: actuator moments (nu, nv) + crb: com-based composite inertia and mass (nbody, 10) + qM: total inertia (sparse) (nM,) + qLD: L'*D*L factorization of M (sparse) (nM,) + qLDiagInv: 1/diag(D) (nv,) + qLDiagSqrtInv: 1/sqrt(diag(D)) (nv,) + contact: list of all detected contacts (ncon,) + efc_J: constraint Jacobian (nefc, nv) + efc_frictionloss: frictionloss (friction) (nefc,) + efc_D: constraint mass (nefc,) + actuator_velocity: actuator velocities (nu,) + cvel: com-based velocity [3D rot; 3D tran] (nbody, 6) + cdof_dot: time-derivative of cdof (nv, 6) + qfrc_bias: C(qpos,qvel) (nv,) + qfrc_passive: passive force (nv,) + efc_aref: reference pseudo-acceleration (nefc,) + actuator_force: actuator force in actuation space (nu,) + qfrc_actuator: actuator force (nv,) + qfrc_smooth: net unconstrained force (nv,) + qacc_smooth: unconstrained acceleration (nv,) + qfrc_constraint: constraint force (nv,) + qfrc_inverse: net external force; should equal: (nv,) + qfrc_applied + J'*xfrc_applied + qfrc_actuator + efc_force: constraint force in constraint space (nefc,) + """ + # solver statistics: + solver_niter: jax.Array + # sizes (variable in MJ, constant in MJX) + ne: int + nf: int + nl: int + nefc: int + ncon: int + # global properties: + time: jax.Array + # state: + qpos: jax.Array + qvel: jax.Array + act: jax.Array + qacc_warmstart: jax.Array + # control: + ctrl: jax.Array + qfrc_applied: jax.Array + xfrc_applied: jax.Array + eq_active: jax.Array + # dynamics: + qacc: jax.Array + act_dot: jax.Array + # position dependent: + xpos: jax.Array + xquat: jax.Array + xmat: jax.Array + xipos: jax.Array + ximat: jax.Array + xanchor: jax.Array + xaxis: jax.Array + geom_xpos: jax.Array + geom_xmat: jax.Array + subtree_com: jax.Array + cdof: jax.Array + cinert: jax.Array + crb: jax.Array + actuator_length: jax.Array + actuator_moment: jax.Array + qM: jax.Array + qLD: jax.Array + qLDiagInv: jax.Array + qLDiagSqrtInv: jax.Array + contact: Contact + efc_J: jax.Array + efc_frictionloss: jax.Array + efc_D: jax.Array + # position, velocity dependent: + actuator_velocity: jax.Array + cvel: jax.Array + cdof_dot: jax.Array + qfrc_bias: jax.Array + qfrc_passive: jax.Array + efc_aref: jax.Array + # position, velcoity, control & acceleration dependent: + actuator_force: jax.Array + qfrc_actuator: jax.Array + qfrc_smooth: jax.Array + qacc_smooth: jax.Array + qfrc_constraint: jax.Array + qfrc_inverse: jax.Array + efc_force: jax.Array diff --git a/mjx/mujoco/mjx/benchmark/__init__.py b/mjx/mujoco/mjx/benchmark/__init__.py new file mode 100644 index 00000000..4ad51d69 --- /dev/null +++ b/mjx/mujoco/mjx/benchmark/__init__.py @@ -0,0 +1,14 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== diff --git a/mjx/mujoco/mjx/benchmark/benchmark.py b/mjx/mujoco/mjx/benchmark/benchmark.py new file mode 100644 index 00000000..b0a59af0 --- /dev/null +++ b/mjx/mujoco/mjx/benchmark/benchmark.py @@ -0,0 +1,116 @@ +# Copyright 2023 DeepMind Technologies Limited +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Run benchmarks on various devices.""" + +import sys +import time + +from absl import flags +from etils import epath +import google_benchmark as benchmark +import jax +from jax import numpy as jp +import mujoco +from mujoco import mjx + +FLAGS = flags.FLAGS + +_PATHS = { + 'humanoid': 'benchmark/model/humanoid/humanoid.xml', + 'barkour': 'benchmark/model/barkour_v0/assets/barkour_v0_mjx.xml', + 'shadow_hand': 'benchmark/model/shadow_hand/scene_right.xml', +} + + +_BATCH_SIZE = { + ('humanoid', 'TPU v5 lite'): 1024, + ('barkour', 'TPU v5 lite'): 1024, + ('shadow_hand', 'TPU v5 lite'): 1024, + ('humanoid', 'Tesla V100-SXM2-16GB'): 8192, + ('barkour', 'Tesla V100-SXM2-16GB'): 8192, + ('shadow_hand', 'Tesla V100-SXM2-16GB'): 4096, + ('humanoid', 'cpu'): 64, + ('barkour', 'cpu'): 64, + ('shadow_hand', 'cpu'): 64, +} + +flags.DEFINE_string('model', 'humanoid', 'Model to benchmark') +flags.DEFINE_string('device', 'cpu', 'Device benchmark is running on') + + +def _measure_fn(state, init_fn, step_fn, batch_size: int = 1024) -> float: + """Reports jit time and op time for a function.""" + + step_count = 100 if FLAGS.device == 'cpu' else 1000 + + @jax.jit + def run_batch(seed: jp.ndarray): + rngs = jax.random.split(jax.random.PRNGKey(seed), batch_size) + init_state = jax.vmap(init_fn)(rngs) + + @jax.vmap + def run(state): + def step(state, _): + state = step_fn(state) + return state, () + + return jax.lax.scan(step, state, (), length=step_count) + + return run(init_state) + + # run once to jit + beg = time.perf_counter() + jax.tree_util.tree_map(lambda x: x.block_until_ready(), run_batch(0)) + first_t = time.perf_counter() - beg + + times = [] + while state: + beg = time.perf_counter() + batch = run_batch(jp.array(len(times))) + jax.tree_util.tree_map(lambda x: x.block_until_ready(), batch) + times.append(time.perf_counter() - beg) + + op_time = jp.mean(jp.array(times)) + batch_sps = batch_size * step_count / op_time + + state.counters['jit_time'] = first_t - op_time + state.counters['batch_sps'] = batch_sps + + +@benchmark.option.unit(benchmark.kSecond) +def _run(state: benchmark.State): + """Benchmark a model.""" + + f = epath.resource_path('mujoco.mjx') / _PATHS[FLAGS.model] + m = mujoco.MjModel.from_xml_path(f.as_posix()) + m = mjx.device_put(m) + + def init(rng): + d = mjx.make_data(m) + qvel = 0.01 * jax.random.normal(rng, shape=(m.nv,)) + d = d.replace(qvel=qvel) + return d + + def step(d): + return mjx.step(m, d) + + batch_size = _BATCH_SIZE[(FLAGS.model, jax.devices()[0].device_kind)] + _measure_fn(state, init, step, batch_size=batch_size) + + +if __name__ == '__main__': + FLAGS(sys.argv) + benchmark.register(_run, name=FLAGS.model + '_' + FLAGS.device) + benchmark.main() diff --git a/mjx/mujoco/mjx/benchmark/model/barkour_v0/README.md b/mjx/mujoco/mjx/benchmark/model/barkour_v0/README.md new file mode 100644 index 00000000..b7cfdcef --- /dev/null +++ b/mjx/mujoco/mjx/benchmark/model/barkour_v0/README.md @@ -0,0 +1,35 @@ +# Google Barkour v0 Joystick Policy + +## Overview + +This folder contains a training script for a flat-terrain joystick policy for the [Barkour v0 Quadruped](https://ai.googleblog.com/2023/05/barkour-benchmarking-animal-level.html) which demonstrates sim2real transfer. + +`barkour_joystick.py` contains the environment definition, while the [colab](https://colab.research.google.com/github/google/brax/blob/main/experimental/barkour_v0/barkour_v0_joystick.ipynb) shows how to train the policy. + +

+ +

+ +## MJCF Instructions + +The MuJoCo config in `assets/barkour_v0_mjx.xml` was copied from https://github.com/deepmind/mujoco_menagerie/google_barkour_v0. The following edits were made to the MJCF specifically for brax: + +* `meshdir` was changed from `assets` to `.`. +* `frictionloss` was removed. `damping` was changed to 0.5239. +* A custom `init_qpos` was added. +* A sphere geom `lowerLegFoot` was added to all feet. All other contacts were turned off. +* The compiler option was changed to `