def noise4d(self, x, y, z, w):
<EOL>stretch_offset = (x + y + z + w) * STRETCH_CONSTANT_4D<EOL>xs = x + stretch_offset<EOL>ys = y + stretch_offset<EOL>zs = z + stretch_offset<EOL>ws = w + stretch_offset<EOL>xsb = floor(xs)<EOL>ysb = floor(ys)<EOL>zsb = floor(zs)<EOL>wsb = floor(ws)<EOL>squish_offset = (xsb + ysb + zsb + wsb) * SQUISH_CONSTANT_4D<EOL>xb = xsb + squish_offset<EOL>yb = ysb + squish_offset<EOL>zb = zsb + squish_offset<EOL>wb = wsb + squish_offset<EOL>xins = xs - xsb<EOL>yins = ys - ysb<EOL>zins = zs - zsb<EOL>wins = ws - wsb<EOL>in_sum = xins + yins + zins + wins<EOL>dx0 = x - xb<EOL>dy0 = y - yb<EOL>dz0 = z - zb<EOL>dw0 = w - wb<EOL>value = <NUM_LIT:0><EOL>extrapolate = self._extrapolate4d<EOL>if in_sum <= <NUM_LIT:1>: <EOL><INDENT>a_po = <NUM_LIT><EOL>a_score = xins<EOL>b_po = <NUM_LIT><EOL>b_score = yins<EOL>if a_score >= b_score and zins > b_score:<EOL><INDENT>b_score = zins<EOL>b_po = <NUM_LIT><EOL><DEDENT>elif a_score < b_score and zins > a_score:<EOL><INDENT>a_score = zins<EOL>a_po = <NUM_LIT><EOL><DEDENT>if a_score >= b_score and wins > b_score:<EOL><INDENT>b_score = wins<EOL>b_po = <NUM_LIT><EOL><DEDENT>elif a_score < b_score and wins > a_score:<EOL><INDENT>a_score = wins<EOL>a_po = <NUM_LIT><EOL><DEDENT>uins = <NUM_LIT:1> - in_sum<EOL>if uins > a_score or uins > b_score: <EOL><INDENT>c = b_po if (b_score > a_score) else a_po <EOL>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>xsv_ext0 = xsb - <NUM_LIT:1><EOL>xsv_ext1 = xsv_ext2 = xsb<EOL>dx_ext0 = dx0 + <NUM_LIT:1><EOL>dx_ext1 = dx_ext2 = dx0<EOL><DEDENT>else:<EOL><INDENT>xsv_ext0 = xsv_ext1 = xsv_ext2 = xsb + <NUM_LIT:1><EOL>dx_ext0 = dx_ext1 = dx_ext2 = dx0 - <NUM_LIT:1><EOL><DEDENT>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb<EOL>dy_ext0 = dy_ext1 = dy_ext2 = dy0<EOL>if (c & <NUM_LIT>) == <NUM_LIT>:<EOL><INDENT>ysv_ext0 -= <NUM_LIT:1><EOL>dy_ext0 += <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>ysv_ext1 -= <NUM_LIT:1><EOL>dy_ext1 += <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb + <NUM_LIT:1><EOL>dy_ext0 = dy_ext1 = dy_ext2 = dy0 - <NUM_LIT:1><EOL><DEDENT>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb<EOL>dz_ext0 = dz_ext1 = dz_ext2 = dz0<EOL>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>if (c & <NUM_LIT>) == <NUM_LIT>:<EOL><INDENT>zsv_ext0 -= <NUM_LIT:1><EOL>dz_ext0 += <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>zsv_ext1 -= <NUM_LIT:1><EOL>dz_ext1 += <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>zsv_ext2 -= <NUM_LIT:1><EOL>dz_ext2 += <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb + <NUM_LIT:1><EOL>dz_ext0 = dz_ext1 = dz_ext2 = dz0 - <NUM_LIT:1><EOL><DEDENT>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsb<EOL>wsv_ext2 = wsb - <NUM_LIT:1><EOL>dw_ext0 = dw_ext1 = dw0<EOL>dw_ext2 = dw0 + <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsv_ext2 = wsb + <NUM_LIT:1><EOL>dw_ext0 = dw_ext1 = dw_ext2 = dw0 - <NUM_LIT:1><EOL><DEDENT><DEDENT>else: <EOL><INDENT>c = (a_po | b_po) <EOL>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>xsv_ext0 = xsv_ext2 = xsb<EOL>xsv_ext1 = xsb - <NUM_LIT:1><EOL>dx_ext0 = dx0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx0 + <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>dx_ext2 = dx0 - SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>xsv_ext0 = xsv_ext1 = xsv_ext2 = xsb + <NUM_LIT:1><EOL>dx_ext0 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx_ext2 = dx0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb<EOL>dy_ext0 = dy0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy_ext1 = dy_ext2 = dy0 - SQUISH_CONSTANT_4D<EOL>if (c & <NUM_LIT>) == <NUM_LIT>:<EOL><INDENT>ysv_ext1 -= <NUM_LIT:1><EOL>dy_ext1 += <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>ysv_ext2 -= <NUM_LIT:1><EOL>dy_ext2 += <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb + <NUM_LIT:1><EOL>dy_ext0 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy_ext1 = dy_ext2 = dy0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb<EOL>dz_ext0 = dz0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz_ext1 = dz_ext2 = dz0 - SQUISH_CONSTANT_4D<EOL>if (c & <NUM_LIT>) == <NUM_LIT>:<EOL><INDENT>zsv_ext1 -= <NUM_LIT:1><EOL>dz_ext1 += <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>zsv_ext2 -= <NUM_LIT:1><EOL>dz_ext2 += <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb + <NUM_LIT:1><EOL>dz_ext0 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz_ext1 = dz_ext2 = dz0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsb<EOL>wsv_ext2 = wsb - <NUM_LIT:1><EOL>dw_ext0 = dw0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw0 - SQUISH_CONSTANT_4D<EOL>dw_ext2 = dw0 + <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsv_ext2 = wsb + <NUM_LIT:1><EOL>dw_ext0 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw_ext2 = dw0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT><DEDENT>attn0 = <NUM_LIT:2> - dx0 * dx0 - dy0 * dy0 - dz0 * dz0 - dw0 * dw0<EOL>if attn0 > <NUM_LIT:0>:<EOL><INDENT>attn0 *= attn0<EOL>value += attn0 * attn0 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:0>, dx0, dy0, dz0, dw0)<EOL><DEDENT>dx1 = dx0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>dy1 = dy0 - <NUM_LIT:0> - SQUISH_CONSTANT_4D<EOL>dz1 = dz0 - <NUM_LIT:0> - SQUISH_CONSTANT_4D<EOL>dw1 = dw0 - <NUM_LIT:0> - SQUISH_CONSTANT_4D<EOL>attn1 = <NUM_LIT:2> - dx1 * dx1 - dy1 * dy1 - dz1 * dz1 - dw1 * dw1<EOL>if attn1 > <NUM_LIT:0>:<EOL><INDENT>attn1 *= attn1<EOL>value += attn1 * attn1 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:0>, dx1, dy1, dz1, dw1)<EOL><DEDENT>dx2 = dx0 - <NUM_LIT:0> - SQUISH_CONSTANT_4D<EOL>dy2 = dy0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>dz2 = dz1<EOL>dw2 = dw1<EOL>attn2 = <NUM_LIT:2> - dx2 * dx2 - dy2 * dy2 - dz2 * dz2 - dw2 * dw2<EOL>if attn2 > <NUM_LIT:0>:<EOL><INDENT>attn2 *= attn2<EOL>value += attn2 * attn2 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:0>, dx2, dy2, dz2, dw2)<EOL><DEDENT>dx3 = dx2<EOL>dy3 = dy1<EOL>dz3 = dz0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>dw3 = dw1<EOL>attn3 = <NUM_LIT:2> - dx3 * dx3 - dy3 * dy3 - dz3 * dz3 - dw3 * dw3<EOL>if attn3 > <NUM_LIT:0>:<EOL><INDENT>attn3 *= attn3<EOL>value += attn3 * attn3 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:0>, dx3, dy3, dz3, dw3)<EOL><DEDENT>dx4 = dx2<EOL>dy4 = dy1<EOL>dz4 = dz1<EOL>dw4 = dw0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>attn4 = <NUM_LIT:2> - dx4 * dx4 - dy4 * dy4 - dz4 * dz4 - dw4 * dw4<EOL>if attn4 > <NUM_LIT:0>:<EOL><INDENT>attn4 *= attn4<EOL>value += attn4 * attn4 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:1>, dx4, dy4, dz4, dw4)<EOL><DEDENT><DEDENT>elif in_sum >= <NUM_LIT:3>: <EOL><INDENT>a_po = <NUM_LIT><EOL>a_score = xins<EOL>b_po = <NUM_LIT><EOL>b_score = yins<EOL>if a_score <= b_score and zins < b_score:<EOL><INDENT>b_score = zins<EOL>b_po = <NUM_LIT><EOL><DEDENT>elif a_score > b_score and zins < a_score:<EOL><INDENT>a_score = zins<EOL>a_po = <NUM_LIT><EOL><DEDENT>if a_score <= b_score and wins < b_score:<EOL><INDENT>b_score = wins<EOL>b_po = <NUM_LIT><EOL><DEDENT>elif a_score > b_score and wins < a_score:<EOL><INDENT>a_score = wins<EOL>a_po = <NUM_LIT><EOL><DEDENT>uins = <NUM_LIT:4> - in_sum<EOL>if uins < a_score or uins < b_score: <EOL><INDENT>c = b_po if (b_score < a_score) else a_po <EOL>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>xsv_ext0 = xsb + <NUM_LIT:2><EOL>xsv_ext1 = xsv_ext2 = xsb + <NUM_LIT:1><EOL>dx_ext0 = dx0 - <NUM_LIT:2> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx_ext2 = dx0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>xsv_ext0 = xsv_ext1 = xsv_ext2 = xsb<EOL>dx_ext0 = dx_ext1 = dx_ext2 = dx0 - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb + <NUM_LIT:1><EOL>dy_ext0 = dy_ext1 = dy_ext2 = dy0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>ysv_ext1 += <NUM_LIT:1><EOL>dy_ext1 -= <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>ysv_ext0 += <NUM_LIT:1><EOL>dy_ext0 -= <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb<EOL>dy_ext0 = dy_ext1 = dy_ext2 = dy0 - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb + <NUM_LIT:1><EOL>dz_ext0 = dz_ext1 = dz_ext2 = dz0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>if (c & <NUM_LIT>) != <NUM_LIT>:<EOL><INDENT>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 += <NUM_LIT:1><EOL>dz_ext0 -= <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>zsv_ext1 += <NUM_LIT:1><EOL>dz_ext1 -= <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>zsv_ext2 += <NUM_LIT:1><EOL>dz_ext2 -= <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb<EOL>dz_ext0 = dz_ext1 = dz_ext2 = dz0 - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsb + <NUM_LIT:1><EOL>wsv_ext2 = wsb + <NUM_LIT:2><EOL>dw_ext0 = dw_ext1 = dw0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>dw_ext2 = dw0 - <NUM_LIT:2> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsv_ext2 = wsb<EOL>dw_ext0 = dw_ext1 = dw_ext2 = dw0 - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL><DEDENT><DEDENT>else: <EOL><INDENT>c = (a_po & b_po) <EOL>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>xsv_ext0 = xsv_ext2 = xsb + <NUM_LIT:1><EOL>xsv_ext1 = xsb + <NUM_LIT:2><EOL>dx_ext0 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx0 - <NUM_LIT:2> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dx_ext2 = dx0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>xsv_ext0 = xsv_ext1 = xsv_ext2 = xsb<EOL>dx_ext0 = dx0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx_ext2 = dx0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb + <NUM_LIT:1><EOL>dy_ext0 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy_ext1 = dy_ext2 = dy0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>ysv_ext2 += <NUM_LIT:1><EOL>dy_ext2 -= <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>ysv_ext1 += <NUM_LIT:1><EOL>dy_ext1 -= <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysv_ext2 = ysb<EOL>dy_ext0 = dy0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy_ext1 = dy_ext2 = dy0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb + <NUM_LIT:1><EOL>dz_ext0 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz_ext1 = dz_ext2 = dz0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>zsv_ext2 += <NUM_LIT:1><EOL>dz_ext2 -= <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>zsv_ext1 += <NUM_LIT:1><EOL>dz_ext1 -= <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsv_ext2 = zsb<EOL>dz_ext0 = dz0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz_ext1 = dz_ext2 = dz0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsb + <NUM_LIT:1><EOL>wsv_ext2 = wsb + <NUM_LIT:2><EOL>dw_ext0 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dw_ext2 = dw0 - <NUM_LIT:2> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsv_ext2 = wsb<EOL>dw_ext0 = dw0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw_ext2 = dw0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT><DEDENT>dx4 = dx0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dy4 = dy0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dz4 = dz0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dw4 = dw0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>attn4 = <NUM_LIT:2> - dx4 * dx4 - dy4 * dy4 - dz4 * dz4 - dw4 * dw4<EOL>if attn4 > <NUM_LIT:0>:<EOL><INDENT>attn4 *= attn4<EOL>value += attn4 * attn4 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:0>, dx4, dy4, dz4, dw4)<EOL><DEDENT>dx3 = dx4<EOL>dy3 = dy4<EOL>dz3 = dz0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dw3 = dw0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>attn3 = <NUM_LIT:2> - dx3 * dx3 - dy3 * dy3 - dz3 * dz3 - dw3 * dw3<EOL>if attn3 > <NUM_LIT:0>:<EOL><INDENT>attn3 *= attn3<EOL>value += attn3 * attn3 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:1>, dx3, dy3, dz3, dw3)<EOL><DEDENT>dx2 = dx4<EOL>dy2 = dy0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dz2 = dz4<EOL>dw2 = dw3<EOL>attn2 = <NUM_LIT:2> - dx2 * dx2 - dy2 * dy2 - dz2 * dz2 - dw2 * dw2<EOL>if attn2 > <NUM_LIT:0>:<EOL><INDENT>attn2 *= attn2<EOL>value += attn2 * attn2 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:1>, dx2, dy2, dz2, dw2)<EOL><DEDENT>dx1 = dx0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dz1 = dz4<EOL>dy1 = dy4<EOL>dw1 = dw3<EOL>attn1 = <NUM_LIT:2> - dx1 * dx1 - dy1 * dy1 - dz1 * dz1 - dw1 * dw1<EOL>if attn1 > <NUM_LIT:0>:<EOL><INDENT>attn1 *= attn1<EOL>value += attn1 * attn1 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:1>, dx1, dy1, dz1, dw1)<EOL><DEDENT>dx0 = dx0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>dy0 = dy0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>dz0 = dz0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>dw0 = dw0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>attn0 = <NUM_LIT:2> - dx0 * dx0 - dy0 * dy0 - dz0 * dz0 - dw0 * dw0<EOL>if attn0 > <NUM_LIT:0>:<EOL><INDENT>attn0 *= attn0<EOL>value += attn0 * attn0 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:1>, dx0, dy0, dz0, dw0)<EOL><DEDENT><DEDENT>elif in_sum <= <NUM_LIT:2>: <EOL><INDENT>a_is_bigger_side = True<EOL>b_is_bigger_side = True<EOL>if xins + yins > zins + wins:<EOL><INDENT>a_score = xins + yins<EOL>a_po = <NUM_LIT><EOL><DEDENT>else:<EOL><INDENT>a_score = zins + wins<EOL>a_po = <NUM_LIT><EOL><DEDENT>if xins + zins > yins + wins:<EOL><INDENT>b_score = xins + zins<EOL>b_po = <NUM_LIT><EOL><DEDENT>else:<EOL><INDENT>b_score = yins + wins<EOL>b_po = <NUM_LIT><EOL><DEDENT>if xins + wins > yins + zins:<EOL><INDENT>score = xins + wins<EOL>if a_score >= b_score and score > b_score:<EOL><INDENT>b_score = score<EOL>b_po = <NUM_LIT><EOL><DEDENT>elif a_score < b_score and score > a_score:<EOL><INDENT>a_score = score<EOL>a_po = <NUM_LIT><EOL><DEDENT><DEDENT>else:<EOL><INDENT>score = yins + zins<EOL>if a_score >= b_score and score > b_score:<EOL><INDENT>b_score = score<EOL>b_po = <NUM_LIT><EOL><DEDENT>elif a_score < b_score and score > a_score:<EOL><INDENT>a_score = score<EOL>a_po = <NUM_LIT><EOL><DEDENT><DEDENT>p1 = <NUM_LIT:2> - in_sum + xins<EOL>if a_score >= b_score and p1 > b_score:<EOL><INDENT>b_score = p1<EOL>b_po = <NUM_LIT><EOL>b_is_bigger_side = False<EOL><DEDENT>elif a_score < b_score and p1 > a_score:<EOL><INDENT>a_score = p1<EOL>a_po = <NUM_LIT><EOL>a_is_bigger_side = False<EOL><DEDENT>p2 = <NUM_LIT:2> - in_sum + yins<EOL>if a_score >= b_score and p2 > b_score:<EOL><INDENT>b_score = p2<EOL>b_po = <NUM_LIT><EOL>b_is_bigger_side = False<EOL><DEDENT>elif a_score < b_score and p2 > a_score:<EOL><INDENT>a_score = p2<EOL>a_po = <NUM_LIT><EOL>a_is_bigger_side = False<EOL><DEDENT>p3 = <NUM_LIT:2> - in_sum + zins<EOL>if a_score >= b_score and p3 > b_score:<EOL><INDENT>b_score = p3<EOL>b_po = <NUM_LIT><EOL>b_is_bigger_side = False<EOL><DEDENT>elif a_score < b_score and p3 > a_score:<EOL><INDENT>a_score = p3<EOL>a_po = <NUM_LIT><EOL>a_is_bigger_side = False<EOL><DEDENT>p4 = <NUM_LIT:2> - in_sum + wins<EOL>if a_score >= b_score and p4 > b_score:<EOL><INDENT>b_po = <NUM_LIT><EOL>b_is_bigger_side = False<EOL><DEDENT>elif a_score < b_score and p4 > a_score:<EOL><INDENT>a_po = <NUM_LIT><EOL>a_is_bigger_side = False<EOL><DEDENT>if a_is_bigger_side == b_is_bigger_side:<EOL><INDENT>if a_is_bigger_side: <EOL><INDENT>c1 = (a_po | b_po)<EOL>c2 = (a_po & b_po)<EOL>if (c1 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>xsv_ext0 = xsb<EOL>xsv_ext1 = xsb - <NUM_LIT:1><EOL>dx_ext0 = dx0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx0 + <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>xsv_ext0 = xsv_ext1 = xsb + <NUM_LIT:1><EOL>dx_ext0 = dx0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c1 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 = ysb<EOL>ysv_ext1 = ysb - <NUM_LIT:1><EOL>dy_ext0 = dy0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dy_ext1 = dy0 + <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysb + <NUM_LIT:1><EOL>dy_ext0 = dy0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dy_ext1 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c1 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 = zsb<EOL>zsv_ext1 = zsb - <NUM_LIT:1><EOL>dz_ext0 = dz0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dz_ext1 = dz0 + <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsb + <NUM_LIT:1><EOL>dz_ext0 = dz0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dz_ext1 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c1 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>wsv_ext0 = wsb<EOL>wsv_ext1 = wsb - <NUM_LIT:1><EOL>dw_ext0 = dw0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw0 + <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsb + <NUM_LIT:1><EOL>dw_ext0 = dw0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL><DEDENT>xsv_ext2 = xsb<EOL>ysv_ext2 = ysb<EOL>zsv_ext2 = zsb<EOL>wsv_ext2 = wsb<EOL>dx_ext2 = dx0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy_ext2 = dy0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz_ext2 = dz0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw_ext2 = dw0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>if (c2 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>xsv_ext2 += <NUM_LIT:2><EOL>dx_ext2 -= <NUM_LIT:2><EOL><DEDENT>elif (c2 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>ysv_ext2 += <NUM_LIT:2><EOL>dy_ext2 -= <NUM_LIT:2><EOL><DEDENT>elif (c2 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>zsv_ext2 += <NUM_LIT:2><EOL>dz_ext2 -= <NUM_LIT:2><EOL><DEDENT>else:<EOL><INDENT>wsv_ext2 += <NUM_LIT:2><EOL>dw_ext2 -= <NUM_LIT:2><EOL><DEDENT><DEDENT>else: <EOL><INDENT>xsv_ext2 = xsb<EOL>ysv_ext2 = ysb<EOL>zsv_ext2 = zsb<EOL>wsv_ext2 = wsb<EOL>dx_ext2 = dx0<EOL>dy_ext2 = dy0<EOL>dz_ext2 = dz0<EOL>dw_ext2 = dw0<EOL>c = (a_po | b_po)<EOL>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>xsv_ext0 = xsb - <NUM_LIT:1><EOL>xsv_ext1 = xsb<EOL>dx_ext0 = dx0 + <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx0 - SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>xsv_ext0 = xsv_ext1 = xsb + <NUM_LIT:1><EOL>dx_ext0 = dx_ext1 = dx0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysb<EOL>dy_ext0 = dy_ext1 = dy0 - SQUISH_CONSTANT_4D<EOL>if (c & <NUM_LIT>) == <NUM_LIT>:<EOL><INDENT>ysv_ext0 -= <NUM_LIT:1><EOL>dy_ext0 += <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>ysv_ext1 -= <NUM_LIT:1><EOL>dy_ext1 += <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysb + <NUM_LIT:1><EOL>dy_ext0 = dy_ext1 = dy0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsb<EOL>dz_ext0 = dz_ext1 = dz0 - SQUISH_CONSTANT_4D<EOL>if (c & <NUM_LIT>) == <NUM_LIT>:<EOL><INDENT>zsv_ext0 -= <NUM_LIT:1><EOL>dz_ext0 += <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>zsv_ext1 -= <NUM_LIT:1><EOL>dz_ext1 += <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsb + <NUM_LIT:1><EOL>dz_ext0 = dz_ext1 = dz0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>wsv_ext0 = wsb<EOL>wsv_ext1 = wsb - <NUM_LIT:1><EOL>dw_ext0 = dw0 - SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw0 + <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsb + <NUM_LIT:1><EOL>dw_ext0 = dw_ext1 = dw0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT><DEDENT><DEDENT>else: <EOL><INDENT>if a_is_bigger_side:<EOL><INDENT>c1 = a_po<EOL>c2 = b_po<EOL><DEDENT>else:<EOL><INDENT>c1 = b_po<EOL>c2 = a_po<EOL><DEDENT>if (c1 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>xsv_ext0 = xsb - <NUM_LIT:1><EOL>xsv_ext1 = xsb<EOL>dx_ext0 = dx0 + <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx0 - SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>xsv_ext0 = xsv_ext1 = xsb + <NUM_LIT:1><EOL>dx_ext0 = dx_ext1 = dx0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>if (c1 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysb<EOL>dy_ext0 = dy_ext1 = dy0 - SQUISH_CONSTANT_4D<EOL>if (c1 & <NUM_LIT>) == <NUM_LIT>:<EOL><INDENT>ysv_ext0 -= <NUM_LIT:1><EOL>dy_ext0 += <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>ysv_ext1 -= <NUM_LIT:1><EOL>dy_ext1 += <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysb + <NUM_LIT:1><EOL>dy_ext0 = dy_ext1 = dy0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>if (c1 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsb<EOL>dz_ext0 = dz_ext1 = dz0 - SQUISH_CONSTANT_4D<EOL>if (c1 & <NUM_LIT>) == <NUM_LIT>:<EOL><INDENT>zsv_ext0 -= <NUM_LIT:1><EOL>dz_ext0 += <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>zsv_ext1 -= <NUM_LIT:1><EOL>dz_ext1 += <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsb + <NUM_LIT:1><EOL>dz_ext0 = dz_ext1 = dz0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>if (c1 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>wsv_ext0 = wsb<EOL>wsv_ext1 = wsb - <NUM_LIT:1><EOL>dw_ext0 = dw0 - SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw0 + <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsb + <NUM_LIT:1><EOL>dw_ext0 = dw_ext1 = dw0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL><DEDENT>xsv_ext2 = xsb<EOL>ysv_ext2 = ysb<EOL>zsv_ext2 = zsb<EOL>wsv_ext2 = wsb<EOL>dx_ext2 = dx0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy_ext2 = dy0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz_ext2 = dz0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw_ext2 = dw0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>if (c2 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>xsv_ext2 += <NUM_LIT:2><EOL>dx_ext2 -= <NUM_LIT:2><EOL><DEDENT>elif (c2 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>ysv_ext2 += <NUM_LIT:2><EOL>dy_ext2 -= <NUM_LIT:2><EOL><DEDENT>elif (c2 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>zsv_ext2 += <NUM_LIT:2><EOL>dz_ext2 -= <NUM_LIT:2><EOL><DEDENT>else:<EOL><INDENT>wsv_ext2 += <NUM_LIT:2><EOL>dw_ext2 -= <NUM_LIT:2><EOL><DEDENT><DEDENT>dx1 = dx0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>dy1 = dy0 - <NUM_LIT:0> - SQUISH_CONSTANT_4D<EOL>dz1 = dz0 - <NUM_LIT:0> - SQUISH_CONSTANT_4D<EOL>dw1 = dw0 - <NUM_LIT:0> - SQUISH_CONSTANT_4D<EOL>attn1 = <NUM_LIT:2> - dx1 * dx1 - dy1 * dy1 - dz1 * dz1 - dw1 * dw1<EOL>if attn1 > <NUM_LIT:0>:<EOL><INDENT>attn1 *= attn1<EOL>value += attn1 * attn1 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:0>, dx1, dy1, dz1, dw1)<EOL><DEDENT>dx2 = dx0 - <NUM_LIT:0> - SQUISH_CONSTANT_4D<EOL>dy2 = dy0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>dz2 = dz1<EOL>dw2 = dw1<EOL>attn2 = <NUM_LIT:2> - dx2 * dx2 - dy2 * dy2 - dz2 * dz2 - dw2 * dw2<EOL>if attn2 > <NUM_LIT:0>:<EOL><INDENT>attn2 *= attn2<EOL>value += attn2 * attn2 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:0>, dx2, dy2, dz2, dw2)<EOL><DEDENT>dx3 = dx2<EOL>dy3 = dy1<EOL>dz3 = dz0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>dw3 = dw1<EOL>attn3 = <NUM_LIT:2> - dx3 * dx3 - dy3 * dy3 - dz3 * dz3 - dw3 * dw3<EOL>if attn3 > <NUM_LIT:0>:<EOL><INDENT>attn3 *= attn3<EOL>value += attn3 * attn3 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:0>, dx3, dy3, dz3, dw3)<EOL><DEDENT>dx4 = dx2<EOL>dy4 = dy1<EOL>dz4 = dz1<EOL>dw4 = dw0 - <NUM_LIT:1> - SQUISH_CONSTANT_4D<EOL>attn4 = <NUM_LIT:2> - dx4 * dx4 - dy4 * dy4 - dz4 * dz4 - dw4 * dw4<EOL>if attn4 > <NUM_LIT:0>:<EOL><INDENT>attn4 *= attn4<EOL>value += attn4 * attn4 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:1>, dx4, dy4, dz4, dw4)<EOL><DEDENT>dx5 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy5 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz5 = dz0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw5 = dw0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn5 = <NUM_LIT:2> - dx5 * dx5 - dy5 * dy5 - dz5 * dz5 - dw5 * dw5<EOL>if attn5 > <NUM_LIT:0>:<EOL><INDENT>attn5 *= attn5<EOL>value += attn5 * attn5 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:0>, dx5, dy5, dz5, dw5)<EOL><DEDENT>dx6 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy6 = dy0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz6 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw6 = dw0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn6 = <NUM_LIT:2> - dx6 * dx6 - dy6 * dy6 - dz6 * dz6 - dw6 * dw6<EOL>if attn6 > <NUM_LIT:0>:<EOL><INDENT>attn6 *= attn6<EOL>value += attn6 * attn6 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:0>, dx6, dy6, dz6, dw6)<EOL><DEDENT>dx7 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy7 = dy0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz7 = dz0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw7 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn7 = <NUM_LIT:2> - dx7 * dx7 - dy7 * dy7 - dz7 * dz7 - dw7 * dw7<EOL>if attn7 > <NUM_LIT:0>:<EOL><INDENT>attn7 *= attn7<EOL>value += attn7 * attn7 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:1>, dx7, dy7, dz7, dw7)<EOL><DEDENT>dx8 = dx0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy8 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz8 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw8 = dw0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn8 = <NUM_LIT:2> - dx8 * dx8 - dy8 * dy8 - dz8 * dz8 - dw8 * dw8<EOL>if attn8 > <NUM_LIT:0>:<EOL><INDENT>attn8 *= attn8<EOL>value += attn8 * attn8 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:0>, dx8, dy8, dz8, dw8)<EOL><DEDENT>dx9 = dx0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy9 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz9 = dz0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw9 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn9 = <NUM_LIT:2> - dx9 * dx9 - dy9 * dy9 - dz9 * dz9 - dw9 * dw9<EOL>if attn9 > <NUM_LIT:0>:<EOL><INDENT>attn9 *= attn9<EOL>value += attn9 * attn9 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:1>, dx9, dy9, dz9, dw9)<EOL><DEDENT>dx10 = dx0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy10 = dy0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz10 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw10 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn10 = <NUM_LIT:2> - dx10 * dx10 - dy10 * dy10 - dz10 * dz10 - dw10 * dw10<EOL>if attn10 > <NUM_LIT:0>:<EOL><INDENT>attn10 *= attn10<EOL>value += attn10 * attn10 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:1>, dx10, dy10, dz10, dw10)<EOL><DEDENT><DEDENT>else: <EOL><INDENT>a_is_bigger_side = True<EOL>b_is_bigger_side = True<EOL>if xins + yins < zins + wins:<EOL><INDENT>a_score = xins + yins<EOL>a_po = <NUM_LIT><EOL><DEDENT>else:<EOL><INDENT>a_score = zins + wins<EOL>a_po = <NUM_LIT><EOL><DEDENT>if xins + zins < yins + wins:<EOL><INDENT>b_score = xins + zins<EOL>b_po = <NUM_LIT><EOL><DEDENT>else:<EOL><INDENT>b_score = yins + wins<EOL>b_po = <NUM_LIT><EOL><DEDENT>if xins + wins < yins + zins:<EOL><INDENT>score = xins + wins<EOL>if a_score <= b_score and score < b_score:<EOL><INDENT>b_score = score<EOL>b_po = <NUM_LIT><EOL><DEDENT>elif a_score > b_score and score < a_score:<EOL><INDENT>a_score = score<EOL>a_po = <NUM_LIT><EOL><DEDENT><DEDENT>else:<EOL><INDENT>score = yins + zins<EOL>if a_score <= b_score and score < b_score:<EOL><INDENT>b_score = score<EOL>b_po = <NUM_LIT><EOL><DEDENT>elif a_score > b_score and score < a_score:<EOL><INDENT>a_score = score<EOL>a_po = <NUM_LIT><EOL><DEDENT><DEDENT>p1 = <NUM_LIT:3> - in_sum + xins<EOL>if a_score <= b_score and p1 < b_score:<EOL><INDENT>b_score = p1<EOL>b_po = <NUM_LIT><EOL>b_is_bigger_side = False<EOL><DEDENT>elif a_score > b_score and p1 < a_score:<EOL><INDENT>a_score = p1<EOL>a_po = <NUM_LIT><EOL>a_is_bigger_side = False<EOL><DEDENT>p2 = <NUM_LIT:3> - in_sum + yins<EOL>if a_score <= b_score and p2 < b_score:<EOL><INDENT>b_score = p2<EOL>b_po = <NUM_LIT><EOL>b_is_bigger_side = False<EOL><DEDENT>elif a_score > b_score and p2 < a_score:<EOL><INDENT>a_score = p2<EOL>a_po = <NUM_LIT><EOL>a_is_bigger_side = False<EOL><DEDENT>p3 = <NUM_LIT:3> - in_sum + zins<EOL>if a_score <= b_score and p3 < b_score:<EOL><INDENT>b_score = p3<EOL>b_po = <NUM_LIT><EOL>b_is_bigger_side = False<EOL><DEDENT>elif a_score > b_score and p3 < a_score:<EOL><INDENT>a_score = p3<EOL>a_po = <NUM_LIT><EOL>a_is_bigger_side = False<EOL><DEDENT>p4 = <NUM_LIT:3> - in_sum + wins<EOL>if a_score <= b_score and p4 < b_score:<EOL><INDENT>b_po = <NUM_LIT><EOL>b_is_bigger_side = False<EOL><DEDENT>elif a_score > b_score and p4 < a_score:<EOL><INDENT>a_po = <NUM_LIT><EOL>a_is_bigger_side = False<EOL><DEDENT>if a_is_bigger_side == b_is_bigger_side:<EOL><INDENT>if a_is_bigger_side: <EOL><INDENT>c1 = (a_po & b_po)<EOL>c2 = (a_po | b_po)<EOL>xsv_ext0 = xsv_ext1 = xsb<EOL>ysv_ext0 = ysv_ext1 = ysb<EOL>zsv_ext0 = zsv_ext1 = zsb<EOL>wsv_ext0 = wsv_ext1 = wsb<EOL>dx_ext0 = dx0 - SQUISH_CONSTANT_4D<EOL>dy_ext0 = dy0 - SQUISH_CONSTANT_4D<EOL>dz_ext0 = dz0 - SQUISH_CONSTANT_4D<EOL>dw_ext0 = dw0 - SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy_ext1 = dy0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz_ext1 = dz0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw0 - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>if (c1 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>xsv_ext0 += <NUM_LIT:1><EOL>dx_ext0 -= <NUM_LIT:1><EOL>xsv_ext1 += <NUM_LIT:2><EOL>dx_ext1 -= <NUM_LIT:2><EOL><DEDENT>elif (c1 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 += <NUM_LIT:1><EOL>dy_ext0 -= <NUM_LIT:1><EOL>ysv_ext1 += <NUM_LIT:2><EOL>dy_ext1 -= <NUM_LIT:2><EOL><DEDENT>elif (c1 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 += <NUM_LIT:1><EOL>dz_ext0 -= <NUM_LIT:1><EOL>zsv_ext1 += <NUM_LIT:2><EOL>dz_ext1 -= <NUM_LIT:2><EOL><DEDENT>else:<EOL><INDENT>wsv_ext0 += <NUM_LIT:1><EOL>dw_ext0 -= <NUM_LIT:1><EOL>wsv_ext1 += <NUM_LIT:2><EOL>dw_ext1 -= <NUM_LIT:2><EOL><DEDENT>xsv_ext2 = xsb + <NUM_LIT:1><EOL>ysv_ext2 = ysb + <NUM_LIT:1><EOL>zsv_ext2 = zsb + <NUM_LIT:1><EOL>wsv_ext2 = wsb + <NUM_LIT:1><EOL>dx_ext2 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy_ext2 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz_ext2 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw_ext2 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>if (c2 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>xsv_ext2 -= <NUM_LIT:2><EOL>dx_ext2 += <NUM_LIT:2><EOL><DEDENT>elif (c2 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>ysv_ext2 -= <NUM_LIT:2><EOL>dy_ext2 += <NUM_LIT:2><EOL><DEDENT>elif (c2 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>zsv_ext2 -= <NUM_LIT:2><EOL>dz_ext2 += <NUM_LIT:2><EOL><DEDENT>else:<EOL><INDENT>wsv_ext2 -= <NUM_LIT:2><EOL>dw_ext2 += <NUM_LIT:2><EOL><DEDENT><DEDENT>else: <EOL><INDENT>xsv_ext2 = xsb + <NUM_LIT:1><EOL>ysv_ext2 = ysb + <NUM_LIT:1><EOL>zsv_ext2 = zsb + <NUM_LIT:1><EOL>wsv_ext2 = wsb + <NUM_LIT:1><EOL>dx_ext2 = dx0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>dy_ext2 = dy0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>dz_ext2 = dz0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>dw_ext2 = dw0 - <NUM_LIT:1> - <NUM_LIT:4> * SQUISH_CONSTANT_4D<EOL>c = (a_po & b_po)<EOL>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>xsv_ext0 = xsb + <NUM_LIT:2><EOL>xsv_ext1 = xsb + <NUM_LIT:1><EOL>dx_ext0 = dx0 - <NUM_LIT:2> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>xsv_ext0 = xsv_ext1 = xsb<EOL>dx_ext0 = dx_ext1 = dx0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysb + <NUM_LIT:1><EOL>dy_ext0 = dy_ext1 = dy0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 += <NUM_LIT:1><EOL>dy_ext0 -= <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>ysv_ext1 += <NUM_LIT:1><EOL>dy_ext1 -= <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysb<EOL>dy_ext0 = dy_ext1 = dy0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsb + <NUM_LIT:1><EOL>dz_ext0 = dz_ext1 = dz0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>if (c & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 += <NUM_LIT:1><EOL>dz_ext0 -= <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>zsv_ext1 += <NUM_LIT:1><EOL>dz_ext1 -= <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsb<EOL>dz_ext0 = dz_ext1 = dz0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>wsv_ext0 = wsb + <NUM_LIT:1><EOL>wsv_ext1 = wsb + <NUM_LIT:2><EOL>dw_ext0 = dw0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw0 - <NUM_LIT:2> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsb<EOL>dw_ext0 = dw_ext1 = dw0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT><DEDENT><DEDENT>else: <EOL><INDENT>if a_is_bigger_side:<EOL><INDENT>c1 = a_po<EOL>c2 = b_po<EOL><DEDENT>else:<EOL><INDENT>c1 = b_po<EOL>c2 = a_po<EOL><DEDENT>if (c1 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>xsv_ext0 = xsb + <NUM_LIT:2><EOL>xsv_ext1 = xsb + <NUM_LIT:1><EOL>dx_ext0 = dx0 - <NUM_LIT:2> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dx_ext1 = dx0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>xsv_ext0 = xsv_ext1 = xsb<EOL>dx_ext0 = dx_ext1 = dx0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c1 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysb + <NUM_LIT:1><EOL>dy_ext0 = dy_ext1 = dy0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>if (c1 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>ysv_ext0 += <NUM_LIT:1><EOL>dy_ext0 -= <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>ysv_ext1 += <NUM_LIT:1><EOL>dy_ext1 -= <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>ysv_ext0 = ysv_ext1 = ysb<EOL>dy_ext0 = dy_ext1 = dy0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c1 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsb + <NUM_LIT:1><EOL>dz_ext0 = dz_ext1 = dz0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>if (c1 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>zsv_ext0 += <NUM_LIT:1><EOL>dz_ext0 -= <NUM_LIT:1><EOL><DEDENT>else:<EOL><INDENT>zsv_ext1 += <NUM_LIT:1><EOL>dz_ext1 -= <NUM_LIT:1><EOL><DEDENT><DEDENT>else:<EOL><INDENT>zsv_ext0 = zsv_ext1 = zsb<EOL>dz_ext0 = dz_ext1 = dz0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>if (c1 & <NUM_LIT>) != <NUM_LIT:0>:<EOL><INDENT>wsv_ext0 = wsb + <NUM_LIT:1><EOL>wsv_ext1 = wsb + <NUM_LIT:2><EOL>dw_ext0 = dw0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dw_ext1 = dw0 - <NUM_LIT:2> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>else:<EOL><INDENT>wsv_ext0 = wsv_ext1 = wsb<EOL>dw_ext0 = dw_ext1 = dw0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL><DEDENT>xsv_ext2 = xsb + <NUM_LIT:1><EOL>ysv_ext2 = ysb + <NUM_LIT:1><EOL>zsv_ext2 = zsb + <NUM_LIT:1><EOL>wsv_ext2 = wsb + <NUM_LIT:1><EOL>dx_ext2 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy_ext2 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz_ext2 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw_ext2 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>if (c2 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>xsv_ext2 -= <NUM_LIT:2><EOL>dx_ext2 += <NUM_LIT:2><EOL><DEDENT>elif (c2 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>ysv_ext2 -= <NUM_LIT:2><EOL>dy_ext2 += <NUM_LIT:2><EOL><DEDENT>elif (c2 & <NUM_LIT>) == <NUM_LIT:0>:<EOL><INDENT>zsv_ext2 -= <NUM_LIT:2><EOL>dz_ext2 += <NUM_LIT:2><EOL><DEDENT>else:<EOL><INDENT>wsv_ext2 -= <NUM_LIT:2><EOL>dw_ext2 += <NUM_LIT:2><EOL><DEDENT><DEDENT>dx4 = dx0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dy4 = dy0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dz4 = dz0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dw4 = dw0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>attn4 = <NUM_LIT:2> - dx4 * dx4 - dy4 * dy4 - dz4 * dz4 - dw4 * dw4<EOL>if attn4 > <NUM_LIT:0>:<EOL><INDENT>attn4 *= attn4<EOL>value += attn4 * attn4 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:0>, dx4, dy4, dz4, dw4)<EOL><DEDENT>dx3 = dx4<EOL>dy3 = dy4<EOL>dz3 = dz0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dw3 = dw0 - <NUM_LIT:1> - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>attn3 = <NUM_LIT:2> - dx3 * dx3 - dy3 * dy3 - dz3 * dz3 - dw3 * dw3<EOL>if attn3 > <NUM_LIT:0>:<EOL><INDENT>attn3 *= attn3<EOL>value += attn3 * attn3 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:1>, dx3, dy3, dz3, dw3)<EOL><DEDENT>dx2 = dx4<EOL>dy2 = dy0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dz2 = dz4<EOL>dw2 = dw3<EOL>attn2 = <NUM_LIT:2> - dx2 * dx2 - dy2 * dy2 - dz2 * dz2 - dw2 * dw2<EOL>if attn2 > <NUM_LIT:0>:<EOL><INDENT>attn2 *= attn2<EOL>value += attn2 * attn2 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:1>, dx2, dy2, dz2, dw2)<EOL><DEDENT>dx1 = dx0 - <NUM_LIT:3> * SQUISH_CONSTANT_4D<EOL>dz1 = dz4<EOL>dy1 = dy4<EOL>dw1 = dw3<EOL>attn1 = <NUM_LIT:2> - dx1 * dx1 - dy1 * dy1 - dz1 * dz1 - dw1 * dw1<EOL>if attn1 > <NUM_LIT:0>:<EOL><INDENT>attn1 *= attn1<EOL>value += attn1 * attn1 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:1>, dx1, dy1, dz1, dw1)<EOL><DEDENT>dx5 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy5 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz5 = dz0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw5 = dw0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn5 = <NUM_LIT:2> - dx5 * dx5 - dy5 * dy5 - dz5 * dz5 - dw5 * dw5<EOL>if attn5 > <NUM_LIT:0>:<EOL><INDENT>attn5 *= attn5<EOL>value += attn5 * attn5 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:0>, dx5, dy5, dz5, dw5)<EOL><DEDENT>dx6 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy6 = dy0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz6 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw6 = dw0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn6 = <NUM_LIT:2> - dx6 * dx6 - dy6 * dy6 - dz6 * dz6 - dw6 * dw6<EOL>if attn6 > <NUM_LIT:0>:<EOL><INDENT>attn6 *= attn6<EOL>value += attn6 * attn6 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:0>, dx6, dy6, dz6, dw6)<EOL><DEDENT>dx7 = dx0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy7 = dy0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz7 = dz0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw7 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn7 = <NUM_LIT:2> - dx7 * dx7 - dy7 * dy7 - dz7 * dz7 - dw7 * dw7<EOL>if attn7 > <NUM_LIT:0>:<EOL><INDENT>attn7 *= attn7<EOL>value += attn7 * attn7 * extrapolate(xsb + <NUM_LIT:1>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:1>, dx7, dy7, dz7, dw7)<EOL><DEDENT>dx8 = dx0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy8 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz8 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw8 = dw0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn8 = <NUM_LIT:2> - dx8 * dx8 - dy8 * dy8 - dz8 * dz8 - dw8 * dw8<EOL>if attn8 > <NUM_LIT:0>:<EOL><INDENT>attn8 *= attn8<EOL>value += attn8 * attn8 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:0>, dx8, dy8, dz8, dw8)<EOL><DEDENT>dx9 = dx0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy9 = dy0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz9 = dz0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw9 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn9 = <NUM_LIT:2> - dx9 * dx9 - dy9 * dy9 - dz9 * dz9 - dw9 * dw9<EOL>if attn9 > <NUM_LIT:0>:<EOL><INDENT>attn9 *= attn9<EOL>value += attn9 * attn9 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:1>, zsb + <NUM_LIT:0>, wsb + <NUM_LIT:1>, dx9, dy9, dz9, dw9)<EOL><DEDENT>dx10 = dx0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dy10 = dy0 - <NUM_LIT:0> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dz10 = dz0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>dw10 = dw0 - <NUM_LIT:1> - <NUM_LIT:2> * SQUISH_CONSTANT_4D<EOL>attn10 = <NUM_LIT:2> - dx10 * dx10 - dy10 * dy10 - dz10 * dz10 - dw10 * dw10<EOL>if attn10 > <NUM_LIT:0>:<EOL><INDENT>attn10 *= attn10<EOL>value += attn10 * attn10 * extrapolate(xsb + <NUM_LIT:0>, ysb + <NUM_LIT:0>, zsb + <NUM_LIT:1>, wsb + <NUM_LIT:1>, dx10, dy10, dz10, dw10)<EOL><DEDENT><DEDENT>attn_ext0 = <NUM_LIT:2> - dx_ext0 * dx_ext0 - dy_ext0 * dy_ext0 - dz_ext0 * dz_ext0 - dw_ext0 * dw_ext0<EOL>if attn_ext0 > <NUM_LIT:0>:<EOL><INDENT>attn_ext0 *= attn_ext0<EOL>value += attn_ext0 * attn_ext0 * extrapolate(xsv_ext0, ysv_ext0, zsv_ext0, wsv_ext0, dx_ext0, dy_ext0, dz_ext0, dw_ext0)<EOL><DEDENT>attn_ext1 = <NUM_LIT:2> - dx_ext1 * dx_ext1 - dy_ext1 * dy_ext1 - dz_ext1 * dz_ext1 - dw_ext1 * dw_ext1<EOL>if attn_ext1 > <NUM_LIT:0>:<EOL><INDENT>attn_ext1 *= attn_ext1<EOL>value += attn_ext1 * attn_ext1 * extrapolate(xsv_ext1, ysv_ext1, zsv_ext1, wsv_ext1, dx_ext1, dy_ext1, dz_ext1, dw_ext1)<EOL><DEDENT>attn_ext2 = <NUM_LIT:2> - dx_ext2 * dx_ext2 - dy_ext2 * dy_ext2 - dz_ext2 * dz_ext2 - dw_ext2 * dw_ext2<EOL>if attn_ext2 > <NUM_LIT:0>:<EOL><INDENT>attn_ext2 *= attn_ext2<EOL>value += attn_ext2 * attn_ext2 * extrapolate(xsv_ext2, ysv_ext2, zsv_ext2, wsv_ext2, dx_ext2, dy_ext2, dz_ext2, dw_ext2)<EOL><DEDENT>return value / NORM_CONSTANT_4D<EOL>
Generate 4D OpenSimplex noise from X,Y,Z,W coordinates.