From 3815c2f605e2995f47534261f240ef2192c07421 Mon Sep 17 00:00:00 2001 From: Erin Dachtler Date: Sun, 12 Aug 2018 15:18:27 -0700 Subject: [PATCH] 1.0! --- .DS_Store | Bin 6148 -> 0 bytes .gitignore | 2 + README.md | 52 +- blockies.js | 129 - blockies.min.js | 1 - bower.json | 24 - build.js | 69 - dist/blockies.min.js | 1 + ethereum-address-sample.html | 45 - examples/ethereum-address-sample.html | 33 + examples/random-samples.html | 48 + examples/sample.png | Bin 0 -> 16048 bytes examples/server.mjs | 8 + hqx.js | 11874 ------------------------ package-lock.json | 1108 +++ package.json | 24 +- random-samples.html | 77 - react-component.js | 34 - sample.png | Bin 166754 -> 0 bytes src/blockies.mjs | 114 + 20 files changed, 1366 insertions(+), 12277 deletions(-) delete mode 100644 .DS_Store create mode 100644 .gitignore delete mode 100644 blockies.js delete mode 100644 blockies.min.js delete mode 100644 bower.json delete mode 100644 build.js create mode 100644 dist/blockies.min.js delete mode 100644 ethereum-address-sample.html create mode 100644 examples/ethereum-address-sample.html create mode 100644 examples/random-samples.html create mode 100644 examples/sample.png create mode 100644 examples/server.mjs delete mode 100755 hqx.js create mode 100644 package-lock.json delete mode 100644 random-samples.html delete mode 100644 react-component.js delete mode 100644 sample.png create mode 100644 src/blockies.mjs diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0> 19) ^ t ^ (t >> 8)); - - return (randseed[3]>>>0) / ((1 << 31)>>>0); - } - - function createColor() { - //saturation is the whole color spectrum - var h = Math.floor(rand() * 360); - //saturation goes from 40 to 100, it avoids greyish colors - var s = ((rand() * 60) + 40) + '%'; - //lightness can be anything from 0 to 100, but probabilities are a bell curve around 50% - var l = ((rand()+rand()+rand()+rand()) * 25) + '%'; - - var color = 'hsl(' + h + ',' + s + ',' + l + ')'; - return color; - } - - function createImageData(size) { - var width = size; // Only support square icons for now - var height = size; - - var dataWidth = Math.ceil(width / 2); - var mirrorWidth = width - dataWidth; - - var data = []; - for(var y = 0; y < height; y++) { - var row = []; - for(var x = 0; x < dataWidth; x++) { - // this makes foreground and background color to have a 43% (1/2.3) probability - // spot color has 13% chance - row[x] = Math.floor(rand()*2.3); - } - var r = row.slice(0, mirrorWidth); - r.reverse(); - row = row.concat(r); - - for(var i = 0; i < row.length; i++) { - data.push(row[i]); - } - } - - return data; - } - - function buildOpts(opts) { - var newOpts = {}; - - newOpts.seed = opts.seed || Math.floor((Math.random()*Math.pow(10,16))).toString(16); - - seedrand(newOpts.seed); - - newOpts.size = opts.size || 8; - newOpts.scale = opts.scale || 4; - newOpts.color = opts.color || createColor(); - newOpts.bgcolor = opts.bgcolor || createColor(); - newOpts.spotcolor = opts.spotcolor || createColor(); - - return newOpts; - } - - function renderIcon(opts, canvas) { - opts = buildOpts(opts || {}); - var imageData = createImageData(opts.size); - var width = Math.sqrt(imageData.length); - - canvas.width = canvas.height = opts.size * opts.scale; - - var cc = canvas.getContext('2d'); - cc.fillStyle = opts.bgcolor; - cc.fillRect(0, 0, canvas.width, canvas.height); - cc.fillStyle = opts.color; - - for(var i = 0; i < imageData.length; i++) { - - // if data is 0, leave the background - if(imageData[i]) { - var row = Math.floor(i / width); - var col = i % width; - - // if data is 2, choose spot color, if 1 choose foreground - cc.fillStyle = (imageData[i] == 1) ? opts.color : opts.spotcolor; - - cc.fillRect(col * opts.scale, row * opts.scale, opts.scale, opts.scale); - } - } - return canvas; - } - - function createIcon(opts) { - var canvas = document.createElement('canvas'); - - renderIcon(opts, canvas); - - return canvas; - } - - var api = { - create: createIcon, - render: renderIcon - }; - - if (typeof module !== "undefined") { - module.exports = api; - } - if (typeof window !== "undefined") { - window.blockies = api; - } - -})(); diff --git a/blockies.min.js b/blockies.min.js deleted file mode 100644 index 161defa..0000000 --- a/blockies.min.js +++ /dev/null @@ -1 +0,0 @@ -!function(){function e(e){for(var o=0;o>19^e^e>>8,(c[3]>>>0)/(1<<31>>>0)}function r(){var e=Math.floor(360*o()),r=60*o()+40+"%",t=25*(o()+o()+o()+o())+"%",l="hsl("+e+","+r+","+t+")";return l}function t(e){for(var r=e,t=e,l=Math.ceil(r/2),n=r-l,a=[],c=0;t>c;c++){for(var i=[],f=0;l>f;f++)i[f]=Math.floor(2.3*o());var s=i.slice(0,n);s.reverse(),i=i.concat(s);for(var h=0;h" - ], - "description": "<1k library that generates blocky identicons", - "moduleType": [ - "globals" - ], - "keywords": [ - "identicon", - "blocky" - ], - "license": "MIT", - "ignore": [ - "**/.*", - "README.md", - "sample.png", - "build.js" - ] -} diff --git a/build.js b/build.js deleted file mode 100644 index b10bfb4..0000000 --- a/build.js +++ /dev/null @@ -1,69 +0,0 @@ -var http = require('http'); -var qs = require('querystring'); -var fs = require('fs'); - -function build(inFile, outFile) { - console.log('Reading ' + inFile); - var inFileContents = fs.readFileSync(inFile, {encoding: 'utf8'}); - console.log('Read ' + inFileContents.length + ' bytes'); - - console.log('Compressing...'); - compress(inFileContents, function(err, code) { - if(err) throw err; - - var percent = Math.floor((code.length / inFileContents.length) * 100); - console.log('Compressed ' + inFileContents.length + ' to ' + - code.length + ' bytes (' + percent + '%)'); - console.log('Writing ' + outFile); - fs.writeFileSync(outFile, code); - }); -} - -function compress(code, cb) { - cb = once(cb); - - var code; // TODO - var params = { - output_format: 'json', - output_info: 'compiled_code', - compilation_level: 'SIMPLE_OPTIMIZATIONS', - warning_level: 'verbose', - output_file_name: 'default.js', - js_code: code - }; - var req = http.request({ - method: 'POST', - headers: { - 'Content-Type': 'application/x-www-form-urlencoded' - }, - hostname: 'closure-compiler.appspot.com', - path: '/compile' - }, function(res) { - res.setEncoding('utf8'); - var body = ''; - res.on('readable', function() { - body += res.read(); - }).on('end', function() { - try { - var code = JSON.parse(body).compiledCode; - cb(null, code); - } catch(e) { - cb(e); - } - }).on('error', cb); - }); - req.end(qs.stringify(params)); - req.on('error', cb); -} - -function once(fn) { - var f = function() { - if(f.called) return; - f.called = true; - return fn.apply(this, arguments); - } - return f; -} - - -build('blockies.js', 'blockies.min.js'); diff --git a/dist/blockies.min.js b/dist/blockies.min.js new file mode 100644 index 0000000..2fd6503 --- /dev/null +++ b/dist/blockies.min.js @@ -0,0 +1 @@ +(function(){function a(a){for(var b=0;b>19^a^a>>8,(h[3]>>>0)/2147483648}function c(){var a=g(360*b()),c=60*b()+40+"%",d=25*(b()+b()+b()+b())+"%";return"hsl("+a+","+c+","+d+")"}function d(a){for(var c,d=a,e=Math.ceil(d/2),f=[],h=0;h - - - - - -
-
- - - - - - - - - diff --git a/examples/ethereum-address-sample.html b/examples/ethereum-address-sample.html new file mode 100644 index 0000000..f363bd9 --- /dev/null +++ b/examples/ethereum-address-sample.html @@ -0,0 +1,33 @@ + + + + + +
+ + diff --git a/examples/random-samples.html b/examples/random-samples.html new file mode 100644 index 0000000..bd84bf3 --- /dev/null +++ b/examples/random-samples.html @@ -0,0 +1,48 @@ + + + + + + + \ No newline at end of file diff --git a/examples/sample.png b/examples/sample.png new file mode 100644 index 0000000000000000000000000000000000000000..fa197c67f1ee2430d7c36a7fbbce92d34f82d58f GIT binary patch literal 16048 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 literal 0 HcmV?d00001 diff --git a/examples/server.mjs b/examples/server.mjs new file mode 100644 index 0000000..4e9ccc8 --- /dev/null +++ b/examples/server.mjs @@ -0,0 +1,8 @@ +import Koa from 'koa'; +import koaStatic from 'koa-static'; + +const app = new Koa; + +app.use(koaStatic('./')); + +app.listen(8080, () => console.log('Listening on 8080')); \ No newline at end of file diff --git a/hqx.js b/hqx.js deleted file mode 100755 index e5d0493..0000000 --- a/hqx.js +++ /dev/null @@ -1,11874 +0,0 @@ -// ==ClosureCompiler== -// @compilation_level SIMPLE_OPTIMIZATIONS -// ==/ClosureCompiler== - -/* - * Copyright (C) 2003 Maxim Stepin ( maxst@hiend3d.com ) - * - * Copyright (C) 2010 Cameron Zemek ( grom@zeminvaders.net ) - * - * Copyright (C) 2010 Dominic Szablewski ( mail@phoboslab.org ) - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - - -(function(window){ - -"use strict"; // strict will be optimized on engines (https://developer.mozilla.org/en/JavaScript/Strict_mode) - -var - _src = null, - _dest = null, - - _MASK_2 = 0x00FF00, - _MASK_13 = 0xFF00FF, - - _Ymask = 0x00FF0000, - _Umask = 0x0000FF00, - _Vmask = 0x000000FF, - - _trY = 0x00300000, - _trU = 0x00000700, - _trV = 0x00000006; - -var _Math = window.Math; // global to local. SHALL NOT cache abs directly (http://jsperf.com/math-vs-global/2) - -var _RGBtoYUV = function( c ) { - var r = (c & 0xFF0000) >> 16; - var g = (c & 0x00FF00) >> 8; - var b = c & 0x0000FF; - return ((/*y=*/(0.299*r + 0.587*g + 0.114*b) | 0) << 16) + - ((/*u=*/((-0.169*r - 0.331*g + 0.5*b) + 128) | 0) << 8) + - (/*v=*/((0.5*r - 0.419*g - 0.081*b) + 128) | 0); -}; - -var _Diff = function( w1, w2 ) { - // Mask against RGB_MASK to discard the alpha channel - var YUV1 = _RGBtoYUV(w1); - var YUV2 = _RGBtoYUV(w2); - return ((_Math.abs((YUV1 & _Ymask) - (YUV2 & _Ymask)) > _trY ) || - ( _Math.abs((YUV1 & _Umask) - (YUV2 & _Umask)) > _trU ) || - ( _Math.abs((YUV1 & _Vmask) - (YUV2 & _Vmask)) > _trV ) ); -}; - -/* Interpolate functions */ - -var _Interp1 = function( pc, c1, c2 ) { - //*pc = (c1*3+c2) >> 2; - if (c1 === c2) { - _dest[pc] = c1; - return; - } - _dest[pc] = ((((c1 & _MASK_2) * 3 + (c2 & _MASK_2)) >> 2) & _MASK_2) + - ((((c1 & _MASK_13) * 3 + (c2 & _MASK_13)) >> 2) & _MASK_13); - - _dest[pc] |= (c1 & 0xFF000000); -}; - -var _Interp2 = function( pc, c1, c2, c3 ) { - //*pc = (c1*2+c2+c3) >> 2; - _dest[pc] = (((((c1 & _MASK_2) << 1) + (c2 & _MASK_2) + (c3 & _MASK_2)) >> 2) & _MASK_2) + - (((((c1 & _MASK_13) << 1) + (c2 & _MASK_13) + (c3 & _MASK_13)) >> 2) & _MASK_13); - - _dest[pc] |= (c1 & 0xFF000000); -}; - -var _Interp3 = function( pc, c1, c2 ) { - //*pc = (c1*7+c2)/8; - if (c1 === c2) { - _dest[pc] = c1; - return; - } - _dest[pc] = ((((c1 & _MASK_2) * 7 + (c2 & _MASK_2)) >> 3) & _MASK_2) + - ((((c1 & _MASK_13) * 7 + (c2 & _MASK_13)) >> 3) & _MASK_13); - - _dest[pc] |= (c1 & 0xFF000000); -}; - -var _Interp4 = function( pc, c1, c2, c3 ) { - //*pc = (c1*2+(c2+c3)*7)/16; - _dest[pc] = (((((c1 & _MASK_2) << 1) + (c2 & _MASK_2) * 7 + (c3 & _MASK_2) * 7) >> 4) & _MASK_2) + - (((((c1 & _MASK_13) << 1) + (c2 & _MASK_13) * 7 + (c3 & _MASK_13) * 7) >> 4) & _MASK_13); - - _dest[pc] |= (c1 & 0xFF000000); -}; - -var _Interp5 = function( pc, c1, c2 ) { - //*pc = (c1+c2) >> 1; - if (c1 === c2) { - _dest[pc] = c1; - return; - } - _dest[pc] = ((((c1 & _MASK_2) + (c2 & _MASK_2)) >> 1) & _MASK_2) + - ((((c1 & _MASK_13) + (c2 & _MASK_13)) >> 1) & _MASK_13); - - _dest[pc] |= (c1 & 0xFF000000); -}; - -var _Interp6 = function( pc, c1, c2, c3 ) { - //*pc = (c1*5+c2*2+c3)/8; - _dest[pc] = ((((c1 & _MASK_2) * 5 + ((c2 & _MASK_2) << 1) + (c3 & _MASK_2)) >> 3) & _MASK_2) + - ((((c1 & _MASK_13) * 5 + ((c2 & _MASK_13) << 1) + (c3 & _MASK_13)) >> 3) & _MASK_13); - - _dest[pc] |= (c1 & 0xFF000000); -}; - -var _Interp7 = function( pc, c1, c2, c3 ) { - //*pc = (c1*6+c2+c3)/8; - _dest[pc] = ((((c1 & _MASK_2) * 6 + (c2 & _MASK_2) + (c3 & _MASK_2)) >> 3) & _MASK_2) + - ((((c1 & _MASK_13) * 6 + (c2 & _MASK_13) + (c3 & _MASK_13)) >> 3) & _MASK_13); - - _dest[pc] |= (c1 & 0xFF000000); -}; - -var _Interp8 = function( pc, c1, c2 ) { - //*pc = (c1*5+c2*3)/8; - if (c1 === c2) { - _dest[pc] = c1; - return; - } - _dest[pc] = ((((c1 & _MASK_2) * 5 + (c2 & _MASK_2) * 3) >> 3) & _MASK_2) + - ((((c1 & _MASK_13) * 5 + (c2 & _MASK_13) * 3) >> 3) & _MASK_13); - - _dest[pc] |= (c1 & 0xFF000000); -}; - -var _Interp9 = function( pc, c1, c2, c3 ) { - //*pc = (c1*2+(c2+c3)*3)/8; - _dest[pc] = (((((c1 & _MASK_2) << 1) + (c2 & _MASK_2) * 3 + (c3 & _MASK_2) * 3) >> 3) & _MASK_2) + - (((((c1 & _MASK_13) << 1) + (c2 & _MASK_13) * 3 + (c3 & _MASK_13) * 3) >> 3) & _MASK_13); - - _dest[pc] |= (c1 & 0xFF000000); -}; - -var _Interp10 = function( pc, c1, c2, c3 ) { - //*pc = (c1*14+c2+c3)/16; - _dest[pc] = ((((c1 & _MASK_2) * 14 + (c2 & _MASK_2) + (c3 & _MASK_2)) >> 4) & _MASK_2) + - ((((c1 & _MASK_13) * 14 + (c2 & _MASK_13) + (c3 & _MASK_13)) >> 4) & _MASK_13); - - _dest[pc] |= (c1 & 0xFF000000); -}; - - -var getVendorAttribute = function( el, attr ) { - var uc = attr.charAt(0).toUpperCase() + attr.substr(1); - return el[attr] || el['ms'+uc] || el['moz'+uc] || el['webkit'+uc] || el['o'+uc]; -}; - - -// This function normalizes getImageData to extract the real, actual -// pixels from an image. The naive method recently failed on retina -// devices with a backgingStoreRatio != 1 -var getImagePixels = function( image, x, y, width, height ) { - var canvas = document.createElement('canvas'); - var ctx = canvas.getContext('2d'); - - var ratio = getVendorAttribute( ctx, 'backingStorePixelRatio' ) || 1; - ctx.getImageDataHD = getVendorAttribute( ctx, 'getImageDataHD' ); - - var realWidth = image.width / ratio, - realHeight = image.height / ratio; - - canvas.width = Math.ceil( realWidth ); - canvas.height = Math.ceil( realHeight ); - - ctx.drawImage( image, 0, 0, realWidth, realHeight ); - - return (ratio === 1) - ? ctx.getImageData( x, y, width, height ) - : ctx.getImageDataHD( x, y, width, height ); -}; - - -window.hqx = function( img, scale ) { - // We can only scale with a factor of 2, 3 or 4 - if( [2,3,4].indexOf(scale) === -1 ) { - return img; - } - - var orig, origCtx, scaled, origPixels; - if (img instanceof HTMLCanvasElement){ - orig = img; - origCtx = orig.getContext('2d'); - scaled = orig; - origPixels = origCtx.getImageData(0, 0, orig.width, orig.height).data; - } else { - origPixels = getImagePixels( img, 0, 0, img.width, img.height ).data; - scaled = document.createElement('canvas'); - } - - - // pack RGBA colors into integers - var count = img.width * img.height; - var src = _src = new Array(count); - var dest = _dest = new Array(count*scale*scale); - var index; - for(var i = 0; i < count; i++) { - src[i] = (origPixels[(index = i << 2)+3] << 24) + - (origPixels[index+2] << 16) + - (origPixels[index+1] << 8) + - origPixels[index]; - } - - // This is where the magic happens - if( scale === 2 ) hq2x( img.width, img.height ); - else if( scale === 3 ) hq3x( img.width, img.height ); - else if( scale === 4 ) hq4x( img.width, img.height ); - // alternative: window['hq'+scale+'x']( img.width, img.height ); - - scaled.width = img.width * scale; - scaled.height = img.height * scale; - - var scaledCtx = scaled.getContext('2d'); - var scaledPixels = scaledCtx.getImageData( 0, 0, scaled.width, scaled.height ); - var scaledPixelsData = scaledPixels.data; - - // unpack integers to RGBA - var c, a, destLength = dest.length; - for( var j = 0; j < destLength; j++ ) { - a = ((c = dest[j]) & 0xFF000000) >> 24; - scaledPixelsData[(index = j << 2)+3] = a < 0 ? a + 256 : 0; // signed/unsigned :/ - scaledPixelsData[index+2] = (c & 0x00FF0000) >> 16; - scaledPixelsData[index+1] = (c & 0x0000FF00) >> 8; - scaledPixelsData[index] = c & 0x000000FF; - } - _src = src = null; - _dest = dest = null; - scaledCtx.putImageData( scaledPixels, 0, 0 ); - return scaled; -}; - - - - - -//------------------------------------------------------------------------------ -//------------------------------------------------------------------------------ -//------------------------------------------------------------------------------ -// hq 2x - -var hq2x = function( width, height ) { - var - i, j, k, - prevline, nextline, - w = [], - //dpL = width * 2, optimized - dpL = width << 1, - - dp = 0, - sp = 0; - - // internal to local optimization - var - Diff = _Diff, - Math = _Math, - RGBtoYUV = _RGBtoYUV, - Interp1 = _Interp1, - Interp2 = _Interp2, - Interp3 = _Interp3, - Interp4 = _Interp4, - Interp5 = _Interp5, - Interp6 = _Interp6, - Interp7 = _Interp7, - Interp8 = _Interp8, - Interp9 = _Interp9, - Interp10 = _Interp10, - src = _src, - dest = _dest, - MASK_2 = _MASK_2, - MASK_13 = _MASK_13, - Ymask = _Ymask, - Umask = _Umask, - Vmask = _Vmask, - trY = _trY, - trU = _trU, - trV = _trV, - YUV1, YUV2; - - - // +----+----+----+ - // | | | | - // | w1 | w2 | w3 | - // +----+----+----+ - // | | | | - // | w4 | w5 | w6 | - // +----+----+----+ - // | | | | - // | w7 | w8 | w9 | - // +----+----+----+ - - for (j=0; j0 ? -width : 0; - nextline = j0) - { - w[1] = src[sp + prevline - 1]; - w[4] = src[sp - 1]; - w[7] = src[sp + nextline - 1]; - } - else - { - w[1] = w[2]; - w[4] = w[5]; - w[7] = w[8]; - } - - if (i trY ) || - ( Math.abs((YUV1 & Umask) - (YUV2 & Umask)) > trU ) || - ( Math.abs((YUV1 & Vmask) - (YUV2 & Vmask)) > trV ) ) - pattern |= flag; - } - flag <<= 1; - } - - switch (pattern) - { - case 0: - case 1: - case 4: - case 32: - case 128: - case 5: - case 132: - case 160: - case 33: - case 129: - case 36: - case 133: - case 164: - case 161: - case 37: - case 165: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 2: - case 34: - case 130: - case 162: - { - Interp2(dp, w[5], w[1], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 16: - case 17: - case 48: - case 49: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 64: - case 65: - case 68: - case 69: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 8: - case 12: - case 136: - case 140: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 3: - case 35: - case 131: - case 163: - { - Interp1(dp, w[5], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 6: - case 38: - case 134: - case 166: - { - Interp2(dp, w[5], w[1], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 20: - case 21: - case 52: - case 53: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 144: - case 145: - case 176: - case 177: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 192: - case 193: - case 196: - case 197: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 96: - case 97: - case 100: - case 101: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 40: - case 44: - case 168: - case 172: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 9: - case 13: - case 137: - case 141: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 18: - case 50: - { - Interp2(dp, w[5], w[1], w[4]); - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 80: - case 81: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp2(dp+dpL, w[5], w[7], w[4]); - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 72: - case 76: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 10: - case 138: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp2(dp+1, w[5], w[3], w[6]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 66: - { - Interp2(dp, w[5], w[1], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 24: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 7: - case 39: - case 135: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 148: - case 149: - case 180: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 224: - case 228: - case 225: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 41: - case 169: - case 45: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 22: - case 54: - { - Interp2(dp, w[5], w[1], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 208: - case 209: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp2(dp+dpL, w[5], w[7], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 104: - case 108: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 11: - case 139: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp2(dp+1, w[5], w[3], w[6]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 19: - case 51: - { - if (Diff(w[2], w[6])) - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp6(dp, w[5], w[2], w[4]); - Interp9(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 146: - case 178: - { - Interp2(dp, w[5], w[1], w[4]); - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - Interp1(dp+dpL+1, w[5], w[8]); - } - else - { - Interp9(dp+1, w[5], w[2], w[6]); - Interp6(dp+dpL+1, w[5], w[6], w[8]); - } - Interp2(dp+dpL, w[5], w[8], w[4]); - break; - } - case 84: - case 85: - { - Interp2(dp, w[5], w[4], w[2]); - if (Diff(w[6], w[8])) - { - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp6(dp+1, w[5], w[6], w[2]); - Interp9(dp+dpL+1, w[5], w[6], w[8]); - } - Interp2(dp+dpL, w[5], w[7], w[4]); - break; - } - case 112: - case 113: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL, w[5], w[4]); - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp6(dp+dpL, w[5], w[8], w[4]); - Interp9(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 200: - case 204: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - Interp1(dp+dpL+1, w[5], w[6]); - } - else - { - Interp9(dp+dpL, w[5], w[8], w[4]); - Interp6(dp+dpL+1, w[5], w[8], w[6]); - } - break; - } - case 73: - case 77: - { - if (Diff(w[8], w[4])) - { - Interp1(dp, w[5], w[2]); - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp6(dp, w[5], w[4], w[2]); - Interp9(dp+dpL, w[5], w[8], w[4]); - } - Interp2(dp+1, w[5], w[2], w[6]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 42: - case 170: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - Interp1(dp+dpL, w[5], w[8]); - } - else - { - Interp9(dp, w[5], w[4], w[2]); - Interp6(dp+dpL, w[5], w[4], w[8]); - } - Interp2(dp+1, w[5], w[3], w[6]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 14: - case 142: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[6]); - } - else - { - Interp9(dp, w[5], w[4], w[2]); - Interp6(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 67: - { - Interp1(dp, w[5], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 70: - { - Interp2(dp, w[5], w[1], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 28: - { - Interp2(dp, w[5], w[1], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 152: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 194: - { - Interp2(dp, w[5], w[1], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 98: - { - Interp2(dp, w[5], w[1], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 56: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 25: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 26: - case 31: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 82: - case 214: - { - Interp2(dp, w[5], w[1], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[7], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 88: - case 248: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 74: - case 107: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp2(dp+1, w[5], w[3], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 27: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp1(dp+1, w[5], w[3]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 86: - { - Interp2(dp, w[5], w[1], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp1(dp+dpL+1, w[5], w[9]); - break; - } - case 216: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp1(dp+dpL, w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 106: - { - Interp1(dp, w[5], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 30: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 210: - { - Interp2(dp, w[5], w[1], w[4]); - Interp1(dp+1, w[5], w[3]); - Interp2(dp+dpL, w[5], w[7], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 120: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp1(dp+dpL+1, w[5], w[9]); - break; - } - case 75: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp2(dp+1, w[5], w[3], w[6]); - Interp1(dp+dpL, w[5], w[7]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 29: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 198: - { - Interp2(dp, w[5], w[1], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 184: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp1(dp+dpL, w[5], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 99: - { - Interp1(dp, w[5], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 57: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 71: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 156: - { - Interp2(dp, w[5], w[1], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 226: - { - Interp2(dp, w[5], w[1], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 60: - { - Interp2(dp, w[5], w[1], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 195: - { - Interp1(dp, w[5], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 102: - { - Interp2(dp, w[5], w[1], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 153: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 58: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 83: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[7], w[4]); - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 92: - { - Interp2(dp, w[5], w[1], w[2]); - Interp1(dp+1, w[5], w[2]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 202: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - Interp2(dp+1, w[5], w[3], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 78: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - Interp1(dp+1, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 154: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 114: - { - Interp2(dp, w[5], w[1], w[4]); - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 89: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 90: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 55: - case 23: - { - if (Diff(w[2], w[6])) - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - } - else - { - Interp6(dp, w[5], w[2], w[4]); - Interp9(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 182: - case 150: - { - Interp2(dp, w[5], w[1], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - Interp1(dp+dpL+1, w[5], w[8]); - } - else - { - Interp9(dp+1, w[5], w[2], w[6]); - Interp6(dp+dpL+1, w[5], w[6], w[8]); - } - Interp2(dp+dpL, w[5], w[8], w[4]); - break; - } - case 213: - case 212: - { - Interp2(dp, w[5], w[4], w[2]); - if (Diff(w[6], w[8])) - { - Interp1(dp+1, w[5], w[2]); - dest[dp+dpL+1] = w[5]; - } - else - { - Interp6(dp+1, w[5], w[6], w[2]); - Interp9(dp+dpL+1, w[5], w[6], w[8]); - } - Interp2(dp+dpL, w[5], w[7], w[4]); - break; - } - case 241: - case 240: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - else - { - Interp6(dp+dpL, w[5], w[8], w[4]); - Interp9(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 236: - case 232: - { - Interp2(dp, w[5], w[1], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - Interp1(dp+dpL+1, w[5], w[6]); - } - else - { - Interp9(dp+dpL, w[5], w[8], w[4]); - Interp6(dp+dpL+1, w[5], w[8], w[6]); - } - break; - } - case 109: - case 105: - { - if (Diff(w[8], w[4])) - { - Interp1(dp, w[5], w[2]); - dest[dp+dpL] = w[5]; - } - else - { - Interp6(dp, w[5], w[4], w[2]); - Interp9(dp+dpL, w[5], w[8], w[4]); - } - Interp2(dp+1, w[5], w[2], w[6]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 171: - case 43: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - Interp1(dp+dpL, w[5], w[8]); - } - else - { - Interp9(dp, w[5], w[4], w[2]); - Interp6(dp+dpL, w[5], w[4], w[8]); - } - Interp2(dp+1, w[5], w[3], w[6]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 143: - case 15: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - Interp1(dp+1, w[5], w[6]); - } - else - { - Interp9(dp, w[5], w[4], w[2]); - Interp6(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 124: - { - Interp2(dp, w[5], w[1], w[2]); - Interp1(dp+1, w[5], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp1(dp+dpL+1, w[5], w[9]); - break; - } - case 203: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp2(dp+1, w[5], w[3], w[6]); - Interp1(dp+dpL, w[5], w[7]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 62: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 211: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[3]); - Interp2(dp+dpL, w[5], w[7], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 118: - { - Interp2(dp, w[5], w[1], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - Interp1(dp+dpL+1, w[5], w[9]); - break; - } - case 217: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp1(dp+dpL, w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 110: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 155: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp1(dp+1, w[5], w[3]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 188: - { - Interp2(dp, w[5], w[1], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 185: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - Interp1(dp+dpL, w[5], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 61: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 157: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 103: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 227: - { - Interp1(dp, w[5], w[4]); - Interp2(dp+1, w[5], w[3], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 230: - { - Interp2(dp, w[5], w[1], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 199: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp2(dp+dpL, w[5], w[7], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 220: - { - Interp2(dp, w[5], w[1], w[2]); - Interp1(dp+1, w[5], w[2]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 158: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 234: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - Interp2(dp+1, w[5], w[3], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 242: - { - Interp2(dp, w[5], w[1], w[4]); - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 59: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 121: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 87: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[7], w[4]); - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 79: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp1(dp+1, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 122: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 94: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 218: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 91: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 229: - { - Interp2(dp, w[5], w[4], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 167: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 173: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 181: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 186: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 115: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 93: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 206: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - Interp1(dp+1, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 205: - case 201: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+dpL, w[5], w[7]); - } - else - { - Interp7(dp+dpL, w[5], w[8], w[4]); - } - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 174: - case 46: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[4]); - } - else - { - Interp7(dp, w[5], w[4], w[2]); - } - Interp1(dp+1, w[5], w[6]); - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 179: - case 147: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - Interp1(dp+1, w[5], w[3]); - } - else - { - Interp7(dp+1, w[5], w[2], w[6]); - } - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 117: - case 116: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL+1, w[5], w[9]); - } - else - { - Interp7(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 189: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 231: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 126: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp1(dp+dpL+1, w[5], w[9]); - break; - } - case 219: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp1(dp+1, w[5], w[3]); - Interp1(dp+dpL, w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 125: - { - if (Diff(w[8], w[4])) - { - Interp1(dp, w[5], w[2]); - dest[dp+dpL] = w[5]; - } - else - { - Interp6(dp, w[5], w[4], w[2]); - Interp9(dp+dpL, w[5], w[8], w[4]); - } - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL+1, w[5], w[9]); - break; - } - case 221: - { - Interp1(dp, w[5], w[2]); - if (Diff(w[6], w[8])) - { - Interp1(dp+1, w[5], w[2]); - dest[dp+dpL+1] = w[5]; - } - else - { - Interp6(dp+1, w[5], w[6], w[2]); - Interp9(dp+dpL+1, w[5], w[6], w[8]); - } - Interp1(dp+dpL, w[5], w[7]); - break; - } - case 207: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - Interp1(dp+1, w[5], w[6]); - } - else - { - Interp9(dp, w[5], w[4], w[2]); - Interp6(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[7]); - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 238: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - Interp1(dp+dpL+1, w[5], w[6]); - } - else - { - Interp9(dp+dpL, w[5], w[8], w[4]); - Interp6(dp+dpL+1, w[5], w[8], w[6]); - } - break; - } - case 190: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - Interp1(dp+dpL+1, w[5], w[8]); - } - else - { - Interp9(dp+1, w[5], w[2], w[6]); - Interp6(dp+dpL+1, w[5], w[6], w[8]); - } - Interp1(dp+dpL, w[5], w[8]); - break; - } - case 187: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - Interp1(dp+dpL, w[5], w[8]); - } - else - { - Interp9(dp, w[5], w[4], w[2]); - Interp6(dp+dpL, w[5], w[4], w[8]); - } - Interp1(dp+1, w[5], w[3]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 243: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[3]); - if (Diff(w[6], w[8])) - { - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - else - { - Interp6(dp+dpL, w[5], w[8], w[4]); - Interp9(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 119: - { - if (Diff(w[2], w[6])) - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - } - else - { - Interp6(dp, w[5], w[2], w[4]); - Interp9(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - Interp1(dp+dpL+1, w[5], w[9]); - break; - } - case 237: - case 233: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[2], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp1(dp+dpL, w[5], w[7]);0 - } - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 175: - case 47: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp1(dp, w[5], w[4]);0 - } - Interp1(dp+1, w[5], w[6]); - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[6], w[8]); - break; - } - case 183: - case 151: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp1(dp+1, w[5], w[3]);0 - } - Interp2(dp+dpL, w[5], w[8], w[4]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 245: - case 244: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp1(dp+dpL+1, w[5], w[9]);0 - } - break; - } - case 250: - { - Interp1(dp, w[5], w[4]); - Interp1(dp+1, w[5], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 123: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp1(dp+1, w[5], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp1(dp+dpL+1, w[5], w[9]); - break; - } - case 95: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[7]); - Interp1(dp+dpL+1, w[5], w[9]); - break; - } - case 222: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 252: - { - Interp2(dp, w[5], w[1], w[2]); - Interp1(dp+1, w[5], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp1(dp+dpL+1, w[5], w[9]);0 - } - break; - } - case 249: - { - Interp1(dp, w[5], w[2]); - Interp2(dp+1, w[5], w[3], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp1(dp+dpL, w[5], w[7]);0 - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 235: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp2(dp+1, w[5], w[3], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp1(dp+dpL, w[5], w[7]);0 - } - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 111: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp1(dp, w[5], w[4]);0 - } - Interp1(dp+1, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp2(dp+dpL+1, w[5], w[9], w[6]); - break; - } - case 63: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp1(dp, w[5], w[4]);0 - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[8]); - Interp2(dp+dpL+1, w[5], w[9], w[8]); - break; - } - case 159: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp1(dp+1, w[5], w[3]);0 - } - Interp2(dp+dpL, w[5], w[7], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 215: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp1(dp+1, w[5], w[3]);0 - } - Interp2(dp+dpL, w[5], w[7], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 246: - { - Interp2(dp, w[5], w[1], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp1(dp+dpL+1, w[5], w[9]);0 - } - break; - } - case 254: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp1(dp+dpL+1, w[5], w[9]);0 - } - break; - } - case 253: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp1(dp+dpL, w[5], w[7]);0 - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp1(dp+dpL+1, w[5], w[9]);0 - } - break; - } - case 251: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - Interp1(dp+1, w[5], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp1(dp+dpL, w[5], w[7]);0 - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 239: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp1(dp, w[5], w[4]);0 - } - Interp1(dp+1, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp1(dp+dpL, w[5], w[7]);0 - } - Interp1(dp+dpL+1, w[5], w[6]); - break; - } - case 127: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp1(dp, w[5], w[4]);0 - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp2(dp+1, w[5], w[2], w[6]); - } - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp+dpL, w[5], w[8], w[4]); - } - Interp1(dp+dpL+1, w[5], w[9]); - break; - } - case 191: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp1(dp, w[5], w[4]);0 - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp1(dp+1, w[5], w[3]);0 - } - Interp1(dp+dpL, w[5], w[8]); - Interp1(dp+dpL+1, w[5], w[8]); - break; - } - case 223: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp1(dp+1, w[5], w[3]);0 - } - Interp1(dp+dpL, w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp2(dp+dpL+1, w[5], w[6], w[8]); - } - break; - } - case 247: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp1(dp+1, w[5], w[3]);0 - } - Interp1(dp+dpL, w[5], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp1(dp+dpL+1, w[5], w[9]);0 - } - break; - } - case 255: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp1(dp, w[5], w[4]);0 - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - } - else - { - Interp1(dp+1, w[5], w[3]);0 - } - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - } - else - { - Interp1(dp+dpL, w[5], w[7]);0 - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+1] = w[5]; - } - else - { - Interp1(dp+dpL+1, w[5], w[9]);0 - } - break; - } - } - sp++; - dp += 2; - } - dp += dpL; - } -}; - - - - - - - - - - - - - - -//------------------------------------------------------------------------------ -//------------------------------------------------------------------------------ -//------------------------------------------------------------------------------ -// hq 3x - - -var hq3x = function( width, height ) { - var - i, j, k, - prevline, nextline, - w = [], - dpL = width * 3, - - dp = 0, - sp = 0; - - // internal to local optimization - var - Diff = _Diff, - Math = _Math, - RGBtoYUV = _RGBtoYUV, - Interp1 = _Interp1, - Interp2 = _Interp2, - Interp3 = _Interp3, - Interp4 = _Interp4, - Interp5 = _Interp5, - Interp6 = _Interp6, - Interp7 = _Interp7, - Interp8 = _Interp8, - Interp9 = _Interp9, - Interp10 = _Interp10, - src = _src, - dest = _dest, - MASK_2 = _MASK_2, - MASK_13 = _MASK_13, - Ymask = _Ymask, - Umask = _Umask, - Vmask = _Vmask, - trY = _trY, - trU = _trU, - trV = _trV, - YUV1, YUV2; - - // +----+----+----+ - // | | | | - // | w1 | w2 | w3 | - // +----+----+----+ - // | | | | - // | w4 | w5 | w6 | - // +----+----+----+ - // | | | | - // | w7 | w8 | w9 | - // +----+----+----+ - - for (j=0; j0 ? -width : 0; - nextline = j0) - { - w[1] = src[sp + prevline - 1]; - w[4] = src[sp - 1]; - w[7] = src[sp + nextline - 1]; - } - else - { - w[1] = w[2]; - w[4] = w[5]; - w[7] = w[8]; - } - - if (i trY ) || - ( Math.abs((YUV1 & Umask) - (YUV2 & Umask)) > trU ) || - ( Math.abs((YUV1 & Vmask) - (YUV2 & Vmask)) > trV ) ) - pattern |= flag; - } - flag <<= 1; - } - - switch (pattern) - { - case 0: - case 1: - case 4: - case 32: - case 128: - case 5: - case 132: - case 160: - case 33: - case 129: - case 36: - case 133: - case 164: - case 161: - case 37: - case 165: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 2: - case 34: - case 130: - case 162: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 16: - case 17: - case 48: - case 49: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 64: - case 65: - case 68: - case 69: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 8: - case 12: - case 136: - case 140: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 3: - case 35: - case 131: - case 163: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 6: - case 38: - case 134: - case 166: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 20: - case 21: - case 52: - case 53: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 144: - case 145: - case 176: - case 177: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 192: - case 193: - case 196: - case 197: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 96: - case 97: - case 100: - case 101: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 40: - case 44: - case 168: - case 172: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 9: - case 13: - case 137: - case 141: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 18: - case 50: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 80: - case 81: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 72: - case 76: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 10: - case 138: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 66: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 24: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 7: - case 39: - case 135: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 148: - case 149: - case 180: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 224: - case 228: - case 225: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 41: - case 169: - case 45: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 22: - case 54: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 208: - case 209: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 104: - case 108: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 11: - case 139: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 19: - case 51: - { - if (Diff(w[2], w[6])) - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+2] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[2], w[5]); - Interp5(dp+2, w[2], w[6]); - Interp1(dp+dpL+2, w[5], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 146: - case 178: - { - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - } - else - { - Interp1(dp+1, w[5], w[2]); - Interp5(dp+2, w[2], w[6]); - Interp1(dp+dpL+2, w[6], w[5]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - Interp1(dp, w[5], w[1]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - break; - } - case 84: - case 85: - { - if (Diff(w[6], w[8])) - { - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL+2, w[6], w[5]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+2, w[6], w[8]); - } - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - break; - } - case 112: - case 113: - { - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp1(dp+dpL+2, w[5], w[6]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[8], w[5]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+2, w[6], w[8]); - } - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - break; - } - case 200: - case 204: - { - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - } - else - { - Interp1(dp+dpL, w[5], w[4]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[8], w[5]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - break; - } - case 73: - case 77: - { - if (Diff(w[8], w[4])) - { - Interp1(dp, w[5], w[2]); - dest[dp+dpL] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+dpL, w[4], w[5]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 42: - case 170: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - } - else - { - Interp5(dp, w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[4], w[5]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 14: - case 142: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[4], w[2]); - Interp1(dp+1, w[2], w[5]); - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - } - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 67: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 70: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 28: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 152: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 194: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 98: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 56: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 25: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 26: - case 31: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 82: - case 214: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 88: - case 248: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 74: - case 107: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 27: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 86: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 216: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 106: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 30: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 210: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 120: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 75: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 29: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 198: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 184: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 99: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 57: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 71: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 156: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 226: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 60: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 195: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 102: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 153: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 58: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 83: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 92: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 202: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 78: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 154: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 114: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 89: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 90: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 55: - case 23: - { - if (Diff(w[2], w[6])) - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[2], w[5]); - Interp5(dp+2, w[2], w[6]); - Interp1(dp+dpL+2, w[5], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 182: - case 150: - { - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - } - else - { - Interp1(dp+1, w[5], w[2]); - Interp5(dp+2, w[2], w[6]); - Interp1(dp+dpL+2, w[6], w[5]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - Interp1(dp, w[5], w[1]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - break; - } - case 213: - case 212: - { - if (Diff(w[6], w[8])) - { - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL+2, w[6], w[5]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+2, w[6], w[8]); - } - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - break; - } - case 241: - case 240: - { - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp1(dp+dpL+2, w[5], w[6]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[8], w[5]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+2, w[6], w[8]); - } - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - break; - } - case 236: - case 232: - { - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - } - else - { - Interp1(dp+dpL, w[5], w[4]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[8], w[5]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - break; - } - case 109: - case 105: - { - if (Diff(w[8], w[4])) - { - Interp1(dp, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+dpL, w[4], w[5]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 171: - case 43: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - } - else - { - Interp5(dp, w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[4], w[5]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 143: - case 15: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[4], w[2]); - Interp1(dp+1, w[2], w[5]); - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - } - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 124: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 203: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 62: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 211: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 118: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 217: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 110: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 155: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 188: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 185: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 61: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 157: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 103: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 227: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 230: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 199: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 220: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 158: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 234: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 242: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 59: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 121: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 87: - { - Interp1(dp, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 79: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 122: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 94: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 218: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 91: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 229: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 167: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 173: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 181: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 186: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 115: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 93: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 206: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 205: - case 201: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 174: - case 46: - { - if (Diff(w[4], w[2])) - { - Interp1(dp, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 179: - case 147: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 117: - case 116: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 189: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 231: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 126: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 219: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 125: - { - if (Diff(w[8], w[4])) - { - Interp1(dp, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+dpL, w[4], w[5]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 221: - { - if (Diff(w[6], w[8])) - { - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL+2, w[6], w[5]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+2, w[6], w[8]); - } - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - break; - } - case 207: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[4], w[2]); - Interp1(dp+1, w[2], w[5]); - Interp2(dp+2, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[4]); - } - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 238: - { - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - } - else - { - Interp1(dp+dpL, w[5], w[4]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[8], w[5]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - break; - } - case 190: - { - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - } - else - { - Interp1(dp+1, w[5], w[2]); - Interp5(dp+2, w[2], w[6]); - Interp1(dp+dpL+2, w[6], w[5]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - Interp1(dp, w[5], w[1]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - break; - } - case 187: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - } - else - { - Interp5(dp, w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[4], w[5]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 243: - { - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp1(dp+dpL+2, w[5], w[6]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[8], w[5]); - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+2, w[6], w[8]); - } - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - break; - } - case 119: - { - if (Diff(w[2], w[6])) - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[2], w[5]); - Interp5(dp+2, w[2], w[6]); - Interp1(dp+dpL+2, w[5], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 237: - case 233: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 175: - case 47: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - break; - } - case 183: - case 151: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 245: - case 244: - { - Interp2(dp, w[5], w[4], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 250: - { - Interp1(dp, w[5], w[1]); - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 123: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 95: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 222: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 252: - { - Interp1(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 249: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 235: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 111: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 63: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 159: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 215: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 246: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 254: - { - Interp1(dp, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp4(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 253: - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+2, w[5], w[2]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 251: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - } - Interp1(dp+2, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+dpL] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp3(dp+dpL, w[5], w[4]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - if (Diff(w[6], w[8])) - { - dest[dp+dpL+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+dpL+2, w[5], w[6]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 239: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - Interp1(dp+2, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp1(dp+dpL+2, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - break; - } - case 127: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - Interp3(dp+1, w[5], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp4(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - } - else - { - Interp4(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - break; - } - case 191: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - break; - } - case 223: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp4(dp, w[5], w[4], w[2]); - Interp3(dp+dpL, w[5], w[4]); - } - if (Diff(w[2], w[6])) - { - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - dest[dp+dpL+2] = w[5]; - } - else - { - Interp3(dp+1, w[5], w[2]); - Interp2(dp+2, w[5], w[2], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - } - dest[dp+dpL+1] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp4(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 247: - { - Interp1(dp, w[5], w[4]); - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - case 255: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[4], w[2]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - } - else - { - Interp2(dp+2, w[5], w[2], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8], w[4]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - } - break; - } - } - sp++; - dp += 3; - } - //dp += (dpL * 2); optimized - dp += (dpL << 1); - } -}; - - - - - - - - - - - - - - -//------------------------------------------------------------------------------ -//------------------------------------------------------------------------------ -//------------------------------------------------------------------------------ -// hq 4x - -var hq4x = function( width, height ) { - var - i, j, k, - prevline, nextline, - w = [], - //dpL = width * 4, optimized - dpL = width << 2, - - dp = 0, - sp = 0; - - // internal to local optimization - var - Diff = _Diff, - Math = _Math, - RGBtoYUV = _RGBtoYUV, - Interp1 = _Interp1, - Interp2 = _Interp2, - Interp3 = _Interp3, - Interp4 = _Interp4, - Interp5 = _Interp5, - Interp6 = _Interp6, - Interp7 = _Interp7, - Interp8 = _Interp8, - Interp9 = _Interp9, - Interp10 = _Interp10, - src = _src, - dest = _dest, - MASK_2 = _MASK_2, - MASK_13 = _MASK_13, - Ymask = _Ymask, - Umask = _Umask, - Vmask = _Vmask, - trY = _trY, - trU = _trU, - trV = _trV, - YUV1, YUV2; - - // +----+----+----+ - // | | | | - // | w1 | w2 | w3 | - // +----+----+----+ - // | | | | - // | w4 | w5 | w6 | - // +----+----+----+ - // | | | | - // | w7 | w8 | w9 | - // +----+----+----+ - - for (j=0; j0 ? -width : 0; - nextline = j0) - { - w[1] = src[sp + prevline - 1]; - w[4] = src[sp - 1]; - w[7] = src[sp + nextline - 1]; - } - else - { - w[1] = w[2]; - w[4] = w[5]; - w[7] = w[8]; - } - - if (i trY ) || - ( Math.abs((YUV1 & Umask) - (YUV2 & Umask)) > trU ) || - ( Math.abs((YUV1 & Vmask) - (YUV2 & Vmask)) > trV ) ) - pattern |= flag; - } - flag <<= 1; - } - - switch (pattern) - { - case 0: - case 1: - case 4: - case 32: - case 128: - case 5: - case 132: - case 160: - case 33: - case 129: - case 36: - case 133: - case 164: - case 161: - case 37: - case 165: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 2: - case 34: - case 130: - case 162: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 16: - case 17: - case 48: - case 49: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 64: - case 65: - case 68: - case 69: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 8: - case 12: - case 136: - case 140: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 3: - case 35: - case 131: - case 163: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 6: - case 38: - case 134: - case 166: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 20: - case 21: - case 52: - case 53: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 144: - case 145: - case 176: - case 177: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 192: - case 193: - case 196: - case 197: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 96: - case 97: - case 100: - case 101: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 40: - case 44: - case 168: - case 172: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 9: - case 13: - case 137: - case 141: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 18: - case 50: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 80: - case 81: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 72: - case 76: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 10: - case 138: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - dest[dp+dpL+1] = w[5]; - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 66: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 24: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 7: - case 39: - case 135: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 148: - case 149: - case 180: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 224: - case 228: - case 225: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 41: - case 169: - case 45: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 22: - case 54: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - dest[dp+dpL+2] = w[5]; - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 208: - case 209: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 104: - case 108: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 11: - case 139: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 19: - case 51: - { - if (Diff(w[2], w[6])) - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[2], w[5]); - Interp8(dp+2, w[2], w[6]); - Interp5(dp+3, w[2], w[6]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp2(dp+dpL+3, w[6], w[5], w[2]); - } - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 146: - case 178: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - } - else - { - Interp2(dp+2, w[2], w[5], w[6]); - Interp5(dp+3, w[2], w[6]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp8(dp+dpL+3, w[6], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp1(dp+(dpL * 3)+3, w[5], w[6]); - } - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - break; - } - case 84: - case 85: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp8(dp+2, w[5], w[2]); - if (Diff(w[6], w[8])) - { - Interp8(dp+3, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - Interp1(dp+3, w[5], w[6]); - Interp1(dp+dpL+3, w[6], w[5]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[8]); - Interp2(dp+(dpL * 3)+2, w[8], w[5], w[6]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 112: - case 113: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5], w[8]); - Interp1(dp+(dpL * 3), w[5], w[8]); - Interp1(dp+(dpL * 3)+1, w[8], w[5]); - Interp8(dp+(dpL * 3)+2, w[8], w[6]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - break; - } - case 200: - case 204: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp8(dp+(dpL * 3)+1, w[8], w[4]); - Interp1(dp+(dpL * 3)+2, w[8], w[5]); - Interp1(dp+(dpL * 3)+3, w[5], w[8]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - break; - } - case 73: - case 77: - { - if (Diff(w[8], w[4])) - { - Interp8(dp, w[5], w[2]); - Interp3(dp+dpL, w[5], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp, w[5], w[4]); - Interp1(dp+dpL, w[4], w[5]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp2(dp+(dpL * 3)+1, w[8], w[5], w[4]); - } - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 42: - case 170: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - } - else - { - Interp5(dp, w[2], w[4]); - Interp2(dp+1, w[2], w[5], w[4]); - Interp8(dp+dpL, w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp1(dp+(dpL * 3), w[5], w[4]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 14: - case 142: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp5(dp, w[2], w[4]); - Interp8(dp+1, w[2], w[4]); - Interp1(dp+2, w[2], w[5]); - Interp1(dp+3, w[5], w[2]); - Interp2(dp+dpL, w[4], w[5], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - } - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 67: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 70: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 28: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 152: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 194: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 98: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 56: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 25: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 26: - case 31: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 82: - case 214: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - dest[dp+dpL+2] = w[5]; - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 88: - case 248: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - break; - } - case 74: - case 107: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 27: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 86: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - dest[dp+dpL+2] = w[5]; - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 216: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 106: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 30: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 210: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 120: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 75: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 29: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 198: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 184: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 99: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 57: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 71: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 156: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 226: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 60: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 195: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 102: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 153: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 58: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 83: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 92: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 202: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 78: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 154: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 114: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - break; - } - case 89: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 90: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 55: - case 23: - { - if (Diff(w[2], w[6])) - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[2], w[5]); - Interp8(dp+2, w[2], w[6]); - Interp5(dp+3, w[2], w[6]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp2(dp+dpL+3, w[6], w[5], w[2]); - } - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 182: - case 150: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - } - else - { - Interp2(dp+2, w[2], w[5], w[6]); - Interp5(dp+3, w[2], w[6]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp8(dp+dpL+3, w[6], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp1(dp+(dpL * 3)+3, w[5], w[6]); - } - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - break; - } - case 213: - case 212: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp8(dp+2, w[5], w[2]); - if (Diff(w[6], w[8])) - { - Interp8(dp+3, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp1(dp+3, w[5], w[6]); - Interp1(dp+dpL+3, w[6], w[5]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[8]); - Interp2(dp+(dpL * 3)+2, w[8], w[5], w[6]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 241: - case 240: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5], w[8]); - Interp1(dp+(dpL * 3), w[5], w[8]); - Interp1(dp+(dpL * 3)+1, w[8], w[5]); - Interp8(dp+(dpL * 3)+2, w[8], w[6]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - break; - } - case 236: - case 232: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp8(dp+(dpL * 3)+1, w[8], w[4]); - Interp1(dp+(dpL * 3)+2, w[8], w[5]); - Interp1(dp+(dpL * 3)+3, w[5], w[8]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - break; - } - case 109: - case 105: - { - if (Diff(w[8], w[4])) - { - Interp8(dp, w[5], w[2]); - Interp3(dp+dpL, w[5], w[2]); - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp1(dp, w[5], w[4]); - Interp1(dp+dpL, w[4], w[5]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp2(dp+(dpL * 3)+1, w[8], w[5], w[4]); - } - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 171: - case 43: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - } - else - { - Interp5(dp, w[2], w[4]); - Interp2(dp+1, w[2], w[5], w[4]); - Interp8(dp+dpL, w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp1(dp+(dpL * 3), w[5], w[4]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 143: - case 15: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp8(dp+1, w[2], w[4]); - Interp1(dp+2, w[2], w[5]); - Interp1(dp+3, w[5], w[2]); - Interp2(dp+dpL, w[4], w[5], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - } - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 124: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 203: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 62: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - dest[dp+dpL+2] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 211: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 118: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - dest[dp+dpL+2] = w[5]; - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 217: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 110: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 155: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 188: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 185: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 61: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 157: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 103: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 227: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 230: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 199: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 220: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - break; - } - case 158: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 234: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 242: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - break; - } - case 59: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - dest[dp+dpL+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 121: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 87: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - dest[dp+dpL+2] = w[5]; - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 79: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 122: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 94: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 218: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - break; - } - case 91: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - dest[dp+dpL+1] = w[5]; - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 229: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 167: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 173: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 181: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 186: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 115: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - break; - } - case 93: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 206: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 205: - case 201: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - if (Diff(w[8], w[4])) - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - } - else - { - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp1(dp+(dpL * 3)+1, w[5], w[8]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 174: - case 46: - { - if (Diff(w[4], w[2])) - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - } - else - { - Interp2(dp, w[5], w[2], w[4]); - Interp1(dp+1, w[5], w[2]); - Interp1(dp+dpL, w[5], w[4]); - dest[dp+dpL+1] = w[5]; - } - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 179: - case 147: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - if (Diff(w[2], w[6])) - { - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - } - else - { - Interp1(dp+2, w[5], w[2]); - Interp2(dp+3, w[5], w[2], w[6]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+dpL+3, w[5], w[6]); - } - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 117: - case 116: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - if (Diff(w[6], w[8])) - { - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - } - else - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp1(dp+(dpL * 3)+2, w[5], w[8]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - break; - } - case 189: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 231: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 126: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 219: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 125: - { - if (Diff(w[8], w[4])) - { - Interp8(dp, w[5], w[2]); - Interp3(dp+dpL, w[5], w[2]); - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp1(dp, w[5], w[4]); - Interp1(dp+dpL, w[4], w[5]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp2(dp+(dpL * 3)+1, w[8], w[5], w[4]); - } - Interp8(dp+1, w[5], w[2]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 221: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp8(dp+2, w[5], w[2]); - if (Diff(w[6], w[8])) - { - Interp8(dp+3, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp1(dp+3, w[5], w[6]); - Interp1(dp+dpL+3, w[6], w[5]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[8]); - Interp2(dp+(dpL * 3)+2, w[8], w[5], w[6]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 207: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp8(dp+1, w[2], w[4]); - Interp1(dp+2, w[2], w[5]); - Interp1(dp+3, w[5], w[2]); - Interp2(dp+dpL, w[4], w[5], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - } - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 238: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - } - else - { - Interp2(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp8(dp+(dpL * 3)+1, w[8], w[4]); - Interp1(dp+(dpL * 3)+2, w[8], w[5]); - Interp1(dp+(dpL * 3)+3, w[5], w[8]); - } - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - break; - } - case 190: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - } - else - { - Interp2(dp+2, w[2], w[5], w[6]); - Interp5(dp+3, w[2], w[6]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp8(dp+dpL+3, w[6], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp1(dp+(dpL * 3)+3, w[5], w[6]); - } - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - break; - } - case 187: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - } - else - { - Interp5(dp, w[2], w[4]); - Interp2(dp+1, w[2], w[5], w[4]); - Interp8(dp+dpL, w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp1(dp+(dpL * 3), w[5], w[4]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 243: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp2(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5], w[8]); - Interp1(dp+(dpL * 3), w[5], w[8]); - Interp1(dp+(dpL * 3)+1, w[8], w[5]); - Interp8(dp+(dpL * 3)+2, w[8], w[6]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - break; - } - case 119: - { - if (Diff(w[2], w[6])) - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp1(dp, w[5], w[2]); - Interp1(dp+1, w[2], w[5]); - Interp8(dp+2, w[2], w[6]); - Interp5(dp+3, w[2], w[6]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp2(dp+dpL+3, w[6], w[5], w[2]); - } - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 237: - case 233: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[6]); - Interp2(dp+3, w[5], w[2], w[6]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp7(dp+dpL+2, w[5], w[6], w[2]); - Interp6(dp+dpL+3, w[5], w[6], w[2]); - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL * 3)] = w[5]; - } - else - { - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - } - dest[dp+(dpL * 3)+1] = w[5]; - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 175: - case 47: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[2], w[4]); - } - dest[dp+1] = w[5]; - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6], w[8]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[6]); - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - break; - } - case 183: - case 151: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - dest[dp+2] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+3] = w[5]; - } - else - { - Interp2(dp+3, w[5], w[2], w[6]); - } - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[8]); - Interp7(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[4]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 245: - case 244: - { - Interp2(dp, w[5], w[2], w[4]); - Interp6(dp+1, w[5], w[2], w[4]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp6(dp+dpL, w[5], w[4], w[2]); - Interp7(dp+dpL+1, w[5], w[4], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - dest[dp+(dpL * 3)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 250: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - break; - } - case 123: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 95: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 222: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - dest[dp+dpL+2] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 252: - { - Interp8(dp, w[5], w[1]); - Interp6(dp+1, w[5], w[2], w[1]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 249: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp6(dp+2, w[5], w[2], w[3]); - Interp8(dp+3, w[5], w[3]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - if (Diff(w[8], w[4])) - { - dest[dp+(dpL * 3)] = w[5]; - } - else - { - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - } - dest[dp+(dpL * 3)+1] = w[5]; - break; - } - case 235: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[3]); - Interp6(dp+dpL+3, w[5], w[6], w[3]); - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL * 3)] = w[5]; - } - else - { - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - } - dest[dp+(dpL * 3)+1] = w[5]; - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 111: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[2], w[4]); - } - dest[dp+1] = w[5]; - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp6(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 63: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[2], w[4]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp6(dp+(dpL * 3)+2, w[5], w[8], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 159: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - dest[dp+2] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+3] = w[5]; - } - else - { - Interp2(dp+3, w[5], w[2], w[6]); - } - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp6(dp+(dpL * 3)+1, w[5], w[8], w[7]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 215: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - dest[dp+2] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+3] = w[5]; - } - else - { - Interp2(dp+3, w[5], w[2], w[6]); - } - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - Interp6(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 246: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp6(dp+dpL, w[5], w[4], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - dest[dp+dpL+2] = w[5]; - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - dest[dp+(dpL * 3)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 254: - { - Interp8(dp, w[5], w[1]); - Interp1(dp+1, w[5], w[1]); - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - Interp1(dp+dpL, w[5], w[1]); - Interp3(dp+dpL+1, w[5], w[1]); - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 253: - { - Interp8(dp, w[5], w[2]); - Interp8(dp+1, w[5], w[2]); - Interp8(dp+2, w[5], w[2]); - Interp8(dp+3, w[5], w[2]); - Interp3(dp+dpL, w[5], w[2]); - Interp3(dp+dpL+1, w[5], w[2]); - Interp3(dp+dpL+2, w[5], w[2]); - Interp3(dp+dpL+3, w[5], w[2]); - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+(dpL * 3)] = w[5]; - } - else - { - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - } - dest[dp+(dpL * 3)+1] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 251: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - Interp1(dp+2, w[5], w[3]); - Interp8(dp+3, w[5], w[3]); - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[3]); - Interp1(dp+dpL+3, w[5], w[3]); - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - if (Diff(w[8], w[4])) - { - dest[dp+(dpL * 3)] = w[5]; - } - else - { - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - } - dest[dp+(dpL * 3)+1] = w[5]; - break; - } - case 239: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[2], w[4]); - } - dest[dp+1] = w[5]; - Interp3(dp+2, w[5], w[6]); - Interp8(dp+3, w[5], w[6]); - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - Interp3(dp+dpL+2, w[5], w[6]); - Interp8(dp+dpL+3, w[5], w[6]); - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[6]); - Interp8(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[6]); - if (Diff(w[8], w[4])) - { - dest[dp+(dpL * 3)] = w[5]; - } - else - { - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - } - dest[dp+(dpL * 3)+1] = w[5]; - Interp3(dp+(dpL * 3)+2, w[5], w[6]); - Interp8(dp+(dpL * 3)+3, w[5], w[6]); - break; - } - case 127: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[2], w[4]); - } - dest[dp+1] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+2] = w[5]; - dest[dp+3] = w[5]; - dest[dp+dpL+3] = w[5]; - } - else - { - Interp5(dp+2, w[2], w[5]); - Interp5(dp+3, w[2], w[6]); - Interp5(dp+dpL+3, w[6], w[5]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL * 3)] = w[5]; - dest[dp+(dpL * 3)+1] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/), w[4], w[5]); - Interp5(dp+(dpL * 3), w[8], w[4]); - Interp5(dp+(dpL * 3)+1, w[8], w[5]); - } - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[9]); - Interp1(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[9]); - Interp1(dp+(dpL * 3)+2, w[5], w[9]); - Interp8(dp+(dpL * 3)+3, w[5], w[9]); - break; - } - case 191: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[2], w[4]); - } - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+3] = w[5]; - } - else - { - Interp2(dp+3, w[5], w[2], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - Interp3(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+2, w[5], w[8]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+3, w[5], w[8]); - Interp8(dp+(dpL * 3), w[5], w[8]); - Interp8(dp+(dpL * 3)+1, w[5], w[8]); - Interp8(dp+(dpL * 3)+2, w[5], w[8]); - Interp8(dp+(dpL * 3)+3, w[5], w[8]); - break; - } - case 223: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - dest[dp+1] = w[5]; - dest[dp+dpL] = w[5]; - } - else - { - Interp5(dp, w[2], w[4]); - Interp5(dp+1, w[2], w[5]); - Interp5(dp+dpL, w[4], w[5]); - } - dest[dp+2] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+3] = w[5]; - } - else - { - Interp2(dp+3, w[5], w[2], w[6]); - } - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - Interp1(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[7]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[7]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp5(dp+(dpL << 1 /*==dpL * 2*/)+3, w[6], w[5]); - Interp5(dp+(dpL * 3)+2, w[8], w[5]); - Interp5(dp+(dpL * 3)+3, w[8], w[6]); - } - Interp8(dp+(dpL * 3), w[5], w[7]); - Interp1(dp+(dpL * 3)+1, w[5], w[7]); - break; - } - case 247: - { - Interp8(dp, w[5], w[4]); - Interp3(dp+1, w[5], w[4]); - dest[dp+2] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+3] = w[5]; - } - else - { - Interp2(dp+3, w[5], w[2], w[6]); - } - Interp8(dp+dpL, w[5], w[4]); - Interp3(dp+dpL+1, w[5], w[4]); - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - Interp8(dp+(dpL << 1 /*==dpL * 2*/), w[5], w[4]); - Interp3(dp+(dpL << 1 /*==dpL * 2*/)+1, w[5], w[4]); - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - Interp8(dp+(dpL * 3), w[5], w[4]); - Interp3(dp+(dpL * 3)+1, w[5], w[4]); - dest[dp+(dpL * 3)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - case 255: - { - if (Diff(w[4], w[2])) - { - dest[dp] = w[5]; - } - else - { - Interp2(dp, w[5], w[2], w[4]); - } - dest[dp+1] = w[5]; - dest[dp+2] = w[5]; - if (Diff(w[2], w[6])) - { - dest[dp+3] = w[5]; - } - else - { - Interp2(dp+3, w[5], w[2], w[6]); - } - dest[dp+dpL] = w[5]; - dest[dp+dpL+1] = w[5]; - dest[dp+dpL+2] = w[5]; - dest[dp+dpL+3] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+1] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+2] = w[5]; - dest[dp+(dpL << 1 /*==dpL * 2*/)+3] = w[5]; - if (Diff(w[8], w[4])) - { - dest[dp+(dpL * 3)] = w[5]; - } - else - { - Interp2(dp+(dpL * 3), w[5], w[8], w[4]); - } - dest[dp+(dpL * 3)+1] = w[5]; - dest[dp+(dpL * 3)+2] = w[5]; - if (Diff(w[6], w[8])) - { - dest[dp+(dpL * 3)+3] = w[5]; - } - else - { - Interp2(dp+(dpL * 3)+3, w[5], w[8], w[6]); - } - break; - } - } - sp++; - dp += 4; - } - dp += (dpL * 3); - } -} - -})(this); \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..ac6a2f9 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,1108 @@ +{ + "name": "blockies", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@babel/code-frame": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-rc.1.tgz", + "integrity": "sha512-qhQo3GqwqMUv03SxxjcEkWtlkEDvFYrBKbJUn4Dtd9amC2cLkJ3me4iYUVSBbVXWbfbVRalEeVBHzX4aQYKnBg==", + "dev": true, + "requires": { + "@babel/highlight": "7.0.0-rc.1" + } + }, + "@babel/core": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.0.0-rc.1.tgz", + "integrity": "sha512-CvuSsq+LFs9N4SJG8MnNPI0hnl913HK1OqG3NEfejOKo+JqtVuxpmAFyXIDogX2x668xqFKAW6EQiCIcUHklMg==", + "dev": true, + "requires": { + "@babel/code-frame": "7.0.0-rc.1", + "@babel/generator": "7.0.0-rc.1", + "@babel/helpers": "7.0.0-rc.1", + "@babel/parser": "7.0.0-rc.1", + "@babel/template": "7.0.0-rc.1", + "@babel/traverse": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1", + "convert-source-map": "^1.1.0", + "debug": "^3.1.0", + "json5": "^0.5.0", + "lodash": "^4.17.10", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + } + }, + "@babel/generator": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.0.0-rc.1.tgz", + "integrity": "sha512-Ak4n780/coo+L9GZUS7V/IGJilP11t4UoWl0J9cG3jso4KkDGQcqdx4Y6gJAiXng+sDfvzUmvWfM1hZwH82J0A==", + "dev": true, + "requires": { + "@babel/types": "7.0.0-rc.1", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + } + }, + "@babel/helper-function-name": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.0.0-rc.1.tgz", + "integrity": "sha512-fDbWxdYYbFNzcI5jn3qsPxHI1UCXwvFk0kGytGce/FEBYEPXBqycKknC8Oqiub8DzGtmTcvnqcm/cl/qxzeuiQ==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "7.0.0-rc.1", + "@babel/template": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-rc.1.tgz", + "integrity": "sha512-5+ydaIRxT42FSDqvoXIDksCGlW1903xC73HQnQCFF1YuV7VcIf+9M4+tRZulLlYlshw7ILA+4SiYsKoDlC0Irg==", + "dev": true, + "requires": { + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-rc.1.tgz", + "integrity": "sha512-hz6QmlnaBFYt4ra8DfRLCMgrI7yfwQ13kJtufSO5dVCasxmAng2LeeQiT6H4iN5TpFONcayp5f/2mXqHH/zn/g==", + "dev": true, + "requires": { + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/helpers": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.0.0-rc.1.tgz", + "integrity": "sha512-4+AkDbZ0Usr7mNH4wGX8fVx4WJzHdrcjRkJy52EIWyBAQEoKqb5HXca1VjejWtnVwaGwW7zk/h6oQ9FQPywQfA==", + "dev": true, + "requires": { + "@babel/template": "7.0.0-rc.1", + "@babel/traverse": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1" + } + }, + "@babel/highlight": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-rc.1.tgz", + "integrity": "sha512-5PgPDV6F5s69XNznTcP0za3qH7qgBkr9DVQTXfZtpF+3iEyuIZB1Mjxu52F5CFxgzQUQJoBYHVxtH4Itdb5MgA==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^3.0.0" + } + }, + "@babel/parser": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.0.0-rc.1.tgz", + "integrity": "sha512-rC+bIz2eZnJlacERmJO25UAbXVZttcSxh0Px0gRGinOTzug5tL7+L9urfIdSWlv1ZzP03+f2xkOFLOxZqSsVmQ==", + "dev": true + }, + "@babel/template": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0-rc.1.tgz", + "integrity": "sha512-gPLng2iedNlkaGD0UdwaUByQXK8k4bnaoq2RH5JgR2mqHvh2RyjkDdaMbZFlSss1Iu8+PrXwbIRworTl8iRqbA==", + "dev": true, + "requires": { + "@babel/code-frame": "7.0.0-rc.1", + "@babel/parser": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1", + "lodash": "^4.17.10" + } + }, + "@babel/traverse": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.0.0-rc.1.tgz", + "integrity": "sha512-lNOpJ5xzakg+fCobQQHdeDRYeN54b+bAZpeTYMeeYPAvN+hTldg9/FSNKYEMRs5EWoQ0Yt74gwq98InSORdSDQ==", + "dev": true, + "requires": { + "@babel/code-frame": "7.0.0-rc.1", + "@babel/generator": "7.0.0-rc.1", + "@babel/helper-function-name": "7.0.0-rc.1", + "@babel/helper-split-export-declaration": "7.0.0-rc.1", + "@babel/parser": "7.0.0-rc.1", + "@babel/types": "7.0.0-rc.1", + "debug": "^3.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.10" + } + }, + "@babel/types": { + "version": "7.0.0-rc.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0-rc.1.tgz", + "integrity": "sha512-MBwO1JQKin9BwKTGydrYe4VDJbStCUy35IhJzeZt3FByOdx/q3CYaqMRrH70qVD2RA7+Xk8e3RN0mzKZkYBYuQ==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + } + }, + "accepts": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", + "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", + "dev": true, + "requires": { + "mime-types": "~2.1.18", + "negotiator": "0.6.1" + } + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", + "dev": true + }, + "babel-helper-evaluate-path": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.4.3.tgz", + "integrity": "sha1-ComvcCwGshcCf6NxkI3UmJ0+Yz8=", + "dev": true + }, + "babel-helper-flip-expressions": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-helper-flip-expressions/-/babel-helper-flip-expressions-0.4.3.tgz", + "integrity": "sha1-NpZzahKKwYvCUlS19AoizrPB0/0=", + "dev": true + }, + "babel-helper-is-nodes-equiv": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/babel-helper-is-nodes-equiv/-/babel-helper-is-nodes-equiv-0.0.1.tgz", + "integrity": "sha1-NOmzALFHnd2Y7HfqC76TQt/jloQ=", + "dev": true + }, + "babel-helper-is-void-0": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-helper-is-void-0/-/babel-helper-is-void-0-0.4.3.tgz", + "integrity": "sha1-fZwBtFYee5Xb2g9u7kj1tg5nMT4=", + "dev": true + }, + "babel-helper-mark-eval-scopes": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-helper-mark-eval-scopes/-/babel-helper-mark-eval-scopes-0.4.3.tgz", + "integrity": "sha1-0kSjvvmESHJgP/tG4izorN9VFWI=", + "dev": true + }, + "babel-helper-remove-or-void": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-helper-remove-or-void/-/babel-helper-remove-or-void-0.4.3.tgz", + "integrity": "sha1-pPA7QAd6D/6I5F0HAQ3uJB/1rmA=", + "dev": true + }, + "babel-helper-to-multiple-sequence-expressions": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.4.3.tgz", + "integrity": "sha1-W1GLESf0ezA4dzOGoVYaK0jmMrY=", + "dev": true + }, + "babel-minify": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-minify/-/babel-minify-0.4.3.tgz", + "integrity": "sha1-2Ufk7WtibcjCVofyQsJcvPbygaY=", + "dev": true, + "requires": { + "@babel/core": "^7.0.0-beta.46", + "babel-preset-minify": "^0.4.3", + "fs-readdir-recursive": "^1.1.0", + "mkdirp": "^0.5.1", + "util.promisify": "^1.0.0", + "yargs-parser": "^10.0.0" + } + }, + "babel-plugin-minify-builtins": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-builtins/-/babel-plugin-minify-builtins-0.4.3.tgz", + "integrity": "sha1-nqPVn0rEp7uVjXEtKVVqH4b3+B4=", + "dev": true, + "requires": { + "babel-helper-evaluate-path": "^0.4.3" + } + }, + "babel-plugin-minify-constant-folding": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-constant-folding/-/babel-plugin-minify-constant-folding-0.4.3.tgz", + "integrity": "sha1-MA+d6N2ghEoXaxk2U5YOJK0z4ZE=", + "dev": true, + "requires": { + "babel-helper-evaluate-path": "^0.4.3" + } + }, + "babel-plugin-minify-dead-code-elimination": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-dead-code-elimination/-/babel-plugin-minify-dead-code-elimination-0.4.3.tgz", + "integrity": "sha1-c2KCZYZPkAjQAnUG9Yq+s8HQLZg=", + "dev": true, + "requires": { + "babel-helper-evaluate-path": "^0.4.3", + "babel-helper-mark-eval-scopes": "^0.4.3", + "babel-helper-remove-or-void": "^0.4.3", + "lodash.some": "^4.6.0" + } + }, + "babel-plugin-minify-flip-comparisons": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-flip-comparisons/-/babel-plugin-minify-flip-comparisons-0.4.3.tgz", + "integrity": "sha1-AMqHDLjxO0XAOLPB68DyJyk8llo=", + "dev": true, + "requires": { + "babel-helper-is-void-0": "^0.4.3" + } + }, + "babel-plugin-minify-guarded-expressions": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-guarded-expressions/-/babel-plugin-minify-guarded-expressions-0.4.3.tgz", + "integrity": "sha1-zHCbRFP9IbHzAod0RMifiEJ845c=", + "dev": true, + "requires": { + "babel-helper-flip-expressions": "^0.4.3" + } + }, + "babel-plugin-minify-infinity": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-infinity/-/babel-plugin-minify-infinity-0.4.3.tgz", + "integrity": "sha1-37h2obCKBldjhO8/kuZTumB7Oco=", + "dev": true + }, + "babel-plugin-minify-mangle-names": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-mangle-names/-/babel-plugin-minify-mangle-names-0.4.3.tgz", + "integrity": "sha1-FvG/90t6fJPfwkHngx3V+0sCPvc=", + "dev": true, + "requires": { + "babel-helper-mark-eval-scopes": "^0.4.3" + } + }, + "babel-plugin-minify-numeric-literals": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-numeric-literals/-/babel-plugin-minify-numeric-literals-0.4.3.tgz", + "integrity": "sha1-jk/VYcefeAEob/YOjF/Z3u6TwLw=", + "dev": true + }, + "babel-plugin-minify-replace": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.4.3.tgz", + "integrity": "sha1-nSifS6FdTmAR6HmfpfG6d+yBIZ0=", + "dev": true + }, + "babel-plugin-minify-simplify": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-simplify/-/babel-plugin-minify-simplify-0.4.3.tgz", + "integrity": "sha1-N3VthcYURktLCSfytOQXGR1Vc4o=", + "dev": true, + "requires": { + "babel-helper-flip-expressions": "^0.4.3", + "babel-helper-is-nodes-equiv": "^0.0.1", + "babel-helper-to-multiple-sequence-expressions": "^0.4.3" + } + }, + "babel-plugin-minify-type-constructors": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-minify-type-constructors/-/babel-plugin-minify-type-constructors-0.4.3.tgz", + "integrity": "sha1-G8bxW4f3qxCF1CszC3F2V6IVZQA=", + "dev": true, + "requires": { + "babel-helper-is-void-0": "^0.4.3" + } + }, + "babel-plugin-transform-inline-consecutive-adds": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-inline-consecutive-adds/-/babel-plugin-transform-inline-consecutive-adds-0.4.3.tgz", + "integrity": "sha1-Mj1Ho+pjqDp6w8gRro5pQfrysNE=", + "dev": true + }, + "babel-plugin-transform-member-expression-literals": { + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.9.4.tgz", + "integrity": "sha1-NwOcmgwzE6OUlfqsL/OmtbnQOL8=", + "dev": true + }, + "babel-plugin-transform-merge-sibling-variables": { + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.9.4.tgz", + "integrity": "sha1-hbQi/DN3tEnJ0c3kQIcgNTJAHa4=", + "dev": true + }, + "babel-plugin-transform-minify-booleans": { + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.9.4.tgz", + "integrity": "sha1-rLs+VqNVXdI5KOS1gtKFFi3SsZg=", + "dev": true + }, + "babel-plugin-transform-property-literals": { + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.9.4.tgz", + "integrity": "sha1-mMHSHiVXNlc/k+zlRFn2ziSYXTk=", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "babel-plugin-transform-regexp-constructors": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-regexp-constructors/-/babel-plugin-transform-regexp-constructors-0.4.3.tgz", + "integrity": "sha1-WLd3W2OvzzMyj66aX4j71PsLSWU=", + "dev": true + }, + "babel-plugin-transform-remove-console": { + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-console/-/babel-plugin-transform-remove-console-6.9.4.tgz", + "integrity": "sha1-uYA2DAZzhOJLNXpYjYB9PINSd4A=", + "dev": true + }, + "babel-plugin-transform-remove-debugger": { + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-debugger/-/babel-plugin-transform-remove-debugger-6.9.4.tgz", + "integrity": "sha1-QrcnYxyXl44estGZp67IShgznvI=", + "dev": true + }, + "babel-plugin-transform-remove-undefined": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-undefined/-/babel-plugin-transform-remove-undefined-0.4.3.tgz", + "integrity": "sha1-1AsNp/kcCMBsxyt2dHTAHEiU3gI=", + "dev": true, + "requires": { + "babel-helper-evaluate-path": "^0.4.3" + } + }, + "babel-plugin-transform-simplify-comparison-operators": { + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-simplify-comparison-operators/-/babel-plugin-transform-simplify-comparison-operators-6.9.4.tgz", + "integrity": "sha1-9ir+CWyrDh9ootdT/fKDiIRxzrk=", + "dev": true + }, + "babel-plugin-transform-undefined-to-void": { + "version": "6.9.4", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.9.4.tgz", + "integrity": "sha1-viQcqBQEAwZ4t0hxcyK4nQyP4oA=", + "dev": true + }, + "babel-preset-minify": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-preset-minify/-/babel-preset-minify-0.4.3.tgz", + "integrity": "sha1-spw91pGJBThFmPCSuVUVLiah/g8=", + "dev": true, + "requires": { + "babel-plugin-minify-builtins": "^0.4.3", + "babel-plugin-minify-constant-folding": "^0.4.3", + "babel-plugin-minify-dead-code-elimination": "^0.4.3", + "babel-plugin-minify-flip-comparisons": "^0.4.3", + "babel-plugin-minify-guarded-expressions": "^0.4.3", + "babel-plugin-minify-infinity": "^0.4.3", + "babel-plugin-minify-mangle-names": "^0.4.3", + "babel-plugin-minify-numeric-literals": "^0.4.3", + "babel-plugin-minify-replace": "^0.4.3", + "babel-plugin-minify-simplify": "^0.4.3", + "babel-plugin-minify-type-constructors": "^0.4.3", + "babel-plugin-transform-inline-consecutive-adds": "^0.4.3", + "babel-plugin-transform-member-expression-literals": "^6.9.4", + "babel-plugin-transform-merge-sibling-variables": "^6.9.4", + "babel-plugin-transform-minify-booleans": "^6.9.4", + "babel-plugin-transform-property-literals": "^6.9.4", + "babel-plugin-transform-regexp-constructors": "^0.4.3", + "babel-plugin-transform-remove-console": "^6.9.4", + "babel-plugin-transform-remove-debugger": "^6.9.4", + "babel-plugin-transform-remove-undefined": "^0.4.3", + "babel-plugin-transform-simplify-comparison-operators": "^6.9.4", + "babel-plugin-transform-undefined-to-void": "^6.9.4", + "lodash.isplainobject": "^4.0.6" + } + }, + "cache-content-type": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-content-type/-/cache-content-type-1.0.1.tgz", + "integrity": "sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==", + "dev": true, + "requires": { + "mime-types": "^2.1.18", + "ylru": "^1.2.0" + } + }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "color-convert": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.2.tgz", + "integrity": "sha512-3NUJZdhMhcdPn8vJ9v2UQJoH0qqoGUkYTgFEPZaPjEtwmmKUfNV46zZmgB2M5M4DCEQHMaCfWHCxiBflLm04Tg==", + "dev": true, + "requires": { + "color-name": "1.1.1" + } + }, + "color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha1-SxQVMEz1ACjqgWQ2Q72C6gWANok=", + "dev": true + }, + "content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", + "dev": true + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true + }, + "convert-source-map": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", + "dev": true + }, + "cookies": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.7.1.tgz", + "integrity": "sha1-fIphX1SBxhq58WyDNzG8uPZjuZs=", + "dev": true, + "requires": { + "depd": "~1.1.1", + "keygrip": "~1.0.2" + } + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", + "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", + "dev": true + }, + "define-properties": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", + "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", + "dev": true, + "requires": { + "foreach": "^2.0.5", + "object-keys": "^1.0.8" + } + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "error-inject": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/error-inject/-/error-inject-1.0.0.tgz", + "integrity": "sha1-4rPZG1Su1nLzCdlQ0VSFD6EdTzc=", + "dev": true + }, + "es-abstract": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", + "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", + "dev": true, + "requires": { + "es-to-primitive": "^1.1.1", + "function-bind": "^1.1.1", + "has": "^1.0.1", + "is-callable": "^1.1.3", + "is-regex": "^1.0.4" + } + }, + "es-to-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", + "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", + "dev": true, + "requires": { + "is-callable": "^1.1.1", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.1" + } + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "fs-readdir-recursive": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", + "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", + "dev": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "globals": { + "version": "11.7.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", + "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "http-assert": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/http-assert/-/http-assert-1.3.0.tgz", + "integrity": "sha1-oxpc+IyHPsu1eWkH1NbxMujAHko=", + "dev": true, + "requires": { + "deep-equal": "~1.0.1", + "http-errors": "~1.6.1" + }, + "dependencies": { + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + } + } + }, + "http-errors": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.0.tgz", + "integrity": "sha512-hz3BtSHB7Z6dNWzYc+gUbWqG4dIpJedwwOhe1cvGUq5tGmcTTIRkPiAbyh/JlZx+ksSJyGJlgcHo5jGahiXnKw==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-generator-function": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.7.tgz", + "integrity": "sha512-YZc5EwyO4f2kWCax7oegfuSr9mFz1ZvieNYBEjmukLxgXfBUbxAWGVF7GZf0zidYtoBl3WvC07YK0wT76a+Rtw==", + "dev": true + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, + "is-symbol": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", + "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", + "dev": true + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "jsesc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", + "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", + "dev": true + }, + "json5": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", + "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", + "dev": true + }, + "keygrip": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.0.2.tgz", + "integrity": "sha1-rTKXxVcGneqLz+ek+kkbdcXd65E=", + "dev": true + }, + "koa": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/koa/-/koa-2.5.2.tgz", + "integrity": "sha512-MoVGWre9g3p35pCqXNhOT/a4trwK5CGvalIoPi7qOA2RCZaep3GCsa/G/tD9QMjQI7bmVWn3XF3SOau8RkPh6w==", + "dev": true, + "requires": { + "accepts": "^1.3.5", + "cache-content-type": "^1.0.0", + "content-disposition": "~0.5.2", + "content-type": "^1.0.4", + "cookies": "~0.7.1", + "debug": "^3.1.0", + "delegates": "^1.0.0", + "depd": "^1.1.2", + "destroy": "^1.0.4", + "error-inject": "^1.0.0", + "escape-html": "^1.0.3", + "fresh": "~0.5.2", + "http-assert": "^1.3.0", + "http-errors": "^1.6.3", + "is-generator-function": "^1.0.7", + "koa-compose": "^4.1.0", + "koa-convert": "^1.2.0", + "koa-is-json": "^1.0.0", + "on-finished": "^2.3.0", + "only": "~0.0.2", + "parseurl": "^1.3.2", + "statuses": "^1.5.0", + "type-is": "^1.6.16", + "vary": "^1.1.2" + } + }, + "koa-compose": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-4.1.0.tgz", + "integrity": "sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==", + "dev": true + }, + "koa-convert": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/koa-convert/-/koa-convert-1.2.0.tgz", + "integrity": "sha1-2kCHXfSd4FOQmNFwC1CCDOvNIdA=", + "dev": true, + "requires": { + "co": "^4.6.0", + "koa-compose": "^3.0.0" + }, + "dependencies": { + "koa-compose": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-3.2.1.tgz", + "integrity": "sha1-qFzLQLfZhtjlo0Wzoazo6rz1Tec=", + "dev": true, + "requires": { + "any-promise": "^1.1.0" + } + } + } + }, + "koa-is-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/koa-is-json/-/koa-is-json-1.0.0.tgz", + "integrity": "sha1-JzwH7c3Ljfaiwat9We52SRRR7BQ=", + "dev": true + }, + "koa-send": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/koa-send/-/koa-send-5.0.0.tgz", + "integrity": "sha512-90ZotV7t0p3uN9sRwW2D484rAaKIsD8tAVtypw/aBU+ryfV+fR2xrcAwhI8Wl6WRkojLUs/cB9SBSCuIb+IanQ==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "http-errors": "^1.6.3", + "mz": "^2.7.0", + "resolve-path": "^1.4.0" + } + }, + "koa-static": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/koa-static/-/koa-static-5.0.0.tgz", + "integrity": "sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ==", + "dev": true, + "requires": { + "debug": "^3.1.0", + "koa-send": "^5.0.0" + } + }, + "lodash": { + "version": "4.17.10", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", + "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", + "dev": true + }, + "lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", + "dev": true + }, + "lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=", + "dev": true + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true + }, + "mime-db": { + "version": "1.35.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz", + "integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg==", + "dev": true + }, + "mime-types": { + "version": "2.1.19", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz", + "integrity": "sha512-P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==", + "dev": true, + "requires": { + "mime-db": "~1.35.0" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "requires": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, + "negotiator": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", + "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-keys": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", + "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", + "dev": true + }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "only": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/only/-/only-0.0.2.tgz", + "integrity": "sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q=", + "dev": true + }, + "parseurl": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", + "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "resolve": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", + "dev": true, + "requires": { + "path-parse": "^1.0.5" + } + }, + "resolve-path": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/resolve-path/-/resolve-path-1.4.0.tgz", + "integrity": "sha1-xL2p9e+y/OZSR4c6s2u02DT+Fvc=", + "dev": true, + "requires": { + "http-errors": "~1.6.2", + "path-is-absolute": "1.0.1" + }, + "dependencies": { + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + } + } + }, + "semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true + }, + "supports-color": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", + "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "thenify": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.0.tgz", + "integrity": "sha1-5p44obq+lpsBCCB5eLn2K4hgSDk=", + "dev": true, + "requires": { + "any-promise": "^1.0.0" + } + }, + "thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=", + "dev": true, + "requires": { + "thenify": ">= 3.1.0 < 4" + } + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "type-is": { + "version": "1.6.16", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", + "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.18" + } + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + }, + "ylru": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ylru/-/ylru-1.2.1.tgz", + "integrity": "sha512-faQrqNMzcPCHGVC2aaOINk13K+aaBDUPjGWl0teOXywElLjyVAB6Oe2jj62jHYtwsU49jXhScYbvPENK+6zAvQ==", + "dev": true + } + } +} diff --git a/package.json b/package.json index 16df67a..59b49f9 100644 --- a/package.json +++ b/package.json @@ -1,19 +1,29 @@ { - "name": "ethereum-blockies", - "version": "0.1.1", + "name": "blockies", + "version": "1.0.0", "description": "A tiny library for generating blocky identicons.", - "main": "blockies.js", + "main": "src/blockies.mjs", "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" + "build": "minify src/blockies.mjs -o dist/blockies.min.mjs", + "serve-examples": "node --experimental-modules examples/server.mjs" }, "repository": { "type": "git", - "url": "git+https://github.com/alexvandesande/blockies.git" + "url": "git+https://github.com/download13/blockies.git" }, "author": "Erin Dachtler, Alex Van de Sande", "license": "MIT", "bugs": { - "url": "https://github.com/alexvandesande/blockies/issues" + "url": "https://github.com/download13/blockies/issues" }, - "homepage": "https://github.com/alexvandesande/blockies#readme" + "homepage": "https://github.com/download13/blockies#readme", + "devDependencies": { + "babel-minify": "^0.4.3", + "koa": "^2.5.2", + "koa-static": "^5.0.0" + }, + "files": [ + "src/", + "dist/" + ] } diff --git a/random-samples.html b/random-samples.html deleted file mode 100644 index ad6da6a..0000000 --- a/random-samples.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - - - - - - - diff --git a/react-component.js b/react-component.js deleted file mode 100644 index b399af0..0000000 --- a/react-component.js +++ /dev/null @@ -1,34 +0,0 @@ -// Usage: -// npm install blockies-identicon -// const Blockies = require("blockies/react-component"); -// - -var React = require('react'); -var blockies = require("./blockies"); - -class BlockiesIdenticon extends React.Component { - constructor(props) { - super(props); - } - getOpts () { - return { - seed: this.props.opts.seed || "foo", - color: this.props.opts.color || "#dfe", - bgcolor: this.props.opts.bgcolor || "#a71", - size: this.props.opts.size || 15, - scale: this.props.opts.scale || 3, - spotcolor: this.props.opts.spotcolor || "#000" - }; - } - componentDidMount() { - this.draw(); - } - draw() { - blockies.render(this.getOpts(), this.canvas); - } - render() { - return React.createElement("canvas", {ref: canvas => this.canvas = canvas}); - } -} - -module.exports = BlockiesIdenticon; diff --git a/sample.png b/sample.png deleted file mode 100644 index d101f0cc342f16f568171a21ed4f1fa704f3208b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 166754 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 I>zopr0Q9XE761SM diff --git a/src/blockies.mjs b/src/blockies.mjs new file mode 100644 index 0000000..28cad62 --- /dev/null +++ b/src/blockies.mjs @@ -0,0 +1,114 @@ +// The random number is a js implementation of the Xorshift PRNG +const randseed = new Array(4); // Xorshift: [x, y, z, w] 32 bit values + +function seedrand(seed) { + for(let i = 0; i < randseed.length; i++) { + randseed[i] = 0; + } + for(let i = 0; i < seed.length; i++) { + randseed[i%4] = ((randseed[i%4] << 5) - randseed[i%4]) + seed.charCodeAt(i); + } +} + +function rand() { + // based on Java's String.hashCode(), expanded to 4 32bit values + const t = randseed[0] ^ (randseed[0] << 11); + + randseed[0] = randseed[1]; + randseed[1] = randseed[2]; + randseed[2] = randseed[3]; + randseed[3] = (randseed[3] ^ (randseed[3] >> 19) ^ t ^ (t >> 8)); + + return (randseed[3] >>> 0) / ((1 << 31) >>> 0); +} + +function createColor() { + //saturation is the whole color spectrum + const h = Math.floor(rand() * 360); + //saturation goes from 40 to 100, it avoids greyish colors + const s = ((rand() * 60) + 40) + '%'; + //lightness can be anything from 0 to 100, but probabilities are a bell curve around 50% + const l = ((rand() + rand() + rand() + rand()) * 25) + '%'; + + return 'hsl(' + h + ',' + s + ',' + l + ')'; +} + +function createImageData(size) { + const width = size; // Only support square icons for now + const height = size; + + const dataWidth = Math.ceil(width / 2); + const mirrorWidth = width - dataWidth; + + const data = []; + for(let y = 0; y < height; y++) { + let row = []; + for(let x = 0; x < dataWidth; x++) { + // this makes foreground and background color to have a 43% (1/2.3) probability + // spot color has 13% chance + row[x] = Math.floor(rand()*2.3); + } + const r = row.slice(0, mirrorWidth); + r.reverse(); + row = row.concat(r); + + for(let i = 0; i < row.length; i++) { + data.push(row[i]); + } + } + + return data; +} + +function buildOpts(opts) { + const newOpts = {}; + + newOpts.seed = opts.seed || Math.floor((Math.random()*Math.pow(10,16))).toString(16); + + seedrand(newOpts.seed); + + newOpts.size = opts.size || 8; + newOpts.scale = opts.scale || 4; + newOpts.color = opts.color || createColor(); + newOpts.bgcolor = opts.bgcolor || createColor(); + newOpts.spotcolor = opts.spotcolor || createColor(); + + return newOpts; +} + +export function renderIcon(opts, canvas) { + opts = buildOpts(opts || {}); + const imageData = createImageData(opts.size); + const width = Math.sqrt(imageData.length); + + canvas.width = canvas.height = opts.size * opts.scale; + + const cc = canvas.getContext('2d'); + cc.fillStyle = opts.bgcolor; + cc.fillRect(0, 0, canvas.width, canvas.height); + cc.fillStyle = opts.color; + + for(let i = 0; i < imageData.length; i++) { + + // if data is 0, leave the background + if(imageData[i]) { + const row = Math.floor(i / width); + const col = i % width; + + // if data is 2, choose spot color, if 1 choose foreground + cc.fillStyle = (imageData[i] == 1) ? opts.color : opts.spotcolor; + + cc.fillRect(col * opts.scale, row * opts.scale, opts.scale, opts.scale); + } + } + + return canvas; +} + +export function createIcon(opts) { + var canvas = document.createElement('canvas'); + + renderIcon(opts, canvas); + + return canvas; +}