   }
   if (!found) discard;
   if (chiral && odd) z.y = -z.y;
-
+  
   x = z.x; y = z.y;
   float x0 = cos(psi)*x - sin(psi)*y;
   float y0 = sin(psi)*x + cos(psi)*y;

    return true;
  }
}

// Rather tediously, ES 1.0 doesn't support bit operations
// on ints, so use these for decoding packed values.

    // AB is circle for hyperbolic case.
    // norm is normal to OB, norm2 is other radial
    // reflection - either x-axis or reflection of OA.
    // Bizarrely, adding "true &&" here avoids a compilation
    // error in Firefox _and_ Chrome on Windows.
    if (true && !tryreflect(z,norm) && !tryreflect(z,norm2)) {
      if (hyperbolic) {
        if (!tryinvert(z,p,r2)) {
          found = true;
